std::sub_match< _BiIter >(3)

NAME
std::sub_match< _BiIter >

SYNOPSIS

Inherits std::pair< _BiIter, _BiIter >.

  Public Types
typedef __iter_traits::difference_type difference_type
typedef _BiIter first_type
The type of the first member.
typedef _BiIter iterator
typedef _BiIter second_type
The type of the second member.
typedef basic_string< value_type > string_type
typedef __iter_traits::value_type value_type

  Public Member Functions
int compare (const sub_match &__s) const
Compares this and another matched sequence.
difference_type length () const noexcept
Gets the length of the matching sequence.
operator string_type () const
Gets the matching sequence as a string.
string_type str () const
Gets the matching sequence as a string.
constexpr void swap (pair &__p) noexcept(__and_< __is_nothrow_swappable< _BiIter >, __is_nothrow_swappable< _BiIter >>::value)
Swap the first members and then the second members.

  Public Attributes
_BiIter first
The first member.
bool matched
_BiIter second
The second member.

  Related Functions
(Note that these are not member functions.)

constexpr enable_if< __and_< __is_swappable< _BiIter >, __is_swappable< _BiIter > >::value >::type swap (pair< _BiIter, _BiIter > &__x, pair< _BiIter, _BiIter > &__y) noexcept(noexcept(__x.swap(__y)))
constexpr bool operator== (const pair< _BiIter, _BiIter > &__x, const pair< _BiIter, _BiIter > &__y)
Two pairs of the same type are equal iff their members are equal.
constexpr bool operator< (const pair< _BiIter, _BiIter > &__x, const pair< _BiIter, _BiIter > &__y)
constexpr bool operator!= (const pair< _BiIter, _BiIter > &__x, const pair< _BiIter, _BiIter > &__y)
Uses operator== to find the result.
constexpr bool operator> (const pair< _BiIter, _BiIter > &__x, const pair< _BiIter, _BiIter > &__y)
Uses operator< to find the result.
constexpr bool operator<= (const pair< _BiIter, _BiIter > &__x, const pair< _BiIter, _BiIter > &__y)
Uses operator< to find the result.
constexpr bool operator>= (const pair< _BiIter, _BiIter > &__x, const pair< _BiIter, _BiIter > &__y)
Uses operator< to find the result.
constexpr pair< typename __decay_and_strip< _BiIter >::__type, typename __decay_and_strip< _BiIter >::__type > make_pair (_BiIter &&__x, _BiIter &&__y)
A convenience wrapper for creating a pair from two objects.

