libstdc++
|
Public Types | |
typedef __iter_traits::difference_type | difference_type |
typedef _BiIter | first_type |
typedef _BiIter | iterator |
typedef _BiIter | second_type |
typedef basic_string< value_type > | string_type |
typedef __iter_traits::value_type | value_type |
Public Member Functions | |
int | compare (const sub_match &__s) const |
difference_type | length () const noexcept |
operator string_type () const | |
string_type | str () const |
constexpr void | swap (pair &__p) noexcept(__and_< __is_nothrow_swappable< _BiIter >, __is_nothrow_swappable< _BiIter >>::value) |
int | compare (const string_type &__s) const |
int | compare (const value_type *__s) const |
Public Attributes | |
_BiIter | first |
bool | matched |
_BiIter | second |
Related Functions | |
(Note that these are not member functions.) | |
constexpr pair< typename __decay_and_strip< _BiIter >::__type, typename __decay_and_strip< _BiIter >::__type > | make_pair (_BiIter &&__x, _BiIter &&__y) |
template<typename _BiIter > | |
bool | operator== (const sub_match< _BiIter > &__lhs, const sub_match< _BiIter > &__rhs) |
template<typename _BiIter > | |
bool | operator!= (const sub_match< _BiIter > &__lhs, const sub_match< _BiIter > &__rhs) |
template<typename _BiIter > | |
bool | operator< (const sub_match< _BiIter > &__lhs, const sub_match< _BiIter > &__rhs) |
template<typename _BiIter > | |
bool | operator<= (const sub_match< _BiIter > &__lhs, const sub_match< _BiIter > &__rhs) |
template<typename _BiIter > | |
bool | operator>= (const sub_match< _BiIter > &__lhs, const sub_match< _BiIter > &__rhs) |
template<typename _BiIter > | |
bool | operator> (const sub_match< _BiIter > &__lhs, const sub_match< _BiIter > &__rhs) |
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) |
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) |
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) |
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) |
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) |
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) |
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) |
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) |
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) |
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) |
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) |
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) |
template<typename _Bi_iter > | |
bool | operator== (typename iterator_traits< _Bi_iter >::value_type const *__lhs, const sub_match< _Bi_iter > &__rhs) |
template<typename _Bi_iter > | |
bool | operator!= (typename iterator_traits< _Bi_iter >::value_type const *__lhs, const sub_match< _Bi_iter > &__rhs) |
template<typename _Bi_iter > | |
bool | operator< (typename iterator_traits< _Bi_iter >::value_type const *__lhs, const sub_match< _Bi_iter > &__rhs) |
template<typename _Bi_iter > | |
bool | operator> (typename iterator_traits< _Bi_iter >::value_type const *__lhs, const sub_match< _Bi_iter > &__rhs) |
template<typename _Bi_iter > | |
bool | operator>= (typename iterator_traits< _Bi_iter >::value_type const *__lhs, const sub_match< _Bi_iter > &__rhs) |
template<typename _Bi_iter > | |
bool | operator<= (typename iterator_traits< _Bi_iter >::value_type const *__lhs, const sub_match< _Bi_iter > &__rhs) |
template<typename _Bi_iter > | |
bool | operator== (const sub_match< _Bi_iter > &__lhs, typename iterator_traits< _Bi_iter >::value_type const *__rhs) |
template<typename _Bi_iter > | |
bool | operator!= (const sub_match< _Bi_iter > &__lhs, typename iterator_traits< _Bi_iter >::value_type const *__rhs) |
template<typename _Bi_iter > | |
bool | operator< (const sub_match< _Bi_iter > &__lhs, typename iterator_traits< _Bi_iter >::value_type const *__rhs) |
template<typename _Bi_iter > | |
bool | operator> (const sub_match< _Bi_iter > &__lhs, typename iterator_traits< _Bi_iter >::value_type const *__rhs) |
template<typename _Bi_iter > | |
bool | operator>= (const sub_match< _Bi_iter > &__lhs, typename iterator_traits< _Bi_iter >::value_type const *__rhs) |
template<typename _Bi_iter > | |
bool | operator<= (const sub_match< _Bi_iter > &__lhs, typename iterator_traits< _Bi_iter >::value_type const *__rhs) |
template<typename _Bi_iter > | |
bool | operator== (typename iterator_traits< _Bi_iter >::value_type const &__lhs, const sub_match< _Bi_iter > &__rhs) |
template<typename _Bi_iter > | |
bool | operator!= (typename iterator_traits< _Bi_iter >::value_type const &__lhs, const sub_match< _Bi_iter > &__rhs) |
template<typename _Bi_iter > | |
bool | operator< (typename iterator_traits< _Bi_iter >::value_type const &__lhs, const sub_match< _Bi_iter > &__rhs) |
template<typename _Bi_iter > | |
bool | operator> (typename iterator_traits< _Bi_iter >::value_type const &__lhs, const sub_match< _Bi_iter > &__rhs) |
template<typename _Bi_iter > | |
bool | operator>= (typename iterator_traits< _Bi_iter >::value_type const &__lhs, const sub_match< _Bi_iter > &__rhs) |
template<typename _Bi_iter > | |
bool | operator<= (typename iterator_traits< _Bi_iter >::value_type const &__lhs, const sub_match< _Bi_iter > &__rhs) |
template<typename _Bi_iter > | |
bool | operator== (const sub_match< _Bi_iter > &__lhs, typename iterator_traits< _Bi_iter >::value_type const &__rhs) |
template<typename _Bi_iter > | |
bool | operator!= (const sub_match< _Bi_iter > &__lhs, typename iterator_traits< _Bi_iter >::value_type const &__rhs) |
template<typename _Bi_iter > | |
bool | operator< (const sub_match< _Bi_iter > &__lhs, typename iterator_traits< _Bi_iter >::value_type const &__rhs) |
template<typename _Bi_iter > | |
bool | operator> (const sub_match< _Bi_iter > &__lhs, typename iterator_traits< _Bi_iter >::value_type const &__rhs) |
template<typename _Bi_iter > | |
bool | operator>= (const sub_match< _Bi_iter > &__lhs, typename iterator_traits< _Bi_iter >::value_type const &__rhs) |
template<typename _Bi_iter > | |
bool | operator<= (const sub_match< _Bi_iter > &__lhs, typename iterator_traits< _Bi_iter >::value_type const &__rhs) |
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) |
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) |
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) |
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) |
constexpr bool | operator>= (const pair< _BiIter, _BiIter > &__x, const pair< _BiIter, _BiIter > &__y) |
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.
|
inherited |
The type of the first
member.
Definition at line 214 of file stl_pair.h.
|
inherited |
The type of the second
member.
Definition at line 215 of file stl_pair.h.
|
inline |
Compares this sub_match
to a string.
__s | A string to compare to this sub_match . |
negative | This matched sequence will collate before __s . |
zero | This matched sequence is equivalent to __s . |
positive | This matched sequence will collate after __s . |
|
inline |
Compares this and another matched sequence.
__s | Another matched sequence to compare to this one. |
negative | This matched sequence will collate before __s . |
zero | This matched sequence is equivalent to __s . |
positive | This matched sequence will collate after __s . |
Definition at line 923 of file regex.h.
Referenced by std::sub_match< _BiIter >::operator!=(), std::sub_match< _BiIter >::operator<(), std::sub_match< _BiIter >::operator<=(), std::sub_match< _BiIter >::operator==(), std::sub_match< _BiIter >::operator>(), and std::sub_match< _BiIter >::operator>=().
|
inline |
Compares this sub_match
to a string.
__s | A string to compare to this sub_match . |
negative | This matched sequence will collate before __s . |
zero | This matched sequence is equivalent to __s . |
positive | This matched sequence will collate after __s . |
|
inlinenoexcept |
Gets the length of the matching sequence.
Definition at line 884 of file regex.h.
References std::distance(), std::pair< _BiIter, _BiIter >::first, and std::pair< _BiIter, _BiIter >::second.
|
inline |
Gets the matching sequence as a string.
This is the implicit conversion operator. It is identical to the str() member function except that it will want to pop up in unexpected places and cause a great deal of confusion and cursing from the unwary.
Definition at line 897 of file regex.h.
References std::sub_match< _BiIter >::str().
|
inline |
Gets the matching sequence as a string.
Definition at line 906 of file regex.h.
References std::pair< _BiIter, _BiIter >::first, and std::pair< _BiIter, _BiIter >::second.
Referenced by std::sub_match< _BiIter >::operator string_type().
|
inlineconstexprnoexceptinherited |
Swap the first members and then the second members.
Definition at line 439 of file stl_pair.h.
|
related |
A convenience wrapper for creating a pair from two objects.
__x | The first object. |
__y | The second object. |
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.
|
related |
Uses operator==
to find the result.
Definition at line 496 of file stl_pair.h.
|
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.
|
related |
Uses operator<
to find the result.
Definition at line 507 of file stl_pair.h.
|
related |
Two pairs of the same type are equal iff their members are equal.
Definition at line 466 of file stl_pair.h.
|
related |
Uses operator<
to find the result.
Definition at line 502 of file stl_pair.h.
|
related |
Uses operator<
to find the result.
Definition at line 514 of file stl_pair.h.
|
related |
Swap overload for pairs. Calls std::pair::swap().
Definition at line 533 of file stl_pair.h.
|
inherited |
The first member.
Definition at line 217 of file stl_pair.h.
|
inherited |
The second member.
Definition at line 218 of file stl_pair.h.