public abstract class AbstractArgMultiple extends AbstractArg2
| Constructor and Description |
|---|
AbstractArgMultiple() |
| Modifier and Type | Method and Description |
|---|---|
IExpr |
binaryOperator(IExpr o0,
IExpr o1) |
void |
defineHashRule(IExpr lhs1,
IExpr lhs2,
IExpr rhs,
IExpr condition)
Define the rule for the
Orderless operator OP. |
abstract IExpr |
e2IntArg(IInteger i0,
IInteger i1) |
IExpr |
evaluate(IAST ast,
EvalEngine engine)
Symbolic evaluation of a function.
|
IAST |
evaluateHashs(IAST ast) |
HashedOrderlessMatcher |
getHashRuleMap() |
void |
setUpHashRule(java.lang.String lhs1Str,
java.lang.String lhs2Str,
java.lang.String rhsStr) |
void |
setUpHashRule(java.lang.String lhs1Str,
java.lang.String lhs2Str,
java.lang.String rhsStr,
java.lang.String conditionStr) |
void |
setUpHashRule2(IExpr lhs1,
IExpr lhs2,
IExpr rhs,
IExpr condition) |
e2ApcomplexArg, e2ApfloatArg, e2ComArg, e2DblArg, e2DblComArg, e2FraArg, e2FunArg, e2ObjArg, e2SymArg, eComFraArg, eComIntArg, eFunIntArgcreateRuleFromMethod, getNormalizedNegativeExpression, getNormalizedNegativeExpression, getPeriodicParts, getPureImaginaryPart, getRuleAST, initSerializedRules, isNegativeExpression, setUpnumericEvalpublic IExpr evaluate(IAST ast, EvalEngine engine)
AbstractFunctionEvaluatorast.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 IFunctionEvaluatorevaluate in class AbstractArg2ast - 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 HashedOrderlessMatcher getHashRuleMap()
public void defineHashRule(IExpr lhs1, IExpr lhs2, IExpr rhs, IExpr condition)
Orderless operator OP.
OP[lhs1, lhs2, ...] := OP[rhs, ...] /; conditionlhs1 - lhs2 - rhs - condition - HashedOrderlessMatcher.defineHashRule(org.matheclipse.core.interfaces.IExpr,
org.matheclipse.core.interfaces.IExpr, org.matheclipse.core.interfaces.IExpr, org.matheclipse.core.interfaces.IExpr)public void setUpHashRule2(IExpr lhs1, IExpr lhs2, IExpr rhs, IExpr condition)
lhs1 - lhs2 - rhs - condition - HashedOrderlessMatcher.defineHashRule(org.matheclipse.core.interfaces.IExpr,
org.matheclipse.core.interfaces.IExpr, org.matheclipse.core.interfaces.IExpr, org.matheclipse.core.interfaces.IExpr)public void setUpHashRule(java.lang.String lhs1Str,
java.lang.String lhs2Str,
java.lang.String rhsStr,
java.lang.String conditionStr)
throws SyntaxError
lhs1Str - lhs2Str - rhsStr - conditionStr - SyntaxErrorHashedOrderlessMatcher.defineHashRule(java.lang.String, java.lang.String,
java.lang.String, java.lang.String)public void setUpHashRule(java.lang.String lhs1Str,
java.lang.String lhs2Str,
java.lang.String rhsStr)
throws SyntaxError
lhs1Str - lhs2Str - rhsStr - SyntaxErrorHashedOrderlessMatcher.defineHashRule(java.lang.String, java.lang.String,
java.lang.String)public IExpr binaryOperator(IExpr o0, IExpr o1)
binaryOperator in class AbstractArg2public abstract IExpr e2IntArg(IInteger i0, IInteger i1)
e2IntArg in class AbstractArg2