libqalculate-3.6.0: TextArgument Class Reference

libqalculate-3.6.0

Public Member Functions | Protected Member Functions | List of all members
TextArgument Class Reference

A text argument. More...

`#include <Function.h>`

Inheritance diagram for TextArgument:

## Public Member Functions
| TextArgument (std::string name_="", bool does_test=true, bool does_error=true)
| TextArgument (const TextArgument *arg)
virtual int | type () const
virtual Argument * | copy () const
virtual std::string | print () const
virtual bool | suggestsQuotes () const
Public Member Functions inherited from Argument
| Argument (std::string name_="", bool does_test=true, bool does_error=true)
| Argument (const Argument *arg)
virtual | ~Argument ()
virtual void | set (const Argument *arg)
std::string | printlong () const
bool | test (MathStructure &value, int index, MathFunction *f, const EvaluationOptions &eo=default_evaluation_options) const
virtual MathStructure | parse (const std::string &str, const ParseOptions &po=default_parse_options) const
virtual void | parse (MathStructure *mstruct, const std::string &str, const ParseOptions &po=default_parse_options) const
std::string | name () const
void | setName (std::string name_)
void | setCustomCondition (std::string condition)
std::string | getCustomCondition () const
bool | tests () const
void | setTests (bool does_error)
bool | alerts () const
void | setAlerts (bool does_error)
bool | zeroForbidden () const
void | setZeroForbidden (bool forbid_zero)
bool | matrixAllowed () const
void | setMatrixAllowed (bool allow_matrix)
bool | handlesVector () const
void | setHandleVector (bool handle_vector)
bool | isLastArgument () const
void | setIsLastArgument (bool is_last)
bool | rationalPolynomial () const
void | setRationalPolynomial (bool rational_polynomial)

## Protected Member Functions
virtual bool | subtest (MathStructure &value, const EvaluationOptions &eo) const
virtual std::string | subprintlong () const

## Additional Inherited Members
Protected Attributes inherited from Argument
std::string | sname
std::string | scondition
bool | b_zero
bool | b_test
bool | b_matrix
bool | b_text
bool | b_error
bool | b_rational
bool | b_last
bool | b_handle_vector

## Detailed Description

A text argument.

Accepts text (symbolic) structures. Argument values are parsed as text, unless surrounded by back slashes (which are then removed). Surrounding Parentheses and first quotation marks are removed.

## Member Function Documentation

## ◆ copy()

virtual Argument* TextArgument::copy | ( |  | ) | const
| virtual

Returns a copy of the argument definition.

Returns
  A copy.

Reimplemented from Argument.

## ◆ print()

virtual std::string TextArgument::print | ( |  | ) | const
| virtual

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

Returns
  Short description.

Reimplemented from Argument.

## ◆ subprintlong()

virtual std::string TextArgument::subprintlong | ( |  | ) | const
| protectedvirtual

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.

## ◆ subtest()

virtual bool TextArgument::subtest | ( | MathStructure & | value,
|  | const EvaluationOptions & | eo
| ) |  | const
| protectedvirtual

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.

## ◆ type()

virtual int TextArgument::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:

- libqalculate/Function.h