On 10/20/2015 08:48 AM, Andrea Fontana wrote:
It happens I need to perform an operation just one time (inside a
function, a loop...)
An idea that uses a function pointer where the first step does its task
and then sets the stage for the following steps:
import std.stdio;
import std.range;
import std.algorithm;
void firstStep() {
writeln("First call!");
takeAStep = &followingSteps;
}
void followingSteps() {
writeln("Just another call");
}
auto takeAStep = &firstStep;
void main() {
3.iota.each!(_ => takeAStep());
}
First call!
Just another call
Just another call
Ali