Strip parens from filter params list
This isn't necessary, we will always know that the second item within the filter list is the set of filter parameters. This also ensures that any time the filter separator is detected, we force parsing the next token as a filter parameter.
This commit is contained in:
parent
1604a0c87b
commit
ca3ecffd9a
@ -83,8 +83,26 @@ variable_filter
|
||||
=
|
||||
{SP}* "|" {SP}* @:filter
|
||||
;
|
||||
filter = @+:IDENTIFIER [@+:filter_parameters];
|
||||
filter_parameters = "(" [@+:filter_parameter {"," {SP}* @+:filter_parameter}*] ")";
|
||||
filter =
|
||||
@+:IDENTIFIER
|
||||
[@+:filter_parameters]
|
||||
;
|
||||
|
||||
filter_parameters
|
||||
=
|
||||
"("
|
||||
@:[filter_parameter_list]
|
||||
")"
|
||||
;
|
||||
filter_parameter_list
|
||||
=
|
||||
@+:filter_parameter {filter_parameter_separator ~ @+:filter_parameter}*
|
||||
;
|
||||
|
||||
filter_parameter_separator
|
||||
=
|
||||
{SP}* "," {SP}*
|
||||
;
|
||||
filter_parameter = {!"," !")" CHAR}* ;
|
||||
|
||||
comment_expression = comment_open comment_content comment_close ;
|
||||
@ -96,7 +114,7 @@ content = !(block_open | variable_open | comment_open) CHAR ;
|
||||
|
||||
IDENTIFIER
|
||||
=
|
||||
/[a-zA-Z]+/
|
||||
/[a-zA-Z][a-zA-Z0-9]*/
|
||||
;
|
||||
|
||||
ALPHA
|
||||
|
||||
@ -1,8 +1,10 @@
|
||||
{% with key=val %}
|
||||
{{ kkk |test(first,second, third)|filter}}
|
||||
{{ kkk |test(first ,second, third)|filter | lastFilter}}
|
||||
{%block single key=val param=value %}
|
||||
test {{var}}
|
||||
{%endblock%}
|
||||
{# comment contents
|
||||
across lines #}
|
||||
{% raw %}{% block %}fake content{{ fake vars }}{% endraw %}
|
||||
{% raw %}
|
||||
{% block %}fake content{{ fake vars }}
|
||||
{% endraw %}
|
||||
Loading…
Reference in New Issue
Block a user