LLVM  3.7.0
Public Types | Public Member Functions | List of all members
llvm::RNSuccIterator< FlatIt< NodeType >, BlockT, RegionT > Class Template Reference

Flat RegionNode iterator. More...

#include <RegionIterator.h>

Inheritance diagram for llvm::RNSuccIterator< FlatIt< NodeType >, BlockT, RegionT >:
[legend]
Collaboration diagram for llvm::RNSuccIterator< FlatIt< NodeType >, BlockT, RegionT >:
[legend]

Public Types

typedef RNSuccIterator< FlatIt
< NodeType >, BlockT, RegionT > 
Self
 
typedef super::pointer pointer
 

Public Member Functions

 RNSuccIterator (NodeType *node)
 Create the iterator from 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)
 

Detailed Description

template<class NodeType, class BlockT, class RegionT>
class llvm::RNSuccIterator< FlatIt< NodeType >, BlockT, RegionT >

Flat RegionNode iterator.

The Flat Region iterator will iterate over all BasicBlock RegionNodes that are contained in the Region and its subregions. This is close to a virtual control flow graph of the Region.

Definition at line 158 of file RegionIterator.h.

Member Typedef Documentation

template<class NodeType , class BlockT , class RegionT >
typedef super::pointer llvm::RNSuccIterator< FlatIt< NodeType >, BlockT, RegionT >::pointer

Definition at line 169 of file RegionIterator.h.

template<class NodeType , class BlockT , class RegionT >
typedef RNSuccIterator<FlatIt<NodeType>, BlockT, RegionT> llvm::RNSuccIterator< FlatIt< NodeType >, BlockT, RegionT >::Self

Definition at line 168 of file RegionIterator.h.

Constructor & Destructor Documentation

template<class NodeType , class BlockT , class RegionT >
llvm::RNSuccIterator< FlatIt< NodeType >, BlockT, RegionT >::RNSuccIterator ( NodeType *  node)
inline

Create the iterator from a RegionNode.

Note that the incoming node must be a bb node, otherwise it will trigger an assertion when we try to get a BasicBlock.

Definition at line 175 of file RegionIterator.h.

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

Create an end iterator.

Definition at line 189 of file RegionIterator.h.

Member Function Documentation

template<class NodeType , class BlockT , class RegionT >
bool llvm::RNSuccIterator< FlatIt< NodeType >, BlockT, RegionT >::operator!= ( const Self x) const
inline
template<class NodeType , class BlockT , class RegionT >
pointer llvm::RNSuccIterator< FlatIt< NodeType >, BlockT, RegionT >::operator* ( ) const
inline

Definition at line 205 of file RegionIterator.h.

template<class NodeType , class BlockT , class RegionT >
Self& llvm::RNSuccIterator< FlatIt< NodeType >, BlockT, RegionT >::operator++ ( )
inline

Definition at line 218 of file RegionIterator.h.

References llvm::succ_end().

template<class NodeType , class BlockT , class RegionT >
Self llvm::RNSuccIterator< FlatIt< NodeType >, BlockT, RegionT >::operator++ ( int  )
inline

Definition at line 228 of file RegionIterator.h.

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

Definition at line 196 of file RegionIterator.h.


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