libstdc++
std::__detail::_Executor< _BiIter, _Alloc, _TraitsT > Class Template Reference

#include <regex_executor.h>

Public Types

typedef iterator_traits< _BiIter >::value_type _CharT
typedef _TraitsT::char_class_type _ClassT
typedef regex_constants::match_flag_type _FlagT
typedef _NFA< _TraitsT > _NFAT
typedef basic_regex< _CharT, _TraitsT > _RegexT
typedef ::vector< sub_match< _BiIter >, _Alloc > _ResultsVec

Public Member Functions

 _Executor (_BiIter __begin, _BiIter __end, _ResultsVec &__results, const _RegexT &__re, _FlagT __flags, bool __use_dfs)
bool _M_match ()
bool _M_search ()
bool _M_search_from_first ()

Public Attributes

_BiIter _M_begin
_ResultsVec _M_cur_results
_BiIter _M_current
const _BiIter _M_end
_FlagT _M_flags
::vector< _ExecutorFrame< _BiIter > > _M_frames
bool _M_has_sol
::vector< pair< _StateIdT, _ResultsVec > > _M_match_queue
const _NFAT & _M_nfa
const _RegexT_M_re
::vector< pair< _BiIter, int > > _M_rep_count
_ResultsVec_M_results
const _Search_mode _M_search_mode
_BiIter _M_sol_pos
_StateIdT _M_start
bool * _M_visited_states

Detailed Description

template<typename _BiIter, typename _Alloc, typename _TraitsT>
class std::__detail::_Executor< _BiIter, _Alloc, _TraitsT >

Takes a regex and an input string and does the matching.

The _Executor class has two modes: DFS mode and BFS mode, controlled by the function parameter __search_mode.

Definition at line 54 of file regex_executor.h.

Member Typedef Documentation

◆ _CharT

template<typename _BiIter, typename _Alloc, typename _TraitsT>
typedef iterator_traits<_BiIter>::value_type std::__detail::_Executor< _BiIter, _Alloc, _TraitsT >::_CharT

Definition at line 60 of file regex_executor.h.

◆ _ClassT

template<typename _BiIter, typename _Alloc, typename _TraitsT>
typedef _TraitsT::char_class_type std::__detail::_Executor< _BiIter, _Alloc, _TraitsT >::_ClassT

Definition at line 64 of file regex_executor.h.

◆ _FlagT

template<typename _BiIter, typename _Alloc, typename _TraitsT>
typedef regex_constants::match_flag_type std::__detail::_Executor< _BiIter, _Alloc, _TraitsT >::_FlagT

Definition at line 63 of file regex_executor.h.

◆ _NFAT

template<typename _BiIter, typename _Alloc, typename _TraitsT>
typedef _NFA<_TraitsT> std::__detail::_Executor< _BiIter, _Alloc, _TraitsT >::_NFAT

Definition at line 65 of file regex_executor.h.

◆ _RegexT

template<typename _BiIter, typename _Alloc, typename _TraitsT>
typedef basic_regex<_CharT, _TraitsT> std::__detail::_Executor< _BiIter, _Alloc, _TraitsT >::_RegexT

Definition at line 61 of file regex_executor.h.

◆ _ResultsVec

template<typename _BiIter, typename _Alloc, typename _TraitsT>
typedef ::vector<sub_match<_BiIter>, _Alloc> std::__detail::_Executor< _BiIter, _Alloc, _TraitsT >::_ResultsVec

Definition at line 62 of file regex_executor.h.

Constructor & Destructor Documentation

◆ _Executor()

template<typename _BiIter, typename _Alloc, typename _TraitsT>
std::__detail::_Executor< _BiIter, _Alloc, _TraitsT >::_Executor ( _BiIter __begin,
_BiIter __end,
_ResultsVec & __results,
const _RegexT & __re,
_FlagT __flags,
bool __use_dfs )
inline

Definition at line 68 of file regex_executor.h.

◆ ~_Executor()

template<typename _BiIter, typename _Alloc, typename _TraitsT>
std::__detail::_Executor< _BiIter, _Alloc, _TraitsT >::~_Executor ( )
inline

Definition at line 93 of file regex_executor.h.

Member Function Documentation

◆ _M_match()

template<typename _BiIter, typename _Alloc, typename _TraitsT>
bool std::__detail::_Executor< _BiIter, _Alloc, _TraitsT >::_M_match ( )
inline

Definition at line 98 of file regex_executor.h.

◆ _M_search()

template<typename _BiIter, typename _Alloc, typename _TraitsT>
bool std::__detail::_Executor< _BiIter, _Alloc, _TraitsT >::_M_search ( )

