Template std.algorithm.iteration.each
Eagerly iterates over r and calls fun with each element.
						
				template each(alias fun)
				;
						
					
				If no function to call is specified, each defaults to doing nothing but
consuming the entire range. r will be evaluated, but that can be avoided
by specifying a lambda with a lazy parameter.
each also supports opApply-based types, so it works with e.g. parallel.
Normally the entire range is iterated. If partial iteration (early stopping) is
desired, fun needs to return a value of type Flag!"each" (Yes to continue iteration, or No to stop
iteration).
Contained Functions
| Name | Description | 
|---|---|
| each | 
Parameters
| Name | Description | 
|---|---|
| fun | function to apply to each element of the range | 
| r | range or iterable over which eachiterates | 
Returns
Yes if the entire range was iterated, No in case of early
stopping.
See Also
std
Example
import stdExample
each can pass an index variable for iterable objects which support this
auto arr = new size_t[4];
arrExample
opApply iterators work as well
static class S
{
    int x;
    int opApply(scope int delegate(ref int _x) dg) { return dg(x); }
}
auto s = new S;
s