typedef match_results< const char * > cmatch
Tests the equivalence of two regular expression submatches.
typedef match_results< string::const_iterator > smatch
Tests the equivalence of two regular expression submatches.
typedef match_results< const wchar_t * > wcmatch
Tests the equivalence of two regular expression submatches.
typedef match_results< wstring::const_iterator > wsmatch
Tests the equivalence of two regular expression submatches.
template<typename _BiIter > bool operator== (const sub_match< _BiIter > &__lhs, const sub_match< _BiIter > &__rhs)
Tests the equivalence of two regular expression submatches.
template<typename _BiIter > bool operator!= (const sub_match< _BiIter > &__lhs, const sub_match< _BiIter > &__rhs)
Tests the inequivalence of two regular expression submatches.
template<typename _BiIter > bool operator< (const sub_match< _BiIter > &__lhs, const sub_match< _BiIter > &__rhs)
Tests the ordering of two regular expression submatches.
template<typename _BiIter > bool operator<= (const sub_match< _BiIter > &__lhs, const sub_match< _BiIter > &__rhs)
Tests the ordering of two regular expression submatches.
template<typename _BiIter > bool operator>= (const sub_match< _BiIter > &__lhs, const sub_match< _BiIter > &__rhs)
Tests the ordering of two regular expression submatches.
template<typename _BiIter > bool operator> (const sub_match< _BiIter > &__lhs, const sub_match< _BiIter > &__rhs)
Tests the ordering of two regular expression submatches.
template<typename _Bi_iter , typename _Ch_traits , typename _Ch_alloc > bool operator== (const __sub_match_string< _Bi_iter, _Ch_traits, _Ch_alloc > &__lhs, const sub_match< _Bi_iter > &__rhs)
Tests the equivalence of a string and a regular expression submatch.
template<typename _Bi_iter , typename _Ch_traits , typename _Ch_alloc > bool operator!= (const __sub_match_string< _Bi_iter, _Ch_traits, _Ch_alloc > &__lhs, const sub_match< _Bi_iter > &__rhs)
Tests the inequivalence of a string and a regular expression submatch.
template<typename _Bi_iter , typename _Ch_traits , typename _Ch_alloc > bool operator< (const __sub_match_string< _Bi_iter, _Ch_traits, _Ch_alloc > &__lhs, const sub_match< _Bi_iter > &__rhs)
Tests the ordering of a string and a regular expression submatch.
template<typename _Bi_iter , typename _Ch_traits , typename _Ch_alloc > bool operator> (const __sub_match_string< _Bi_iter, _Ch_traits, _Ch_alloc > &__lhs, const sub_match< _Bi_iter > &__rhs)
Tests the ordering of a string and a regular expression submatch.
template<typename _Bi_iter , typename _Ch_traits , typename _Ch_alloc > bool operator>= (const __sub_match_string< _Bi_iter, _Ch_traits, _Ch_alloc > &__lhs, const sub_match< _Bi_iter > &__rhs)
Tests the ordering of a string and a regular expression submatch.
template<typename _Bi_iter , typename _Ch_traits , typename _Ch_alloc > bool operator<= (const __sub_match_string< _Bi_iter, _Ch_traits, _Ch_alloc > &__lhs, const sub_match< _Bi_iter > &__rhs)
Tests the ordering of a string and a regular expression submatch.
template<typename _Bi_iter , typename _Ch_traits , typename _Ch_alloc > bool operator== (const sub_match< _Bi_iter > &__lhs, const __sub_match_string< _Bi_iter, _Ch_traits, _Ch_alloc > &__rhs)
Tests the equivalence of a regular expression submatch and a string.
template<typename _Bi_iter , typename _Ch_traits , typename _Ch_alloc > bool operator!= (const sub_match< _Bi_iter > &__lhs, const __sub_match_string< _Bi_iter, _Ch_traits, _Ch_alloc > &__rhs)
Tests the inequivalence of a regular expression submatch and a string.
template<typename _Bi_iter , typename _Ch_traits , typename _Ch_alloc > bool operator< (const sub_match< _Bi_iter > &__lhs, const __sub_match_string< _Bi_iter, _Ch_traits, _Ch_alloc > &__rhs)
Tests the ordering of a regular expression submatch and a string.
template<typename _Bi_iter , typename _Ch_traits , typename _Ch_alloc > bool operator> (const sub_match< _Bi_iter > &__lhs, const __sub_match_string< _Bi_iter, _Ch_traits, _Ch_alloc > &__rhs)
Tests the ordering of a regular expression submatch and a string.
template<typename _Bi_iter , typename _Ch_traits , typename _Ch_alloc > bool operator>= (const sub_match< _Bi_iter > &__lhs, const __sub_match_string< _Bi_iter, _Ch_traits, _Ch_alloc > &__rhs)
Tests the ordering of a regular expression submatch and a string.
template<typename _Bi_iter , typename _Ch_traits , typename _Ch_alloc > bool operator<= (const sub_match< _Bi_iter > &__lhs, const __sub_match_string< _Bi_iter, _Ch_traits, _Ch_alloc > &__rhs)
Tests the ordering of a regular expression submatch and a string.
template<typename _Bi_iter > bool operator== (typename iterator_traits< _Bi_iter >::value_type const *__lhs, const sub_match< _Bi_iter > &__rhs)
Tests the equivalence of a C string and a regular expression submatch.
template<typename _Bi_iter > bool operator!= (typename iterator_traits< _Bi_iter >::value_type const *__lhs, const sub_match< _Bi_iter > &__rhs)
Tests the inequivalence of a C string and a regular expression submatch.
template<typename _Bi_iter > bool operator< (typename iterator_traits< _Bi_iter >::value_type const *__lhs, const sub_match< _Bi_iter > &__rhs)
Tests the ordering of a C string and a regular expression submatch.
template<typename _Bi_iter > bool operator> (typename iterator_traits< _Bi_iter >::value_type const *__lhs, const sub_match< _Bi_iter > &__rhs)
Tests the ordering of a C string and a regular expression submatch.
template<typename _Bi_iter > bool operator>= (typename iterator_traits< _Bi_iter >::value_type const *__lhs, const sub_match< _Bi_iter > &__rhs)
Tests the ordering of a C string and a regular expression submatch.
template<typename _Bi_iter > bool operator<= (typename iterator_traits< _Bi_iter >::value_type const *__lhs, const sub_match< _Bi_iter > &__rhs)
Tests the ordering of a C string and a regular expression submatch.
template<typename _Bi_iter > bool operator== (const sub_match< _Bi_iter > &__lhs, typename iterator_traits< _Bi_iter >::value_type const *__rhs)
Tests the equivalence of a regular expression submatch and a C string.
template<typename _Bi_iter > bool operator!= (const sub_match< _Bi_iter > &__lhs, typename iterator_traits< _Bi_iter >::value_type const *__rhs)
Tests the inequivalence of a regular expression submatch and a string.
template<typename _Bi_iter > bool operator< (const sub_match< _Bi_iter > &__lhs, typename iterator_traits< _Bi_iter >::value_type const *__rhs)
Tests the ordering of a regular expression submatch and a C string.
template<typename _Bi_iter > bool operator> (const sub_match< _Bi_iter > &__lhs, typename iterator_traits< _Bi_iter >::value_type const *__rhs)
Tests the ordering of a regular expression submatch and a C string.
template<typename _Bi_iter > bool operator>= (const sub_match< _Bi_iter > &__lhs, typename iterator_traits< _Bi_iter >::value_type const *__rhs)
Tests the ordering of a regular expression submatch and a C string.
template<typename _Bi_iter > bool operator<= (const sub_match< _Bi_iter > &__lhs, typename iterator_traits< _Bi_iter >::value_type const *__rhs)
Tests the ordering of a regular expression submatch and a C string.
template<typename _Bi_iter > bool operator== (typename iterator_traits< _Bi_iter >::value_type const &__lhs, const sub_match< _Bi_iter > &__rhs)
Tests the equivalence of a character and a regular expression submatch.
template<typename _Bi_iter > bool operator!= (typename iterator_traits< _Bi_iter >::value_type const &__lhs, const sub_match< _Bi_iter > &__rhs)
Tests the inequivalence of a character and a regular expression submatch.
template<typename _Bi_iter > bool operator< (typename iterator_traits< _Bi_iter >::value_type const &__lhs, const sub_match< _Bi_iter > &__rhs)
Tests the ordering of a character and a regular expression submatch.
template<typename _Bi_iter > bool operator> (typename iterator_traits< _Bi_iter >::value_type const &__lhs, const sub_match< _Bi_iter > &__rhs)
Tests the ordering of a character and a regular expression submatch.
template<typename _Bi_iter > bool operator>= (typename iterator_traits< _Bi_iter >::value_type const &__lhs, const sub_match< _Bi_iter > &__rhs)
Tests the ordering of a character and a regular expression submatch.
template<typename _Bi_iter > bool operator<= (typename iterator_traits< _Bi_iter >::value_type const &__lhs, const sub_match< _Bi_iter > &__rhs)
Tests the ordering of a character and a regular expression submatch.
template<typename _Bi_iter > bool operator== (const sub_match< _Bi_iter > &__lhs, typename iterator_traits< _Bi_iter >::value_type const &__rhs)
Tests the equivalence of a regular expression submatch and a character.
template<typename _Bi_iter > bool operator!= (const sub_match< _Bi_iter > &__lhs, typename iterator_traits< _Bi_iter >::value_type const &__rhs)
Tests the inequivalence of a regular expression submatch and a character.
template<typename _Bi_iter > bool operator< (const sub_match< _Bi_iter > &__lhs, typename iterator_traits< _Bi_iter >::value_type const &__rhs)
Tests the ordering of a regular expression submatch and a character.
template<typename _Bi_iter > bool operator> (const sub_match< _Bi_iter > &__lhs, typename iterator_traits< _Bi_iter >::value_type const &__rhs)
Tests the ordering of a regular expression submatch and a character.
template<typename _Bi_iter > bool operator>= (const sub_match< _Bi_iter > &__lhs, typename iterator_traits< _Bi_iter >::value_type const &__rhs)
Tests the ordering of a regular expression submatch and a character.
template<typename _Bi_iter > bool operator<= (const sub_match< _Bi_iter > &__lhs, typename iterator_traits< _Bi_iter >::value_type const &__rhs)
Tests the ordering of a regular expression submatch and a character.
template<typename _Ch_type , typename _Ch_traits , typename _Bi_iter > basic_ostream< _Ch_type, _Ch_traits > & operator<< (basic_ostream< _Ch_type, _Ch_traits > &__os, const sub_match< _Bi_iter > &__m)
Inserts a matched string into an output stream.
template<typename _Bi_iter , typename _Alloc > bool operator== (const match_results< _Bi_iter, _Alloc > &__m1, const match_results< _Bi_iter, _Alloc > &__m2)
Compares two match_results for equality.
template<typename _Bi_iter , class _Alloc > bool operator!= (const match_results< _Bi_iter, _Alloc > &__m1, const match_results< _Bi_iter, _Alloc > &__m2)
Compares two match_results for inequality.
template<typename _Bi_iter , typename _Alloc > void swap (match_results< _Bi_iter, _Alloc > &__lhs, match_results< _Bi_iter, _Alloc > &__rhs) noexcept
Swaps two match results.

