diff --git a/corpus/comment.txt b/corpus/comment.txt index aab1658..bed109d 100644 --- a/corpus/comment.txt +++ b/corpus/comment.txt @@ -1,13 +1,13 @@ -=============== +================================================================================ Inline comments -=============== +================================================================================ Lorem {# ipsum #} dolor sit amet, consectetur adipiscing elit, {#sed#} do eiusmod tempor incididunt ut labore et dolore magna aliqua. ---- +-------------------------------------------------------------------------------- (template (content) @@ -16,16 +16,16 @@ ut labore et dolore magna aliqua. (comment) (content)) -============== +================================================================================ Block comments -============== +================================================================================ Lorem {# ipsum dolor sit amet, consectetur adipiscing elit, sed#} do eiusmod tempor incididunt ut labore et dolore magna aliqua. ---- +-------------------------------------------------------------------------------- (template (content) diff --git a/corpus/output_directive.txt b/corpus/output_directive.txt index c475dfe..dfba699 100644 --- a/corpus/output_directive.txt +++ b/corpus/output_directive.txt @@ -1,10 +1,10 @@ -=============== +================================================================================ Simple variable -=============== +================================================================================ Lorem {{ ipsum }} dolor sit amet ---- +-------------------------------------------------------------------------------- (template (content) @@ -12,257 +12,255 @@ Lorem {{ ipsum }} dolor sit amet (variable)) (content)) -============= +================================================================================ Function call -============= +================================================================================ Lorem {{ ipsum() }} dolor sit amet ---- +-------------------------------------------------------------------------------- (template (content) (output_directive - (function_call - (function_identifier) - (arguments))) + (function_call + (function_identifier) + (arguments))) (content)) -========================== +================================================================================ Function call w/ arguments -========================== +================================================================================ Lorem {{ ipsum(test, test) }} dolor sit amet ---- +-------------------------------------------------------------------------------- (template (content) (output_directive - (function_call - (function_identifier) - (arguments - (argument - (argument_value - (variable))) - (argument - (argument_value - (variable)))))) + (function_call + (function_identifier) + (arguments + (argument + (argument_value + (variable))) + (argument + (argument_value + (variable)))))) (content)) -=================== +================================================================================ Variable and filter -=================== +================================================================================ Lorem {{ ipsum | filter }} dolor sit amet ---- +-------------------------------------------------------------------------------- (template (content) (output_directive - (variable) - (filter - (filter_identifier))) + (variable) + (filter + (filter_identifier))) (content)) -=========================== +================================================================================ Variable and filter w/ args -=========================== +================================================================================ Lorem {{ ipsum | filter(arg) }} dolor sit amet ---- +-------------------------------------------------------------------------------- (template (content) (output_directive - (variable) - (filter - (filter_identifier) - (arguments - (argument - (argument_value - (variable)))))) + (variable) + (filter + (filter_identifier) + (arguments + (argument + (argument_value + (variable)))))) (content)) -============================= +================================================================================ Variable and filter w/ string -============================= +================================================================================ Lorem {{ ipsum | filter('arg') }} dolor sit amet ---- +-------------------------------------------------------------------------------- (template (content) (output_directive - (variable) - (filter - (filter_identifier) - (arguments - (argument - (argument_value - (string)))))) + (variable) + (filter + (filter_identifier) + (arguments + (argument + (argument_value + (string)))))) (content)) -================= +================================================================================ string and filter -================= +================================================================================ Lorem {{ 'ipsum' | filter }} dolor sit amet ---- +-------------------------------------------------------------------------------- (template (content) (output_directive - (string) - (filter - (filter_identifier))) + (string) + (filter + (filter_identifier))) (content)) -================================ +================================================================================ Function call w/ named arguments -================================ +================================================================================ {{ convert_encoding(from='iso-2022-jp', to=encoding) }} ---- +-------------------------------------------------------------------------------- (template (output_directive - (function_call - (function_identifier) - (arguments - (argument - (argument_name) - (argument_value - (string))) - (argument - (argument_name) - (argument_value - (variable)))))) + (function_call + (function_identifier) + (arguments + (argument + (argument_name) + (argument_value + (string))) + (argument + (argument_name) + (argument_value + (variable)))))) (content)) -======= +================================================================================ Numbers -======= +================================================================================ {{ test(789654) }} ---- +-------------------------------------------------------------------------------- (template (output_directive - (function_call - (function_identifier) - (arguments - (argument - (argument_value - (number)))))) - (content) - ) + (function_call + (function_identifier) + (arguments + (argument + (argument_value + (number)))))) + (content)) -===== +================================================================================ Float -===== +================================================================================ {{ 7896.54 }} ---- +-------------------------------------------------------------------------------- (template - (output_directive - (number)) + (output_directive + (number)) (content)) -================= +================================================================================ binary expression -================= +================================================================================ {{ test() ~ 'test' }} ---- +-------------------------------------------------------------------------------- (template - (output_directive - (binary_expression - (function_call - (function_identifier) - (arguments)) - (operator) - (string))) - (content) - ) + (output_directive + (binary_expression + (function_call + (function_identifier) + (arguments)) + (operator) + (string))) + (content)) -=========================== +================================================================================ binary expression w/ filter -=========================== +================================================================================ {{ test()|value ~ 'test'|length }} ---- +-------------------------------------------------------------------------------- (template - (output_directive - (binary_expression - (function_call - (function_identifier) - (arguments)) - (filter - (filter_identifier)) - (operator) - (string) - (filter - (filter_identifier)))) + (output_directive + (binary_expression + (function_call + (function_identifier) + (arguments)) + (filter + (filter_identifier)) + (operator) + (string) + (filter + (filter_identifier)))) (content)) -====================== +================================================================================ parenthesis precedence -====================== +================================================================================ {{ (greeting ~ name)|lower }} ---- +-------------------------------------------------------------------------------- (template - (output_directive - (binary_expression - (variable) - (operator) - (variable)) - (filter - (filter_identifier))) + (output_directive + (binary_expression + (variable) + (operator) + (variable)) + (filter + (filter_identifier))) (content)) -====== +================================================================================ Arrays -====== +================================================================================ {{ ["test", test(), test|filter] }} ---- +-------------------------------------------------------------------------------- (template - (output_directive - (array - (interpolated_string) - (function_call - (function_identifier) - (arguments)) - (variable) - (filter - (filter_identifier)))) + (output_directive + (array + (interpolated_string) + (function_call + (function_identifier) + (arguments)) + (variable) + (filter + (filter_identifier)))) (content)) -====== +================================================================================ Hashes -====== +================================================================================ {{ { 'foo': 'foo', bar: 'bar', 2: 'foo', foo, (foo): 'foo', (1 + 1): 'bar', (foo ~ 'b'): 'baz' } }} ---- +-------------------------------------------------------------------------------- (template (output_directive @@ -301,13 +299,13 @@ Hashes (string)))) (content)) -======= +================================================================================ Ternary -======= +================================================================================ {{ foo ? 'yes' : 'no' }} ---- +-------------------------------------------------------------------------------- (template (output_directive @@ -317,13 +315,13 @@ Ternary (string))) (content)) -===== +================================================================================ arrow -===== +================================================================================ {{ people|map(p => "ezfze")|join(', ') }} ---- +-------------------------------------------------------------------------------- (template (output_directive @@ -343,46 +341,46 @@ arrow (string)))))) (content)) -============== +================================================================================ Trailing comma -============== +================================================================================ {{ form_widget(child, { parent_label_class: label_attr.class|default(''), }) }} ---- +-------------------------------------------------------------------------------- (template - (output_directive - (function_call - (function_identifier) - (arguments - (argument - (argument_value - (variable))) - (argument - (argument_value - (hash - (hash_key - (name)) - (hash_value - (variable) - (filter - (filter_identifier) - (arguments - (argument - (argument_value - (string)))))))))))) - (content)) - -============ + (output_directive + (function_call + (function_identifier) + (arguments + (argument + (argument_value + (variable))) + (argument + (argument_value + (hash + (hash_key + (name)) + (hash_value + (variable) + (filter + (filter_identifier) + (arguments + (argument + (argument_value + (string)))))))))))) + (content)) + +================================================================================ Array access -============ +================================================================================ {{ foo['bar'] }} ---- +-------------------------------------------------------------------------------- (template (output_directive @@ -390,13 +388,13 @@ Array access (string))) (content)) -============ +================================================================================ Array slice -============ +================================================================================ {{ foo[0:2] }} ---- +-------------------------------------------------------------------------------- (template (output_directive @@ -405,13 +403,13 @@ Array slice (number))) (content)) -============= +================================================================================ Array slice 2 -============= +================================================================================ {{ foo[:2] }} ---- +-------------------------------------------------------------------------------- (template (output_directive @@ -419,13 +417,13 @@ Array slice 2 (number))) (content)) -============= +================================================================================ Array slice 3 -============= +================================================================================ {{ foo[0:] }} ---- +-------------------------------------------------------------------------------- (template (output_directive @@ -433,13 +431,13 @@ Array slice 3 (number))) (content)) -============ +================================================================================ Fake ternary -============ +================================================================================ {{ test ? 'ok' }} ---- +-------------------------------------------------------------------------------- (template (output_directive diff --git a/corpus/statement_directive.txt b/corpus/statement_directive.txt index 2b40b5e..8fcfc93 100644 --- a/corpus/statement_directive.txt +++ b/corpus/statement_directive.txt @@ -1,10 +1,10 @@ -=== +================================================================================ Set -=== +================================================================================ {% set foo = 'foo' %} ---- +-------------------------------------------------------------------------------- (template (statement_directive @@ -14,15 +14,30 @@ Set (string))) (content)) -===== +================================================================================ +Block set +================================================================================ + +{% set foo %} + +-------------------------------------------------------------------------------- + +(template + (statement_directive + (assignment_statement + (keyword) + (variable))) + (content)) + +================================================================================ Apply -===== +================================================================================ {% apply upper %} This text becomes uppercase {% endapply %} ---- +-------------------------------------------------------------------------------- (template (statement_directive @@ -35,15 +50,15 @@ Apply (tag))) (content)) -=== +================================================================================ For -=== +================================================================================ {% for i in range(1, 3) %} {{ i }}, {% endfor %} ---- +-------------------------------------------------------------------------------- (template (statement_directive @@ -68,16 +83,16 @@ For (repeat))) (content)) -=== +================================================================================ if -=== +================================================================================ {% if users|length > 0 %} {% endif %} ---- +-------------------------------------------------------------------------------- (template (statement_directive @@ -95,16 +110,16 @@ if (conditional))) (content)) -===== +================================================================================ Block -===== +================================================================================ {% block head %} {% block title %}{% endblock %} - My Webpage {% endblock %} ---- +-------------------------------------------------------------------------------- (template (statement_directive @@ -125,13 +140,13 @@ Block (tag))) (content)) -======= +================================================================================ extends -======= +================================================================================ {% extends "base.html" %} ---- +-------------------------------------------------------------------------------- (template (statement_directive @@ -140,15 +155,15 @@ extends (interpolated_string))) (content)) -===== +================================================================================ Cache -===== +================================================================================ {% cache "cache key" tags(['cms', 'blog']) %} Some code {% endcache %} ---- +-------------------------------------------------------------------------------- (template (statement_directive @@ -169,13 +184,13 @@ Cache (tag))) (content)) -======= +================================================================================ Include -======= +================================================================================ {% include 'sidebar.html' ignore missing with {'foo': 'bar'} only %} ---- +-------------------------------------------------------------------------------- (template (statement_directive @@ -192,13 +207,13 @@ Include (attribute))) (content)) -==== +================================================================================ with -==== +================================================================================ {% with { foo: 42 } only %} ---- +-------------------------------------------------------------------------------- (template (statement_directive @@ -212,13 +227,13 @@ with (attribute))) (content)) -===== +================================================================================ macro -===== +================================================================================ {% macro input(name, value, type = "text", size = 20) %} ---- +-------------------------------------------------------------------------------- (template (statement_directive @@ -234,13 +249,13 @@ macro (number))))) (content)) -====== +================================================================================ import -====== +================================================================================ {% import "forms.html" as forms %} ---- +-------------------------------------------------------------------------------- (template (statement_directive @@ -251,73 +266,72 @@ import (name))) (content)) -==== +================================================================================ from -==== +================================================================================ {% from "macros.twig" import hello %} ---- +-------------------------------------------------------------------------------- (template - (statement_directive - (from_statement - (tag) - (interpolated_string) - (keyword) - (name))) - (content)) - + (statement_directive + (from_statement + (tag) + (interpolated_string) + (keyword) + (name))) + (content)) -============ +================================================================================ from with as -============ +================================================================================ {% from 'forms.html' import input as input_field, textarea %} ---- - - (template - (statement_directive - (from_statement - (tag) - (string) - (keyword) - (name) - (keyword) - (name) - (name))) - (content)) - -======= +-------------------------------------------------------------------------------- + +(template + (statement_directive + (from_statement + (tag) + (string) + (keyword) + (name) + (keyword) + (name) + (name))) + (content)) + +================================================================================ same as -======= +================================================================================ {% if foo.attribute is same as(false) %} ---- - - (template - (statement_directive - (if_statement - (conditional) - (test_expression - (variable) - (operator) - (test) - (arguments - (argument - (argument_value - (boolean))))))) - (content)) - -======== +-------------------------------------------------------------------------------- + +(template + (statement_directive + (if_statement + (conditional) + (test_expression + (variable) + (operator) + (test) + (arguments + (argument + (argument_value + (boolean))))))) + (content)) + +================================================================================ constant -======== +================================================================================ {% if post.status is constant('PUBLISHED', post) %} ---- +-------------------------------------------------------------------------------- (template (statement_directive @@ -336,13 +350,13 @@ constant (variable))))))) (content)) -===== +================================================================================ empty -===== +================================================================================ {% if foo is not empty %} ---- +-------------------------------------------------------------------------------- (template (statement_directive @@ -354,35 +368,35 @@ empty (test)))) (content)) -=============== +================================================================================ test and binary -=============== +================================================================================ {% if prototype is defined and not prototype.rendered %} ---- +-------------------------------------------------------------------------------- (template - (statement_directive - (if_statement - (conditional) - (test_expression - (variable) - (operator) - (test) - (binary_operator) - (unary_expression - (operator) - (variable))))) - (content)) - -============ + (statement_directive + (if_statement + (conditional) + (test_expression + (variable) + (operator) + (test) + (binary_operator) + (unary_expression + (operator) + (variable))))) + (content)) + +================================================================================ multiple for -============ +================================================================================ {% for group_label, choice in options %} ---- +-------------------------------------------------------------------------------- (template (statement_directive @@ -394,13 +408,13 @@ multiple for (variable))) (content)) -============ +================================================================================ Empty string -============ +================================================================================ {% set foo = '' %} ---- +-------------------------------------------------------------------------------- (template (statement_directive @@ -410,13 +424,13 @@ Empty string (string))) (content)) -========================= +================================================================================ Empty interpolated string -========================= +================================================================================ {% set foo = "" %} ---- +-------------------------------------------------------------------------------- (template (statement_directive @@ -426,13 +440,13 @@ Empty interpolated string (interpolated_string))) (content)) -======================================= +================================================================================ Empty interpolated string w/ expression -======================================= +================================================================================ {% set foo = "test: #{test}" %} ---- +-------------------------------------------------------------------------------- (template (statement_directive @@ -440,6 +454,5 @@ Empty interpolated string w/ expression (keyword) (variable) (interpolated_string - (variable)))) + (variable)))) (content)) - diff --git a/grammar.js b/grammar.js index 645fbe9..0489f2f 100644 --- a/grammar.js +++ b/grammar.js @@ -7,13 +7,17 @@ module.exports = grammar({ name: 'twig', extras: () => [/\s/], rules: { - template: ($) => repeat(choice($.statement_directive, $.output_directive, $.comment, $.content)), + template: ($) => + repeat( + choice($.statement_directive, $.output_directive, $.comment, $.content) + ), content: () => prec.right(repeat1(/[^\{]+|\{/)), comment: () => seq('{#', /[^#]*\#+([^\}#][^#]*\#+)*/, '}'), - statement_directive: ($) => seq(choice('{%', '{%-', '{%~'), $._statement, choice('%}', '-%}', '~%}')), + statement_directive: ($) => + seq(choice('{%', '{%-', '{%~'), $._statement, choice('%}', '-%}', '~%}')), _statement: ($) => choice( @@ -29,22 +33,37 @@ module.exports = grammar({ $.tag_statement ), - assignment_statement: ($) => seq(alias('set', $.keyword), alias($.identifier, $.variable), '=', $._expression), + assignment_statement: ($) => + seq( + alias('set', $.keyword), + alias($.identifier, $.variable), + optional(seq('=', $._expression)) + ), for_statement: ($) => seq( alias('for', $.repeat), - seq(alias($._name, $.variable), repeat(seq(',', alias($._name, $.variable)))), + seq( + alias($._name, $.variable), + repeat(seq(',', alias($._name, $.variable))) + ), alias('in', $.keyword), $._expression ), if_statement: ($) => - choice(seq(alias(choice('if', 'elseif'), $.conditional), $._expression), alias('else', $.conditional)), + choice( + seq(alias(choice('if', 'elseif'), $.conditional), $._expression), + alias('else', $.conditional) + ), tag_statement: ($) => seq( - choice(alias('endif', $.conditional), alias('endfor', $.repeat), alias($._name, $.tag)), + choice( + alias('endif', $.conditional), + alias('endfor', $.repeat), + alias($._name, $.tag) + ), repeat(prec.left($._expression)) ), @@ -61,15 +80,32 @@ module.exports = grammar({ ) ), - with_statement: ($) => seq(alias('with', $.tag), $._expression, optional(alias('only', $.attribute))), + with_statement: ($) => + seq( + alias('with', $.tag), + $._expression, + optional(alias('only', $.attribute)) + ), - macro_statement: ($) => seq(alias('macro', $.tag), alias($._name, $.method), optional($.parameters)), + macro_statement: ($) => + seq( + alias('macro', $.tag), + alias($._name, $.method), + optional($.parameters) + ), - parameters: ($) => seq('(', optional(seq($.parameter, repeat(seq(',', $.parameter)))), ')'), + parameters: ($) => + seq('(', optional(seq($.parameter, repeat(seq(',', $.parameter)))), ')'), parameter: ($) => seq($._name, optional(seq('=', $._literal))), - import_statement: ($) => seq(alias('import', $.tag), $._expression, alias('as', $.keyword), alias($._name, $.name)), + import_statement: ($) => + seq( + alias('import', $.tag), + $._expression, + alias('as', $.keyword), + alias($._name, $.name) + ), from_statement: ($) => seq( @@ -77,10 +113,21 @@ module.exports = grammar({ $._expression, alias('import', $.keyword), alias($._name, $.name), - optional(seq(alias('as', $.keyword), alias($._name, $.name), repeat(seq(',', alias($._name, $.name))))) + optional( + seq( + alias('as', $.keyword), + alias($._name, $.name), + repeat(seq(',', alias($._name, $.name))) + ) + ) ), - output_directive: ($) => seq(choice('{{', '{{-', '{{~'), $._expression, choice('}}', '-}}', '~}}')), + output_directive: ($) => + seq( + choice('{{', '{{-', '{{~'), + $._expression, + choice('}}', '-}}', '~}}') + ), _expression: ($) => prec.right( @@ -104,47 +151,110 @@ module.exports = grammar({ seq( $._name, repeat(seq('.', $._name)), - optional(seq('[', choice($._expression, seq(optional($._expression), ':', optional($._expression))), ']')) + optional( + seq( + '[', + choice( + $._expression, + seq(optional($._expression), ':', optional($._expression)) + ), + ']' + ) + ) ) ), _name: () => REGEX_NAME, - _literal: ($) => choice($._string, $.number, $.array, $.hash, $.boolean, $.null), + _literal: ($) => + choice($._string, $.number, $.array, $.hash, $.boolean, $.null), boolean: () => choice('true', 'false'), null: () => 'null', - _string: ($) => choice(alias(REGEX_STRING_SIMPLE_QUOTED, $.string), $.interpolated_string), + _string: ($) => + choice( + alias(REGEX_STRING_SIMPLE_QUOTED, $.string), + $.interpolated_string + ), interpolated_string: ($) => - seq('"', repeat(choice('\\"', '\\#', '\\\\', REGEX_STRING_INTERPOLATED, seq('#{', $._expression, '}'))), '"'), + seq( + '"', + repeat( + choice( + '\\"', + '\\#', + '\\\\', + REGEX_STRING_INTERPOLATED, + seq('#{', $._expression, '}') + ) + ), + '"' + ), number: () => REGEX_NUMBER, - array: ($) => seq('[', optional(seq($._expression, repeat(seq(',', $._expression)))), ']'), - hash: ($) => seq('{', optional(seq($._hash_entry, repeat(seq(',', $._hash_entry)))), optional(','), '}'), - _hash_entry: ($) => seq(optional($.hash_key), alias($._expression, $.hash_value)), + array: ($) => + seq( + '[', + optional(seq($._expression, repeat(seq(',', $._expression)))), + ']' + ), + hash: ($) => + seq( + '{', + optional(seq($._hash_entry, repeat(seq(',', $._hash_entry)))), + optional(','), + '}' + ), + _hash_entry: ($) => + seq(optional($.hash_key), alias($._expression, $.hash_value)), - hash_key: ($) => seq(choice(seq('(', $._expression, ')'), $._string, $.number, alias($._name, $.name)), ':'), + hash_key: ($) => + seq( + choice( + seq('(', $._expression, ')'), + $._string, + $.number, + alias($._name, $.name) + ), + ':' + ), - function_call: ($) => seq(alias($.identifier, $.function_identifier), $.arguments), + function_call: ($) => + seq(alias($.identifier, $.function_identifier), $.arguments), - arguments: ($) => seq('(', optional(seq($.argument, repeat(seq(',', $.argument)))), ')'), + arguments: ($) => + seq('(', optional(seq($.argument, repeat(seq(',', $.argument)))), ')'), - argument: ($) => seq(optional($.argument_name), alias($._expression, $.argument_value)), + argument: ($) => + seq(optional($.argument_name), alias($._expression, $.argument_value)), argument_name: () => seq(REGEX_NAME, '='), filter: ($) => - prec.left(seq(alias($.identifier, $.filter_identifier), optional(alias($.filter_arguments, $.arguments)))), + prec.left( + seq( + alias($.identifier, $.filter_identifier), + optional(alias($.filter_arguments, $.arguments)) + ) + ), filter_arguments: ($) => seq( '(', - optional(seq(alias($.filter_argument, $.argument), repeat(seq(',', alias($.filter_argument, $.argument))))), + optional( + seq( + alias($.filter_argument, $.argument), + repeat(seq(',', alias($.filter_argument, $.argument))) + ) + ), ')' ), filter_argument: ($) => - seq(optional($.argument_name), choice($.arrow_function, alias($._expression, $.argument_value))), + seq( + optional($.argument_name), + choice($.arrow_function, alias($._expression, $.argument_value)) + ), arrow_function: ($) => prec( @@ -152,14 +262,29 @@ module.exports = grammar({ seq( choice( alias($._name, $.name), - seq('(', optional(seq(alias($._name, $.name), repeat(seq(',', alias($._name, $.name))))), ')') + seq( + '(', + optional( + seq( + alias($._name, $.name), + repeat(seq(',', alias($._name, $.name))) + ) + ), + ')' + ) ), '=>', $._expression ) ), - binary_expression: ($) => prec.right(seq($._expression, seq(alias($.binary_operator, $.operator), $._expression))), + binary_expression: ($) => + prec.right( + seq( + $._expression, + seq(alias($.binary_operator, $.operator), $._expression) + ) + ), test_expression: ($) => prec.right( @@ -168,7 +293,11 @@ module.exports = grammar({ alias($.test_operator, $.operator), choice( seq(alias(repeat1(REGEX_NAME), $.test), optional($.arguments)), - seq(alias(repeat1(REGEX_NAME), $.test), optional($.arguments), seq($.binary_operator, $._expression)) + seq( + alias(repeat1(REGEX_NAME), $.test), + optional($.arguments), + seq($.binary_operator, $._expression) + ) ) ) ), @@ -205,11 +334,20 @@ module.exports = grammar({ '?:' ), - unary_expression: ($) => prec.left(seq(alias($.unary_operator, $.operator), $._expression)), + unary_expression: ($) => + prec.left(seq(alias($.unary_operator, $.operator), $._expression)), unary_operator: () => choice('-', '+', 'not'), - ternary_expression: ($) => prec.left(seq($._expression, '?', $._expression, optional(seq(':', $._expression)))), + ternary_expression: ($) => + prec.left( + seq( + $._expression, + '?', + $._expression, + optional(seq(':', $._expression)) + ) + ), test_operator: () => choice('is', 'is not'), }, diff --git a/src/grammar.json b/src/grammar.json index e452253..f33ed8d 100644 --- a/src/grammar.json +++ b/src/grammar.json @@ -169,12 +169,25 @@ "value": "variable" }, { - "type": "STRING", - "value": "=" - }, - { - "type": "SYMBOL", - "name": "_expression" + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "=" + }, + { + "type": "SYMBOL", + "name": "_expression" + } + ] + }, + { + "type": "BLANK" + } + ] } ] }, diff --git a/src/parser.c b/src/parser.c index 73487ac..46dab44 100644 --- a/src/parser.c +++ b/src/parser.c @@ -1521,15 +1521,15 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [322] = 308, [323] = 307, [324] = 324, - [325] = 324, + [325] = 325, [326] = 326, [327] = 327, [328] = 324, - [329] = 329, + [329] = 324, [330] = 330, [331] = 326, [332] = 327, - [333] = 329, + [333] = 333, [334] = 326, [335] = 335, [336] = 336, @@ -1543,14 +1543,14 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [344] = 344, [345] = 345, [346] = 330, - [347] = 347, - [348] = 324, + [347] = 324, + [348] = 326, [349] = 349, - [350] = 326, + [350] = 341, [351] = 330, [352] = 327, [353] = 327, - [354] = 341, + [354] = 324, [355] = 327, [356] = 345, [357] = 327, @@ -1562,16 +1562,16 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [363] = 326, [364] = 341, [365] = 324, - [366] = 324, - [367] = 367, + [366] = 366, + [367] = 326, [368] = 326, [369] = 330, [370] = 341, - [371] = 326, + [371] = 341, [372] = 324, - [373] = 341, + [373] = 324, [374] = 330, - [375] = 324, + [375] = 375, [376] = 376, [377] = 324, [378] = 330, @@ -1579,20 +1579,20 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [380] = 380, [381] = 341, [382] = 382, - [383] = 383, + [383] = 326, [384] = 327, [385] = 326, [386] = 341, - [387] = 326, + [387] = 333, [388] = 341, [389] = 324, [390] = 330, [391] = 326, [392] = 327, - [393] = 329, - [394] = 329, + [393] = 333, + [394] = 330, [395] = 341, - [396] = 329, + [396] = 333, [397] = 330, [398] = 327, [399] = 330, @@ -1600,7 +1600,7 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [401] = 324, [402] = 326, [403] = 330, - [404] = 329, + [404] = 333, [405] = 327, [406] = 406, [407] = 345, @@ -1612,10 +1612,10 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [413] = 324, [414] = 330, [415] = 326, - [416] = 329, + [416] = 333, [417] = 341, [418] = 341, - [419] = 330, + [419] = 333, [420] = 327, [421] = 421, [422] = 330, @@ -1638,27 +1638,27 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [439] = 439, [440] = 440, [441] = 441, - [442] = 441, - [443] = 440, - [444] = 444, - [445] = 445, - [446] = 440, - [447] = 441, - [448] = 448, - [449] = 449, - [450] = 450, + [442] = 4, + [443] = 443, + [444] = 6, + [445] = 440, + [446] = 446, + [447] = 439, + [448] = 5, + [449] = 439, + [450] = 440, [451] = 451, [452] = 452, [453] = 453, [454] = 454, [455] = 455, - [456] = 5, - [457] = 455, - [458] = 455, + [456] = 456, + [457] = 457, + [458] = 458, [459] = 459, - [460] = 6, - [461] = 4, - [462] = 462, + [460] = 459, + [461] = 461, + [462] = 459, [463] = 463, [464] = 464, [465] = 465, @@ -1671,7 +1671,7 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [472] = 472, [473] = 473, [474] = 474, - [475] = 463, + [475] = 464, [476] = 476, [477] = 477, [478] = 478, @@ -1681,23 +1681,23 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [482] = 482, [483] = 483, [484] = 484, - [485] = 476, + [485] = 473, [486] = 484, [487] = 487, - [488] = 483, - [489] = 463, + [488] = 476, + [489] = 464, [490] = 473, - [491] = 480, - [492] = 482, - [493] = 482, - [494] = 483, - [495] = 495, - [496] = 480, + [491] = 482, + [492] = 492, + [493] = 465, + [494] = 487, + [495] = 487, + [496] = 465, [497] = 476, [498] = 498, [499] = 499, - [500] = 500, - [501] = 473, + [500] = 482, + [501] = 501, [502] = 502, [503] = 484, [504] = 504, @@ -1705,37 +1705,37 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [506] = 506, [507] = 507, [508] = 508, - [509] = 507, - [510] = 507, + [509] = 509, + [510] = 510, [511] = 511, [512] = 512, - [513] = 507, - [514] = 511, + [513] = 508, + [514] = 508, [515] = 515, [516] = 516, [517] = 517, - [518] = 511, - [519] = 507, - [520] = 520, + [518] = 517, + [519] = 508, + [520] = 517, [521] = 521, - [522] = 511, - [523] = 523, - [524] = 524, - [525] = 507, - [526] = 507, - [527] = 507, - [528] = 507, - [529] = 507, - [530] = 507, - [531] = 507, - [532] = 507, + [522] = 522, + [523] = 517, + [524] = 508, + [525] = 525, + [526] = 508, + [527] = 508, + [528] = 528, + [529] = 508, + [530] = 508, + [531] = 531, + [532] = 508, [533] = 533, - [534] = 507, + [534] = 508, [535] = 535, [536] = 536, - [537] = 537, - [538] = 538, - [539] = 539, + [537] = 508, + [538] = 508, + [539] = 508, [540] = 540, [541] = 541, [542] = 542, @@ -1744,8 +1744,8 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [545] = 545, [546] = 546, [547] = 547, - [548] = 542, - [549] = 542, + [548] = 545, + [549] = 545, }; static bool ts_lex(TSLexer *lexer, TSStateId state) { @@ -4329,35 +4329,35 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [436] = {.lex_state = 111}, [437] = {.lex_state = 111}, [438] = {.lex_state = 111}, - [439] = {.lex_state = 5}, + [439] = {.lex_state = 14}, [440] = {.lex_state = 14}, - [441] = {.lex_state = 14}, - [442] = {.lex_state = 14}, - [443] = {.lex_state = 14}, - [444] = {.lex_state = 5}, + [441] = {.lex_state = 5}, + [442] = {.lex_state = 0}, + [443] = {.lex_state = 5}, + [444] = {.lex_state = 0}, [445] = {.lex_state = 14}, [446] = {.lex_state = 14}, [447] = {.lex_state = 14}, [448] = {.lex_state = 0}, - [449] = {.lex_state = 5}, + [449] = {.lex_state = 14}, [450] = {.lex_state = 14}, [451] = {.lex_state = 0}, - [452] = {.lex_state = 0}, - [453] = {.lex_state = 0}, + [452] = {.lex_state = 5}, + [453] = {.lex_state = 14}, [454] = {.lex_state = 0}, - [455] = {.lex_state = 21}, + [455] = {.lex_state = 0}, [456] = {.lex_state = 0}, - [457] = {.lex_state = 21}, - [458] = {.lex_state = 21}, + [457] = {.lex_state = 0}, + [458] = {.lex_state = 0}, [459] = {.lex_state = 21}, - [460] = {.lex_state = 0}, - [461] = {.lex_state = 0}, - [462] = {.lex_state = 5}, - [463] = {.lex_state = 0}, + [460] = {.lex_state = 21}, + [461] = {.lex_state = 21}, + [462] = {.lex_state = 21}, + [463] = {.lex_state = 5}, [464] = {.lex_state = 0}, [465] = {.lex_state = 0}, [466] = {.lex_state = 0}, - [467] = {.lex_state = 0}, + [467] = {.lex_state = 5}, [468] = {.lex_state = 0}, [469] = {.lex_state = 0}, [470] = {.lex_state = 0}, @@ -4367,10 +4367,10 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [474] = {.lex_state = 0}, [475] = {.lex_state = 0}, [476] = {.lex_state = 0}, - [477] = {.lex_state = 21}, - [478] = {.lex_state = 5}, - [479] = {.lex_state = 0}, - [480] = {.lex_state = 0}, + [477] = {.lex_state = 0}, + [478] = {.lex_state = 0}, + [479] = {.lex_state = 21}, + [480] = {.lex_state = 5}, [481] = {.lex_state = 0}, [482] = {.lex_state = 0}, [483] = {.lex_state = 0}, @@ -4388,20 +4388,20 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [495] = {.lex_state = 0}, [496] = {.lex_state = 0}, [497] = {.lex_state = 0}, - [498] = {.lex_state = 21}, + [498] = {.lex_state = 0}, [499] = {.lex_state = 0}, [500] = {.lex_state = 0}, - [501] = {.lex_state = 0}, + [501] = {.lex_state = 21}, [502] = {.lex_state = 5}, [503] = {.lex_state = 0}, - [504] = {.lex_state = 5}, + [504] = {.lex_state = 0}, [505] = {.lex_state = 0}, - [506] = {.lex_state = 21}, - [507] = {.lex_state = 21}, - [508] = {.lex_state = 0}, + [506] = {.lex_state = 0}, + [507] = {.lex_state = 0}, + [508] = {.lex_state = 21}, [509] = {.lex_state = 21}, [510] = {.lex_state = 21}, - [511] = {.lex_state = 21}, + [511] = {.lex_state = 0}, [512] = {.lex_state = 21}, [513] = {.lex_state = 21}, [514] = {.lex_state = 21}, @@ -4410,26 +4410,26 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [517] = {.lex_state = 21}, [518] = {.lex_state = 21}, [519] = {.lex_state = 21}, - [520] = {.lex_state = 0}, + [520] = {.lex_state = 21}, [521] = {.lex_state = 0}, [522] = {.lex_state = 21}, [523] = {.lex_state = 21}, - [524] = {.lex_state = 5}, - [525] = {.lex_state = 21}, + [524] = {.lex_state = 21}, + [525] = {.lex_state = 0}, [526] = {.lex_state = 21}, [527] = {.lex_state = 21}, - [528] = {.lex_state = 21}, + [528] = {.lex_state = 0}, [529] = {.lex_state = 21}, [530] = {.lex_state = 21}, [531] = {.lex_state = 21}, [532] = {.lex_state = 21}, - [533] = {.lex_state = 21}, + [533] = {.lex_state = 5}, [534] = {.lex_state = 21}, [535] = {.lex_state = 21}, [536] = {.lex_state = 0}, - [537] = {.lex_state = 0}, - [538] = {.lex_state = 0}, - [539] = {.lex_state = 0}, + [537] = {.lex_state = 21}, + [538] = {.lex_state = 21}, + [539] = {.lex_state = 21}, [540] = {.lex_state = 17}, [541] = {.lex_state = 0}, [542] = {.lex_state = 0}, @@ -4833,7 +4833,7 @@ static const uint16_t ts_small_parse_table[] = { sym_arguments, STATE(35), 1, aux_sym_test_expression_repeat1, - STATE(371), 1, + STATE(367), 1, sym_binary_operator, ACTIONS(46), 6, anon_sym_true, @@ -5048,9 +5048,9 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_QMARK_COLON, anon_sym_isnot, [540] = 4, - STATE(373), 1, + STATE(371), 1, sym_binary_operator, - STATE(532), 1, + STATE(524), 1, sym_test_operator, ACTIONS(70), 19, anon_sym_in, @@ -5162,9 +5162,9 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_is, ACTIONS(82), 1, anon_sym_isnot, - STATE(373), 1, + STATE(371), 1, sym_binary_operator, - STATE(532), 1, + STATE(524), 1, sym_test_operator, ACTIONS(76), 5, aux_sym__name_token1, @@ -5217,9 +5217,9 @@ static const uint16_t ts_small_parse_table[] = { [724] = 5, ACTIONS(84), 1, anon_sym_COLON, - STATE(373), 1, + STATE(371), 1, sym_binary_operator, - STATE(532), 1, + STATE(524), 1, sym_test_operator, ACTIONS(70), 19, anon_sym_in, @@ -5324,9 +5324,9 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_QMARK_COLON, anon_sym_isnot, [842] = 4, - STATE(373), 1, + STATE(371), 1, sym_binary_operator, - STATE(532), 1, + STATE(524), 1, sym_test_operator, ACTIONS(91), 19, anon_sym_in, @@ -5549,9 +5549,9 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_is, ACTIONS(82), 1, anon_sym_isnot, - STATE(373), 1, + STATE(371), 1, sym_binary_operator, - STATE(532), 1, + STATE(524), 1, sym_test_operator, ACTIONS(99), 5, aux_sym__name_token1, @@ -5658,9 +5658,9 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_QMARK_COLON, anon_sym_isnot, [1210] = 4, - STATE(373), 1, + STATE(371), 1, sym_binary_operator, - STATE(532), 1, + STATE(524), 1, sym_test_operator, ACTIONS(105), 19, anon_sym_in, @@ -5770,9 +5770,9 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_is, ACTIONS(82), 1, anon_sym_isnot, - STATE(373), 1, + STATE(371), 1, sym_binary_operator, - STATE(532), 1, + STATE(524), 1, sym_test_operator, ACTIONS(113), 5, aux_sym__name_token1, @@ -6095,7 +6095,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_QMARK_COLON, anon_sym_isnot, [1688] = 5, - STATE(366), 1, + STATE(354), 1, sym_binary_operator, ACTIONS(127), 7, aux_sym__name_token1, @@ -9373,7 +9373,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_COLON, STATE(388), 1, sym_binary_operator, - STATE(509), 1, + STATE(513), 1, sym_test_operator, ACTIONS(70), 10, anon_sym_LT, @@ -9421,7 +9421,7 @@ static const uint16_t ts_small_parse_table[] = { [5206] = 4, STATE(388), 1, sym_binary_operator, - STATE(509), 1, + STATE(513), 1, sym_test_operator, ACTIONS(105), 10, anon_sym_LT, @@ -9470,7 +9470,7 @@ static const uint16_t ts_small_parse_table[] = { [5259] = 4, STATE(388), 1, sym_binary_operator, - STATE(509), 1, + STATE(513), 1, sym_test_operator, ACTIONS(91), 10, anon_sym_LT, @@ -9573,7 +9573,7 @@ static const uint16_t ts_small_parse_table[] = { [5375] = 4, STATE(388), 1, sym_binary_operator, - STATE(509), 1, + STATE(513), 1, sym_test_operator, ACTIONS(70), 10, anon_sym_LT, @@ -9628,7 +9628,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_QMARK, STATE(388), 1, sym_binary_operator, - STATE(509), 1, + STATE(513), 1, sym_test_operator, ACTIONS(40), 8, anon_sym_LT, @@ -9681,7 +9681,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_QMARK, STATE(388), 1, sym_binary_operator, - STATE(509), 1, + STATE(513), 1, sym_test_operator, ACTIONS(40), 8, anon_sym_LT, @@ -9781,7 +9781,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_QMARK, STATE(388), 1, sym_binary_operator, - STATE(509), 1, + STATE(513), 1, sym_test_operator, ACTIONS(40), 8, anon_sym_LT, @@ -9834,7 +9834,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_QMARK, STATE(417), 1, sym_binary_operator, - STATE(526), 1, + STATE(534), 1, sym_test_operator, ACTIONS(40), 8, anon_sym_LT, @@ -9880,7 +9880,7 @@ static const uint16_t ts_small_parse_table[] = { [5720] = 4, STATE(417), 1, sym_binary_operator, - STATE(526), 1, + STATE(534), 1, sym_test_operator, ACTIONS(105), 10, anon_sym_LT, @@ -9928,7 +9928,7 @@ static const uint16_t ts_small_parse_table[] = { [5772] = 4, STATE(417), 1, sym_binary_operator, - STATE(526), 1, + STATE(534), 1, sym_test_operator, ACTIONS(91), 10, anon_sym_LT, @@ -9982,7 +9982,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_QMARK, STATE(417), 1, sym_binary_operator, - STATE(526), 1, + STATE(534), 1, sym_test_operator, ACTIONS(40), 8, anon_sym_LT, @@ -10034,7 +10034,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_QMARK, STATE(417), 1, sym_binary_operator, - STATE(526), 1, + STATE(534), 1, sym_test_operator, ACTIONS(40), 8, anon_sym_LT, @@ -10086,7 +10086,7 @@ static const uint16_t ts_small_parse_table[] = { aux_sym_test_expression_repeat1, STATE(133), 1, sym_arguments, - STATE(387), 1, + STATE(383), 1, sym_binary_operator, ACTIONS(46), 4, anon_sym_with, @@ -10765,7 +10765,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_QMARK, STATE(400), 1, sym_binary_operator, - STATE(510), 1, + STATE(514), 1, sym_test_operator, ACTIONS(111), 7, anon_sym_PERCENT_RBRACE, @@ -10808,7 +10808,7 @@ static const uint16_t ts_small_parse_table[] = { [6764] = 4, STATE(400), 1, sym_binary_operator, - STATE(510), 1, + STATE(514), 1, sym_test_operator, ACTIONS(105), 10, anon_sym_LT, @@ -10859,7 +10859,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_QMARK, STATE(400), 1, sym_binary_operator, - STATE(510), 1, + STATE(514), 1, sym_test_operator, ACTIONS(74), 7, anon_sym_PERCENT_RBRACE, @@ -10908,7 +10908,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_QMARK, STATE(400), 1, sym_binary_operator, - STATE(510), 1, + STATE(514), 1, sym_test_operator, ACTIONS(97), 7, anon_sym_PERCENT_RBRACE, @@ -11003,7 +11003,7 @@ static const uint16_t ts_small_parse_table[] = { aux_sym_test_expression_repeat1, STATE(181), 1, sym_arguments, - STATE(350), 1, + STATE(348), 1, sym_binary_operator, ACTIONS(46), 2, anon_sym_QMARK, @@ -11047,7 +11047,7 @@ static const uint16_t ts_small_parse_table[] = { [7037] = 4, STATE(400), 1, sym_binary_operator, - STATE(510), 1, + STATE(514), 1, sym_test_operator, ACTIONS(91), 10, anon_sym_LT, @@ -11145,9 +11145,9 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_with, STATE(400), 1, sym_binary_operator, - STATE(444), 1, + STATE(441), 1, aux_sym_include_statement_repeat1, - STATE(510), 1, + STATE(514), 1, sym_test_operator, ACTIONS(269), 2, anon_sym_only, @@ -11278,7 +11278,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_QMARK_COLON, anon_sym_isnot, [7300] = 5, - STATE(375), 1, + STATE(373), 1, sym_binary_operator, ACTIONS(127), 2, anon_sym_QMARK, @@ -11331,7 +11331,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_QMARK, STATE(400), 1, sym_binary_operator, - STATE(510), 1, + STATE(514), 1, sym_test_operator, ACTIONS(273), 6, anon_sym_PERCENT_RBRACE, @@ -11418,7 +11418,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_COLON, STATE(370), 1, sym_binary_operator, - STATE(528), 1, + STATE(508), 1, sym_test_operator, ACTIONS(70), 10, anon_sym_LT, @@ -11596,7 +11596,7 @@ static const uint16_t ts_small_parse_table[] = { [7652] = 4, STATE(370), 1, sym_binary_operator, - STATE(528), 1, + STATE(508), 1, sym_test_operator, ACTIONS(70), 10, anon_sym_LT, @@ -11877,7 +11877,7 @@ static const uint16_t ts_small_parse_table[] = { [7974] = 4, STATE(370), 1, sym_binary_operator, - STATE(528), 1, + STATE(508), 1, sym_test_operator, ACTIONS(91), 10, anon_sym_LT, @@ -11927,7 +11927,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_QMARK, STATE(370), 1, sym_binary_operator, - STATE(528), 1, + STATE(508), 1, sym_test_operator, ACTIONS(97), 6, anon_sym_PERCENT_RBRACE, @@ -11975,7 +11975,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_QMARK, STATE(370), 1, sym_binary_operator, - STATE(528), 1, + STATE(508), 1, sym_test_operator, ACTIONS(74), 6, anon_sym_PERCENT_RBRACE, @@ -12023,7 +12023,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_QMARK, STATE(370), 1, sym_binary_operator, - STATE(528), 1, + STATE(508), 1, sym_test_operator, ACTIONS(111), 6, anon_sym_PERCENT_RBRACE, @@ -12065,7 +12065,7 @@ static const uint16_t ts_small_parse_table[] = { [8190] = 4, STATE(370), 1, sym_binary_operator, - STATE(528), 1, + STATE(508), 1, sym_test_operator, ACTIONS(105), 10, anon_sym_LT, @@ -12158,7 +12158,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_QMARK, STATE(341), 1, sym_binary_operator, - STATE(525), 1, + STATE(532), 1, sym_test_operator, ACTIONS(74), 5, anon_sym_PERCENT_RBRACE, @@ -12199,7 +12199,7 @@ static const uint16_t ts_small_parse_table[] = { [8340] = 4, STATE(341), 1, sym_binary_operator, - STATE(525), 1, + STATE(532), 1, sym_test_operator, ACTIONS(105), 10, anon_sym_LT, @@ -12248,7 +12248,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_QMARK, STATE(341), 1, sym_binary_operator, - STATE(525), 1, + STATE(532), 1, sym_test_operator, ACTIONS(97), 5, anon_sym_PERCENT_RBRACE, @@ -12381,7 +12381,7 @@ static const uint16_t ts_small_parse_table[] = { [8548] = 4, STATE(341), 1, sym_binary_operator, - STATE(525), 1, + STATE(532), 1, sym_test_operator, ACTIONS(91), 10, anon_sym_LT, @@ -12557,7 +12557,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_QMARK, STATE(341), 1, sym_binary_operator, - STATE(525), 1, + STATE(532), 1, sym_test_operator, ACTIONS(111), 5, anon_sym_PERCENT_RBRACE, @@ -12650,9 +12650,9 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_isnot, ACTIONS(307), 1, anon_sym_QMARK, - STATE(354), 1, + STATE(350), 1, sym_binary_operator, - STATE(513), 1, + STATE(526), 1, sym_test_operator, ACTIONS(74), 4, anon_sym_RBRACE, @@ -12700,7 +12700,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_only, STATE(341), 1, sym_binary_operator, - STATE(525), 1, + STATE(532), 1, sym_test_operator, ACTIONS(309), 3, anon_sym_PERCENT_RBRACE, @@ -12781,9 +12781,9 @@ static const uint16_t ts_small_parse_table[] = { [9000] = 5, ACTIONS(316), 1, anon_sym_COLON, - STATE(354), 1, + STATE(350), 1, sym_binary_operator, - STATE(513), 1, + STATE(526), 1, sym_test_operator, ACTIONS(70), 7, anon_sym_LT, @@ -12904,9 +12904,9 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_QMARK_COLON, anon_sym_isnot, [9136] = 4, - STATE(354), 1, + STATE(350), 1, sym_binary_operator, - STATE(513), 1, + STATE(526), 1, sym_test_operator, ACTIONS(70), 7, anon_sym_LT, @@ -12994,9 +12994,9 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_isnot, ACTIONS(307), 1, anon_sym_QMARK, - STATE(354), 1, + STATE(350), 1, sym_binary_operator, - STATE(513), 1, + STATE(526), 1, sym_test_operator, ACTIONS(97), 4, anon_sym_RBRACE, @@ -13040,9 +13040,9 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_isnot, ACTIONS(307), 1, anon_sym_QMARK, - STATE(354), 1, + STATE(350), 1, sym_binary_operator, - STATE(513), 1, + STATE(526), 1, sym_test_operator, ACTIONS(111), 4, anon_sym_RBRACE, @@ -13123,9 +13123,9 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_QMARK_QMARK, anon_sym_QMARK_COLON, [9384] = 4, - STATE(354), 1, + STATE(350), 1, sym_binary_operator, - STATE(513), 1, + STATE(526), 1, sym_test_operator, ACTIONS(91), 7, anon_sym_LT, @@ -13165,9 +13165,9 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_QMARK_COLON, anon_sym_isnot, [9430] = 4, - STATE(354), 1, + STATE(350), 1, sym_binary_operator, - STATE(513), 1, + STATE(526), 1, sym_test_operator, ACTIONS(105), 7, anon_sym_LT, @@ -13298,7 +13298,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_QMARK, STATE(386), 1, sym_binary_operator, - STATE(507), 1, + STATE(538), 1, sym_test_operator, ACTIONS(111), 3, anon_sym_RBRACE, @@ -13413,7 +13413,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_QMARK_COLON, anon_sym_isnot, [9703] = 5, - STATE(348), 1, + STATE(347), 1, sym_binary_operator, ACTIONS(127), 2, anon_sym_QMARK, @@ -13463,7 +13463,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_QMARK, STATE(417), 1, sym_binary_operator, - STATE(526), 1, + STATE(534), 1, sym_test_operator, ACTIONS(327), 3, anon_sym_PERCENT_RBRACE, @@ -13508,7 +13508,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_QMARK, STATE(417), 1, sym_binary_operator, - STATE(526), 1, + STATE(534), 1, sym_test_operator, ACTIONS(329), 3, anon_sym_PERCENT_RBRACE, @@ -13553,7 +13553,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_QMARK, STATE(417), 1, sym_binary_operator, - STATE(526), 1, + STATE(534), 1, sym_test_operator, ACTIONS(331), 3, anon_sym_RBRACE_RBRACE, @@ -13598,7 +13598,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_QMARK, STATE(386), 1, sym_binary_operator, - STATE(507), 1, + STATE(538), 1, sym_test_operator, ACTIONS(74), 3, anon_sym_RBRACE, @@ -13643,7 +13643,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_QMARK, STATE(417), 1, sym_binary_operator, - STATE(526), 1, + STATE(534), 1, sym_test_operator, ACTIONS(333), 3, anon_sym_PERCENT_RBRACE, @@ -13762,7 +13762,7 @@ static const uint16_t ts_small_parse_table[] = { [10101] = 4, STATE(386), 1, sym_binary_operator, - STATE(507), 1, + STATE(538), 1, sym_test_operator, ACTIONS(105), 7, anon_sym_LT, @@ -13922,7 +13922,7 @@ static const uint16_t ts_small_parse_table[] = { [10273] = 4, STATE(386), 1, sym_binary_operator, - STATE(507), 1, + STATE(538), 1, sym_test_operator, ACTIONS(91), 7, anon_sym_LT, @@ -13969,7 +13969,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_QMARK, STATE(386), 1, sym_binary_operator, - STATE(507), 1, + STATE(538), 1, sym_test_operator, ACTIONS(97), 3, anon_sym_RBRACE, @@ -14057,9 +14057,9 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_RBRACK, STATE(417), 1, sym_binary_operator, - STATE(488), 1, + STATE(495), 1, aux_sym_array_repeat1, - STATE(526), 1, + STATE(534), 1, sym_test_operator, ACTIONS(40), 5, anon_sym_LT, @@ -14230,7 +14230,7 @@ static const uint16_t ts_small_parse_table[] = { sym_binary_operator, STATE(494), 1, aux_sym_array_repeat1, - STATE(526), 1, + STATE(534), 1, sym_test_operator, ACTIONS(40), 5, anon_sym_LT, @@ -14615,7 +14615,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_QMARK, STATE(417), 1, sym_binary_operator, - STATE(526), 1, + STATE(534), 1, sym_test_operator, ACTIONS(350), 3, anon_sym_PERCENT_RBRACE, @@ -14754,9 +14754,9 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_RBRACK, STATE(417), 1, sym_binary_operator, - STATE(483), 1, + STATE(487), 1, aux_sym_array_repeat1, - STATE(526), 1, + STATE(534), 1, sym_test_operator, ACTIONS(40), 5, anon_sym_LT, @@ -15155,7 +15155,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_QMARK, STATE(417), 1, sym_binary_operator, - STATE(526), 1, + STATE(534), 1, sym_test_operator, ACTIONS(356), 2, anon_sym_COMMA, @@ -15191,7 +15191,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_QMARK_QMARK, anon_sym_QMARK_COLON, [11712] = 5, - STATE(325), 1, + STATE(329), 1, sym_binary_operator, ACTIONS(127), 2, anon_sym_QMARK, @@ -15278,7 +15278,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_QMARK, STATE(395), 1, sym_binary_operator, - STATE(534), 1, + STATE(539), 1, sym_test_operator, ACTIONS(111), 2, anon_sym_import, @@ -15322,7 +15322,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_QMARK, STATE(395), 1, sym_binary_operator, - STATE(534), 1, + STATE(539), 1, sym_test_operator, ACTIONS(74), 2, anon_sym_import, @@ -15360,7 +15360,7 @@ static const uint16_t ts_small_parse_table[] = { [11902] = 4, STATE(395), 1, sym_binary_operator, - STATE(534), 1, + STATE(539), 1, sym_test_operator, ACTIONS(105), 7, anon_sym_LT, @@ -15406,7 +15406,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_QMARK, STATE(395), 1, sym_binary_operator, - STATE(534), 1, + STATE(539), 1, sym_test_operator, ACTIONS(97), 2, anon_sym_import, @@ -15450,7 +15450,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_QMARK, STATE(417), 1, sym_binary_operator, - STATE(526), 1, + STATE(534), 1, sym_test_operator, ACTIONS(360), 2, anon_sym_COMMA, @@ -15564,7 +15564,7 @@ static const uint16_t ts_small_parse_table[] = { [12130] = 4, STATE(395), 1, sym_binary_operator, - STATE(534), 1, + STATE(539), 1, sym_test_operator, ACTIONS(91), 7, anon_sym_LT, @@ -15648,7 +15648,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_QMARK, STATE(418), 1, sym_binary_operator, - STATE(531), 1, + STATE(537), 1, sym_test_operator, ACTIONS(111), 2, anon_sym_as, @@ -15692,7 +15692,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_QMARK, STATE(418), 1, sym_binary_operator, - STATE(531), 1, + STATE(537), 1, sym_test_operator, ACTIONS(74), 2, anon_sym_as, @@ -15730,7 +15730,7 @@ static const uint16_t ts_small_parse_table[] = { [12318] = 4, STATE(418), 1, sym_binary_operator, - STATE(531), 1, + STATE(537), 1, sym_test_operator, ACTIONS(105), 7, anon_sym_LT, @@ -15776,7 +15776,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_QMARK, STATE(418), 1, sym_binary_operator, - STATE(531), 1, + STATE(537), 1, sym_test_operator, ACTIONS(97), 2, anon_sym_as, @@ -15814,7 +15814,7 @@ static const uint16_t ts_small_parse_table[] = { [12414] = 4, STATE(418), 1, sym_binary_operator, - STATE(531), 1, + STATE(537), 1, sym_test_operator, ACTIONS(91), 7, anon_sym_LT, @@ -15860,7 +15860,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_QMARK, STATE(417), 1, sym_binary_operator, - STATE(526), 1, + STATE(534), 1, sym_test_operator, ACTIONS(364), 2, anon_sym_COMMA, @@ -15946,7 +15946,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_RBRACK, STATE(388), 1, sym_binary_operator, - STATE(509), 1, + STATE(513), 1, sym_test_operator, ACTIONS(40), 5, anon_sym_LT, @@ -16063,7 +16063,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_QMARK, STATE(417), 1, sym_binary_operator, - STATE(526), 1, + STATE(534), 1, sym_test_operator, ACTIONS(370), 2, anon_sym_COMMA, @@ -16184,7 +16184,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_QMARK, STATE(417), 1, sym_binary_operator, - STATE(526), 1, + STATE(534), 1, sym_test_operator, ACTIONS(378), 2, anon_sym_COMMA, @@ -16228,7 +16228,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_QMARK, STATE(386), 1, sym_binary_operator, - STATE(507), 1, + STATE(538), 1, sym_test_operator, ACTIONS(380), 2, anon_sym_RBRACE, @@ -16272,7 +16272,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_QMARK, STATE(417), 1, sym_binary_operator, - STATE(526), 1, + STATE(534), 1, sym_test_operator, ACTIONS(382), 2, anon_sym_COMMA, @@ -16392,7 +16392,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_QMARK, STATE(417), 1, sym_binary_operator, - STATE(526), 1, + STATE(534), 1, sym_test_operator, ACTIONS(384), 2, anon_sym_COMMA, @@ -16440,7 +16440,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_RBRACK, STATE(388), 1, sym_binary_operator, - STATE(509), 1, + STATE(513), 1, sym_test_operator, ACTIONS(40), 5, anon_sym_LT, @@ -16481,7 +16481,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_QMARK, STATE(417), 1, sym_binary_operator, - STATE(526), 1, + STATE(534), 1, sym_test_operator, ACTIONS(390), 2, anon_sym_COMMA, @@ -16563,7 +16563,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_QMARK, STATE(386), 1, sym_binary_operator, - STATE(507), 1, + STATE(538), 1, sym_test_operator, ACTIONS(392), 2, anon_sym_RBRACE, @@ -16611,7 +16611,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_RBRACK, STATE(388), 1, sym_binary_operator, - STATE(509), 1, + STATE(513), 1, sym_test_operator, ACTIONS(40), 5, anon_sym_LT, @@ -16728,7 +16728,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_QMARK, STATE(417), 1, sym_binary_operator, - STATE(526), 1, + STATE(534), 1, sym_test_operator, ACTIONS(398), 2, anon_sym_COMMA, @@ -16776,7 +16776,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_RBRACK, STATE(388), 1, sym_binary_operator, - STATE(509), 1, + STATE(513), 1, sym_test_operator, ACTIONS(40), 5, anon_sym_LT, @@ -16859,7 +16859,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_RBRACK, STATE(388), 1, sym_binary_operator, - STATE(509), 1, + STATE(513), 1, sym_test_operator, ACTIONS(40), 5, anon_sym_LT, @@ -16942,7 +16942,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_RBRACK, STATE(388), 1, sym_binary_operator, - STATE(509), 1, + STATE(513), 1, sym_test_operator, ACTIONS(40), 5, anon_sym_LT, @@ -16985,7 +16985,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_RBRACK, STATE(417), 1, sym_binary_operator, - STATE(526), 1, + STATE(534), 1, sym_test_operator, ACTIONS(40), 5, anon_sym_LT, @@ -17028,7 +17028,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_RPAREN, STATE(417), 1, sym_binary_operator, - STATE(526), 1, + STATE(534), 1, sym_test_operator, ACTIONS(40), 5, anon_sym_LT, @@ -17071,7 +17071,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_RBRACK, STATE(417), 1, sym_binary_operator, - STATE(526), 1, + STATE(534), 1, sym_test_operator, ACTIONS(40), 5, anon_sym_LT, @@ -17114,7 +17114,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_RBRACK, STATE(417), 1, sym_binary_operator, - STATE(526), 1, + STATE(534), 1, sym_test_operator, ACTIONS(40), 5, anon_sym_LT, @@ -17157,7 +17157,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_RBRACK, STATE(417), 1, sym_binary_operator, - STATE(526), 1, + STATE(534), 1, sym_test_operator, ACTIONS(40), 5, anon_sym_LT, @@ -17200,7 +17200,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_RBRACE, STATE(386), 1, sym_binary_operator, - STATE(507), 1, + STATE(538), 1, sym_test_operator, ACTIONS(40), 5, anon_sym_LT, @@ -17323,7 +17323,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_as, STATE(418), 1, sym_binary_operator, - STATE(531), 1, + STATE(537), 1, sym_test_operator, ACTIONS(40), 5, anon_sym_LT, @@ -17366,7 +17366,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_RPAREN, STATE(417), 1, sym_binary_operator, - STATE(526), 1, + STATE(534), 1, sym_test_operator, ACTIONS(40), 5, anon_sym_LT, @@ -17409,7 +17409,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_RPAREN, STATE(417), 1, sym_binary_operator, - STATE(526), 1, + STATE(534), 1, sym_test_operator, ACTIONS(40), 5, anon_sym_LT, @@ -17452,7 +17452,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_import, STATE(395), 1, sym_binary_operator, - STATE(534), 1, + STATE(539), 1, sym_test_operator, ACTIONS(40), 5, anon_sym_LT, @@ -17495,7 +17495,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_RBRACK, STATE(417), 1, sym_binary_operator, - STATE(526), 1, + STATE(534), 1, sym_test_operator, ACTIONS(40), 5, anon_sym_LT, @@ -17538,7 +17538,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_RBRACK, STATE(417), 1, sym_binary_operator, - STATE(526), 1, + STATE(534), 1, sym_test_operator, ACTIONS(40), 5, anon_sym_LT, @@ -17581,7 +17581,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_RBRACK, STATE(417), 1, sym_binary_operator, - STATE(526), 1, + STATE(534), 1, sym_test_operator, ACTIONS(40), 5, anon_sym_LT, @@ -17624,7 +17624,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_RBRACK, STATE(417), 1, sym_binary_operator, - STATE(526), 1, + STATE(534), 1, sym_test_operator, ACTIONS(40), 5, anon_sym_LT, @@ -17667,7 +17667,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_RBRACK, STATE(417), 1, sym_binary_operator, - STATE(526), 1, + STATE(534), 1, sym_test_operator, ACTIONS(40), 5, anon_sym_LT, @@ -17710,7 +17710,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_RPAREN, STATE(417), 1, sym_binary_operator, - STATE(526), 1, + STATE(534), 1, sym_test_operator, ACTIONS(40), 5, anon_sym_LT, @@ -17876,7 +17876,7 @@ static const uint16_t ts_small_parse_table[] = { sym_unary_operator, STATE(421), 1, sym_hash_key, - STATE(485), 1, + STATE(488), 1, sym__hash_entry, ACTIONS(456), 2, anon_sym_PLUS, @@ -18332,7 +18332,7 @@ static const uint16_t ts_small_parse_table[] = { sym_unary_operator, STATE(421), 1, sym_hash_key, - STATE(538), 1, + STATE(528), 1, sym__hash_entry, ACTIONS(456), 2, anon_sym_PLUS, @@ -18383,7 +18383,7 @@ static const uint16_t ts_small_parse_table[] = { sym_unary_operator, STATE(421), 1, sym_hash_key, - STATE(538), 1, + STATE(528), 1, sym__hash_entry, ACTIONS(456), 2, anon_sym_PLUS, @@ -18434,7 +18434,7 @@ static const uint16_t ts_small_parse_table[] = { sym_unary_operator, STATE(521), 1, sym_arrow_function, - STATE(536), 1, + STATE(525), 1, sym_filter_argument, ACTIONS(446), 2, anon_sym_true, @@ -18484,7 +18484,7 @@ static const uint16_t ts_small_parse_table[] = { sym_unary_operator, STATE(421), 1, sym_hash_key, - STATE(538), 1, + STATE(528), 1, sym__hash_entry, ACTIONS(456), 2, anon_sym_PLUS, @@ -18535,7 +18535,7 @@ static const uint16_t ts_small_parse_table[] = { sym_argument_name, STATE(384), 1, sym_unary_operator, - STATE(480), 1, + STATE(482), 1, sym_argument, ACTIONS(446), 2, anon_sym_true, @@ -18585,7 +18585,7 @@ static const uint16_t ts_small_parse_table[] = { sym_unary_operator, STATE(421), 1, sym_hash_key, - STATE(538), 1, + STATE(528), 1, sym__hash_entry, ACTIONS(456), 2, anon_sym_PLUS, @@ -18636,7 +18636,7 @@ static const uint16_t ts_small_parse_table[] = { sym_unary_operator, STATE(421), 1, sym_hash_key, - STATE(538), 1, + STATE(528), 1, sym__hash_entry, ACTIONS(456), 2, anon_sym_PLUS, @@ -18687,7 +18687,7 @@ static const uint16_t ts_small_parse_table[] = { sym_argument_name, STATE(384), 1, sym_unary_operator, - STATE(496), 1, + STATE(500), 1, sym_argument, ACTIONS(446), 2, anon_sym_true, @@ -18737,7 +18737,7 @@ static const uint16_t ts_small_parse_table[] = { sym_unary_operator, STATE(421), 1, sym_hash_key, - STATE(538), 1, + STATE(528), 1, sym__hash_entry, ACTIONS(456), 2, anon_sym_PLUS, @@ -18786,7 +18786,7 @@ static const uint16_t ts_small_parse_table[] = { sym_argument_name, STATE(384), 1, sym_unary_operator, - STATE(508), 1, + STATE(511), 1, sym_argument, ACTIONS(446), 2, anon_sym_true, @@ -18834,7 +18834,7 @@ static const uint16_t ts_small_parse_table[] = { sym_unary_operator, STATE(421), 1, sym_hash_key, - STATE(538), 1, + STATE(528), 1, sym__hash_entry, ACTIONS(456), 2, anon_sym_PLUS, @@ -19571,7 +19571,7 @@ static const uint16_t ts_small_parse_table[] = { sym__expression, STATE(384), 1, sym_unary_operator, - STATE(520), 1, + STATE(507), 1, sym_arrow_function, ACTIONS(446), 2, anon_sym_true, @@ -19731,38 +19731,38 @@ static const uint16_t ts_small_parse_table[] = { sym_unary_expression, sym_ternary_expression, [17333] = 15, - ACTIONS(458), 1, - anon_sym_not, - ACTIONS(466), 1, + ACTIONS(442), 1, anon_sym_LBRACK, - ACTIONS(468), 1, - aux_sym__name_token1, - ACTIONS(472), 1, + ACTIONS(448), 1, sym_null, - ACTIONS(476), 1, + ACTIONS(452), 1, anon_sym_DQUOTE, - ACTIONS(478), 1, + ACTIONS(454), 1, anon_sym_LBRACE, - ACTIONS(580), 1, + ACTIONS(458), 1, + anon_sym_not, + ACTIONS(546), 1, anon_sym_LPAREN, - STATE(142), 1, + ACTIONS(568), 1, + aux_sym__name_token1, + STATE(5), 1, sym__name, - STATE(159), 1, + STATE(8), 1, sym_identifier, - STATE(178), 1, + STATE(252), 1, sym__expression, - STATE(357), 1, + STATE(384), 1, sym_unary_operator, - ACTIONS(456), 2, - anon_sym_PLUS, - anon_sym_DASH, - ACTIONS(470), 2, + ACTIONS(446), 2, anon_sym_true, anon_sym_false, - ACTIONS(582), 2, + ACTIONS(450), 2, aux_sym__string_token1, sym_number, - STATE(213), 11, + ACTIONS(456), 2, + anon_sym_PLUS, + anon_sym_DASH, + STATE(31), 11, sym__literal, sym_boolean, sym__string, @@ -19907,38 +19907,38 @@ static const uint16_t ts_small_parse_table[] = { sym_unary_expression, sym_ternary_expression, [17569] = 15, - ACTIONS(442), 1, + ACTIONS(458), 1, + anon_sym_not, + ACTIONS(466), 1, anon_sym_LBRACK, - ACTIONS(448), 1, + ACTIONS(468), 1, + aux_sym__name_token1, + ACTIONS(472), 1, sym_null, - ACTIONS(452), 1, + ACTIONS(476), 1, anon_sym_DQUOTE, - ACTIONS(454), 1, + ACTIONS(478), 1, anon_sym_LBRACE, - ACTIONS(458), 1, - anon_sym_not, - ACTIONS(546), 1, + ACTIONS(580), 1, anon_sym_LPAREN, - ACTIONS(568), 1, - aux_sym__name_token1, - STATE(5), 1, + STATE(142), 1, sym__name, - STATE(8), 1, + STATE(159), 1, sym_identifier, - STATE(227), 1, + STATE(178), 1, sym__expression, - STATE(398), 1, + STATE(357), 1, sym_unary_operator, - ACTIONS(446), 2, + ACTIONS(456), 2, + anon_sym_PLUS, + anon_sym_DASH, + ACTIONS(470), 2, anon_sym_true, anon_sym_false, - ACTIONS(450), 2, + ACTIONS(582), 2, aux_sym__string_token1, sym_number, - ACTIONS(456), 2, - anon_sym_PLUS, - anon_sym_DASH, - STATE(31), 11, + STATE(213), 11, sym__literal, sym_boolean, sym__string, @@ -20699,38 +20699,38 @@ static const uint16_t ts_small_parse_table[] = { sym_unary_expression, sym_ternary_expression, [18631] = 15, - ACTIONS(442), 1, + ACTIONS(458), 1, + anon_sym_not, + ACTIONS(466), 1, anon_sym_LBRACK, - ACTIONS(448), 1, + ACTIONS(468), 1, + aux_sym__name_token1, + ACTIONS(472), 1, sym_null, - ACTIONS(452), 1, + ACTIONS(476), 1, anon_sym_DQUOTE, - ACTIONS(454), 1, + ACTIONS(478), 1, anon_sym_LBRACE, - ACTIONS(458), 1, - anon_sym_not, - ACTIONS(546), 1, + ACTIONS(580), 1, anon_sym_LPAREN, - ACTIONS(568), 1, - aux_sym__name_token1, - STATE(5), 1, + STATE(142), 1, sym__name, - STATE(8), 1, + STATE(159), 1, sym_identifier, - STATE(252), 1, + STATE(172), 1, sym__expression, - STATE(384), 1, + STATE(352), 1, sym_unary_operator, - ACTIONS(446), 2, + ACTIONS(456), 2, + anon_sym_PLUS, + anon_sym_DASH, + ACTIONS(470), 2, anon_sym_true, anon_sym_false, - ACTIONS(450), 2, + ACTIONS(582), 2, aux_sym__string_token1, sym_number, - ACTIONS(456), 2, - anon_sym_PLUS, - anon_sym_DASH, - STATE(31), 11, + STATE(213), 11, sym__literal, sym_boolean, sym__string, @@ -20761,7 +20761,7 @@ static const uint16_t ts_small_parse_table[] = { sym__name, STATE(159), 1, sym_identifier, - STATE(172), 1, + STATE(163), 1, sym__expression, STATE(352), 1, sym_unary_operator, @@ -20849,7 +20849,7 @@ static const uint16_t ts_small_parse_table[] = { sym__name, STATE(159), 1, sym_identifier, - STATE(163), 1, + STATE(171), 1, sym__expression, STATE(352), 1, sym_unary_operator, @@ -21009,36 +21009,36 @@ static const uint16_t ts_small_parse_table[] = { [19044] = 15, ACTIONS(458), 1, anon_sym_not, - ACTIONS(466), 1, + ACTIONS(488), 1, + anon_sym_LPAREN, + ACTIONS(490), 1, anon_sym_LBRACK, - ACTIONS(468), 1, + ACTIONS(492), 1, aux_sym__name_token1, - ACTIONS(472), 1, + ACTIONS(496), 1, sym_null, - ACTIONS(476), 1, + ACTIONS(500), 1, anon_sym_DQUOTE, - ACTIONS(478), 1, + ACTIONS(502), 1, anon_sym_LBRACE, - ACTIONS(580), 1, - anon_sym_LPAREN, - STATE(142), 1, + STATE(18), 1, sym__name, - STATE(159), 1, + STATE(21), 1, sym_identifier, - STATE(171), 1, + STATE(24), 1, sym__expression, - STATE(352), 1, + STATE(355), 1, sym_unary_operator, ACTIONS(456), 2, anon_sym_PLUS, anon_sym_DASH, - ACTIONS(470), 2, + ACTIONS(494), 2, anon_sym_true, anon_sym_false, - ACTIONS(582), 2, + ACTIONS(498), 2, aux_sym__string_token1, sym_number, - STATE(213), 11, + STATE(32), 11, sym__literal, sym_boolean, sym__string, @@ -21535,38 +21535,38 @@ static const uint16_t ts_small_parse_table[] = { sym_unary_expression, sym_ternary_expression, [19752] = 15, - ACTIONS(458), 1, - anon_sym_not, - ACTIONS(488), 1, - anon_sym_LPAREN, - ACTIONS(490), 1, + ACTIONS(442), 1, anon_sym_LBRACK, - ACTIONS(492), 1, - aux_sym__name_token1, - ACTIONS(496), 1, + ACTIONS(448), 1, sym_null, - ACTIONS(500), 1, + ACTIONS(452), 1, anon_sym_DQUOTE, - ACTIONS(502), 1, + ACTIONS(454), 1, anon_sym_LBRACE, - STATE(18), 1, + ACTIONS(458), 1, + anon_sym_not, + ACTIONS(546), 1, + anon_sym_LPAREN, + ACTIONS(568), 1, + aux_sym__name_token1, + STATE(5), 1, sym__name, - STATE(21), 1, + STATE(8), 1, sym_identifier, - STATE(24), 1, + STATE(247), 1, sym__expression, - STATE(355), 1, + STATE(384), 1, sym_unary_operator, - ACTIONS(456), 2, - anon_sym_PLUS, - anon_sym_DASH, - ACTIONS(494), 2, + ACTIONS(446), 2, anon_sym_true, anon_sym_false, - ACTIONS(498), 2, + ACTIONS(450), 2, aux_sym__string_token1, sym_number, - STATE(32), 11, + ACTIONS(456), 2, + anon_sym_PLUS, + anon_sym_DASH, + STATE(31), 11, sym__literal, sym_boolean, sym__string, @@ -21579,38 +21579,38 @@ static const uint16_t ts_small_parse_table[] = { sym_unary_expression, sym_ternary_expression, [19811] = 15, - ACTIONS(442), 1, - anon_sym_LBRACK, - ACTIONS(448), 1, - sym_null, - ACTIONS(452), 1, - anon_sym_DQUOTE, - ACTIONS(454), 1, - anon_sym_LBRACE, ACTIONS(458), 1, anon_sym_not, - ACTIONS(546), 1, + ACTIONS(488), 1, anon_sym_LPAREN, - ACTIONS(568), 1, + ACTIONS(490), 1, + anon_sym_LBRACK, + ACTIONS(492), 1, aux_sym__name_token1, - STATE(5), 1, + ACTIONS(496), 1, + sym_null, + ACTIONS(500), 1, + anon_sym_DQUOTE, + ACTIONS(502), 1, + anon_sym_LBRACE, + STATE(13), 1, + sym__expression, + STATE(18), 1, sym__name, - STATE(8), 1, + STATE(21), 1, sym_identifier, - STATE(247), 1, - sym__expression, - STATE(384), 1, + STATE(355), 1, sym_unary_operator, - ACTIONS(446), 2, + ACTIONS(456), 2, + anon_sym_PLUS, + anon_sym_DASH, + ACTIONS(494), 2, anon_sym_true, anon_sym_false, - ACTIONS(450), 2, + ACTIONS(498), 2, aux_sym__string_token1, sym_number, - ACTIONS(456), 2, - anon_sym_PLUS, - anon_sym_DASH, - STATE(31), 11, + STATE(32), 11, sym__literal, sym_boolean, sym__string, @@ -21769,10 +21769,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DQUOTE, ACTIONS(502), 1, anon_sym_LBRACE, - STATE(13), 1, - sym__expression, STATE(18), 1, sym__name, + STATE(20), 1, + sym__expression, STATE(21), 1, sym_identifier, STATE(355), 1, @@ -21843,38 +21843,38 @@ static const uint16_t ts_small_parse_table[] = { sym_unary_expression, sym_ternary_expression, [20165] = 15, - ACTIONS(458), 1, - anon_sym_not, - ACTIONS(488), 1, - anon_sym_LPAREN, - ACTIONS(490), 1, + ACTIONS(442), 1, anon_sym_LBRACK, - ACTIONS(492), 1, - aux_sym__name_token1, - ACTIONS(496), 1, + ACTIONS(448), 1, sym_null, - ACTIONS(500), 1, + ACTIONS(452), 1, anon_sym_DQUOTE, - ACTIONS(502), 1, + ACTIONS(454), 1, anon_sym_LBRACE, - STATE(18), 1, + ACTIONS(458), 1, + anon_sym_not, + ACTIONS(546), 1, + anon_sym_LPAREN, + ACTIONS(568), 1, + aux_sym__name_token1, + STATE(5), 1, sym__name, - STATE(20), 1, - sym__expression, - STATE(21), 1, + STATE(8), 1, sym_identifier, - STATE(355), 1, + STATE(122), 1, + sym__expression, + STATE(405), 1, sym_unary_operator, - ACTIONS(456), 2, - anon_sym_PLUS, - anon_sym_DASH, - ACTIONS(494), 2, + ACTIONS(446), 2, anon_sym_true, anon_sym_false, - ACTIONS(498), 2, + ACTIONS(450), 2, aux_sym__string_token1, sym_number, - STATE(32), 11, + ACTIONS(456), 2, + anon_sym_PLUS, + anon_sym_DASH, + STATE(31), 11, sym__literal, sym_boolean, sym__string, @@ -21931,38 +21931,38 @@ static const uint16_t ts_small_parse_table[] = { sym_unary_expression, sym_ternary_expression, [20283] = 15, - ACTIONS(442), 1, + ACTIONS(458), 1, + anon_sym_not, + ACTIONS(466), 1, anon_sym_LBRACK, - ACTIONS(448), 1, + ACTIONS(468), 1, + aux_sym__name_token1, + ACTIONS(472), 1, sym_null, - ACTIONS(452), 1, + ACTIONS(476), 1, anon_sym_DQUOTE, - ACTIONS(454), 1, + ACTIONS(478), 1, anon_sym_LBRACE, - ACTIONS(458), 1, - anon_sym_not, - ACTIONS(546), 1, + ACTIONS(580), 1, anon_sym_LPAREN, - ACTIONS(568), 1, - aux_sym__name_token1, - STATE(5), 1, + STATE(142), 1, sym__name, - STATE(8), 1, + STATE(159), 1, sym_identifier, - STATE(122), 1, + STATE(271), 1, sym__expression, - STATE(405), 1, + STATE(357), 1, sym_unary_operator, - ACTIONS(446), 2, + ACTIONS(456), 2, + anon_sym_PLUS, + anon_sym_DASH, + ACTIONS(470), 2, anon_sym_true, anon_sym_false, - ACTIONS(450), 2, + ACTIONS(582), 2, aux_sym__string_token1, sym_number, - ACTIONS(456), 2, - anon_sym_PLUS, - anon_sym_DASH, - STATE(31), 11, + STATE(213), 11, sym__literal, sym_boolean, sym__string, @@ -22283,38 +22283,38 @@ static const uint16_t ts_small_parse_table[] = { sym_unary_expression, sym_ternary_expression, [20755] = 15, - ACTIONS(458), 1, - anon_sym_not, - ACTIONS(466), 1, + ACTIONS(442), 1, anon_sym_LBRACK, - ACTIONS(468), 1, - aux_sym__name_token1, - ACTIONS(472), 1, + ACTIONS(448), 1, sym_null, - ACTIONS(476), 1, + ACTIONS(452), 1, anon_sym_DQUOTE, - ACTIONS(478), 1, + ACTIONS(454), 1, anon_sym_LBRACE, - ACTIONS(580), 1, + ACTIONS(458), 1, + anon_sym_not, + ACTIONS(546), 1, anon_sym_LPAREN, - STATE(142), 1, + ACTIONS(568), 1, + aux_sym__name_token1, + STATE(5), 1, sym__name, - STATE(159), 1, + STATE(8), 1, sym_identifier, - STATE(271), 1, + STATE(124), 1, sym__expression, - STATE(357), 1, + STATE(405), 1, sym_unary_operator, - ACTIONS(456), 2, - anon_sym_PLUS, - anon_sym_DASH, - ACTIONS(470), 2, + ACTIONS(446), 2, anon_sym_true, anon_sym_false, - ACTIONS(582), 2, + ACTIONS(450), 2, aux_sym__string_token1, sym_number, - STATE(213), 11, + ACTIONS(456), 2, + anon_sym_PLUS, + anon_sym_DASH, + STATE(31), 11, sym__literal, sym_boolean, sym__string, @@ -22477,7 +22477,7 @@ static const uint16_t ts_small_parse_table[] = { sym__name, STATE(8), 1, sym_identifier, - STATE(124), 1, + STATE(123), 1, sym__expression, STATE(405), 1, sym_unary_operator, @@ -22723,38 +22723,38 @@ static const uint16_t ts_small_parse_table[] = { sym_unary_expression, sym_ternary_expression, [21345] = 15, - ACTIONS(442), 1, + ACTIONS(458), 1, + anon_sym_not, + ACTIONS(466), 1, anon_sym_LBRACK, - ACTIONS(448), 1, + ACTIONS(468), 1, + aux_sym__name_token1, + ACTIONS(472), 1, sym_null, - ACTIONS(452), 1, + ACTIONS(476), 1, anon_sym_DQUOTE, - ACTIONS(454), 1, + ACTIONS(478), 1, anon_sym_LBRACE, - ACTIONS(458), 1, - anon_sym_not, - ACTIONS(546), 1, + ACTIONS(580), 1, anon_sym_LPAREN, - ACTIONS(568), 1, - aux_sym__name_token1, - STATE(5), 1, + STATE(142), 1, sym__name, - STATE(8), 1, + STATE(159), 1, sym_identifier, - STATE(123), 1, + STATE(189), 1, sym__expression, - STATE(405), 1, + STATE(357), 1, sym_unary_operator, - ACTIONS(446), 2, + ACTIONS(456), 2, + anon_sym_PLUS, + anon_sym_DASH, + ACTIONS(470), 2, anon_sym_true, anon_sym_false, - ACTIONS(450), 2, + ACTIONS(582), 2, aux_sym__string_token1, sym_number, - ACTIONS(456), 2, - anon_sym_PLUS, - anon_sym_DASH, - STATE(31), 11, + STATE(213), 11, sym__literal, sym_boolean, sym__string, @@ -22767,38 +22767,38 @@ static const uint16_t ts_small_parse_table[] = { sym_unary_expression, sym_ternary_expression, [21404] = 15, - ACTIONS(458), 1, - anon_sym_not, - ACTIONS(466), 1, + ACTIONS(442), 1, anon_sym_LBRACK, - ACTIONS(468), 1, - aux_sym__name_token1, - ACTIONS(472), 1, + ACTIONS(448), 1, sym_null, - ACTIONS(476), 1, + ACTIONS(452), 1, anon_sym_DQUOTE, - ACTIONS(478), 1, + ACTIONS(454), 1, anon_sym_LBRACE, - ACTIONS(580), 1, + ACTIONS(458), 1, + anon_sym_not, + ACTIONS(546), 1, anon_sym_LPAREN, - STATE(142), 1, + ACTIONS(568), 1, + aux_sym__name_token1, + STATE(5), 1, sym__name, - STATE(159), 1, + STATE(8), 1, sym_identifier, - STATE(189), 1, + STATE(214), 1, sym__expression, - STATE(357), 1, + STATE(332), 1, sym_unary_operator, - ACTIONS(456), 2, - anon_sym_PLUS, - anon_sym_DASH, - ACTIONS(470), 2, + ACTIONS(446), 2, anon_sym_true, anon_sym_false, - ACTIONS(582), 2, + ACTIONS(450), 2, aux_sym__string_token1, sym_number, - STATE(213), 11, + ACTIONS(456), 2, + anon_sym_PLUS, + anon_sym_DASH, + STATE(31), 11, sym__literal, sym_boolean, sym__string, @@ -23885,9 +23885,9 @@ static const uint16_t ts_small_parse_table[] = { sym__name, STATE(8), 1, sym_identifier, - STATE(214), 1, + STATE(227), 1, sym__expression, - STATE(332), 1, + STATE(398), 1, sym_unary_operator, ACTIONS(446), 2, anon_sym_true, @@ -24070,7 +24070,7 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(594), 2, anon_sym_include, anon_sym_embed, - STATE(487), 10, + STATE(492), 10, sym__statement, sym_assignment_statement, sym_for_statement, @@ -24333,184 +24333,226 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LBRACE_LBRACE, anon_sym_LBRACE_LBRACE_DASH, anon_sym_LBRACE_LBRACE_TILDE, - [23467] = 4, - ACTIONS(677), 1, - anon_sym_with, - STATE(439), 1, - aux_sym_include_statement_repeat1, - ACTIONS(680), 2, - anon_sym_only, - anon_sym_ignoremissing, - ACTIONS(675), 3, - anon_sym_PERCENT_RBRACE, - anon_sym_DASH_PERCENT_RBRACE, - anon_sym_TILDE_PERCENT_RBRACE, - [23483] = 5, - ACTIONS(683), 1, - anon_sym_DQUOTE, - ACTIONS(687), 1, - aux_sym_interpolated_string_token1, - ACTIONS(689), 1, - anon_sym_POUND_LBRACE, - STATE(441), 1, - aux_sym_interpolated_string_repeat1, - ACTIONS(685), 3, - anon_sym_BSLASH_DQUOTE, - anon_sym_BSLASH_POUND, - anon_sym_BSLASH_BSLASH, - [23501] = 5, - ACTIONS(689), 1, - anon_sym_POUND_LBRACE, - ACTIONS(691), 1, + [23467] = 5, + ACTIONS(675), 1, anon_sym_DQUOTE, - ACTIONS(695), 1, + ACTIONS(679), 1, aux_sym_interpolated_string_token1, - STATE(445), 1, - aux_sym_interpolated_string_repeat1, - ACTIONS(693), 3, - anon_sym_BSLASH_DQUOTE, - anon_sym_BSLASH_POUND, - anon_sym_BSLASH_BSLASH, - [23519] = 5, - ACTIONS(689), 1, + ACTIONS(681), 1, anon_sym_POUND_LBRACE, - ACTIONS(695), 1, - aux_sym_interpolated_string_token1, - ACTIONS(697), 1, - anon_sym_DQUOTE, - STATE(445), 1, + STATE(446), 1, aux_sym_interpolated_string_repeat1, - ACTIONS(693), 3, + ACTIONS(677), 3, anon_sym_BSLASH_DQUOTE, anon_sym_BSLASH_POUND, anon_sym_BSLASH_BSLASH, - [23537] = 5, - ACTIONS(689), 1, + [23485] = 5, + ACTIONS(681), 1, anon_sym_POUND_LBRACE, - ACTIONS(699), 1, + ACTIONS(683), 1, anon_sym_DQUOTE, - ACTIONS(703), 1, + ACTIONS(687), 1, aux_sym_interpolated_string_token1, - STATE(442), 1, + STATE(449), 1, aux_sym_interpolated_string_repeat1, - ACTIONS(701), 3, + ACTIONS(685), 3, anon_sym_BSLASH_DQUOTE, anon_sym_BSLASH_POUND, anon_sym_BSLASH_BSLASH, - [23555] = 4, + [23503] = 4, ACTIONS(267), 1, anon_sym_with, - STATE(439), 1, + STATE(443), 1, aux_sym_include_statement_repeat1, ACTIONS(269), 2, anon_sym_only, anon_sym_ignoremissing, - ACTIONS(705), 3, + ACTIONS(689), 3, + anon_sym_PERCENT_RBRACE, + anon_sym_DASH_PERCENT_RBRACE, + anon_sym_TILDE_PERCENT_RBRACE, + [23519] = 4, + ACTIONS(25), 1, + anon_sym_LBRACK, + ACTIONS(691), 1, + anon_sym_DOT, + STATE(444), 1, + aux_sym_identifier_repeat1, + ACTIONS(21), 4, + anon_sym_PERCENT_RBRACE, + anon_sym_DASH_PERCENT_RBRACE, + anon_sym_TILDE_PERCENT_RBRACE, + anon_sym_EQ, + [23535] = 4, + ACTIONS(695), 1, + anon_sym_with, + STATE(443), 1, + aux_sym_include_statement_repeat1, + ACTIONS(698), 2, + anon_sym_only, + anon_sym_ignoremissing, + ACTIONS(693), 3, + anon_sym_PERCENT_RBRACE, + anon_sym_DASH_PERCENT_RBRACE, + anon_sym_TILDE_PERCENT_RBRACE, + [23551] = 3, + ACTIONS(701), 1, + anon_sym_DOT, + STATE(444), 1, + aux_sym_identifier_repeat1, + ACTIONS(13), 5, anon_sym_PERCENT_RBRACE, anon_sym_DASH_PERCENT_RBRACE, anon_sym_TILDE_PERCENT_RBRACE, - [23571] = 5, - ACTIONS(707), 1, + anon_sym_EQ, + anon_sym_LBRACK, + [23565] = 5, + ACTIONS(681), 1, + anon_sym_POUND_LBRACE, + ACTIONS(704), 1, anon_sym_DQUOTE, - ACTIONS(712), 1, + ACTIONS(708), 1, aux_sym_interpolated_string_token1, + STATE(447), 1, + aux_sym_interpolated_string_repeat1, + ACTIONS(706), 3, + anon_sym_BSLASH_DQUOTE, + anon_sym_BSLASH_POUND, + anon_sym_BSLASH_BSLASH, + [23583] = 5, + ACTIONS(710), 1, + anon_sym_DQUOTE, ACTIONS(715), 1, + aux_sym_interpolated_string_token1, + ACTIONS(718), 1, anon_sym_POUND_LBRACE, - STATE(445), 1, + STATE(446), 1, aux_sym_interpolated_string_repeat1, - ACTIONS(709), 3, + ACTIONS(712), 3, anon_sym_BSLASH_DQUOTE, anon_sym_BSLASH_POUND, anon_sym_BSLASH_BSLASH, - [23589] = 5, - ACTIONS(689), 1, + [23601] = 5, + ACTIONS(679), 1, + aux_sym_interpolated_string_token1, + ACTIONS(681), 1, anon_sym_POUND_LBRACE, - ACTIONS(718), 1, + ACTIONS(721), 1, anon_sym_DQUOTE, - ACTIONS(722), 1, + STATE(446), 1, + aux_sym_interpolated_string_repeat1, + ACTIONS(677), 3, + anon_sym_BSLASH_DQUOTE, + anon_sym_BSLASH_POUND, + anon_sym_BSLASH_BSLASH, + [23619] = 4, + ACTIONS(31), 1, + anon_sym_LBRACK, + ACTIONS(691), 1, + anon_sym_DOT, + STATE(442), 1, + aux_sym_identifier_repeat1, + ACTIONS(29), 4, + anon_sym_PERCENT_RBRACE, + anon_sym_DASH_PERCENT_RBRACE, + anon_sym_TILDE_PERCENT_RBRACE, + anon_sym_EQ, + [23635] = 5, + ACTIONS(679), 1, aux_sym_interpolated_string_token1, - STATE(447), 1, + ACTIONS(681), 1, + anon_sym_POUND_LBRACE, + ACTIONS(723), 1, + anon_sym_DQUOTE, + STATE(446), 1, aux_sym_interpolated_string_repeat1, - ACTIONS(720), 3, + ACTIONS(677), 3, anon_sym_BSLASH_DQUOTE, anon_sym_BSLASH_POUND, anon_sym_BSLASH_BSLASH, - [23607] = 5, - ACTIONS(689), 1, + [23653] = 5, + ACTIONS(681), 1, anon_sym_POUND_LBRACE, - ACTIONS(695), 1, - aux_sym_interpolated_string_token1, - ACTIONS(724), 1, + ACTIONS(725), 1, anon_sym_DQUOTE, - STATE(445), 1, + ACTIONS(729), 1, + aux_sym_interpolated_string_token1, + STATE(439), 1, aux_sym_interpolated_string_repeat1, - ACTIONS(693), 3, + ACTIONS(727), 3, anon_sym_BSLASH_DQUOTE, anon_sym_BSLASH_POUND, anon_sym_BSLASH_BSLASH, - [23625] = 3, - ACTIONS(728), 1, + [23671] = 3, + ACTIONS(733), 1, anon_sym_COMMA, - STATE(448), 1, + STATE(451), 1, aux_sym_from_statement_repeat1, - ACTIONS(726), 4, + ACTIONS(731), 4, anon_sym_PERCENT_RBRACE, anon_sym_DASH_PERCENT_RBRACE, anon_sym_TILDE_PERCENT_RBRACE, anon_sym_RPAREN, - [23638] = 1, - ACTIONS(731), 6, + [23684] = 1, + ACTIONS(736), 6, anon_sym_PERCENT_RBRACE, anon_sym_DASH_PERCENT_RBRACE, anon_sym_TILDE_PERCENT_RBRACE, anon_sym_with, anon_sym_only, anon_sym_ignoremissing, - [23647] = 2, - ACTIONS(735), 1, + [23693] = 2, + ACTIONS(740), 1, aux_sym_interpolated_string_token1, - ACTIONS(733), 5, + ACTIONS(738), 5, anon_sym_DQUOTE, anon_sym_BSLASH_DQUOTE, anon_sym_BSLASH_POUND, anon_sym_BSLASH_BSLASH, anon_sym_POUND_LBRACE, - [23658] = 3, - ACTIONS(739), 1, + [23704] = 3, + ACTIONS(294), 1, + anon_sym_COMMA, + STATE(451), 1, + aux_sym_from_statement_repeat1, + ACTIONS(742), 3, + anon_sym_PERCENT_RBRACE, + anon_sym_DASH_PERCENT_RBRACE, + anon_sym_TILDE_PERCENT_RBRACE, + [23716] = 3, + ACTIONS(746), 1, anon_sym_LPAREN, - STATE(495), 1, + STATE(498), 1, sym_parameters, - ACTIONS(737), 3, + ACTIONS(744), 3, anon_sym_PERCENT_RBRACE, anon_sym_DASH_PERCENT_RBRACE, anon_sym_TILDE_PERCENT_RBRACE, - [23670] = 1, - ACTIONS(741), 5, + [23728] = 1, + ACTIONS(748), 5, anon_sym_PERCENT_RBRACE, anon_sym_DASH_PERCENT_RBRACE, anon_sym_TILDE_PERCENT_RBRACE, anon_sym_COMMA, anon_sym_RPAREN, - [23678] = 3, + [23736] = 3, ACTIONS(294), 1, anon_sym_COMMA, STATE(454), 1, aux_sym_from_statement_repeat1, - ACTIONS(743), 3, + ACTIONS(750), 3, anon_sym_PERCENT_RBRACE, anon_sym_DASH_PERCENT_RBRACE, anon_sym_TILDE_PERCENT_RBRACE, - [23690] = 3, - ACTIONS(294), 1, - anon_sym_COMMA, - STATE(448), 1, - aux_sym_from_statement_repeat1, - ACTIONS(745), 3, + [23748] = 2, + ACTIONS(754), 1, + anon_sym_EQ, + ACTIONS(752), 3, anon_sym_PERCENT_RBRACE, anon_sym_DASH_PERCENT_RBRACE, anon_sym_TILDE_PERCENT_RBRACE, - [23702] = 4, - ACTIONS(747), 1, + [23757] = 4, + ACTIONS(756), 1, aux_sym__name_token1, STATE(142), 1, sym__name, @@ -24518,26 +24560,8 @@ static const uint16_t ts_small_parse_table[] = { sym_identifier, STATE(240), 1, sym_filter, - [23715] = 4, - ACTIONS(29), 1, - anon_sym_EQ, - ACTIONS(31), 1, - anon_sym_LBRACK, - ACTIONS(749), 1, - anon_sym_DOT, - STATE(461), 1, - aux_sym_identifier_repeat1, - [23728] = 4, - ACTIONS(751), 1, - aux_sym__name_token1, - STATE(18), 1, - sym__name, - STATE(42), 1, - sym_identifier, - STATE(61), 1, - sym_filter, - [23741] = 4, - ACTIONS(753), 1, + [23770] = 4, + ACTIONS(758), 1, aux_sym__name_token1, STATE(5), 1, sym__name, @@ -24545,512 +24569,501 @@ static const uint16_t ts_small_parse_table[] = { sym_identifier, STATE(74), 1, sym_filter, - [23754] = 4, - ACTIONS(755), 1, + [23783] = 4, + ACTIONS(760), 1, anon_sym_RPAREN, - ACTIONS(757), 1, + ACTIONS(762), 1, aux_sym__name_token1, - STATE(469), 1, + STATE(474), 1, sym__name, - STATE(472), 1, + STATE(477), 1, sym_parameter, - [23767] = 3, - ACTIONS(759), 1, - anon_sym_DOT, - STATE(460), 1, - aux_sym_identifier_repeat1, - ACTIONS(13), 2, - anon_sym_EQ, - anon_sym_LBRACK, - [23778] = 4, - ACTIONS(21), 1, - anon_sym_EQ, - ACTIONS(25), 1, - anon_sym_LBRACK, - ACTIONS(749), 1, - anon_sym_DOT, - STATE(460), 1, - aux_sym_identifier_repeat1, - [23791] = 2, + [23796] = 4, ACTIONS(764), 1, + aux_sym__name_token1, + STATE(18), 1, + sym__name, + STATE(42), 1, + sym_identifier, + STATE(61), 1, + sym_filter, + [23809] = 2, + ACTIONS(768), 1, anon_sym_as, - ACTIONS(762), 3, + ACTIONS(766), 3, anon_sym_PERCENT_RBRACE, anon_sym_DASH_PERCENT_RBRACE, anon_sym_TILDE_PERCENT_RBRACE, - [23800] = 3, - ACTIONS(766), 1, + [23818] = 3, + ACTIONS(770), 1, anon_sym_COMMA, - ACTIONS(768), 1, + ACTIONS(772), 1, anon_sym_RPAREN, STATE(503), 1, aux_sym_filter_arguments_repeat1, - [23810] = 3, - ACTIONS(770), 1, + [23828] = 3, + ACTIONS(554), 1, + anon_sym_RBRACE, + ACTIONS(774), 1, anon_sym_COMMA, - ACTIONS(772), 1, + STATE(469), 1, + aux_sym_hash_repeat1, + [23838] = 3, + ACTIONS(776), 1, + anon_sym_COMMA, + ACTIONS(779), 1, anon_sym_RPAREN, - STATE(481), 1, - aux_sym_parameters_repeat1, - [23820] = 1, - ACTIONS(774), 3, + STATE(466), 1, + aux_sym_filter_arguments_repeat1, + [23848] = 3, + ACTIONS(781), 1, + anon_sym_COMMA, + ACTIONS(783), 1, + anon_sym_in, + STATE(502), 1, + aux_sym_for_statement_repeat1, + [23858] = 1, + ACTIONS(785), 3, anon_sym_PERCENT_RBRACE, anon_sym_DASH_PERCENT_RBRACE, anon_sym_TILDE_PERCENT_RBRACE, - [23826] = 3, - ACTIONS(776), 1, + [23864] = 3, + ACTIONS(787), 1, anon_sym_RBRACE, - ACTIONS(778), 1, + ACTIONS(789), 1, anon_sym_COMMA, - STATE(466), 1, + STATE(469), 1, aux_sym_hash_repeat1, - [23836] = 1, - ACTIONS(781), 3, + [23874] = 1, + ACTIONS(792), 3, anon_sym_PERCENT_RBRACE, anon_sym_DASH_PERCENT_RBRACE, anon_sym_TILDE_PERCENT_RBRACE, - [23842] = 3, - ACTIONS(384), 1, - anon_sym_RBRACK, - ACTIONS(783), 1, - anon_sym_COMMA, - STATE(468), 1, - aux_sym_array_repeat1, - [23852] = 2, - ACTIONS(786), 1, - anon_sym_EQ, - ACTIONS(788), 2, - anon_sym_COMMA, - anon_sym_RPAREN, - [23860] = 3, - ACTIONS(790), 1, - anon_sym_COMMA, - ACTIONS(793), 1, - anon_sym_RPAREN, - STATE(470), 1, - aux_sym_filter_arguments_repeat1, - [23870] = 3, + [23880] = 3, ACTIONS(294), 1, anon_sym_COMMA, - ACTIONS(795), 1, + ACTIONS(794), 1, anon_sym_RPAREN, - STATE(448), 1, + STATE(451), 1, aux_sym_from_statement_repeat1, - [23880] = 3, - ACTIONS(770), 1, - anon_sym_COMMA, - ACTIONS(797), 1, - anon_sym_RPAREN, - STATE(464), 1, - aux_sym_parameters_repeat1, [23890] = 3, + ACTIONS(384), 1, + anon_sym_RBRACK, + ACTIONS(796), 1, + anon_sym_COMMA, + STATE(472), 1, + aux_sym_array_repeat1, + [23900] = 3, ACTIONS(799), 1, anon_sym_COMMA, ACTIONS(801), 1, anon_sym_RPAREN, STATE(499), 1, aux_sym_arguments_repeat1, - [23900] = 1, - ACTIONS(803), 3, - anon_sym_PERCENT_RBRACE, - anon_sym_DASH_PERCENT_RBRACE, - anon_sym_TILDE_PERCENT_RBRACE, - [23906] = 3, - ACTIONS(766), 1, + [23910] = 2, + ACTIONS(803), 1, + anon_sym_EQ, + ACTIONS(805), 2, + anon_sym_COMMA, + anon_sym_RPAREN, + [23918] = 3, + ACTIONS(770), 1, anon_sym_COMMA, - ACTIONS(805), 1, + ACTIONS(807), 1, anon_sym_RPAREN, STATE(484), 1, aux_sym_filter_arguments_repeat1, - [23916] = 3, - ACTIONS(807), 1, - anon_sym_RBRACE, + [23928] = 3, ACTIONS(809), 1, + anon_sym_RBRACE, + ACTIONS(811), 1, anon_sym_COMMA, - STATE(482), 1, + STATE(465), 1, aux_sym_hash_repeat1, - [23926] = 3, - ACTIONS(757), 1, + [23938] = 3, + ACTIONS(813), 1, + anon_sym_COMMA, + ACTIONS(815), 1, + anon_sym_RPAREN, + STATE(506), 1, + aux_sym_parameters_repeat1, + [23948] = 1, + ACTIONS(817), 3, + anon_sym_PERCENT_RBRACE, + anon_sym_DASH_PERCENT_RBRACE, + anon_sym_TILDE_PERCENT_RBRACE, + [23954] = 3, + ACTIONS(762), 1, aux_sym__name_token1, - STATE(456), 1, + STATE(448), 1, sym__name, - STATE(546), 1, + STATE(458), 1, sym_identifier, - [23936] = 3, - ACTIONS(811), 1, + [23964] = 3, + ACTIONS(819), 1, anon_sym_COMMA, - ACTIONS(814), 1, + ACTIONS(822), 1, anon_sym_in, - STATE(478), 1, + STATE(480), 1, aux_sym_for_statement_repeat1, - [23946] = 1, - ACTIONS(816), 3, + [23974] = 1, + ACTIONS(824), 3, anon_sym_PERCENT_RBRACE, anon_sym_DASH_PERCENT_RBRACE, anon_sym_TILDE_PERCENT_RBRACE, - [23952] = 3, + [23980] = 3, ACTIONS(799), 1, anon_sym_COMMA, - ACTIONS(818), 1, + ACTIONS(826), 1, anon_sym_RPAREN, STATE(473), 1, aux_sym_arguments_repeat1, - [23962] = 3, - ACTIONS(820), 1, + [23990] = 3, + ACTIONS(828), 1, anon_sym_COMMA, - ACTIONS(823), 1, + ACTIONS(831), 1, anon_sym_RPAREN, - STATE(481), 1, + STATE(483), 1, aux_sym_parameters_repeat1, - [23972] = 3, - ACTIONS(554), 1, - anon_sym_RBRACE, - ACTIONS(825), 1, - anon_sym_COMMA, - STATE(466), 1, - aux_sym_hash_repeat1, - [23982] = 3, - ACTIONS(338), 1, - anon_sym_COMMA, - ACTIONS(827), 1, - anon_sym_RBRACK, - STATE(468), 1, - aux_sym_array_repeat1, - [23992] = 3, - ACTIONS(766), 1, + [24000] = 3, + ACTIONS(770), 1, anon_sym_COMMA, - ACTIONS(829), 1, + ACTIONS(833), 1, anon_sym_RPAREN, - STATE(470), 1, + STATE(466), 1, aux_sym_filter_arguments_repeat1, - [24002] = 3, - ACTIONS(831), 1, - anon_sym_RBRACE, - ACTIONS(833), 1, - anon_sym_COMMA, - STATE(492), 1, - aux_sym_hash_repeat1, - [24012] = 3, - ACTIONS(766), 1, + [24010] = 3, + ACTIONS(799), 1, anon_sym_COMMA, ACTIONS(835), 1, anon_sym_RPAREN, - STATE(470), 1, + STATE(499), 1, + aux_sym_arguments_repeat1, + [24020] = 3, + ACTIONS(770), 1, + anon_sym_COMMA, + ACTIONS(837), 1, + anon_sym_RPAREN, + STATE(466), 1, aux_sym_filter_arguments_repeat1, - [24022] = 1, - ACTIONS(837), 3, - anon_sym_PERCENT_RBRACE, - anon_sym_DASH_PERCENT_RBRACE, - anon_sym_TILDE_PERCENT_RBRACE, - [24028] = 3, + [24030] = 3, ACTIONS(338), 1, anon_sym_COMMA, ACTIONS(839), 1, anon_sym_RBRACK, - STATE(468), 1, + STATE(472), 1, aux_sym_array_repeat1, - [24038] = 3, - ACTIONS(766), 1, - anon_sym_COMMA, + [24040] = 3, ACTIONS(841), 1, + anon_sym_RBRACE, + ACTIONS(843), 1, + anon_sym_COMMA, + STATE(496), 1, + aux_sym_hash_repeat1, + [24050] = 3, + ACTIONS(770), 1, + anon_sym_COMMA, + ACTIONS(845), 1, anon_sym_RPAREN, STATE(486), 1, aux_sym_filter_arguments_repeat1, - [24048] = 3, + [24060] = 3, ACTIONS(799), 1, anon_sym_COMMA, - ACTIONS(843), 1, + ACTIONS(847), 1, anon_sym_RPAREN, STATE(499), 1, aux_sym_arguments_repeat1, - [24058] = 3, + [24070] = 3, ACTIONS(799), 1, anon_sym_COMMA, - ACTIONS(845), 1, + ACTIONS(849), 1, anon_sym_RPAREN, STATE(490), 1, aux_sym_arguments_repeat1, - [24068] = 3, - ACTIONS(564), 1, - anon_sym_RBRACE, - ACTIONS(847), 1, - anon_sym_COMMA, - STATE(466), 1, - aux_sym_hash_repeat1, - [24078] = 3, + [24080] = 1, + ACTIONS(851), 3, + anon_sym_PERCENT_RBRACE, + anon_sym_DASH_PERCENT_RBRACE, + anon_sym_TILDE_PERCENT_RBRACE, + [24086] = 3, ACTIONS(560), 1, anon_sym_RBRACE, - ACTIONS(849), 1, + ACTIONS(853), 1, anon_sym_COMMA, - STATE(466), 1, + STATE(469), 1, aux_sym_hash_repeat1, - [24088] = 3, + [24096] = 3, ACTIONS(338), 1, anon_sym_COMMA, - ACTIONS(851), 1, + ACTIONS(855), 1, anon_sym_RBRACK, - STATE(468), 1, + STATE(472), 1, aux_sym_array_repeat1, - [24098] = 1, - ACTIONS(853), 3, - anon_sym_PERCENT_RBRACE, - anon_sym_DASH_PERCENT_RBRACE, - anon_sym_TILDE_PERCENT_RBRACE, - [24104] = 3, - ACTIONS(799), 1, + [24106] = 3, + ACTIONS(338), 1, anon_sym_COMMA, - ACTIONS(855), 1, - anon_sym_RPAREN, - STATE(501), 1, - aux_sym_arguments_repeat1, - [24114] = 3, ACTIONS(857), 1, + anon_sym_RBRACK, + STATE(472), 1, + aux_sym_array_repeat1, + [24116] = 3, + ACTIONS(564), 1, anon_sym_RBRACE, ACTIONS(859), 1, anon_sym_COMMA, - STATE(493), 1, - aux_sym_hash_repeat1, - [24124] = 3, - ACTIONS(757), 1, - aux_sym__name_token1, STATE(469), 1, - sym__name, - STATE(537), 1, - sym_parameter, - [24134] = 3, + aux_sym_hash_repeat1, + [24126] = 3, ACTIONS(861), 1, + anon_sym_RBRACE, + ACTIONS(863), 1, anon_sym_COMMA, - ACTIONS(864), 1, - anon_sym_RPAREN, - STATE(499), 1, - aux_sym_arguments_repeat1, - [24144] = 1, - ACTIONS(866), 3, + STATE(493), 1, + aux_sym_hash_repeat1, + [24136] = 1, + ACTIONS(865), 3, anon_sym_PERCENT_RBRACE, anon_sym_DASH_PERCENT_RBRACE, anon_sym_TILDE_PERCENT_RBRACE, - [24150] = 3, - ACTIONS(799), 1, + [24142] = 3, + ACTIONS(867), 1, anon_sym_COMMA, - ACTIONS(868), 1, + ACTIONS(870), 1, anon_sym_RPAREN, STATE(499), 1, aux_sym_arguments_repeat1, - [24160] = 3, - ACTIONS(870), 1, + [24152] = 3, + ACTIONS(799), 1, anon_sym_COMMA, ACTIONS(872), 1, + anon_sym_RPAREN, + STATE(485), 1, + aux_sym_arguments_repeat1, + [24162] = 3, + ACTIONS(762), 1, + aux_sym__name_token1, + STATE(474), 1, + sym__name, + STATE(536), 1, + sym_parameter, + [24172] = 3, + ACTIONS(781), 1, + anon_sym_COMMA, + ACTIONS(874), 1, anon_sym_in, - STATE(478), 1, + STATE(480), 1, aux_sym_for_statement_repeat1, - [24170] = 3, - ACTIONS(766), 1, + [24182] = 3, + ACTIONS(770), 1, anon_sym_COMMA, - ACTIONS(874), 1, + ACTIONS(876), 1, anon_sym_RPAREN, - STATE(470), 1, + STATE(466), 1, aux_sym_filter_arguments_repeat1, - [24180] = 3, - ACTIONS(870), 1, - anon_sym_COMMA, - ACTIONS(876), 1, - anon_sym_in, - STATE(502), 1, - aux_sym_for_statement_repeat1, - [24190] = 1, + [24192] = 1, ACTIONS(878), 3, anon_sym_PERCENT_RBRACE, anon_sym_DASH_PERCENT_RBRACE, anon_sym_TILDE_PERCENT_RBRACE, - [24196] = 2, - ACTIONS(757), 1, - aux_sym__name_token1, - STATE(451), 1, - sym__name, - [24203] = 2, - ACTIONS(880), 1, - aux_sym__name_token1, - STATE(145), 1, - aux_sym_test_expression_repeat1, - [24210] = 1, - ACTIONS(864), 2, + [24198] = 1, + ACTIONS(880), 3, + anon_sym_PERCENT_RBRACE, + anon_sym_DASH_PERCENT_RBRACE, + anon_sym_TILDE_PERCENT_RBRACE, + [24204] = 3, + ACTIONS(813), 1, anon_sym_COMMA, - anon_sym_RPAREN, - [24215] = 2, ACTIONS(882), 1, + anon_sym_RPAREN, + STATE(483), 1, + aux_sym_parameters_repeat1, + [24214] = 1, + ACTIONS(884), 2, + anon_sym_COMMA, + anon_sym_RPAREN, + [24219] = 2, + ACTIONS(886), 1, aux_sym__name_token1, - STATE(68), 1, + STATE(111), 1, aux_sym_test_expression_repeat1, - [24222] = 2, - ACTIONS(884), 1, + [24226] = 2, + ACTIONS(762), 1, aux_sym__name_token1, - STATE(108), 1, - aux_sym_test_expression_repeat1, - [24229] = 2, - ACTIONS(747), 1, + STATE(457), 1, + sym__name, + [24233] = 2, + ACTIONS(758), 1, aux_sym__name_token1, - STATE(160), 1, + STATE(533), 1, sym__name, - [24236] = 2, - ACTIONS(757), 1, + [24240] = 1, + ACTIONS(870), 2, + anon_sym_COMMA, + anon_sym_RPAREN, + [24245] = 2, + ACTIONS(762), 1, aux_sym__name_token1, - STATE(465), 1, + STATE(468), 1, sym__name, - [24243] = 2, - ACTIONS(880), 1, + [24252] = 2, + ACTIONS(888), 1, aux_sym__name_token1, - STATE(127), 1, + STATE(68), 1, aux_sym_test_expression_repeat1, - [24250] = 2, - ACTIONS(757), 1, + [24259] = 2, + ACTIONS(890), 1, aux_sym__name_token1, - STATE(2), 1, - sym__name, - [24257] = 2, - ACTIONS(753), 1, + STATE(108), 1, + aux_sym_test_expression_repeat1, + [24266] = 2, + ACTIONS(758), 1, aux_sym__name_token1, - STATE(462), 1, + STATE(463), 1, sym__name, - [24264] = 1, - ACTIONS(886), 2, + [24273] = 1, + ACTIONS(892), 2, anon_sym_COMMA, anon_sym_RPAREN, - [24269] = 2, - ACTIONS(757), 1, + [24278] = 2, + ACTIONS(756), 1, aux_sym__name_token1, - STATE(453), 1, + STATE(160), 1, sym__name, - [24276] = 2, - ACTIONS(751), 1, + [24285] = 2, + ACTIONS(764), 1, aux_sym__name_token1, STATE(44), 1, sym__name, - [24283] = 2, - ACTIONS(888), 1, + [24292] = 2, + ACTIONS(894), 1, aux_sym__name_token1, STATE(19), 1, aux_sym_test_expression_repeat1, - [24290] = 1, - ACTIONS(890), 2, - anon_sym_COMMA, - anon_sym_RPAREN, - [24295] = 1, - ACTIONS(892), 2, + [24299] = 2, + ACTIONS(758), 1, + aux_sym__name_token1, + STATE(2), 1, + sym__name, + [24306] = 1, + ACTIONS(896), 2, anon_sym_COMMA, anon_sym_RPAREN, - [24300] = 2, - ACTIONS(753), 1, + [24311] = 2, + ACTIONS(762), 1, aux_sym__name_token1, - STATE(2), 1, + STATE(455), 1, sym__name, - [24307] = 2, - ACTIONS(753), 1, + [24318] = 2, + ACTIONS(762), 1, aux_sym__name_token1, - STATE(524), 1, + STATE(2), 1, sym__name, - [24314] = 1, - ACTIONS(894), 2, - anon_sym_COMMA, - anon_sym_in, - [24319] = 2, - ACTIONS(896), 1, + [24325] = 2, + ACTIONS(894), 1, aux_sym__name_token1, - STATE(119), 1, + STATE(7), 1, aux_sym_test_expression_repeat1, - [24326] = 2, - ACTIONS(882), 1, + [24332] = 1, + ACTIONS(779), 2, + anon_sym_COMMA, + anon_sym_RPAREN, + [24337] = 2, + ACTIONS(898), 1, aux_sym__name_token1, - STATE(92), 1, + STATE(127), 1, aux_sym_test_expression_repeat1, - [24333] = 2, - ACTIONS(884), 1, + [24344] = 2, + ACTIONS(890), 1, aux_sym__name_token1, STATE(97), 1, aux_sym_test_expression_repeat1, - [24340] = 2, - ACTIONS(896), 1, - aux_sym__name_token1, - STATE(111), 1, - aux_sym_test_expression_repeat1, - [24347] = 2, - ACTIONS(898), 1, + [24351] = 1, + ACTIONS(787), 2, + anon_sym_RBRACE, + anon_sym_COMMA, + [24356] = 2, + ACTIONS(900), 1, aux_sym__name_token1, STATE(141), 1, aux_sym_test_expression_repeat1, - [24354] = 2, - ACTIONS(900), 1, + [24363] = 2, + ACTIONS(902), 1, aux_sym__name_token1, STATE(131), 1, aux_sym_test_expression_repeat1, - [24361] = 2, - ACTIONS(898), 1, + [24370] = 2, + ACTIONS(762), 1, aux_sym__name_token1, - STATE(156), 1, + STATE(456), 1, + sym__name, + [24377] = 2, + ACTIONS(886), 1, + aux_sym__name_token1, + STATE(119), 1, aux_sym_test_expression_repeat1, - [24368] = 2, + [24384] = 1, + ACTIONS(904), 2, + anon_sym_COMMA, + anon_sym_in, + [24389] = 2, ACTIONS(888), 1, aux_sym__name_token1, - STATE(7), 1, + STATE(92), 1, aux_sym_test_expression_repeat1, - [24375] = 2, - ACTIONS(753), 1, + [24396] = 2, + ACTIONS(758), 1, aux_sym__name_token1, - STATE(504), 1, + STATE(467), 1, sym__name, - [24382] = 2, + [24403] = 1, + ACTIONS(831), 2, + anon_sym_COMMA, + anon_sym_RPAREN, + [24408] = 2, ACTIONS(900), 1, aux_sym__name_token1, - STATE(162), 1, + STATE(156), 1, aux_sym_test_expression_repeat1, - [24389] = 2, - ACTIONS(757), 1, + [24415] = 2, + ACTIONS(898), 1, aux_sym__name_token1, - STATE(452), 1, - sym__name, - [24396] = 1, - ACTIONS(793), 2, - anon_sym_COMMA, - anon_sym_RPAREN, - [24401] = 1, - ACTIONS(823), 2, - anon_sym_COMMA, - anon_sym_RPAREN, - [24406] = 1, - ACTIONS(776), 2, - anon_sym_RBRACE, - anon_sym_COMMA, - [24411] = 1, + STATE(145), 1, + aux_sym_test_expression_repeat1, + [24422] = 2, ACTIONS(902), 1, - anon_sym_EQ_GT, - [24415] = 1, - ACTIONS(904), 1, - aux_sym_comment_token1, - [24419] = 1, + aux_sym__name_token1, + STATE(162), 1, + aux_sym_test_expression_repeat1, + [24429] = 1, ACTIONS(906), 1, - anon_sym_EQ_GT, - [24423] = 1, - ACTIONS(807), 1, - anon_sym_RBRACE, - [24427] = 1, + aux_sym_comment_token1, + [24433] = 1, ACTIONS(908), 1, - aux_sym__name_token1, - [24431] = 1, + anon_sym_RBRACE, + [24437] = 1, ACTIONS(910), 1, - ts_builtin_sym_end, - [24435] = 1, + anon_sym_EQ_GT, + [24441] = 1, ACTIONS(912), 1, - anon_sym_RBRACE, - [24439] = 1, + aux_sym__name_token1, + [24445] = 1, ACTIONS(914), 1, - anon_sym_EQ, - [24443] = 1, + ts_builtin_sym_end, + [24449] = 1, + ACTIONS(809), 1, + anon_sym_RBRACE, + [24453] = 1, ACTIONS(916), 1, anon_sym_EQ_GT, - [24447] = 1, - ACTIONS(857), 1, + [24457] = 1, + ACTIONS(918), 1, + anon_sym_EQ_GT, + [24461] = 1, + ACTIONS(841), 1, anon_sym_RBRACE, - [24451] = 1, - ACTIONS(831), 1, + [24465] = 1, + ACTIONS(861), 1, anon_sym_RBRACE, }; @@ -25493,116 +25506,116 @@ static const uint32_t ts_small_parse_table_map[] = { [SMALL_STATE(437)] = 23439, [SMALL_STATE(438)] = 23453, [SMALL_STATE(439)] = 23467, - [SMALL_STATE(440)] = 23483, - [SMALL_STATE(441)] = 23501, + [SMALL_STATE(440)] = 23485, + [SMALL_STATE(441)] = 23503, [SMALL_STATE(442)] = 23519, - [SMALL_STATE(443)] = 23537, - [SMALL_STATE(444)] = 23555, - [SMALL_STATE(445)] = 23571, - [SMALL_STATE(446)] = 23589, - [SMALL_STATE(447)] = 23607, - [SMALL_STATE(448)] = 23625, - [SMALL_STATE(449)] = 23638, - [SMALL_STATE(450)] = 23647, - [SMALL_STATE(451)] = 23658, - [SMALL_STATE(452)] = 23670, - [SMALL_STATE(453)] = 23678, - [SMALL_STATE(454)] = 23690, - [SMALL_STATE(455)] = 23702, - [SMALL_STATE(456)] = 23715, - [SMALL_STATE(457)] = 23728, - [SMALL_STATE(458)] = 23741, - [SMALL_STATE(459)] = 23754, - [SMALL_STATE(460)] = 23767, - [SMALL_STATE(461)] = 23778, - [SMALL_STATE(462)] = 23791, - [SMALL_STATE(463)] = 23800, - [SMALL_STATE(464)] = 23810, - [SMALL_STATE(465)] = 23820, - [SMALL_STATE(466)] = 23826, - [SMALL_STATE(467)] = 23836, - [SMALL_STATE(468)] = 23842, - [SMALL_STATE(469)] = 23852, - [SMALL_STATE(470)] = 23860, - [SMALL_STATE(471)] = 23870, - [SMALL_STATE(472)] = 23880, - [SMALL_STATE(473)] = 23890, - [SMALL_STATE(474)] = 23900, - [SMALL_STATE(475)] = 23906, - [SMALL_STATE(476)] = 23916, - [SMALL_STATE(477)] = 23926, - [SMALL_STATE(478)] = 23936, - [SMALL_STATE(479)] = 23946, - [SMALL_STATE(480)] = 23952, - [SMALL_STATE(481)] = 23962, - [SMALL_STATE(482)] = 23972, - [SMALL_STATE(483)] = 23982, - [SMALL_STATE(484)] = 23992, - [SMALL_STATE(485)] = 24002, - [SMALL_STATE(486)] = 24012, - [SMALL_STATE(487)] = 24022, - [SMALL_STATE(488)] = 24028, - [SMALL_STATE(489)] = 24038, - [SMALL_STATE(490)] = 24048, - [SMALL_STATE(491)] = 24058, - [SMALL_STATE(492)] = 24068, - [SMALL_STATE(493)] = 24078, - [SMALL_STATE(494)] = 24088, - [SMALL_STATE(495)] = 24098, - [SMALL_STATE(496)] = 24104, - [SMALL_STATE(497)] = 24114, - [SMALL_STATE(498)] = 24124, - [SMALL_STATE(499)] = 24134, - [SMALL_STATE(500)] = 24144, - [SMALL_STATE(501)] = 24150, - [SMALL_STATE(502)] = 24160, - [SMALL_STATE(503)] = 24170, - [SMALL_STATE(504)] = 24180, - [SMALL_STATE(505)] = 24190, - [SMALL_STATE(506)] = 24196, - [SMALL_STATE(507)] = 24203, - [SMALL_STATE(508)] = 24210, - [SMALL_STATE(509)] = 24215, - [SMALL_STATE(510)] = 24222, - [SMALL_STATE(511)] = 24229, - [SMALL_STATE(512)] = 24236, - [SMALL_STATE(513)] = 24243, - [SMALL_STATE(514)] = 24250, - [SMALL_STATE(515)] = 24257, - [SMALL_STATE(516)] = 24264, - [SMALL_STATE(517)] = 24269, - [SMALL_STATE(518)] = 24276, - [SMALL_STATE(519)] = 24283, - [SMALL_STATE(520)] = 24290, - [SMALL_STATE(521)] = 24295, - [SMALL_STATE(522)] = 24300, - [SMALL_STATE(523)] = 24307, - [SMALL_STATE(524)] = 24314, - [SMALL_STATE(525)] = 24319, - [SMALL_STATE(526)] = 24326, - [SMALL_STATE(527)] = 24333, - [SMALL_STATE(528)] = 24340, - [SMALL_STATE(529)] = 24347, - [SMALL_STATE(530)] = 24354, - [SMALL_STATE(531)] = 24361, - [SMALL_STATE(532)] = 24368, - [SMALL_STATE(533)] = 24375, - [SMALL_STATE(534)] = 24382, - [SMALL_STATE(535)] = 24389, - [SMALL_STATE(536)] = 24396, - [SMALL_STATE(537)] = 24401, - [SMALL_STATE(538)] = 24406, - [SMALL_STATE(539)] = 24411, - [SMALL_STATE(540)] = 24415, - [SMALL_STATE(541)] = 24419, - [SMALL_STATE(542)] = 24423, - [SMALL_STATE(543)] = 24427, - [SMALL_STATE(544)] = 24431, - [SMALL_STATE(545)] = 24435, - [SMALL_STATE(546)] = 24439, - [SMALL_STATE(547)] = 24443, - [SMALL_STATE(548)] = 24447, - [SMALL_STATE(549)] = 24451, + [SMALL_STATE(443)] = 23535, + [SMALL_STATE(444)] = 23551, + [SMALL_STATE(445)] = 23565, + [SMALL_STATE(446)] = 23583, + [SMALL_STATE(447)] = 23601, + [SMALL_STATE(448)] = 23619, + [SMALL_STATE(449)] = 23635, + [SMALL_STATE(450)] = 23653, + [SMALL_STATE(451)] = 23671, + [SMALL_STATE(452)] = 23684, + [SMALL_STATE(453)] = 23693, + [SMALL_STATE(454)] = 23704, + [SMALL_STATE(455)] = 23716, + [SMALL_STATE(456)] = 23728, + [SMALL_STATE(457)] = 23736, + [SMALL_STATE(458)] = 23748, + [SMALL_STATE(459)] = 23757, + [SMALL_STATE(460)] = 23770, + [SMALL_STATE(461)] = 23783, + [SMALL_STATE(462)] = 23796, + [SMALL_STATE(463)] = 23809, + [SMALL_STATE(464)] = 23818, + [SMALL_STATE(465)] = 23828, + [SMALL_STATE(466)] = 23838, + [SMALL_STATE(467)] = 23848, + [SMALL_STATE(468)] = 23858, + [SMALL_STATE(469)] = 23864, + [SMALL_STATE(470)] = 23874, + [SMALL_STATE(471)] = 23880, + [SMALL_STATE(472)] = 23890, + [SMALL_STATE(473)] = 23900, + [SMALL_STATE(474)] = 23910, + [SMALL_STATE(475)] = 23918, + [SMALL_STATE(476)] = 23928, + [SMALL_STATE(477)] = 23938, + [SMALL_STATE(478)] = 23948, + [SMALL_STATE(479)] = 23954, + [SMALL_STATE(480)] = 23964, + [SMALL_STATE(481)] = 23974, + [SMALL_STATE(482)] = 23980, + [SMALL_STATE(483)] = 23990, + [SMALL_STATE(484)] = 24000, + [SMALL_STATE(485)] = 24010, + [SMALL_STATE(486)] = 24020, + [SMALL_STATE(487)] = 24030, + [SMALL_STATE(488)] = 24040, + [SMALL_STATE(489)] = 24050, + [SMALL_STATE(490)] = 24060, + [SMALL_STATE(491)] = 24070, + [SMALL_STATE(492)] = 24080, + [SMALL_STATE(493)] = 24086, + [SMALL_STATE(494)] = 24096, + [SMALL_STATE(495)] = 24106, + [SMALL_STATE(496)] = 24116, + [SMALL_STATE(497)] = 24126, + [SMALL_STATE(498)] = 24136, + [SMALL_STATE(499)] = 24142, + [SMALL_STATE(500)] = 24152, + [SMALL_STATE(501)] = 24162, + [SMALL_STATE(502)] = 24172, + [SMALL_STATE(503)] = 24182, + [SMALL_STATE(504)] = 24192, + [SMALL_STATE(505)] = 24198, + [SMALL_STATE(506)] = 24204, + [SMALL_STATE(507)] = 24214, + [SMALL_STATE(508)] = 24219, + [SMALL_STATE(509)] = 24226, + [SMALL_STATE(510)] = 24233, + [SMALL_STATE(511)] = 24240, + [SMALL_STATE(512)] = 24245, + [SMALL_STATE(513)] = 24252, + [SMALL_STATE(514)] = 24259, + [SMALL_STATE(515)] = 24266, + [SMALL_STATE(516)] = 24273, + [SMALL_STATE(517)] = 24278, + [SMALL_STATE(518)] = 24285, + [SMALL_STATE(519)] = 24292, + [SMALL_STATE(520)] = 24299, + [SMALL_STATE(521)] = 24306, + [SMALL_STATE(522)] = 24311, + [SMALL_STATE(523)] = 24318, + [SMALL_STATE(524)] = 24325, + [SMALL_STATE(525)] = 24332, + [SMALL_STATE(526)] = 24337, + [SMALL_STATE(527)] = 24344, + [SMALL_STATE(528)] = 24351, + [SMALL_STATE(529)] = 24356, + [SMALL_STATE(530)] = 24363, + [SMALL_STATE(531)] = 24370, + [SMALL_STATE(532)] = 24377, + [SMALL_STATE(533)] = 24384, + [SMALL_STATE(534)] = 24389, + [SMALL_STATE(535)] = 24396, + [SMALL_STATE(536)] = 24403, + [SMALL_STATE(537)] = 24408, + [SMALL_STATE(538)] = 24415, + [SMALL_STATE(539)] = 24422, + [SMALL_STATE(540)] = 24429, + [SMALL_STATE(541)] = 24433, + [SMALL_STATE(542)] = 24437, + [SMALL_STATE(543)] = 24441, + [SMALL_STATE(544)] = 24445, + [SMALL_STATE(545)] = 24449, + [SMALL_STATE(546)] = 24453, + [SMALL_STATE(547)] = 24457, + [SMALL_STATE(548)] = 24461, + [SMALL_STATE(549)] = 24465, }; static const TSParseActionEntry ts_parse_actions[] = { @@ -25618,22 +25631,22 @@ static const TSParseActionEntry ts_parse_actions[] = { [17] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__name, 1), [19] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__name, 1), [21] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_identifier, 2), - [23] = {.entry = {.count = 1, .reusable = false}}, SHIFT(522), + [23] = {.entry = {.count = 1, .reusable = false}}, SHIFT(520), [25] = {.entry = {.count = 1, .reusable = true}}, SHIFT(322), [27] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_identifier, 2), [29] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_identifier, 1), [31] = {.entry = {.count = 1, .reusable = true}}, SHIFT(316), [33] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_identifier, 1), - [35] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_identifier_repeat1, 2), SHIFT_REPEAT(522), + [35] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_identifier_repeat1, 2), SHIFT_REPEAT(520), [38] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_test_expression, 3, .production_id = 9), - [40] = {.entry = {.count = 1, .reusable = false}}, SHIFT(428), + [40] = {.entry = {.count = 1, .reusable = false}}, SHIFT(430), [42] = {.entry = {.count = 1, .reusable = true}}, SHIFT(302), [44] = {.entry = {.count = 1, .reusable = false}}, SHIFT(64), [46] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_test_expression, 3, .production_id = 9), - [48] = {.entry = {.count = 1, .reusable = true}}, SHIFT(428), + [48] = {.entry = {.count = 1, .reusable = true}}, SHIFT(430), [50] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__expression, 1), [52] = {.entry = {.count = 1, .reusable = true}}, SHIFT(299), - [54] = {.entry = {.count = 1, .reusable = true}}, SHIFT(458), + [54] = {.entry = {.count = 1, .reusable = true}}, SHIFT(460), [56] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__expression, 1), [58] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_filter, 1, .production_id = 11), [60] = {.entry = {.count = 1, .reusable = true}}, SHIFT(287), @@ -25656,7 +25669,7 @@ static const TSParseActionEntry ts_parse_actions[] = { [95] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_identifier, 5), [97] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binary_expression, 3, .production_id = 8), [99] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_binary_expression, 3, .production_id = 8), - [101] = {.entry = {.count = 1, .reusable = true}}, SHIFT(457), + [101] = {.entry = {.count = 1, .reusable = true}}, SHIFT(462), [103] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_ternary_expression, 5), [105] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_ternary_expression, 5), [107] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_identifier, 7), @@ -25674,13 +25687,13 @@ static const TSParseActionEntry ts_parse_actions[] = { [131] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_test_expression_repeat1, 2), [133] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_test_expression_repeat1, 2), SHIFT_REPEAT(64), [136] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__expression_repeat1, 2), - [138] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__expression_repeat1, 2), SHIFT_REPEAT(458), + [138] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__expression_repeat1, 2), SHIFT_REPEAT(460), [141] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym__expression_repeat1, 2), [143] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__expression, 2), [145] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__expression, 2), [147] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__expression, 3), [149] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__expression, 3), - [151] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__expression_repeat1, 2), SHIFT_REPEAT(457), + [151] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__expression_repeat1, 2), SHIFT_REPEAT(462), [154] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_filter_arguments, 4), [156] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_filter_arguments, 4), [158] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_hash, 2), @@ -25730,48 +25743,48 @@ static const TSParseActionEntry ts_parse_actions[] = { [247] = {.entry = {.count = 1, .reusable = false}}, SHIFT(132), [249] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_test_expression_repeat1, 2), SHIFT_REPEAT(120), [252] = {.entry = {.count = 1, .reusable = false}}, SHIFT(390), - [254] = {.entry = {.count = 1, .reusable = true}}, SHIFT(393), + [254] = {.entry = {.count = 1, .reusable = true}}, SHIFT(387), [256] = {.entry = {.count = 1, .reusable = false}}, SHIFT(403), [258] = {.entry = {.count = 1, .reusable = true}}, SHIFT(294), [260] = {.entry = {.count = 1, .reusable = false}}, SHIFT(167), [262] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_test_expression_repeat1, 2), SHIFT_REPEAT(132), [265] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_include_statement, 2), [267] = {.entry = {.count = 1, .reusable = true}}, SHIFT(376), - [269] = {.entry = {.count = 1, .reusable = true}}, SHIFT(449), + [269] = {.entry = {.count = 1, .reusable = true}}, SHIFT(452), [271] = {.entry = {.count = 1, .reusable = false}}, SHIFT(192), [273] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_include_statement_repeat1, 2, .production_id = 5), - [275] = {.entry = {.count = 1, .reusable = false}}, SHIFT(429), + [275] = {.entry = {.count = 1, .reusable = false}}, SHIFT(428), [277] = {.entry = {.count = 1, .reusable = true}}, SHIFT(333), [279] = {.entry = {.count = 1, .reusable = true}}, SHIFT(410), - [281] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_identifier_repeat1, 2), SHIFT_REPEAT(511), - [284] = {.entry = {.count = 1, .reusable = false}}, SHIFT(511), + [281] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_identifier_repeat1, 2), SHIFT_REPEAT(517), + [284] = {.entry = {.count = 1, .reusable = false}}, SHIFT(517), [286] = {.entry = {.count = 1, .reusable = true}}, SHIFT(308), [288] = {.entry = {.count = 1, .reusable = false}}, SHIFT(188), [290] = {.entry = {.count = 1, .reusable = true}}, SHIFT(311), - [292] = {.entry = {.count = 1, .reusable = true}}, SHIFT(430), - [294] = {.entry = {.count = 1, .reusable = true}}, SHIFT(535), - [296] = {.entry = {.count = 1, .reusable = true}}, SHIFT(547), + [292] = {.entry = {.count = 1, .reusable = true}}, SHIFT(432), + [294] = {.entry = {.count = 1, .reusable = true}}, SHIFT(531), + [296] = {.entry = {.count = 1, .reusable = true}}, SHIFT(542), [298] = {.entry = {.count = 1, .reusable = false}}, SHIFT(346), [300] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_test_expression_repeat1, 2), SHIFT_REPEAT(167), [303] = {.entry = {.count = 1, .reusable = false}}, SHIFT(342), - [305] = {.entry = {.count = 1, .reusable = true}}, SHIFT(455), + [305] = {.entry = {.count = 1, .reusable = true}}, SHIFT(459), [307] = {.entry = {.count = 1, .reusable = false}}, SHIFT(378), [309] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_statement, 2), [311] = {.entry = {.count = 1, .reusable = true}}, SHIFT(505), [313] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_test_expression_repeat1, 2), SHIFT_REPEAT(192), - [316] = {.entry = {.count = 1, .reusable = true}}, SHIFT(394), + [316] = {.entry = {.count = 1, .reusable = true}}, SHIFT(393), [318] = {.entry = {.count = 1, .reusable = true}}, SHIFT(284), [320] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_test_expression_repeat1, 2), SHIFT_REPEAT(188), - [323] = {.entry = {.count = 1, .reusable = true}}, SHIFT(431), + [323] = {.entry = {.count = 1, .reusable = true}}, SHIFT(433), [325] = {.entry = {.count = 1, .reusable = false}}, SHIFT(369), [327] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 4, .production_id = 13), [329] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment_statement, 4), [331] = {.entry = {.count = 1, .reusable = true}}, SHIFT(437), [333] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 2), - [335] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__expression_repeat1, 2), SHIFT_REPEAT(455), - [338] = {.entry = {.count = 1, .reusable = true}}, SHIFT(347), + [335] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__expression_repeat1, 2), SHIFT_REPEAT(459), + [338] = {.entry = {.count = 1, .reusable = true}}, SHIFT(325), [340] = {.entry = {.count = 1, .reusable = true}}, SHIFT(81), - [342] = {.entry = {.count = 1, .reusable = true}}, SHIFT(329), + [342] = {.entry = {.count = 1, .reusable = true}}, SHIFT(419), [344] = {.entry = {.count = 1, .reusable = true}}, SHIFT(217), [346] = {.entry = {.count = 1, .reusable = false}}, SHIFT(422), [348] = {.entry = {.count = 1, .reusable = false}}, SHIFT(399), @@ -25781,13 +25794,13 @@ static const TSParseActionEntry ts_parse_actions[] = { [356] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument, 1, .production_id = 10), [358] = {.entry = {.count = 1, .reusable = false}}, SHIFT(397), [360] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_filter_argument, 2, .production_id = 16), - [362] = {.entry = {.count = 1, .reusable = false}}, SHIFT(419), + [362] = {.entry = {.count = 1, .reusable = false}}, SHIFT(394), [364] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_arrow_function, 3, .production_id = 6), [366] = {.entry = {.count = 1, .reusable = true}}, SHIFT(309), [368] = {.entry = {.count = 1, .reusable = true}}, SHIFT(25), [370] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_arrow_function, 4), [372] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__literal, 1), - [374] = {.entry = {.count = 1, .reusable = true}}, SHIFT(432), + [374] = {.entry = {.count = 1, .reusable = true}}, SHIFT(429), [376] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__literal, 1), [378] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_arrow_function, 5, .production_id = 19), [380] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__hash_entry, 1, .production_id = 3), @@ -25810,7 +25823,7 @@ static const TSParseActionEntry ts_parse_actions[] = { [414] = {.entry = {.count = 1, .reusable = true}}, SHIFT(41), [416] = {.entry = {.count = 1, .reusable = true}}, SHIFT(79), [418] = {.entry = {.count = 1, .reusable = true}}, SHIFT(10), - [420] = {.entry = {.count = 1, .reusable = true}}, SHIFT(450), + [420] = {.entry = {.count = 1, .reusable = true}}, SHIFT(453), [422] = {.entry = {.count = 1, .reusable = true}}, SHIFT(512), [424] = {.entry = {.count = 1, .reusable = true}}, SHIFT(176), [426] = {.entry = {.count = 1, .reusable = true}}, SHIFT(177), @@ -25828,20 +25841,20 @@ static const TSParseActionEntry ts_parse_actions[] = { [450] = {.entry = {.count = 1, .reusable = true}}, SHIFT(31), [452] = {.entry = {.count = 1, .reusable = true}}, SHIFT(440), [454] = {.entry = {.count = 1, .reusable = true}}, SHIFT(285), - [456] = {.entry = {.count = 1, .reusable = true}}, SHIFT(433), - [458] = {.entry = {.count = 1, .reusable = false}}, SHIFT(433), + [456] = {.entry = {.count = 1, .reusable = true}}, SHIFT(431), + [458] = {.entry = {.count = 1, .reusable = false}}, SHIFT(431), [460] = {.entry = {.count = 1, .reusable = true}}, SHIFT(60), - [462] = {.entry = {.count = 1, .reusable = true}}, SHIFT(542), + [462] = {.entry = {.count = 1, .reusable = true}}, SHIFT(545), [464] = {.entry = {.count = 1, .reusable = true}}, SHIFT(408), [466] = {.entry = {.count = 1, .reusable = true}}, SHIFT(306), [468] = {.entry = {.count = 1, .reusable = false}}, SHIFT(158), [470] = {.entry = {.count = 1, .reusable = false}}, SHIFT(264), [472] = {.entry = {.count = 1, .reusable = false}}, SHIFT(213), [474] = {.entry = {.count = 1, .reusable = true}}, SHIFT(246), - [476] = {.entry = {.count = 1, .reusable = true}}, SHIFT(443), + [476] = {.entry = {.count = 1, .reusable = true}}, SHIFT(450), [478] = {.entry = {.count = 1, .reusable = true}}, SHIFT(293), [480] = {.entry = {.count = 1, .reusable = true}}, SHIFT(47), - [482] = {.entry = {.count = 1, .reusable = true}}, SHIFT(549), + [482] = {.entry = {.count = 1, .reusable = true}}, SHIFT(548), [484] = {.entry = {.count = 1, .reusable = true}}, SHIFT(59), [486] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tag_statement, 1, .production_id = 1), [488] = {.entry = {.count = 1, .reusable = true}}, SHIFT(407), @@ -25850,7 +25863,7 @@ static const TSParseActionEntry ts_parse_actions[] = { [494] = {.entry = {.count = 1, .reusable = false}}, SHIFT(66), [496] = {.entry = {.count = 1, .reusable = false}}, SHIFT(32), [498] = {.entry = {.count = 1, .reusable = true}}, SHIFT(32), - [500] = {.entry = {.count = 1, .reusable = true}}, SHIFT(446), + [500] = {.entry = {.count = 1, .reusable = true}}, SHIFT(445), [502] = {.entry = {.count = 1, .reusable = true}}, SHIFT(286), [504] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tag_statement, 2, .production_id = 1), [506] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_tag_statement_repeat1, 2), @@ -25860,14 +25873,14 @@ static const TSParseActionEntry ts_parse_actions[] = { [517] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_tag_statement_repeat1, 2), SHIFT_REPEAT(66), [520] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_tag_statement_repeat1, 2), SHIFT_REPEAT(32), [523] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_tag_statement_repeat1, 2), SHIFT_REPEAT(32), - [526] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_tag_statement_repeat1, 2), SHIFT_REPEAT(446), + [526] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_tag_statement_repeat1, 2), SHIFT_REPEAT(445), [529] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_tag_statement_repeat1, 2), SHIFT_REPEAT(286), - [532] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_tag_statement_repeat1, 2), SHIFT_REPEAT(433), - [535] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_tag_statement_repeat1, 2), SHIFT_REPEAT(433), + [532] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_tag_statement_repeat1, 2), SHIFT_REPEAT(431), + [535] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_tag_statement_repeat1, 2), SHIFT_REPEAT(431), [538] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tag_statement, 1), [540] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tag_statement, 2), [542] = {.entry = {.count = 1, .reusable = true}}, SHIFT(259), - [544] = {.entry = {.count = 1, .reusable = true}}, SHIFT(548), + [544] = {.entry = {.count = 1, .reusable = true}}, SHIFT(549), [546] = {.entry = {.count = 1, .reusable = true}}, SHIFT(356), [548] = {.entry = {.count = 1, .reusable = true}}, SHIFT(242), [550] = {.entry = {.count = 1, .reusable = true}}, SHIFT(82), @@ -25881,20 +25894,20 @@ static const TSParseActionEntry ts_parse_actions[] = { [566] = {.entry = {.count = 1, .reusable = true}}, SHIFT(262), [568] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3), [570] = {.entry = {.count = 1, .reusable = true}}, SHIFT(314), - [572] = {.entry = {.count = 1, .reusable = true}}, SHIFT(539), + [572] = {.entry = {.count = 1, .reusable = true}}, SHIFT(547), [574] = {.entry = {.count = 1, .reusable = true}}, SHIFT(323), [576] = {.entry = {.count = 1, .reusable = true}}, SHIFT(71), [578] = {.entry = {.count = 1, .reusable = true}}, SHIFT(55), [580] = {.entry = {.count = 1, .reusable = true}}, SHIFT(345), [582] = {.entry = {.count = 1, .reusable = true}}, SHIFT(213), - [584] = {.entry = {.count = 1, .reusable = false}}, SHIFT(477), - [586] = {.entry = {.count = 1, .reusable = false}}, SHIFT(533), + [584] = {.entry = {.count = 1, .reusable = false}}, SHIFT(479), + [586] = {.entry = {.count = 1, .reusable = false}}, SHIFT(535), [588] = {.entry = {.count = 1, .reusable = false}}, SHIFT(335), - [590] = {.entry = {.count = 1, .reusable = false}}, SHIFT(479), + [590] = {.entry = {.count = 1, .reusable = false}}, SHIFT(481), [592] = {.entry = {.count = 1, .reusable = false}}, SHIFT(291), [594] = {.entry = {.count = 1, .reusable = false}}, SHIFT(339), [596] = {.entry = {.count = 1, .reusable = false}}, SHIFT(340), - [598] = {.entry = {.count = 1, .reusable = false}}, SHIFT(506), + [598] = {.entry = {.count = 1, .reusable = false}}, SHIFT(522), [600] = {.entry = {.count = 1, .reusable = false}}, SHIFT(344), [602] = {.entry = {.count = 1, .reusable = false}}, SHIFT(349), [604] = {.entry = {.count = 1, .reusable = false}}, SHIFT(424), @@ -25906,145 +25919,146 @@ static const TSParseActionEntry ts_parse_actions[] = { [620] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template, 1), [622] = {.entry = {.count = 1, .reusable = true}}, SHIFT(67), [624] = {.entry = {.count = 1, .reusable = true}}, SHIFT(516), - [626] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binary_operator, 1), - [628] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_binary_operator, 1), - [630] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_name, 2), - [632] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_name, 2), - [634] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_hash_key, 2, .production_id = 6), - [636] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_hash_key, 2, .production_id = 6), - [638] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_hash_key, 4), - [640] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_hash_key, 4), - [642] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_hash_key, 2), - [644] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_hash_key, 2), - [646] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_unary_operator, 1), - [648] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_unary_operator, 1), + [626] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_name, 2), + [628] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_name, 2), + [630] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_hash_key, 2), + [632] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_hash_key, 2), + [634] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binary_operator, 1), + [636] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_binary_operator, 1), + [638] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_unary_operator, 1), + [640] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_unary_operator, 1), + [642] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_hash_key, 2, .production_id = 6), + [644] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_hash_key, 2, .production_id = 6), + [646] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_hash_key, 4), + [648] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_hash_key, 4), [650] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_content, 1), [652] = {.entry = {.count = 1, .reusable = false}}, SHIFT(435), [654] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_content, 1), [656] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_content_repeat1, 2), [658] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_content_repeat1, 2), SHIFT_REPEAT(435), [661] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_content_repeat1, 2), - [663] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_comment, 3), - [665] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_comment, 3), + [663] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_statement_directive, 3), + [665] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_statement_directive, 3), [667] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_output_directive, 3), [669] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_output_directive, 3), - [671] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_statement_directive, 3), - [673] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_statement_directive, 3), - [675] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_include_statement_repeat1, 2), - [677] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_include_statement_repeat1, 2), SHIFT_REPEAT(376), - [680] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_include_statement_repeat1, 2), SHIFT_REPEAT(449), + [671] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_comment, 3), + [673] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_comment, 3), + [675] = {.entry = {.count = 1, .reusable = false}}, SHIFT(251), + [677] = {.entry = {.count = 1, .reusable = false}}, SHIFT(446), + [679] = {.entry = {.count = 1, .reusable = true}}, SHIFT(446), + [681] = {.entry = {.count = 1, .reusable = false}}, SHIFT(375), [683] = {.entry = {.count = 1, .reusable = false}}, SHIFT(57), - [685] = {.entry = {.count = 1, .reusable = false}}, SHIFT(441), - [687] = {.entry = {.count = 1, .reusable = true}}, SHIFT(441), - [689] = {.entry = {.count = 1, .reusable = false}}, SHIFT(383), - [691] = {.entry = {.count = 1, .reusable = false}}, SHIFT(87), - [693] = {.entry = {.count = 1, .reusable = false}}, SHIFT(445), - [695] = {.entry = {.count = 1, .reusable = true}}, SHIFT(445), - [697] = {.entry = {.count = 1, .reusable = false}}, SHIFT(251), - [699] = {.entry = {.count = 1, .reusable = false}}, SHIFT(216), - [701] = {.entry = {.count = 1, .reusable = false}}, SHIFT(442), - [703] = {.entry = {.count = 1, .reusable = true}}, SHIFT(442), - [705] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_include_statement, 3), - [707] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_interpolated_string_repeat1, 2), - [709] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_interpolated_string_repeat1, 2), SHIFT_REPEAT(445), - [712] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_interpolated_string_repeat1, 2), SHIFT_REPEAT(445), - [715] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_interpolated_string_repeat1, 2), SHIFT_REPEAT(383), - [718] = {.entry = {.count = 1, .reusable = false}}, SHIFT(72), - [720] = {.entry = {.count = 1, .reusable = false}}, SHIFT(447), - [722] = {.entry = {.count = 1, .reusable = true}}, SHIFT(447), - [724] = {.entry = {.count = 1, .reusable = false}}, SHIFT(80), - [726] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_from_statement_repeat1, 2), - [728] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_from_statement_repeat1, 2), SHIFT_REPEAT(535), - [731] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_include_statement_repeat1, 1, .production_id = 5), - [733] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_interpolated_string_repeat1, 3), - [735] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_interpolated_string_repeat1, 3), - [737] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_macro_statement, 2, .production_id = 2), - [739] = {.entry = {.count = 1, .reusable = true}}, SHIFT(459), - [741] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_from_statement_repeat1, 2, .production_id = 19), - [743] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_from_statement, 6, .production_id = 18), - [745] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_from_statement, 7, .production_id = 18), - [747] = {.entry = {.count = 1, .reusable = true}}, SHIFT(158), - [749] = {.entry = {.count = 1, .reusable = true}}, SHIFT(514), - [751] = {.entry = {.count = 1, .reusable = true}}, SHIFT(27), - [753] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3), - [755] = {.entry = {.count = 1, .reusable = true}}, SHIFT(474), - [757] = {.entry = {.count = 1, .reusable = true}}, SHIFT(424), - [759] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_identifier_repeat1, 2), SHIFT_REPEAT(514), - [762] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_from_statement, 4, .production_id = 15), - [764] = {.entry = {.count = 1, .reusable = true}}, SHIFT(517), - [766] = {.entry = {.count = 1, .reusable = true}}, SHIFT(297), - [768] = {.entry = {.count = 1, .reusable = true}}, SHIFT(69), - [770] = {.entry = {.count = 1, .reusable = true}}, SHIFT(498), - [772] = {.entry = {.count = 1, .reusable = true}}, SHIFT(467), - [774] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_statement, 4, .production_id = 14), - [776] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_hash_repeat1, 2), - [778] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_hash_repeat1, 2), SHIFT_REPEAT(305), - [781] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameters, 4), - [783] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_array_repeat1, 2), SHIFT_REPEAT(347), - [786] = {.entry = {.count = 1, .reusable = true}}, SHIFT(427), - [788] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter, 1), - [790] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_filter_arguments_repeat1, 2), SHIFT_REPEAT(297), - [793] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_filter_arguments_repeat1, 2), - [795] = {.entry = {.count = 1, .reusable = true}}, SHIFT(541), - [797] = {.entry = {.count = 1, .reusable = true}}, SHIFT(500), + [685] = {.entry = {.count = 1, .reusable = false}}, SHIFT(449), + [687] = {.entry = {.count = 1, .reusable = true}}, SHIFT(449), + [689] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_include_statement, 3), + [691] = {.entry = {.count = 1, .reusable = true}}, SHIFT(523), + [693] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_include_statement_repeat1, 2), + [695] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_include_statement_repeat1, 2), SHIFT_REPEAT(376), + [698] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_include_statement_repeat1, 2), SHIFT_REPEAT(452), + [701] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_identifier_repeat1, 2), SHIFT_REPEAT(523), + [704] = {.entry = {.count = 1, .reusable = false}}, SHIFT(72), + [706] = {.entry = {.count = 1, .reusable = false}}, SHIFT(447), + [708] = {.entry = {.count = 1, .reusable = true}}, SHIFT(447), + [710] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_interpolated_string_repeat1, 2), + [712] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_interpolated_string_repeat1, 2), SHIFT_REPEAT(446), + [715] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_interpolated_string_repeat1, 2), SHIFT_REPEAT(446), + [718] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_interpolated_string_repeat1, 2), SHIFT_REPEAT(375), + [721] = {.entry = {.count = 1, .reusable = false}}, SHIFT(80), + [723] = {.entry = {.count = 1, .reusable = false}}, SHIFT(87), + [725] = {.entry = {.count = 1, .reusable = false}}, SHIFT(216), + [727] = {.entry = {.count = 1, .reusable = false}}, SHIFT(439), + [729] = {.entry = {.count = 1, .reusable = true}}, SHIFT(439), + [731] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_from_statement_repeat1, 2), + [733] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_from_statement_repeat1, 2), SHIFT_REPEAT(531), + [736] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_include_statement_repeat1, 1, .production_id = 5), + [738] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_interpolated_string_repeat1, 3), + [740] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_interpolated_string_repeat1, 3), + [742] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_from_statement, 7, .production_id = 18), + [744] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_macro_statement, 2, .production_id = 2), + [746] = {.entry = {.count = 1, .reusable = true}}, SHIFT(461), + [748] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_from_statement_repeat1, 2, .production_id = 19), + [750] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_from_statement, 6, .production_id = 18), + [752] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment_statement, 2), + [754] = {.entry = {.count = 1, .reusable = true}}, SHIFT(382), + [756] = {.entry = {.count = 1, .reusable = true}}, SHIFT(158), + [758] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3), + [760] = {.entry = {.count = 1, .reusable = true}}, SHIFT(478), + [762] = {.entry = {.count = 1, .reusable = true}}, SHIFT(424), + [764] = {.entry = {.count = 1, .reusable = true}}, SHIFT(27), + [766] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_from_statement, 4, .production_id = 15), + [768] = {.entry = {.count = 1, .reusable = true}}, SHIFT(509), + [770] = {.entry = {.count = 1, .reusable = true}}, SHIFT(297), + [772] = {.entry = {.count = 1, .reusable = true}}, SHIFT(69), + [774] = {.entry = {.count = 1, .reusable = true}}, SHIFT(295), + [776] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_filter_arguments_repeat1, 2), SHIFT_REPEAT(297), + [779] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_filter_arguments_repeat1, 2), + [781] = {.entry = {.count = 1, .reusable = true}}, SHIFT(510), + [783] = {.entry = {.count = 1, .reusable = true}}, SHIFT(380), + [785] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_statement, 4, .production_id = 14), + [787] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_hash_repeat1, 2), + [789] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_hash_repeat1, 2), SHIFT_REPEAT(305), + [792] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameters, 4), + [794] = {.entry = {.count = 1, .reusable = true}}, SHIFT(546), + [796] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_array_repeat1, 2), SHIFT_REPEAT(325), [799] = {.entry = {.count = 1, .reusable = true}}, SHIFT(304), [801] = {.entry = {.count = 1, .reusable = true}}, SHIFT(83), - [803] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameters, 2), - [805] = {.entry = {.count = 1, .reusable = true}}, SHIFT(88), - [807] = {.entry = {.count = 1, .reusable = true}}, SHIFT(86), - [809] = {.entry = {.count = 1, .reusable = true}}, SHIFT(298), - [811] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_for_statement_repeat1, 2), SHIFT_REPEAT(523), - [814] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_for_statement_repeat1, 2), - [816] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 1), - [818] = {.entry = {.count = 1, .reusable = true}}, SHIFT(49), - [820] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_parameters_repeat1, 2), SHIFT_REPEAT(498), - [823] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_parameters_repeat1, 2), - [825] = {.entry = {.count = 1, .reusable = true}}, SHIFT(295), - [827] = {.entry = {.count = 1, .reusable = true}}, SHIFT(53), - [829] = {.entry = {.count = 1, .reusable = true}}, SHIFT(62), - [831] = {.entry = {.count = 1, .reusable = true}}, SHIFT(77), - [833] = {.entry = {.count = 1, .reusable = true}}, SHIFT(303), - [835] = {.entry = {.count = 1, .reusable = true}}, SHIFT(224), - [837] = {.entry = {.count = 1, .reusable = true}}, SHIFT(438), - [839] = {.entry = {.count = 1, .reusable = true}}, SHIFT(52), - [841] = {.entry = {.count = 1, .reusable = true}}, SHIFT(233), - [843] = {.entry = {.count = 1, .reusable = true}}, SHIFT(245), - [845] = {.entry = {.count = 1, .reusable = true}}, SHIFT(221), - [847] = {.entry = {.count = 1, .reusable = true}}, SHIFT(296), - [849] = {.entry = {.count = 1, .reusable = true}}, SHIFT(300), - [851] = {.entry = {.count = 1, .reusable = true}}, SHIFT(231), - [853] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_macro_statement, 3, .production_id = 2), - [855] = {.entry = {.count = 1, .reusable = true}}, SHIFT(84), - [857] = {.entry = {.count = 1, .reusable = true}}, SHIFT(250), - [859] = {.entry = {.count = 1, .reusable = true}}, SHIFT(301), - [861] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_arguments_repeat1, 2), SHIFT_REPEAT(304), - [864] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_arguments_repeat1, 2), - [866] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameters, 3), - [868] = {.entry = {.count = 1, .reusable = true}}, SHIFT(58), - [870] = {.entry = {.count = 1, .reusable = true}}, SHIFT(523), - [872] = {.entry = {.count = 1, .reusable = true}}, SHIFT(336), - [874] = {.entry = {.count = 1, .reusable = true}}, SHIFT(46), - [876] = {.entry = {.count = 1, .reusable = true}}, SHIFT(380), - [878] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_statement, 3), - [880] = {.entry = {.count = 1, .reusable = true}}, SHIFT(167), - [882] = {.entry = {.count = 1, .reusable = true}}, SHIFT(101), - [884] = {.entry = {.count = 1, .reusable = true}}, SHIFT(120), - [886] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter, 3), - [888] = {.entry = {.count = 1, .reusable = true}}, SHIFT(64), - [890] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_filter_argument, 2), - [892] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_filter_argument, 1), - [894] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_for_statement_repeat1, 2, .production_id = 12), - [896] = {.entry = {.count = 1, .reusable = true}}, SHIFT(132), - [898] = {.entry = {.count = 1, .reusable = true}}, SHIFT(188), - [900] = {.entry = {.count = 1, .reusable = true}}, SHIFT(192), - [902] = {.entry = {.count = 1, .reusable = true}}, SHIFT(411), - [904] = {.entry = {.count = 1, .reusable = true}}, SHIFT(545), - [906] = {.entry = {.count = 1, .reusable = true}}, SHIFT(409), - [908] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_test_operator, 1), - [910] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), - [912] = {.entry = {.count = 1, .reusable = true}}, SHIFT(436), - [914] = {.entry = {.count = 1, .reusable = true}}, SHIFT(382), - [916] = {.entry = {.count = 1, .reusable = true}}, SHIFT(367), + [803] = {.entry = {.count = 1, .reusable = true}}, SHIFT(427), + [805] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter, 1), + [807] = {.entry = {.count = 1, .reusable = true}}, SHIFT(88), + [809] = {.entry = {.count = 1, .reusable = true}}, SHIFT(86), + [811] = {.entry = {.count = 1, .reusable = true}}, SHIFT(298), + [813] = {.entry = {.count = 1, .reusable = true}}, SHIFT(501), + [815] = {.entry = {.count = 1, .reusable = true}}, SHIFT(504), + [817] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameters, 2), + [819] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_for_statement_repeat1, 2), SHIFT_REPEAT(510), + [822] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_for_statement_repeat1, 2), + [824] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 1), + [826] = {.entry = {.count = 1, .reusable = true}}, SHIFT(49), + [828] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_parameters_repeat1, 2), SHIFT_REPEAT(501), + [831] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_parameters_repeat1, 2), + [833] = {.entry = {.count = 1, .reusable = true}}, SHIFT(62), + [835] = {.entry = {.count = 1, .reusable = true}}, SHIFT(58), + [837] = {.entry = {.count = 1, .reusable = true}}, SHIFT(224), + [839] = {.entry = {.count = 1, .reusable = true}}, SHIFT(53), + [841] = {.entry = {.count = 1, .reusable = true}}, SHIFT(77), + [843] = {.entry = {.count = 1, .reusable = true}}, SHIFT(303), + [845] = {.entry = {.count = 1, .reusable = true}}, SHIFT(233), + [847] = {.entry = {.count = 1, .reusable = true}}, SHIFT(245), + [849] = {.entry = {.count = 1, .reusable = true}}, SHIFT(221), + [851] = {.entry = {.count = 1, .reusable = true}}, SHIFT(436), + [853] = {.entry = {.count = 1, .reusable = true}}, SHIFT(300), + [855] = {.entry = {.count = 1, .reusable = true}}, SHIFT(231), + [857] = {.entry = {.count = 1, .reusable = true}}, SHIFT(52), + [859] = {.entry = {.count = 1, .reusable = true}}, SHIFT(296), + [861] = {.entry = {.count = 1, .reusable = true}}, SHIFT(250), + [863] = {.entry = {.count = 1, .reusable = true}}, SHIFT(301), + [865] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_macro_statement, 3, .production_id = 2), + [867] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_arguments_repeat1, 2), SHIFT_REPEAT(304), + [870] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_arguments_repeat1, 2), + [872] = {.entry = {.count = 1, .reusable = true}}, SHIFT(84), + [874] = {.entry = {.count = 1, .reusable = true}}, SHIFT(336), + [876] = {.entry = {.count = 1, .reusable = true}}, SHIFT(46), + [878] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameters, 3), + [880] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_statement, 3), + [882] = {.entry = {.count = 1, .reusable = true}}, SHIFT(470), + [884] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_filter_argument, 2), + [886] = {.entry = {.count = 1, .reusable = true}}, SHIFT(132), + [888] = {.entry = {.count = 1, .reusable = true}}, SHIFT(101), + [890] = {.entry = {.count = 1, .reusable = true}}, SHIFT(120), + [892] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter, 3), + [894] = {.entry = {.count = 1, .reusable = true}}, SHIFT(64), + [896] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_filter_argument, 1), + [898] = {.entry = {.count = 1, .reusable = true}}, SHIFT(167), + [900] = {.entry = {.count = 1, .reusable = true}}, SHIFT(188), + [902] = {.entry = {.count = 1, .reusable = true}}, SHIFT(192), + [904] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_for_statement_repeat1, 2, .production_id = 12), + [906] = {.entry = {.count = 1, .reusable = true}}, SHIFT(541), + [908] = {.entry = {.count = 1, .reusable = true}}, SHIFT(438), + [910] = {.entry = {.count = 1, .reusable = true}}, SHIFT(366), + [912] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_test_operator, 1), + [914] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), + [916] = {.entry = {.count = 1, .reusable = true}}, SHIFT(409), + [918] = {.entry = {.count = 1, .reusable = true}}, SHIFT(411), }; #ifdef __cplusplus diff --git a/tree-sitter-twig.wasm b/tree-sitter-twig.wasm index 294e174..a6f019e 100755 Binary files a/tree-sitter-twig.wasm and b/tree-sitter-twig.wasm differ