D - Itterator construct.
- Bill Cox (29/29) Jan 25 2003 Hi.
Hi. I saw in the 'Future' section of the D documentation the following: 1. A generic way to iterate across a collection, i.e. a foreach construct instead of a for loop. A reverse iterator will be needed, too. In the language I wrote over Christmas, I added support for itterators in a way that I like better than the support in C++ or Java. IMO Itterators are important enough to justify new syntax. Here's what I did: In a class, you declare a method like: Class Foo { Bar firstBar; loop forward(inout Bar bar) { for(bar = firstBar; bar != null; bar = bar.nextFooBar) { doLoop; } } } Class Bar { Bar nextFooBar; Foo owner; } The foreach statement looks like: testLoop(Foo foo) { Bar bar; foreach(foo.forward, bar) { /* do something with bar here */ } } Bill Cox
Jan 25 2003