155 virtual double evaluate(
const double * values,
156 const double * s = NULL) = 0;
163 virtual void dump(::std::ostream & stream = ::std::cerr);
242 virtual double * mass_evaluate(
int nb,
double * target,
const double **variables);
virtual Expression * copy()
Returns a freshly allocated copy of the expression.
Definition: expression.hh:207
Expression * to_expression()
Converts to SCalc::Expression.
Definition: expression.hh:71
A class representing a whole session.
Definition: session.hh:75
virtual std::string pretty_print()=0
Pretty printing of the result ?
An expression !
Definition: expression.hh:131
ParserResult(Session *s)
Constructors/desctructors:
Definition: expression.hh:41
virtual int is_valid()
Definition: expression.hh:189
int evaluable(Expression *expr)
virtual std::set< int > used_variables()
Variable used by an expression.
Definition: expression.hh:170
virtual int is_func_def()
Is it a SCalc::FuncDef ?
Definition: expression.hh:100
virtual int is_expression()
Yes, this is an expression:
Definition: expression.hh:137
The result of an SCalc::Session::eval().
Definition: expression.hh:36
FuncDef * to_func_def()
Converts to SCalc::FuncDef.
Definition: expression.hh:106
int evaluable()
Tells if this expression can be evaluated.
Definition: expression.hh:173
virtual int is_expression()
Is it a SCalc::Expression ?
Definition: expression.hh:65
A syntax error This class represents a syntax error. You can get several informations about this erro...
Definition: syntax.hh:26
Session * session()
The SCalc::Session object used.
Definition: expression.hh:48
A function definition with any number of parameters.
Definition: functions.hh:39
virtual int is_const()
If const, then the value is always 1.
Definition: expression.hh:185
virtual int is_null()
Definition: expression.hh:179
SyntaxError * to_syntax_error()
Converts to SCalc::SyntaxError.
Definition: expression.hh:89
Definition: session.hh:45
virtual int is_id()
If Id, then the value is always 1.
Definition: expression.hh:182
virtual int is_syntax_error()
Is it a SCalc::SyntaxError ?
Definition: expression.hh:83
virtual int can_delete()
Definition: expression.hh:121
virtual Expression * simplify()
Simplifies the expression.
Definition: expression.hh:228