libstdc++
Base and Implementation Classes
Collaboration diagram for Base and Implementation Classes:

Classes

struct  std::__detail::_BracketMatcher< _TraitsT, __icase, __collate >
 

Typedefs

template<typename _Iter , typename _TraitsT >
using std::__detail::__disable_if_contiguous_iter = __enable_if_t< !__is_contiguous_iter< _Iter >::value, std::shared_ptr< const _NFA< _TraitsT > > >
 
template<typename _Iter , typename _TraitsT >
using std::__detail::__enable_if_contiguous_iter = __enable_if_t< __is_contiguous_iter< _Iter >::value, std::shared_ptr< const _NFA< _TraitsT > > >
 
typedef _RegexTranslatorBase< _TraitsT, __icase, __collate > std::__detail::_RegexTranslator< _TraitsT, __icase, __collate >::_Base
 
typedef _RegexTranslatorBase< _TraitsT, __icase, false > std::__detail::_RegexTranslator< _TraitsT, __icase, false >::_Base
 
typedef _RegexTranslatorBase< std::regex_traits< _CharType >, true, true > std::__detail::_RegexTranslator< std::regex_traits< _CharType >, true, true >::_Base
 
typedef _TraitsT::char_type std::__detail::_NFA< _TraitsT >::_Char_type
 
typedef _TraitsT::char_class_type std::__detail::_BracketMatcher< _TraitsT, __icase, __collate >::_CharClassT
 
typedef _TraitsT::char_type std::__detail::_Compiler< _TraitsT >::_CharT
 
typedef iterator_traits< _BiIter >::value_type std::__detail::_Executor< _BiIter, _Alloc, _TraitsT, __dfs_mode >::_CharT
 
typedef _TraitsT::char_type std::__detail::_RegexTranslatorBase< _TraitsT, __icase, __collate >::_CharT
 
typedef _Base::_CharT std::__detail::_RegexTranslator< _TraitsT, __icase, false >::_CharT
 
typedef _Base::_CharT std::__detail::_RegexTranslator< std::regex_traits< _CharType >, true, true >::_CharT
 
typedef _TraitsT::char_type std::__detail::_RegexTranslator< _TraitsT, false, false >::_CharT
 
typedef _TransT::_CharT std::__detail::_AnyMatcher< _TraitsT, false, __icase, __collate >::_CharT
 
typedef _TransT::_CharT std::__detail::_AnyMatcher< _TraitsT, true, __icase, __collate >::_CharT
 
typedef _TransT::_CharT std::__detail::_CharMatcher< _TraitsT, __icase, __collate >::_CharT
 
typedef _TransT::_CharT std::__detail::_BracketMatcher< _TraitsT, __icase, __collate >::_CharT
 
typedef _TraitsT::char_class_type std::__detail::_Executor< _BiIter, _Alloc, _TraitsT, __dfs_mode >::_ClassT
 
typedef regex_constants::syntax_option_type std::__detail::_Compiler< _TraitsT >::_FlagT
 
typedef regex_constants::match_flag_type std::__detail::_Executor< _BiIter, _Alloc, _TraitsT, __dfs_mode >::_FlagT
 
typedef regex_constants::syntax_option_type std::__detail::_ScannerBase::_FlagT
 
typedef regex_constants::syntax_option_type std::__detail::_NFA_base::_FlagT
 
typedef regex_constants::syntax_option_type std::__detail::_Scanner< _CharT >::_FlagT
 
template<typename _CharT >
using std::__detail::_Matcher = std::function< bool(_CharT)>
 
typedef _Matcher< _Char_type > std::__detail::_State< _Char_type >::_MatcherT
 
typedef _Matcher< _Char_type > std::__detail::_NFA< _TraitsT >::_MatcherT
 
typedef _NFA< _TraitsT > std::__detail::_Executor< _BiIter, _Alloc, _TraitsT, __dfs_mode >::_NFAT
 
typedef basic_regex< _CharT, _TraitsT > std::__detail::_Executor< _BiIter, _Alloc, _TraitsT, __dfs_mode >::_RegexT
 
typedef _NFA< _TraitsT > std::__detail::_Compiler< _TraitsT >::_RegexT
 
typedef _NFA< _TraitsT > std::__detail::_StateSeq< _TraitsT >::_RegexT
 
