/** * Performs an analysis compileShared, which will populate the ParserContext with type, input and variable information, * but will not produce a payload. * * @param expression - the expression to analyze * @param ctx - the parser context */ public static void analysisCompile(char[] expression, ParserContext ctx) { ExpressionCompiler compiler = new ExpressionCompiler(expression, ctx); compiler.setVerifyOnly(true); compiler.compile(); }
/** * Performs an analysis compileShared, which will populate the ParserContext with type, input and variable information, * but will not produce a payload. * * @param expression - the expression to analyze * @param ctx - the parser context */ public static void analysisCompile(char[] expression, ParserContext ctx) { ExpressionCompiler compiler = new ExpressionCompiler(expression, ctx); compiler.setVerifyOnly(true); compiler.compile(); }
/** * Performs an analysis compile, which will populate the ParserContext with type, input and variable information, * but will not produce a payload. * * @param expression - the expression to analyze * @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 Class analyze(char[] expression, ParserContext ctx) { ExpressionCompiler compiler = new ExpressionCompiler(expression, ctx); compiler.setVerifyOnly(true); compiler.compile(); return compiler.getReturnType(); }
public static Class analyze(char[] expression, ParserContext ctx) { ExpressionCompiler compiler = new ExpressionCompiler(expression, ctx); compiler.setVerifyOnly(true); compiler.compile(); return compiler.getReturnType(); }
public static Class analyze(char[] expression, ParserContext ctx) { ExpressionCompiler compiler = new ExpressionCompiler(expression); compiler.setVerifyOnly(true); compiler.compile(ctx); return compiler.getReturnType(); }
public void testMultiVarDeclr() { String ex = "var a, b, c"; ParserContext ctx = new ParserContext(); ExpressionCompiler compiler = new ExpressionCompiler(ex, ctx); compiler.setVerifyOnly(true); compiler.compile(); assertEquals(3, ctx.getVariables().size()); }
public void testVarDeclr() { String ex = "var a"; ParserContext ctx = new ParserContext(); ExpressionCompiler compiler = new ExpressionCompiler(ex, ctx); compiler.setVerifyOnly(true); compiler.compile(); assertEquals(1, ctx.getVariables().size()); }
public void testAnalysisCompile() { ParserContext pCtx = new ParserContext(); ExpressionCompiler e = new ExpressionCompiler("foo.aValue = 'bar'", pCtx); e.setVerifyOnly(true); e.compile(); assertTrue(pCtx.getInputs().keySet().contains("foo")); assertEquals(1, pCtx.getInputs().size()); assertEquals(0, pCtx.getVariables().size()); }
public void testMapsWithVariableAsKey() { String ex = "aMap[aKey] == 'aValue'"; ParserContext ctx = new ParserContext(); ctx.setStrongTyping(false); ExpressionCompiler compiler = new ExpressionCompiler(ex, ctx); compiler.setVerifyOnly(true); compiler.compile(); Set<String> requiredInputs = compiler.getParserContextState().getInputs().keySet(); assertTrue(requiredInputs.contains("aMap")); assertTrue(requiredInputs.contains("aKey")); }
compiler.setVerifyOnly(true); compiler.compile(ctx);
compiler.setVerifyOnly(true); compiler.compile();
compiler.setVerifyOnly(true); compiler.compile(pCtx);
compiler.setVerifyOnly(true); compiler.compile();