15 #ifndef LLVM_SUPPORT_GETELEMENTPTRTYPEITERATOR_H
16 #define LLVM_SUPPORT_GETELEMENTPTRTYPEITERATOR_H
22 template<
typename ItTy = User::const_op_iterator>
24 :
public std::iterator<std::forward_iterator_tag, Type *, ptrdiff_t> {
25 typedef std::iterator<std::forward_iterator_tag,
26 Type *, ptrdiff_t> super;
47 return OpIt == x.OpIt;
101 inline generic_gep_type_iterator<const T *>
107 inline generic_gep_type_iterator<const T *>
Type * getIndexedType() const
generic_gep_type_iterator gep_type_iterator
gep_type_iterator gep_type_end(const User *GEP)
Type * operator->() const
bool operator==(const generic_gep_type_iterator &x) const
generic_gep_type_iterator & operator++()
static generic_gep_type_iterator end(ItTy It)
Type * getTypeAtIndex(const Value *V)
Value * getOperand(unsigned i) const
static generic_gep_type_iterator begin(Type *Ty, ItTy It)
Value * getOperand() const
generic_gep_type_iterator operator++(int)
const Type * getScalarType() const
LLVM Value Representation.
bool operator!=(const generic_gep_type_iterator &x) const
gep_type_iterator gep_type_begin(const User *GEP)