typedef std::vector< sub_match< _BiIter >, _Alloc > std::__detail::_Executor< _BiIter, _Alloc, _TraitsT, __dfs_mode >::_ResultsVec
 
typedef size_t std::__detail::_NFA_base::_SizeT
 
typedef long std::__detail::_StateIdT
 
typedef _State< _Char_type > std::__detail::_NFA< _TraitsT >::_StateT
 
typedef _TraitsT::string_type std::__detail::_RegexTranslatorBase< _TraitsT, __icase, __collate >::_StringT
 
typedef std::basic_string< _CharT > std::__detail::_Scanner< _CharT >::_StringT
 
typedef _TraitsT::string_type std::__detail::_BracketMatcher< _TraitsT, __icase, __collate >::_StringT
 
typedef _StringT std::__detail::_RegexTranslatorBase< _TraitsT, __icase, __collate >::_StrTransT
 
typedef _CharT std::__detail::_RegexTranslator< _TraitsT, __icase, false >::_StrTransT
 
typedef _Base::_StrTransT std::__detail::_RegexTranslator< std::regex_traits< _CharType >, true, true >::_StrTransT
 
typedef _CharT std::__detail::_RegexTranslator< _TraitsT, false, false >::_StrTransT
 
typedef _TransT::_StrTransT std::__detail::_BracketMatcher< _TraitsT, __icase, __collate >::_StrTransT
 
typedef _RegexTranslator< _TraitsT, __icase, __collate > std::__detail::_AnyMatcher< _TraitsT, false, __icase, __collate >::_TransT
 
typedef _RegexTranslator< _TraitsT, __icase, __collate > std::__detail::_AnyMatcher< _TraitsT, true, __icase, __collate >::_TransT
 
typedef _RegexTranslator< _TraitsT, __icase, __collate > std::__detail::_CharMatcher< _TraitsT, __icase, __collate >::_TransT
 
typedef _RegexTranslator< _TraitsT, __icase, __collate > std::__detail::_BracketMatcher< _TraitsT, __icase, __collate >::_TransT
 

Enumerations

enum  std::__detail::_Opcode : int {
  _S_opcode_unknown, _S_opcode_alternative, _S_opcode_repeat, _S_opcode_backref,
  _S_opcode_line_begin_assertion, _S_opcode_line_end_assertion, _S_opcode_word_boundary, _S_opcode_subexpr_lookahead,
  _S_opcode_subexpr_begin, _S_opcode_subexpr_end, _S_opcode_dummy, _S_opcode_match,
  _S_opcode_accept
}
 
enum  _StateT { _S_state_normal, _S_state_in_brace, _S_state_in_bracket }
 
enum  std::__detail::_ScannerBase::_TokenT : unsigned {
  _S_token_anychar, _S_token_ord_char, _S_token_oct_num, _S_token_hex_num,
  _S_token_backref, _S_token_subexpr_begin, _S_token_subexpr_no_group_begin, _S_token_subexpr_lookahead_begin,
  _S_token_subexpr_end, _S_token_bracket_begin, _S_token_bracket_neg_begin, _S_token_bracket_end,
  _S_token_interval_begin, _S_token_interval_end, _S_token_quoted_class, _S_token_char_class_name,
  _S_token_collsymbol, _S_token_equiv_class_name, _S_token_opt, _S_token_or,
  _S_token_closure0, _S_token_closure1, _S_token_line_begin, _S_token_line_end,
  _S_token_word_bound, _S_token_comma, _S_token_dup_count, _S_token_eof,
  _S_token_bracket_dash, _S_token_unknown
}
 

