| __gnu_parallel::_IteratorPair< _Iterator1, _Iterator2, _IteratorCategory >(3) | Library Functions Manual | __gnu_parallel::_IteratorPair< _Iterator1, _Iterator2, _IteratorCategory >(3) | 
NAME¶
__gnu_parallel::_IteratorPair< _Iterator1, _Iterator2, _IteratorCategory > - A pair of iterators. The usual iterator operations are applied to both child iterators.
SYNOPSIS¶
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)
  
  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 (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. _Iterator2 second
  
  The second member.
  
Related Functions¶
(Note that these are not member functions.)
  
  constexpr pair< typename __decay_and_strip< _Iterator1
    >::__type, typename __decay_and_strip< _Iterator2 >::__type >
    make_pair (_Iterator1 &&__x, _Iterator2 &&__y)
  
  A convenience wrapper for creating a pair from two objects.
  
  
  
  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< _Iterator1, _Iterator2 > &__y)
  
  constexpr bool operator< (const pair< _Iterator1,
    _Iterator2 > &__x, const pair< _Iterator1, _Iterator2 >
    &__y)
  
  constexpr bool operator!= (const pair< _Iterator1, _Iterator2
    > &__x, const pair< _Iterator1, _Iterator2 > &__y)
  
  Uses operator== to find the result.  constexpr bool operator>
    (const pair< _Iterator1, _Iterator2 > &__x, const
    pair< _Iterator1, _Iterator2 > &__y)
  
  Uses operator< to find the result.  constexpr bool
    operator<= (const pair< _Iterator1, _Iterator2 >
    &__x, const pair< _Iterator1, _Iterator2 > &__y)
  
  Uses operator< to find the result.  constexpr bool
    operator>= (const pair< _Iterator1, _Iterator2 >
    &__x, const pair< _Iterator1, _Iterator2 > &__y)
  
  Uses operator< to find the result. 
  
  
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¶
constexpr 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 Function Documentation¶
constexpr pair< typename __decay_and_strip< _Iterator1 >::__type, typename __decay_and_strip< _Iterator2 >::__type > make_pair (_Iterator1 && __x, _Iterator2 && __y) [related]¶
A convenience wrapper for creating a pair from two objects.
Parameters
__y The second object.
Returns
The C++98 standard says the objects are passed by reference-to-const, but C++03 says they are passed by value (this was LWG issue #181).
Since C++11 they have been passed by forwarding reference and then forwarded to the new members of the pair. To create a pair with a member of reference type, pass a reference_wrapper to this function.
constexpr bool operator!= (const pair< _Iterator1 , _Iterator2 > & __x, const pair< _Iterator1 , _Iterator2 > & __y) [related]¶
Uses operator== to find the result.
constexpr bool operator< (const pair< _Iterator1 , _Iterator2 > & __x, const pair< _Iterator1 , _Iterator2 > & __y) [related]¶
Defines a lexicographical order for pairs.
For two pairs of the same type, 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.
constexpr bool operator<= (const pair< _Iterator1 , _Iterator2 > & __x, const pair< _Iterator1 , _Iterator2 > & __y) [related]¶
Uses operator< to find the result.
constexpr bool operator== (const pair< _Iterator1 , _Iterator2 > & __x, const pair< _Iterator1 , _Iterator2 > & __y) [related]¶
Two pairs of the same type are equal iff their members are equal.
constexpr bool operator> (const pair< _Iterator1 , _Iterator2 > & __x, const pair< _Iterator1 , _Iterator2 > & __y) [related]¶
Uses operator< to find the result.
constexpr bool operator>= (const pair< _Iterator1 , _Iterator2 > & __x, const pair< _Iterator1 , _Iterator2 > & __y) [related]¶
Uses operator< to find the result.
constexpr 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
Member Data Documentation¶
_Iterator1 std::pair< _Iterator1 , _Iterator2 >::first [inherited]¶
The first member.
_Iterator2 std::pair< _Iterator1 , _Iterator2 >::second [inherited]¶
The second member.
Author¶
Generated automatically by Doxygen for libstdc++ from the source code.
| Mon Dec 18 2023 | libstdc++ |