LLVM  4.0.0
Public Types | Public Member Functions | List of all members
llvm::mapped_iterator< RootIt, UnaryFunc > Class Template Reference

#include <STLExtras.h>

Public Types

typedef std::iterator_traits
< RootIt >::iterator_category 
iterator_category
 
typedef std::iterator_traits
< RootIt >::difference_type 
difference_type
 
typedef std::result_of
< UnaryFunc(decltype(*std::declval
< RootIt >)))>::type 
value_type
 
typedef void pointer
 
typedef void reference
 
typedef RootIt iterator_type
 

Public Member Functions

const RootIt & getCurrent () const
 
const UnaryFunc & getFunc () const
 
 mapped_iterator (const RootIt &I, UnaryFunc F)
 
value_type operator* () const
 
mapped_iteratoroperator++ ()
 
mapped_iteratoroperator-- ()
 
mapped_iterator operator++ (int)
 
mapped_iterator operator-- (int)
 
mapped_iterator operator+ (difference_type n) const
 
mapped_iteratoroperator+= (difference_type n)
 
mapped_iterator operator- (difference_type n) const
 
mapped_iteratoroperator-= (difference_type n)
 
reference operator[] (difference_type n) const
 
bool operator!= (const mapped_iterator &X) const
 
bool operator== (const mapped_iterator &X) const
 
bool operator< (const mapped_iterator &X) const
 
difference_type operator- (const mapped_iterator &X) const
 

Detailed Description

template<class RootIt, class UnaryFunc>
class llvm::mapped_iterator< RootIt, UnaryFunc >

Definition at line 129 of file STLExtras.h.

Member Typedef Documentation

template<class RootIt, class UnaryFunc>
typedef std::iterator_traits<RootIt>::difference_type llvm::mapped_iterator< RootIt, UnaryFunc >::difference_type

Definition at line 136 of file STLExtras.h.

template<class RootIt, class UnaryFunc>
typedef std::iterator_traits<RootIt>::iterator_category llvm::mapped_iterator< RootIt, UnaryFunc >::iterator_category

Definition at line 134 of file STLExtras.h.

template<class RootIt, class UnaryFunc>
typedef RootIt llvm::mapped_iterator< RootIt, UnaryFunc >::iterator_type

Definition at line 145 of file STLExtras.h.

template<class RootIt, class UnaryFunc>
typedef void llvm::mapped_iterator< RootIt, UnaryFunc >::pointer

Definition at line 141 of file STLExtras.h.

template<class RootIt, class UnaryFunc>
typedef void llvm::mapped_iterator< RootIt, UnaryFunc >::reference

Definition at line 143 of file STLExtras.h.

template<class RootIt, class UnaryFunc>
typedef std::result_of< UnaryFunc(decltype(*std::declval<RootIt>)))>::type llvm::mapped_iterator< RootIt, UnaryFunc >::value_type

Definition at line 139 of file STLExtras.h.

Constructor & Destructor Documentation

template<class RootIt, class UnaryFunc>
llvm::mapped_iterator< RootIt, UnaryFunc >::mapped_iterator ( const RootIt &  I,
UnaryFunc  F 
)
inlineexplicit

Member Function Documentation

template<class RootIt, class UnaryFunc>
const RootIt& llvm::mapped_iterator< RootIt, UnaryFunc >::getCurrent ( ) const
inline

Definition at line 147 of file STLExtras.h.

Referenced by llvm::operator+(), and llvm::CatchSwitchInst::removeHandler().

template<class RootIt, class UnaryFunc>
const UnaryFunc& llvm::mapped_iterator< RootIt, UnaryFunc >::getFunc ( ) const
inline

Definition at line 148 of file STLExtras.h.

Referenced by llvm::operator+().

template<class RootIt, class UnaryFunc>
bool llvm::mapped_iterator< RootIt, UnaryFunc >::operator!= ( const mapped_iterator< RootIt, UnaryFunc > &  X) const
inline
template<class RootIt, class UnaryFunc>
value_type llvm::mapped_iterator< RootIt, UnaryFunc >::operator* ( ) const
inline

Definition at line 153 of file STLExtras.h.

template<class RootIt, class UnaryFunc>
mapped_iterator llvm::mapped_iterator< RootIt, UnaryFunc >::operator+ ( difference_type  n) const
inline
template<class RootIt, class UnaryFunc>
mapped_iterator& llvm::mapped_iterator< RootIt, UnaryFunc >::operator++ ( )
inline

Definition at line 157 of file STLExtras.h.

template<class RootIt, class UnaryFunc>
mapped_iterator llvm::mapped_iterator< RootIt, UnaryFunc >::operator++ ( int  )
inline

Definition at line 165 of file STLExtras.h.

template<class RootIt, class UnaryFunc>
mapped_iterator& llvm::mapped_iterator< RootIt, UnaryFunc >::operator+= ( difference_type  n)
inline

Definition at line 178 of file STLExtras.h.

template<class RootIt, class UnaryFunc>
mapped_iterator llvm::mapped_iterator< RootIt, UnaryFunc >::operator- ( difference_type  n) const
inline
template<class RootIt, class UnaryFunc>
difference_type llvm::mapped_iterator< RootIt, UnaryFunc >::operator- ( const mapped_iterator< RootIt, UnaryFunc > &  X) const
inline

Definition at line 197 of file STLExtras.h.

template<class RootIt, class UnaryFunc>
mapped_iterator& llvm::mapped_iterator< RootIt, UnaryFunc >::operator-- ( )
inline

Definition at line 161 of file STLExtras.h.

template<class RootIt, class UnaryFunc>
mapped_iterator llvm::mapped_iterator< RootIt, UnaryFunc >::operator-- ( int  )
inline

Definition at line 170 of file STLExtras.h.

template<class RootIt, class UnaryFunc>
mapped_iterator& llvm::mapped_iterator< RootIt, UnaryFunc >::operator-= ( difference_type  n)
inline

Definition at line 185 of file STLExtras.h.

template<class RootIt, class UnaryFunc>
bool llvm::mapped_iterator< RootIt, UnaryFunc >::operator< ( const mapped_iterator< RootIt, UnaryFunc > &  X) const
inline

Definition at line 195 of file STLExtras.h.

template<class RootIt, class UnaryFunc>
bool llvm::mapped_iterator< RootIt, UnaryFunc >::operator== ( const mapped_iterator< RootIt, UnaryFunc > &  X) const
inline

Definition at line 192 of file STLExtras.h.

Referenced by llvm::mapped_iterator< RootIt, UnaryFunc >::operator!=().

template<class RootIt, class UnaryFunc>
reference llvm::mapped_iterator< RootIt, UnaryFunc >::operator[] ( difference_type  n) const
inline

Definition at line 189 of file STLExtras.h.


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