LLVM 20.0.0git
Public Member Functions | Static Public Member Functions | List of all members
llvm::SwitchInst::CaseIteratorImpl< CaseHandleT > Class Template Reference

#include "llvm/IR/Instructions.h"

Inheritance diagram for llvm::SwitchInst::CaseIteratorImpl< CaseHandleT >:
Inheritance graph
[legend]

Public Member Functions

 CaseIteratorImpl ()=default
 Default constructed iterator is in an invalid state until assigned to a case for a particular switch.
 
 CaseIteratorImpl (SwitchInstT *SI, unsigned CaseNum)
 Initializes case iterator for given SwitchInst and for given case number.
 
 operator CaseIteratorImpl< ConstCaseHandle > () const
 Support converting to the const variant.
 
CaseIteratorImploperator+= (ptrdiff_t N)
 
CaseIteratorImploperator-= (ptrdiff_t N)
 
ptrdiff_t operator- (const CaseIteratorImpl &RHS) const
 
bool operator== (const CaseIteratorImpl &RHS) const
 
bool operator< (const CaseIteratorImpl &RHS) const
 
const CaseHandleT & operator* () const
 
- Public Member Functions inherited from llvm::iterator_facade_base< CaseIteratorImpl< CaseHandleT >, std::random_access_iterator_tag, const CaseHandleT >
CaseIteratorImpl< CaseHandleT > operator+ (std::ptrdiff_t n) const
 
CaseIteratorImpl< CaseHandleT > operator- (std::ptrdiff_t n) const
 
CaseIteratorImpl< CaseHandleT > & operator++ ()
 
CaseIteratorImpl< CaseHandleT > operator++ (int)
 
CaseIteratorImpl< CaseHandleT > & operator-- ()
 
CaseIteratorImpl< CaseHandleT > operator-- (int)
 
bool operator!= (const CaseIteratorImpl< CaseHandleT > &RHS) const
 
bool operator> (const CaseIteratorImpl< CaseHandleT > &RHS) const
 
bool operator<= (const CaseIteratorImpl< CaseHandleT > &RHS) const
 
bool operator>= (const CaseIteratorImpl< CaseHandleT > &RHS) const
 
PointerProxy operator-> () const
 
ReferenceProxy operator[] (std::ptrdiff_t n) const
 

Static Public Member Functions

static CaseIteratorImpl fromSuccessorIndex (SwitchInstT *SI, unsigned SuccessorIndex)
 Initializes case iterator for given SwitchInst and for given successor index.
 

Additional Inherited Members

- Public Types inherited from llvm::iterator_facade_base< CaseIteratorImpl< CaseHandleT >, std::random_access_iterator_tag, const CaseHandleT >
using iterator_category = std::random_access_iterator_tag
 
using value_type = const CaseHandleT
 
using difference_type = std::ptrdiff_t
 
using pointer = const CaseHandleT *
 
using reference = const CaseHandleT &
 
- Protected Types inherited from llvm::iterator_facade_base< CaseIteratorImpl< CaseHandleT >, std::random_access_iterator_tag, const CaseHandleT >
enum  
 

Detailed Description

template<typename CaseHandleT>
class llvm::SwitchInst::CaseIteratorImpl< CaseHandleT >

Definition at line 3168 of file Instructions.h.

Constructor & Destructor Documentation

◆ CaseIteratorImpl() [1/2]

template<typename CaseHandleT >
llvm::SwitchInst::CaseIteratorImpl< CaseHandleT >::CaseIteratorImpl ( )
default

Default constructed iterator is in an invalid state until assigned to a case for a particular switch.

◆ CaseIteratorImpl() [2/2]

template<typename CaseHandleT >
llvm::SwitchInst::CaseIteratorImpl< CaseHandleT >::CaseIteratorImpl ( SwitchInstT *  SI,
unsigned  CaseNum 
)
inline

Initializes case iterator for given SwitchInst and for given case number.

Definition at line 3183 of file Instructions.h.

Member Function Documentation

◆ fromSuccessorIndex()

template<typename CaseHandleT >
static CaseIteratorImpl llvm::SwitchInst::CaseIteratorImpl< CaseHandleT >::fromSuccessorIndex ( SwitchInstT *  SI,
unsigned  SuccessorIndex 
)
inlinestatic

Initializes case iterator for given SwitchInst and for given successor index.

Definition at line 3187 of file Instructions.h.

References assert(), and SI().

Referenced by llvm::DOTGraphTraits< DOTFuncInfo * >::getEdgeSourceLabel().

◆ operator CaseIteratorImpl< ConstCaseHandle >()

template<typename CaseHandleT >
llvm::SwitchInst::CaseIteratorImpl< CaseHandleT >::operator CaseIteratorImpl< ConstCaseHandle > ( ) const
inline

Support converting to the const variant.

This will be a no-op for const variant.

Definition at line 3197 of file Instructions.h.

◆ operator*()

template<typename CaseHandleT >
const CaseHandleT & llvm::SwitchInst::CaseIteratorImpl< CaseHandleT >::operator* ( ) const
inline

Definition at line 3230 of file Instructions.h.

◆ operator+=()

template<typename CaseHandleT >
CaseIteratorImpl & llvm::SwitchInst::CaseIteratorImpl< CaseHandleT >::operator+= ( ptrdiff_t  N)
inline

Definition at line 3201 of file Instructions.h.

References assert(), and N.

◆ operator-()

template<typename CaseHandleT >
ptrdiff_t llvm::SwitchInst::CaseIteratorImpl< CaseHandleT >::operator- ( const CaseIteratorImpl< CaseHandleT > &  RHS) const
inline

Definition at line 3219 of file Instructions.h.

References assert(), and RHS.

◆ operator-=()

template<typename CaseHandleT >
CaseIteratorImpl & llvm::SwitchInst::CaseIteratorImpl< CaseHandleT >::operator-= ( ptrdiff_t  N)
inline

Definition at line 3210 of file Instructions.h.

References assert(), and N.

◆ operator<()

template<typename CaseHandleT >
bool llvm::SwitchInst::CaseIteratorImpl< CaseHandleT >::operator< ( const CaseIteratorImpl< CaseHandleT > &  RHS) const
inline

Definition at line 3226 of file Instructions.h.

References assert(), and RHS.

◆ operator==()

template<typename CaseHandleT >
bool llvm::SwitchInst::CaseIteratorImpl< CaseHandleT >::operator== ( const CaseIteratorImpl< CaseHandleT > &  RHS) const
inline

Definition at line 3223 of file Instructions.h.

References RHS.


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