LLVM API Documentation

Public Types | Public Member Functions | Static Public Member Functions | Protected Attributes
llvm::SwitchInst::CaseIteratorT< SwitchInstTy, ConstantIntTy, BasicBlockTy > Class Template Reference

#include <Instructions.h>

Inheritance diagram for llvm::SwitchInst::CaseIteratorT< SwitchInstTy, ConstantIntTy, BasicBlockTy >:
Inheritance graph
[legend]
Collaboration diagram for llvm::SwitchInst::CaseIteratorT< SwitchInstTy, ConstantIntTy, BasicBlockTy >:
Collaboration graph
[legend]

List of all members.

Public Types

typedef CaseIteratorT
< SwitchInstTy, ConstantIntTy,
BasicBlockTy > 
Self

Public Member Functions

 CaseIteratorT (SwitchInstTy *SI, unsigned CaseNum)
ConstantIntTy * getCaseValue ()
 Resolves case value for current case.
BasicBlockTy * getCaseSuccessor ()
 Resolves successor for current case.
unsigned getCaseIndex () const
 Returns number of current case.
unsigned getSuccessorIndex () const
 Returns TerminatorInst's successor index for current case successor.
Self operator++ ()
Self operator++ (int)
Self operator-- ()
Self operator-- (int)
bool operator== (const Self &RHS) const
bool operator!= (const Self &RHS) const
Selfoperator* ()

Static Public Member Functions

static Self fromSuccessorIndex (SwitchInstTy *SI, unsigned SuccessorIndex)

Protected Attributes

SwitchInstTy * SI
unsigned Index

Detailed Description

template<class SwitchInstTy, class ConstantIntTy, class BasicBlockTy>
class llvm::SwitchInst::CaseIteratorT< SwitchInstTy, ConstantIntTy, BasicBlockTy >

Definition at line 2599 of file Instructions.h.


Member Typedef Documentation

template<class SwitchInstTy, class ConstantIntTy, class BasicBlockTy>
typedef CaseIteratorT<SwitchInstTy, ConstantIntTy, BasicBlockTy> llvm::SwitchInst::CaseIteratorT< SwitchInstTy, ConstantIntTy, BasicBlockTy >::Self

Definition at line 2607 of file Instructions.h.


Constructor & Destructor Documentation

template<class SwitchInstTy, class ConstantIntTy, class BasicBlockTy>
llvm::SwitchInst::CaseIteratorT< SwitchInstTy, ConstantIntTy, BasicBlockTy >::CaseIteratorT ( SwitchInstTy *  SI,
unsigned  CaseNum 
) [inline]

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

Definition at line 2611 of file Instructions.h.


Member Function Documentation

template<class SwitchInstTy, class ConstantIntTy, class BasicBlockTy>
static Self llvm::SwitchInst::CaseIteratorT< SwitchInstTy, ConstantIntTy, BasicBlockTy >::fromSuccessorIndex ( SwitchInstTy *  SI,
unsigned  SuccessorIndex 
) [inline, static]

Initializes case iterator for given SwitchInst and for given TerminatorInst's successor index.

Definition at line 2618 of file Instructions.h.

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

template<class SwitchInstTy, class ConstantIntTy, class BasicBlockTy>
unsigned llvm::SwitchInst::CaseIteratorT< SwitchInstTy, ConstantIntTy, BasicBlockTy >::getCaseIndex ( ) const [inline]

Returns number of current case.

Definition at line 2641 of file Instructions.h.

Referenced by EliminateDeadSwitchCases(), and llvm::SwitchInst::removeCase().

template<class SwitchInstTy, class ConstantIntTy, class BasicBlockTy>
BasicBlockTy* llvm::SwitchInst::CaseIteratorT< SwitchInstTy, ConstantIntTy, BasicBlockTy >::getCaseSuccessor ( ) [inline]

Resolves successor for current case.

Definition at line 2633 of file Instructions.h.

Referenced by llvm::ConstantFoldTerminator(), EliminateDeadSwitchCases(), SimplifySwitchOnSelect(), and TurnSwitchRangeIntoICmp().

template<class SwitchInstTy, class ConstantIntTy, class BasicBlockTy>
ConstantIntTy* llvm::SwitchInst::CaseIteratorT< SwitchInstTy, ConstantIntTy, BasicBlockTy >::getCaseValue ( ) [inline]

Resolves case value for current case.

Definition at line 2627 of file Instructions.h.

Referenced by llvm::ConstantFoldTerminator(), llvm::DOTGraphTraits< const Function * >::getEdgeSourceLabel(), and TurnSwitchRangeIntoICmp().

template<class SwitchInstTy, class ConstantIntTy, class BasicBlockTy>
unsigned llvm::SwitchInst::CaseIteratorT< SwitchInstTy, ConstantIntTy, BasicBlockTy >::getSuccessorIndex ( ) const [inline]

Returns TerminatorInst's successor index for current case successor.

Definition at line 2644 of file Instructions.h.

template<class SwitchInstTy, class ConstantIntTy, class BasicBlockTy>
bool llvm::SwitchInst::CaseIteratorT< SwitchInstTy, ConstantIntTy, BasicBlockTy >::operator!= ( const Self RHS) const [inline]

Definition at line 2680 of file Instructions.h.

template<class SwitchInstTy, class ConstantIntTy, class BasicBlockTy>
Self& llvm::SwitchInst::CaseIteratorT< SwitchInstTy, ConstantIntTy, BasicBlockTy >::operator* ( ) [inline]

Definition at line 2684 of file Instructions.h.

template<class SwitchInstTy, class ConstantIntTy, class BasicBlockTy>
Self llvm::SwitchInst::CaseIteratorT< SwitchInstTy, ConstantIntTy, BasicBlockTy >::operator++ ( ) [inline]

Definition at line 2650 of file Instructions.h.

template<class SwitchInstTy, class ConstantIntTy, class BasicBlockTy>
Self llvm::SwitchInst::CaseIteratorT< SwitchInstTy, ConstantIntTy, BasicBlockTy >::operator++ ( int  ) [inline]

Definition at line 2657 of file Instructions.h.

template<class SwitchInstTy, class ConstantIntTy, class BasicBlockTy>
Self llvm::SwitchInst::CaseIteratorT< SwitchInstTy, ConstantIntTy, BasicBlockTy >::operator-- ( ) [inline]

Definition at line 2662 of file Instructions.h.

template<class SwitchInstTy, class ConstantIntTy, class BasicBlockTy>
Self llvm::SwitchInst::CaseIteratorT< SwitchInstTy, ConstantIntTy, BasicBlockTy >::operator-- ( int  ) [inline]

Definition at line 2671 of file Instructions.h.

template<class SwitchInstTy, class ConstantIntTy, class BasicBlockTy>
bool llvm::SwitchInst::CaseIteratorT< SwitchInstTy, ConstantIntTy, BasicBlockTy >::operator== ( const Self RHS) const [inline]

Definition at line 2676 of file Instructions.h.


Member Data Documentation

template<class SwitchInstTy, class ConstantIntTy, class BasicBlockTy>
unsigned llvm::SwitchInst::CaseIteratorT< SwitchInstTy, ConstantIntTy, BasicBlockTy >::Index [protected]
template<class SwitchInstTy, class ConstantIntTy, class BasicBlockTy>
SwitchInstTy* llvm::SwitchInst::CaseIteratorT< SwitchInstTy, ConstantIntTy, BasicBlockTy >::SI [protected]

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