Matching, Searching, and Replacing
typedef regex_iterator< const char * > cregex_iterator
Token iterator for C-style NULL-terminated strings.
typedef regex_iterator< string::const_iterator > sregex_iterator
Token iterator for C-style NULL-terminated strings.
typedef regex_iterator< const wchar_t * > wcregex_iterator
Token iterator for C-style NULL-terminated strings.
typedef regex_iterator< wstring::const_iterator > wsregex_iterator
Token iterator for C-style NULL-terminated strings.
typedef regex_token_iterator< const char * > cregex_token_iterator
Token iterator for C-style NULL-terminated strings.
typedef regex_token_iterator< string::const_iterator > sregex_token_iterator
Token iterator for standard strings.
typedef regex_token_iterator< const wchar_t * > wcregex_token_iterator
Token iterator for C-style NULL-terminated wide strings.
typedef regex_token_iterator< wstring::const_iterator > wsregex_token_iterator
Token iterator for standard wide-character strings.
template<typename _Bi_iter , typename _Alloc , typename _Ch_type , typename _Rx_traits > bool regex_match (_Bi_iter __s, _Bi_iter __e, match_results< _Bi_iter, _Alloc > &__m, const basic_regex< _Ch_type, _Rx_traits > &__re, regex_constants::match_flag_type __flags=regex_constants::match_default)
Determines if there is a match between the regular expression e and all of the character sequence [first, last).
template<typename _Bi_iter , typename _Ch_type , typename _Rx_traits > bool regex_match (_Bi_iter __first, _Bi_iter __last, const basic_regex< _Ch_type, _Rx_traits > &__re, regex_constants::match_flag_type __flags=regex_constants::match_default)
Indicates if there is a match between the regular expression e and all of the character sequence [first, last).
template<typename _Ch_type , typename _Alloc , typename _Rx_traits > bool regex_match (const _Ch_type *__s, match_results< const _Ch_type *, _Alloc > &__m, const basic_regex< _Ch_type, _Rx_traits > &__re, regex_constants::match_flag_type __f=regex_constants::match_default)
Determines if there is a match between the regular expression e and a C-style null-terminated string.
template<typename _Ch_traits , typename _Ch_alloc , typename _Alloc , typename _Ch_type , typename _Rx_traits > bool regex_match (const basic_string< _Ch_type, _Ch_traits, _Ch_alloc > &__s, match_results< typename basic_string< _Ch_type, _Ch_traits, _Ch_alloc >::const_iterator, _Alloc > &__m, const basic_regex< _Ch_type, _Rx_traits > &__re, regex_constants::match_flag_type __flags=regex_constants::match_default)
Determines if there is a match between the regular expression e and a string.
template<typename _Ch_traits , typename _Ch_alloc , typename _Alloc , typename _Ch_type , typename _Rx_traits > bool regex_match (const basic_string< _Ch_type, _Ch_traits, _Ch_alloc > &&, match_results< typename basic_string< _Ch_type, _Ch_traits, _Ch_alloc >::const_iterator, _Alloc > &, const basic_regex< _Ch_type, _Rx_traits > &, regex_constants::match_flag_type=regex_constants::match_default)=delete
Prevent unsafe attempts to get match_results from a temporary string.
template<typename _Ch_type , class _Rx_traits > bool regex_match (const _Ch_type *__s, const basic_regex< _Ch_type, _Rx_traits > &__re, regex_constants::match_flag_type __f=regex_constants::match_default)
Indicates if there is a match between the regular expression e and a C-style null-terminated string.
template<typename _Ch_traits , typename _Str_allocator , typename _Ch_type , typename _Rx_traits > bool regex_match (const basic_string< _Ch_type, _Ch_traits, _Str_allocator > &__s, const basic_regex< _Ch_type, _Rx_traits > &__re, regex_constants::match_flag_type __flags=regex_constants::match_default)
Indicates if there is a match between the regular expression e and a string.
template<typename _Bi_iter , typename _Alloc , typename _Ch_type , typename _Rx_traits > bool regex_search (_Bi_iter __s, _Bi_iter __e, match_results< _Bi_iter, _Alloc > &__m, const basic_regex< _Ch_type, _Rx_traits > &__re, regex_constants::match_flag_type __flags=regex_constants::match_default)
template<typename _Bi_iter , typename _Ch_type , typename _Rx_traits > bool regex_search (_Bi_iter __first, _Bi_iter __last, const basic_regex< _Ch_type, _Rx_traits > &__re, regex_constants::match_flag_type __flags=regex_constants::match_default)
template<typename _Ch_type , class _Alloc , class _Rx_traits > bool regex_search (const _Ch_type *__s, match_results< const _Ch_type *, _Alloc > &__m, const basic_regex< _Ch_type, _Rx_traits > &__e, regex_constants::match_flag_type __f=regex_constants::match_default)
Searches for a regular expression within a C-string.
template<typename _Ch_type , typename _Rx_traits > bool regex_search (const _Ch_type *__s, const basic_regex< _Ch_type, _Rx_traits > &__e, regex_constants::match_flag_type __f=regex_constants::match_default)
Searches for a regular expression within a C-string.
template<typename _Ch_traits , typename _String_allocator , typename _Ch_type , typename _Rx_traits > bool regex_search (const basic_string< _Ch_type, _Ch_traits, _String_allocator > &__s, const basic_regex< _Ch_type, _Rx_traits > &__e, regex_constants::match_flag_type __flags=regex_constants::match_default)
Searches for a regular expression within a string.
template<typename _Ch_traits , typename _Ch_alloc , typename _Alloc , typename _Ch_type , typename _Rx_traits > bool regex_search (const basic_string< _Ch_type, _Ch_traits, _Ch_alloc > &__s, match_results< typename basic_string< _Ch_type, _Ch_traits, _Ch_alloc >::const_iterator, _Alloc > &__m, const basic_regex< _Ch_type, _Rx_traits > &__e, regex_constants::match_flag_type __f=regex_constants::match_default)
Searches for a regular expression within a string.
template<typename _Ch_traits , typename _Ch_alloc , typename _Alloc , typename _Ch_type , typename _Rx_traits > bool regex_search (const basic_string< _Ch_type, _Ch_traits, _Ch_alloc > &&, match_results< typename basic_string< _Ch_type, _Ch_traits, _Ch_alloc >::const_iterator, _Alloc > &, const basic_regex< _Ch_type, _Rx_traits > &, regex_constants::match_flag_type=regex_constants::match_default)=delete
Prevent unsafe attempts to get match_results from a temporary string.
template<typename _Out_iter , typename _Bi_iter , typename _Rx_traits , typename _Ch_type , typename _St , typename _Sa > _Out_iter regex_replace (_Out_iter __out, _Bi_iter __first, _Bi_iter __last, const basic_regex< _Ch_type, _Rx_traits > &__e, const basic_string< _Ch_type, _St, _Sa > &__fmt, regex_constants::match_flag_type __flags=regex_constants::match_default)
Search for a regular expression within a range for multiple times, and replace the matched parts through filling a format string.
template<typename _Out_iter , typename _Bi_iter , typename _Rx_traits , typename _Ch_type > _Out_iter regex_replace (_Out_iter __out, _Bi_iter __first, _Bi_iter __last, const basic_regex< _Ch_type, _Rx_traits > &__e, const _Ch_type *__fmt, regex_constants::match_flag_type __flags=regex_constants::match_default)
Search for a regular expression within a range for multiple times, and replace the matched parts through filling a format C-string.
template<typename _Rx_traits , typename _Ch_type , typename _St , typename _Sa , typename _Fst , typename _Fsa > basic_string< _Ch_type, _St, _Sa > regex_replace (const basic_string< _Ch_type, _St, _Sa > &__s, const basic_regex< _Ch_type, _Rx_traits > &__e, const basic_string< _Ch_type, _Fst, _Fsa > &__fmt, regex_constants::match_flag_type __flags=regex_constants::match_default)
Search for a regular expression within a string for multiple times, and replace the matched parts through filling a format string.
template<typename _Rx_traits , typename _Ch_type , typename _St , typename _Sa > basic_string< _Ch_type, _St, _Sa > regex_replace (const basic_string< _Ch_type, _St, _Sa > &__s, const basic_regex< _Ch_type, _Rx_traits > &__e, const _Ch_type *__fmt, regex_constants::match_flag_type __flags=regex_constants::match_default)
Search for a regular expression within a string for multiple times, and replace the matched parts through filling a format C-string.
template<typename _Rx_traits , typename _Ch_type , typename _St , typename _Sa > basic_string< _Ch_type > regex_replace (const _Ch_type *__s, const basic_regex< _Ch_type, _Rx_traits > &__e, const basic_string< _Ch_type, _St, _Sa > &__fmt, regex_constants::match_flag_type __flags=regex_constants::match_default)
Search for a regular expression within a C-string for multiple times, and replace the matched parts through filling a format string.
template<typename _Rx_traits , typename _Ch_type > basic_string< _Ch_type > regex_replace (const _Ch_type *__s, const basic_regex< _Ch_type, _Rx_traits > &__e, const _Ch_type *__fmt, regex_constants::match_flag_type __flags=regex_constants::match_default)
Search for a regular expression within a C-string for multiple times, and replace the matched parts through filling a format C-string.

