NS-3 based Named Data Networking (NDN) simulator
ndnSIM 2.0: NDN, CCN, CCNx, content centric networks
API Documentation
ndn::RegexComponentMatcher Class Reference

#include <regex-component-matcher.hpp>

Inheritance diagram for ndn::RegexComponentMatcher:
Collaboration diagram for ndn::RegexComponentMatcher:

Public Member Functions

 RegexComponentMatcher (const std::string &expr, shared_ptr< RegexBackrefManager > backrefManager, bool isExactMatch=true)
 Create a RegexComponent matcher from expr. More...
 
virtual ~RegexComponentMatcher ()
 
virtual bool match (const Name &name, size_t offset, size_t len=1)
 
- Public Member Functions inherited from ndn::RegexMatcher
 RegexMatcher (const std::string &expr, const RegexExprType &type, shared_ptr< RegexBackrefManager > backrefManager=shared_ptr< RegexBackrefManager >())
 
virtual ~RegexMatcher ()
 
const std::vector< name::Component > & getMatchResult () const
 get the matched name components More...
 
const std::string & getExpr () const
 

Protected Member Functions

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

Additional Inherited Members

- Public Types inherited from ndn::RegexMatcher
enum  RegexExprType {
  EXPR_TOP, EXPR_PATTERN_LIST, EXPR_REPEAT_PATTERN, EXPR_BACKREF,
  EXPR_COMPONENT_SET, EXPR_COMPONENT, EXPR_PSEUDO
}
 
- Protected Attributes inherited from ndn::RegexMatcher
const std::string m_expr
 
const RegexExprType m_type
 
shared_ptr< RegexBackrefManagerm_backrefManager
 
std::vector< shared_ptr< RegexMatcher > > m_matchers
 
std::vector< name::Componentm_matchResult
 

Detailed Description

Definition at line 34 of file regex-component-matcher.hpp.

Constructor & Destructor Documentation

ndn::RegexComponentMatcher::RegexComponentMatcher ( const std::string &  expr,
shared_ptr< RegexBackrefManager backrefManager,
bool  isExactMatch = true 
)
inline

Create a RegexComponent matcher from expr.

Parameters
exprThe standard regular expression to match a component
backrefManagerThe back reference manager
isExactMatchThe flag to provide exact match

Definition at line 72 of file regex-component-matcher.hpp.

References compile().

virtual ndn::RegexComponentMatcher::~RegexComponentMatcher ( )
inlinevirtual

Definition at line 48 of file regex-component-matcher.hpp.

References compile(), and match().

Member Function Documentation

bool ndn::RegexComponentMatcher::match ( const Name name,
size_t  offset,
size_t  len = 1 
)
inlinevirtual
void ndn::RegexComponentMatcher::compile ( )
inlineprotectedvirtual

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

Returns
true if compiling succeeds

Implements ndn::RegexMatcher.

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

References ndn::BOOST_REGEXP_MARK_COUNT_CORRECTION, ndn::RegexMatcher::m_backrefManager, and ndn::RegexMatcher::m_expr.

Referenced by RegexComponentMatcher(), and ~RegexComponentMatcher().


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