Functions

 std::__detail::_AnyMatcher< _TraitsT, false, __icase, __collate >::_AnyMatcher (const _TraitsT &__traits)
 
 std::__detail::_AnyMatcher< _TraitsT, true, __icase, __collate >::_AnyMatcher (const _TraitsT &__traits)
 
 std::__detail::_BracketMatcher< _TraitsT, __icase, __collate >::_BracketMatcher (bool __is_non_matching, const _TraitsT &__traits)
 
 std::__detail::_CharMatcher< _TraitsT, __icase, __collate >::_CharMatcher (_CharT __ch, const _TraitsT &__traits)
 
 std::__detail::_Compiler< _TraitsT >::_Compiler (_IterT __b, _IterT __e, const typename _TraitsT::locale_type &__traits, _FlagT __flags)
 
 std::__detail::_Executor< _BiIter, _Alloc, _TraitsT, __dfs_mode >::_Executor (_BiIter __begin, _BiIter __end, _ResultsVec &__results, const _RegexT &__re, _FlagT __flags)
 
 std::__detail::_NFA< _TraitsT >::_NFA (_NFA &&)=default
 
 std::__detail::_NFA< _TraitsT >::_NFA (const _NFA &)=delete
 
 std::__detail::_NFA< _TraitsT >::_NFA (const typename _TraitsT::locale_type &__loc, _FlagT __flags)
 
 std::__detail::_NFA_base::_NFA_base (_FlagT __f)
 
 std::__detail::_NFA_base::_NFA_base (_NFA_base &&)=default
 
 std::__detail::_RegexTranslator< _TraitsT, false, false >::_RegexTranslator (const _TraitsT &)
 
 std::__detail::_RegexTranslatorBase< _TraitsT, __icase, __collate >::_RegexTranslatorBase (const _TraitsT &__traits)
 
 std::__detail::_Scanner< _CharT >::_Scanner (_IterT __begin, _IterT __end, _FlagT __flags, std::locale __loc)
 
 std::__detail::_ScannerBase::_ScannerBase (_FlagT __flags)
 
 std::__detail::_State< _Char_type >::_State (_Opcode __opcode)
 
 std::__detail::_State< _Char_type >::_State (_State &&__rhs)
 
 std::__detail::_State< _Char_type >::_State (const _State &__rhs)
 
 std::__detail::_State_base::_State_base (_Opcode __opcode)
 
 std::__detail::_Executor< _BiIter, _Alloc, _TraitsT, __dfs_mode >::_State_info< __bfs, _ResultsVec >::_State_info (_StateIdT __start, size_t __n)
 
 std::__detail::_Executor< _BiIter, _Alloc, _TraitsT, __dfs_mode >::_State_info< __dfs, _ResultsVec >::_State_info (_StateIdT __start, size_t)
 
 std::__detail::_StateSeq< _TraitsT >::_StateSeq (_RegexT &__nfa, _StateIdT __s)
 
 std::__detail::_StateSeq< _TraitsT >::_StateSeq (_RegexT &__nfa, _StateIdT __s, _StateIdT __end)
 
template<typename _TraitsT , typename _FwdIter >
__enable_if_contiguous_iter< _FwdIter, _TraitsT > std::__detail::__compile_nfa (_FwdIter __first, _FwdIter __last, const typename _TraitsT::locale_type &__loc, regex_constants::syntax_option_type __flags)
 
void std::__detail::_BracketMatcher< _TraitsT, __icase, __collate >::_M_add_char (_CharT __c)
 
void std::__detail::_BracketMatcher< _TraitsT, __icase, __collate >::_M_add_character_class (const _StringT &__s, bool __neg)
 
_StringT std::__detail::_BracketMatcher< _TraitsT, __icase, __collate >::_M_add_collate_element (const _StringT &__s)
 
void std::__detail::_BracketMatcher< _TraitsT, __icase, __collate >::_M_add_equivalence_class (const _StringT &__s)
 
void std::__detail::_Scanner< _CharT >::_M_advance ()
 
void std::__detail::_StateSeq< _TraitsT >::_M_append (_StateIdT __id)
 
void std::__detail::_StateSeq< _TraitsT >::_M_append (const _StateSeq &__s)
 
bool std::__detail::_AnyMatcher< _TraitsT, true, __icase, __collate >::_M_apply (_CharT __ch, false_type) const
 
bool std::__detail::_AnyMatcher< _TraitsT, true, __icase, __collate >::_M_apply (_CharT __ch, true_type) const
 
_StateSeq std::__detail::_StateSeq< _TraitsT >::_M_clone ()
 
void std::__detail::_NFA< _TraitsT >::_M_eliminate_dummy ()
 
const char * std::__detail::_ScannerBase::_M_find_escape (char __c)
 
_MatcherT & std::__detail::_State< _Char_type >::_M_get_matcher ()
 
const _MatcherT & std::__detail::_State< _Char_type >::_M_get_matcher () const
 
