LLVM 19.0.0git
Public Types | Public Member Functions | Static Public Member Functions | List of all members
llvm::generic_gep_type_iterator< ItTy > Class Template Reference

#include "llvm/IR/GetElementPtrTypeIterator.h"

Public Types

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

Public Member Functions

bool operator== (const generic_gep_type_iterator &x) const
 
bool operator!= (const generic_gep_type_iterator &x) const
 
TypegetIndexedType () const
 
ValuegetOperand () const
 
generic_gep_type_iteratoroperator++ ()
 
generic_gep_type_iterator operator++ (int)
 
bool isStruct () const
 
bool isVector () const
 
bool isSequential () const
 
TypeSize getSequentialElementStride (const DataLayout &DL) const
 
StructTypegetStructType () const
 
StructTypegetStructTypeOrNull () const
 

Static Public Member Functions

static generic_gep_type_iterator begin (Type *Ty, ItTy It)
 
static generic_gep_type_iterator end (ItTy It)
 

Detailed Description

template<typename ItTy = User::const_op_iterator>
class llvm::generic_gep_type_iterator< ItTy >

Definition at line 31 of file GetElementPtrTypeIterator.h.

Member Typedef Documentation

◆ difference_type

template<typename ItTy = User::const_op_iterator>
using llvm::generic_gep_type_iterator< ItTy >::difference_type = std::ptrdiff_t

Definition at line 73 of file GetElementPtrTypeIterator.h.

◆ iterator_category

template<typename ItTy = User::const_op_iterator>
using llvm::generic_gep_type_iterator< ItTy >::iterator_category = std::forward_iterator_tag

Definition at line 71 of file GetElementPtrTypeIterator.h.

◆ pointer

template<typename ItTy = User::const_op_iterator>
using llvm::generic_gep_type_iterator< ItTy >::pointer = value_type *

Definition at line 74 of file GetElementPtrTypeIterator.h.

◆ reference

template<typename ItTy = User::const_op_iterator>
using llvm::generic_gep_type_iterator< ItTy >::reference = value_type &

Definition at line 75 of file GetElementPtrTypeIterator.h.

◆ value_type

template<typename ItTy = User::const_op_iterator>
using llvm::generic_gep_type_iterator< ItTy >::value_type = Type *

Definition at line 72 of file GetElementPtrTypeIterator.h.

Member Function Documentation

◆ begin()

template<typename ItTy = User::const_op_iterator>
static generic_gep_type_iterator llvm::generic_gep_type_iterator< ItTy >::begin ( Type Ty,
ItTy  It 
)
inlinestatic

Definition at line 77 of file GetElementPtrTypeIterator.h.

References I.

Referenced by llvm::gep_type_begin().

◆ end()

template<typename ItTy = User::const_op_iterator>
static generic_gep_type_iterator llvm::generic_gep_type_iterator< ItTy >::end ( ItTy  It)
inlinestatic

Definition at line 84 of file GetElementPtrTypeIterator.h.

References I.

Referenced by llvm::gep_type_end().

◆ getIndexedType()

template<typename ItTy = User::const_op_iterator>
Type * llvm::generic_gep_type_iterator< ItTy >::getIndexedType ( ) const
inline

◆ getOperand()

template<typename ItTy = User::const_op_iterator>
Value * llvm::generic_gep_type_iterator< ItTy >::getOperand ( ) const
inline

◆ getSequentialElementStride()

template<typename ItTy = User::const_op_iterator>
TypeSize llvm::generic_gep_type_iterator< ItTy >::getSequentialElementStride ( const DataLayout DL) const
inline

◆ getStructType()

template<typename ItTy = User::const_op_iterator>
StructType * llvm::generic_gep_type_iterator< ItTy >::getStructType ( ) const
inline

Definition at line 164 of file GetElementPtrTypeIterator.h.

◆ getStructTypeOrNull()

template<typename ItTy = User::const_op_iterator>
StructType * llvm::generic_gep_type_iterator< ItTy >::getStructTypeOrNull ( ) const
inline

◆ isSequential()

template<typename ItTy = User::const_op_iterator>
bool llvm::generic_gep_type_iterator< ItTy >::isSequential ( ) const
inline

◆ isStruct()

template<typename ItTy = User::const_op_iterator>
bool llvm::generic_gep_type_iterator< ItTy >::isStruct ( ) const
inline

◆ isVector()

template<typename ItTy = User::const_op_iterator>
bool llvm::generic_gep_type_iterator< ItTy >::isVector ( ) const
inline

◆ operator!=()

template<typename ItTy = User::const_op_iterator>
bool llvm::generic_gep_type_iterator< ItTy >::operator!= ( const generic_gep_type_iterator< ItTy > &  x) const
inline

◆ operator++() [1/2]

template<typename ItTy = User::const_op_iterator>
generic_gep_type_iterator & llvm::generic_gep_type_iterator< ItTy >::operator++ ( )
inline

◆ operator++() [2/2]

template<typename ItTy = User::const_op_iterator>
generic_gep_type_iterator llvm::generic_gep_type_iterator< ItTy >::operator++ ( int  )
inline

Definition at line 124 of file GetElementPtrTypeIterator.h.

◆ operator==()

template<typename ItTy = User::const_op_iterator>
bool llvm::generic_gep_type_iterator< ItTy >::operator== ( const generic_gep_type_iterator< ItTy > &  x) const
inline

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