LLVM  16.0.0git
Public Types | Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | List of all members
llvm::PredIterator< Ptr, USE_iterator > Class Template Reference

#include "llvm/IR/CFG.h"

Collaboration diagram for llvm::PredIterator< Ptr, USE_iterator >:
Collaboration graph
[legend]

Public Types

using iterator_category = std::forward_iterator_tag
 
using value_type = Ptr
 
using difference_type = std::ptrdiff_t
 
using pointer = Ptr *
 
using reference = Ptr *
 

Public Member Functions

 PredIterator ()=default
 
 PredIterator (Ptr *bb)
 
 PredIterator (Ptr *bb, bool)
 
bool operator== (const Self &x) const
 
bool operator!= (const Self &x) const
 
reference operator* () const
 
pointeroperator-> () const
 
Selfoperator++ ()
 
Self operator++ (int)
 
unsigned getOperandNo () const
 getOperandNo - Return the operand number in the predecessor's terminator of the successor. More...
 
UsegetUse () const
 getUse - Return the operand Use in the predecessor's terminator of the successor. More...
 

Protected Types

using Self = PredIterator< Ptr, USE_iterator >
 

Protected Member Functions

void advancePastNonTerminators ()
 

Protected Attributes

USE_iterator It
 

Detailed Description

template<class Ptr, class USE_iterator>
class llvm::PredIterator< Ptr, USE_iterator >

Definition at line 42 of file CFG.h.

Member Typedef Documentation

◆ difference_type

template<class Ptr , class USE_iterator >
using llvm::PredIterator< Ptr, USE_iterator >::difference_type = std::ptrdiff_t

Definition at line 46 of file CFG.h.

◆ iterator_category

template<class Ptr , class USE_iterator >
using llvm::PredIterator< Ptr, USE_iterator >::iterator_category = std::forward_iterator_tag

Definition at line 44 of file CFG.h.

◆ pointer

template<class Ptr , class USE_iterator >
using llvm::PredIterator< Ptr, USE_iterator >::pointer = Ptr *

Definition at line 47 of file CFG.h.

◆ reference

template<class Ptr , class USE_iterator >
using llvm::PredIterator< Ptr, USE_iterator >::reference = Ptr *

Definition at line 48 of file CFG.h.

◆ Self

template<class Ptr , class USE_iterator >
using llvm::PredIterator< Ptr, USE_iterator >::Self = PredIterator<Ptr, USE_iterator>
protected

Definition at line 51 of file CFG.h.

◆ value_type

template<class Ptr , class USE_iterator >
using llvm::PredIterator< Ptr, USE_iterator >::value_type = Ptr

Definition at line 45 of file CFG.h.

Constructor & Destructor Documentation

◆ PredIterator() [1/3]

template<class Ptr , class USE_iterator >
llvm::PredIterator< Ptr, USE_iterator >::PredIterator ( )
default

◆ PredIterator() [2/3]

template<class Ptr , class USE_iterator >
llvm::PredIterator< Ptr, USE_iterator >::PredIterator ( Ptr bb)
inlineexplicit

◆ PredIterator() [3/3]

template<class Ptr , class USE_iterator >
llvm::PredIterator< Ptr, USE_iterator >::PredIterator ( Ptr bb,
bool   
)
inline

Definition at line 70 of file CFG.h.

Member Function Documentation

◆ advancePastNonTerminators()

template<class Ptr , class USE_iterator >
void llvm::PredIterator< Ptr, USE_iterator >::advancePastNonTerminators ( )
inlineprotected

◆ getOperandNo()

template<class Ptr , class USE_iterator >
unsigned llvm::PredIterator< Ptr, USE_iterator >::getOperandNo ( ) const
inline

getOperandNo - Return the operand number in the predecessor's terminator of the successor.

Definition at line 93 of file CFG.h.

References llvm::PredIterator< Ptr, USE_iterator >::It.

◆ getUse()

template<class Ptr , class USE_iterator >
Use& llvm::PredIterator< Ptr, USE_iterator >::getUse ( ) const
inline

getUse - Return the operand Use in the predecessor's terminator of the successor.

Definition at line 99 of file CFG.h.

References llvm::PredIterator< Ptr, USE_iterator >::It.

◆ operator!=()

template<class Ptr , class USE_iterator >
bool llvm::PredIterator< Ptr, USE_iterator >::operator!= ( const Self x) const
inline

Definition at line 73 of file CFG.h.

References llvm::PredIterator< Ptr, USE_iterator >::operator==(), and x.

◆ operator*()

template<class Ptr , class USE_iterator >
reference llvm::PredIterator< Ptr, USE_iterator >::operator* ( ) const
inline

◆ operator++() [1/2]

template<class Ptr , class USE_iterator >
Self& llvm::PredIterator< Ptr, USE_iterator >::operator++ ( )
inline

◆ operator++() [2/2]

template<class Ptr , class USE_iterator >
Self llvm::PredIterator< Ptr, USE_iterator >::operator++ ( int  )
inline

Definition at line 87 of file CFG.h.

◆ operator->()

template<class Ptr , class USE_iterator >
pointer* llvm::PredIterator< Ptr, USE_iterator >::operator-> ( ) const
inline

Definition at line 79 of file CFG.h.

References llvm::PredIterator< Ptr, USE_iterator >::operator*().

◆ operator==()

template<class Ptr , class USE_iterator >
bool llvm::PredIterator< Ptr, USE_iterator >::operator== ( const Self x) const
inline

Member Data Documentation

◆ It

template<class Ptr , class USE_iterator >
USE_iterator llvm::PredIterator< Ptr, USE_iterator >::It
protected

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