__gnu_parallel::_IteratorPair< _Iterator1, _Iterator2, _IteratorCategory >(3) Library Functions Manual NAME __gnu_parallel::_IteratorPair< _Iterator1, _Iterator2, _IteratorCategory > - A pair of iterators. The usual iterator operations are applied to both child iterators. SYNOPSIS #include 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 lvalue. constexpr _U2 &&constexpr explicit (!_S_convertible< _U1 &, _U2 & >()) pair(pair< _U1 Converting constructor from a non-const pair 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 rvalue. constexpr _U2 &constexpr explicit (!_S_convertible< _U1, _U2 >()) pair(pair< _U1 Converting constructor from a non-const pair 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 lvalue. constexpr _U2 &&constexpr explicit (!_S_convertible< const _U1 &, const _U2 & >()) pair(const pair< _U1 Converting constructor from a const pair 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 rvalue. constexpr _U2 &constexpr explicit (!_S_convertible< const _U1, const _U2 >()) pair(const pair< _U1 Converting constructor from a const pair 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 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 lvalue. _U2 &&constexpr std::pair< _Iterator1, _Iterator2 >::explicit (!_S_convertible< _U1 &, _U2 & > ()) [constexpr], [inherited] Converting constructor from a non-const pair 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 rvalue. _U2 &constexpr std::pair< _Iterator1, _Iterator2 >::explicit (!_S_convertible< _U1, _U2 > ()) [constexpr], [inherited] Converting constructor from a non-const pair 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 lvalue. _U2 &&constexpr std::pair< _Iterator1, _Iterator2 >::explicit (!_S_convertible< const _U1 &, const _U2 & > ()) const [constexpr], [inherited] Converting constructor from a const pair lvalue. _U2 &constexpr std::pair< _Iterator1, _Iterator2 >::explicit (!_S_convertible< const _U1, const _U2 > ()) const [constexpr], [inherited] Converting constructor from a const pair rvalue. _U2 &constexpr std::pair< _Iterator1, _Iterator2 >::explicit (!_S_convertible< const _U1, const _U2 > ()) const [constexpr], [inherited] Converting constructor from a const pair 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. libstdc++ __gnu_parallel::_IteratorPair< _Iterator1, _Iterator2, _IteratorCategory >(3)