5 #ifndef HOBBES_LANG_PAT_REGEX_HPP_INCLUDED 6 #define HOBBES_LANG_PAT_REGEX_HPP_INCLUDED 38 virtual void show(std::ostream&)
const = 0;
47 typedef std::map<size_t, RegexIdxs>
RStates;
60 typedef std::pair<std::string, ExprPtr>
CVarDef;
std::vector< CVarDef > CVarDefs
Definition: regex.H:61
std::string fname
Definition: regex.H:52
std::shared_ptr< Regex > RegexPtr
Definition: regex.H:40
ExprPtr captureBuffer
Definition: regex.H:53
std::map< size_t, RegexIdxs > RStates
Definition: regex.H:47
size_t RegexIdx
Definition: regex.H:45
str::seq bindingNames(const RegexPtr &)
Definition: regex.C:363
std::vector< RegexPtr > Regexes
Definition: regex.H:41
std::set< RegexIdx > RegexIdxs
Definition: regex.H:46
std::shared_ptr< Expr > ExprPtr
Definition: expr.H:58
Definition: lannotation.H:22
std::vector< std::string > seq
Definition: str.H:19
uint32_t state
Definition: regex.C:372
CaptureVarsAt captureVarsAt
Definition: regex.H:54
virtual void show(std::ostream &) const =0
std::pair< std::string, ExprPtr > CVarDef
Definition: regex.H:60
CVarDefs unpackCaptureVars(const std::string &strVar, const std::string &bufferVar, const CRegexes &, size_t state, const LexicalAnnotation &)
Definition: regex.C:1212
CRegexes makeRegexFn(cc *, const Regexes &, const LexicalAnnotation &)
Definition: regex.C:1172
std::map< size_t, str::seq > CaptureVarsAt
Definition: regex.H:49
RegexPtr parseRegex(const std::string &)
Definition: regex.C:330
RStates rstates
Definition: regex.H:55