ndn::RegexPseudoMatcher Class Reference

#include <regex-pseudo-matcher.hpp>

+ Inheritance diagram for ndn::RegexPseudoMatcher:
+ Collaboration diagram for ndn::RegexPseudoMatcher:

Public Types

enum  RegexExprType {
  EXPR_TOP,
  EXPR_PATTERN_LIST,
  EXPR_REPEAT_PATTERN,
  EXPR_BACKREF,
  EXPR_COMPONENT_SET,
  EXPR_COMPONENT,
  EXPR_PSEUDO
}
 

Public Member Functions

 RegexPseudoMatcher ()
 
const std::string & getExpr () const
 
const std::vector< name::Component > & getMatchResult () const
 get the matched name components More...
 
virtual bool match (const Name &name, size_t offset, size_t len)
 
void resetMatchResult ()
 
void setMatchResult (const std::string &str)
 

Protected Member Functions

void compile () override
 Compile the regular expression to generate the more matchers when necessary. More...
 

Protected Attributes

shared_ptr< RegexBackrefManagerm_backrefManager
 
const std::string m_expr
 
std::vector< shared_ptr< RegexMatcher > > m_matchers
 
std::vector< name::Componentm_matchResult
 
const RegexExprType m_type
 

Detailed Description

Definition at line 31 of file regex-pseudo-matcher.hpp.

Member Enumeration Documentation

Enumerator
EXPR_TOP 
EXPR_PATTERN_LIST 
EXPR_REPEAT_PATTERN 
EXPR_BACKREF 
EXPR_COMPONENT_SET 
EXPR_COMPONENT 
EXPR_PSEUDO 

Definition at line 45 of file regex-matcher.hpp.

Constructor & Destructor Documentation

ndn::RegexPseudoMatcher::RegexPseudoMatcher ( )

Definition at line 28 of file regex-pseudo-matcher.cpp.

Member Function Documentation

void ndn::RegexPseudoMatcher::compile ( )
overrideprotectedvirtual

Compile the regular expression to generate the more matchers when necessary.

Implements ndn::RegexMatcher.

Definition at line 46 of file regex-pseudo-matcher.cpp.

const std::string& ndn::RegexMatcher::getExpr ( ) const
inlineinherited

Definition at line 75 of file regex-matcher.hpp.

const std::vector<name::Component>& ndn::RegexMatcher::getMatchResult ( ) const
inlineinherited

get the matched name components

Returns
the matched name components

Definition at line 69 of file regex-matcher.hpp.

bool ndn::RegexMatcher::match ( const Name name,
size_t  offset,
size_t  len 
)
virtualinherited
void ndn::RegexPseudoMatcher::resetMatchResult ( )

Definition at line 40 of file regex-pseudo-matcher.cpp.

void ndn::RegexPseudoMatcher::setMatchResult ( const std::string &  str)

Definition at line 34 of file regex-pseudo-matcher.cpp.

Member Data Documentation

shared_ptr<RegexBackrefManager> ndn::RegexMatcher::m_backrefManager
protectedinherited

Definition at line 94 of file regex-matcher.hpp.

const std::string ndn::RegexMatcher::m_expr
protectedinherited

Definition at line 92 of file regex-matcher.hpp.

std::vector<shared_ptr<RegexMatcher> > ndn::RegexMatcher::m_matchers
protectedinherited

Definition at line 95 of file regex-matcher.hpp.

std::vector<name::Component> ndn::RegexMatcher::m_matchResult
protectedinherited

Definition at line 96 of file regex-matcher.hpp.

const RegexExprType ndn::RegexMatcher::m_type
protectedinherited

Definition at line 93 of file regex-matcher.hpp.