shared_ptr< const _RegexT > std::__detail::_Compiler< _TraitsT >::_M_get_nfa ()
 
_BiIter * std::__detail::_Executor< _BiIter, _Alloc, _TraitsT, __dfs_mode >::_State_info< __bfs, _ResultsVec >::_M_get_sol_pos ()
 
_BiIter * std::__detail::_Executor< _BiIter, _Alloc, _TraitsT, __dfs_mode >::_State_info< __dfs, _ResultsVec >::_M_get_sol_pos ()
 
_TokenT std::__detail::_Scanner< _CharT >::_M_get_token () const
 
const _StringTstd::__detail::_Scanner< _CharT >::_M_get_value () const
 
bool std::__detail::_State_base::_M_has_alt ()
 
bool std::__detail::_RegexTranslatorBase< _TraitsT, __icase, __collate >::_M_in_range_icase (_CharT __first, _CharT __last, _CharT __ch) const
 
_StateIdT std::__detail::_NFA< _TraitsT >::_M_insert_accept ()
 
_StateIdT std::__detail::_NFA< _TraitsT >::_M_insert_alt (_StateIdT __next, _StateIdT __alt, bool __neg)
 
_StateIdT std::__detail::_NFA< _TraitsT >::_M_insert_backref (size_t __index)
 
_StateIdT std::__detail::_NFA< _TraitsT >::_M_insert_dummy ()
 
_StateIdT std::__detail::_NFA< _TraitsT >::_M_insert_line_begin ()
 
_StateIdT std::__detail::_NFA< _TraitsT >::_M_insert_line_end ()
 
_StateIdT std::__detail::_NFA< _TraitsT >::_M_insert_lookahead (_StateIdT __alt, bool __neg)
 
_StateIdT std::__detail::_NFA< _TraitsT >::_M_insert_matcher (_MatcherT __m)
 
_StateIdT std::__detail::_NFA< _TraitsT >::_M_insert_repeat (_StateIdT __next, _StateIdT __alt, bool __neg)
 
_StateIdT std::__detail::_NFA< _TraitsT >::_M_insert_state (_StateT __s)
 
_StateIdT std::__detail::_NFA< _TraitsT >::_M_insert_subexpr_begin ()
 
_StateIdT std::__detail::_NFA< _TraitsT >::_M_insert_subexpr_end ()
 
_StateIdT std::__detail::_NFA< _TraitsT >::_M_insert_word_bound (bool __neg)
 
bool std::__detail::_ScannerBase::_M_is_awk () const
 
bool std::__detail::_ScannerBase::_M_is_basic () const
 
bool std::__detail::_ScannerBase::_M_is_ecma () const
 
bool std::__detail::_ScannerBase::_M_is_extended () const
 
bool std::__detail::_ScannerBase::_M_is_grep () const
 
void std::__detail::_BracketMatcher< _TraitsT, __icase, __collate >::_M_make_range (_CharT __l, _CharT __r)
 
bool std::__detail::_Executor< _BiIter, _Alloc, _TraitsT, __dfs_mode >::_M_match ()
 
bool std::__detail::_RegexTranslator< _TraitsT, __icase, false >::_M_match_range (_CharT __first, _CharT __last, _CharT __ch) const
 
bool std::__detail::_RegexTranslator< _TraitsT, false, false >::_M_match_range (_CharT __first, _CharT __last, _CharT __ch) const
 
bool std::__detail::_RegexTranslatorBase< _TraitsT, __icase, __collate >::_M_match_range (const _StrTransT &__first, const _StrTransT &__last, const _StrTransT &__s) const
 
bool std::__detail::_RegexTranslator< std::regex_traits< _CharType >, true, true >::_M_match_range (const _StrTransT &__first, const _StrTransT &__last, const _StrTransT &__str) const
 
bool std::__detail::_State< _Char_type >::_M_matches (_Char_type __char) const
 
_Opcode std::__detail::_State< _Char_type >::_M_opcode () const
 
_FlagT std::__detail::_NFA_base::_M_options () const
 
void std::__detail::_Executor< _BiIter, _Alloc, _TraitsT, __dfs_mode >::_State_info< __bfs, _ResultsVec >::_M_queue (_StateIdT __i, const _ResultsVec &__res)
 
