22 #ifndef OTAWA_GRAPH_PREORDERITERATOR_H_
23 #define OTAWA_GRAPH_PREORDERITERATOR_H_
27 namespace otawa {
namespace graph {
48 typename G::Vertex node =
queue.
get();
50 for(
typename G::OutIterator succ(
_graph, node); succ; succ++)
54 for(
typename G::InIterator pred(succ->target()); pred; pred++) {
bool ended(void) const
Definition: PreorderIterator.h:43
elm::genstruct::VectorQueue< typename G::Vertex > queue
Definition: PreorderIterator.h:70
bool bit(int index) const
void next(void)
Definition: PreorderIterator.h:47
PreorderIterator(const G &graph, typename G::Vertex entry)
Definition: PreorderIterator.h:34
An iterator allowing to traverse the graph using preorder, that is, a node is only traversed when its...
Definition: PreorderIterator.h:31
dtd::Element entry(dtd::make("entry", _ENTRY).attr(id))
const G & _graph
Definition: PreorderIterator.h:68
elm::BitVector queued
Definition: PreorderIterator.h:69
void set(int index) const
void clear(int index) const
G::Vertex item(void) const
Definition: PreorderIterator.h:45
elm::BitVector visited
Definition: PreorderIterator.h:69