Source-highlight Library
Public Member Functions | Private Attributes | List of all members
srchilite::RegexHighlightRule Class Reference

An implementation of HighlightRule using Boost regex library. More...

#include <regexhighlightrule.h>

Inheritance diagram for srchilite::RegexHighlightRule:
Inheritance graph
[legend]
Collaboration diagram for srchilite::RegexHighlightRule:
Collaboration graph
[legend]

Public Member Functions

  RegexHighlightRule (const std::string &s)
 
  RegexHighlightRule (const std::string &name, const std::string &s)
 
virtual bool  tryToMatch (std::string::const_iterator start, std::string::const_iterator end, HighlightToken &token, const MatchingParameters &params)
  Try to match this rule against the passed string. More...
 
virtual const std::string  toString () const
 
virtual void  replaceReferences (const ReplacementList &rep)
  Performs replacement of references in this rule. More...
 
virtual HighlightRuleclone ()
 
void  setRegExp (const std::string &s)
 
virtual bool  tryToMatch (const std::string &s, HighlightToken &token, const MatchingParameters &params)
  Try to match this rule against the passed string (implemented by calling the pure virtual function tryToMatch below). More...
 
const HighlightStatePtr  getNextState () const
 
void  setNextState (HighlightStatePtr _nextState)
 
void  addElem (const std::string &name)
  Adds an element name to the list of this rule. More...
 
const ElemListgetElemList () const
 
int  getExitLevel () const
 
void  setExitLevel (int l)
 
bool  isNested () const
 
void  setNested (bool n)
 
bool  getNeedsReferenceReplacement () const
 
void  setNeedsReferenceReplacement (bool b=true)
 
bool  getHasSubexpressions () const
 
void  setHasSubexpressions (bool b=true)
 
std::string  getAdditionalInfo () const
 
void  setAdditionalInfo (const std::string &info)
 

Private Attributes

boost::regex  regExp
  the regular expression for the rule
 

Detailed Description

An implementation of HighlightRule using Boost regex library.

Constructor & Destructor Documentation

srchilite::RegexHighlightRule::RegexHighlightRule ( const std::string &  s )
Parameters
s the string representing the regular expression
srchilite::RegexHighlightRule::RegexHighlightRule ( const std::string &  name,
const std::string &  s 
)
Parameters
name the element name represented by this rule
s the string representing the regular expression

Member Function Documentation

void srchilite::HighlightRule::addElem ( const std::string &  name )
inherited

Adds an element name to the list of this rule.

Parameters
name the name to add
HighlightRule * srchilite::RegexHighlightRule::clone ( )
virtual
Returns
a copy of this rule.

Implements srchilite::HighlightRule.

void srchilite::RegexHighlightRule::replaceReferences ( const ReplacementListrep )
virtual

Performs replacement of references in this rule.

Parameters
the list of values for the replacement; the first element is the value for replacing the first dynamic back reference, and so on. (it should contain 9 possibly empty elements)

Implements srchilite::HighlightRule.

bool srchilite::RegexHighlightRule::tryToMatch ( std::string::const_iterator  start,
std::string::const_iterator  end,
HighlightTokentoken,
const MatchingParametersparams 
)
virtual

Try to match this rule against the passed string.

Parameters
start the beginning of the string for trying to match the rule
end the beginning of the string for trying to match the rule
token where results will be inserted, if the rule matched
params additional arguments for the matching
Returns
the result of this matching

Implements srchilite::HighlightRule.

bool srchilite::HighlightRule::tryToMatch ( const std::string &  s,
HighlightTokentoken,
const MatchingParametersparams 
)
virtualinherited

Try to match this rule against the passed string (implemented by calling the pure virtual function tryToMatch below).

The passed token is assumed to be reset (i.e., no existing matching information is stored in it when passing it to this method).

Parameters
s the string for trying to match the rule
token where results will be inserted, if the rule matched
params additional arguments for the matching
Returns
the result of this matching

The documentation for this class was generated from the following files:
  • /home/bettini/work/source-highlight/src-highlite/lib/srchilite/regexhighlightrule.h
  • /home/bettini/work/source-highlight/src-highlite/lib/srchilite/regexhighlightrule.cpp

AltStyle によって変換されたページ (->オリジナル) /