-
Support for operators without arguments
=null=
,=notnull=
. -
Allow
=in=
and=out=
operators to have no arguments. -
Optimize memory footprint of argument list creation when there’s only one argument.
-
Allow quoted selectors with reserved characters. @sdeming
-
NodesFactory will throw exception if operator alternative symbols are overlapping.
-
More optimize for unescape and unquote by using bulk ops.
-
Overload RSQLParser constructor to accept NodesFactory.
-
Update JavaCC to 7.0.12 version.
-
Optimize unescape performance
-
Optimize memory footprint by using Reader as a Parser source
-
Change artifact Maven coordinates from
cz.jirutka.rsql:rsql-parser
toio.github.nstdio:rsql-parser
-
Added
\
(backslash) as an escape character inside a quoted argument (requested in #7).
-
Simplified AST; node per operator replaced with just ComparisonNode.
-
Simplified support for custom operators; the RSQLNodesFactory is no longer needed.
-
The RSQLParserException changed to inherit from the RuntimeException.
-
Added withSelector/withArguments/withChildren methods to the AST nodes.
-
Tests improved.
-
JavaCC grammar, all the code and tests completely rewritten.
-
Proper AST with enhanced Visitor pattern implemented.
-
Introduced support for enhancing parser with custom FIQL-like operators.
-
Added
=in=
and=out=
operators, arguments group. -
FIQL operators syntax relaxed; any
=[a-z]*=
is parsed as an operator and validation is done in RSQLNodesFactory. This allows to add custom operators. -
Selector syntax relaxed, it can contain any non-reserved characters now.
-
Dropped an alternative notation for equal operator; only pair equal characters (
==
) are allowed!