void std::__detail::_Executor< _BiIter, _Alloc, _TraitsT, __dfs_mode >::_State_info< __dfs, _ResultsVec >::_M_queue (_StateIdT, const _ResultsVec &)
 
void std::__detail::_BracketMatcher< _TraitsT, __icase, __collate >::_M_ready ()
 
bool std::__detail::_Executor< _BiIter, _Alloc, _TraitsT, __dfs_mode >::_M_search ()
 
bool std::__detail::_Executor< _BiIter, _Alloc, _TraitsT, __dfs_mode >::_M_search_from_first ()
 
_StateIdT std::__detail::_NFA_base::_M_start () const
 
_SizeT std::__detail::_NFA_base::_M_sub_count () const
 
_StrTransT std::__detail::_RegexTranslatorBase< _TraitsT, __icase, __collate >::_M_transform (_CharT __ch) const
 
_StrTransT std::__detail::_RegexTranslator< _TraitsT, __icase, false >::_M_transform (_CharT __ch) const
 
_StrTransT std::__detail::_RegexTranslator< _TraitsT, false, false >::_M_transform (_CharT __ch) const
 
_CharT std::__detail::_RegexTranslatorBase< _TraitsT, __icase, __collate >::_M_translate (_CharT __ch) const
 
_CharT std::__detail::_RegexTranslator< _TraitsT, false, false >::_M_translate (_CharT __ch) const
 
bool std::__detail::_Executor< _BiIter, _Alloc, _TraitsT, __dfs_mode >::_State_info< __bfs, _ResultsVec >::_M_visited (_StateIdT __i)
 
bool std::__detail::_Executor< _BiIter, _Alloc, _TraitsT, __dfs_mode >::_State_info< __dfs, _ResultsVec >::_M_visited (_StateIdT) const
 
bool std::__detail::_AnyMatcher< _TraitsT, false, __icase, __collate >::operator() (_CharT __ch) const
 
bool std::__detail::_AnyMatcher< _TraitsT, true, __icase, __collate >::operator() (_CharT __ch) const
 
bool std::__detail::_CharMatcher< _TraitsT, __icase, __collate >::operator() (_CharT __ch) const
 
bool std::__detail::_BracketMatcher< _TraitsT, __icase, __collate >::operator() (_CharT __ch) const
 
_State & std::__detail::_State< _Char_type >::operator= (const _State &)=delete
 

Variables

union {
   struct {
      _StateIdT   _M_alt
 
      bool   _M_neg
 
   } 
 
   size_t   _M_backref_index
 
   __gnu_cxx::__aligned_membuf< _Matcher< char > >   _M_matcher_storage
 
   size_t   _M_subexpr
 
}; 
 
struct {
   _StateIdT   _M_alt
 
