/* * GenericValidators_impl.hpp * * Created on: Aug 5, 2013 * Author: heber */ #ifndef GENERICVALIDATORS_IMPL_HPP_ #define GENERICVALIDATORS_IMPL_HPP_ // include config.h #ifdef HAVE_CONFIG_H #include #endif #include "GenericValidators.hpp" template bool PositiveValidator::isValid(const T & _value) const { return _value > 0; } template Validator* PositiveValidator::clone() const { return new PositiveValidator(); } template bool PositiveValidator::operator==(const Validator &_instance) const { const PositiveValidator *inst = dynamic_cast *>(&_instance); if (inst) return true; return false; } template bool NonNegativeValidator::isValid(const T & _value) const { return _value >= 0; } template Validator* NonNegativeValidator::clone() const { return new NonNegativeValidator(); } template bool NonNegativeValidator::operator==(const Validator &_instance) const { const NonNegativeValidator *inst = dynamic_cast *>(&_instance); if (inst) return true; return false; } template bool NegativeValidator::isValid(const T & _value) const { return _value < 0; } template Validator* NegativeValidator::clone() const { return new NegativeValidator(); } template bool NegativeValidator::operator==(const Validator &_instance) const { const NegativeValidator *inst = dynamic_cast *>(&_instance); if (inst) return true; return false; } template bool NotZeroValidator::isValid(const T & _value) const { return _value != 0; } template Validator* NotZeroValidator::clone() const { return new NotZeroValidator(); } template bool NotZeroValidator::operator==(const Validator &_instance) const { const NotZeroValidator *inst = dynamic_cast *>(&_instance); if (inst) return true; return false; } #endif /* GENERICVALIDATORS_IMPL_HPP_ */