foreach statement: Are there no Iterators in D?

Rikki Cattermole via Digitalmars-d-learn digitalmars-d-learn at puremagic.com
Sun Nov 8 03:47:40 PST 2015


On 09/11/15 12:40 AM, J.Frank wrote:
> Hello,
>
> I am looking for something like the "Iterator" Interface in Java or PHP.
> Is there something comparable in D that can be used with foreach?
>
> Thanks,
>
> J.Frank

opApply if you want 0 .. N iterations during for a foreach statement and 
having it reset each time.

Otherwise you want ranges :)

An input range is more or less an iterator as you would think of it.
You only need popFront, front and empty. But here is the "official" 
interface. http://dlang.org/phobos/std_range_interfaces.html#InputRange
You can have structs an an input range, it is quite common since it 
doesn't allocate.


More information about the Digitalmars-d-learn mailing list