Я хочу последовательно разобрать MVEL следующим образом:
HashMap myData = new HashMap(){{ put("x", 1); }}
eval("y = 2", ...) // assign value to y
...
eval("x + y", myData, ...) // expect 3
Это возможно? Если да, то как?
Я хочу последовательно разобрать MVEL следующим образом:
HashMap myData = new HashMap(){{ put("x", 1); }}
eval("y = 2", ...) // assign value to y
...
eval("x + y", myData, ...) // expect 3
Это возможно? Если да, то как?
Просто поделитесь распознавателем переменных между оценками выражений:
VariableResolverFactory vars = new MapVariableResolverFactory(new HashMap(){{ put("x", 1); }});
MVEL.eval("y = 2", vars): MVEL.eval("x + y", vars);