constexpr enable_if< __and_< __is_swappable< _BiIter >, __is_swappable< _BiIter > >::value >::type swap (pair< _BiIter, _BiIter > &__x, pair< _BiIter, _BiIter > &__y) noexcept(noexcept(__x.swap(__y)))
constexpr bool operator== (const pair< _BiIter, _BiIter > &__x, const pair< _BiIter, _BiIter > &__y)
Two pairs of the same type are equal iff their members are equal.
constexpr bool operator< (const pair< _BiIter, _BiIter > &__x, const pair< _BiIter, _BiIter > &__y)
constexpr bool operator!= (const pair< _BiIter, _BiIter > &__x, const pair< _BiIter, _BiIter > &__y)
Uses operator== to find the result.
constexpr bool operator> (const pair< _BiIter, _BiIter > &__x, const pair< _BiIter, _BiIter > &__y)
Uses operator< to find the result.
constexpr bool operator<= (const pair< _BiIter, _BiIter > &__x, const pair< _BiIter, _BiIter > &__y)
Uses operator< to find the result.
constexpr bool operator>= (const pair< _BiIter, _BiIter > &__x, const pair< _BiIter, _BiIter > &__y)
Uses operator< to find the result.
constexpr pair< typename __decay_and_strip< _BiIter >::__type, typename __decay_and_strip< _BiIter >::__type > make_pair (_BiIter &&__x, _BiIter &&__y)
A convenience wrapper for creating a pair from two objects.
int compare (const string_type &__s) const
Compares this sub_match to a string.
int compare (const value_type *__s) const
Compares this sub_match to a string.

