24 #ifndef NDN_CXX_UTIL_REGEX_REGEX_TOP_MATCHER_HPP
25 #define NDN_CXX_UTIL_REGEX_REGEX_TOP_MATCHER_HPP
31 class RegexPatternListMatcher;
32 class RegexBackrefManager;
44 match(
const Name& name,
size_t offset,
size_t len)
override;
49 static shared_ptr<RegexTopMatcher>
57 getItemFromExpand(
const std::string&
expand,
size_t& offset);
60 convertSpecialChar(
const std::string& str);
63 const std::string m_expand;
64 shared_ptr<RegexPatternListMatcher> m_primaryMatcher;
65 shared_ptr<RegexPatternListMatcher> m_secondaryMatcher;
66 shared_ptr<RegexBackrefManager> m_primaryBackrefManager;
67 shared_ptr<RegexBackrefManager> m_secondaryBackrefManager;
68 bool m_isSecondaryUsed;
Represents an absolute name.
static shared_ptr< RegexTopMatcher > fromName(const Name &name, bool hasAnchor=false)
bool match(const Name &name)
virtual Name expand(const std::string &expand="")
RegexTopMatcher(const std::string &expr, const std::string &expand="")
#define NDN_CXX_PUBLIC_WITH_TESTS_ELSE_PRIVATE