LLVM API Documentation

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Types | Public Member Functions | List of all members
llvm::RNSuccIterator< NodeType > Class Template Reference

Hierarchical RegionNode successor iterator. More...

#include <RegionIterator.h>

Inheritance diagram for llvm::RNSuccIterator< NodeType >:
Inheritance graph
[legend]
Collaboration diagram for llvm::RNSuccIterator< NodeType >:
Collaboration graph
[legend]

Public Types

typedef RNSuccIterator< NodeType > Self
 
typedef super::pointer pointer
 

Public Member Functions

 RNSuccIterator (NodeType *node)
 Create begin iterator of a RegionNode. More...
 
 RNSuccIterator (NodeType *node, bool)
 Create an end iterator. More...
 
bool operator== (const Self &x) const
 
bool operator!= (const Self &x) const
 
pointer operator* () const
 
Selfoperator++ ()
 
Self operator++ (int)
 
const Selfoperator= (const Self &I)
 

Detailed Description

template<class NodeType>
class llvm::RNSuccIterator< NodeType >

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 34 of file RegionIterator.h.

Member Typedef Documentation

template<class NodeType>
typedef super::pointer llvm::RNSuccIterator< NodeType >::pointer

Definition at line 89 of file RegionIterator.h.

template<class NodeType>
typedef RNSuccIterator<NodeType> llvm::RNSuccIterator< NodeType >::Self

Definition at line 87 of file RegionIterator.h.

Constructor & Destructor Documentation

template<class NodeType>
llvm::RNSuccIterator< NodeType >::RNSuccIterator ( NodeType *  node)
inline

Create begin iterator of a RegionNode.

Definition at line 92 of file RegionIterator.h.

References llvm::succ_end().

template<class NodeType>
llvm::RNSuccIterator< NodeType >::RNSuccIterator ( NodeType *  node,
bool   
)
inline

Create an end iterator.

Definition at line 107 of file RegionIterator.h.

Member Function Documentation

template<class NodeType>
bool llvm::RNSuccIterator< NodeType >::operator!= ( const Self x) const
inline

Definition at line 119 of file RegionIterator.h.

References llvm::RNSuccIterator< NodeType >::operator==().

template<class NodeType>
pointer llvm::RNSuccIterator< NodeType >::operator* ( ) const
inline

Definition at line 121 of file RegionIterator.h.

template<class NodeType>
Self& llvm::RNSuccIterator< NodeType >::operator++ ( )
inline

Definition at line 127 of file RegionIterator.h.

References llvm::succ_end().

template<class NodeType>
Self llvm::RNSuccIterator< NodeType >::operator++ ( int  )
inline

Definition at line 141 of file RegionIterator.h.

template<class NodeType>
const Self& llvm::RNSuccIterator< NodeType >::operator= ( const Self I)
inline

Definition at line 147 of file RegionIterator.h.

References getParent().

template<class NodeType>
bool llvm::RNSuccIterator< NodeType >::operator== ( const Self x) const
inline

The documentation for this class was generated from the following file: