Package org.mvel2.compiler

Examples of org.mvel2.compiler.ExpressionCompiler.compile()


    ExpressionCompiler compiler =
            new ExpressionCompiler("message='Hello';b=7;\nSystem.out.println(message + ';' + b);\n"
                    + "System.out.println(message + ';' + b); b");

    assertEquals(7,
            executeExpression(compiler.compile(ctx),
                    new DefaultLocalVariableResolverFactory()));
  }


  public void testStrictStrongTypingCompilationErrors1() throws Exception {
View Full Code Here


    ctx.addInput("$bar", Bar.class);

    try {
      ExpressionCompiler compiler = new ExpressionCompiler("System.out.println( $ba );");

      compiler.compile(ctx);
      fail("This should not compileShared");
    }
    catch (Exception e) {
    }
  }
View Full Code Here

    ParserContext ctx = new ParserContext();
    ctx.setStrictTypeEnforcement(true);
    ctx.addInput("foo",
            Foo.class);

    compiler.compile(ctx);
  }


  public static class ScriptHelper228 {
    public void methodA() {
View Full Code Here

    ctx.setStrongTyping(true);
    ctx.addInput("$msg",
            String.class);
    ctx.addInput("map",
            Map.class);
    Serializable expr = compiler.compile(ctx);

    Map map = new HashMap();
    map.put("KEY1",
            "MSGONE");
    Map vars = new HashMap();
View Full Code Here

    ctx.setStrongTyping(true);
    ctx.addInput("$msg",
            String.class);
    ctx.addInput("this",
            Map.class);
    Serializable expr = compiler.compile(ctx);

    Map map = new HashMap();
    map.put("KEY1",
            "MSGONE");
    Map vars = new HashMap();
View Full Code Here

    ctx.setStrongTyping(true);
    ctx.addInput("foo",
            HashMap.class,
            new Class[]{String.class, String.class});
    ExpressionCompiler compiler = new ExpressionCompiler("foo.get('bar').toUpperCase()");
    compiler.compile(ctx);
  }

  public void testSetAccessorOverloadedEqualsStrictMode2() {
    ParserContext ctx = new ParserContext();
    ctx.setStrongTyping(true);
View Full Code Here

    Cheese expectedCheese = new Cheese();
    expectedCheese.setUseBy(new SimpleDateFormat("dd-MMM-yyyy").parse("10-Jul-1974"));

    ExpressionCompiler compiler = new ExpressionCompiler("c = new Cheese(); c.useBy = '10-Jul-1974'; return c");
    Cheese actualCheese = (Cheese) executeExpression(compiler.compile(ctx),
            createTestMap());
    assertEquals(expectedCheese.getUseBy(),
            actualCheese.getUseBy());
  }
View Full Code Here

    vars.put("_x_001", 500.2);
    vars.put("_x_002", 200.9);
    vars.put("_r_001", 701);

    ExpressionCompiler compiler = new ExpressionCompiler(ex);
    assertEquals(true, executeExpression(compiler.compile(), vars));
  }

  public void testModulus() {
    assertEquals(38392 % 2, test("38392 % 2"));
  }
View Full Code Here

   * @param ctx        - the parser context
   */
  public static void analysisCompile(char[] expression, ParserContext ctx) {
    ExpressionCompiler compiler = new ExpressionCompiler(expression);
    compiler.setVerifyOnly(true);
    compiler.compile(ctx);
  }

  public static void analysisCompile(String expression, ParserContext ctx) {
    analysisCompile(expression.toCharArray(), ctx);
  }
View Full Code Here

  }

  public static Class analyze(char[] expression, ParserContext ctx) {
    ExpressionCompiler compiler = new ExpressionCompiler(expression);
    compiler.setVerifyOnly(true);
    compiler.compile(ctx);
    return compiler.getReturnType();
  }

  public static Class analyze(String expression, ParserContext ctx) {
    return analyze(expression.toCharArray(), ctx);
View Full Code Here

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.