On Thu, Mar 20, 2025 at 11:51:46PM +0000, WhatMeWorry via Digitalmars-d-learn wrote: > Is there an elegant way, like with foreach, to step through a red black > tree non-destructively? This destructive failure is the best I've been able > to come up with. > > while(!rbt.empty) > { > Node e = rbt.front; > writeln("e = ", e); > rbt.removeFront; > } > > > I don't suppose there are any gentle tutorials regarding the library > containers?
Doesn't RedBlackTree have a member function or operator overload that returns a (non-destructive) range over the container? IIRC it should be opSlice(), which means you should be able to do this: foreach (Node e; rbt[]) { ... // whatever you need here } T -- Valentine's Day: an occasion for florists to reach into the wallets of nominal lovers in dire need of being reminded to profess their hypothetical love for their long-forgotten.