CppCMS
Public Types | Public Member Functions | Public Attributes | List of all members
booster::sub_match< Iterator > Class Template Reference

This class represents a single captures subexpression. More...

#include <booster/booster/regex_match.h>

Inheritance diagram for booster::sub_match< Iterator >:

Public Types

typedef Iterator iterator
 
typedef std::iterator_traits< Iterator >::value_type value_type
 
typedef std::iterator_traits< Iterator >::difference_type difference_type
 
typedef std::basic_string< value_type > string_type
 
typedef std::pair< Iterator, Iterator > pair_type
 

Public Member Functions

difference_type length () const
 
 operator string_type () const
 
string_type str () const
 
int compare (sub_match const &other) const
 
int compare (string_type const &other) const
 
int compare (value_type const *s) const
 
 sub_match ()
 

Public Attributes

bool matched
 

Detailed Description

template<typename Iterator>
class booster::sub_match< Iterator >

This class represents a single captures subexpression.

The subexpressions captured text is found between [first,second).

Member Typedef Documentation

template<typename Iterator>
typedef std::basic_string<value_type> booster::sub_match< Iterator >::string_type

The string type that this expression can be converted into, generally std::string.

Constructor & Destructor Documentation

template<typename Iterator>
booster::sub_match< Iterator >::sub_match ( )
inline

Default not-matched subexpressions.

Member Function Documentation

template<typename Iterator>
int booster::sub_match< Iterator >::compare ( sub_match< Iterator > const &  other) const
inline

Compare two subexpressions. Same as str().compare(other.str())

References booster::sub_match< Iterator >::str().

Referenced by booster::regex_search().

template<typename Iterator>
int booster::sub_match< Iterator >::compare ( string_type const &  other) const
inline

Compare two subexpressions. Same as str().compare(other)

References booster::sub_match< Iterator >::str().

template<typename Iterator>
int booster::sub_match< Iterator >::compare ( value_type const *  s) const
inline

Compare two subexpressions. Same as str().compare(s)

References booster::sub_match< Iterator >::str().

template<typename Iterator>
difference_type booster::sub_match< Iterator >::length ( ) const
inline

The length of captured subexpression, 0 if matched==false.

template<typename Iterator>
booster::sub_match< Iterator >::operator string_type ( ) const
inline

Explicit conversion operator to string

References booster::sub_match< Iterator >::str().

template<typename Iterator>
string_type booster::sub_match< Iterator >::str ( ) const
inline

Convert the subexpression to string. If matched is false, return empty string.

Referenced by booster::sub_match< Iterator >::compare(), booster::sub_match< Iterator >::operator string_type(), and booster::regex_search().

Member Data Documentation

template<typename Iterator>
bool booster::sub_match< Iterator >::matched

This flag is true if the expression was matched, false otherwise. if matched is false then there is no guarantees that first or second are valid iterators.

Referenced by booster::match_results< Iterator >::operator[](), booster::match_results< Iterator >::prefix(), and booster::match_results< Iterator >::suffix().


The documentation for this class was generated from the following file: