LLVM 20.0.0git
|
Hierarchical RegionNode successor iterator. More...
#include "llvm/Analysis/RegionIterator.h"
Public Types | |
using | iterator_category = std::forward_iterator_tag |
using | value_type = NodeRef |
using | difference_type = std::ptrdiff_t |
using | pointer = value_type * |
using | reference = value_type & |
using | Self = RNSuccIterator< NodeRef, BlockT, RegionT > |
Public Member Functions | |
RNSuccIterator (NodeRef node) | |
Create begin iterator of a RegionNode. | |
RNSuccIterator (NodeRef node, bool) | |
Create an end iterator. | |
bool | operator== (const Self &x) const |
bool | operator!= (const Self &x) const |
value_type | operator* () const |
Self & | operator++ () |
Self | operator++ (int) |
Hierarchical RegionNode successor iterator.
This iterator iterates over all successors of a RegionNode.
For a BasicBlock RegionNode it skips all BasicBlocks that are not part of the parent Region. Furthermore for BasicBlocks that start a subregion, a RegionNode representing the subregion is returned.
For a subregion RegionNode there is just one successor. The RegionNode representing the exit of the subregion.
Definition at line 38 of file RegionIterator.h.
using llvm::RNSuccIterator< NodeRef, BlockT, RegionT >::difference_type = std::ptrdiff_t |
Definition at line 42 of file RegionIterator.h.
using llvm::RNSuccIterator< NodeRef, BlockT, RegionT >::iterator_category = std::forward_iterator_tag |
Definition at line 40 of file RegionIterator.h.
using llvm::RNSuccIterator< NodeRef, BlockT, RegionT >::pointer = value_type * |
Definition at line 43 of file RegionIterator.h.
using llvm::RNSuccIterator< NodeRef, BlockT, RegionT >::reference = value_type & |
Definition at line 44 of file RegionIterator.h.
using llvm::RNSuccIterator< NodeRef, BlockT, RegionT >::Self = RNSuccIterator<NodeRef, BlockT, RegionT> |
Definition at line 106 of file RegionIterator.h.
using llvm::RNSuccIterator< NodeRef, BlockT, RegionT >::value_type = NodeRef |
Definition at line 41 of file RegionIterator.h.
|
inline |
Create begin iterator of a RegionNode.
Definition at line 109 of file RegionIterator.h.
|
inline |
Create an end iterator.
Definition at line 122 of file RegionIterator.h.
|
inline |
Definition at line 134 of file RegionIterator.h.
References llvm::RNSuccIterator< NodeRef, BlockT, RegionT >::operator==().
|
inline |
Definition at line 136 of file RegionIterator.h.
References assert().
|
inline |
Definition at line 142 of file RegionIterator.h.
|
inline |
Definition at line 156 of file RegionIterator.h.
|
inline |
Definition at line 126 of file RegionIterator.h.
References assert().
Referenced by llvm::RNSuccIterator< NodeRef, BlockT, RegionT >::operator!=().