Inferno
0.2
|
Go to the source code of this file.
Classes | |
class | FlattenNode_iterator |
Iterator for FlattenNode. More... | |
class | Walk_iterator |
Iterator for Walk. More... | |
struct | Walk_iterator::StateEntry |
struct | UniqueFilter |
Filter that only matches each Node one time, then not again until Reset() is called. More... | |
class | ParentWalk_iterator |
Iterator for ParentWalk. More... | |
class | UniqueWalk_iterator |
Iterator for UniqueWalk. More... | |
Typedefs | |
typedef ContainerFromIterator < FlattenNode_iterator, TreePtr< Node > > | FlattenNode |
typedef ContainerFromIterator < Walk_iterator, TreePtr< Node > , Filter *, Filter * > | Walk |
typedef ContainerFromIterator < ParentWalk_iterator, TreePtr < Node > > | ParentWalk |
typedef ContainerFromIterator < UniqueWalk_iterator, TreePtr < Node > > | UniqueWalk |
typedef ContainerFromIterator< FlattenNode_iterator, TreePtr<Node> > FlattenNode |
typedef ContainerFromIterator< ParentWalk_iterator, TreePtr<Node> > ParentWalk |
typedef ContainerFromIterator< UniqueWalk_iterator, TreePtr<Node> > UniqueWalk |
typedef ContainerFromIterator< Walk_iterator, TreePtr<Node>, Filter *, Filter * > Walk |
Inferno's tree-walking class. This is a stated out depth-first tree walker. A walk object is constructed on a node (possibly with other params) and it acts like an OOStd container whose iterator walks the subtree with sucessive invocations of operator++. A walking loop may be created using FOREACH as with containers.