Detailed Description

  template<typename _BiIter>
class std::sub_match< _BiIter >" A sequence of characters matched by a particular marked sub-expression.

An object of this class is essentially a pair of iterators marking a matched subexpression within a regular expression pattern match. Such objects can be converted to and compared with std::basic_string objects of a similar base character type as the pattern matched by the regular expression.

The iterators that make up the pair are the usual half-open interval referencing the actual original pattern matched.

Definition at line 868 of file regex.h.

Member Typedef Documentation

  typedef _BiIter std::pair< _BiIter , _BiIter >::first_type [inherited]

The type of the first member.

Definition at line 214 of file stl_pair.h.

  typedef _BiIter std::pair< _BiIter , _BiIter >::second_type [inherited]

The type of the second member.

Definition at line 215 of file stl_pair.h.

Member Function Documentation

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

Swap the first members and then the second members.

Definition at line 439 of file stl_pair.h.

Friends And Related Function Documentation

  constexpr pair< typename __decay_and_strip< _BiIter >::__type, typename __decay_and_strip< _BiIter >::__type > make_pair (_BiIter && __x, _BiIter && __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.

Definition at line 567 of file stl_pair.h.

  constexpr bool operator!= (const pair< _BiIter , _BiIter > & __x, const pair< _BiIter , _BiIter > & __y) [related]

Uses operator== to find the result.

Definition at line 496 of file stl_pair.h.

  constexpr bool operator< (const pair< _BiIter , _BiIter > & __x, const pair< _BiIter , _BiIter > & __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.

Definition at line 488 of file stl_pair.h.

  constexpr bool operator<= (const pair< _BiIter , _BiIter > & __x, const pair< _BiIter , _BiIter > & __y) [related]

Uses operator< to find the result.

Definition at line 507 of file stl_pair.h.

  constexpr bool operator== (const pair< _BiIter , _BiIter > & __x, const pair< _BiIter , _BiIter > & __y) [related]

Two pairs of the same type are equal iff their members are equal.

Definition at line 466 of file stl_pair.h.

  constexpr bool operator> (const pair< _BiIter , _BiIter > & __x, const pair< _BiIter , _BiIter > & __y) [related]

Uses operator< to find the result.

Definition at line 502 of file stl_pair.h.

  constexpr bool operator>= (const pair< _BiIter , _BiIter > & __x, const pair< _BiIter , _BiIter > & __y) [related]

Uses operator< to find the result.

Definition at line 514 of file stl_pair.h.

  constexpr enable_if< __and_< __is_swappable< _BiIter >, __is_swappable< _BiIter > >::value >::type swap (pair< _BiIter , _BiIter > & __x, pair< _BiIter , _BiIter > & __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

Definition at line 533 of file stl_pair.h.

Member Data Documentation

  _BiIter std::pair< _BiIter , _BiIter >::first [inherited]

The first member.

Definition at line 217 of file stl_pair.h.

  _BiIter std::pair< _BiIter , _BiIter >::second [inherited]

The second member.

Definition at line 218 of file stl_pair.h.

Author

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