Definition at line 40 of file regex_executor.tcc.

◆ _M_search_from_first()

template<typename _BiIter, typename _Alloc, typename _TraitsT>
bool std::__detail::_Executor< _BiIter, _Alloc, _TraitsT >::_M_search_from_first ( )
inline

Definition at line 106 of file regex_executor.h.

Member Data Documentation

◆ _M_begin

template<typename _BiIter, typename _Alloc, typename _TraitsT>
_BiIter std::__detail::_Executor< _BiIter, _Alloc, _TraitsT >::_M_begin

Definition at line 268 of file regex_executor.h.

◆ _M_cur_results

template<typename _BiIter, typename _Alloc, typename _TraitsT>
_ResultsVec std::__detail::_Executor< _BiIter, _Alloc, _TraitsT >::_M_cur_results

Definition at line 266 of file regex_executor.h.

◆ _M_current

template<typename _BiIter, typename _Alloc, typename _TraitsT>
_BiIter std::__detail::_Executor< _BiIter, _Alloc, _TraitsT >::_M_current

Definition at line 267 of file regex_executor.h.

◆ _M_end

template<typename _BiIter, typename _Alloc, typename _TraitsT>
const _BiIter std::__detail::_Executor< _BiIter, _Alloc, _TraitsT >::_M_end

Definition at line 269 of file regex_executor.h.

◆ _M_flags

template<typename _BiIter, typename _Alloc, typename _TraitsT>
_FlagT std::__detail::_Executor< _BiIter, _Alloc, _TraitsT >::_M_flags

Definition at line 281 of file regex_executor.h.

◆ _M_frames

template<typename _BiIter, typename _Alloc, typename _TraitsT>
::vector<_ExecutorFrame<_BiIter> > std::__detail::_Executor< _BiIter, _Alloc, _TraitsT >::_M_frames

Definition at line 265 of file regex_executor.h.

◆ _M_has_sol

template<typename _BiIter, typename _Alloc, typename _TraitsT>
bool std::__detail::_Executor< _BiIter, _Alloc, _TraitsT >::_M_has_sol

Definition at line 284 of file regex_executor.h.

◆ _M_match_queue

template<typename _BiIter, typename _Alloc, typename _TraitsT>
::vector<pair<_StateIdT, _ResultsVec> > std::__detail::_Executor< _BiIter, _Alloc, _TraitsT >::_M_match_queue

Definition at line 278 of file regex_executor.h.

◆ _M_nfa

template<typename _BiIter, typename _Alloc, typename _TraitsT>
const _NFAT& std::__detail::_Executor< _BiIter, _Alloc, _TraitsT >::_M_nfa

Definition at line 271 of file regex_executor.h.

◆ _M_re

template<typename _BiIter, typename _Alloc, typename _TraitsT>
const _RegexT& std::__detail::_Executor< _BiIter, _Alloc, _TraitsT >::_M_re

Definition at line 270 of file regex_executor.h.

◆ _M_rep_count

template<typename _BiIter, typename _Alloc, typename _TraitsT>
::vector<pair<_BiIter, int> > std::__detail::_Executor< _BiIter, _Alloc, _TraitsT >::_M_rep_count

Definition at line 273 of file regex_executor.h.

◆ _M_results

template<typename _BiIter, typename _Alloc, typename _TraitsT>
_ResultsVec& std::__detail::_Executor< _BiIter, _Alloc, _TraitsT >::_M_results

Definition at line 272 of file regex_executor.h.

◆ _M_search_mode

template<typename _BiIter, typename _Alloc, typename _TraitsT>
const _Search_mode std::__detail::_Executor< _BiIter, _Alloc, _TraitsT >::_M_search_mode

Definition at line 282 of file regex_executor.h.

◆ _M_sol_pos

template<typename _BiIter, typename _Alloc, typename _TraitsT>
_BiIter std::__detail::_Executor< _BiIter, _Alloc, _TraitsT >::_M_sol_pos

Definition at line 276 of file regex_executor.h.

◆ _M_start

template<typename _BiIter, typename _Alloc, typename _TraitsT>
_StateIdT std::__detail::_Executor< _BiIter, _Alloc, _TraitsT >::_M_start

Definition at line 275 of file regex_executor.h.

◆ _M_visited_states

template<typename _BiIter, typename _Alloc, typename _TraitsT>
bool* std::__detail::_Executor< _BiIter, _Alloc, _TraitsT >::_M_visited_states

Definition at line 280 of file regex_executor.h.


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