Implementing iterators for D custom data structures (best practices)

Granville Barnett granville at gbarnett.org
Sun Oct 16 20:20:57 PDT 2011


On 17/10/2011 10:55, Jonathan M Davis wrote:
> On Monday, October 17, 2011 10:22:42 Granville Barnett wrote:
>> Hi All,
>>
>> I've not used D for long so hopefully this question isn't too stupid...
>>
>> Are there any best practices for implementing iterators in D? My
>> understanding is that D follows a similar design approach to the STL RE
>> containers - iterators - algs - adapters etc.
>>
>> Also, are there any examples of well written data structures that expose
>> iterators?...I recall that in D only arrays have them (I may be wrong, I
>> haven't looked). Any open source projects that are notoriously well
>> implemented?
>>
>> Thanks in advance.
>
> D code doesn't normally use iterators. It uses ranges, which are a similar but
> generally superior concept.
>
> http://www.informit.com/articles/printerfriendly.aspx?p=1407357
>
> std.range and std.algorithm in particular make heavy use of ranges:
>
> http://d-programming-language.org/phobos/std_range.html
> http://d-programming-language.org/phobos/std_algorithm.html
>
> - Jonathan M Davis

Thanks Jonathan, I'll take a look.

GB


More information about the Digitalmars-d-learn mailing list