Classes | |
class | ExcCommasNotAllowed |
Public Member Functions | |
MultipleSelection (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 |
This class is much like the Selection class, but it allows the input to be a comma-separated list of values which each have to be given in the constructor argument. Alternatively, it could be viewed as a specialization of the List class. For example, if the string to the constructor was "ucd|gmv|eps"
, then the following would be legal input: eps
, gmv
. You may give an arbitrarily long list of values, where there may be as many spaces around commas as you like. However, commas are not allowed inside the values given to the constructor.
Patterns::MultipleSelection::MultipleSelection | ( | const std::string & | seq | ) |
Constructor. Take the given parameter as the specification of valid strings.
virtual bool Patterns::MultipleSelection::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::MultipleSelection::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::MultipleSelection::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.
Determine an estimate for the memory consumption (in bytes) of this object.
Reimplemented from Patterns::PatternBase.
std::string Patterns::MultipleSelection::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.