Source-highlight Library
srchilite::HighlightRuleFactory Class Referenceabstract

Abstract factory for highlighting rules. More...

#include <highlightrulefactory.h>

Inheritance diagram for srchilite::HighlightRuleFactory:

Public Member Functions

virtual HighlightRulecreateSimpleRule (const std::string &name, const std::string &s)=0
 Creates a generic highlighting rule. More...
 
virtual HighlightRulecreateWordListRule (const std::string &name, const WordList &list, bool caseSensitve=true)=0
 Creates a rule for detecting a list of specific words, i.e., isolated from other parts by a space or a delimiter (e.g., if "class" is considered as a word, then it will not match the substring "class" in "myclass") More...
 
virtual HighlightRulecreateListRule (const std::string &name, const WordList &list, bool caseSensitve=true)=0
 Creates a rule for detecting a list of specific expressions. More...
 
virtual HighlightRulecreateLineRule (const std::string &name, const std::string &start, const std::string &end, const std::string &escape, bool nested)=0
 Creates a rule for matching a delimited string (spanning a single line) More...
 
virtual HighlightRulecreateMultiLineRule (const std::string &name, const std::string &start, const std::string &end, const std::string &escape, bool nested)=0
 Creates a rule for matching a delimited string (possibly spanning more than one line) More...
 
virtual HighlightRulecreateCompoundRule (const ElemNameList &nameList, const std::string &rep)=0
 Creates a rule for matching many element names, each represented by a subexpression (the number of subexpression must be equal to the size of the nameList) More...
 

Detailed Description

Abstract factory for highlighting rules.

Member Function Documentation

virtual HighlightRule* srchilite::HighlightRuleFactory::createCompoundRule ( const ElemNameList &  nameList,
const std::string &  rep 
)
pure virtual

Creates a rule for matching many element names, each represented by a subexpression (the number of subexpression must be equal to the size of the nameList)

Parameters
nameListthe list of element names represented by the rule
repthe string representation of the rule
Returns
the generated rule

Implemented in srchilite::RegexRuleFactory.

virtual HighlightRule* srchilite::HighlightRuleFactory::createLineRule ( const std::string &  name,
const std::string &  start,
const std::string &  end,
const std::string &  escape,
bool  nested 
)
pure virtual

Creates a rule for matching a delimited string (spanning a single line)

Parameters
namethe element name represented by the rule
startthe string determining the start of the sequence
endthe string determining the end of the sequence
escapethe string the escape sequence (typically a char, e.g., )
nestedwhether the delimiters can be nested
Returns
the generated rule

Implemented in srchilite::RegexRuleFactory.

virtual HighlightRule* srchilite::HighlightRuleFactory::createListRule ( const std::string &  name,
const WordList &  list,
bool  caseSensitve = true 
)
pure virtual

Creates a rule for detecting a list of specific expressions.

Parameters
namethe element name represented by the rule
listthe list of words to detect
caseSensitiveif the characters in the expression must be interpreted case sensitive
Returns
the generated rule

Implemented in srchilite::RegexRuleFactory.

virtual HighlightRule* srchilite::HighlightRuleFactory::createMultiLineRule ( const std::string &  name,
const std::string &  start,
const std::string &  end,
const std::string &  escape,
bool  nested 
)
pure virtual

Creates a rule for matching a delimited string (possibly spanning more than one line)

Parameters
namethe element name represented by the rule
startthe string determining the start of the sequence
endthe string determining the end of the sequence
escapethe string the escape sequence (typically a char, e.g., )
nestedwhether the delimiters can be nested
Returns
the generated rule

Implemented in srchilite::RegexRuleFactory.

virtual HighlightRule* srchilite::HighlightRuleFactory::createSimpleRule ( const std::string &  name,
const std::string &  s 
)
pure virtual

Creates a generic highlighting rule.

Parameters
namethe element name represented by the rule
thestring representation
Returns
the generated rule

Implemented in srchilite::RegexRuleFactory.

virtual HighlightRule* srchilite::HighlightRuleFactory::createWordListRule ( const std::string &  name,
const WordList &  list,
bool  caseSensitve = true 
)
pure virtual

Creates a rule for detecting a list of specific words, i.e., isolated from other parts by a space or a delimiter (e.g., if "class" is considered as a word, then it will not match the substring "class" in "myclass")

Parameters
namethe element name represented by the rule
listthe list of words to detect
caseSensitiveif the characters in the expression must be interpreted case sensitive
Returns
the generated rule

Implemented in srchilite::RegexRuleFactory.


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