NumberArgument Class Reference

A definition for numerical arguments. More...

#include <Function.h>

Inheritance diagram for NumberArgument:

Argument

List of all members.

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 Argumentcopy () const
virtual string print () const
void setMin (const Number *nmin)
void setIncludeEqualsMin (bool include_equals)
bool includeEqualsMin () const
const Numbermin () const
void setMax (const Number *nmax)
void setIncludeEqualsMax (bool include_equals)
bool includeEqualsMax () const
const Numbermax () 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

Numberfmin
Numberfmax
bool b_incl_min
bool b_incl_max
bool b_complex
bool b_rational_number


Detailed Description

A definition for numerical arguments.

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.


Member Function Documentation

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.

Parameters:
value Value to test.
eo Evaluation options to use if the value needs to be evaluated.
Returns:
true if the value is valid for the argument definition.

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)".

Returns:
Long description.

Reimplemented from Argument.

virtual void NumberArgument::set ( const Argument arg  )  [virtual]

Sets the argument to a copy of an argument definition.

Parameters:
arg Argument to copy.

Reimplemented from Argument.

virtual Argument* NumberArgument::copy (  )  const [virtual]

Returns a copy of the argument definition.

Returns:
A copy.

Reimplemented from Argument.

virtual string NumberArgument::print (  )  const [virtual]

Resturns a short description of the argument definition. Ex. "number" for NumberArgument.

Returns:
Short description.

Reimplemented from Argument.

virtual int NumberArgument::type (  )  const [virtual]

Returns the type of the argument, corresponding to which subclass the object belongs to.

Returns:
ArgumentType.

Reimplemented from Argument.


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

Generated on Tue Jan 5 08:26:29 2010 for libqalculate-0.9.7 by  doxygen 1.5.5