Public Member Functions | |
Selection (const std::string &seq) | |
virtual bool | match (const std::string &test_string) const |
virtual std::string | description () const |
virtual PatternBase * | clone () const |
unsigned int | memory_consumption () const |
Private Attributes | |
std::string | sequence |
Test for the string being one of a sequence of values given like a regular expression. For example, if the string given to the constructor is "red|blue|black"
, then the match function returns true
exactly if the string is either "red" or "blue" or "black". Spaces around the pipe signs do not matter and are eliminated.
Patterns::Selection::Selection | ( | const std::string & | seq | ) |
Constructor. Take the given parameter as the specification of valid strings.
virtual bool Patterns::Selection::match | ( | const std::string & | test_string | ) | const [virtual] |
Return true
if the string is an element of the description list passed to the constructor.
Implements Patterns::PatternBase.
virtual std::string Patterns::Selection::description | ( | ) | const [virtual] |
Return a description of the pattern that valid strings are expected to match. Here, this is the list of valid strings passed to the constructor.
Implements Patterns::PatternBase.
virtual PatternBase* Patterns::Selection::clone | ( | ) | const [virtual] |
Return a copy of the present object, which is newly allocated on the heap. Ownership of that object is transferred to the caller of this function.
Implements Patterns::PatternBase.
Reimplemented in Patterns::Bool.
Determine an estimate for the memory consumption (in bytes) of this object.
Reimplemented from Patterns::PatternBase.
std::string Patterns::Selection::sequence [private] |
List of valid strings as passed to the constructor. We don't make this string constant, as we process it somewhat in the constructor.