__gnu_parallel::_IteratorPair< _Iterator1, _Iterator2, _IteratorCategory >(3cxx)

NAME
__gnu_parallel::_IteratorPair< _Iterator1, _Iterator2, _IteratorCategory > - A pair of iterators. The usual iterator operations are applied to both child iterators.

SYNOPSIS

#include <iterator.h>

Inherits std::pair< _Iterator1, _Iterator2 >.

  Public Types

typedef std::iterator_traits< _Iterator1 > _TraitsType
typedef _TraitsType::difference_type difference_type
typedef _Iterator1 first_type
The type of the first member.
typedef _IteratorCategory iterator_category
typedef _IteratorPair * pointer
typedef _IteratorPair & reference
typedef _Iterator2 second_type
The type of the second member.
typedef void value_type

  Public Member Functions

_IteratorPair (const _Iterator1 &__first, const _Iterator2 &__second)
constexpr explicit (!_S_convertible< _U1 &, _U2 & >()) pair(pair< _U1
constexpr explicit (!_S_convertible< _U1 &, _U2 & >()) pair(pair< _U1
constexpr _U2 &&constexpr explicit (!_S_convertible< _U1 &, _U2 & >()) pair(pair< _U1
Converting constructor from a non-const pair<U1, U2> lvalue.
constexpr _U2 &&constexpr explicit (!_S_convertible< _U1 &, _U2 & >()) pair(pair< _U1
Converting constructor from a non-const pair<U1, U2> lvalue.
constexpr explicit (!_S_convertible< _U1, _U2 >()) pair(_U1 &&
constexpr explicit (!_S_convertible< _U1, _U2 >()) pair(_U1 &&
constexpr explicit (!_S_convertible< _U1, _U2 >()) pair(_U1 &&__x
Constructor accepting two values of arbitrary types.
constexpr explicit (!_S_convertible< _U1, _U2 >()) pair(_U1 &&__x
Constructor accepting two values of arbitrary types.
constexpr explicit (!_S_convertible< _U1, _U2 >()) pair(pair< _U1
constexpr explicit (!_S_convertible< _U1, _U2 >()) pair(pair< _U1
constexpr _U2 &constexpr explicit (!_S_convertible< _U1, _U2 >()) pair(pair< _U1
Converting constructor from a non-const pair<U1, U2> rvalue.
constexpr _U2 &constexpr explicit (!_S_convertible< _U1, _U2 >()) pair(pair< _U1
Converting constructor from a non-const pair<U1, U2> rvalue.
constexpr explicit (!_S_convertible< const _Iterator1 &, const _Iterator2 & >()) pair(const type_identity_t< _Iterator1 > &__x
Constructor accepting lvalues of first_type and second_type.
constexpr explicit (!_S_convertible< const _Iterator1 &, const _Iterator2 & >()) pair(const type_identity_t< _Iterator1 > &__x
Constructor accepting lvalues of first_type and second_type.
constexpr explicit (!_S_convertible< const _U1 &, const _U2 & >()) pair(const pair< _U1
constexpr explicit (!_S_convertible< const _U1 &, const _U2 & >()) pair(const pair< _U1
constexpr _U2 &&constexpr explicit (!_S_convertible< const _U1 &, const _U2 & >()) pair(const pair< _U1
Converting constructor from a const pair<U1, U2> lvalue.
constexpr _U2 &&constexpr explicit (!_S_convertible< const _U1 &, const _U2 & >()) pair(const pair< _U1
Converting constructor from a const pair<U1, U2> lvalue.
constexpr explicit (!_S_convertible< const _U1, const _U2 >()) pair(const pair< _U1
constexpr explicit (!_S_convertible< const _U1, const _U2 >()) pair(const pair< _U1
constexpr _U2 &constexpr explicit (!_S_convertible< const _U1, const _U2 >()) pair(const pair< _U1
Converting constructor from a const pair<U1, U2> rvalue.
constexpr _U2 &constexpr explicit (!_S_convertible< const _U1, const _U2 >()) pair(const pair< _U1
Converting constructor from a const pair<U1, U2> rvalue.
constexpr explicit (!_S_convertible_from_pair_like< _UPair >()) pair(_UPair &&)=delete
constexpr explicit (!_S_convertible_from_pair_like< _UPair >()) pair(_UPair &&)=delete
constexpr _U2 &&constexpr explicit (!_S_convertible_from_pair_like< _UPair >()) pair(_UPair &&__p)
constexpr _U2 &&constexpr explicit (!_S_convertible_from_pair_like< _UPair >()) pair(_UPair &&__p)
constexpr explicit (__not_< __and_< __is_implicitly_default_constructible< _Iterator1 >, __is_implicitly_default_constructible< _Iterator2 > > >()) pair() noexcept(is_nothrow_default_constructible_v< _Iterator1 > &&is_nothrow_default_constructible_v< _Iterator2 >)
Default constructor.
constexpr explicit (__not_< __and_< __is_implicitly_default_constructible< _Iterator1 >, __is_implicitly_default_constructible< _Iterator2 > > >()) pair() noexcept(is_nothrow_default_constructible_v< _Iterator1 > &&is_nothrow_default_constructible_v< _Iterator2 >)
Default constructor.
constexpr _U2 &&constexpr _U2 &__p noexcept (_S_nothrow_constructible< _U1 &, _U2 & >())
constexpr _U2 &&constexpr _U2 &__p noexcept (_S_nothrow_constructible< _U1 &, _U2 & >())
constexpr _U2 &constexpr _U2 &&__p noexcept (_S_nothrow_constructible< _U1, _U2 >())
constexpr _U2 &constexpr _U2 &&__p noexcept (_S_nothrow_constructible< _U1, _U2 >())
constexpr _U2 &&__y noexcept (_S_nothrow_constructible< _U1, _U2 >())
constexpr _U2 &&__y noexcept (_S_nothrow_constructible< _U1, _U2 >())
constexpr const _Iterator2 &__y noexcept (_S_nothrow_constructible< const _Iterator1 &, const _Iterator2 & >())
constexpr const _Iterator2 &__y noexcept (_S_nothrow_constructible< const _Iterator1 &, const _Iterator2 & >())
constexpr _U2 &&constexpr _U2 &__p noexcept (_S_nothrow_constructible< const _U1 &, const _U2 & >())
constexpr _U2 &&constexpr _U2 &__p noexcept (_S_nothrow_constructible< const _U1 &, const _U2 & >())
constexpr _U2 &constexpr _U2 &&__p noexcept (_S_nothrow_constructible< const _U1, const _U2 >())
constexpr _U2 &constexpr _U2 &&__p noexcept (_S_nothrow_constructible< const _U1, const _U2 >())
operator _Iterator2 () const
_IteratorPair operator+ (difference_type __delta) const
_IteratorPair & operator++ ()
const _IteratorPair operator++ (int)
difference_type operator- (const _IteratorPair &__other) const
_IteratorPair & operator-- ()
const _IteratorPair operator-- (int)
_IteratorPair & operator= (const _IteratorPair &__other)
constexpr void swap (const pair &__p) const noexcept(__and_v< __is_nothrow_swappable< const _Iterator1 >, __is_nothrow_swappable< const _Iterator2 > >)
constexpr void swap (const pair &__p) const noexcept(__and_v< __is_nothrow_swappable< const _Iterator1 >, __is_nothrow_swappable< const _Iterator2 > >)
constexpr void swap (pair &__p) noexcept(__and_< __is_nothrow_swappable< _Iterator1 >, __is_nothrow_swappable< _Iterator2 > >::value)
Swap the first members and then the second members.
constexpr void swap (pair &__p) noexcept(__and_< __is_nothrow_swappable< _Iterator1 >, __is_nothrow_swappable< _Iterator2 > >::value)
Swap the first members and then the second members.

  Public Attributes

_Iterator1 first
The first member.
_Iterator1 first
The first member.
_Iterator2 second
The second member.
_Iterator2 second
The second member.

  Related Symbols
(Note that these are not member symbols.)

constexpr enable_if< __and_< __is_swappable< _Iterator1 >, __is_swappable< _Iterator2 > >::value >::type swap (pair< _Iterator1, _Iterator2 > &__x, pair< _Iterator1, _Iterator2 > &__y) noexcept(noexcept(__x.swap(__y)))
constexpr enable_if< __and_< __is_swappable< _Iterator1 >, __is_swappable< _Iterator2 > >::value >::type swap (pair< _Iterator1, _Iterator2 > &__x, pair< _Iterator1, _Iterator2 > &__y) noexcept(noexcept(__x.swap(__y)))
constexpr bool operator== (const pair< _Iterator1, _Iterator2 > &__x, const pair< _U1, _U2 > &__y)
Two pairs are equal iff their members are equal.
constexpr bool operator== (const pair< _Iterator1, _Iterator2 > &__x, const pair< _U1, _U2 > &__y)
Two pairs are equal iff their members are equal.
constexpr common_comparison_category_t< __detail::__synth3way_t< _Iterator1, _U1 >, __detail::__synth3way_t< _Iterator2, _U2 > > operator<=> (const pair< _Iterator1, _Iterator2 > &__x, const pair< _U1, _U2 > &__y)
constexpr common_comparison_category_t< __detail::__synth3way_t< _Iterator1, _U1 >, __detail::__synth3way_t< _Iterator2, _U2 > > operator<=> (const pair< _Iterator1, _Iterator2 > &__x, const pair< _U1, _U2 > &__y)

Detailed Description

  template<typename _Iterator1, typename _Iterator2, typename _IteratorCategory>
class __gnu_parallel::_IteratorPair< _Iterator1, _Iterator2, _IteratorCategory >"A pair of iterators. The usual iterator operations are applied to both child iterators.

Member Typedef Documentation

  typedef _Iterator1 std::pair< _Iterator1, _Iterator2 >::first_type [inherited]

The type of the first member.

  typedef _Iterator2 std::pair< _Iterator1, _Iterator2 >::second_type [inherited]

The type of the second member.

Member Function Documentation

  _U2 &&constexpr std::pair< _Iterator1, _Iterator2 >::explicit (!_S_convertible< _U1 &, _U2 & > ()) [constexpr], [inherited]

Converting constructor from a non-const pair<U1, U2> lvalue.

  _U2 &&constexpr std::pair< _Iterator1, _Iterator2 >::explicit (!_S_convertible< _U1 &, _U2 & > ()) [constexpr], [inherited]

Converting constructor from a non-const pair<U1, U2> lvalue.

  std::pair< _Iterator1, _Iterator2 >::explicit (!_S_convertible< _U1, _U2 > ()) && [constexpr], [inherited]

Constructor accepting two values of arbitrary types.

  std::pair< _Iterator1, _Iterator2 >::explicit (!_S_convertible< _U1, _U2 > ()) && [constexpr], [inherited]

Constructor accepting two values of arbitrary types.

  _U2 &constexpr std::pair< _Iterator1, _Iterator2 >::explicit (!_S_convertible< _U1, _U2 > ()) [constexpr], [inherited]

Converting constructor from a non-const pair<U1, U2> rvalue.

  _U2 &constexpr std::pair< _Iterator1, _Iterator2 >::explicit (!_S_convertible< _U1, _U2 > ()) [constexpr], [inherited]

Converting constructor from a non-const pair<U1, U2> rvalue.

  std::pair< _Iterator1, _Iterator2 >::explicit (!_S_convertible< const _Iterator1 &, const _Iterator2 & > ()) const & [constexpr], [inherited]

Constructor accepting lvalues of first_type and second_type.

  std::pair< _Iterator1, _Iterator2 >::explicit (!_S_convertible< const _Iterator1 &, const _Iterator2 & > ()) const & [constexpr], [inherited]

Constructor accepting lvalues of first_type and second_type.

  _U2 &&constexpr std::pair< _Iterator1, _Iterator2 >::explicit (!_S_convertible< const _U1 &, const _U2 & > ()) const [constexpr], [inherited]

Converting constructor from a const pair<U1, U2> lvalue.

  _U2 &&constexpr std::pair< _Iterator1, _Iterator2 >::explicit (!_S_convertible< const _U1 &, const _U2 & > ()) const [constexpr], [inherited]

Converting constructor from a const pair<U1, U2> lvalue.

  _U2 &constexpr std::pair< _Iterator1, _Iterator2 >::explicit (!_S_convertible< const _U1, const _U2 > ()) const [constexpr], [inherited]

Converting constructor from a const pair<U1, U2> rvalue.

  _U2 &constexpr std::pair< _Iterator1, _Iterator2 >::explicit (!_S_convertible< const _U1, const _U2 > ()) const [constexpr], [inherited]

Converting constructor from a const pair<U1, U2> rvalue.

  std::pair< _Iterator1, _Iterator2 >::explicit (__not_< __and_< __is_implicitly_default_constructible< _Iterator1 >, __is_implicitly_default_constructible< _Iterator2 > > > ()) [inline], [constexpr], [noexcept], [inherited]

Default constructor.

  std::pair< _Iterator1, _Iterator2 >::explicit (__not_< __and_< __is_implicitly_default_constructible< _Iterator1 >, __is_implicitly_default_constructible< _Iterator2 > > > ()) [inline], [constexpr], [noexcept], [inherited]

Default constructor.

  void std::pair< _Iterator1, _Iterator2 >::swap (pair< _Iterator1, _Iterator2 > & __p) [inline], [constexpr], [noexcept], [inherited]

Swap the first members and then the second members.

  void std::pair< _Iterator1, _Iterator2 >::swap (pair< _Iterator1, _Iterator2 > & __p) [inline], [constexpr], [noexcept], [inherited]

Swap the first members and then the second members.

Friends And Related Symbol Documentation

  common_comparison_category_t< __detail::__synth3way_t< _Iterator1, _U1 >, __detail::__synth3way_t< _Iterator2, _U2 > > operator<=> (const pair< _Iterator1, _Iterator2 > & __x, const pair< _U1, _U2 > & __y) [related]
Defines a lexicographical order for pairs.

For two pairs of comparable types, P is ordered before Q if P.first is less than Q.first, or if P.first and Q.first are equivalent (neither is less than the other) and P.second is less than Q.second.

  common_comparison_category_t< __detail::__synth3way_t< _Iterator1, _U1 >, __detail::__synth3way_t< _Iterator2, _U2 > > operator<=> (const pair< _Iterator1, _Iterator2 > & __x, const pair< _U1, _U2 > & __y) [related]
Defines a lexicographical order for pairs.

For two pairs of comparable types, P is ordered before Q if P.first is less than Q.first, or if P.first and Q.first are equivalent (neither is less than the other) and P.second is less than Q.second.

  bool operator== (const pair< _Iterator1, _Iterator2 > & __x, const pair< _U1, _U2 > & __y) [related]

Two pairs are equal iff their members are equal.

  bool operator== (const pair< _Iterator1, _Iterator2 > & __x, const pair< _U1, _U2 > & __y) [related]

Two pairs are equal iff their members are equal.

  enable_if< __and_< __is_swappable< _Iterator1 >, __is_swappable< _Iterator2 > >::value >::type swap (pair< _Iterator1, _Iterator2 > & __x, pair< _Iterator1, _Iterator2 > & __y) [related]
Swap overload for pairs. Calls std::pair::swap().

Note
    This std::swap overload is not declared in C++03 mode, which has performance implications, e.g. see https://gcc.gnu.org/PR38466

  enable_if< __and_< __is_swappable< _Iterator1 >, __is_swappable< _Iterator2 > >::value >::type swap (pair< _Iterator1, _Iterator2 > & __x, pair< _Iterator1, _Iterator2 > & __y) [related]
Swap overload for pairs. Calls std::pair::swap().

Note
    This std::swap overload is not declared in C++03 mode, which has performance implications, e.g. see https://gcc.gnu.org/PR38466

Member Data Documentation

  _Iterator1 std::pair< _Iterator1, _Iterator2 >::first [inherited]

The first member.

  _Iterator1 std::pair< _Iterator1, _Iterator2 >::first [inherited]

The first member.

  _Iterator2 std::pair< _Iterator1, _Iterator2 >::second [inherited]

The second member.

  _Iterator2 std::pair< _Iterator1, _Iterator2 >::second [inherited]

The second member.

Author

Generated automatically by Doxygen for libstdc++ from the source code.