October 07, 2020 Wanted! Tree Node implementation. | ||||
---|---|---|---|---|
| ||||
Wanted! Tree Node implementation. Like a: mixin template TreeNode( T ) { T parent; T firstChild; T lastChild; T prevSibling; T nextSibling; // ForwardRange implementation @property T front() { ... } @property bool empty() { ... } void popFront() { ... } // BackwardRange implementation @property T back() { ... } void popBack(); // RandomAccessRange implementation T opIndex( ... ) { ... } // length implementation @property size_t length() { ... } } It would be nice to get a link or package or source... |
October 12, 2020 Re: Wanted! Tree Node implementation. | ||||
---|---|---|---|---|
| ||||
Posted in reply to Виталий Фадеев | On Wednesday, 7 October 2020 at 14:31:20 UTC, Виталий Фадеев wrote: > Wanted! Tree Node implementation. > > Like a: > > mixin template TreeNode( T ) > { > T parent; > T firstChild; > T lastChild; > T prevSibling; > T nextSibling; > > // ForwardRange implementation > @property T front() { ... } > @property bool empty() { ... } > void popFront() { ... } > > // BackwardRange implementation > @property T back() { ... } > void popBack(); > > // RandomAccessRange implementation > T opIndex( ... ) { ... } > > // length implementation > @property size_t length() { ... } > } > > It would be nice to get a link or package or source... You can peak into the stdlibrary, how they do it: https://github.com/dlang/phobos/blob/master/std/container/rbtree.d |
Copyright © 1999-2021 by the D Language Foundation