public abstract class AbstractEvaluator extends java.lang.Object implements IFunctionEvaluator
numericEval() method delegates to the evaluate()| Constructor and Description |
|---|
AbstractEvaluator() |
| Modifier and Type | Method and Description |
|---|---|
abstract IExpr |
evaluate(IAST ast,
EvalEngine engine)
Symbolic evaluation of a function.
|
IExpr |
numericEval(IAST ast,
EvalEngine engine)
Numeric evaluation of a function.
|
void |
setUp(ISymbol symbol)
Evaluate built-in rules and define Attributes for a function.
|
public IExpr numericEval(IAST ast, EvalEngine engine)
ast.get(0) (or alternatively ast.head()) contains the head
(i.e. the function symbol) of this abstract syntax tree (AST). ast.arg1() to ast.get(n) the ast contains the first to n-th argument of the
function (alternatively you get the first to fifth argument with the methods arg1(), arg2(),...
arg5()).Validate class to check the number or types of arguments in the evaluate
method.numericEval in interface IFunctionEvaluatorast - the abstract syntax tree (AST) which should be evaluatedengine - the users current evaluation enginenull, if evaluation isn't possibleValidate,
IExpr.head(),
IAST.arg1(),
IAST.arg2(),
IAST.arg3()public void setUp(ISymbol symbol) throws SyntaxError
setUp in interface IEvaluatorsymbol - the symbol which should be set upSyntaxErrorpublic abstract IExpr evaluate(IAST ast, EvalEngine engine)
ast.get(0) (or alternatively ast.head()) contains the
head (i.e. the function symbol) of this abstract syntax tree (AST). ast.arg1() to ast.get(n) the ast contains the first to n-th argument of the
function (alternatively you get the first to fifth argument with the methods arg1(), arg2(),...
arg5()).Validate class to check the number or types of arguments in the evaluate
method.null value without throwing an exception!evaluate in interface IFunctionEvaluatorast - the abstract syntax tree (AST) which should be evaluatedengine - the users current evaluation enginenull, if evaluation isn't possibleValidate,
IExpr.head(),
IAST.arg1(),
IAST.arg2(),
IAST.arg3()