STD::__DETAIL::_EXECUTOR(3cxx)
π NAME π
std::__detail::_Executor< _BiIter, _Alloc, _TraitsT, __dfs_mode > β okay so bestie, this is the little engine that takes a regex and an input string and does the matching. That's it, that's the whole job. β¨
π¦ SYNOPSIS π¦
She lives in <regex>, as all the good ones do:
#include <regex>
π Public Types π
typedef iterator_traits< _BiIter >::value_type _CharTβ the character type, pulled straight out of the iterator's traits. iykyk πtypedef _TraitsT::char_class_type _ClassTβ the char-class type, borrowed from_TraitsT.typedef regex_constants::match_flag_type _FlagTβ the flag type, akaregex_constants::match_flag_type, no cap.typedef _NFA< _TraitsT > _NFATβ the NFA type,_NFA< _TraitsT >, iconic.typedef basic_regex< _CharT, _TraitsT > _RegexTβ the regex type,basic_regex< _CharT, _TraitsT >.typedef ::vector< sub_match< _BiIter >, _Alloc > _ResultsVecβ the results container,::vector< sub_match< _BiIter >, _Alloc >. it's giving storage π
πΈ Public Member Functions πΈ
_Executor (_BiIter __begin, _BiIter __end, _ResultsVec &__results, const _RegexT &__re, _FlagT __flags)β the constructor, main character energy fr. Takes your begin, your end, your results by reference, the regex by const reference, and the flags. that's the whole squad π«Άbool _M_match ()β does the match thing, returnsbool.bool _M_search ()β does the search thing, returnsbool.bool _M_search_from_first ()β searches from the first, returnsbool. literally in the name β¨
β Public Attributes β
_BiIter _M_beginβ where it all starts._ResultsVec _M_cur_resultsβ the current results, live and in colour._BiIter _M_currentβ where we're at right now.const _BiIter _M_endβ the end, and it'sconst, so don't even try it π_FlagT _M_flagsβ the flags, held tight.bool _M_has_solβ does it have a start-of-line?boolsays maybe.const _NFAT & _M_nfaβ const reference to the NFA. obsessed.const _RegexT & _M_reβ const reference to the regex itself.::vector< pair< _BiIter, int > > _M_rep_countβ the repeat counters, a whole vector ofpair< _BiIter, int >. she's keeping count, periodt π₯_ResultsVec & _M_resultsβ reference to the results vec._State_info< __search_mode, _ResultsVec > _M_statesβ the state info,_State_info< __search_mode, _ResultsVec >. this is the one, okay? π
π Detailed Description π
Bestie. Behold the actual declaration, verbatim, because I would never mess with your template params:
template<typename _BiIter, typename _Alloc, typename _TraitsT, bool
__dfs_mode>
class std::__detail::_Executor< _BiIter, _Alloc, _TraitsT, __dfs_mode
>"Takes a regex and an input string and does the matching.
(the quote marks in there are literally how the source gives it, I'm not touching them π)
So β _Executor has two modes: DFS mode and BFS mode, and which one you get is controlled by the template parameter __dfs_mode. Two vibes, one class. slay π
π Author π
Generated automatically by Doxygen for libstdc++ from the source code. Not a human, just a robot doing its little thing π€π
And that's the whole page, bestie! π This little gem is from libstdc++ β the footer's just the truncated header again with no real date attached, so consider this your cute sign-off: go forth and match some regexes, mwah ππ¦
π¦ where this page comes from
- ubuntu noble: libstdc++-14-doc 14-20240412-0ubuntu1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms