LLVM 22.0.0git
llvm::PredIterator< Ptr, USE_iterator > Class Template Reference

#include "llvm/IR/CFG.h"

Inheritance diagram for llvm::PredIterator< Ptr, USE_iterator >:
[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.
UsegetUse () const
 getUse - Return the operand Use in the predecessor's terminator of the successor.

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

Definition at line 68 of file CFG.h.

◆ PredIterator() [3/3]

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

Definition at line 71 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 94 of file CFG.h.

◆ 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 100 of file CFG.h.

◆ operator!=()

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

Definition at line 74 of file CFG.h.

◆ 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

Definition at line 82 of file CFG.h.

◆ operator++() [2/2]

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

Definition at line 88 of file CFG.h.

◆ operator->()

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

Definition at line 80 of file CFG.h.

◆ 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

Definition at line 52 of file CFG.h.


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