|
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 188 of file stl_pair.h.
|
inherited |
The type of the second member.
Definition at line 189 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 950 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 911 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 924 of file regex.h.
References std::sub_match< _BiIter >::str().
|
inline |
Gets the matching sequence as a string.
Definition at line 933 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 204 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 741 of file stl_pair.h.
|
related |
Uses operator== to find the result.
Definition at line 670 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 662 of file stl_pair.h.
|
related |
Uses operator< to find the result.
Definition at line 681 of file stl_pair.h.
|
related |
Two pairs of the same type are equal iff their members are equal.
Definition at line 640 of file stl_pair.h.
|
related |
Uses operator< to find the result.
Definition at line 676 of file stl_pair.h.
|
related |
Uses operator< to find the result.
Definition at line 688 of file stl_pair.h.
|
related |
Swap overload for pairs. Calls std::pair::swap().
Definition at line 707 of file stl_pair.h.
|
inherited |
The first member.
Definition at line 191 of file stl_pair.h.
|
inherited |
The second member.
Definition at line 192 of file stl_pair.h.