Home | History | Annotate | Download | only in ADT

Lines Matching defs:df_iterator

13 // df_begin/df_end/df_iterator
85 class df_iterator
102 inline df_iterator(NodeRef Node) {
106 inline df_iterator() = default; // End is when stack is empty
107 inline df_iterator(NodeRef Node, SetType &S)
112 inline df_iterator(SetType &S)
148 static df_iterator begin(const GraphT &G) {
149 return df_iterator(GT::getEntryNode(G));
151 static df_iterator end(const GraphT &G) { return df_iterator(); }
154 static df_iterator begin(const GraphT &G, SetType &S) {
155 return df_iterator(GT::getEntryNode(G), S);
157 static df_iterator end(const GraphT &G, SetType &S) { return df_iterator(S); }
159 bool operator==(const df_iterator &x) const {
162 bool operator!=(const df_iterator &x) const { return !(*this == x); }
172 df_iterator &operator++() { // Preincrement
181 df_iterator &skipChildren() {
188 df_iterator operator++(int) { // Postincrement
189 df_iterator tmp = *this;
214 df_iterator<T> df_begin(const T& G) {
215 return df_iterator<T>::begin(G);
219 df_iterator<T> df_end(const T& G) {
220 return df_iterator<T>::end(G);
225 iterator_range<df_iterator<T>> depth_first(const T& G) {
231 struct df_ext_iterator : public df_iterator<T, SetTy, true> {
232 df_ext_iterator(const df_iterator<T, SetTy, true> &V)
233 : df_iterator<T, SetTy, true>(V) {}
257 struct idf_iterator : public df_iterator<Inverse<T>, SetTy, External> {
258 idf_iterator(const df_iterator<Inverse<T>, SetTy, External> &V)
259 : df_iterator<Inverse<T>, SetTy, External>(V) {}
283 idf_ext_iterator(const df_iterator<Inverse<T>, SetTy, true> &V)