llvm::mapped_iterator_base

Base class for mapped iterators without stored function objects.

Synopsis

Declared in <llvm/ADT/STLExtras.h>

template<
    typename DerivedT,
    typename ItTy,
    typename ReferenceTy>
class mapped_iterator_base
    : public iterator_adaptor_base<DerivedT, ItTy, std::iterator_traits<ItTy>::iterator_category, std::remove_reference_t<ReferenceTy>, std::iterator_traits<ItTy>::difference_type, std::remove_reference_t<ReferenceTy>*, ReferenceTy>

Description

Derived iterators must provide a mapElement method that defines how to map a value of the iterator to the provided reference type.

Type Aliases

NameDescription
BaseT Base type for derived mapped iterator implementations.
difference_type Signed type used to express the distance between iterators.
iterator_category Iterator category tag for this facade.
pointer Pointer type returned by the iterator.
reference Reference type returned by the iterator.
value_type Value type produced by the iterator.

Enums

NameDescription
Unnamed enum Capability flags for the iterator category.

Member Functions

NameDescription
mapped_iterator_base [constructor]Construct a mapped iterator over U.
getCurrent Return the underlying iterator position.
operator* Return the mapped value at the current position.
operator+ Advance the iterator by n and return the result.
operator++ Increment operators
operator+= Advance the wrapped iterator by n.
operator- Subtraction operators
operator-- Decrement operators
operator-= Retreat the wrapped iterator by n.
operator-> Return a proxy pointer to the current element.
operator[] Return a proxy to the element at offset n.
operator<= Return true if this iterator is less than or equal to RHS.
operator> Return true if this iterator is greater than RHS.
operator>= Return true if this iterator is greater than or equal to RHS.

Using Declarations

NameDescription
operator++ Bring the postfix increment operator into scope.
operator- Bring the offset-subtraction operator from the facade into scope.
operator-- Bring the postfix decrement operator into scope.

Protected Types

NameDescription
PointerProxy Proxy that yields a pointer from a copied reference.
ReferenceProxy Proxy that yields a reference from a copied iterator.

Protected Member Functions

NameDescription
wrapped Return the wrapped underlying iterator.

Protected Data Members

NameDescription
I Wrapped underlying iterator.

Non-Member Functions

NameDescription
operator<Compare two adapted iterators for order.
operator<Compare two adapted iterators for order.
operator<Compare two adapted iterators for order.
operator<Compare two adapted iterators for order.
operator<Compare two adapted iterators for order.
operator<Compare two adapted iterators for order.
operator<Compare two adapted iterators for order.
operator<Compare two adapted iterators for order.
operator<Compare two adapted iterators for order.
operator<Compare two adapted iterators for order.
operator<Compare two adapted iterators for order.
operator<Compare two adapted iterators for order.
operator<Compare two adapted iterators for order.
operator<Compare two adapted iterators for order.
operator<Compare two adapted iterators for order.
operator<Compare two adapted iterators for order.
operator<Compare two adapted iterators for order.
operator<Compare two adapted iterators for order.
operator==Return true if LHS and RHS wrap equal iterators.
operator==Return true if LHS and RHS wrap equal iterators.
operator==Return true if LHS and RHS wrap equal iterators.
operator==Return true if LHS and RHS wrap equal iterators.
operator==Return true if LHS and RHS wrap equal iterators.
operator==Return true if LHS and RHS wrap equal iterators.
operator==Return true if LHS and RHS wrap equal iterators.
operator==Return true if LHS and RHS wrap equal iterators.
operator==Return true if LHS and RHS wrap equal iterators.
operator==Return true if LHS and RHS wrap equal iterators.
operator==Return true if LHS and RHS wrap equal iterators.
operator==Return true if LHS and RHS wrap equal iterators.
operator==Return true if LHS and RHS wrap equal iterators.
operator==Return true if LHS and RHS wrap equal iterators.
operator==Return true if LHS and RHS wrap equal iterators.
operator==Return true if LHS and RHS wrap equal iterators.
operator==Return true if LHS and RHS wrap equal iterators.
operator==Return true if LHS and RHS wrap equal iterators.