Home | History | Annotate | Download | only in ADT

Lines Matching refs:df_iterator

13 // df_begin/df_end/df_iterator
86 class df_iterator
102 inline df_iterator(NodeRef Node) {
107 inline df_iterator() = default; // End is when stack is empty
109 inline df_iterator(NodeRef Node, SetType &S)
115 inline df_iterator(SetType &S)
151 static df_iterator begin(const GraphT &G) {
152 return df_iterator(GT::getEntryNode(G));
154 static df_iterator end(const GraphT &G) { return df_iterator(); }
157 static df_iterator begin(const GraphT &G, SetType &S) {
158 return df_iterator(GT::getEntryNode(G), S);
160 static df_iterator end(const GraphT &G, SetType &S) { return df_iterator(S); }
162 bool operator==(const df_iterator &x) const {
165 bool operator!=(const df_iterator &x) const { return !(*this == x); }
175 df_iterator &operator++() { // Preincrement
184 df_iterator &skipChildren() {
191 df_iterator operator++(int) { // Postincrement
192 df_iterator tmp = *this;
217 df_iterator<T> df_begin(const T& G) {
218 return df_iterator<T>::begin(G);
222 df_iterator<T> df_end(const T& G) {
223 return df_iterator<T>::end(G);
228 iterator_range<df_iterator<T>> depth_first(const T& G) {
234 struct df_ext_iterator : public df_iterator<T, SetTy, true> {
235 df_ext_iterator(const df_iterator<T, SetTy, true> &V)
236 : df_iterator<T, SetTy, true>(V) {}
260 struct idf_iterator : public df_iterator<Inverse<T>, SetTy, External> {
261 idf_iterator(const df_iterator<Inverse<T>, SetTy, External> &V)
262 : df_iterator<Inverse<T>, SetTy, External>(V) {}
286 idf_ext_iterator(const df_iterator<Inverse<T>, SetTy, true> &V)