33 namespace std _GLIBCXX_VISIBILITY(default)
37 _GLIBCXX_BEGIN_NAMESPACE_VERSION
51 template<
typename _BiIter,
typename _Alloc,
typename _TraitsT,
56 typedef typename iterator_traits<_BiIter>::value_type _CharT;
57 typedef basic_regex<_CharT, _TraitsT> _RegexT;
60 typedef typename _TraitsT::char_class_type _ClassT;
61 typedef _NFA<_TraitsT> _NFAT;
64 _Executor(_BiIter __begin,
66 _ResultsVec& __results,
72 _M_nfa(*__re._M_automaton),
73 _M_results(__results),
74 _M_match_queue(__dfs_mode ? nullptr
75 : new vector<pair<_StateIdT, _ResultsVec>>()),
76 _M_visited(__dfs_mode ? nullptr : new vector<bool>(_M_nfa.size())),
82 _M_start_state(_M_nfa._M_start())
89 _M_current = _M_begin;
90 return _M_main<true>();
95 _M_search_from_first()
97 _M_current = _M_begin;
98 return _M_main<false>();
105 template<
bool __match_mode>
107 _M_dfs(_StateIdT __start);
109 template<
bool __match_mode>
114 _M_is_word(_CharT __ch)
const
116 static const _CharT __s[2] = {
'w' };
117 return _M_re._M_traits.isctype
118 (__ch, _M_re._M_traits.lookup_classname(__s, __s+1));
124 return _M_current == _M_begin
132 return _M_current == _M_end
137 _M_word_boundary(_State<_TraitsT> __state)
const;
140 _M_lookahead(_State<_TraitsT> __state);
143 _ResultsVec _M_cur_results;
145 const _BiIter _M_begin;
146 const _BiIter _M_end;
147 const _RegexT& _M_re;
149 _ResultsVec& _M_results;
157 _StateIdT _M_start_state;
163 _GLIBCXX_END_NAMESPACE_VERSION
167 #include <bits/regex_executor.tcc>
match_flag_type
This is a bitmask type indicating regex matching rules.
ISO C++ entities toplevel namespace is std.
A standard container which offers fixed time access to individual elements in any order...
20.7.1.2 unique_ptr for single objects.