/** * Sets argument value, if DEPENDENT_ARGUMENT then argument type * is set to FREE_ARGUMENT * * @param argumentValue the value of argument */ public void setArgumentValue(double argumentValue) { if (argumentType == DEPENDENT_ARGUMENT) { argumentType = FREE_ARGUMENT; argumentExpression.setExpressionString(""); } this.argumentValue = argumentValue; } /*=================================================
/** * Sets argument expression string. * Each expression / function / dependent argument associated * with this argument will be marked as modified * (requires new syntax checking). * * @param argumentExpressionString the argument expression string * * @see Expression */ public void setArgumentExpressionString(String argumentExpressionString) { argumentExpression.setExpressionString(argumentExpressionString); if (argumentType == FREE_ARGUMENT) argumentType = DEPENDENT_ARGUMENT; } /**
@Override protected void testScenario() { Expression e = new Expression(""); for (int i = 0; i <= super.iterNum; i++) { if (mXparser.isCurrentCalculationCancelled()) break; e.setExpressionString("sin(2+(3*4)^2)/10"); e.checkSyntax(); } } }
e.setExpressionString("c2+a1"); syn2 = e.getSyntaxStatus(); syn3 = e.checkSyntax(); e.setExpressionString("c1+a2"); syn1 = e.checkSyntax(); e.setDescription("opis"); e.setExpressionString("1+2"); syn1 = e.checkSyntax(); n1 = e.getArgumentsNumber(); e.setExpressionString("1+2"); syn1 = e.checkSyntax(); n1 = e.getConstantsNumber(); e.setExpressionString("1+2"); syn1 = e.checkSyntax(); n1 = e.getFunctionsNumber();
mXparser.consolePrintln(e1.getExpressionString() + " = " + e1.calculate()); e1.setExpressionString("2-1"); mXparser.consolePrintln(e1.getExpressionString() + " = " + e1.calculate());