libcamgm
Public Member Functions | Protected Member Functions | Private Member Functions | Friends | List of all members
ca_mgm::ValueCheckBase Class Referenceabstract

Base class to check a value. More...

#include <ValueCheck.hpp>

Inheritance diagram for ca_mgm::ValueCheckBase:
ca_mgm::ReferenceCounted ca_mgm::ValueCheck ca_mgm::ValueIntCheck ca_mgm::ValuePerlRECheck ca_mgm::ValuePosixRECheck

Public Member Functions

virtual ~ValueCheckBase ()
 
virtual bool isValid (const std::string &value) const =0
 
virtual std::string explain (const std::string &value) const =0
 
- Public Member Functions inherited from ca_mgm::ReferenceCounted
 ReferenceCounted ()
 
 ReferenceCounted (const ReferenceCounted &rhs)
 
virtual ~ReferenceCounted ()
 
ReferenceCountedoperator= (const ReferenceCounted &)
 
unsigned refCount () const
 
void ref () const
 
void unref () const
 

Protected Member Functions

 ValueCheckBase ()
 
- Protected Member Functions inherited from ca_mgm::ReferenceCounted
virtual std::ostream & dumpOn (std::ostream &str) const
 
virtual void ref_to (unsigned) const
 
virtual void unref_to (unsigned) const
 

Private Member Functions

 ValueCheckBase (const ValueCheckBase &r)
 
ValueCheckBaseoperator= (const ValueCheckBase &r)
 

Friends

class ValueCheck
 

Additional Inherited Members

- Static Public Member Functions inherited from ca_mgm::ReferenceCounted
static void add_ref (const ReferenceCounted *ptr_r)
 
static void release (const ReferenceCounted *ptr_r)
 

Detailed Description

Base class to check a value.

The ValueCheckBase class, is a abstract base class, allowing to implement a single check on a string value.

A check derived from this class can be combined in ValueCheck class to expressions.

See Also
ValueRegExCheck, ValueIntCheck and the ValueCheck class.

Constructor & Destructor Documentation

virtual ca_mgm::ValueCheckBase::~ValueCheckBase ( )
inlinevirtual

Destructor.

ca_mgm::ValueCheckBase::ValueCheckBase ( )
inlineprotected

Default constructor.

ca_mgm::ValueCheckBase::ValueCheckBase ( const ValueCheckBase r)
inlineprivate

Copy constructor, private. Use the default constructor to implement a copy constructor in your derived class.

Member Function Documentation

virtual std::string ca_mgm::ValueCheckBase::explain ( const std::string &  value) const
pure virtual

Returns a string explaining / showing the check.

For example, if your check implements the evaluation whether the value (e.g. "2") is lower than 5, implement it as:

* return str::form("MyCheck('%1' < 5)", value);
*

The resulting string will be "MyCheck('2' < 5)" if the value parameter string was "2".

Parameters
valueThe value to evaluate.
Returns
A string showing the check.

Implemented in ca_mgm::ValueCheck, ca_mgm::ValueIntCheck, ca_mgm::ValuePerlRECheck, and ca_mgm::ValuePosixRECheck.

virtual bool ca_mgm::ValueCheckBase::isValid ( const std::string &  value) const
pure virtual

Evaluates a check for the specified string value parameter to a boolean or throws an exception on failure.

For example, if you want a check that evaluates whether the value (e.g. "2") is lower than 5, implement it as:

* return (value.toInt() < 5);
*
Parameters
valueThe value to evaluate.
Returns
The boolean result of the check.

Implemented in ca_mgm::ValueCheck, ca_mgm::ValueIntCheck, ca_mgm::ValuePerlRECheck, and ca_mgm::ValuePosixRECheck.

ValueCheckBase& ca_mgm::ValueCheckBase::operator= ( const ValueCheckBase r)
private

Copy operator, private.

Friends And Related Function Documentation

friend class ValueCheck
friend

Permit the ValueCheck class the access to the reference counter.


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