JEXL-92: follow up on Rahul's comments (JexlContext exposes set/get/has);
moved JexlContext.Mapped as MapContext;
moved Uberspect & related classes to oac.jexl2.introspection;
moved DebugInfo & JexlInfo to oac.jexl2
JEXL-92: follow up on Rahul's comments (JexlContext exposes set/get/has);
moved JexlContext.Mapped as MapContext;
moved Uberspect & related classes to oac.jexl2.introspection;
moved DebugInfo & JexlInfo to oac.jexl2
JEXL-87:
Fix in Parser.jjt, "x + y / a + b" was throwing a ParseException
Fixed JexlArithmetic; use the same algo wrt datatype for all operations, fixed modulo for BigDecimal and made integer results to scale down to 'int' (was only to long) when possible
Fixed tests to check for 'int(eger)' instead of 'long' when needed.
*Parser.jjt*: modified grammar to make last statement terminator (aka ';') optional.
This implied a change in AdditiveOperation and the introduction of AdditiveOperator to break conflicts.
*Interpreter.java*: modified according to grammar ({Add,Subtract}Node replaced by AdditiveNode.
Debugger.java: made debugger expression-AST roundtrip enabled; the Debugger can regenerate an expression from AST that when parsed, will give back an equivalent AST (fixes JEXL-86).
JexlEngine.java: modified because StatementExpression are no longer creating nodes (#void)
Change foreach syntax -- now aligned with enhanced for.
Add note that 1.1 syntax is deprecated.
Based on patch by Henri Biestro <hbiestro at gmail dot com>. JEXL-82
Various MethodKey fixes:
* Fix potential NPEs.
* Reduce visibility of many methods
* Use Void.class as a signature for null arguments
* Need only one AmbiguousException
Patch by Henri Biestro <hbiestro at gmail dot com>. JEXL-67