Provided by: libstdc++-10-doc_10.5.0-1ubuntu1_all bug

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)
       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
           __x The first object.
           __y The second object.

       Returns
           A newly-constructed pair<> object of the appropriate type.

       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
           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.

   _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<ulIterator1, _Iterator2, _IteratorCategory >(3cxx)