#include <Function.h>
Public Member Functions | |
NumberArgument (string name_="", ArgumentMinMaxPreDefinition minmax=ARGUMENT_MIN_MAX_NONE, bool does_test=true, bool does_error=true) | |
NumberArgument (const NumberArgument *arg) | |
virtual void | set (const Argument *arg) |
virtual Argument * | copy () const |
virtual string | print () const |
void | setMin (const Number *nmin) |
void | setIncludeEqualsMin (bool include_equals) |
bool | includeEqualsMin () const |
const Number * | min () const |
void | setMax (const Number *nmax) |
void | setIncludeEqualsMax (bool include_equals) |
bool | includeEqualsMax () const |
const Number * | max () const |
bool | complexAllowed () const |
void | setComplexAllowed (bool allow_complex) |
bool | rationalNumber () const |
void | setRationalNumber (bool rational_number) |
virtual int | type () const |
Protected Member Functions | |
virtual bool | subtest (MathStructure &value, const EvaluationOptions &eo) const |
virtual string | subprintlong () const |
Protected Attributes | |
Number * | fmin |
Number * | fmax |
bool | b_incl_min |
bool | b_incl_max |
bool | b_complex |
bool | b_rational_number |
These arguments allows numerical values. The value can be restricted to real or rational numbers (defaults to allow all numbers, including complex), and a max and/or min value.
virtual bool NumberArgument::subtest | ( | MathStructure & | value, | |
const EvaluationOptions & | eo | |||
) | const [protected, virtual] |
This function is called from Argument::test() and performs validation specific to the argument definition type. Should be reimplemented by all subclasses.
value | Value to test. | |
eo | Evaluation options to use if the value needs to be evaluated. |
Reimplemented from Argument.
virtual string NumberArgument::subprintlong | ( | ) | const [protected, virtual] |
This function is called from Argument::printlong() and returns description specific the argument definition type. Should be reimplemented by all subclasses. For example IntegerArgument::subprintlong() might return "an integer" and Argument::printlong() might append " that fulfills the condition: even(\x)".
Reimplemented from Argument.
virtual void NumberArgument::set | ( | const Argument * | arg | ) | [virtual] |
virtual Argument* NumberArgument::copy | ( | ) | const [virtual] |
virtual string NumberArgument::print | ( | ) | const [virtual] |
Resturns a short description of the argument definition. Ex. "number" for NumberArgument.
Reimplemented from Argument.
virtual int NumberArgument::type | ( | ) | const [virtual] |
Returns the type of the argument, corresponding to which subclass the object belongs to.
Reimplemented from Argument.