Search in sources :

Example 26 with Parser

use of org.matheclipse.parser.client.Parser in project symja_android_library by axkr.

the class PatternMatchingTestCase method check.

public void check(EvalEngine engine, boolean configMode, String strEval, String strResult, boolean relaxedSyntax) {
    try {
        if (strEval.length() == 0 && strResult.length() == 0) {
            return;
        }
        IExpr result;
        StringWriter buf = new StringWriter();
        // configMode;
        Config.SERVER_MODE = configMode;
        if (Config.SERVER_MODE) {
            Parser parser = new Parser(relaxedSyntax);
            ASTNode node = parser.parse(strEval);
            IExpr inExpr = AST2Expr.CONST.convert(node);
            TimeConstrainedEvaluator utility = new TimeConstrainedEvaluator(engine, false, Config.FOREVER, relaxedSyntax);
            result = utility.constrainedEval(buf, inExpr);
        } else {
            Parser parser = new Parser(relaxedSyntax);
            ASTNode node = parser.parse(strEval);
            IExpr inExpr = AST2Expr.CONST.convert(node);
            result = util.evaluate(inExpr);
            if ((result != null) && !result.equals(F.Null)) {
                OutputFormFactory off = OutputFormFactory.get(relaxedSyntax);
                off.setIgnoreNewLine(true);
                off.convert(buf, result);
            }
        }
        assertEquals(buf.toString(), strResult);
    } catch (Exception e) {
        e.printStackTrace();
        assertEquals(e, "");
    }
}
Also used : TimeConstrainedEvaluator(org.matheclipse.core.eval.TimeConstrainedEvaluator) StringWriter(java.io.StringWriter) ASTNode(org.matheclipse.parser.client.ast.ASTNode) IExpr(org.matheclipse.core.interfaces.IExpr) OutputFormFactory(org.matheclipse.core.form.output.OutputFormFactory) Parser(org.matheclipse.parser.client.Parser)

Example 27 with Parser

use of org.matheclipse.parser.client.Parser in project symja_android_library by axkr.

the class ParserTestCase method testParser9.

public void testParser9() {
    try {
        Parser p = new Parser();
        ASTNode obj = p.parse("-42424242424242424242.125");
        assertEquals(obj.toString(), "-42424242424242424242.125");
    } catch (Exception e) {
        e.printStackTrace();
        assertEquals("", e.getMessage());
    }
}
Also used : ASTNode(org.matheclipse.parser.client.ast.ASTNode) Parser(org.matheclipse.parser.client.Parser)

Example 28 with Parser

use of org.matheclipse.parser.client.Parser in project symja_android_library by axkr.

the class ParserTestCase method testParser17.

public void testParser17() {
    try {
        Parser p = new Parser();
        ASTNode obj = p.parse("\\[Alpha]+\\[Alpha]");
        assertEquals(obj.toString(), "Plus(α, α)");
    } catch (Exception e) {
        e.printStackTrace();
        assertEquals("", e.getMessage());
    }
}
Also used : ASTNode(org.matheclipse.parser.client.ast.ASTNode) Parser(org.matheclipse.parser.client.Parser)

Example 29 with Parser

use of org.matheclipse.parser.client.Parser in project symja_android_library by axkr.

the class ParserTestCase method testParser10.

public void testParser10() {
    try {
        Parser p = new Parser();
        ASTNode obj = p.parse("-3/4");
        assertEquals(obj.toString(), "-3/4");
    } catch (Exception e) {
        e.printStackTrace();
        assertEquals("", e.getMessage());
    }
}
Also used : ASTNode(org.matheclipse.parser.client.ast.ASTNode) Parser(org.matheclipse.parser.client.Parser)

Example 30 with Parser

use of org.matheclipse.parser.client.Parser in project symja_android_library by axkr.

the class ParserTestCase method testParser23.

public void testParser23() {
    try {
        Parser p = new Parser();
        ASTNode obj = p.parse("f[x]*f''[x]");
        assertEquals(obj.toString(), "Times(f(x), Derivative(2)[f][x])");
    } catch (Exception e) {
        e.printStackTrace();
        assertEquals("", e.getMessage());
    }
}
Also used : ASTNode(org.matheclipse.parser.client.ast.ASTNode) Parser(org.matheclipse.parser.client.Parser)

Aggregations

Parser (org.matheclipse.parser.client.Parser)40 ASTNode (org.matheclipse.parser.client.ast.ASTNode)32 FileReader (java.io.FileReader)2 IOException (java.io.IOException)2 EvalEngine (org.matheclipse.core.eval.EvalEngine)2 IExpr (org.matheclipse.core.interfaces.IExpr)2 FunctionNode (org.matheclipse.parser.client.ast.FunctionNode)2 BufferedReader (java.io.BufferedReader)1 StringWriter (java.io.StringWriter)1 CSVFormat (org.apache.commons.csv.CSVFormat)1 CSVRecord (org.apache.commons.csv.CSVRecord)1 AST2Expr (org.matheclipse.core.convert.AST2Expr)1 EvalUtilities (org.matheclipse.core.eval.EvalUtilities)1 TimeConstrainedEvaluator (org.matheclipse.core.eval.TimeConstrainedEvaluator)1 WrongNumberOfArguments (org.matheclipse.core.eval.exception.WrongNumberOfArguments)1 OutputFormFactory (org.matheclipse.core.form.output.OutputFormFactory)1 IAST (org.matheclipse.core.interfaces.IAST)1 IStringX (org.matheclipse.core.interfaces.IStringX)1