   bool   _M_neg
 
 
const typedef std::ctype< _CharT > std::__detail::_Scanner< _CharT >::_CtypeT
 
const typedef _CharT * std::__detail::_Compiler< _TraitsT >::_IterT
 
const typedef _CharT * std::__detail::_Scanner< _CharT >::_IterT
 
_StateIdT   std::__detail::_State_base::::_M_alt
 
bool std::__detail::_ScannerBase::_M_at_bracket_start
 
const std::pair< char, char > std::__detail::_ScannerBase::_M_awk_escape_tbl [11]
 
size_t   std::__detail::_State_base::_M_backref_index
 
const char * std::__detail::_ScannerBase::_M_basic_spec_char
 
_BiIter std::__detail::_Executor< _BiIter, _Alloc, _TraitsT, __dfs_mode >::_M_begin
 
_CharT std::__detail::_CharMatcher< _TraitsT, __icase, __collate >::_M_ch
 
_ResultsVec std::__detail::_Executor< _BiIter, _Alloc, _TraitsT, __dfs_mode >::_M_cur_results
 
_BiIter std::__detail::_Executor< _BiIter, _Alloc, _TraitsT, __dfs_mode >::_M_current
 
const std::pair< char, char > std::__detail::_ScannerBase::_M_ecma_escape_tbl [8]
 
const char * std::__detail::_ScannerBase::_M_ecma_spec_char
 
const _BiIter std::__detail::_Executor< _BiIter, _Alloc, _TraitsT, __dfs_mode >::_M_end
 
_StateIdT std::__detail::_StateSeq< _TraitsT >::_M_end
 
const std::pair< char, char > * std::__detail::_ScannerBase::_M_escape_tbl
 
const char * std::__detail::_ScannerBase::_M_extended_spec_char
 
_FlagT std::__detail::_ScannerBase::_M_flags
 
_FlagT std::__detail::_NFA_base::_M_flags
 
_FlagT std::__detail::_Executor< _BiIter, _Alloc, _TraitsT, __dfs_mode >::_M_flags
 
bool std::__detail::_NFA_base::_M_has_backref
 
bool std::__detail::_Executor< _BiIter, _Alloc, _TraitsT, __dfs_mode >::_M_has_sol
 
vector< pair< _StateIdT, _ResultsVec > > std::__detail::_Executor< _BiIter, _Alloc, _TraitsT, __dfs_mode >::_State_info< __bfs, _ResultsVec >::_M_match_queue
 
__gnu_cxx::__aligned_membuf< _Matcher< char > >   std::__detail::_State_base::_M_matcher_storage
 
bool   std::__detail::_State_base::::_M_neg
 
_StateIdT std::__detail::_State_base::_M_next
 
const _NFAT & std::__detail::_Executor< _BiIter, _Alloc, _TraitsT, __dfs_mode >::_M_nfa
 
_RegexT & std::__detail::_StateSeq< _TraitsT >::_M_nfa
 
_Opcode std::__detail::_State_base::_M_opcode
 
::vector< size_t > std::__detail::_NFA_base::_M_paren_stack
 
const _RegexTstd::__detail::_Executor< _BiIter, _Alloc, _TraitsT, __dfs_mode >::_M_re
 
vector< pair< _BiIter, int > > std::__detail::_Executor< _BiIter, _Alloc, _TraitsT, __dfs_mode >::_M_rep_count
 
_ResultsVecstd::__detail::_Executor< _BiIter, _Alloc, _TraitsT, __dfs_mode >::_M_results
 
_BiIter std::__detail::_Executor< _BiIter, _Alloc, _TraitsT, __dfs_mode >::_State_info< __dfs, _ResultsVec >::_M_sol_pos
 
const char * std::__detail::_ScannerBase::_M_spec_char
 
_StateIdT std::__detail::_Executor< _BiIter, _Alloc, _TraitsT, __dfs_mode >::_State_info< __bfs, _ResultsVec >::_M_start
 
_StateIdT std::__detail::_Executor< _BiIter, _Alloc, _TraitsT, __dfs_mode >::_State_info< __dfs, _ResultsVec >::_M_start
 
_StateIdT std::__detail::_StateSeq< _TraitsT >::_M_start
 
_StateIdT std::__detail::_NFA_base::_M_start_state
 
_StateT std::__detail::_ScannerBase::_M_state
 
_State_info< __search_mode, _ResultsVecstd::__detail::_Executor< _BiIter, _Alloc, _TraitsT, __dfs_mode >::_M_states
 
size_t   std::__detail::_State_base::_M_subexpr
 
_SizeT std::__detail::_NFA_base::_M_subexpr_count
 
_TokenT std::__detail::_ScannerBase::_M_token
 
const std::pair< char, _TokenTstd::__detail::_ScannerBase::_M_token_tbl [9]
 
const _TraitsT & std::__detail::_RegexTranslatorBase< _TraitsT, __icase, __collate >::_M_traits
 
_TraitsT std::__detail::_NFA< _TraitsT >::_M_traits
 
_TransT std::__detail::_AnyMatcher< _TraitsT, false, __icase, __collate >::_M_translator
 
_TransT std::__detail::_AnyMatcher< _TraitsT, true, __icase, __collate >::_M_translator
 
_TransT std::__detail::_CharMatcher< _TraitsT, __icase, __collate >::_M_translator
 
unique_ptr< bool[]> std::__detail::_Executor< _BiIter, _Alloc, _TraitsT, __dfs_mode >::_State_info< __bfs, _ResultsVec >::_M_visited_states
 
static const _StateIdT std::__detail::_S_invalid_state_id
 

Detailed Description

Enumeration Type Documentation

◆ _Opcode

Operation codes that define the type of transitions within the base NFA that represents the regular expression.

Definition at line 56 of file regex_automaton.h.

◆ _TokenT

Token types returned from the scanner.

Definition at line 46 of file regex_scanner.h.