LLVM API Documentation

Public Types | Public Member Functions
llvm::RNSuccIterator< FlatIt< NodeType > > Class Template Reference

Flat RegionNode iterator. More...

#include <RegionIterator.h>

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

List of all members.

Public Types

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

Public Member Functions

 RNSuccIterator (NodeType *node)
 Create the iterator from a RegionNode.
 RNSuccIterator (NodeType *node, bool)
 Create an end iterator.
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< FlatIt< NodeType > >

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


Member Typedef Documentation

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

Definition at line 175 of file RegionIterator.h.

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

Definition at line 174 of file RegionIterator.h.


Constructor & Destructor Documentation

template<class NodeType >
llvm::RNSuccIterator< FlatIt< NodeType > >::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 181 of file RegionIterator.h.

References llvm::succ_end().

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

Create an end iterator.

Definition at line 193 of file RegionIterator.h.


Member Function Documentation

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

Definition at line 206 of file RegionIterator.h.

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

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

Definition at line 208 of file RegionIterator.h.

References llvm::Region::getBBNode(), and llvm::Region::getExit().

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

Definition at line 221 of file RegionIterator.h.

References llvm::succ_end().

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

Definition at line 231 of file RegionIterator.h.

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

Definition at line 237 of file RegionIterator.h.

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

Definition at line 199 of file RegionIterator.h.


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