hpx/iterator_support/iterator_adaptor.hpp¶
See Public API for a list of names and headers that are part of the public HPX API.
-
namespace
hpx
-
namespace
util
-
template<typename
Derived
, typenameBase
, typenameValue
= void, typenameCategory
= void, typenameReference
= void, typenameDifference
= void, typenamePointer
= void>
classiterator_adaptor
: public hpx::util::iterator_facade<Derived, value_type, iterator_category, reference_type, difference_type, void>¶ Subclassed by hpx::util::counting_iterator< Incrementable, CategoryOrTraversal, Difference, std::enable_if_t< std::is_integral_v< Incrementable > > >
Public Types
-
template<>
usingbase_type
= Base¶
Public Functions
-
iterator_adaptor
()¶
-
constexpr
iterator_adaptor
(Base const &iter)¶
-
constexpr Base const &
base
() const¶
Protected Types
-
template<>
usingbase_adaptor_type
= typename hpx::util::detail::iterator_adaptor_base<Derived, Base, Value, Category, Reference, Difference, Pointer>::type¶
-
typedef iterator_adaptor<Derived, Base, Value, Category, Reference, Difference, Pointer>
iterator_adaptor_
¶
Private Functions
-
constexpr base_adaptor_type::reference
dereference
() const¶
-
template<typename
OtherDerived
, typenameOtherIterator
, typenameV
, typenameC
, typenameR
, typenameD
, typenameP
>
constexpr boolequal
(iterator_adaptor<OtherDerived, OtherIterator, V, C, R, D, P> const &x) const¶
-
template<typename
DifferenceType
>
voidadvance
(DifferenceType n)¶
-
void
increment
()¶
-
template<typename
Iterator
= Base, typenameEnable
= std::enable_if_t<traits::is_bidirectional_iterator_v<Iterator>>>
voiddecrement
()¶
-
template<typename
OtherDerived
, typenameOtherIterator
, typenameV
, typenameC
, typenameR
, typenameD
, typenameP
>
constexpr base_adaptor_type::difference_typedistance_to
(iterator_adaptor<OtherDerived, OtherIterator, V, C, R, D, P> const &y) const¶
Private Members
-
Base
iterator_
¶
Friends
-
friend
hpx::util::hpx::util::iterator_core_access
-
template<>
-
template<typename
-
namespace