33 namespace std _GLIBCXX_VISIBILITY(default)
35 _GLIBCXX_BEGIN_NAMESPACE_VERSION
36 template<
typename,
typename>
42 template<
typename,
typename>
44 _GLIBCXX_END_NAMESPACE_VERSION
48 _GLIBCXX_BEGIN_NAMESPACE_VERSION
55 template<
typename _BiIter,
typename _Alloc,
typename _TraitsT,
60 typedef typename iterator_traits<_BiIter>::value_type _CharT;
61 typedef basic_regex<_CharT, _TraitsT> _RegexT;
64 typedef typename _TraitsT::char_class_type _ClassT;
65 typedef _NFA<_TraitsT> _NFAT;
68 _Executor(_BiIter __begin,
70 _ResultsVec& __results,
76 _M_nfa(*__re._M_automaton),
77 _M_results(__results),
78 _M_match_queue(__dfs_mode ? nullptr
79 : new queue<pair<_StateIdT, _ResultsVec>>()),
80 _M_visited(__dfs_mode ? nullptr : new vector<bool>(_M_nfa.
size())),
86 _M_start_state(_M_nfa._M_start())
93 _M_current = _M_begin;
94 return _M_main<true>();
99 _M_search_from_first()
101 _M_current = _M_begin;
102 return _M_main<false>();
109 template<
bool __match_mode>
111 _M_dfs(_StateIdT __start);
113 template<
bool __match_mode>
118 _M_is_word(_CharT __ch)
const
120 static const _CharT __s[2] = {
'w' };
121 return _M_re._M_traits.isctype
122 (__ch, _M_re._M_traits.lookup_classname(__s, __s+1));
128 return _M_current == _M_begin
136 return _M_current == _M_end
141 _M_word_boundary(_State<_TraitsT> __state)
const;
144 _M_lookahead(_State<_TraitsT> __state);
147 _ResultsVec _M_cur_results;
149 const _BiIter _M_begin;
150 const _BiIter _M_end;
151 const _RegexT& _M_re;
153 _ResultsVec& _M_results;
161 _StateIdT _M_start_state;
167 _GLIBCXX_END_NAMESPACE_VERSION
20.7.1.2 unique_ptr for single objects.
match_flag_type
This is a bitmask type indicating regex matching rules.
constexpr size_t size() const noexcept
Returns the total number of bits.
A standard container which offers fixed time access to individual elements in any order...