diff --git a/Cargo.toml b/Cargo.toml index 7468532..acb776c 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,12 +1,12 @@ [package] -name = "tree-sitter-your-language-name" -description = "YourLanguageName grammar for tree-sitter" +name = "tree-sitter-circom" +description = "Circom grammar for tree-sitter" version = "0.0.1" license = "MIT" readme = "README.md" -keywords = ["incremental", "parsing", "tree-sitter", "your-language-name"] +keywords = ["incremental", "parsing", "tree-sitter", "circom"] categories = ["parsing", "text-editors"] -repository = "https://github.com/tree-sitter/tree-sitter-your-language-name" +repository = "https://github.com/tree-sitter/tree-sitter-circom" edition = "2021" autoexamples = false @@ -17,7 +17,7 @@ include = ["bindings/rust/*", "grammar.js", "queries/*", "src/*"] path = "bindings/rust/lib.rs" [dependencies] -tree-sitter = ">=0.22.6" +tree-sitter-language = "0.1.0" [build-dependencies] cc = "1.0.87" diff --git a/bindings/go/binding_test.go b/bindings/go/binding_test.go index 175f778..671baab 100644 --- a/bindings/go/binding_test.go +++ b/bindings/go/binding_test.go @@ -3,8 +3,8 @@ package tree_sitter_circom_test import ( "testing" - tree_sitter "github.com/smacker/go-tree-sitter" - "github.com/tree-sitter/tree-sitter-circom" + tree_sitter "github.com/tree-sitter/go-tree-sitter" + tree_sitter_circom "github.com/tree-sitter/tree-sitter-circom/bindings/go" ) func TestCanLoadGrammar(t *testing.T) { diff --git a/bindings/go/go.mod b/bindings/go/go.mod deleted file mode 100644 index 5966ddf..0000000 --- a/bindings/go/go.mod +++ /dev/null @@ -1,5 +0,0 @@ -module github.com/tree-sitter/tree-sitter-circom - -go 1.22 - -require github.com/smacker/go-tree-sitter v0.0.0-20230720070738-0d0a9f78d8f8 diff --git a/bindings/node/binding_test.js b/bindings/node/binding_test.js new file mode 100644 index 0000000..afede30 --- /dev/null +++ b/bindings/node/binding_test.js @@ -0,0 +1,9 @@ +/// + +const assert = require("node:assert"); +const { test } = require("node:test"); + +test("can load grammar", () => { + const parser = new (require("tree-sitter"))(); + assert.doesNotThrow(() => parser.setLanguage(require("."))); +}); diff --git a/bindings/python/tests/test_binding.py b/bindings/python/tests/test_binding.py new file mode 100644 index 0000000..e9f089c --- /dev/null +++ b/bindings/python/tests/test_binding.py @@ -0,0 +1,11 @@ +from unittest import TestCase + +import tree_sitter, tree_sitter_circom + + +class TestLanguage(TestCase): + def test_can_load_grammar(self): + try: + tree_sitter.Language(tree_sitter_circom.language()) + except Exception: + self.fail("Error loading Circom grammar") diff --git a/bindings/python/tree_sitter_circom/binding.c b/bindings/python/tree_sitter_circom/binding.c index 55acd47..80aeaf7 100644 --- a/bindings/python/tree_sitter_circom/binding.c +++ b/bindings/python/tree_sitter_circom/binding.c @@ -4,8 +4,8 @@ typedef struct TSLanguage TSLanguage; TSLanguage *tree_sitter_circom(void); -static PyObject* _binding_language(PyObject *self, PyObject *args) { - return PyLong_FromVoidPtr(tree_sitter_circom()); +static PyObject* _binding_language(PyObject *Py_UNUSED(self), PyObject *Py_UNUSED(args)) { + return PyCapsule_New(tree_sitter_circom(), "tree_sitter.Language", NULL); } static PyMethodDef methods[] = { diff --git a/bindings/rust/lib.rs b/bindings/rust/lib.rs index eb1504b..d8f6e61 100644 --- a/bindings/rust/lib.rs +++ b/bindings/rust/lib.rs @@ -1,4 +1,4 @@ -//! This crate provides YourLanguageName language support for the [tree-sitter][] parsing library. +//! This crate provides Circom language support for the [tree-sitter][] parsing library. //! //! Typically, you will use the [language][language func] function to add this language to a //! tree-sitter [Parser][], and then use the parser to parse some code: @@ -7,7 +7,10 @@ //! let code = r#" //! "#; //! let mut parser = tree_sitter::Parser::new(); -//! parser.set_language(&tree_sitter_circom::language()).expect("Error loading YourLanguageName grammar"); +//! let language = tree_sitter_circom::LANGUAGE; +//! parser +//! .set_language(&language.into()) +//! .expect("Error loading Circom parser"); //! let tree = parser.parse(code, None).unwrap(); //! assert!(!tree.root_node().has_error()); //! ``` @@ -17,25 +20,21 @@ //! [Parser]: https://docs.rs/tree-sitter/*/tree_sitter/struct.Parser.html //! [tree-sitter]: https://tree-sitter.github.io/ -use tree_sitter::Language; +use tree_sitter_language::LanguageFn; extern "C" { - fn tree_sitter_circom() -> Language; + fn tree_sitter_circom() -> *const (); } -/// Get the tree-sitter [Language][] for this grammar. -/// -/// [Language]: https://docs.rs/tree-sitter/*/tree_sitter/struct.Language.html -pub fn language() -> Language { - unsafe { tree_sitter_circom() } -} +/// The tree-sitter [`LanguageFn`] for this grammar. +pub const LANGUAGE: LanguageFn = unsafe { LanguageFn::from_raw(tree_sitter_circom) }; /// The content of the [`node-types.json`][] file for this grammar. /// /// [`node-types.json`]: https://tree-sitter.github.io/tree-sitter/using-parsers#static-node-types pub const NODE_TYPES: &str = include_str!("../../src/node-types.json"); -// Uncomment these to include any queries that this grammar contains +// NOTE: uncomment these to include any queries that this grammar contains: // pub const HIGHLIGHTS_QUERY: &str = include_str!("../../queries/highlights.scm"); // pub const INJECTIONS_QUERY: &str = include_str!("../../queries/injections.scm"); @@ -48,7 +47,7 @@ mod tests { fn test_can_load_grammar() { let mut parser = tree_sitter::Parser::new(); parser - .set_language(&super::language()) - .expect("Error loading circom grammar"); + .set_language(&super::LANGUAGE.into()) + .expect("Error loading Circom parser"); } } diff --git a/bindings/swift/TreeSitterCircomTests/TreeSitterCircomTests.swift b/bindings/swift/TreeSitterCircomTests/TreeSitterCircomTests.swift new file mode 100644 index 0000000..bfff1d0 --- /dev/null +++ b/bindings/swift/TreeSitterCircomTests/TreeSitterCircomTests.swift @@ -0,0 +1,12 @@ +import XCTest +import SwiftTreeSitter +import TreeSitterCircom + +final class TreeSitterCircomTests: XCTestCase { + func testCanLoadGrammar() throws { + let parser = Parser() + let language = Language(language: tree_sitter_circom()) + XCTAssertNoThrow(try parser.setLanguage(language), + "Error loading Circom grammar") + } +} diff --git a/go.mod b/go.mod new file mode 100644 index 0000000..00931bc --- /dev/null +++ b/go.mod @@ -0,0 +1,5 @@ +module github.com/tree-sitter/tree-sitter-circom + +go 1.23 + +require github.com/tree-sitter/go-tree-sitter v0.23 diff --git a/grammar.js b/grammar.js index 2c9ba8b..b16ca89 100644 --- a/grammar.js +++ b/grammar.js @@ -60,28 +60,64 @@ module.exports = grammar({ // Pragma pragma_directive: $ => seq( - "pragma", + 'pragma', choice($.circom_pragma_token, $.circom_custom_templates_token), $._semicolon, ), - circom_custom_templates_token: $ => prec(1, "custom_templates"), + circom_custom_templates_token: $ => prec(1, 'custom_templates'), circom_pragma_token: $ => seq( $._circom, - $.circom_version + field('version', $.circom_version) ), - _circom: $ => prec(1, "circom"), - circom_version: $ => /"?\.? ?(\d|\*)+(\. ?(\d|\*)+ ?(\.(\d|\*)+)?)?"?/, + _circom: $ => prec(1, 'circom'), + + circom_version: $ => /'?\.? ?(\d|\*)+(\. ?(\d|\*)+ ?(\.(\d|\*)+)?)?'?/, // Include include_directive: $ => seq( - "include", + 'include', field('source', $.string), $._semicolon ), + string: $ => choice( + seq( + '"', + repeat(choice( + $._string_immediate_elt_inside_double_quote, + $._escape_sequence + )), + '"' + ), + seq( + "'", + repeat(choice( + $._string_immediate_elt_inside_quote, + $._escape_sequence + )), + "'" + ) + ), + + _escape_sequence: $ => token.immediate(seq( + '\\', + choice( + /[^xu0-7]/, + /[0-7]{1,3}/, + /x[0-9a-fA-F]{2}/, + /u[0-9a-fA-F]{4}/ + ) + )), + + _string_immediate_elt_inside_double_quote: $ => + token.immediate(prec(PREC.STRING, /[^"\\\n]+|\\\r?\n/)), + + _string_immediate_elt_inside_quote: $ => + token.immediate(prec(PREC.STRING, /[^'\\\n]+|\\\r?\n/)), + // -- [ Definition ] -- _definition: $ => choice( $.function_definition, @@ -89,13 +125,12 @@ module.exports = grammar({ $.main_component_definition ), - template_definition: $ => seq( - "template", - optional($.template_type), - field("name", $.identifier), + 'template', + optional(field('type', $.template_type)), + field('name', $.identifier), $.parameter_list, - $.template_body + field('body', $.template_body) ), template_type: $ => choice( @@ -103,45 +138,50 @@ module.exports = grammar({ $.parallel ), - custom: $ => "custom", - parallel: $ => "parallel", - template_body: $ => seq( - "{", + '{', repeat($._statement), - "}", + '}', ), function_definition: $ => seq( - "function", - field("name", $.identifier), + 'function', + field('name', $.identifier), $.parameter_list, - $.function_body + field('body', $.function_body) ), function_body: $ => seq( - "{", + '{', repeat($._statement), - "}", + '}', + ), + + parameter_list: $ => seq( + '(', commaSep($.parameter), ')' + ), + + parameter: $ => seq( + field('name', $.identifier) ), main_component_definition: $ => seq( - "component", - "main", + 'component', + 'main', optional($.main_component_public_signals), - "=", - $.call_expression, + '=', + field('value', $.call_expression), $._semicolon ), main_component_public_signals: $ => seq( - "{", - "public", - "[", + '{', + 'public', + '[', commaSep1($.parameter), - "]", - "}" + ']', + '}' ), // -- [ Statements ] -- @@ -151,11 +191,13 @@ module.exports = grammar({ $.if_statement, $.for_statement, $.while_statement, + $.expression_statement, + $.signal_declaration_statement, $.variable_declaration_statement, - $.expression_statement + $.component_declaration_statement, ), - block_statement: $ => seq('{', repeat($._statement), "}"), + block_statement: $ => seq('{', repeat($._statement), '}'), expression_statement: $ => seq($._expression, $._semicolon), @@ -179,34 +221,81 @@ module.exports = grammar({ 'return', $._expression, $._semicolon ), - variable_declaration_statement: $ => seq( - $._type, - commaSep1($._variable_initialization), + signal_declaration_statement: $ => seq( + 'signal', + optional($.signal_visibility), + optional($.signal_tags), + commaSep1($._signal_declaration), $._semicolon ), - _variable_initialization: $ => prec.left(1, seq( - commaSep1($.identifier), - optional($.array_definition), + _signal_declaration: $ => prec.left(1, seq( + field('name', $.identifier), + optional(field('type', $.array_type)), optional(seq( choice( - '=', - '<==', - '==>', - '<--', - '-->' - ), - field("value", $._expression) + "<==", + "<--" + ), + field('value', $._expression) ))) ), - // Expressions + signal_visibility: $ => choice( + 'input', + 'output' + ), + + signal_tags: $ => seq( + '{', + commaSep1($.identifier), + '}' + ), + + variable_declaration_statement: $ => seq( + 'var', + commaSep1($._variable_declaration), + $._semicolon + ), + _variable_declaration: $ => prec.left(1, seq( + field('name', $.identifier), + optional(field('type', $.array_type)), + optional(seq( + '=', + field('value', $._expression) + ))) + ), + + component_declaration_statement: $ => prec.left(1, seq( + 'component', + commaSep1($._component_declaration), + $._semicolon + )), + + _component_declaration: $ => seq( + field('name', $.identifier), + optional(field('type', $.array_type)), + optional(seq( + '=', + field('value', $.call_expression) + )) + ), + + array_type: $ => prec.left(1, repeat1( + seq( + '[', + $._expression, + ']', + ) + )), + + // -- [ Expressions ] -- _expression: $ => choice( - $.int, $.identifier, - $.array, - $.tuple, + $.int_literal, + $.array_expression, + $.tuple_expression, $.unary_expression, $.binary_expression, $.ternary_expression, @@ -219,10 +308,20 @@ module.exports = grammar({ $.assignment_expression, ), + array_expression: $ => seq( + '[', + commaSep1($._expression), + ']' + ), + + tuple_expression: $ => seq( + '(', + commaSep1($._expression), + ')' + ), + assignment_expression: $ => prec.right(1, seq( - choice( - $._expression - ), + $._expression, choice( '<==', '==>', @@ -264,26 +363,26 @@ module.exports = grammar({ '--', ), - anonymous_inputs: $ => seq( - '(', - optional($.argument_list), - ')' - ), - - call_expression: $ => seq( + call_expression: $ => prec.left(1, seq( optional($.parallel), $.identifier, '(', optional($.argument_list), ')', optional($.anonymous_inputs) + )), + + anonymous_inputs: $ => seq( + '(', + optional($.argument_list), + ')' ), argument_list: $ => seq( - $._expression, + field('argument', $._expression), repeat(seq( ',', - $._expression + field('argument', $._expression) )) ), @@ -306,7 +405,7 @@ module.exports = grammar({ parenthesized_expression: $ => prec(2, seq('(', $._expression, ')')), ternary_expression: $ => prec.left( - seq($._expression, "?", $._expression, ':', $._expression) + seq($._expression, '?', $._expression, ':', $._expression) ), unary_expression: $ => choice(...[ @@ -355,105 +454,13 @@ module.exports = grammar({ _semicolon: $ => ';', - identifier: $ => /[a-zA-Z$_][a-zA-Z0-9$_]*/, - - int: $ => /\d+/, - - array: $ => seq( - "[", - commaSep1($._expression), - "]" - ), - - tuple: $ => seq( - '(', - commaSep1($._expression), - ')' - ), - - _type: $ => choice( - $.signal, - $.var, - $.component - ), - - array_definition: $ => repeat1( - seq( - "[", - $._expression, - "]", - ) - ), - - var: $ => "var", - - component: $ => "component", - - signal: $ => seq( - 'signal', - optional($.signal_visability), - optional($.signal_tags) - ), - - signal_visability: $ => choice( - "input", - "output" - ), - - signal_tags: $ => seq( - "{", - $.identifier, - repeat( - seq( - ",", - $.identifier - ) - ), - "}" - ), - - parameter_list: $ => seq( - '(', commaSep($.parameter), ')' - ), + identifier: $ => token(/[$_]*[a-zA-Z][a-zA-Z$_0-9]*/), - parameter: $ => seq( - $.identifier - ), - - _escape_sequence: $ => token.immediate(seq( - '\\', - choice( - /[^xu0-7]/, - /[0-7]{1,3}/, - /x[0-9a-fA-F]{2}/, - /u[0-9a-fA-F]{4}/ - ) - )), + int_literal: $ => /\d+/, - _string_immediate_elt_inside_double_quote: $ => - token.immediate(prec(PREC.STRING, /[^"\\\n]+|\\\r?\n/)), + custom: $ => 'custom', - _string_immediate_elt_inside_quote: $ => - token.immediate(prec(PREC.STRING, /[^'\\\n]+|\\\r?\n/)), - - string: $ => choice( - seq( - '"', - repeat(choice( - $._string_immediate_elt_inside_double_quote, - $._escape_sequence - )), - '"' - ), - seq( - "'", - repeat(choice( - $._string_immediate_elt_inside_quote, - $._escape_sequence - )), - "'" - ) - ), + parallel: $ => 'parallel', comment: $ => token( prec(PREC.COMMENT, @@ -471,7 +478,6 @@ module.exports = grammar({ } }); - function commaSep1(rule) { return seq( rule, @@ -480,8 +486,7 @@ function commaSep1(rule) { ',', rule ) - ), - optional(','), + ) ); } diff --git a/package.json b/package.json index 3cb228f..8009806 100644 --- a/package.json +++ b/package.json @@ -4,9 +4,10 @@ "main": "index.js", "types": "bindings/node", "scripts": { - "test": "echo \"Error: no test specified\" && exit 1", "install": "node-gyp-build", - "prebuildify": "prebuildify --napi --strip" + "prestart": "tree-sitter build --wasm", + "start": "tree-sitter playground", + "test": "node --test bindings/node/*_test.js" }, "author": "", "license": "ISC", @@ -38,7 +39,13 @@ "tree-sitter": [ { "scope": "source.circom", - "injection-regex": "^circom$" + "injection-regex": "^circom$", + "file-types": [ + "circom" + ], + "highlights": [ + "queries/highlights.scm" + ] } ] } diff --git a/queries/highlights.scm b/queries/highlights.scm new file mode 100644 index 0000000..4eb1972 --- /dev/null +++ b/queries/highlights.scm @@ -0,0 +1,134 @@ +; identifiers +; ----------- +(identifier) @variable + +; Pragma +; ----------- +(pragma_directive) @tag + +; Include +; ----------- +(include_directive) @include + +; Literals +; -------- + +(string) @string +(int_literal) @number +(comment) @comment + +; Definitions +; ----------- + +(function_definition + name: (identifier) @function) + +(template_definition + name: (identifier) @function) + +; Use contructor coloring for special functions +(main_component_definition) @constructor + +; Invocations + +(call_expression . (identifier) @function) + +; Function parameters +(parameter name: (identifier) @variable.parameter) + + +; Members +(member_expression property: (property_identifier) @property) + + +; Tokens +; ------- + +; Keywords + +[ + "public" + "signal" + "var" + "include" + "input" + "output" + "public" + "component" +] @keyword + +[ + "for" + "while" +] @repeat + +[ + "if" + "else" +] @conditional + +[ + "return" +] @keyword.return + +[ + "function" + "template" +] @keyword.function + + +; Punctuation + +[ + "(" + ")" + "[" + "]" + "{" + "}" +] @punctuation.bracket + + +[ + "." + "," +] @punctuation.delimiter + + +; Operators + +[ + "&&" + "||" + ">>" + "<<" + "&" + "^" + "|" + "+" + "-" + "*" + "/" + "%" + "**" + "<" + "<=" + "==" + "!=" + ">=" + ">" + "!" + "~" + "-" + "+" + "++" + "--" +] @operator + +[ + "<==" + "==>" + "<--" + "-->" + "===" +] @assignment \ No newline at end of file diff --git a/queries/locals.scm b/queries/locals.scm new file mode 100644 index 0000000..e0ea12d --- /dev/null +++ b/queries/locals.scm @@ -0,0 +1,9 @@ +(function_definition) @local.scope +(template_definition) @local.scope +(main_component_definition) @local.scope +(block_statement) @local.scope + +(parameter name: (identifier) @local.definition) @local.definition + + +(identifier) @local.reference \ No newline at end of file diff --git a/src/grammar.json b/src/grammar.json index 8d7c591..6e1d752 100644 --- a/src/grammar.json +++ b/src/grammar.json @@ -81,8 +81,12 @@ "name": "_circom" }, { - "type": "SYMBOL", - "name": "circom_version" + "type": "FIELD", + "name": "version", + "content": { + "type": "SYMBOL", + "name": "circom_version" + } } ] }, @@ -96,7 +100,7 @@ }, "circom_version": { "type": "PATTERN", - "value": "\"?\\.? ?(\\d|\\*)+(\\. ?(\\d|\\*)+ ?(\\.(\\d|\\*)+)?)?\"?" + "value": "'?\\.? ?(\\d|\\*)+(\\. ?(\\d|\\*)+ ?(\\.(\\d|\\*)+)?)?'?" }, "include_directive": { "type": "SEQ", @@ -119,6 +123,124 @@ } ] }, + "string": { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "\"" + }, + { + "type": "REPEAT", + "content": { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "_string_immediate_elt_inside_double_quote" + }, + { + "type": "SYMBOL", + "name": "_escape_sequence" + } + ] + } + }, + { + "type": "STRING", + "value": "\"" + } + ] + }, + { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "'" + }, + { + "type": "REPEAT", + "content": { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "_string_immediate_elt_inside_quote" + }, + { + "type": "SYMBOL", + "name": "_escape_sequence" + } + ] + } + }, + { + "type": "STRING", + "value": "'" + } + ] + } + ] + }, + "_escape_sequence": { + "type": "IMMEDIATE_TOKEN", + "content": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "\\" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "PATTERN", + "value": "[^xu0-7]" + }, + { + "type": "PATTERN", + "value": "[0-7]{1,3}" + }, + { + "type": "PATTERN", + "value": "x[0-9a-fA-F]{2}" + }, + { + "type": "PATTERN", + "value": "u[0-9a-fA-F]{4}" + } + ] + } + ] + } + }, + "_string_immediate_elt_inside_double_quote": { + "type": "IMMEDIATE_TOKEN", + "content": { + "type": "PREC", + "value": 2, + "content": { + "type": "PATTERN", + "value": "[^\"\\\\\\n]+|\\\\\\r?\\n" + } + } + }, + "_string_immediate_elt_inside_quote": { + "type": "IMMEDIATE_TOKEN", + "content": { + "type": "PREC", + "value": 2, + "content": { + "type": "PATTERN", + "value": "[^'\\\\\\n]+|\\\\\\r?\\n" + } + } + }, "_definition": { "type": "CHOICE", "members": [ @@ -147,8 +269,12 @@ "type": "CHOICE", "members": [ { - "type": "SYMBOL", - "name": "template_type" + "type": "FIELD", + "name": "type", + "content": { + "type": "SYMBOL", + "name": "template_type" + } }, { "type": "BLANK" @@ -168,8 +294,12 @@ "name": "parameter_list" }, { - "type": "SYMBOL", - "name": "template_body" + "type": "FIELD", + "name": "body", + "content": { + "type": "SYMBOL", + "name": "template_body" + } } ] }, @@ -186,14 +316,6 @@ } ] }, - "custom": { - "type": "STRING", - "value": "custom" - }, - "parallel": { - "type": "STRING", - "value": "parallel" - }, "template_body": { "type": "SEQ", "members": [ @@ -234,8 +356,12 @@ "name": "parameter_list" }, { - "type": "SYMBOL", - "name": "function_body" + "type": "FIELD", + "name": "body", + "content": { + "type": "SYMBOL", + "name": "function_body" + } } ] }, @@ -259,6 +385,65 @@ } ] }, + "parameter_list": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "(" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "parameter" + }, + { + "type": "REPEAT", + "content": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "SYMBOL", + "name": "parameter" + } + ] + } + } + ] + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "STRING", + "value": ")" + } + ] + }, + "parameter": { + "type": "SEQ", + "members": [ + { + "type": "FIELD", + "name": "name", + "content": { + "type": "SYMBOL", + "name": "identifier" + } + } + ] + }, "main_component_definition": { "type": "SEQ", "members": [ @@ -287,8 +472,12 @@ "value": "=" }, { - "type": "SYMBOL", - "name": "call_expression" + "type": "FIELD", + "name": "value", + "content": { + "type": "SYMBOL", + "name": "call_expression" + } }, { "type": "SYMBOL", @@ -333,18 +522,6 @@ } ] } - }, - { - "type": "CHOICE", - "members": [ - { - "type": "STRING", - "value": "," - }, - { - "type": "BLANK" - } - ] } ] }, @@ -381,13 +558,21 @@ "type": "SYMBOL", "name": "while_statement" }, + { + "type": "SYMBOL", + "name": "expression_statement" + }, + { + "type": "SYMBOL", + "name": "signal_declaration_statement" + }, { "type": "SYMBOL", "name": "variable_declaration_statement" }, { "type": "SYMBOL", - "name": "expression_statement" + "name": "component_declaration_statement" } ] }, @@ -579,19 +764,43 @@ } ] }, - "variable_declaration_statement": { + "signal_declaration_statement": { "type": "SEQ", "members": [ { - "type": "SYMBOL", - "name": "_type" + "type": "STRING", + "value": "signal" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "signal_visibility" + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "signal_tags" + }, + { + "type": "BLANK" + } + ] }, { "type": "SEQ", "members": [ { "type": "SYMBOL", - "name": "_variable_initialization" + "name": "_signal_declaration" }, { "type": "REPEAT", @@ -604,22 +813,10 @@ }, { "type": "SYMBOL", - "name": "_variable_initialization" + "name": "_signal_declaration" } ] } - }, - { - "type": "CHOICE", - "members": [ - { - "type": "STRING", - "value": "," - }, - { - "type": "BLANK" - } - ] } ] }, @@ -629,55 +826,30 @@ } ] }, - "_variable_initialization": { + "_signal_declaration": { "type": "PREC_LEFT", "value": 1, "content": { "type": "SEQ", "members": [ { - "type": "SEQ", - "members": [ - { - "type": "SYMBOL", - "name": "identifier" - }, - { - "type": "REPEAT", - "content": { - "type": "SEQ", - "members": [ - { - "type": "STRING", - "value": "," - }, - { - "type": "SYMBOL", - "name": "identifier" - } - ] - } - }, - { - "type": "CHOICE", - "members": [ - { - "type": "STRING", - "value": "," - }, - { - "type": "BLANK" - } - ] - } - ] + "type": "FIELD", + "name": "name", + "content": { + "type": "SYMBOL", + "name": "identifier" + } }, { "type": "CHOICE", "members": [ { - "type": "SYMBOL", - "name": "array_definition" + "type": "FIELD", + "name": "type", + "content": { + "type": "SYMBOL", + "name": "array_type" + } }, { "type": "BLANK" @@ -693,25 +865,13 @@ { "type": "CHOICE", "members": [ - { - "type": "STRING", - "value": "=" - }, { "type": "STRING", "value": "<==" }, - { - "type": "STRING", - "value": "==>" - }, { "type": "STRING", "value": "<--" - }, - { - "type": "STRING", - "value": "-->" } ] }, @@ -733,79 +893,122 @@ ] } }, - "_expression": { + "signal_visibility": { "type": "CHOICE", "members": [ { - "type": "SYMBOL", - "name": "int" - }, - { - "type": "SYMBOL", - "name": "identifier" - }, - { - "type": "SYMBOL", - "name": "array" - }, - { - "type": "SYMBOL", - "name": "tuple" - }, - { - "type": "SYMBOL", - "name": "unary_expression" - }, - { - "type": "SYMBOL", - "name": "binary_expression" - }, - { - "type": "SYMBOL", - "name": "ternary_expression" + "type": "STRING", + "value": "input" }, { - "type": "SYMBOL", - "name": "parenthesized_expression" - }, + "type": "STRING", + "value": "output" + } + ] + }, + "signal_tags": { + "type": "SEQ", + "members": [ { - "type": "SYMBOL", - "name": "call_expression" + "type": "STRING", + "value": "{" }, { - "type": "SYMBOL", - "name": "increment_expression" + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "identifier" + }, + { + "type": "REPEAT", + "content": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "SYMBOL", + "name": "identifier" + } + ] + } + } + ] }, { - "type": "SYMBOL", - "name": "decrement_expression" - }, + "type": "STRING", + "value": "}" + } + ] + }, + "variable_declaration_statement": { + "type": "SEQ", + "members": [ { - "type": "SYMBOL", - "name": "member_expression" + "type": "STRING", + "value": "var" }, { - "type": "SYMBOL", - "name": "array_access_expression" + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "_variable_declaration" + }, + { + "type": "REPEAT", + "content": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "SYMBOL", + "name": "_variable_declaration" + } + ] + } + } + ] }, { "type": "SYMBOL", - "name": "assignment_expression" + "name": "_semicolon" } ] }, - "assignment_expression": { - "type": "PREC_RIGHT", + "_variable_declaration": { + "type": "PREC_LEFT", "value": 1, "content": { "type": "SEQ", "members": [ + { + "type": "FIELD", + "name": "name", + "content": { + "type": "SYMBOL", + "name": "identifier" + } + }, { "type": "CHOICE", "members": [ { - "type": "SYMBOL", - "name": "_expression" + "type": "FIELD", + "name": "type", + "content": { + "type": "SYMBOL", + "name": "array_type" + } + }, + { + "type": "BLANK" } ] }, @@ -813,235 +1016,542 @@ "type": "CHOICE", "members": [ { - "type": "STRING", - "value": "<==" - }, - { - "type": "STRING", - "value": "==>" - }, - { - "type": "STRING", - "value": "<--" - }, - { - "type": "STRING", - "value": "-->" - }, - { - "type": "STRING", - "value": "&=" - }, - { - "type": "STRING", - "value": "+=" - }, - { - "type": "STRING", - "value": "-=" - }, - { - "type": "STRING", - "value": "*=" + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "=" + }, + { + "type": "FIELD", + "name": "value", + "content": { + "type": "SYMBOL", + "name": "_expression" + } + } + ] }, { - "type": "STRING", - "value": "**=" - }, + "type": "BLANK" + } + ] + } + ] + } + }, + "component_declaration_statement": { + "type": "PREC_LEFT", + "value": 1, + "content": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "component" + }, + { + "type": "SEQ", + "members": [ { - "type": "STRING", - "value": "/=" + "type": "SYMBOL", + "name": "_component_declaration" }, { - "type": "STRING", - "value": "\\=" - }, - { - "type": "STRING", - "value": "%=" - }, - { - "type": "STRING", - "value": "|=" - }, - { - "type": "STRING", - "value": "^=" - }, - { - "type": "STRING", - "value": ">>=" - }, - { - "type": "STRING", - "value": "<<=" - }, - { - "type": "STRING", - "value": "===" - }, - { - "type": "STRING", - "value": "=" + "type": "REPEAT", + "content": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "SYMBOL", + "name": "_component_declaration" + } + ] + } } ] }, { "type": "SYMBOL", - "name": "_expression" + "name": "_semicolon" } ] } }, - "increment_expression": { + "_component_declaration": { "type": "SEQ", "members": [ + { + "type": "FIELD", + "name": "name", + "content": { + "type": "SYMBOL", + "name": "identifier" + } + }, { "type": "CHOICE", "members": [ { - "type": "SYMBOL", - "name": "identifier" - }, - { - "type": "SYMBOL", - "name": "member_expression" + "type": "FIELD", + "name": "type", + "content": { + "type": "SYMBOL", + "name": "array_type" + } }, { - "type": "SYMBOL", - "name": "array_access_expression" + "type": "BLANK" } ] }, { - "type": "STRING", - "value": "++" + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "=" + }, + { + "type": "FIELD", + "name": "value", + "content": { + "type": "SYMBOL", + "name": "call_expression" + } + } + ] + }, + { + "type": "BLANK" + } + ] } ] }, - "decrement_expression": { - "type": "SEQ", - "members": [ - { - "type": "CHOICE", + "array_type": { + "type": "PREC_LEFT", + "value": 1, + "content": { + "type": "REPEAT1", + "content": { + "type": "SEQ", "members": [ { - "type": "SYMBOL", - "name": "identifier" + "type": "STRING", + "value": "[" }, { "type": "SYMBOL", - "name": "member_expression" + "name": "_expression" }, { - "type": "SYMBOL", - "name": "array_access_expression" + "type": "STRING", + "value": "]" } ] + } + } + }, + "_expression": { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "identifier" }, { - "type": "STRING", - "value": "--" + "type": "SYMBOL", + "name": "int_literal" + }, + { + "type": "SYMBOL", + "name": "array_expression" + }, + { + "type": "SYMBOL", + "name": "tuple_expression" + }, + { + "type": "SYMBOL", + "name": "unary_expression" + }, + { + "type": "SYMBOL", + "name": "binary_expression" + }, + { + "type": "SYMBOL", + "name": "ternary_expression" + }, + { + "type": "SYMBOL", + "name": "parenthesized_expression" + }, + { + "type": "SYMBOL", + "name": "call_expression" + }, + { + "type": "SYMBOL", + "name": "increment_expression" + }, + { + "type": "SYMBOL", + "name": "decrement_expression" + }, + { + "type": "SYMBOL", + "name": "member_expression" + }, + { + "type": "SYMBOL", + "name": "array_access_expression" + }, + { + "type": "SYMBOL", + "name": "assignment_expression" } ] }, - "anonymous_inputs": { + "array_expression": { "type": "SEQ", "members": [ { "type": "STRING", - "value": "(" + "value": "[" }, { - "type": "CHOICE", + "type": "SEQ", "members": [ { "type": "SYMBOL", - "name": "argument_list" + "name": "_expression" }, { - "type": "BLANK" + "type": "REPEAT", + "content": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "SYMBOL", + "name": "_expression" + } + ] + } } ] }, { "type": "STRING", - "value": ")" + "value": "]" } ] }, - "call_expression": { + "tuple_expression": { "type": "SEQ", "members": [ - { - "type": "CHOICE", - "members": [ - { - "type": "SYMBOL", - "name": "parallel" - }, - { - "type": "BLANK" - } - ] - }, - { - "type": "SYMBOL", - "name": "identifier" - }, { "type": "STRING", "value": "(" }, { - "type": "CHOICE", + "type": "SEQ", "members": [ { "type": "SYMBOL", - "name": "argument_list" + "name": "_expression" }, { - "type": "BLANK" + "type": "REPEAT", + "content": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "SYMBOL", + "name": "_expression" + } + ] + } } ] }, { "type": "STRING", "value": ")" - }, - { - "type": "CHOICE", - "members": [ - { - "type": "SYMBOL", - "name": "anonymous_inputs" - }, - { - "type": "BLANK" - } - ] } ] }, - "argument_list": { - "type": "SEQ", - "members": [ - { - "type": "SYMBOL", - "name": "_expression" - }, - { - "type": "REPEAT", - "content": { - "type": "SEQ", + "assignment_expression": { + "type": "PREC_RIGHT", + "value": 1, + "content": { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "_expression" + }, + { + "type": "CHOICE", "members": [ { "type": "STRING", - "value": "," + "value": "<==" }, { - "type": "SYMBOL", - "name": "_expression" + "type": "STRING", + "value": "==>" + }, + { + "type": "STRING", + "value": "<--" + }, + { + "type": "STRING", + "value": "-->" + }, + { + "type": "STRING", + "value": "&=" + }, + { + "type": "STRING", + "value": "+=" + }, + { + "type": "STRING", + "value": "-=" + }, + { + "type": "STRING", + "value": "*=" + }, + { + "type": "STRING", + "value": "**=" + }, + { + "type": "STRING", + "value": "/=" + }, + { + "type": "STRING", + "value": "\\=" + }, + { + "type": "STRING", + "value": "%=" + }, + { + "type": "STRING", + "value": "|=" + }, + { + "type": "STRING", + "value": "^=" + }, + { + "type": "STRING", + "value": ">>=" + }, + { + "type": "STRING", + "value": "<<=" + }, + { + "type": "STRING", + "value": "===" + }, + { + "type": "STRING", + "value": "=" + } + ] + }, + { + "type": "SYMBOL", + "name": "_expression" + } + ] + } + }, + "increment_expression": { + "type": "SEQ", + "members": [ + { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "identifier" + }, + { + "type": "SYMBOL", + "name": "member_expression" + }, + { + "type": "SYMBOL", + "name": "array_access_expression" + } + ] + }, + { + "type": "STRING", + "value": "++" + } + ] + }, + "decrement_expression": { + "type": "SEQ", + "members": [ + { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "identifier" + }, + { + "type": "SYMBOL", + "name": "member_expression" + }, + { + "type": "SYMBOL", + "name": "array_access_expression" + } + ] + }, + { + "type": "STRING", + "value": "--" + } + ] + }, + "call_expression": { + "type": "PREC_LEFT", + "value": 1, + "content": { + "type": "SEQ", + "members": [ + { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "parallel" + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "SYMBOL", + "name": "identifier" + }, + { + "type": "STRING", + "value": "(" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "argument_list" + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "STRING", + "value": ")" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "anonymous_inputs" + }, + { + "type": "BLANK" + } + ] + } + ] + } + }, + "anonymous_inputs": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "(" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "argument_list" + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "STRING", + "value": ")" + } + ] + }, + "argument_list": { + "type": "SEQ", + "members": [ + { + "type": "FIELD", + "name": "argument", + "content": { + "type": "SYMBOL", + "name": "_expression" + } + }, + { + "type": "REPEAT", + "content": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "FIELD", + "name": "argument", + "content": { + "type": "SYMBOL", + "name": "_expression" + } } ] } @@ -1953,421 +2463,23 @@ "value": ";" }, "identifier": { - "type": "PATTERN", - "value": "[a-zA-Z$_][a-zA-Z0-9$_]*" + "type": "TOKEN", + "content": { + "type": "PATTERN", + "value": "[$_]*[a-zA-Z][a-zA-Z$_0-9]*" + } }, - "int": { + "int_literal": { "type": "PATTERN", "value": "\\d+" }, - "array": { - "type": "SEQ", - "members": [ - { - "type": "STRING", - "value": "[" - }, - { - "type": "SEQ", - "members": [ - { - "type": "SYMBOL", - "name": "_expression" - }, - { - "type": "REPEAT", - "content": { - "type": "SEQ", - "members": [ - { - "type": "STRING", - "value": "," - }, - { - "type": "SYMBOL", - "name": "_expression" - } - ] - } - }, - { - "type": "CHOICE", - "members": [ - { - "type": "STRING", - "value": "," - }, - { - "type": "BLANK" - } - ] - } - ] - }, - { - "type": "STRING", - "value": "]" - } - ] - }, - "tuple": { - "type": "SEQ", - "members": [ - { - "type": "STRING", - "value": "(" - }, - { - "type": "SEQ", - "members": [ - { - "type": "SYMBOL", - "name": "_expression" - }, - { - "type": "REPEAT", - "content": { - "type": "SEQ", - "members": [ - { - "type": "STRING", - "value": "," - }, - { - "type": "SYMBOL", - "name": "_expression" - } - ] - } - }, - { - "type": "CHOICE", - "members": [ - { - "type": "STRING", - "value": "," - }, - { - "type": "BLANK" - } - ] - } - ] - }, - { - "type": "STRING", - "value": ")" - } - ] - }, - "_type": { - "type": "CHOICE", - "members": [ - { - "type": "SYMBOL", - "name": "signal" - }, - { - "type": "SYMBOL", - "name": "var" - }, - { - "type": "SYMBOL", - "name": "component" - } - ] - }, - "array_definition": { - "type": "REPEAT1", - "content": { - "type": "SEQ", - "members": [ - { - "type": "STRING", - "value": "[" - }, - { - "type": "SYMBOL", - "name": "_expression" - }, - { - "type": "STRING", - "value": "]" - } - ] - } - }, - "var": { + "custom": { "type": "STRING", - "value": "var" + "value": "custom" }, - "component": { + "parallel": { "type": "STRING", - "value": "component" - }, - "signal": { - "type": "SEQ", - "members": [ - { - "type": "STRING", - "value": "signal" - }, - { - "type": "CHOICE", - "members": [ - { - "type": "SYMBOL", - "name": "signal_visability" - }, - { - "type": "BLANK" - } - ] - }, - { - "type": "CHOICE", - "members": [ - { - "type": "SYMBOL", - "name": "signal_tags" - }, - { - "type": "BLANK" - } - ] - } - ] - }, - "signal_visability": { - "type": "CHOICE", - "members": [ - { - "type": "STRING", - "value": "input" - }, - { - "type": "STRING", - "value": "output" - } - ] - }, - "signal_tags": { - "type": "SEQ", - "members": [ - { - "type": "STRING", - "value": "{" - }, - { - "type": "SYMBOL", - "name": "identifier" - }, - { - "type": "REPEAT", - "content": { - "type": "SEQ", - "members": [ - { - "type": "STRING", - "value": "," - }, - { - "type": "SYMBOL", - "name": "identifier" - } - ] - } - }, - { - "type": "STRING", - "value": "}" - } - ] - }, - "parameter_list": { - "type": "SEQ", - "members": [ - { - "type": "STRING", - "value": "(" - }, - { - "type": "CHOICE", - "members": [ - { - "type": "SEQ", - "members": [ - { - "type": "SYMBOL", - "name": "parameter" - }, - { - "type": "REPEAT", - "content": { - "type": "SEQ", - "members": [ - { - "type": "STRING", - "value": "," - }, - { - "type": "SYMBOL", - "name": "parameter" - } - ] - } - }, - { - "type": "CHOICE", - "members": [ - { - "type": "STRING", - "value": "," - }, - { - "type": "BLANK" - } - ] - } - ] - }, - { - "type": "BLANK" - } - ] - }, - { - "type": "STRING", - "value": ")" - } - ] - }, - "parameter": { - "type": "SEQ", - "members": [ - { - "type": "SYMBOL", - "name": "identifier" - } - ] - }, - "_escape_sequence": { - "type": "IMMEDIATE_TOKEN", - "content": { - "type": "SEQ", - "members": [ - { - "type": "STRING", - "value": "\\" - }, - { - "type": "CHOICE", - "members": [ - { - "type": "PATTERN", - "value": "[^xu0-7]" - }, - { - "type": "PATTERN", - "value": "[0-7]{1,3}" - }, - { - "type": "PATTERN", - "value": "x[0-9a-fA-F]{2}" - }, - { - "type": "PATTERN", - "value": "u[0-9a-fA-F]{4}" - } - ] - } - ] - } - }, - "_string_immediate_elt_inside_double_quote": { - "type": "IMMEDIATE_TOKEN", - "content": { - "type": "PREC", - "value": 2, - "content": { - "type": "PATTERN", - "value": "[^\"\\\\\\n]+|\\\\\\r?\\n" - } - } - }, - "_string_immediate_elt_inside_quote": { - "type": "IMMEDIATE_TOKEN", - "content": { - "type": "PREC", - "value": 2, - "content": { - "type": "PATTERN", - "value": "[^'\\\\\\n]+|\\\\\\r?\\n" - } - } - }, - "string": { - "type": "CHOICE", - "members": [ - { - "type": "SEQ", - "members": [ - { - "type": "STRING", - "value": "\"" - }, - { - "type": "REPEAT", - "content": { - "type": "CHOICE", - "members": [ - { - "type": "SYMBOL", - "name": "_string_immediate_elt_inside_double_quote" - }, - { - "type": "SYMBOL", - "name": "_escape_sequence" - } - ] - } - }, - { - "type": "STRING", - "value": "\"" - } - ] - }, - { - "type": "SEQ", - "members": [ - { - "type": "STRING", - "value": "'" - }, - { - "type": "REPEAT", - "content": { - "type": "CHOICE", - "members": [ - { - "type": "SYMBOL", - "name": "_string_immediate_elt_inside_quote" - }, - { - "type": "SYMBOL", - "name": "_escape_sequence" - } - ] - } - }, - { - "type": "STRING", - "value": "'" - } - ] - } - ] + "value": "parallel" }, "comment": { "type": "TOKEN", diff --git a/src/node-types.json b/src/node-types.json index 917419a..d5b4264 100644 --- a/src/node-types.json +++ b/src/node-types.json @@ -17,135 +17,69 @@ { "type": "argument_list", "named": true, - "fields": {}, - "children": { - "multiple": true, - "required": true, - "types": [ - { - "type": "array", - "named": true - }, - { - "type": "array_access_expression", - "named": true - }, - { - "type": "assignment_expression", - "named": true - }, - { - "type": "binary_expression", - "named": true - }, - { - "type": "call_expression", - "named": true - }, - { - "type": "decrement_expression", - "named": true - }, - { - "type": "identifier", - "named": true - }, - { - "type": "increment_expression", - "named": true - }, - { - "type": "int", - "named": true - }, - { - "type": "member_expression", - "named": true - }, - { - "type": "parenthesized_expression", - "named": true - }, - { - "type": "ternary_expression", - "named": true - }, - { - "type": "tuple", - "named": true - }, - { - "type": "unary_expression", - "named": true - } - ] - } - }, - { - "type": "array", - "named": true, - "fields": {}, - "children": { - "multiple": true, - "required": true, - "types": [ - { - "type": "array", - "named": true - }, - { - "type": "array_access_expression", - "named": true - }, - { - "type": "assignment_expression", - "named": true - }, - { - "type": "binary_expression", - "named": true - }, - { - "type": "call_expression", - "named": true - }, - { - "type": "decrement_expression", - "named": true - }, - { - "type": "identifier", - "named": true - }, - { - "type": "increment_expression", - "named": true - }, - { - "type": "int", - "named": true - }, - { - "type": "member_expression", - "named": true - }, - { - "type": "parenthesized_expression", - "named": true - }, - { - "type": "ternary_expression", - "named": true - }, - { - "type": "tuple", - "named": true - }, - { - "type": "unary_expression", - "named": true - } - ] + "fields": { + "argument": { + "multiple": true, + "required": true, + "types": [ + { + "type": "array_access_expression", + "named": true + }, + { + "type": "array_expression", + "named": true + }, + { + "type": "assignment_expression", + "named": true + }, + { + "type": "binary_expression", + "named": true + }, + { + "type": "call_expression", + "named": true + }, + { + "type": "decrement_expression", + "named": true + }, + { + "type": "identifier", + "named": true + }, + { + "type": "increment_expression", + "named": true + }, + { + "type": "int_literal", + "named": true + }, + { + "type": "member_expression", + "named": true + }, + { + "type": "parenthesized_expression", + "named": true + }, + { + "type": "ternary_expression", + "named": true + }, + { + "type": "tuple_expression", + "named": true + }, + { + "type": "unary_expression", + "named": true + } + ] + } } }, { @@ -157,11 +91,11 @@ "required": true, "types": [ { - "type": "array", + "type": "array_access_expression", "named": true }, { - "type": "array_access_expression", + "type": "array_expression", "named": true }, { @@ -189,7 +123,7 @@ "named": true }, { - "type": "int", + "type": "int_literal", "named": true }, { @@ -205,7 +139,7 @@ "named": true }, { - "type": "tuple", + "type": "tuple_expression", "named": true }, { @@ -219,11 +153,11 @@ "required": false, "types": [ { - "type": "array", + "type": "array_access_expression", "named": true }, { - "type": "array_access_expression", + "type": "array_expression", "named": true }, { @@ -251,7 +185,7 @@ "named": true }, { - "type": "int", + "type": "int_literal", "named": true }, { @@ -267,7 +201,7 @@ "named": true }, { - "type": "tuple", + "type": "tuple_expression", "named": true }, { @@ -279,7 +213,7 @@ } }, { - "type": "array_definition", + "type": "array_expression", "named": true, "fields": {}, "children": { @@ -287,13 +221,80 @@ "required": true, "types": [ { - "type": "array", + "type": "array_access_expression", + "named": true + }, + { + "type": "array_expression", + "named": true + }, + { + "type": "assignment_expression", + "named": true + }, + { + "type": "binary_expression", + "named": true + }, + { + "type": "call_expression", + "named": true + }, + { + "type": "decrement_expression", + "named": true + }, + { + "type": "identifier", "named": true }, + { + "type": "increment_expression", + "named": true + }, + { + "type": "int_literal", + "named": true + }, + { + "type": "member_expression", + "named": true + }, + { + "type": "parenthesized_expression", + "named": true + }, + { + "type": "ternary_expression", + "named": true + }, + { + "type": "tuple_expression", + "named": true + }, + { + "type": "unary_expression", + "named": true + } + ] + } + }, + { + "type": "array_type", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": true, + "types": [ { "type": "array_access_expression", "named": true }, + { + "type": "array_expression", + "named": true + }, { "type": "assignment_expression", "named": true @@ -319,7 +320,7 @@ "named": true }, { - "type": "int", + "type": "int_literal", "named": true }, { @@ -335,7 +336,7 @@ "named": true }, { - "type": "tuple", + "type": "tuple_expression", "named": true }, { @@ -354,11 +355,11 @@ "required": true, "types": [ { - "type": "array", + "type": "array_access_expression", "named": true }, { - "type": "array_access_expression", + "type": "array_expression", "named": true }, { @@ -386,7 +387,7 @@ "named": true }, { - "type": "int", + "type": "int_literal", "named": true }, { @@ -402,7 +403,7 @@ "named": true }, { - "type": "tuple", + "type": "tuple_expression", "named": true }, { @@ -421,11 +422,11 @@ "required": true, "types": [ { - "type": "array", + "type": "array_access_expression", "named": true }, { - "type": "array_access_expression", + "type": "array_expression", "named": true }, { @@ -453,7 +454,7 @@ "named": true }, { - "type": "int", + "type": "int_literal", "named": true }, { @@ -469,7 +470,7 @@ "named": true }, { - "type": "tuple", + "type": "tuple_expression", "named": true }, { @@ -569,11 +570,11 @@ "required": true, "types": [ { - "type": "array", + "type": "array_access_expression", "named": true }, { - "type": "array_access_expression", + "type": "array_expression", "named": true }, { @@ -601,7 +602,7 @@ "named": true }, { - "type": "int", + "type": "int_literal", "named": true }, { @@ -617,7 +618,7 @@ "named": true }, { - "type": "tuple", + "type": "tuple_expression", "named": true }, { @@ -640,6 +641,10 @@ "type": "block_statement", "named": true }, + { + "type": "component_declaration_statement", + "named": true + }, { "type": "expression_statement", "named": true @@ -656,6 +661,10 @@ "type": "return_statement", "named": true }, + { + "type": "signal_declaration_statement", + "named": true + }, { "type": "variable_declaration_statement", "named": true @@ -702,22 +711,54 @@ { "type": "circom_pragma_token", "named": true, - "fields": {}, - "children": { - "multiple": false, - "required": true, - "types": [ - { - "type": "circom_version", - "named": true - } - ] + "fields": { + "version": { + "multiple": false, + "required": true, + "types": [ + { + "type": "circom_version", + "named": true + } + ] + } } }, { - "type": "component", + "type": "component_declaration_statement", "named": true, - "fields": {} + "fields": { + "name": { + "multiple": true, + "required": true, + "types": [ + { + "type": "identifier", + "named": true + } + ] + }, + "type": { + "multiple": true, + "required": false, + "types": [ + { + "type": "array_type", + "named": true + } + ] + }, + "value": { + "multiple": true, + "required": false, + "types": [ + { + "type": "call_expression", + "named": true + } + ] + } + } }, { "type": "decrement_expression", @@ -751,11 +792,11 @@ "required": true, "types": [ { - "type": "array", + "type": "array_access_expression", "named": true }, { - "type": "array_access_expression", + "type": "array_expression", "named": true }, { @@ -783,7 +824,7 @@ "named": true }, { - "type": "int", + "type": "int_literal", "named": true }, { @@ -799,7 +840,7 @@ "named": true }, { - "type": "tuple", + "type": "tuple_expression", "named": true }, { @@ -818,11 +859,11 @@ "required": true, "types": [ { - "type": "array", + "type": "array_access_expression", "named": true }, { - "type": "array_access_expression", + "type": "array_expression", "named": true }, { @@ -841,6 +882,10 @@ "type": "call_expression", "named": true }, + { + "type": "component_declaration_statement", + "named": true + }, { "type": "decrement_expression", "named": true @@ -866,7 +911,7 @@ "named": true }, { - "type": "int", + "type": "int_literal", "named": true }, { @@ -881,12 +926,16 @@ "type": "return_statement", "named": true }, + { + "type": "signal_declaration_statement", + "named": true + }, { "type": "ternary_expression", "named": true }, { - "type": "tuple", + "type": "tuple_expression", "named": true }, { @@ -916,6 +965,10 @@ "type": "block_statement", "named": true }, + { + "type": "component_declaration_statement", + "named": true + }, { "type": "expression_statement", "named": true @@ -932,6 +985,10 @@ "type": "return_statement", "named": true }, + { + "type": "signal_declaration_statement", + "named": true + }, { "type": "variable_declaration_statement", "named": true @@ -947,6 +1004,16 @@ "type": "function_definition", "named": true, "fields": { + "body": { + "multiple": false, + "required": true, + "types": [ + { + "type": "function_body", + "named": true + } + ] + }, "name": { "multiple": false, "required": true, @@ -959,13 +1026,9 @@ } }, "children": { - "multiple": true, + "multiple": false, "required": true, "types": [ - { - "type": "function_body", - "named": true - }, { "type": "parameter_list", "named": true @@ -982,11 +1045,11 @@ "required": true, "types": [ { - "type": "array", + "type": "array_access_expression", "named": true }, { - "type": "array_access_expression", + "type": "array_expression", "named": true }, { @@ -1005,6 +1068,10 @@ "type": "call_expression", "named": true }, + { + "type": "component_declaration_statement", + "named": true + }, { "type": "decrement_expression", "named": true @@ -1030,7 +1097,7 @@ "named": true }, { - "type": "int", + "type": "int_literal", "named": true }, { @@ -1045,12 +1112,16 @@ "type": "return_statement", "named": true }, + { + "type": "signal_declaration_statement", + "named": true + }, { "type": "ternary_expression", "named": true }, { - "type": "tuple", + "type": "tuple_expression", "named": true }, { @@ -1110,15 +1181,22 @@ { "type": "main_component_definition", "named": true, - "fields": {}, + "fields": { + "value": { + "multiple": false, + "required": true, + "types": [ + { + "type": "call_expression", + "named": true + } + ] + } + }, "children": { - "multiple": true, - "required": true, + "multiple": false, + "required": false, "types": [ - { - "type": "call_expression", - "named": true - }, { "type": "main_component_public_signals", "named": true @@ -1150,11 +1228,11 @@ "required": true, "types": [ { - "type": "array", + "type": "array_access_expression", "named": true }, { - "type": "array_access_expression", + "type": "array_expression", "named": true }, { @@ -1182,7 +1260,7 @@ "named": true }, { - "type": "int", + "type": "int_literal", "named": true }, { @@ -1198,7 +1276,7 @@ "named": true }, { - "type": "tuple", + "type": "tuple_expression", "named": true }, { @@ -1222,16 +1300,17 @@ { "type": "parameter", "named": true, - "fields": {}, - "children": { - "multiple": false, - "required": true, - "types": [ - { - "type": "identifier", - "named": true - } - ] + "fields": { + "name": { + "multiple": false, + "required": true, + "types": [ + { + "type": "identifier", + "named": true + } + ] + } } }, { @@ -1258,11 +1337,11 @@ "required": true, "types": [ { - "type": "array", + "type": "array_access_expression", "named": true }, { - "type": "array_access_expression", + "type": "array_expression", "named": true }, { @@ -1290,7 +1369,7 @@ "named": true }, { - "type": "int", + "type": "int_literal", "named": true }, { @@ -1306,7 +1385,7 @@ "named": true }, { - "type": "tuple", + "type": "tuple_expression", "named": true }, { @@ -1344,11 +1423,11 @@ "required": true, "types": [ { - "type": "array", + "type": "array_access_expression", "named": true }, { - "type": "array_access_expression", + "type": "array_expression", "named": true }, { @@ -1376,7 +1455,7 @@ "named": true }, { - "type": "int", + "type": "int_literal", "named": true }, { @@ -1392,7 +1471,7 @@ "named": true }, { - "type": "tuple", + "type": "tuple_expression", "named": true }, { @@ -1403,9 +1482,92 @@ } }, { - "type": "signal", + "type": "signal_declaration_statement", "named": true, - "fields": {}, + "fields": { + "name": { + "multiple": true, + "required": true, + "types": [ + { + "type": "identifier", + "named": true + } + ] + }, + "type": { + "multiple": true, + "required": false, + "types": [ + { + "type": "array_type", + "named": true + } + ] + }, + "value": { + "multiple": true, + "required": false, + "types": [ + { + "type": "array_access_expression", + "named": true + }, + { + "type": "array_expression", + "named": true + }, + { + "type": "assignment_expression", + "named": true + }, + { + "type": "binary_expression", + "named": true + }, + { + "type": "call_expression", + "named": true + }, + { + "type": "decrement_expression", + "named": true + }, + { + "type": "identifier", + "named": true + }, + { + "type": "increment_expression", + "named": true + }, + { + "type": "int_literal", + "named": true + }, + { + "type": "member_expression", + "named": true + }, + { + "type": "parenthesized_expression", + "named": true + }, + { + "type": "ternary_expression", + "named": true + }, + { + "type": "tuple_expression", + "named": true + }, + { + "type": "unary_expression", + "named": true + } + ] + } + }, "children": { "multiple": true, "required": false, @@ -1415,7 +1577,7 @@ "named": true }, { - "type": "signal_visability", + "type": "signal_visibility", "named": true } ] @@ -1437,7 +1599,7 @@ } }, { - "type": "signal_visability", + "type": "signal_visibility", "named": true, "fields": {} }, @@ -1489,6 +1651,10 @@ "type": "block_statement", "named": true }, + { + "type": "component_declaration_statement", + "named": true + }, { "type": "expression_statement", "named": true @@ -1505,6 +1671,10 @@ "type": "return_statement", "named": true }, + { + "type": "signal_declaration_statement", + "named": true + }, { "type": "variable_declaration_statement", "named": true @@ -1520,6 +1690,16 @@ "type": "template_definition", "named": true, "fields": { + "body": { + "multiple": false, + "required": true, + "types": [ + { + "type": "template_body", + "named": true + } + ] + }, "name": { "multiple": false, "required": true, @@ -1529,23 +1709,25 @@ "named": true } ] + }, + "type": { + "multiple": false, + "required": false, + "types": [ + { + "type": "template_type", + "named": true + } + ] } }, "children": { - "multiple": true, + "multiple": false, "required": true, "types": [ { "type": "parameter_list", "named": true - }, - { - "type": "template_body", - "named": true - }, - { - "type": "template_type", - "named": true } ] } @@ -1578,11 +1760,11 @@ "required": true, "types": [ { - "type": "array", + "type": "array_access_expression", "named": true }, { - "type": "array_access_expression", + "type": "array_expression", "named": true }, { @@ -1610,7 +1792,7 @@ "named": true }, { - "type": "int", + "type": "int_literal", "named": true }, { @@ -1626,7 +1808,7 @@ "named": true }, { - "type": "tuple", + "type": "tuple_expression", "named": true }, { @@ -1637,7 +1819,7 @@ } }, { - "type": "tuple", + "type": "tuple_expression", "named": true, "fields": {}, "children": { @@ -1645,11 +1827,11 @@ "required": true, "types": [ { - "type": "array", + "type": "array_access_expression", "named": true }, { - "type": "array_access_expression", + "type": "array_expression", "named": true }, { @@ -1677,7 +1859,7 @@ "named": true }, { - "type": "int", + "type": "int_literal", "named": true }, { @@ -1693,7 +1875,7 @@ "named": true }, { - "type": "tuple", + "type": "tuple_expression", "named": true }, { @@ -1712,11 +1894,11 @@ "required": true, "types": [ { - "type": "array", + "type": "array_access_expression", "named": true }, { - "type": "array_access_expression", + "type": "array_expression", "named": true }, { @@ -1744,7 +1926,7 @@ "named": true }, { - "type": "int", + "type": "int_literal", "named": true }, { @@ -1760,7 +1942,7 @@ "named": true }, { - "type": "tuple", + "type": "tuple_expression", "named": true }, { @@ -1797,16 +1979,36 @@ "type": "variable_declaration_statement", "named": true, "fields": { + "name": { + "multiple": true, + "required": true, + "types": [ + { + "type": "identifier", + "named": true + } + ] + }, + "type": { + "multiple": true, + "required": false, + "types": [ + { + "type": "array_type", + "named": true + } + ] + }, "value": { "multiple": true, "required": false, "types": [ { - "type": "array", + "type": "array_access_expression", "named": true }, { - "type": "array_access_expression", + "type": "array_expression", "named": true }, { @@ -1834,7 +2036,7 @@ "named": true }, { - "type": "int", + "type": "int_literal", "named": true }, { @@ -1850,7 +2052,7 @@ "named": true }, { - "type": "tuple", + "type": "tuple_expression", "named": true }, { @@ -1859,32 +2061,6 @@ } ] } - }, - "children": { - "multiple": true, - "required": true, - "types": [ - { - "type": "array_definition", - "named": true - }, - { - "type": "component", - "named": true - }, - { - "type": "identifier", - "named": true - }, - { - "type": "signal", - "named": true - }, - { - "type": "var", - "named": true - } - ] } }, { @@ -1896,11 +2072,11 @@ "required": true, "types": [ { - "type": "array", + "type": "array_access_expression", "named": true }, { - "type": "array_access_expression", + "type": "array_expression", "named": true }, { @@ -1919,6 +2095,10 @@ "type": "call_expression", "named": true }, + { + "type": "component_declaration_statement", + "named": true + }, { "type": "decrement_expression", "named": true @@ -1944,7 +2124,7 @@ "named": true }, { - "type": "int", + "type": "int_literal", "named": true }, { @@ -1959,12 +2139,16 @@ "type": "return_statement", "named": true }, + { + "type": "signal_declaration_statement", + "named": true + }, { "type": "ternary_expression", "named": true }, { - "type": "tuple", + "type": "tuple_expression", "named": true }, { @@ -2090,6 +2274,10 @@ "type": ":", "named": false }, + { + "type": ";", + "named": false + }, { "type": "<", "named": false @@ -2227,7 +2415,7 @@ "named": false }, { - "type": "int", + "type": "int_literal", "named": true }, { @@ -2268,7 +2456,7 @@ }, { "type": "var", - "named": true + "named": false }, { "type": "while", diff --git a/src/parser.c b/src/parser.c index c44735d..fba900d 100644 --- a/src/parser.c +++ b/src/parser.c @@ -5,15 +5,15 @@ #endif #define LANGUAGE_VERSION 14 -#define STATE_COUNT 273 +#define STATE_COUNT 307 #define LARGE_STATE_COUNT 2 -#define SYMBOL_COUNT 141 +#define SYMBOL_COUNT 146 #define ALIAS_COUNT 1 #define TOKEN_COUNT 83 #define EXTERNAL_TOKEN_COUNT 0 -#define FIELD_COUNT 11 -#define MAX_ALIAS_SEQUENCE_LENGTH 8 -#define PRODUCTION_ID_COUNT 16 +#define FIELD_COUNT 14 +#define MAX_ALIAS_SEQUENCE_LENGTH 7 +#define PRODUCTION_ID_COUNT 27 enum ts_symbol_identifiers { anon_sym_pragma = 1, @@ -21,82 +21,82 @@ enum ts_symbol_identifiers { anon_sym_circom = 3, sym_circom_version = 4, anon_sym_include = 5, - anon_sym_template = 6, - sym_custom = 7, - sym_parallel = 8, - anon_sym_LBRACE = 9, - anon_sym_RBRACE = 10, - anon_sym_function = 11, - anon_sym_component = 12, - anon_sym_main = 13, - anon_sym_EQ = 14, - anon_sym_public = 15, - anon_sym_LBRACK = 16, - anon_sym_COMMA = 17, - anon_sym_RBRACK = 18, - anon_sym_if = 19, - anon_sym_LPAREN = 20, - anon_sym_RPAREN = 21, - anon_sym_else = 22, - anon_sym_for = 23, - anon_sym_while = 24, - anon_sym_return = 25, - anon_sym_LT_EQ_EQ = 26, - anon_sym_EQ_EQ_GT = 27, - anon_sym_LT_DASH_DASH = 28, - anon_sym_DASH_DASH_GT = 29, - anon_sym_AMP_EQ = 30, - anon_sym_PLUS_EQ = 31, - anon_sym_DASH_EQ = 32, - anon_sym_STAR_EQ = 33, - anon_sym_STAR_STAR_EQ = 34, - anon_sym_SLASH_EQ = 35, - anon_sym_BSLASH_EQ = 36, - anon_sym_PERCENT_EQ = 37, - anon_sym_PIPE_EQ = 38, - anon_sym_CARET_EQ = 39, - anon_sym_GT_GT_EQ = 40, - anon_sym_LT_LT_EQ = 41, - anon_sym_EQ_EQ_EQ = 42, - anon_sym_PLUS_PLUS = 43, - anon_sym_DASH_DASH = 44, - anon_sym_DOT = 45, - anon_sym_QMARK = 46, - anon_sym_COLON = 47, - anon_sym_BANG = 48, - anon_sym_TILDE = 49, - anon_sym_DASH = 50, - anon_sym_PLUS = 51, - anon_sym_AMP_AMP = 52, - anon_sym_AMP = 53, - anon_sym_PIPE_PIPE = 54, - anon_sym_PIPE = 55, - anon_sym_GT_GT = 56, - anon_sym_LT_LT = 57, - anon_sym_CARET = 58, - anon_sym_STAR = 59, - anon_sym_SLASH = 60, - anon_sym_BSLASH = 61, - anon_sym_PERCENT = 62, - anon_sym_STAR_STAR = 63, - anon_sym_LT = 64, - anon_sym_LT_EQ = 65, - anon_sym_EQ_EQ = 66, - anon_sym_BANG_EQ = 67, - anon_sym_GT_EQ = 68, - anon_sym_GT = 69, - sym__semicolon = 70, - sym_identifier = 71, - sym_int = 72, - sym_var = 73, - anon_sym_signal = 74, - anon_sym_input = 75, - anon_sym_output = 76, - sym__escape_sequence = 77, - sym__string_immediate_elt_inside_double_quote = 78, - sym__string_immediate_elt_inside_quote = 79, - anon_sym_DQUOTE = 80, - anon_sym_SQUOTE = 81, + anon_sym_DQUOTE = 6, + anon_sym_SQUOTE = 7, + sym__escape_sequence = 8, + sym__string_immediate_elt_inside_double_quote = 9, + sym__string_immediate_elt_inside_quote = 10, + anon_sym_template = 11, + anon_sym_LBRACE = 12, + anon_sym_RBRACE = 13, + anon_sym_function = 14, + anon_sym_LPAREN = 15, + anon_sym_COMMA = 16, + anon_sym_RPAREN = 17, + anon_sym_component = 18, + anon_sym_main = 19, + anon_sym_EQ = 20, + anon_sym_public = 21, + anon_sym_LBRACK = 22, + anon_sym_RBRACK = 23, + anon_sym_if = 24, + anon_sym_else = 25, + anon_sym_for = 26, + anon_sym_while = 27, + anon_sym_return = 28, + anon_sym_signal = 29, + anon_sym_LT_EQ_EQ = 30, + anon_sym_LT_DASH_DASH = 31, + anon_sym_input = 32, + anon_sym_output = 33, + anon_sym_var = 34, + anon_sym_EQ_EQ_GT = 35, + anon_sym_DASH_DASH_GT = 36, + anon_sym_AMP_EQ = 37, + anon_sym_PLUS_EQ = 38, + anon_sym_DASH_EQ = 39, + anon_sym_STAR_EQ = 40, + anon_sym_STAR_STAR_EQ = 41, + anon_sym_SLASH_EQ = 42, + anon_sym_BSLASH_EQ = 43, + anon_sym_PERCENT_EQ = 44, + anon_sym_PIPE_EQ = 45, + anon_sym_CARET_EQ = 46, + anon_sym_GT_GT_EQ = 47, + anon_sym_LT_LT_EQ = 48, + anon_sym_EQ_EQ_EQ = 49, + anon_sym_PLUS_PLUS = 50, + anon_sym_DASH_DASH = 51, + anon_sym_DOT = 52, + anon_sym_QMARK = 53, + anon_sym_COLON = 54, + anon_sym_BANG = 55, + anon_sym_TILDE = 56, + anon_sym_DASH = 57, + anon_sym_PLUS = 58, + anon_sym_AMP_AMP = 59, + anon_sym_AMP = 60, + anon_sym_PIPE_PIPE = 61, + anon_sym_PIPE = 62, + anon_sym_GT_GT = 63, + anon_sym_LT_LT = 64, + anon_sym_CARET = 65, + anon_sym_STAR = 66, + anon_sym_SLASH = 67, + anon_sym_BSLASH = 68, + anon_sym_PERCENT = 69, + anon_sym_STAR_STAR = 70, + anon_sym_LT = 71, + anon_sym_LT_EQ = 72, + anon_sym_EQ_EQ = 73, + anon_sym_BANG_EQ = 74, + anon_sym_GT_EQ = 75, + anon_sym_GT = 76, + anon_sym_SEMI = 77, + sym_identifier = 78, + sym_int_literal = 79, + sym_custom = 80, + sym_parallel = 81, sym_comment = 82, sym_source_file = 83, sym__source_unit = 84, @@ -106,57 +106,62 @@ enum ts_symbol_identifiers { sym_circom_pragma_token = 88, sym__circom = 89, sym_include_directive = 90, - sym__definition = 91, - sym_template_definition = 92, - sym_template_type = 93, - sym_template_body = 94, - sym_function_definition = 95, - sym_function_body = 96, - sym_main_component_definition = 97, - sym_main_component_public_signals = 98, - sym__statement = 99, - sym_block_statement = 100, - sym_expression_statement = 101, - sym_if_statement = 102, - sym_for_statement = 103, - sym_while_statement = 104, - sym_return_statement = 105, - sym_variable_declaration_statement = 106, - sym__variable_initialization = 107, - sym__expression = 108, - sym_assignment_expression = 109, - sym_increment_expression = 110, - sym_decrement_expression = 111, - sym_anonymous_inputs = 112, - sym_call_expression = 113, - sym_argument_list = 114, - sym_member_expression = 115, - sym_array_access_expression = 116, - sym_parenthesized_expression = 117, - sym_ternary_expression = 118, - sym_unary_expression = 119, - sym_binary_expression = 120, - sym_array = 121, - sym_tuple = 122, - sym__type = 123, - sym_array_definition = 124, - sym_component = 125, - sym_signal = 126, - sym_signal_visability = 127, - sym_signal_tags = 128, - sym_parameter_list = 129, - sym_parameter = 130, - sym_string = 131, - aux_sym_source_file_repeat1 = 132, - aux_sym_template_body_repeat1 = 133, - aux_sym_main_component_public_signals_repeat1 = 134, - aux_sym_variable_declaration_statement_repeat1 = 135, - aux_sym__variable_initialization_repeat1 = 136, - aux_sym_argument_list_repeat1 = 137, - aux_sym_array_definition_repeat1 = 138, - aux_sym_string_repeat1 = 139, - aux_sym_string_repeat2 = 140, - alias_sym_property_identifier = 141, + sym_string = 91, + sym__definition = 92, + sym_template_definition = 93, + sym_template_type = 94, + sym_template_body = 95, + sym_function_definition = 96, + sym_function_body = 97, + sym_parameter_list = 98, + sym_parameter = 99, + sym_main_component_definition = 100, + sym_main_component_public_signals = 101, + sym__statement = 102, + sym_block_statement = 103, + sym_expression_statement = 104, + sym_if_statement = 105, + sym_for_statement = 106, + sym_while_statement = 107, + sym_return_statement = 108, + sym_signal_declaration_statement = 109, + sym__signal_declaration = 110, + sym_signal_visibility = 111, + sym_signal_tags = 112, + sym_variable_declaration_statement = 113, + sym__variable_declaration = 114, + sym_component_declaration_statement = 115, + sym__component_declaration = 116, + sym_array_type = 117, + sym__expression = 118, + sym_array_expression = 119, + sym_tuple_expression = 120, + sym_assignment_expression = 121, + sym_increment_expression = 122, + sym_decrement_expression = 123, + sym_call_expression = 124, + sym_anonymous_inputs = 125, + sym_argument_list = 126, + sym_member_expression = 127, + sym_array_access_expression = 128, + sym_parenthesized_expression = 129, + sym_ternary_expression = 130, + sym_unary_expression = 131, + sym_binary_expression = 132, + sym__semicolon = 133, + aux_sym_source_file_repeat1 = 134, + aux_sym_string_repeat1 = 135, + aux_sym_string_repeat2 = 136, + aux_sym_template_body_repeat1 = 137, + aux_sym_parameter_list_repeat1 = 138, + aux_sym_signal_declaration_statement_repeat1 = 139, + aux_sym_signal_tags_repeat1 = 140, + aux_sym_variable_declaration_statement_repeat1 = 141, + aux_sym_component_declaration_statement_repeat1 = 142, + aux_sym_array_type_repeat1 = 143, + aux_sym_array_expression_repeat1 = 144, + aux_sym_argument_list_repeat1 = 145, + alias_sym_property_identifier = 146, }; static const char * const ts_symbol_names[] = { @@ -166,29 +171,36 @@ static const char * const ts_symbol_names[] = { [anon_sym_circom] = "circom", [sym_circom_version] = "circom_version", [anon_sym_include] = "include", + [anon_sym_DQUOTE] = "\"", + [anon_sym_SQUOTE] = "'", + [sym__escape_sequence] = "_escape_sequence", + [sym__string_immediate_elt_inside_double_quote] = "_string_immediate_elt_inside_double_quote", + [sym__string_immediate_elt_inside_quote] = "_string_immediate_elt_inside_quote", [anon_sym_template] = "template", - [sym_custom] = "custom", - [sym_parallel] = "parallel", [anon_sym_LBRACE] = "{", [anon_sym_RBRACE] = "}", [anon_sym_function] = "function", + [anon_sym_LPAREN] = "(", + [anon_sym_COMMA] = ",", + [anon_sym_RPAREN] = ")", [anon_sym_component] = "component", [anon_sym_main] = "main", [anon_sym_EQ] = "=", [anon_sym_public] = "public", [anon_sym_LBRACK] = "[", - [anon_sym_COMMA] = ",", [anon_sym_RBRACK] = "]", [anon_sym_if] = "if", - [anon_sym_LPAREN] = "(", - [anon_sym_RPAREN] = ")", [anon_sym_else] = "else", [anon_sym_for] = "for", [anon_sym_while] = "while", [anon_sym_return] = "return", + [anon_sym_signal] = "signal", [anon_sym_LT_EQ_EQ] = "<==", - [anon_sym_EQ_EQ_GT] = "==>", [anon_sym_LT_DASH_DASH] = "<--", + [anon_sym_input] = "input", + [anon_sym_output] = "output", + [anon_sym_var] = "var", + [anon_sym_EQ_EQ_GT] = "==>", [anon_sym_DASH_DASH_GT] = "-->", [anon_sym_AMP_EQ] = "&=", [anon_sym_PLUS_EQ] = "+=", @@ -230,18 +242,11 @@ static const char * const ts_symbol_names[] = { [anon_sym_BANG_EQ] = "!=", [anon_sym_GT_EQ] = ">=", [anon_sym_GT] = ">", - [sym__semicolon] = "_semicolon", + [anon_sym_SEMI] = ";", [sym_identifier] = "identifier", - [sym_int] = "int", - [sym_var] = "var", - [anon_sym_signal] = "signal", - [anon_sym_input] = "input", - [anon_sym_output] = "output", - [sym__escape_sequence] = "_escape_sequence", - [sym__string_immediate_elt_inside_double_quote] = "_string_immediate_elt_inside_double_quote", - [sym__string_immediate_elt_inside_quote] = "_string_immediate_elt_inside_quote", - [anon_sym_DQUOTE] = "\"", - [anon_sym_SQUOTE] = "'", + [sym_int_literal] = "int_literal", + [sym_custom] = "custom", + [sym_parallel] = "parallel", [sym_comment] = "comment", [sym_source_file] = "source_file", [sym__source_unit] = "_source_unit", @@ -251,12 +256,15 @@ static const char * const ts_symbol_names[] = { [sym_circom_pragma_token] = "circom_pragma_token", [sym__circom] = "_circom", [sym_include_directive] = "include_directive", + [sym_string] = "string", [sym__definition] = "_definition", [sym_template_definition] = "template_definition", [sym_template_type] = "template_type", [sym_template_body] = "template_body", [sym_function_definition] = "function_definition", [sym_function_body] = "function_body", + [sym_parameter_list] = "parameter_list", + [sym_parameter] = "parameter", [sym_main_component_definition] = "main_component_definition", [sym_main_component_public_signals] = "main_component_public_signals", [sym__statement] = "_statement", @@ -266,14 +274,23 @@ static const char * const ts_symbol_names[] = { [sym_for_statement] = "for_statement", [sym_while_statement] = "while_statement", [sym_return_statement] = "return_statement", + [sym_signal_declaration_statement] = "signal_declaration_statement", + [sym__signal_declaration] = "_signal_declaration", + [sym_signal_visibility] = "signal_visibility", + [sym_signal_tags] = "signal_tags", [sym_variable_declaration_statement] = "variable_declaration_statement", - [sym__variable_initialization] = "_variable_initialization", + [sym__variable_declaration] = "_variable_declaration", + [sym_component_declaration_statement] = "component_declaration_statement", + [sym__component_declaration] = "_component_declaration", + [sym_array_type] = "array_type", [sym__expression] = "_expression", + [sym_array_expression] = "array_expression", + [sym_tuple_expression] = "tuple_expression", [sym_assignment_expression] = "assignment_expression", [sym_increment_expression] = "increment_expression", [sym_decrement_expression] = "decrement_expression", - [sym_anonymous_inputs] = "anonymous_inputs", [sym_call_expression] = "call_expression", + [sym_anonymous_inputs] = "anonymous_inputs", [sym_argument_list] = "argument_list", [sym_member_expression] = "member_expression", [sym_array_access_expression] = "array_access_expression", @@ -281,26 +298,19 @@ static const char * const ts_symbol_names[] = { [sym_ternary_expression] = "ternary_expression", [sym_unary_expression] = "unary_expression", [sym_binary_expression] = "binary_expression", - [sym_array] = "array", - [sym_tuple] = "tuple", - [sym__type] = "_type", - [sym_array_definition] = "array_definition", - [sym_component] = "component", - [sym_signal] = "signal", - [sym_signal_visability] = "signal_visability", - [sym_signal_tags] = "signal_tags", - [sym_parameter_list] = "parameter_list", - [sym_parameter] = "parameter", - [sym_string] = "string", + [sym__semicolon] = "_semicolon", [aux_sym_source_file_repeat1] = "source_file_repeat1", + [aux_sym_string_repeat1] = "string_repeat1", + [aux_sym_string_repeat2] = "string_repeat2", [aux_sym_template_body_repeat1] = "template_body_repeat1", - [aux_sym_main_component_public_signals_repeat1] = "main_component_public_signals_repeat1", + [aux_sym_parameter_list_repeat1] = "parameter_list_repeat1", + [aux_sym_signal_declaration_statement_repeat1] = "signal_declaration_statement_repeat1", + [aux_sym_signal_tags_repeat1] = "signal_tags_repeat1", [aux_sym_variable_declaration_statement_repeat1] = "variable_declaration_statement_repeat1", - [aux_sym__variable_initialization_repeat1] = "_variable_initialization_repeat1", + [aux_sym_component_declaration_statement_repeat1] = "component_declaration_statement_repeat1", + [aux_sym_array_type_repeat1] = "array_type_repeat1", + [aux_sym_array_expression_repeat1] = "array_expression_repeat1", [aux_sym_argument_list_repeat1] = "argument_list_repeat1", - [aux_sym_array_definition_repeat1] = "array_definition_repeat1", - [aux_sym_string_repeat1] = "string_repeat1", - [aux_sym_string_repeat2] = "string_repeat2", [alias_sym_property_identifier] = "property_identifier", }; @@ -311,29 +321,36 @@ static const TSSymbol ts_symbol_map[] = { [anon_sym_circom] = anon_sym_circom, [sym_circom_version] = sym_circom_version, [anon_sym_include] = anon_sym_include, + [anon_sym_DQUOTE] = anon_sym_DQUOTE, + [anon_sym_SQUOTE] = anon_sym_SQUOTE, + [sym__escape_sequence] = sym__escape_sequence, + [sym__string_immediate_elt_inside_double_quote] = sym__string_immediate_elt_inside_double_quote, + [sym__string_immediate_elt_inside_quote] = sym__string_immediate_elt_inside_quote, [anon_sym_template] = anon_sym_template, - [sym_custom] = sym_custom, - [sym_parallel] = sym_parallel, [anon_sym_LBRACE] = anon_sym_LBRACE, [anon_sym_RBRACE] = anon_sym_RBRACE, [anon_sym_function] = anon_sym_function, + [anon_sym_LPAREN] = anon_sym_LPAREN, + [anon_sym_COMMA] = anon_sym_COMMA, + [anon_sym_RPAREN] = anon_sym_RPAREN, [anon_sym_component] = anon_sym_component, [anon_sym_main] = anon_sym_main, [anon_sym_EQ] = anon_sym_EQ, [anon_sym_public] = anon_sym_public, [anon_sym_LBRACK] = anon_sym_LBRACK, - [anon_sym_COMMA] = anon_sym_COMMA, [anon_sym_RBRACK] = anon_sym_RBRACK, [anon_sym_if] = anon_sym_if, - [anon_sym_LPAREN] = anon_sym_LPAREN, - [anon_sym_RPAREN] = anon_sym_RPAREN, [anon_sym_else] = anon_sym_else, [anon_sym_for] = anon_sym_for, [anon_sym_while] = anon_sym_while, [anon_sym_return] = anon_sym_return, + [anon_sym_signal] = anon_sym_signal, [anon_sym_LT_EQ_EQ] = anon_sym_LT_EQ_EQ, - [anon_sym_EQ_EQ_GT] = anon_sym_EQ_EQ_GT, [anon_sym_LT_DASH_DASH] = anon_sym_LT_DASH_DASH, + [anon_sym_input] = anon_sym_input, + [anon_sym_output] = anon_sym_output, + [anon_sym_var] = anon_sym_var, + [anon_sym_EQ_EQ_GT] = anon_sym_EQ_EQ_GT, [anon_sym_DASH_DASH_GT] = anon_sym_DASH_DASH_GT, [anon_sym_AMP_EQ] = anon_sym_AMP_EQ, [anon_sym_PLUS_EQ] = anon_sym_PLUS_EQ, @@ -375,18 +392,11 @@ static const TSSymbol ts_symbol_map[] = { [anon_sym_BANG_EQ] = anon_sym_BANG_EQ, [anon_sym_GT_EQ] = anon_sym_GT_EQ, [anon_sym_GT] = anon_sym_GT, - [sym__semicolon] = sym__semicolon, + [anon_sym_SEMI] = anon_sym_SEMI, [sym_identifier] = sym_identifier, - [sym_int] = sym_int, - [sym_var] = sym_var, - [anon_sym_signal] = anon_sym_signal, - [anon_sym_input] = anon_sym_input, - [anon_sym_output] = anon_sym_output, - [sym__escape_sequence] = sym__escape_sequence, - [sym__string_immediate_elt_inside_double_quote] = sym__string_immediate_elt_inside_double_quote, - [sym__string_immediate_elt_inside_quote] = sym__string_immediate_elt_inside_quote, - [anon_sym_DQUOTE] = anon_sym_DQUOTE, - [anon_sym_SQUOTE] = anon_sym_SQUOTE, + [sym_int_literal] = sym_int_literal, + [sym_custom] = sym_custom, + [sym_parallel] = sym_parallel, [sym_comment] = sym_comment, [sym_source_file] = sym_source_file, [sym__source_unit] = sym__source_unit, @@ -396,12 +406,15 @@ static const TSSymbol ts_symbol_map[] = { [sym_circom_pragma_token] = sym_circom_pragma_token, [sym__circom] = sym__circom, [sym_include_directive] = sym_include_directive, + [sym_string] = sym_string, [sym__definition] = sym__definition, [sym_template_definition] = sym_template_definition, [sym_template_type] = sym_template_type, [sym_template_body] = sym_template_body, [sym_function_definition] = sym_function_definition, [sym_function_body] = sym_function_body, + [sym_parameter_list] = sym_parameter_list, + [sym_parameter] = sym_parameter, [sym_main_component_definition] = sym_main_component_definition, [sym_main_component_public_signals] = sym_main_component_public_signals, [sym__statement] = sym__statement, @@ -411,14 +424,23 @@ static const TSSymbol ts_symbol_map[] = { [sym_for_statement] = sym_for_statement, [sym_while_statement] = sym_while_statement, [sym_return_statement] = sym_return_statement, + [sym_signal_declaration_statement] = sym_signal_declaration_statement, + [sym__signal_declaration] = sym__signal_declaration, + [sym_signal_visibility] = sym_signal_visibility, + [sym_signal_tags] = sym_signal_tags, [sym_variable_declaration_statement] = sym_variable_declaration_statement, - [sym__variable_initialization] = sym__variable_initialization, + [sym__variable_declaration] = sym__variable_declaration, + [sym_component_declaration_statement] = sym_component_declaration_statement, + [sym__component_declaration] = sym__component_declaration, + [sym_array_type] = sym_array_type, [sym__expression] = sym__expression, + [sym_array_expression] = sym_array_expression, + [sym_tuple_expression] = sym_tuple_expression, [sym_assignment_expression] = sym_assignment_expression, [sym_increment_expression] = sym_increment_expression, [sym_decrement_expression] = sym_decrement_expression, - [sym_anonymous_inputs] = sym_anonymous_inputs, [sym_call_expression] = sym_call_expression, + [sym_anonymous_inputs] = sym_anonymous_inputs, [sym_argument_list] = sym_argument_list, [sym_member_expression] = sym_member_expression, [sym_array_access_expression] = sym_array_access_expression, @@ -426,26 +448,19 @@ static const TSSymbol ts_symbol_map[] = { [sym_ternary_expression] = sym_ternary_expression, [sym_unary_expression] = sym_unary_expression, [sym_binary_expression] = sym_binary_expression, - [sym_array] = sym_array, - [sym_tuple] = sym_tuple, - [sym__type] = sym__type, - [sym_array_definition] = sym_array_definition, - [sym_component] = sym_component, - [sym_signal] = sym_signal, - [sym_signal_visability] = sym_signal_visability, - [sym_signal_tags] = sym_signal_tags, - [sym_parameter_list] = sym_parameter_list, - [sym_parameter] = sym_parameter, - [sym_string] = sym_string, + [sym__semicolon] = sym__semicolon, [aux_sym_source_file_repeat1] = aux_sym_source_file_repeat1, + [aux_sym_string_repeat1] = aux_sym_string_repeat1, + [aux_sym_string_repeat2] = aux_sym_string_repeat2, [aux_sym_template_body_repeat1] = aux_sym_template_body_repeat1, - [aux_sym_main_component_public_signals_repeat1] = aux_sym_main_component_public_signals_repeat1, + [aux_sym_parameter_list_repeat1] = aux_sym_parameter_list_repeat1, + [aux_sym_signal_declaration_statement_repeat1] = aux_sym_signal_declaration_statement_repeat1, + [aux_sym_signal_tags_repeat1] = aux_sym_signal_tags_repeat1, [aux_sym_variable_declaration_statement_repeat1] = aux_sym_variable_declaration_statement_repeat1, - [aux_sym__variable_initialization_repeat1] = aux_sym__variable_initialization_repeat1, + [aux_sym_component_declaration_statement_repeat1] = aux_sym_component_declaration_statement_repeat1, + [aux_sym_array_type_repeat1] = aux_sym_array_type_repeat1, + [aux_sym_array_expression_repeat1] = aux_sym_array_expression_repeat1, [aux_sym_argument_list_repeat1] = aux_sym_argument_list_repeat1, - [aux_sym_array_definition_repeat1] = aux_sym_array_definition_repeat1, - [aux_sym_string_repeat1] = aux_sym_string_repeat1, - [aux_sym_string_repeat2] = aux_sym_string_repeat2, [alias_sym_property_identifier] = alias_sym_property_identifier, }; @@ -474,18 +489,30 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = false, }, - [anon_sym_template] = { + [anon_sym_DQUOTE] = { .visible = true, .named = false, }, - [sym_custom] = { + [anon_sym_SQUOTE] = { .visible = true, + .named = false, + }, + [sym__escape_sequence] = { + .visible = false, .named = true, }, - [sym_parallel] = { - .visible = true, + [sym__string_immediate_elt_inside_double_quote] = { + .visible = false, + .named = true, + }, + [sym__string_immediate_elt_inside_quote] = { + .visible = false, .named = true, }, + [anon_sym_template] = { + .visible = true, + .named = false, + }, [anon_sym_LBRACE] = { .visible = true, .named = false, @@ -498,43 +525,43 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = false, }, - [anon_sym_component] = { + [anon_sym_LPAREN] = { .visible = true, .named = false, }, - [anon_sym_main] = { + [anon_sym_COMMA] = { .visible = true, .named = false, }, - [anon_sym_EQ] = { + [anon_sym_RPAREN] = { .visible = true, .named = false, }, - [anon_sym_public] = { + [anon_sym_component] = { .visible = true, .named = false, }, - [anon_sym_LBRACK] = { + [anon_sym_main] = { .visible = true, .named = false, }, - [anon_sym_COMMA] = { + [anon_sym_EQ] = { .visible = true, .named = false, }, - [anon_sym_RBRACK] = { + [anon_sym_public] = { .visible = true, .named = false, }, - [anon_sym_if] = { + [anon_sym_LBRACK] = { .visible = true, .named = false, }, - [anon_sym_LPAREN] = { + [anon_sym_RBRACK] = { .visible = true, .named = false, }, - [anon_sym_RPAREN] = { + [anon_sym_if] = { .visible = true, .named = false, }, @@ -554,11 +581,11 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = false, }, - [anon_sym_LT_EQ_EQ] = { + [anon_sym_signal] = { .visible = true, .named = false, }, - [anon_sym_EQ_EQ_GT] = { + [anon_sym_LT_EQ_EQ] = { .visible = true, .named = false, }, @@ -566,6 +593,22 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = false, }, + [anon_sym_input] = { + .visible = true, + .named = false, + }, + [anon_sym_output] = { + .visible = true, + .named = false, + }, + [anon_sym_var] = { + .visible = true, + .named = false, + }, + [anon_sym_EQ_EQ_GT] = { + .visible = true, + .named = false, + }, [anon_sym_DASH_DASH_GT] = { .visible = true, .named = false, @@ -730,54 +773,26 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = false, }, - [sym__semicolon] = { - .visible = false, - .named = true, + [anon_sym_SEMI] = { + .visible = true, + .named = false, }, [sym_identifier] = { .visible = true, .named = true, }, - [sym_int] = { + [sym_int_literal] = { .visible = true, .named = true, }, - [sym_var] = { + [sym_custom] = { .visible = true, .named = true, }, - [anon_sym_signal] = { - .visible = true, - .named = false, - }, - [anon_sym_input] = { - .visible = true, - .named = false, - }, - [anon_sym_output] = { + [sym_parallel] = { .visible = true, - .named = false, - }, - [sym__escape_sequence] = { - .visible = false, - .named = true, - }, - [sym__string_immediate_elt_inside_double_quote] = { - .visible = false, - .named = true, - }, - [sym__string_immediate_elt_inside_quote] = { - .visible = false, .named = true, }, - [anon_sym_DQUOTE] = { - .visible = true, - .named = false, - }, - [anon_sym_SQUOTE] = { - .visible = true, - .named = false, - }, [sym_comment] = { .visible = true, .named = true, @@ -814,6 +829,10 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = true, }, + [sym_string] = { + .visible = true, + .named = true, + }, [sym__definition] = { .visible = false, .named = true, @@ -838,6 +857,14 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = true, }, + [sym_parameter_list] = { + .visible = true, + .named = true, + }, + [sym_parameter] = { + .visible = true, + .named = true, + }, [sym_main_component_definition] = { .visible = true, .named = true, @@ -874,170 +901,182 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = true, }, - [sym_variable_declaration_statement] = { + [sym_signal_declaration_statement] = { .visible = true, .named = true, }, - [sym__variable_initialization] = { - .visible = false, - .named = true, - }, - [sym__expression] = { + [sym__signal_declaration] = { .visible = false, .named = true, }, - [sym_assignment_expression] = { + [sym_signal_visibility] = { .visible = true, .named = true, }, - [sym_increment_expression] = { + [sym_signal_tags] = { .visible = true, .named = true, }, - [sym_decrement_expression] = { + [sym_variable_declaration_statement] = { .visible = true, .named = true, }, - [sym_anonymous_inputs] = { - .visible = true, + [sym__variable_declaration] = { + .visible = false, .named = true, }, - [sym_call_expression] = { + [sym_component_declaration_statement] = { .visible = true, .named = true, }, - [sym_argument_list] = { - .visible = true, + [sym__component_declaration] = { + .visible = false, .named = true, }, - [sym_member_expression] = { + [sym_array_type] = { .visible = true, .named = true, }, - [sym_array_access_expression] = { - .visible = true, + [sym__expression] = { + .visible = false, .named = true, }, - [sym_parenthesized_expression] = { + [sym_array_expression] = { .visible = true, .named = true, }, - [sym_ternary_expression] = { + [sym_tuple_expression] = { .visible = true, .named = true, }, - [sym_unary_expression] = { + [sym_assignment_expression] = { .visible = true, .named = true, }, - [sym_binary_expression] = { + [sym_increment_expression] = { .visible = true, .named = true, }, - [sym_array] = { + [sym_decrement_expression] = { .visible = true, .named = true, }, - [sym_tuple] = { + [sym_call_expression] = { .visible = true, .named = true, }, - [sym__type] = { - .visible = false, + [sym_anonymous_inputs] = { + .visible = true, .named = true, }, - [sym_array_definition] = { + [sym_argument_list] = { .visible = true, .named = true, }, - [sym_component] = { + [sym_member_expression] = { .visible = true, .named = true, }, - [sym_signal] = { + [sym_array_access_expression] = { .visible = true, .named = true, }, - [sym_signal_visability] = { + [sym_parenthesized_expression] = { .visible = true, .named = true, }, - [sym_signal_tags] = { + [sym_ternary_expression] = { .visible = true, .named = true, }, - [sym_parameter_list] = { + [sym_unary_expression] = { .visible = true, .named = true, }, - [sym_parameter] = { + [sym_binary_expression] = { .visible = true, .named = true, }, - [sym_string] = { - .visible = true, + [sym__semicolon] = { + .visible = false, .named = true, }, [aux_sym_source_file_repeat1] = { .visible = false, .named = false, }, - [aux_sym_template_body_repeat1] = { + [aux_sym_string_repeat1] = { .visible = false, .named = false, }, - [aux_sym_main_component_public_signals_repeat1] = { + [aux_sym_string_repeat2] = { .visible = false, .named = false, }, - [aux_sym_variable_declaration_statement_repeat1] = { + [aux_sym_template_body_repeat1] = { .visible = false, .named = false, }, - [aux_sym__variable_initialization_repeat1] = { + [aux_sym_parameter_list_repeat1] = { .visible = false, .named = false, }, - [aux_sym_argument_list_repeat1] = { + [aux_sym_signal_declaration_statement_repeat1] = { .visible = false, .named = false, }, - [aux_sym_array_definition_repeat1] = { + [aux_sym_signal_tags_repeat1] = { .visible = false, .named = false, }, - [aux_sym_string_repeat1] = { + [aux_sym_variable_declaration_statement_repeat1] = { .visible = false, .named = false, }, - [aux_sym_string_repeat2] = { + [aux_sym_component_declaration_statement_repeat1] = { .visible = false, .named = false, }, - [alias_sym_property_identifier] = { - .visible = true, - .named = true, + [aux_sym_array_type_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym_array_expression_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym_argument_list_repeat1] = { + .visible = false, + .named = false, + }, + [alias_sym_property_identifier] = { + .visible = true, + .named = true, }, }; enum ts_field_identifiers { field_argument = 1, field_base = 2, - field_index = 3, - field_left = 4, - field_name = 5, - field_object = 6, - field_operator = 7, - field_property = 8, - field_right = 9, - field_source = 10, - field_value = 11, + field_body = 3, + field_index = 4, + field_left = 5, + field_name = 6, + field_object = 7, + field_operator = 8, + field_property = 9, + field_right = 10, + field_source = 11, + field_type = 12, + field_value = 13, + field_version = 14, }; static const char * const ts_field_names[] = { [0] = NULL, [field_argument] = "argument", [field_base] = "base", + [field_body] = "body", [field_index] = "index", [field_left] = "left", [field_name] = "name", @@ -1046,7 +1085,9 @@ static const char * const ts_field_names[] = { [field_property] = "property", [field_right] = "right", [field_source] = "source", + [field_type] = "type", [field_value] = "value", + [field_version] = "version", }; static const TSFieldMapSlice ts_field_map_slices[PRODUCTION_ID_COUNT] = { @@ -1054,62 +1095,128 @@ static const TSFieldMapSlice ts_field_map_slices[PRODUCTION_ID_COUNT] = { [2] = {.index = 1, .length = 1}, [3] = {.index = 2, .length = 1}, [4] = {.index = 3, .length = 2}, - [5] = {.index = 5, .length = 2}, - [6] = {.index = 7, .length = 1}, - [7] = {.index = 8, .length = 3}, + [5] = {.index = 5, .length = 3}, + [6] = {.index = 8, .length = 1}, + [7] = {.index = 9, .length = 2}, [8] = {.index = 11, .length = 1}, - [9] = {.index = 12, .length = 2}, - [10] = {.index = 14, .length = 1}, - [11] = {.index = 15, .length = 2}, - [12] = {.index = 17, .length = 2}, - [13] = {.index = 19, .length = 1}, - [14] = {.index = 20, .length = 1}, - [15] = {.index = 21, .length = 1}, + [9] = {.index = 12, .length = 1}, + [10] = {.index = 13, .length = 2}, + [11] = {.index = 15, .length = 3}, + [12] = {.index = 18, .length = 2}, + [13] = {.index = 20, .length = 1}, + [14] = {.index = 21, .length = 3}, + [15] = {.index = 24, .length = 2}, + [16] = {.index = 26, .length = 2}, + [17] = {.index = 28, .length = 6}, + [18] = {.index = 34, .length = 6}, + [19] = {.index = 40, .length = 3}, + [20] = {.index = 43, .length = 2}, + [21] = {.index = 45, .length = 1}, + [22] = {.index = 46, .length = 2}, + [23] = {.index = 48, .length = 3}, + [24] = {.index = 51, .length = 6}, + [25] = {.index = 57, .length = 3}, + [26] = {.index = 60, .length = 6}, }; static const TSFieldMapEntry ts_field_map_entries[] = { [0] = - {field_source, 1}, + {field_version, 1}, [1] = - {field_name, 1}, + {field_source, 1}, [2] = - {field_name, 2}, + {field_name, 0}, [3] = + {field_body, 3}, + {field_name, 1}, + [5] = + {field_body, 4}, + {field_name, 2}, + {field_type, 1}, + [8] = + {field_value, 3}, + [9] = {field_argument, 1}, {field_operator, 0}, - [5] = + [11] = + {field_argument, 0}, + [12] = + {field_value, 4}, + [13] = + {field_name, 0}, + {field_type, 1}, + [15] = + {field_name, 1, .inherited = true}, + {field_type, 1, .inherited = true}, + {field_value, 1, .inherited = true}, + [18] = {field_object, 0}, {field_property, 2}, - [7] = + [20] = {field_base, 0}, - [8] = + [21] = {field_left, 0}, {field_operator, 1}, {field_right, 2}, - [11] = - {field_value, 1, .inherited = true}, - [12] = - {field_base, 0}, - {field_index, 2}, - [14] = + [24] = + {field_argument, 0}, + {field_argument, 1, .inherited = true}, + [26] = + {field_name, 0}, {field_value, 2}, - [15] = + [28] = + {field_name, 1, .inherited = true}, + {field_name, 2, .inherited = true}, + {field_type, 1, .inherited = true}, + {field_type, 2, .inherited = true}, {field_value, 1, .inherited = true}, {field_value, 2, .inherited = true}, - [17] = + [34] = + {field_name, 0, .inherited = true}, + {field_name, 1, .inherited = true}, + {field_type, 0, .inherited = true}, + {field_type, 1, .inherited = true}, {field_value, 0, .inherited = true}, {field_value, 1, .inherited = true}, - [19] = + [40] = + {field_name, 2, .inherited = true}, + {field_type, 2, .inherited = true}, + {field_value, 2, .inherited = true}, + [43] = + {field_base, 0}, + {field_index, 2}, + [45] = + {field_argument, 1}, + [46] = + {field_argument, 0, .inherited = true}, + {field_argument, 1, .inherited = true}, + [48] = + {field_name, 0}, + {field_type, 1}, {field_value, 3}, - [20] = - {field_value, 4}, - [21] = - {field_value, 5}, + [51] = + {field_name, 2, .inherited = true}, + {field_name, 3, .inherited = true}, + {field_type, 2, .inherited = true}, + {field_type, 3, .inherited = true}, + {field_value, 2, .inherited = true}, + {field_value, 3, .inherited = true}, + [57] = + {field_name, 3, .inherited = true}, + {field_type, 3, .inherited = true}, + {field_value, 3, .inherited = true}, + [60] = + {field_name, 3, .inherited = true}, + {field_name, 4, .inherited = true}, + {field_type, 3, .inherited = true}, + {field_type, 4, .inherited = true}, + {field_value, 3, .inherited = true}, + {field_value, 4, .inherited = true}, }; static const TSSymbol ts_alias_sequences[PRODUCTION_ID_COUNT][MAX_ALIAS_SEQUENCE_LENGTH] = { [0] = {0}, - [5] = { + [12] = { [2] = alias_sym_property_identifier, }, }; @@ -1156,64 +1263,64 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [34] = 34, [35] = 35, [36] = 36, - [37] = 37, + [37] = 35, [38] = 38, [39] = 39, [40] = 40, - [41] = 39, - [42] = 42, - [43] = 43, + [41] = 41, + [42] = 38, + [43] = 35, [44] = 44, - [45] = 43, + [45] = 45, [46] = 46, [47] = 47, [48] = 48, [49] = 49, [50] = 50, [51] = 51, - [52] = 52, - [53] = 53, - [54] = 50, - [55] = 55, + [52] = 50, + [53] = 51, + [54] = 54, + [55] = 47, [56] = 56, - [57] = 55, + [57] = 57, [58] = 58, - [59] = 56, + [59] = 59, [60] = 60, - [61] = 56, - [62] = 60, - [63] = 52, - [64] = 64, + [61] = 54, + [62] = 45, + [63] = 63, + [64] = 63, [65] = 65, - [66] = 66, + [66] = 65, [67] = 67, - [68] = 64, - [69] = 67, - [70] = 66, - [71] = 65, - [72] = 72, - [73] = 72, - [74] = 74, - [75] = 74, - [76] = 76, + [68] = 68, + [69] = 68, + [70] = 67, + [71] = 71, + [72] = 71, + [73] = 73, + [74] = 73, + [75] = 75, + [76] = 75, [77] = 77, [78] = 78, [79] = 79, - [80] = 77, + [80] = 80, [81] = 81, - [82] = 82, + [82] = 81, [83] = 83, [84] = 84, [85] = 85, - [86] = 83, - [87] = 87, + [86] = 86, + [87] = 85, [88] = 88, - [89] = 89, + [89] = 86, [90] = 90, [91] = 91, - [92] = 90, + [92] = 92, [93] = 93, - [94] = 91, + [94] = 94, [95] = 95, [96] = 96, [97] = 97, @@ -1222,7 +1329,7 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [100] = 100, [101] = 101, [102] = 102, - [103] = 103, + [103] = 90, [104] = 104, [105] = 105, [106] = 106, @@ -1231,7 +1338,7 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [109] = 109, [110] = 110, [111] = 111, - [112] = 96, + [112] = 112, [113] = 113, [114] = 114, [115] = 115, @@ -1240,45 +1347,45 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [118] = 118, [119] = 119, [120] = 120, - [121] = 121, + [121] = 111, [122] = 122, [123] = 123, [124] = 124, [125] = 125, - [126] = 124, - [127] = 116, - [128] = 115, - [129] = 121, - [130] = 122, - [131] = 113, - [132] = 117, - [133] = 120, - [134] = 123, + [126] = 126, + [127] = 127, + [128] = 128, + [129] = 129, + [130] = 130, + [131] = 122, + [132] = 123, + [133] = 113, + [134] = 110, [135] = 118, - [136] = 125, + [136] = 129, [137] = 119, - [138] = 114, - [139] = 139, - [140] = 140, - [141] = 141, - [142] = 142, - [143] = 116, - [144] = 120, - [145] = 145, - [146] = 115, - [147] = 125, - [148] = 123, - [149] = 149, - [150] = 150, + [138] = 115, + [139] = 109, + [140] = 112, + [141] = 117, + [142] = 128, + [143] = 124, + [144] = 127, + [145] = 125, + [146] = 130, + [147] = 126, + [148] = 116, + [149] = 120, + [150] = 114, [151] = 151, [152] = 152, - [153] = 153, - [154] = 154, - [155] = 155, + [153] = 114, + [154] = 113, + [155] = 112, [156] = 156, [157] = 157, [158] = 158, - [159] = 159, + [159] = 156, [160] = 160, [161] = 161, [162] = 162, @@ -1301,49 +1408,49 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [179] = 179, [180] = 180, [181] = 181, - [182] = 182, + [182] = 176, [183] = 183, [184] = 184, [185] = 185, - [186] = 184, + [186] = 186, [187] = 187, [188] = 188, - [189] = 189, + [189] = 177, [190] = 190, [191] = 191, [192] = 192, - [193] = 193, - [194] = 184, + [193] = 184, + [194] = 194, [195] = 195, - [196] = 185, - [197] = 189, - [198] = 190, - [199] = 199, - [200] = 200, + [196] = 180, + [197] = 179, + [198] = 185, + [199] = 178, + [200] = 186, [201] = 201, - [202] = 190, + [202] = 177, [203] = 203, - [204] = 204, - [205] = 185, - [206] = 189, + [204] = 176, + [205] = 205, + [206] = 192, [207] = 207, [208] = 208, - [209] = 209, - [210] = 210, + [209] = 187, + [210] = 190, [211] = 211, - [212] = 212, - [213] = 213, + [212] = 208, + [213] = 211, [214] = 214, [215] = 215, [216] = 216, [217] = 217, [218] = 218, - [219] = 216, + [219] = 219, [220] = 220, [221] = 221, [222] = 222, [223] = 223, - [224] = 216, + [224] = 224, [225] = 225, [226] = 226, [227] = 227, @@ -1367,7 +1474,7 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [245] = 245, [246] = 246, [247] = 247, - [248] = 248, + [248] = 242, [249] = 249, [250] = 250, [251] = 251, @@ -1375,23 +1482,57 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [253] = 253, [254] = 254, [255] = 255, - [256] = 256, + [256] = 241, [257] = 257, [258] = 258, [259] = 259, - [260] = 260, + [260] = 257, [261] = 261, [262] = 262, - [263] = 263, + [263] = 241, [264] = 264, [265] = 265, - [266] = 266, - [267] = 240, + [266] = 262, + [267] = 267, [268] = 268, [269] = 269, - [270] = 241, + [270] = 270, [271] = 271, - [272] = 242, + [272] = 272, + [273] = 273, + [274] = 274, + [275] = 275, + [276] = 276, + [277] = 277, + [278] = 278, + [279] = 279, + [280] = 280, + [281] = 281, + [282] = 282, + [283] = 283, + [284] = 284, + [285] = 285, + [286] = 286, + [287] = 287, + [288] = 288, + [289] = 289, + [290] = 290, + [291] = 291, + [292] = 292, + [293] = 293, + [294] = 294, + [295] = 295, + [296] = 296, + [297] = 297, + [298] = 298, + [299] = 299, + [300] = 300, + [301] = 285, + [302] = 302, + [303] = 303, + [304] = 284, + [305] = 305, + [306] = 282, }; static bool ts_lex(TSLexer *lexer, TSStateId state) { @@ -1399,31 +1540,31 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { eof = lexer->eof(lexer); switch (state) { case 0: - if (eof) ADVANCE(127); + if (eof) ADVANCE(128); ADVANCE_MAP( - '!', 188, - '"', 295, - '%', 206, - '&', 197, - '\'', 296, - '(', 155, - ')', 156, - '*', 203, - '+', 194, - ',', 151, - '-', 191, - '.', 184, - '/', 204, - ':', 186, - ';', 214, - '<', 208, - '=', 148, - '>', 213, - '?', 185, - '[', 150, - '\\', 205, - ']', 152, - '^', 202, + '!', 214, + '"', 138, + '%', 232, + '&', 223, + '\'', 139, + '(', 163, + ')', 165, + '*', 229, + '+', 220, + ',', 164, + '-', 217, + '.', 210, + '/', 230, + ':', 212, + ';', 240, + '<', 234, + '=', 169, + '>', 239, + '?', 211, + '[', 171, + '\\', 231, + ']', 172, + '^', 228, 'c', 54, 'e', 63, 'f', 85, @@ -1436,277 +1577,276 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { 't', 48, 'v', 29, 'w', 53, - '{', 142, - '|', 199, - '}', 143, - '~', 189, + '{', 160, + '|', 225, + '}', 161, + '~', 215, ); if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ') SKIP(0); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(267); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(293); END_STATE(); case 1: if (lookahead == '\n') SKIP(15); - if (lookahead == '"') ADVANCE(295); - if (lookahead == '/') ADVANCE(283); + if (lookahead == '"') ADVANCE(138); + if (lookahead == '/') ADVANCE(147); if (lookahead == '\\') ADVANCE(2); if (('\t' <= lookahead && lookahead <= '\r') || - lookahead == ' ') ADVANCE(286); - if (lookahead != 0) ADVANCE(287); + lookahead == ' ') ADVANCE(150); + if (lookahead != 0) ADVANCE(151); END_STATE(); case 2: - if (lookahead == '\n') ADVANCE(281); - if (lookahead == '\r') ADVANCE(277); - if (lookahead == 'u') ADVANCE(126); - if (lookahead == 'x') ADVANCE(124); - if (('0' <= lookahead && lookahead <= '7')) ADVANCE(280); - if (lookahead != 0) ADVANCE(276); + if (lookahead == '\n') ADVANCE(145); + if (lookahead == '\r') ADVANCE(141); + if (lookahead == 'u') ADVANCE(127); + if (lookahead == 'x') ADVANCE(125); + if (('0' <= lookahead && lookahead <= '7')) ADVANCE(144); + if (lookahead != 0) ADVANCE(140); END_STATE(); case 3: if (lookahead == '\n') SKIP(16); - if (lookahead == '\'') ADVANCE(296); - if (lookahead == '/') ADVANCE(290); + if (lookahead == '\'') ADVANCE(139); + if (lookahead == '/') ADVANCE(154); if (lookahead == '\\') ADVANCE(4); if (('\t' <= lookahead && lookahead <= '\r') || - lookahead == ' ') ADVANCE(293); - if (lookahead != 0) ADVANCE(294); + lookahead == ' ') ADVANCE(157); + if (lookahead != 0) ADVANCE(158); END_STATE(); case 4: - if (lookahead == '\n') ADVANCE(288); - if (lookahead == '\r') ADVANCE(278); - if (lookahead == 'u') ADVANCE(126); - if (lookahead == 'x') ADVANCE(124); - if (('0' <= lookahead && lookahead <= '7')) ADVANCE(280); - if (lookahead != 0) ADVANCE(276); + if (lookahead == '\n') ADVANCE(152); + if (lookahead == '\r') ADVANCE(142); + if (lookahead == 'u') ADVANCE(127); + if (lookahead == 'x') ADVANCE(125); + if (('0' <= lookahead && lookahead <= '7')) ADVANCE(144); + if (lookahead != 0) ADVANCE(140); END_STATE(); case 5: - if (lookahead == ' ') ADVANCE(5); - if (lookahead == '"') ADVANCE(6); - if (lookahead == '.') ADVANCE(7); - if (lookahead == '/') ADVANCE(18); - if (lookahead == 'c') ADVANCE(263); - if (lookahead == 'p') ADVANCE(215); + ADVANCE_MAP( + ' ', 5, + '\'', 6, + '.', 7, + '/', 18, + 'c', 289, + 'p', 241, + '$', 120, + '_', 120, + ); if (('\t' <= lookahead && lookahead <= '\r')) SKIP(5); if (lookahead == '*' || - ('0' <= lookahead && lookahead <= '9')) ADVANCE(133); - if (lookahead == '$' || - ('A' <= lookahead && lookahead <= 'Z') || - lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(266); + ('0' <= lookahead && lookahead <= '9')) ADVANCE(134); + if (('A' <= lookahead && lookahead <= 'Z') || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); case 6: - if (lookahead == ' ') ADVANCE(120); + if (lookahead == ' ') ADVANCE(121); if (lookahead == '.') ADVANCE(7); if (lookahead == '*' || - ('0' <= lookahead && lookahead <= '9')) ADVANCE(133); + ('0' <= lookahead && lookahead <= '9')) ADVANCE(134); END_STATE(); case 7: - if (lookahead == ' ') ADVANCE(120); + if (lookahead == ' ') ADVANCE(121); if (lookahead == '*' || - ('0' <= lookahead && lookahead <= '9')) ADVANCE(133); + ('0' <= lookahead && lookahead <= '9')) ADVANCE(134); END_STATE(); case 8: - if (lookahead == ' ') ADVANCE(121); + if (lookahead == ' ') ADVANCE(122); if (lookahead == '*' || - ('0' <= lookahead && lookahead <= '9')) ADVANCE(132); + ('0' <= lookahead && lookahead <= '9')) ADVANCE(133); END_STATE(); case 9: ADVANCE_MAP( '!', 22, - '%', 206, - '&', 197, - '(', 155, - ')', 156, - '*', 203, - '+', 194, - ',', 151, - '-', 191, - '.', 184, - '/', 204, - ':', 186, - ';', 214, - '<', 208, - '=', 148, - '>', 213, - '?', 185, - '[', 150, - '\\', 205, - ']', 152, - '^', 202, - 'i', 237, - 'o', 261, - '{', 142, - '|', 199, + '%', 232, + '&', 223, + '(', 163, + ')', 165, + '*', 229, + '+', 220, + ',', 164, + '-', 217, + '.', 210, + '/', 230, + ':', 212, + ';', 240, + '<', 234, + '=', 169, + '>', 239, + '?', 211, + '[', 171, + '\\', 231, + ']', 172, + '^', 228, + 'i', 263, + 'o', 287, + '{', 160, + '|', 225, + '$', 120, + '_', 120, ); if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ') SKIP(9); - if (lookahead == '$' || - ('A' <= lookahead && lookahead <= '_') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(266); + if (('A' <= lookahead && lookahead <= 'Z') || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); case 10: ADVANCE_MAP( '!', 22, - '%', 206, - '&', 197, - '(', 155, - ')', 156, - '*', 203, - '+', 195, - ',', 151, - '-', 192, - '.', 184, - '/', 204, - ':', 186, - ';', 214, - '<', 208, - '=', 148, - '>', 213, - '?', 185, - '[', 150, - '\\', 205, - ']', 152, - '^', 202, + '%', 232, + '&', 223, + '(', 163, + ')', 165, + '*', 229, + '+', 221, + ',', 164, + '-', 218, + '.', 210, + '/', 230, + ':', 212, + ';', 240, + '<', 234, + '=', 169, + '>', 239, + '?', 211, + '[', 171, + '\\', 231, + ']', 172, + '^', 228, 'c', 55, - '|', 199, + '|', 225, ); if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ') SKIP(10); END_STATE(); case 11: ADVANCE_MAP( - '!', 187, - '(', 155, - ')', 156, - '+', 193, - '-', 190, + '!', 213, + '(', 163, + ')', 165, + '+', 219, + '-', 216, '/', 18, - ';', 214, - '[', 150, - ']', 152, - 'p', 215, - '~', 189, + ';', 240, + '[', 171, + ']', 172, + 'p', 241, + '~', 215, + '$', 120, + '_', 120, ); if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ') SKIP(11); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(267); - if (lookahead == '$' || - ('A' <= lookahead && lookahead <= 'Z') || - lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(266); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(293); + if (('A' <= lookahead && lookahead <= 'Z') || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); case 12: ADVANCE_MAP( - '!', 187, - '(', 155, - '+', 193, - '-', 190, + '!', 213, + '(', 163, + '+', 219, + '-', 216, '/', 18, - ';', 214, - '[', 150, - 'c', 242, - 'p', 215, - 's', 227, - 'v', 217, - '~', 189, + ';', 240, + '[', 171, + 'p', 241, + 'v', 243, + '~', 215, + '$', 120, + '_', 120, ); if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ') SKIP(12); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(267); - if (lookahead == '$' || - ('A' <= lookahead && lookahead <= 'Z') || - lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(266); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(293); + if (('A' <= lookahead && lookahead <= 'Z') || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); case 13: ADVANCE_MAP( - '!', 187, - '(', 155, - '+', 193, - '-', 190, + '!', 213, + '(', 163, + '+', 219, + '-', 216, '/', 18, - '[', 150, - 'c', 242, - 'e', 231, - 'f', 243, - 'i', 224, - 'p', 215, - 'r', 221, - 's', 227, - 'v', 217, - 'w', 226, - '{', 142, - '}', 143, - '~', 189, + '[', 171, + 'c', 268, + 'e', 257, + 'f', 269, + 'i', 250, + 'p', 241, + 'r', 247, + 's', 253, + 'v', 243, + 'w', 252, + '{', 160, + '}', 161, + '~', 215, + '$', 120, + '_', 120, ); if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ') SKIP(13); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(267); - if (lookahead == '$' || - ('A' <= lookahead && lookahead <= 'Z') || - lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(266); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(293); + if (('A' <= lookahead && lookahead <= 'Z') || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); case 14: ADVANCE_MAP( - '!', 187, - '(', 155, - '+', 193, - '-', 190, + '!', 213, + '(', 163, + '+', 219, + '-', 216, '/', 18, - '[', 150, - 'c', 242, - 'f', 243, - 'i', 224, - 'p', 215, - 'r', 221, - 's', 227, - 'v', 217, - 'w', 226, - '{', 142, - '}', 143, - '~', 189, + '[', 171, + 'c', 268, + 'f', 269, + 'i', 250, + 'p', 241, + 'r', 247, + 's', 253, + 'v', 243, + 'w', 252, + '{', 160, + '}', 161, + '~', 215, + '$', 120, + '_', 120, ); if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ') SKIP(14); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(267); - if (lookahead == '$' || - ('A' <= lookahead && lookahead <= 'Z') || - lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(266); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(293); + if (('A' <= lookahead && lookahead <= 'Z') || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); case 15: - if (lookahead == '"') ADVANCE(295); + if (lookahead == '"') ADVANCE(138); if (lookahead == '/') ADVANCE(18); if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ') SKIP(15); END_STATE(); case 16: - if (lookahead == '\'') ADVANCE(296); + if (lookahead == '\'') ADVANCE(139); if (lookahead == '/') ADVANCE(18); if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ') SKIP(16); END_STATE(); case 17: - if (lookahead == ')') ADVANCE(156); + if (lookahead == ')') ADVANCE(165); if (lookahead == '/') ADVANCE(18); - if (lookahead == ';') ADVANCE(214); - if (lookahead == ']') ADVANCE(152); - if (lookahead == '{') ADVANCE(142); + if (lookahead == '{') ADVANCE(160); + if (lookahead == '$' || + lookahead == '_') ADVANCE(120); if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ') SKIP(17); - if (lookahead == '$' || - ('A' <= lookahead && lookahead <= 'Z') || - lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(266); + if (('A' <= lookahead && lookahead <= 'Z') || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); case 18: if (lookahead == '*') ADVANCE(20); - if (lookahead == '/') ADVANCE(298); + if (lookahead == '/') ADVANCE(299); END_STATE(); case 19: if (lookahead == '*') ADVANCE(19); - if (lookahead == '/') ADVANCE(297); + if (lookahead == '/') ADVANCE(298); if (lookahead != 0) ADVANCE(20); END_STATE(); case 20: @@ -1714,19 +1854,19 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { if (lookahead != 0) ADVANCE(20); END_STATE(); case 21: - if (lookahead == '-') ADVANCE(167); + if (lookahead == '-') ADVANCE(186); END_STATE(); case 22: - if (lookahead == '=') ADVANCE(211); + if (lookahead == '=') ADVANCE(237); END_STATE(); case 23: - if (lookahead == '>') ADVANCE(168); + if (lookahead == '>') ADVANCE(194); END_STATE(); case 24: if (lookahead == '_') ADVANCE(114); END_STATE(); case 25: - if (lookahead == 'a') ADVANCE(128); + if (lookahead == 'a') ADVANCE(129); END_STATE(); case 26: if (lookahead == 'a') ADVANCE(57); @@ -1761,7 +1901,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { if (lookahead == 'c') ADVANCE(86); END_STATE(); case 36: - if (lookahead == 'c') ADVANCE(149); + if (lookahead == 'c') ADVANCE(170); END_STATE(); case 37: if (lookahead == 'c') ADVANCE(64); @@ -1774,16 +1914,16 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { if (lookahead == 'd') ADVANCE(42); END_STATE(); case 40: - if (lookahead == 'e') ADVANCE(157); + if (lookahead == 'e') ADVANCE(175); END_STATE(); case 41: - if (lookahead == 'e') ADVANCE(161); + if (lookahead == 'e') ADVANCE(179); END_STATE(); case 42: - if (lookahead == 'e') ADVANCE(136); + if (lookahead == 'e') ADVANCE(137); END_STATE(); case 43: - if (lookahead == 'e') ADVANCE(137); + if (lookahead == 'e') ADVANCE(159); END_STATE(); case 44: if (lookahead == 'e') ADVANCE(107); @@ -1804,7 +1944,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { if (lookahead == 'e') ADVANCE(77); END_STATE(); case 50: - if (lookahead == 'f') ADVANCE(153); + if (lookahead == 'f') ADVANCE(173); if (lookahead == 'n') ADVANCE(37); END_STATE(); case 51: @@ -1841,10 +1981,10 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { if (lookahead == 'i') ADVANCE(90); END_STATE(); case 61: - if (lookahead == 'l') ADVANCE(270); + if (lookahead == 'l') ADVANCE(183); END_STATE(); case 62: - if (lookahead == 'l') ADVANCE(140); + if (lookahead == 'l') ADVANCE(296); END_STATE(); case 63: if (lookahead == 'l') ADVANCE(101); @@ -1874,10 +2014,10 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { if (lookahead == 'm') ADVANCE(91); END_STATE(); case 72: - if (lookahead == 'm') ADVANCE(130); + if (lookahead == 'm') ADVANCE(131); END_STATE(); case 73: - if (lookahead == 'm') ADVANCE(138); + if (lookahead == 'm') ADVANCE(294); END_STATE(); case 74: if (lookahead == 'm') ADVANCE(24); @@ -1892,13 +2032,13 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { if (lookahead == 'm') ADVANCE(94); END_STATE(); case 78: - if (lookahead == 'n') ADVANCE(147); + if (lookahead == 'n') ADVANCE(168); END_STATE(); case 79: - if (lookahead == 'n') ADVANCE(163); + if (lookahead == 'n') ADVANCE(181); END_STATE(); case 80: - if (lookahead == 'n') ADVANCE(144); + if (lookahead == 'n') ADVANCE(162); END_STATE(); case 81: if (lookahead == 'n') ADVANCE(38); @@ -1947,10 +2087,10 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { if (lookahead == 'r') ADVANCE(35); END_STATE(); case 96: - if (lookahead == 'r') ADVANCE(159); + if (lookahead == 'r') ADVANCE(177); END_STATE(); case 97: - if (lookahead == 'r') ADVANCE(268); + if (lookahead == 'r') ADVANCE(191); END_STATE(); case 98: if (lookahead == 'r') ADVANCE(30); @@ -1959,7 +2099,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { if (lookahead == 'r') ADVANCE(79); END_STATE(); case 100: - if (lookahead == 's') ADVANCE(129); + if (lookahead == 's') ADVANCE(130); END_STATE(); case 101: if (lookahead == 's') ADVANCE(40); @@ -1971,13 +2111,13 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { if (lookahead == 's') ADVANCE(113); END_STATE(); case 104: - if (lookahead == 't') ADVANCE(272); + if (lookahead == 't') ADVANCE(187); END_STATE(); case 105: - if (lookahead == 't') ADVANCE(274); + if (lookahead == 't') ADVANCE(189); END_STATE(); case 106: - if (lookahead == 't') ADVANCE(145); + if (lookahead == 't') ADVANCE(166); END_STATE(); case 107: if (lookahead == 't') ADVANCE(117); @@ -2019,26 +2159,27 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { if (lookahead == 'u') ADVANCE(105); END_STATE(); case 120: - if (lookahead == '*' || - ('0' <= lookahead && lookahead <= '9')) ADVANCE(133); + if (lookahead == '$' || + lookahead == '_') ADVANCE(120); + if (('A' <= lookahead && lookahead <= 'Z') || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); case 121: if (lookahead == '*' || - ('0' <= lookahead && lookahead <= '9')) ADVANCE(132); + ('0' <= lookahead && lookahead <= '9')) ADVANCE(134); END_STATE(); case 122: if (lookahead == '*' || - ('0' <= lookahead && lookahead <= '9')) ADVANCE(135); + ('0' <= lookahead && lookahead <= '9')) ADVANCE(133); END_STATE(); case 123: - if (('0' <= lookahead && lookahead <= '9') || - ('A' <= lookahead && lookahead <= 'F') || - ('a' <= lookahead && lookahead <= 'f')) ADVANCE(276); + if (lookahead == '*' || + ('0' <= lookahead && lookahead <= '9')) ADVANCE(136); END_STATE(); case 124: if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || - ('a' <= lookahead && lookahead <= 'f')) ADVANCE(123); + ('a' <= lookahead && lookahead <= 'f')) ADVANCE(140); END_STATE(); case 125: if (('0' <= lookahead && lookahead <= '9') || @@ -2051,1014 +2192,1019 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { ('a' <= lookahead && lookahead <= 'f')) ADVANCE(125); END_STATE(); case 127: - ACCEPT_TOKEN(ts_builtin_sym_end); + if (('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'F') || + ('a' <= lookahead && lookahead <= 'f')) ADVANCE(126); END_STATE(); case 128: - ACCEPT_TOKEN(anon_sym_pragma); + ACCEPT_TOKEN(ts_builtin_sym_end); END_STATE(); case 129: - ACCEPT_TOKEN(anon_sym_custom_templates); + ACCEPT_TOKEN(anon_sym_pragma); END_STATE(); case 130: - ACCEPT_TOKEN(anon_sym_circom); + ACCEPT_TOKEN(anon_sym_custom_templates); END_STATE(); case 131: - ACCEPT_TOKEN(sym_circom_version); + ACCEPT_TOKEN(anon_sym_circom); END_STATE(); case 132: ACCEPT_TOKEN(sym_circom_version); - if (lookahead == ' ') ADVANCE(134); - if (lookahead == '"') ADVANCE(131); - if (lookahead == '.') ADVANCE(122); - if (lookahead == '*' || - ('0' <= lookahead && lookahead <= '9')) ADVANCE(132); END_STATE(); case 133: ACCEPT_TOKEN(sym_circom_version); - if (lookahead == '"') ADVANCE(131); - if (lookahead == '.') ADVANCE(8); + if (lookahead == ' ') ADVANCE(135); + if (lookahead == '\'') ADVANCE(132); + if (lookahead == '.') ADVANCE(123); if (lookahead == '*' || ('0' <= lookahead && lookahead <= '9')) ADVANCE(133); END_STATE(); case 134: ACCEPT_TOKEN(sym_circom_version); - if (lookahead == '"') ADVANCE(131); - if (lookahead == '.') ADVANCE(122); + if (lookahead == '\'') ADVANCE(132); + if (lookahead == '.') ADVANCE(8); + if (lookahead == '*' || + ('0' <= lookahead && lookahead <= '9')) ADVANCE(134); END_STATE(); case 135: ACCEPT_TOKEN(sym_circom_version); - if (lookahead == '"') ADVANCE(131); - if (lookahead == '*' || - ('0' <= lookahead && lookahead <= '9')) ADVANCE(135); + if (lookahead == '\'') ADVANCE(132); + if (lookahead == '.') ADVANCE(123); END_STATE(); case 136: - ACCEPT_TOKEN(anon_sym_include); + ACCEPT_TOKEN(sym_circom_version); + if (lookahead == '\'') ADVANCE(132); + if (lookahead == '*' || + ('0' <= lookahead && lookahead <= '9')) ADVANCE(136); END_STATE(); case 137: - ACCEPT_TOKEN(anon_sym_template); + ACCEPT_TOKEN(anon_sym_include); END_STATE(); case 138: - ACCEPT_TOKEN(sym_custom); + ACCEPT_TOKEN(anon_sym_DQUOTE); END_STATE(); case 139: - ACCEPT_TOKEN(sym_custom); - if (lookahead == '$' || - ('0' <= lookahead && lookahead <= '9') || - ('A' <= lookahead && lookahead <= 'Z') || - lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(266); + ACCEPT_TOKEN(anon_sym_SQUOTE); END_STATE(); case 140: - ACCEPT_TOKEN(sym_parallel); + ACCEPT_TOKEN(sym__escape_sequence); END_STATE(); case 141: - ACCEPT_TOKEN(sym_parallel); - if (lookahead == '$' || - ('0' <= lookahead && lookahead <= '9') || - ('A' <= lookahead && lookahead <= 'Z') || - lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(266); + ACCEPT_TOKEN(sym__escape_sequence); + if (lookahead == '\n') ADVANCE(145); END_STATE(); case 142: - ACCEPT_TOKEN(anon_sym_LBRACE); + ACCEPT_TOKEN(sym__escape_sequence); + if (lookahead == '\n') ADVANCE(152); END_STATE(); case 143: - ACCEPT_TOKEN(anon_sym_RBRACE); + ACCEPT_TOKEN(sym__escape_sequence); + if (('0' <= lookahead && lookahead <= '7')) ADVANCE(140); END_STATE(); case 144: - ACCEPT_TOKEN(anon_sym_function); + ACCEPT_TOKEN(sym__escape_sequence); + if (('0' <= lookahead && lookahead <= '7')) ADVANCE(143); END_STATE(); case 145: - ACCEPT_TOKEN(anon_sym_component); + ACCEPT_TOKEN(sym__string_immediate_elt_inside_double_quote); END_STATE(); case 146: - ACCEPT_TOKEN(anon_sym_component); - if (lookahead == '$' || - ('0' <= lookahead && lookahead <= '9') || - ('A' <= lookahead && lookahead <= 'Z') || - lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(266); + ACCEPT_TOKEN(sym__string_immediate_elt_inside_double_quote); + if (lookahead == '\r') ADVANCE(151); + if (lookahead != 0 && + lookahead != '\n' && + lookahead != '"' && + lookahead != '\\') ADVANCE(146); END_STATE(); case 147: - ACCEPT_TOKEN(anon_sym_main); + ACCEPT_TOKEN(sym__string_immediate_elt_inside_double_quote); + if (lookahead == '*') ADVANCE(149); + if (lookahead == '/') ADVANCE(146); + if (lookahead != 0 && + lookahead != '\n' && + lookahead != '"' && + lookahead != '\\') ADVANCE(151); END_STATE(); case 148: - ACCEPT_TOKEN(anon_sym_EQ); - if (lookahead == '=') ADVANCE(210); + ACCEPT_TOKEN(sym__string_immediate_elt_inside_double_quote); + if (lookahead == '*') ADVANCE(148); + if (lookahead == '/') ADVANCE(151); + if (lookahead != 0 && + lookahead != '\n' && + lookahead != '"' && + lookahead != '\\') ADVANCE(149); END_STATE(); case 149: - ACCEPT_TOKEN(anon_sym_public); + ACCEPT_TOKEN(sym__string_immediate_elt_inside_double_quote); + if (lookahead == '*') ADVANCE(148); + if (lookahead != 0 && + lookahead != '\n' && + lookahead != '"' && + lookahead != '\\') ADVANCE(149); END_STATE(); case 150: - ACCEPT_TOKEN(anon_sym_LBRACK); + ACCEPT_TOKEN(sym__string_immediate_elt_inside_double_quote); + if (lookahead == '/') ADVANCE(147); + if (lookahead == '\t' || + (0x0b <= lookahead && lookahead <= '\r') || + lookahead == ' ') ADVANCE(150); + if (lookahead != 0 && + (lookahead < '\t' || '\r' < lookahead) && + lookahead != '"' && + lookahead != '\\') ADVANCE(151); END_STATE(); case 151: - ACCEPT_TOKEN(anon_sym_COMMA); + ACCEPT_TOKEN(sym__string_immediate_elt_inside_double_quote); + if (lookahead != 0 && + lookahead != '\n' && + lookahead != '"' && + lookahead != '\\') ADVANCE(151); END_STATE(); case 152: - ACCEPT_TOKEN(anon_sym_RBRACK); + ACCEPT_TOKEN(sym__string_immediate_elt_inside_quote); END_STATE(); case 153: - ACCEPT_TOKEN(anon_sym_if); + ACCEPT_TOKEN(sym__string_immediate_elt_inside_quote); + if (lookahead == '\r') ADVANCE(158); + if (lookahead != 0 && + lookahead != '\n' && + lookahead != '\'' && + lookahead != '\\') ADVANCE(153); END_STATE(); case 154: - ACCEPT_TOKEN(anon_sym_if); - if (lookahead == '$' || - ('0' <= lookahead && lookahead <= '9') || - ('A' <= lookahead && lookahead <= 'Z') || - lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(266); + ACCEPT_TOKEN(sym__string_immediate_elt_inside_quote); + if (lookahead == '*') ADVANCE(156); + if (lookahead == '/') ADVANCE(153); + if (lookahead != 0 && + lookahead != '\n' && + lookahead != '\'' && + lookahead != '\\') ADVANCE(158); END_STATE(); case 155: - ACCEPT_TOKEN(anon_sym_LPAREN); + ACCEPT_TOKEN(sym__string_immediate_elt_inside_quote); + if (lookahead == '*') ADVANCE(155); + if (lookahead == '/') ADVANCE(158); + if (lookahead != 0 && + lookahead != '\n' && + lookahead != '\'' && + lookahead != '\\') ADVANCE(156); END_STATE(); case 156: - ACCEPT_TOKEN(anon_sym_RPAREN); + ACCEPT_TOKEN(sym__string_immediate_elt_inside_quote); + if (lookahead == '*') ADVANCE(155); + if (lookahead != 0 && + lookahead != '\n' && + lookahead != '\'' && + lookahead != '\\') ADVANCE(156); END_STATE(); case 157: - ACCEPT_TOKEN(anon_sym_else); + ACCEPT_TOKEN(sym__string_immediate_elt_inside_quote); + if (lookahead == '/') ADVANCE(154); + if (lookahead == '\t' || + (0x0b <= lookahead && lookahead <= '\r') || + lookahead == ' ') ADVANCE(157); + if (lookahead != 0 && + (lookahead < '\t' || '\r' < lookahead) && + lookahead != '\'' && + lookahead != '\\') ADVANCE(158); END_STATE(); case 158: - ACCEPT_TOKEN(anon_sym_else); - if (lookahead == '$' || - ('0' <= lookahead && lookahead <= '9') || - ('A' <= lookahead && lookahead <= 'Z') || - lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(266); + ACCEPT_TOKEN(sym__string_immediate_elt_inside_quote); + if (lookahead != 0 && + lookahead != '\n' && + lookahead != '\'' && + lookahead != '\\') ADVANCE(158); END_STATE(); case 159: - ACCEPT_TOKEN(anon_sym_for); + ACCEPT_TOKEN(anon_sym_template); END_STATE(); case 160: - ACCEPT_TOKEN(anon_sym_for); - if (lookahead == '$' || - ('0' <= lookahead && lookahead <= '9') || - ('A' <= lookahead && lookahead <= 'Z') || - lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(266); + ACCEPT_TOKEN(anon_sym_LBRACE); END_STATE(); case 161: - ACCEPT_TOKEN(anon_sym_while); + ACCEPT_TOKEN(anon_sym_RBRACE); END_STATE(); case 162: - ACCEPT_TOKEN(anon_sym_while); - if (lookahead == '$' || - ('0' <= lookahead && lookahead <= '9') || - ('A' <= lookahead && lookahead <= 'Z') || - lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(266); + ACCEPT_TOKEN(anon_sym_function); END_STATE(); case 163: - ACCEPT_TOKEN(anon_sym_return); + ACCEPT_TOKEN(anon_sym_LPAREN); END_STATE(); case 164: - ACCEPT_TOKEN(anon_sym_return); - if (lookahead == '$' || - ('0' <= lookahead && lookahead <= '9') || - ('A' <= lookahead && lookahead <= 'Z') || - lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(266); + ACCEPT_TOKEN(anon_sym_COMMA); END_STATE(); case 165: - ACCEPT_TOKEN(anon_sym_LT_EQ_EQ); + ACCEPT_TOKEN(anon_sym_RPAREN); END_STATE(); case 166: - ACCEPT_TOKEN(anon_sym_EQ_EQ_GT); + ACCEPT_TOKEN(anon_sym_component); END_STATE(); case 167: - ACCEPT_TOKEN(anon_sym_LT_DASH_DASH); + ACCEPT_TOKEN(anon_sym_component); + if (lookahead == '$' || + ('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'Z') || + lookahead == '_' || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); case 168: - ACCEPT_TOKEN(anon_sym_DASH_DASH_GT); + ACCEPT_TOKEN(anon_sym_main); END_STATE(); case 169: - ACCEPT_TOKEN(anon_sym_AMP_EQ); + ACCEPT_TOKEN(anon_sym_EQ); + if (lookahead == '=') ADVANCE(236); END_STATE(); case 170: - ACCEPT_TOKEN(anon_sym_PLUS_EQ); + ACCEPT_TOKEN(anon_sym_public); END_STATE(); case 171: - ACCEPT_TOKEN(anon_sym_DASH_EQ); + ACCEPT_TOKEN(anon_sym_LBRACK); END_STATE(); case 172: - ACCEPT_TOKEN(anon_sym_STAR_EQ); + ACCEPT_TOKEN(anon_sym_RBRACK); END_STATE(); case 173: - ACCEPT_TOKEN(anon_sym_STAR_STAR_EQ); + ACCEPT_TOKEN(anon_sym_if); END_STATE(); case 174: - ACCEPT_TOKEN(anon_sym_SLASH_EQ); + ACCEPT_TOKEN(anon_sym_if); + if (lookahead == '$' || + ('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'Z') || + lookahead == '_' || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); case 175: - ACCEPT_TOKEN(anon_sym_BSLASH_EQ); + ACCEPT_TOKEN(anon_sym_else); END_STATE(); case 176: - ACCEPT_TOKEN(anon_sym_PERCENT_EQ); + ACCEPT_TOKEN(anon_sym_else); + if (lookahead == '$' || + ('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'Z') || + lookahead == '_' || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); case 177: - ACCEPT_TOKEN(anon_sym_PIPE_EQ); + ACCEPT_TOKEN(anon_sym_for); END_STATE(); case 178: - ACCEPT_TOKEN(anon_sym_CARET_EQ); + ACCEPT_TOKEN(anon_sym_for); + if (lookahead == '$' || + ('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'Z') || + lookahead == '_' || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); case 179: - ACCEPT_TOKEN(anon_sym_GT_GT_EQ); + ACCEPT_TOKEN(anon_sym_while); END_STATE(); case 180: - ACCEPT_TOKEN(anon_sym_LT_LT_EQ); + ACCEPT_TOKEN(anon_sym_while); + if (lookahead == '$' || + ('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'Z') || + lookahead == '_' || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); case 181: - ACCEPT_TOKEN(anon_sym_EQ_EQ_EQ); + ACCEPT_TOKEN(anon_sym_return); END_STATE(); case 182: - ACCEPT_TOKEN(anon_sym_PLUS_PLUS); + ACCEPT_TOKEN(anon_sym_return); + if (lookahead == '$' || + ('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'Z') || + lookahead == '_' || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); case 183: - ACCEPT_TOKEN(anon_sym_DASH_DASH); - if (lookahead == '>') ADVANCE(168); + ACCEPT_TOKEN(anon_sym_signal); END_STATE(); case 184: - ACCEPT_TOKEN(anon_sym_DOT); + ACCEPT_TOKEN(anon_sym_signal); + if (lookahead == '$' || + ('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'Z') || + lookahead == '_' || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); case 185: - ACCEPT_TOKEN(anon_sym_QMARK); + ACCEPT_TOKEN(anon_sym_LT_EQ_EQ); END_STATE(); case 186: - ACCEPT_TOKEN(anon_sym_COLON); + ACCEPT_TOKEN(anon_sym_LT_DASH_DASH); END_STATE(); case 187: - ACCEPT_TOKEN(anon_sym_BANG); + ACCEPT_TOKEN(anon_sym_input); END_STATE(); case 188: - ACCEPT_TOKEN(anon_sym_BANG); - if (lookahead == '=') ADVANCE(211); + ACCEPT_TOKEN(anon_sym_input); + if (lookahead == '$' || + ('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'Z') || + lookahead == '_' || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); case 189: - ACCEPT_TOKEN(anon_sym_TILDE); + ACCEPT_TOKEN(anon_sym_output); END_STATE(); case 190: - ACCEPT_TOKEN(anon_sym_DASH); + ACCEPT_TOKEN(anon_sym_output); + if (lookahead == '$' || + ('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'Z') || + lookahead == '_' || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); case 191: - ACCEPT_TOKEN(anon_sym_DASH); - if (lookahead == '-') ADVANCE(183); - if (lookahead == '=') ADVANCE(171); + ACCEPT_TOKEN(anon_sym_var); END_STATE(); case 192: + ACCEPT_TOKEN(anon_sym_var); + if (lookahead == '$' || + ('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'Z') || + lookahead == '_' || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(292); + END_STATE(); + case 193: + ACCEPT_TOKEN(anon_sym_EQ_EQ_GT); + END_STATE(); + case 194: + ACCEPT_TOKEN(anon_sym_DASH_DASH_GT); + END_STATE(); + case 195: + ACCEPT_TOKEN(anon_sym_AMP_EQ); + END_STATE(); + case 196: + ACCEPT_TOKEN(anon_sym_PLUS_EQ); + END_STATE(); + case 197: + ACCEPT_TOKEN(anon_sym_DASH_EQ); + END_STATE(); + case 198: + ACCEPT_TOKEN(anon_sym_STAR_EQ); + END_STATE(); + case 199: + ACCEPT_TOKEN(anon_sym_STAR_STAR_EQ); + END_STATE(); + case 200: + ACCEPT_TOKEN(anon_sym_SLASH_EQ); + END_STATE(); + case 201: + ACCEPT_TOKEN(anon_sym_BSLASH_EQ); + END_STATE(); + case 202: + ACCEPT_TOKEN(anon_sym_PERCENT_EQ); + END_STATE(); + case 203: + ACCEPT_TOKEN(anon_sym_PIPE_EQ); + END_STATE(); + case 204: + ACCEPT_TOKEN(anon_sym_CARET_EQ); + END_STATE(); + case 205: + ACCEPT_TOKEN(anon_sym_GT_GT_EQ); + END_STATE(); + case 206: + ACCEPT_TOKEN(anon_sym_LT_LT_EQ); + END_STATE(); + case 207: + ACCEPT_TOKEN(anon_sym_EQ_EQ_EQ); + END_STATE(); + case 208: + ACCEPT_TOKEN(anon_sym_PLUS_PLUS); + END_STATE(); + case 209: + ACCEPT_TOKEN(anon_sym_DASH_DASH); + if (lookahead == '>') ADVANCE(194); + END_STATE(); + case 210: + ACCEPT_TOKEN(anon_sym_DOT); + END_STATE(); + case 211: + ACCEPT_TOKEN(anon_sym_QMARK); + END_STATE(); + case 212: + ACCEPT_TOKEN(anon_sym_COLON); + END_STATE(); + case 213: + ACCEPT_TOKEN(anon_sym_BANG); + END_STATE(); + case 214: + ACCEPT_TOKEN(anon_sym_BANG); + if (lookahead == '=') ADVANCE(237); + END_STATE(); + case 215: + ACCEPT_TOKEN(anon_sym_TILDE); + END_STATE(); + case 216: + ACCEPT_TOKEN(anon_sym_DASH); + END_STATE(); + case 217: + ACCEPT_TOKEN(anon_sym_DASH); + if (lookahead == '-') ADVANCE(209); + if (lookahead == '=') ADVANCE(197); + END_STATE(); + case 218: ACCEPT_TOKEN(anon_sym_DASH); if (lookahead == '-') ADVANCE(23); - if (lookahead == '=') ADVANCE(171); + if (lookahead == '=') ADVANCE(197); END_STATE(); - case 193: + case 219: ACCEPT_TOKEN(anon_sym_PLUS); END_STATE(); - case 194: + case 220: ACCEPT_TOKEN(anon_sym_PLUS); - if (lookahead == '+') ADVANCE(182); - if (lookahead == '=') ADVANCE(170); + if (lookahead == '+') ADVANCE(208); + if (lookahead == '=') ADVANCE(196); END_STATE(); - case 195: + case 221: ACCEPT_TOKEN(anon_sym_PLUS); - if (lookahead == '=') ADVANCE(170); + if (lookahead == '=') ADVANCE(196); END_STATE(); - case 196: + case 222: ACCEPT_TOKEN(anon_sym_AMP_AMP); END_STATE(); - case 197: + case 223: ACCEPT_TOKEN(anon_sym_AMP); - if (lookahead == '&') ADVANCE(196); - if (lookahead == '=') ADVANCE(169); + if (lookahead == '&') ADVANCE(222); + if (lookahead == '=') ADVANCE(195); END_STATE(); - case 198: + case 224: ACCEPT_TOKEN(anon_sym_PIPE_PIPE); END_STATE(); - case 199: + case 225: ACCEPT_TOKEN(anon_sym_PIPE); - if (lookahead == '=') ADVANCE(177); - if (lookahead == '|') ADVANCE(198); + if (lookahead == '=') ADVANCE(203); + if (lookahead == '|') ADVANCE(224); END_STATE(); - case 200: + case 226: ACCEPT_TOKEN(anon_sym_GT_GT); - if (lookahead == '=') ADVANCE(179); + if (lookahead == '=') ADVANCE(205); END_STATE(); - case 201: + case 227: ACCEPT_TOKEN(anon_sym_LT_LT); - if (lookahead == '=') ADVANCE(180); + if (lookahead == '=') ADVANCE(206); END_STATE(); - case 202: + case 228: ACCEPT_TOKEN(anon_sym_CARET); - if (lookahead == '=') ADVANCE(178); + if (lookahead == '=') ADVANCE(204); END_STATE(); - case 203: + case 229: ACCEPT_TOKEN(anon_sym_STAR); - if (lookahead == '*') ADVANCE(207); - if (lookahead == '=') ADVANCE(172); + if (lookahead == '*') ADVANCE(233); + if (lookahead == '=') ADVANCE(198); END_STATE(); - case 204: + case 230: ACCEPT_TOKEN(anon_sym_SLASH); if (lookahead == '*') ADVANCE(20); - if (lookahead == '/') ADVANCE(298); - if (lookahead == '=') ADVANCE(174); + if (lookahead == '/') ADVANCE(299); + if (lookahead == '=') ADVANCE(200); END_STATE(); - case 205: + case 231: ACCEPT_TOKEN(anon_sym_BSLASH); - if (lookahead == '=') ADVANCE(175); + if (lookahead == '=') ADVANCE(201); END_STATE(); - case 206: + case 232: ACCEPT_TOKEN(anon_sym_PERCENT); - if (lookahead == '=') ADVANCE(176); + if (lookahead == '=') ADVANCE(202); END_STATE(); - case 207: + case 233: ACCEPT_TOKEN(anon_sym_STAR_STAR); - if (lookahead == '=') ADVANCE(173); + if (lookahead == '=') ADVANCE(199); END_STATE(); - case 208: + case 234: ACCEPT_TOKEN(anon_sym_LT); if (lookahead == '-') ADVANCE(21); - if (lookahead == '<') ADVANCE(201); - if (lookahead == '=') ADVANCE(209); + if (lookahead == '<') ADVANCE(227); + if (lookahead == '=') ADVANCE(235); END_STATE(); - case 209: + case 235: ACCEPT_TOKEN(anon_sym_LT_EQ); - if (lookahead == '=') ADVANCE(165); + if (lookahead == '=') ADVANCE(185); END_STATE(); - case 210: + case 236: ACCEPT_TOKEN(anon_sym_EQ_EQ); - if (lookahead == '=') ADVANCE(181); - if (lookahead == '>') ADVANCE(166); + if (lookahead == '=') ADVANCE(207); + if (lookahead == '>') ADVANCE(193); END_STATE(); - case 211: + case 237: ACCEPT_TOKEN(anon_sym_BANG_EQ); END_STATE(); - case 212: + case 238: ACCEPT_TOKEN(anon_sym_GT_EQ); END_STATE(); - case 213: + case 239: ACCEPT_TOKEN(anon_sym_GT); - if (lookahead == '=') ADVANCE(212); - if (lookahead == '>') ADVANCE(200); + if (lookahead == '=') ADVANCE(238); + if (lookahead == '>') ADVANCE(226); END_STATE(); - case 214: - ACCEPT_TOKEN(sym__semicolon); + case 240: + ACCEPT_TOKEN(anon_sym_SEMI); END_STATE(); - case 215: + case 241: ACCEPT_TOKEN(sym_identifier); - if (lookahead == 'a') ADVANCE(251); + if (lookahead == 'a') ADVANCE(277); if (lookahead == '$' || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('b' <= lookahead && lookahead <= 'z')) ADVANCE(266); + ('b' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); - case 216: + case 242: ACCEPT_TOKEN(sym_identifier); - if (lookahead == 'a') ADVANCE(234); + if (lookahead == 'a') ADVANCE(260); if (lookahead == '$' || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('b' <= lookahead && lookahead <= 'z')) ADVANCE(266); + ('b' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); - case 217: + case 243: ACCEPT_TOKEN(sym_identifier); - if (lookahead == 'a') ADVANCE(250); + if (lookahead == 'a') ADVANCE(276); if (lookahead == '$' || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('b' <= lookahead && lookahead <= 'z')) ADVANCE(266); + ('b' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); - case 218: + case 244: ACCEPT_TOKEN(sym_identifier); - if (lookahead == 'a') ADVANCE(229); + if (lookahead == 'a') ADVANCE(255); if (lookahead == '$' || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('b' <= lookahead && lookahead <= 'z')) ADVANCE(266); + ('b' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); - case 219: + case 245: ACCEPT_TOKEN(sym_identifier); - if (lookahead == 'e') ADVANCE(162); + if (lookahead == 'e') ADVANCE(180); if (lookahead == '$' || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(266); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); - case 220: + case 246: ACCEPT_TOKEN(sym_identifier); - if (lookahead == 'e') ADVANCE(158); + if (lookahead == 'e') ADVANCE(176); if (lookahead == '$' || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(266); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); - case 221: + case 247: ACCEPT_TOKEN(sym_identifier); - if (lookahead == 'e') ADVANCE(258); + if (lookahead == 'e') ADVANCE(284); if (lookahead == '$' || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(266); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); - case 222: + case 248: ACCEPT_TOKEN(sym_identifier); - if (lookahead == 'e') ADVANCE(230); + if (lookahead == 'e') ADVANCE(256); if (lookahead == '$' || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(266); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); - case 223: + case 249: ACCEPT_TOKEN(sym_identifier); - if (lookahead == 'e') ADVANCE(240); + if (lookahead == 'e') ADVANCE(266); if (lookahead == '$' || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(266); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); - case 224: + case 250: ACCEPT_TOKEN(sym_identifier); - if (lookahead == 'f') ADVANCE(154); + if (lookahead == 'f') ADVANCE(174); if (lookahead == '$' || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(266); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); - case 225: + case 251: ACCEPT_TOKEN(sym_identifier); - if (lookahead == 'g') ADVANCE(241); + if (lookahead == 'g') ADVANCE(267); if (lookahead == '$' || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(266); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); - case 226: + case 252: ACCEPT_TOKEN(sym_identifier); - if (lookahead == 'h') ADVANCE(228); + if (lookahead == 'h') ADVANCE(254); if (lookahead == '$' || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(266); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); - case 227: + case 253: ACCEPT_TOKEN(sym_identifier); - if (lookahead == 'i') ADVANCE(225); + if (lookahead == 'i') ADVANCE(251); if (lookahead == '$' || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(266); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); - case 228: + case 254: ACCEPT_TOKEN(sym_identifier); - if (lookahead == 'i') ADVANCE(232); + if (lookahead == 'i') ADVANCE(258); if (lookahead == '$' || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(266); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); - case 229: + case 255: ACCEPT_TOKEN(sym_identifier); - if (lookahead == 'l') ADVANCE(271); + if (lookahead == 'l') ADVANCE(184); if (lookahead == '$' || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(266); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); - case 230: + case 256: ACCEPT_TOKEN(sym_identifier); - if (lookahead == 'l') ADVANCE(141); + if (lookahead == 'l') ADVANCE(297); if (lookahead == '$' || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(266); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); - case 231: + case 257: ACCEPT_TOKEN(sym_identifier); - if (lookahead == 'l') ADVANCE(253); + if (lookahead == 'l') ADVANCE(279); if (lookahead == '$' || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(266); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); - case 232: + case 258: ACCEPT_TOKEN(sym_identifier); - if (lookahead == 'l') ADVANCE(219); + if (lookahead == 'l') ADVANCE(245); if (lookahead == '$' || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(266); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); - case 233: + case 259: ACCEPT_TOKEN(sym_identifier); - if (lookahead == 'l') ADVANCE(222); + if (lookahead == 'l') ADVANCE(248); if (lookahead == '$' || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(266); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); - case 234: + case 260: ACCEPT_TOKEN(sym_identifier); - if (lookahead == 'l') ADVANCE(233); + if (lookahead == 'l') ADVANCE(259); if (lookahead == '$' || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(266); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); - case 235: + case 261: ACCEPT_TOKEN(sym_identifier); - if (lookahead == 'm') ADVANCE(139); + if (lookahead == 'm') ADVANCE(295); if (lookahead == '$' || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(266); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); - case 236: + case 262: ACCEPT_TOKEN(sym_identifier); - if (lookahead == 'm') ADVANCE(246); + if (lookahead == 'm') ADVANCE(272); if (lookahead == '$' || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(266); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); - case 237: + case 263: ACCEPT_TOKEN(sym_identifier); - if (lookahead == 'n') ADVANCE(247); + if (lookahead == 'n') ADVANCE(273); if (lookahead == '$' || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(266); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); - case 238: + case 264: ACCEPT_TOKEN(sym_identifier); - if (lookahead == 'n') ADVANCE(164); + if (lookahead == 'n') ADVANCE(182); if (lookahead == '$' || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(266); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); - case 239: + case 265: ACCEPT_TOKEN(sym_identifier); - if (lookahead == 'n') ADVANCE(223); + if (lookahead == 'n') ADVANCE(249); if (lookahead == '$' || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(266); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); - case 240: + case 266: ACCEPT_TOKEN(sym_identifier); - if (lookahead == 'n') ADVANCE(257); + if (lookahead == 'n') ADVANCE(283); if (lookahead == '$' || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(266); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); - case 241: + case 267: ACCEPT_TOKEN(sym_identifier); - if (lookahead == 'n') ADVANCE(218); + if (lookahead == 'n') ADVANCE(244); if (lookahead == '$' || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(266); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); - case 242: + case 268: ACCEPT_TOKEN(sym_identifier); - if (lookahead == 'o') ADVANCE(236); + if (lookahead == 'o') ADVANCE(262); if (lookahead == '$' || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(266); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); - case 243: + case 269: ACCEPT_TOKEN(sym_identifier); - if (lookahead == 'o') ADVANCE(249); + if (lookahead == 'o') ADVANCE(275); if (lookahead == '$' || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(266); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); - case 244: + case 270: ACCEPT_TOKEN(sym_identifier); - if (lookahead == 'o') ADVANCE(235); + if (lookahead == 'o') ADVANCE(261); if (lookahead == '$' || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(266); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); - case 245: + case 271: ACCEPT_TOKEN(sym_identifier); - if (lookahead == 'o') ADVANCE(239); + if (lookahead == 'o') ADVANCE(265); if (lookahead == '$' || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(266); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); - case 246: + case 272: ACCEPT_TOKEN(sym_identifier); - if (lookahead == 'p') ADVANCE(245); + if (lookahead == 'p') ADVANCE(271); if (lookahead == '$' || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(266); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); - case 247: + case 273: ACCEPT_TOKEN(sym_identifier); - if (lookahead == 'p') ADVANCE(262); + if (lookahead == 'p') ADVANCE(288); if (lookahead == '$' || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(266); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); - case 248: + case 274: ACCEPT_TOKEN(sym_identifier); - if (lookahead == 'p') ADVANCE(264); + if (lookahead == 'p') ADVANCE(290); if (lookahead == '$' || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(266); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); - case 249: + case 275: ACCEPT_TOKEN(sym_identifier); - if (lookahead == 'r') ADVANCE(160); + if (lookahead == 'r') ADVANCE(178); if (lookahead == '$' || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(266); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); - case 250: + case 276: ACCEPT_TOKEN(sym_identifier); - if (lookahead == 'r') ADVANCE(269); + if (lookahead == 'r') ADVANCE(192); if (lookahead == '$' || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(266); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); - case 251: + case 277: ACCEPT_TOKEN(sym_identifier); - if (lookahead == 'r') ADVANCE(216); + if (lookahead == 'r') ADVANCE(242); if (lookahead == '$' || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(266); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); - case 252: + case 278: ACCEPT_TOKEN(sym_identifier); - if (lookahead == 'r') ADVANCE(238); + if (lookahead == 'r') ADVANCE(264); if (lookahead == '$' || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(266); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); - case 253: + case 279: ACCEPT_TOKEN(sym_identifier); - if (lookahead == 's') ADVANCE(220); + if (lookahead == 's') ADVANCE(246); if (lookahead == '$' || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(266); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); - case 254: + case 280: ACCEPT_TOKEN(sym_identifier); - if (lookahead == 's') ADVANCE(259); + if (lookahead == 's') ADVANCE(285); if (lookahead == '$' || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(266); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); - case 255: + case 281: ACCEPT_TOKEN(sym_identifier); - if (lookahead == 't') ADVANCE(273); + if (lookahead == 't') ADVANCE(188); if (lookahead == '$' || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(266); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); - case 256: + case 282: ACCEPT_TOKEN(sym_identifier); - if (lookahead == 't') ADVANCE(275); + if (lookahead == 't') ADVANCE(190); if (lookahead == '$' || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(266); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); - case 257: + case 283: ACCEPT_TOKEN(sym_identifier); - if (lookahead == 't') ADVANCE(146); + if (lookahead == 't') ADVANCE(167); if (lookahead == '$' || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(266); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); - case 258: + case 284: ACCEPT_TOKEN(sym_identifier); - if (lookahead == 't') ADVANCE(265); + if (lookahead == 't') ADVANCE(291); if (lookahead == '$' || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(266); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); - case 259: + case 285: ACCEPT_TOKEN(sym_identifier); - if (lookahead == 't') ADVANCE(244); + if (lookahead == 't') ADVANCE(270); if (lookahead == '$' || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(266); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); - case 260: + case 286: ACCEPT_TOKEN(sym_identifier); - if (lookahead == 't') ADVANCE(248); + if (lookahead == 't') ADVANCE(274); if (lookahead == '$' || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(266); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); - case 261: + case 287: ACCEPT_TOKEN(sym_identifier); - if (lookahead == 'u') ADVANCE(260); + if (lookahead == 'u') ADVANCE(286); if (lookahead == '$' || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(266); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); - case 262: + case 288: ACCEPT_TOKEN(sym_identifier); - if (lookahead == 'u') ADVANCE(255); + if (lookahead == 'u') ADVANCE(281); if (lookahead == '$' || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(266); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); - case 263: + case 289: ACCEPT_TOKEN(sym_identifier); - if (lookahead == 'u') ADVANCE(254); + if (lookahead == 'u') ADVANCE(280); if (lookahead == '$' || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(266); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); - case 264: + case 290: ACCEPT_TOKEN(sym_identifier); - if (lookahead == 'u') ADVANCE(256); + if (lookahead == 'u') ADVANCE(282); if (lookahead == '$' || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(266); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); - case 265: + case 291: ACCEPT_TOKEN(sym_identifier); - if (lookahead == 'u') ADVANCE(252); + if (lookahead == 'u') ADVANCE(278); if (lookahead == '$' || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(266); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); - case 266: + case 292: ACCEPT_TOKEN(sym_identifier); if (lookahead == '$' || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(266); - END_STATE(); - case 267: - ACCEPT_TOKEN(sym_int); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(267); - END_STATE(); - case 268: - ACCEPT_TOKEN(sym_var); - END_STATE(); - case 269: - ACCEPT_TOKEN(sym_var); - if (lookahead == '$' || - ('0' <= lookahead && lookahead <= '9') || - ('A' <= lookahead && lookahead <= 'Z') || - lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(266); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); - case 270: - ACCEPT_TOKEN(anon_sym_signal); - END_STATE(); - case 271: - ACCEPT_TOKEN(anon_sym_signal); - if (lookahead == '$' || - ('0' <= lookahead && lookahead <= '9') || - ('A' <= lookahead && lookahead <= 'Z') || - lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(266); + case 293: + ACCEPT_TOKEN(sym_int_literal); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(293); END_STATE(); - case 272: - ACCEPT_TOKEN(anon_sym_input); + case 294: + ACCEPT_TOKEN(sym_custom); END_STATE(); - case 273: - ACCEPT_TOKEN(anon_sym_input); + case 295: + ACCEPT_TOKEN(sym_custom); if (lookahead == '$' || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(266); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); - case 274: - ACCEPT_TOKEN(anon_sym_output); + case 296: + ACCEPT_TOKEN(sym_parallel); END_STATE(); - case 275: - ACCEPT_TOKEN(anon_sym_output); + case 297: + ACCEPT_TOKEN(sym_parallel); if (lookahead == '$' || ('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(266); - END_STATE(); - case 276: - ACCEPT_TOKEN(sym__escape_sequence); - END_STATE(); - case 277: - ACCEPT_TOKEN(sym__escape_sequence); - if (lookahead == '\n') ADVANCE(281); - END_STATE(); - case 278: - ACCEPT_TOKEN(sym__escape_sequence); - if (lookahead == '\n') ADVANCE(288); - END_STATE(); - case 279: - ACCEPT_TOKEN(sym__escape_sequence); - if (('0' <= lookahead && lookahead <= '7')) ADVANCE(276); - END_STATE(); - case 280: - ACCEPT_TOKEN(sym__escape_sequence); - if (('0' <= lookahead && lookahead <= '7')) ADVANCE(279); - END_STATE(); - case 281: - ACCEPT_TOKEN(sym__string_immediate_elt_inside_double_quote); - END_STATE(); - case 282: - ACCEPT_TOKEN(sym__string_immediate_elt_inside_double_quote); - if (lookahead == '\r') ADVANCE(287); - if (lookahead != 0 && - lookahead != '\n' && - lookahead != '"' && - lookahead != '\\') ADVANCE(282); - END_STATE(); - case 283: - ACCEPT_TOKEN(sym__string_immediate_elt_inside_double_quote); - if (lookahead == '*') ADVANCE(285); - if (lookahead == '/') ADVANCE(282); - if (lookahead != 0 && - lookahead != '\n' && - lookahead != '"' && - lookahead != '\\') ADVANCE(287); - END_STATE(); - case 284: - ACCEPT_TOKEN(sym__string_immediate_elt_inside_double_quote); - if (lookahead == '*') ADVANCE(284); - if (lookahead == '/') ADVANCE(287); - if (lookahead != 0 && - lookahead != '\n' && - lookahead != '"' && - lookahead != '\\') ADVANCE(285); - END_STATE(); - case 285: - ACCEPT_TOKEN(sym__string_immediate_elt_inside_double_quote); - if (lookahead == '*') ADVANCE(284); - if (lookahead != 0 && - lookahead != '\n' && - lookahead != '"' && - lookahead != '\\') ADVANCE(285); - END_STATE(); - case 286: - ACCEPT_TOKEN(sym__string_immediate_elt_inside_double_quote); - if (lookahead == '/') ADVANCE(283); - if (lookahead == '\t' || - (0x0b <= lookahead && lookahead <= '\r') || - lookahead == ' ') ADVANCE(286); - if (lookahead != 0 && - (lookahead < '\t' || '\r' < lookahead) && - lookahead != '"' && - lookahead != '\\') ADVANCE(287); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(292); END_STATE(); - case 287: - ACCEPT_TOKEN(sym__string_immediate_elt_inside_double_quote); - if (lookahead != 0 && - lookahead != '\n' && - lookahead != '"' && - lookahead != '\\') ADVANCE(287); - END_STATE(); - case 288: - ACCEPT_TOKEN(sym__string_immediate_elt_inside_quote); - END_STATE(); - case 289: - ACCEPT_TOKEN(sym__string_immediate_elt_inside_quote); - if (lookahead == '\r') ADVANCE(294); - if (lookahead != 0 && - lookahead != '\n' && - lookahead != '\'' && - lookahead != '\\') ADVANCE(289); - END_STATE(); - case 290: - ACCEPT_TOKEN(sym__string_immediate_elt_inside_quote); - if (lookahead == '*') ADVANCE(292); - if (lookahead == '/') ADVANCE(289); - if (lookahead != 0 && - lookahead != '\n' && - lookahead != '\'' && - lookahead != '\\') ADVANCE(294); - END_STATE(); - case 291: - ACCEPT_TOKEN(sym__string_immediate_elt_inside_quote); - if (lookahead == '*') ADVANCE(291); - if (lookahead == '/') ADVANCE(294); - if (lookahead != 0 && - lookahead != '\n' && - lookahead != '\'' && - lookahead != '\\') ADVANCE(292); - END_STATE(); - case 292: - ACCEPT_TOKEN(sym__string_immediate_elt_inside_quote); - if (lookahead == '*') ADVANCE(291); - if (lookahead != 0 && - lookahead != '\n' && - lookahead != '\'' && - lookahead != '\\') ADVANCE(292); - END_STATE(); - case 293: - ACCEPT_TOKEN(sym__string_immediate_elt_inside_quote); - if (lookahead == '/') ADVANCE(290); - if (lookahead == '\t' || - (0x0b <= lookahead && lookahead <= '\r') || - lookahead == ' ') ADVANCE(293); - if (lookahead != 0 && - (lookahead < '\t' || '\r' < lookahead) && - lookahead != '\'' && - lookahead != '\\') ADVANCE(294); - END_STATE(); - case 294: - ACCEPT_TOKEN(sym__string_immediate_elt_inside_quote); - if (lookahead != 0 && - lookahead != '\n' && - lookahead != '\'' && - lookahead != '\\') ADVANCE(294); - END_STATE(); - case 295: - ACCEPT_TOKEN(anon_sym_DQUOTE); - END_STATE(); - case 296: - ACCEPT_TOKEN(anon_sym_SQUOTE); - END_STATE(); - case 297: + case 298: ACCEPT_TOKEN(sym_comment); END_STATE(); - case 298: + case 299: ACCEPT_TOKEN(sym_comment); if (lookahead != 0 && lookahead != '\n' && - lookahead != '\r') ADVANCE(298); + lookahead != '\r') ADVANCE(299); END_STATE(); default: return false; @@ -3070,12 +3216,12 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [1] = {.lex_state = 0}, [2] = {.lex_state = 9}, [3] = {.lex_state = 9}, - [4] = {.lex_state = 9}, + [4] = {.lex_state = 10}, [5] = {.lex_state = 10}, [6] = {.lex_state = 9}, [7] = {.lex_state = 9}, [8] = {.lex_state = 10}, - [9] = {.lex_state = 10}, + [9] = {.lex_state = 9}, [10] = {.lex_state = 10}, [11] = {.lex_state = 10}, [12] = {.lex_state = 10}, @@ -3103,33 +3249,33 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [34] = {.lex_state = 10}, [35] = {.lex_state = 10}, [36] = {.lex_state = 10}, - [37] = {.lex_state = 14}, - [38] = {.lex_state = 14}, - [39] = {.lex_state = 14}, + [37] = {.lex_state = 10}, + [38] = {.lex_state = 10}, + [39] = {.lex_state = 10}, [40] = {.lex_state = 10}, - [41] = {.lex_state = 14}, - [42] = {.lex_state = 14}, - [43] = {.lex_state = 14}, + [41] = {.lex_state = 10}, + [42] = {.lex_state = 10}, + [43] = {.lex_state = 10}, [44] = {.lex_state = 10}, - [45] = {.lex_state = 14}, - [46] = {.lex_state = 10}, + [45] = {.lex_state = 10}, + [46] = {.lex_state = 14}, [47] = {.lex_state = 10}, - [48] = {.lex_state = 14}, - [49] = {.lex_state = 14}, - [50] = {.lex_state = 10}, - [51] = {.lex_state = 10}, - [52] = {.lex_state = 10}, - [53] = {.lex_state = 10}, + [48] = {.lex_state = 10}, + [49] = {.lex_state = 10}, + [50] = {.lex_state = 14}, + [51] = {.lex_state = 14}, + [52] = {.lex_state = 14}, + [53] = {.lex_state = 14}, [54] = {.lex_state = 10}, [55] = {.lex_state = 10}, - [56] = {.lex_state = 10}, - [57] = {.lex_state = 10}, + [56] = {.lex_state = 14}, + [57] = {.lex_state = 14}, [58] = {.lex_state = 10}, - [59] = {.lex_state = 10}, - [60] = {.lex_state = 10}, + [59] = {.lex_state = 14}, + [60] = {.lex_state = 14}, [61] = {.lex_state = 10}, [62] = {.lex_state = 10}, - [63] = {.lex_state = 10}, + [63] = {.lex_state = 14}, [64] = {.lex_state = 14}, [65] = {.lex_state = 14}, [66] = {.lex_state = 14}, @@ -3139,9 +3285,9 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [70] = {.lex_state = 14}, [71] = {.lex_state = 14}, [72] = {.lex_state = 14}, - [73] = {.lex_state = 14}, + [73] = {.lex_state = 12}, [74] = {.lex_state = 12}, - [75] = {.lex_state = 12}, + [75] = {.lex_state = 11}, [76] = {.lex_state = 11}, [77] = {.lex_state = 11}, [78] = {.lex_state = 11}, @@ -3175,10 +3321,10 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [106] = {.lex_state = 11}, [107] = {.lex_state = 11}, [108] = {.lex_state = 11}, - [109] = {.lex_state = 11}, - [110] = {.lex_state = 11}, - [111] = {.lex_state = 11}, - [112] = {.lex_state = 11}, + [109] = {.lex_state = 13}, + [110] = {.lex_state = 13}, + [111] = {.lex_state = 13}, + [112] = {.lex_state = 13}, [113] = {.lex_state = 13}, [114] = {.lex_state = 13}, [115] = {.lex_state = 13}, @@ -3193,10 +3339,10 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [124] = {.lex_state = 13}, [125] = {.lex_state = 13}, [126] = {.lex_state = 13}, - [127] = {.lex_state = 14}, - [128] = {.lex_state = 14}, - [129] = {.lex_state = 14}, - [130] = {.lex_state = 14}, + [127] = {.lex_state = 13}, + [128] = {.lex_state = 13}, + [129] = {.lex_state = 13}, + [130] = {.lex_state = 13}, [131] = {.lex_state = 14}, [132] = {.lex_state = 14}, [133] = {.lex_state = 14}, @@ -3205,140 +3351,174 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [136] = {.lex_state = 14}, [137] = {.lex_state = 14}, [138] = {.lex_state = 14}, - [139] = {.lex_state = 0}, - [140] = {.lex_state = 0}, - [141] = {.lex_state = 0}, - [142] = {.lex_state = 0}, - [143] = {.lex_state = 11}, - [144] = {.lex_state = 11}, - [145] = {.lex_state = 0}, - [146] = {.lex_state = 11}, - [147] = {.lex_state = 11}, - [148] = {.lex_state = 11}, - [149] = {.lex_state = 0}, - [150] = {.lex_state = 0}, + [139] = {.lex_state = 14}, + [140] = {.lex_state = 14}, + [141] = {.lex_state = 14}, + [142] = {.lex_state = 14}, + [143] = {.lex_state = 14}, + [144] = {.lex_state = 14}, + [145] = {.lex_state = 14}, + [146] = {.lex_state = 14}, + [147] = {.lex_state = 14}, + [148] = {.lex_state = 14}, + [149] = {.lex_state = 14}, + [150] = {.lex_state = 14}, [151] = {.lex_state = 0}, [152] = {.lex_state = 0}, - [153] = {.lex_state = 0}, - [154] = {.lex_state = 0}, - [155] = {.lex_state = 0}, - [156] = {.lex_state = 0}, + [153] = {.lex_state = 11}, + [154] = {.lex_state = 11}, + [155] = {.lex_state = 11}, + [156] = {.lex_state = 9}, [157] = {.lex_state = 0}, [158] = {.lex_state = 0}, - [159] = {.lex_state = 0}, + [159] = {.lex_state = 9}, [160] = {.lex_state = 0}, [161] = {.lex_state = 0}, [162] = {.lex_state = 0}, [163] = {.lex_state = 0}, [164] = {.lex_state = 0}, [165] = {.lex_state = 0}, - [166] = {.lex_state = 9}, + [166] = {.lex_state = 0}, [167] = {.lex_state = 0}, - [168] = {.lex_state = 10}, + [168] = {.lex_state = 0}, [169] = {.lex_state = 0}, - [170] = {.lex_state = 1}, - [171] = {.lex_state = 1}, - [172] = {.lex_state = 5}, - [173] = {.lex_state = 3}, - [174] = {.lex_state = 1}, - [175] = {.lex_state = 3}, + [170] = {.lex_state = 0}, + [171] = {.lex_state = 0}, + [172] = {.lex_state = 0}, + [173] = {.lex_state = 0}, + [174] = {.lex_state = 0}, + [175] = {.lex_state = 10}, [176] = {.lex_state = 0}, - [177] = {.lex_state = 3}, + [177] = {.lex_state = 0}, [178] = {.lex_state = 0}, [179] = {.lex_state = 0}, [180] = {.lex_state = 0}, - [181] = {.lex_state = 11}, + [181] = {.lex_state = 0}, [182] = {.lex_state = 0}, - [183] = {.lex_state = 0}, - [184] = {.lex_state = 17}, + [183] = {.lex_state = 5}, + [184] = {.lex_state = 0}, [185] = {.lex_state = 0}, - [186] = {.lex_state = 17}, + [186] = {.lex_state = 0}, [187] = {.lex_state = 0}, - [188] = {.lex_state = 0}, - [189] = {.lex_state = 17}, + [188] = {.lex_state = 1}, + [189] = {.lex_state = 0}, [190] = {.lex_state = 0}, - [191] = {.lex_state = 17}, - [192] = {.lex_state = 11}, - [193] = {.lex_state = 17}, - [194] = {.lex_state = 17}, - [195] = {.lex_state = 0}, + [191] = {.lex_state = 1}, + [192] = {.lex_state = 0}, + [193] = {.lex_state = 0}, + [194] = {.lex_state = 3}, + [195] = {.lex_state = 1}, [196] = {.lex_state = 0}, - [197] = {.lex_state = 17}, + [197] = {.lex_state = 0}, [198] = {.lex_state = 0}, [199] = {.lex_state = 0}, - [200] = {.lex_state = 17}, - [201] = {.lex_state = 17}, + [200] = {.lex_state = 0}, + [201] = {.lex_state = 3}, [202] = {.lex_state = 0}, [203] = {.lex_state = 0}, - [204] = {.lex_state = 17}, + [204] = {.lex_state = 0}, [205] = {.lex_state = 0}, - [206] = {.lex_state = 17}, - [207] = {.lex_state = 0}, + [206] = {.lex_state = 0}, + [207] = {.lex_state = 3}, [208] = {.lex_state = 0}, [209] = {.lex_state = 0}, - [210] = {.lex_state = 17}, - [211] = {.lex_state = 0}, + [210] = {.lex_state = 0}, + [211] = {.lex_state = 17}, [212] = {.lex_state = 0}, [213] = {.lex_state = 17}, - [214] = {.lex_state = 17}, + [214] = {.lex_state = 0}, [215] = {.lex_state = 0}, - [216] = {.lex_state = 17}, - [217] = {.lex_state = 0}, + [216] = {.lex_state = 0}, + [217] = {.lex_state = 11}, [218] = {.lex_state = 0}, - [219] = {.lex_state = 17}, + [219] = {.lex_state = 0}, [220] = {.lex_state = 0}, [221] = {.lex_state = 0}, - [222] = {.lex_state = 17}, - [223] = {.lex_state = 17}, - [224] = {.lex_state = 17}, - [225] = {.lex_state = 0}, - [226] = {.lex_state = 17}, + [222] = {.lex_state = 0}, + [223] = {.lex_state = 0}, + [224] = {.lex_state = 0}, + [225] = {.lex_state = 11}, + [226] = {.lex_state = 0}, [227] = {.lex_state = 0}, - [228] = {.lex_state = 0}, - [229] = {.lex_state = 0}, - [230] = {.lex_state = 17}, - [231] = {.lex_state = 17}, - [232] = {.lex_state = 17}, - [233] = {.lex_state = 17}, - [234] = {.lex_state = 17}, - [235] = {.lex_state = 17}, - [236] = {.lex_state = 17}, + [228] = {.lex_state = 17}, + [229] = {.lex_state = 11}, + [230] = {.lex_state = 0}, + [231] = {.lex_state = 0}, + [232] = {.lex_state = 0}, + [233] = {.lex_state = 11}, + [234] = {.lex_state = 0}, + [235] = {.lex_state = 0}, + [236] = {.lex_state = 0}, [237] = {.lex_state = 0}, [238] = {.lex_state = 0}, [239] = {.lex_state = 0}, [240] = {.lex_state = 0}, - [241] = {.lex_state = 0}, - [242] = {.lex_state = 0}, + [241] = {.lex_state = 17}, + [242] = {.lex_state = 17}, [243] = {.lex_state = 0}, - [244] = {.lex_state = 0}, + [244] = {.lex_state = 17}, [245] = {.lex_state = 0}, [246] = {.lex_state = 0}, [247] = {.lex_state = 0}, - [248] = {.lex_state = 0}, + [248] = {.lex_state = 17}, [249] = {.lex_state = 0}, - [250] = {.lex_state = 5}, - [251] = {.lex_state = 0}, + [250] = {.lex_state = 0}, + [251] = {.lex_state = 17}, [252] = {.lex_state = 0}, [253] = {.lex_state = 0}, - [254] = {.lex_state = 0}, + [254] = {.lex_state = 17}, [255] = {.lex_state = 0}, - [256] = {.lex_state = 0}, - [257] = {.lex_state = 0}, + [256] = {.lex_state = 17}, + [257] = {.lex_state = 17}, [258] = {.lex_state = 17}, - [259] = {.lex_state = 17}, - [260] = {.lex_state = 0}, - [261] = {.lex_state = 0}, + [259] = {.lex_state = 0}, + [260] = {.lex_state = 17}, + [261] = {.lex_state = 17}, [262] = {.lex_state = 17}, - [263] = {.lex_state = 0}, - [264] = {.lex_state = 17}, + [263] = {.lex_state = 17}, + [264] = {.lex_state = 0}, [265] = {.lex_state = 0}, - [266] = {.lex_state = 0}, + [266] = {.lex_state = 17}, [267] = {.lex_state = 0}, [268] = {.lex_state = 0}, - [269] = {.lex_state = 0}, + [269] = {.lex_state = 17}, [270] = {.lex_state = 0}, [271] = {.lex_state = 0}, [272] = {.lex_state = 0}, + [273] = {.lex_state = 0}, + [274] = {.lex_state = 0}, + [275] = {.lex_state = 0}, + [276] = {.lex_state = 17}, + [277] = {.lex_state = 0}, + [278] = {.lex_state = 0}, + [279] = {.lex_state = 0}, + [280] = {.lex_state = 0}, + [281] = {.lex_state = 0}, + [282] = {.lex_state = 0}, + [283] = {.lex_state = 17}, + [284] = {.lex_state = 0}, + [285] = {.lex_state = 0}, + [286] = {.lex_state = 0}, + [287] = {.lex_state = 17}, + [288] = {.lex_state = 0}, + [289] = {.lex_state = 0}, + [290] = {.lex_state = 17}, + [291] = {.lex_state = 17}, + [292] = {.lex_state = 17}, + [293] = {.lex_state = 0}, + [294] = {.lex_state = 0}, + [295] = {.lex_state = 0}, + [296] = {.lex_state = 5}, + [297] = {.lex_state = 17}, + [298] = {.lex_state = 17}, + [299] = {.lex_state = 0}, + [300] = {.lex_state = 0}, + [301] = {.lex_state = 0}, + [302] = {.lex_state = 0}, + [303] = {.lex_state = 17}, + [304] = {.lex_state = 0}, + [305] = {.lex_state = 0}, + [306] = {.lex_state = 0}, }; static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { @@ -3347,29 +3527,33 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_pragma] = ACTIONS(1), [anon_sym_circom] = ACTIONS(1), [anon_sym_include] = ACTIONS(1), + [anon_sym_DQUOTE] = ACTIONS(1), + [anon_sym_SQUOTE] = ACTIONS(1), [anon_sym_template] = ACTIONS(1), - [sym_custom] = ACTIONS(1), - [sym_parallel] = ACTIONS(1), [anon_sym_LBRACE] = ACTIONS(1), [anon_sym_RBRACE] = ACTIONS(1), [anon_sym_function] = ACTIONS(1), + [anon_sym_LPAREN] = ACTIONS(1), + [anon_sym_COMMA] = ACTIONS(1), + [anon_sym_RPAREN] = ACTIONS(1), [anon_sym_component] = ACTIONS(1), [anon_sym_main] = ACTIONS(1), [anon_sym_EQ] = ACTIONS(1), [anon_sym_public] = ACTIONS(1), [anon_sym_LBRACK] = ACTIONS(1), - [anon_sym_COMMA] = ACTIONS(1), [anon_sym_RBRACK] = ACTIONS(1), [anon_sym_if] = ACTIONS(1), - [anon_sym_LPAREN] = ACTIONS(1), - [anon_sym_RPAREN] = ACTIONS(1), [anon_sym_else] = ACTIONS(1), [anon_sym_for] = ACTIONS(1), [anon_sym_while] = ACTIONS(1), [anon_sym_return] = ACTIONS(1), + [anon_sym_signal] = ACTIONS(1), [anon_sym_LT_EQ_EQ] = ACTIONS(1), - [anon_sym_EQ_EQ_GT] = ACTIONS(1), [anon_sym_LT_DASH_DASH] = ACTIONS(1), + [anon_sym_input] = ACTIONS(1), + [anon_sym_output] = ACTIONS(1), + [anon_sym_var] = ACTIONS(1), + [anon_sym_EQ_EQ_GT] = ACTIONS(1), [anon_sym_DASH_DASH_GT] = ACTIONS(1), [anon_sym_AMP_EQ] = ACTIONS(1), [anon_sym_PLUS_EQ] = ACTIONS(1), @@ -3411,27 +3595,23 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_BANG_EQ] = ACTIONS(1), [anon_sym_GT_EQ] = ACTIONS(1), [anon_sym_GT] = ACTIONS(1), - [sym__semicolon] = ACTIONS(1), - [sym_int] = ACTIONS(1), - [sym_var] = ACTIONS(1), - [anon_sym_signal] = ACTIONS(1), - [anon_sym_input] = ACTIONS(1), - [anon_sym_output] = ACTIONS(1), - [anon_sym_DQUOTE] = ACTIONS(1), - [anon_sym_SQUOTE] = ACTIONS(1), + [anon_sym_SEMI] = ACTIONS(1), + [sym_int_literal] = ACTIONS(1), + [sym_custom] = ACTIONS(1), + [sym_parallel] = ACTIONS(1), [sym_comment] = ACTIONS(3), }, [1] = { - [sym_source_file] = STATE(247), - [sym__source_unit] = STATE(140), - [sym__directive] = STATE(140), - [sym_pragma_directive] = STATE(140), - [sym_include_directive] = STATE(140), - [sym__definition] = STATE(140), - [sym_template_definition] = STATE(140), - [sym_function_definition] = STATE(140), - [sym_main_component_definition] = STATE(140), - [aux_sym_source_file_repeat1] = STATE(140), + [sym_source_file] = STATE(300), + [sym__source_unit] = STATE(152), + [sym__directive] = STATE(152), + [sym_pragma_directive] = STATE(152), + [sym_include_directive] = STATE(152), + [sym__definition] = STATE(152), + [sym_template_definition] = STATE(152), + [sym_function_definition] = STATE(152), + [sym_main_component_definition] = STATE(152), + [aux_sym_source_file_repeat1] = STATE(152), [ts_builtin_sym_end] = ACTIONS(5), [anon_sym_pragma] = ACTIONS(7), [anon_sym_include] = ACTIONS(9), @@ -3446,7 +3626,7 @@ static const uint16_t ts_small_parse_table[] = { [0] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(21), 1, + ACTIONS(17), 1, anon_sym_LPAREN, ACTIONS(23), 1, anon_sym_PLUS_PLUS, @@ -3454,7 +3634,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH_DASH, ACTIONS(27), 1, anon_sym_DOT, - ACTIONS(17), 17, + ACTIONS(21), 17, anon_sym_EQ, anon_sym_DASH, anon_sym_PLUS, @@ -3473,13 +3653,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_EQ_EQ, anon_sym_GT, ACTIONS(19), 28, - anon_sym_LBRACK, anon_sym_COMMA, - anon_sym_RBRACK, anon_sym_RPAREN, + anon_sym_LBRACK, + anon_sym_RBRACK, anon_sym_LT_EQ_EQ, - anon_sym_EQ_EQ_GT, anon_sym_LT_DASH_DASH, + anon_sym_EQ_EQ_GT, anon_sym_DASH_DASH_GT, anon_sym_AMP_EQ, anon_sym_PLUS_EQ, @@ -3500,11 +3680,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_BANG_EQ, anon_sym_GT_EQ, - sym__semicolon, + anon_sym_SEMI, [65] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(30), 18, + ACTIONS(32), 18, anon_sym_EQ, anon_sym_DASH_DASH, anon_sym_DASH, @@ -3523,14 +3703,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_GT, - ACTIONS(32), 30, - anon_sym_LBRACK, + ACTIONS(30), 30, anon_sym_COMMA, - anon_sym_RBRACK, anon_sym_RPAREN, + anon_sym_LBRACK, + anon_sym_RBRACK, anon_sym_LT_EQ_EQ, - anon_sym_EQ_EQ_GT, anon_sym_LT_DASH_DASH, + anon_sym_EQ_EQ_GT, anon_sym_DASH_DASH_GT, anon_sym_AMP_EQ, anon_sym_PLUS_EQ, @@ -3553,15 +3733,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_BANG_EQ, anon_sym_GT_EQ, - sym__semicolon, + anon_sym_SEMI, [121] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(23), 1, - anon_sym_PLUS_PLUS, - ACTIONS(25), 1, - anon_sym_DASH_DASH, - ACTIONS(17), 17, + ACTIONS(34), 1, + anon_sym_LPAREN, + STATE(25), 1, + sym_anonymous_inputs, + ACTIONS(38), 17, anon_sym_EQ, anon_sym_DASH, anon_sym_PLUS, @@ -3579,14 +3759,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_GT, - ACTIONS(19), 29, - anon_sym_LBRACK, + ACTIONS(36), 29, anon_sym_COMMA, - anon_sym_RBRACK, anon_sym_RPAREN, + anon_sym_LBRACK, + anon_sym_RBRACK, anon_sym_LT_EQ_EQ, - anon_sym_EQ_EQ_GT, anon_sym_LT_DASH_DASH, + anon_sym_EQ_EQ_GT, anon_sym_DASH_DASH_GT, anon_sym_AMP_EQ, anon_sym_PLUS_EQ, @@ -3608,15 +3788,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_BANG_EQ, anon_sym_GT_EQ, - sym__semicolon, + anon_sym_SEMI, [181] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(38), 1, + ACTIONS(34), 1, anon_sym_LPAREN, - STATE(15), 1, + STATE(14), 1, sym_anonymous_inputs, - ACTIONS(34), 17, + ACTIONS(42), 17, anon_sym_EQ, anon_sym_DASH, anon_sym_PLUS, @@ -3634,14 +3814,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_GT, - ACTIONS(36), 29, - anon_sym_LBRACK, + ACTIONS(40), 29, anon_sym_COMMA, - anon_sym_RBRACK, anon_sym_RPAREN, + anon_sym_LBRACK, + anon_sym_RBRACK, anon_sym_LT_EQ_EQ, - anon_sym_EQ_EQ_GT, anon_sym_LT_DASH_DASH, + anon_sym_EQ_EQ_GT, anon_sym_DASH_DASH_GT, anon_sym_AMP_EQ, anon_sym_PLUS_EQ, @@ -3663,11 +3843,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_BANG_EQ, anon_sym_GT_EQ, - sym__semicolon, + anon_sym_SEMI, [241] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(40), 18, + ACTIONS(46), 18, anon_sym_EQ, anon_sym_DASH_DASH, anon_sym_DASH, @@ -3686,14 +3866,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_GT, - ACTIONS(42), 30, - anon_sym_LBRACK, + ACTIONS(44), 30, anon_sym_COMMA, - anon_sym_RBRACK, anon_sym_RPAREN, + anon_sym_LBRACK, + anon_sym_RBRACK, anon_sym_LT_EQ_EQ, - anon_sym_EQ_EQ_GT, anon_sym_LT_DASH_DASH, + anon_sym_EQ_EQ_GT, anon_sym_DASH_DASH_GT, anon_sym_AMP_EQ, anon_sym_PLUS_EQ, @@ -3716,13 +3896,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_BANG_EQ, anon_sym_GT_EQ, - sym__semicolon, - [297] = 3, + anon_sym_SEMI, + [297] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(44), 18, - anon_sym_EQ, + ACTIONS(23), 1, + anon_sym_PLUS_PLUS, + ACTIONS(25), 1, anon_sym_DASH_DASH, + ACTIONS(21), 17, + anon_sym_EQ, anon_sym_DASH, anon_sym_PLUS, anon_sym_AMP, @@ -3739,14 +3922,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_GT, - ACTIONS(46), 30, - anon_sym_LBRACK, + ACTIONS(19), 29, anon_sym_COMMA, - anon_sym_RBRACK, anon_sym_RPAREN, + anon_sym_LBRACK, + anon_sym_RBRACK, anon_sym_LT_EQ_EQ, - anon_sym_EQ_EQ_GT, anon_sym_LT_DASH_DASH, + anon_sym_EQ_EQ_GT, anon_sym_DASH_DASH_GT, anon_sym_AMP_EQ, anon_sym_PLUS_EQ, @@ -3761,7 +3944,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_GT_EQ, anon_sym_LT_LT_EQ, anon_sym_EQ_EQ_EQ, - anon_sym_PLUS_PLUS, anon_sym_DOT, anon_sym_QMARK, anon_sym_COLON, @@ -3769,15 +3951,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_BANG_EQ, anon_sym_GT_EQ, - sym__semicolon, - [353] = 5, + anon_sym_SEMI, + [357] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(38), 1, + ACTIONS(34), 1, anon_sym_LPAREN, - STATE(30), 1, + STATE(24), 1, sym_anonymous_inputs, - ACTIONS(48), 17, + ACTIONS(50), 17, anon_sym_EQ, anon_sym_DASH, anon_sym_PLUS, @@ -3795,14 +3977,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_GT, - ACTIONS(50), 29, - anon_sym_LBRACK, + ACTIONS(48), 29, anon_sym_COMMA, - anon_sym_RBRACK, anon_sym_RPAREN, + anon_sym_LBRACK, + anon_sym_RBRACK, anon_sym_LT_EQ_EQ, - anon_sym_EQ_EQ_GT, anon_sym_LT_DASH_DASH, + anon_sym_EQ_EQ_GT, anon_sym_DASH_DASH_GT, anon_sym_AMP_EQ, anon_sym_PLUS_EQ, @@ -3824,16 +4006,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_BANG_EQ, anon_sym_GT_EQ, - sym__semicolon, - [413] = 5, + anon_sym_SEMI, + [417] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(38), 1, - anon_sym_LPAREN, - STATE(23), 1, - sym_anonymous_inputs, - ACTIONS(52), 17, + ACTIONS(54), 18, anon_sym_EQ, + anon_sym_DASH_DASH, anon_sym_DASH, anon_sym_PLUS, anon_sym_AMP, @@ -3850,14 +4029,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_GT, - ACTIONS(54), 29, - anon_sym_LBRACK, + ACTIONS(52), 30, anon_sym_COMMA, - anon_sym_RBRACK, anon_sym_RPAREN, + anon_sym_LBRACK, + anon_sym_RBRACK, anon_sym_LT_EQ_EQ, - anon_sym_EQ_EQ_GT, anon_sym_LT_DASH_DASH, + anon_sym_EQ_EQ_GT, anon_sym_DASH_DASH_GT, anon_sym_AMP_EQ, anon_sym_PLUS_EQ, @@ -3872,6 +4051,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_GT_EQ, anon_sym_LT_LT_EQ, anon_sym_EQ_EQ_EQ, + anon_sym_PLUS_PLUS, anon_sym_DOT, anon_sym_QMARK, anon_sym_COLON, @@ -3879,13 +4059,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_BANG_EQ, anon_sym_GT_EQ, - sym__semicolon, - [473] = 4, + anon_sym_SEMI, + [473] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(60), 1, - anon_sym_STAR_STAR, - ACTIONS(56), 16, + ACTIONS(58), 17, anon_sym_EQ, anon_sym_DASH, anon_sym_PLUS, @@ -3898,18 +4076,19 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_SLASH, anon_sym_BSLASH, anon_sym_PERCENT, + anon_sym_STAR_STAR, anon_sym_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_GT, - ACTIONS(58), 29, - anon_sym_LBRACK, + ACTIONS(56), 29, anon_sym_COMMA, - anon_sym_RBRACK, anon_sym_RPAREN, + anon_sym_LBRACK, + anon_sym_RBRACK, anon_sym_LT_EQ_EQ, - anon_sym_EQ_EQ_GT, anon_sym_LT_DASH_DASH, + anon_sym_EQ_EQ_GT, anon_sym_DASH_DASH_GT, anon_sym_AMP_EQ, anon_sym_PLUS_EQ, @@ -3931,54 +4110,36 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_BANG_EQ, anon_sym_GT_EQ, - sym__semicolon, - [529] = 13, + anon_sym_SEMI, + [527] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(60), 1, - anon_sym_STAR_STAR, - ACTIONS(62), 1, + ACTIONS(62), 17, anon_sym_EQ, - ACTIONS(70), 1, - anon_sym_AMP_AMP, - ACTIONS(72), 1, - anon_sym_AMP, - ACTIONS(74), 1, - anon_sym_PIPE_PIPE, - ACTIONS(68), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(76), 2, + anon_sym_AMP, anon_sym_PIPE, - anon_sym_CARET, - ACTIONS(82), 2, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - ACTIONS(80), 4, - anon_sym_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_GT, - ACTIONS(78), 6, anon_sym_GT_GT, anon_sym_LT_LT, + anon_sym_CARET, anon_sym_STAR, anon_sym_SLASH, anon_sym_BSLASH, anon_sym_PERCENT, - ACTIONS(64), 8, - anon_sym_LBRACK, + anon_sym_STAR_STAR, + anon_sym_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_GT, + ACTIONS(60), 29, anon_sym_COMMA, - anon_sym_RBRACK, anon_sym_RPAREN, - anon_sym_DOT, - anon_sym_QMARK, - anon_sym_COLON, - sym__semicolon, - ACTIONS(66), 17, + anon_sym_LBRACK, + anon_sym_RBRACK, anon_sym_LT_EQ_EQ, - anon_sym_EQ_EQ_GT, anon_sym_LT_DASH_DASH, + anon_sym_EQ_EQ_GT, anon_sym_DASH_DASH_GT, anon_sym_AMP_EQ, anon_sym_PLUS_EQ, @@ -3993,10 +4154,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_GT_EQ, anon_sym_LT_LT_EQ, anon_sym_EQ_EQ_EQ, - [603] = 3, + anon_sym_DOT, + anon_sym_QMARK, + anon_sym_COLON, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_SEMI, + [581] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(84), 17, + ACTIONS(66), 17, anon_sym_EQ, anon_sym_DASH, anon_sym_PLUS, @@ -4014,14 +4183,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_GT, - ACTIONS(86), 29, - anon_sym_LBRACK, + ACTIONS(64), 29, anon_sym_COMMA, - anon_sym_RBRACK, anon_sym_RPAREN, + anon_sym_LBRACK, + anon_sym_RBRACK, anon_sym_LT_EQ_EQ, - anon_sym_EQ_EQ_GT, anon_sym_LT_DASH_DASH, + anon_sym_EQ_EQ_GT, anon_sym_DASH_DASH_GT, anon_sym_AMP_EQ, anon_sym_PLUS_EQ, @@ -4043,11 +4212,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_BANG_EQ, anon_sym_GT_EQ, - sym__semicolon, - [657] = 3, + anon_sym_SEMI, + [635] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(88), 17, + ACTIONS(70), 17, anon_sym_EQ, anon_sym_DASH, anon_sym_PLUS, @@ -4065,14 +4234,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_GT, - ACTIONS(90), 29, - anon_sym_LBRACK, + ACTIONS(68), 29, anon_sym_COMMA, - anon_sym_RBRACK, anon_sym_RPAREN, + anon_sym_LBRACK, + anon_sym_RBRACK, anon_sym_LT_EQ_EQ, - anon_sym_EQ_EQ_GT, anon_sym_LT_DASH_DASH, + anon_sym_EQ_EQ_GT, anon_sym_DASH_DASH_GT, anon_sym_AMP_EQ, anon_sym_PLUS_EQ, @@ -4094,11 +4263,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_BANG_EQ, anon_sym_GT_EQ, - sym__semicolon, - [711] = 3, + anon_sym_SEMI, + [689] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(92), 17, + ACTIONS(74), 17, anon_sym_EQ, anon_sym_DASH, anon_sym_PLUS, @@ -4116,14 +4285,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_GT, - ACTIONS(94), 29, - anon_sym_LBRACK, + ACTIONS(72), 29, anon_sym_COMMA, - anon_sym_RBRACK, anon_sym_RPAREN, + anon_sym_LBRACK, + anon_sym_RBRACK, anon_sym_LT_EQ_EQ, - anon_sym_EQ_EQ_GT, anon_sym_LT_DASH_DASH, + anon_sym_EQ_EQ_GT, anon_sym_DASH_DASH_GT, anon_sym_AMP_EQ, anon_sym_PLUS_EQ, @@ -4145,11 +4314,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_BANG_EQ, anon_sym_GT_EQ, - sym__semicolon, - [765] = 3, + anon_sym_SEMI, + [743] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(52), 17, + ACTIONS(78), 17, anon_sym_EQ, anon_sym_DASH, anon_sym_PLUS, @@ -4167,14 +4336,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_GT, - ACTIONS(54), 29, - anon_sym_LBRACK, + ACTIONS(76), 29, anon_sym_COMMA, - anon_sym_RBRACK, anon_sym_RPAREN, + anon_sym_LBRACK, + anon_sym_RBRACK, anon_sym_LT_EQ_EQ, - anon_sym_EQ_EQ_GT, anon_sym_LT_DASH_DASH, + anon_sym_EQ_EQ_GT, anon_sym_DASH_DASH_GT, anon_sym_AMP_EQ, anon_sym_PLUS_EQ, @@ -4196,39 +4365,36 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_BANG_EQ, anon_sym_GT_EQ, - sym__semicolon, - [819] = 6, + anon_sym_SEMI, + [797] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(60), 1, - anon_sym_STAR_STAR, - ACTIONS(68), 2, + ACTIONS(82), 17, + anon_sym_EQ, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(78), 6, + anon_sym_AMP, + anon_sym_PIPE, anon_sym_GT_GT, anon_sym_LT_LT, + anon_sym_CARET, anon_sym_STAR, anon_sym_SLASH, anon_sym_BSLASH, anon_sym_PERCENT, - ACTIONS(56), 8, - anon_sym_EQ, - anon_sym_AMP, - anon_sym_PIPE, - anon_sym_CARET, + anon_sym_STAR_STAR, anon_sym_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_GT, - ACTIONS(58), 29, - anon_sym_LBRACK, + ACTIONS(80), 29, anon_sym_COMMA, - anon_sym_RBRACK, anon_sym_RPAREN, + anon_sym_LBRACK, + anon_sym_RBRACK, anon_sym_LT_EQ_EQ, - anon_sym_EQ_EQ_GT, anon_sym_LT_DASH_DASH, + anon_sym_EQ_EQ_GT, anon_sym_DASH_DASH_GT, anon_sym_AMP_EQ, anon_sym_PLUS_EQ, @@ -4250,11 +4416,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_BANG_EQ, anon_sym_GT_EQ, - sym__semicolon, - [879] = 3, + anon_sym_SEMI, + [851] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(56), 17, + ACTIONS(82), 17, anon_sym_EQ, anon_sym_DASH, anon_sym_PLUS, @@ -4272,14 +4438,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_GT, - ACTIONS(58), 29, - anon_sym_LBRACK, + ACTIONS(80), 29, anon_sym_COMMA, - anon_sym_RBRACK, anon_sym_RPAREN, + anon_sym_LBRACK, + anon_sym_RBRACK, anon_sym_LT_EQ_EQ, - anon_sym_EQ_EQ_GT, anon_sym_LT_DASH_DASH, + anon_sym_EQ_EQ_GT, anon_sym_DASH_DASH_GT, anon_sym_AMP_EQ, anon_sym_PLUS_EQ, @@ -4301,11 +4467,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_BANG_EQ, anon_sym_GT_EQ, - sym__semicolon, - [933] = 3, + anon_sym_SEMI, + [905] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(96), 17, + ACTIONS(86), 17, anon_sym_EQ, anon_sym_DASH, anon_sym_PLUS, @@ -4323,14 +4489,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_GT, - ACTIONS(98), 29, - anon_sym_LBRACK, + ACTIONS(84), 29, anon_sym_COMMA, - anon_sym_RBRACK, anon_sym_RPAREN, + anon_sym_LBRACK, + anon_sym_RBRACK, anon_sym_LT_EQ_EQ, - anon_sym_EQ_EQ_GT, anon_sym_LT_DASH_DASH, + anon_sym_EQ_EQ_GT, anon_sym_DASH_DASH_GT, anon_sym_AMP_EQ, anon_sym_PLUS_EQ, @@ -4352,46 +4518,54 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_BANG_EQ, anon_sym_GT_EQ, - sym__semicolon, - [987] = 10, + anon_sym_SEMI, + [959] = 13, ACTIONS(3), 1, sym_comment, - ACTIONS(60), 1, - anon_sym_STAR_STAR, - ACTIONS(70), 1, + ACTIONS(90), 1, + anon_sym_EQ, + ACTIONS(96), 1, anon_sym_AMP_AMP, - ACTIONS(72), 1, + ACTIONS(98), 1, anon_sym_AMP, - ACTIONS(68), 2, + ACTIONS(100), 1, + anon_sym_PIPE_PIPE, + ACTIONS(106), 1, + anon_sym_STAR_STAR, + ACTIONS(94), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(82), 2, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - ACTIONS(56), 3, - anon_sym_EQ, + ACTIONS(102), 2, anon_sym_PIPE, anon_sym_CARET, - ACTIONS(80), 4, + ACTIONS(110), 2, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + ACTIONS(108), 4, anon_sym_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_GT, - ACTIONS(78), 6, + ACTIONS(104), 6, anon_sym_GT_GT, anon_sym_LT_LT, anon_sym_STAR, anon_sym_SLASH, anon_sym_BSLASH, anon_sym_PERCENT, - ACTIONS(58), 26, - anon_sym_LBRACK, + ACTIONS(88), 8, anon_sym_COMMA, - anon_sym_RBRACK, anon_sym_RPAREN, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_QMARK, + anon_sym_COLON, + anon_sym_SEMI, + ACTIONS(92), 17, anon_sym_LT_EQ_EQ, - anon_sym_EQ_EQ_GT, anon_sym_LT_DASH_DASH, + anon_sym_EQ_EQ_GT, anon_sym_DASH_DASH_GT, anon_sym_AMP_EQ, anon_sym_PLUS_EQ, @@ -4406,47 +4580,35 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_GT_EQ, anon_sym_LT_LT_EQ, anon_sym_EQ_EQ_EQ, - anon_sym_DOT, - anon_sym_QMARK, - anon_sym_COLON, - anon_sym_PIPE_PIPE, - sym__semicolon, - [1055] = 8, + [1033] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(60), 1, - anon_sym_STAR_STAR, - ACTIONS(68), 2, + ACTIONS(114), 17, + anon_sym_EQ, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(82), 2, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - ACTIONS(56), 4, - anon_sym_EQ, anon_sym_AMP, anon_sym_PIPE, - anon_sym_CARET, - ACTIONS(80), 4, - anon_sym_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_GT, - ACTIONS(78), 6, anon_sym_GT_GT, anon_sym_LT_LT, + anon_sym_CARET, anon_sym_STAR, anon_sym_SLASH, anon_sym_BSLASH, anon_sym_PERCENT, - ACTIONS(58), 27, - anon_sym_LBRACK, + anon_sym_STAR_STAR, + anon_sym_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_GT, + ACTIONS(112), 29, anon_sym_COMMA, - anon_sym_RBRACK, anon_sym_RPAREN, + anon_sym_LBRACK, + anon_sym_RBRACK, anon_sym_LT_EQ_EQ, - anon_sym_EQ_EQ_GT, anon_sym_LT_DASH_DASH, + anon_sym_EQ_EQ_GT, anon_sym_DASH_DASH_GT, anon_sym_AMP_EQ, anon_sym_PLUS_EQ, @@ -4466,23 +4628,26 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_COLON, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, - sym__semicolon, - [1119] = 5, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + anon_sym_SEMI, + [1087] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(60), 1, + ACTIONS(106), 1, anon_sym_STAR_STAR, - ACTIONS(78), 6, + ACTIONS(94), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(104), 6, anon_sym_GT_GT, anon_sym_LT_LT, anon_sym_STAR, anon_sym_SLASH, anon_sym_BSLASH, anon_sym_PERCENT, - ACTIONS(56), 10, + ACTIONS(118), 8, anon_sym_EQ, - anon_sym_DASH, - anon_sym_PLUS, anon_sym_AMP, anon_sym_PIPE, anon_sym_CARET, @@ -4490,14 +4655,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_GT, - ACTIONS(58), 29, - anon_sym_LBRACK, + ACTIONS(116), 29, anon_sym_COMMA, - anon_sym_RBRACK, anon_sym_RPAREN, + anon_sym_LBRACK, + anon_sym_RBRACK, anon_sym_LT_EQ_EQ, - anon_sym_EQ_EQ_GT, anon_sym_LT_DASH_DASH, + anon_sym_EQ_EQ_GT, anon_sym_DASH_DASH_GT, anon_sym_AMP_EQ, anon_sym_PLUS_EQ, @@ -4519,36 +4684,38 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_BANG_EQ, anon_sym_GT_EQ, - sym__semicolon, - [1177] = 3, + anon_sym_SEMI, + [1147] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(100), 17, - anon_sym_EQ, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_AMP, - anon_sym_PIPE, + ACTIONS(106), 1, + anon_sym_STAR_STAR, + ACTIONS(104), 6, anon_sym_GT_GT, anon_sym_LT_LT, - anon_sym_CARET, anon_sym_STAR, anon_sym_SLASH, anon_sym_BSLASH, anon_sym_PERCENT, - anon_sym_STAR_STAR, + ACTIONS(118), 10, + anon_sym_EQ, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_CARET, anon_sym_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_GT, - ACTIONS(102), 29, - anon_sym_LBRACK, + ACTIONS(116), 29, anon_sym_COMMA, - anon_sym_RBRACK, anon_sym_RPAREN, + anon_sym_LBRACK, + anon_sym_RBRACK, anon_sym_LT_EQ_EQ, - anon_sym_EQ_EQ_GT, anon_sym_LT_DASH_DASH, + anon_sym_EQ_EQ_GT, anon_sym_DASH_DASH_GT, anon_sym_AMP_EQ, anon_sym_PLUS_EQ, @@ -4570,36 +4737,54 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_BANG_EQ, anon_sym_GT_EQ, - sym__semicolon, - [1231] = 3, + anon_sym_SEMI, + [1205] = 13, ACTIONS(3), 1, sym_comment, - ACTIONS(48), 17, + ACTIONS(90), 1, anon_sym_EQ, + ACTIONS(96), 1, + anon_sym_AMP_AMP, + ACTIONS(98), 1, + anon_sym_AMP, + ACTIONS(100), 1, + anon_sym_PIPE_PIPE, + ACTIONS(106), 1, + anon_sym_STAR_STAR, + ACTIONS(94), 2, anon_sym_DASH, anon_sym_PLUS, - anon_sym_AMP, + ACTIONS(102), 2, anon_sym_PIPE, + anon_sym_CARET, + ACTIONS(110), 2, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + ACTIONS(108), 4, + anon_sym_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_GT, + ACTIONS(104), 6, anon_sym_GT_GT, anon_sym_LT_LT, - anon_sym_CARET, anon_sym_STAR, anon_sym_SLASH, anon_sym_BSLASH, anon_sym_PERCENT, - anon_sym_STAR_STAR, - anon_sym_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_GT, - ACTIONS(50), 29, - anon_sym_LBRACK, + ACTIONS(120), 8, anon_sym_COMMA, - anon_sym_RBRACK, anon_sym_RPAREN, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_QMARK, + anon_sym_COLON, + anon_sym_SEMI, + ACTIONS(92), 17, anon_sym_LT_EQ_EQ, - anon_sym_EQ_EQ_GT, anon_sym_LT_DASH_DASH, + anon_sym_EQ_EQ_GT, anon_sym_DASH_DASH_GT, anon_sym_AMP_EQ, anon_sym_PLUS_EQ, @@ -4614,18 +4799,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_GT_EQ, anon_sym_LT_LT_EQ, anon_sym_EQ_EQ_EQ, - anon_sym_DOT, - anon_sym_QMARK, - anon_sym_COLON, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - sym__semicolon, - [1285] = 3, + [1279] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(104), 17, + ACTIONS(42), 17, anon_sym_EQ, anon_sym_DASH, anon_sym_PLUS, @@ -4643,14 +4820,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_GT, - ACTIONS(106), 29, - anon_sym_LBRACK, + ACTIONS(40), 29, anon_sym_COMMA, - anon_sym_RBRACK, anon_sym_RPAREN, + anon_sym_LBRACK, + anon_sym_RBRACK, anon_sym_LT_EQ_EQ, - anon_sym_EQ_EQ_GT, anon_sym_LT_DASH_DASH, + anon_sym_EQ_EQ_GT, anon_sym_DASH_DASH_GT, anon_sym_AMP_EQ, anon_sym_PLUS_EQ, @@ -4672,11 +4849,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_BANG_EQ, anon_sym_GT_EQ, - sym__semicolon, - [1339] = 3, + anon_sym_SEMI, + [1333] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(108), 17, + ACTIONS(50), 17, anon_sym_EQ, anon_sym_DASH, anon_sym_PLUS, @@ -4694,14 +4871,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_GT, - ACTIONS(110), 29, - anon_sym_LBRACK, + ACTIONS(48), 29, anon_sym_COMMA, - anon_sym_RBRACK, anon_sym_RPAREN, + anon_sym_LBRACK, + anon_sym_RBRACK, anon_sym_LT_EQ_EQ, - anon_sym_EQ_EQ_GT, anon_sym_LT_DASH_DASH, + anon_sym_EQ_EQ_GT, anon_sym_DASH_DASH_GT, anon_sym_AMP_EQ, anon_sym_PLUS_EQ, @@ -4723,11 +4900,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_BANG_EQ, anon_sym_GT_EQ, - sym__semicolon, - [1393] = 3, + anon_sym_SEMI, + [1387] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(112), 17, + ACTIONS(118), 17, anon_sym_EQ, anon_sym_DASH, anon_sym_PLUS, @@ -4745,14 +4922,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_GT, - ACTIONS(114), 29, - anon_sym_LBRACK, + ACTIONS(116), 29, anon_sym_COMMA, - anon_sym_RBRACK, anon_sym_RPAREN, + anon_sym_LBRACK, + anon_sym_RBRACK, anon_sym_LT_EQ_EQ, - anon_sym_EQ_EQ_GT, anon_sym_LT_DASH_DASH, + anon_sym_EQ_EQ_GT, anon_sym_DASH_DASH_GT, anon_sym_AMP_EQ, anon_sym_PLUS_EQ, @@ -4774,11 +4951,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_BANG_EQ, anon_sym_GT_EQ, - sym__semicolon, - [1447] = 3, + anon_sym_SEMI, + [1441] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(116), 17, + ACTIONS(124), 17, anon_sym_EQ, anon_sym_DASH, anon_sym_PLUS, @@ -4796,14 +4973,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_GT, - ACTIONS(118), 29, - anon_sym_LBRACK, + ACTIONS(122), 29, anon_sym_COMMA, - anon_sym_RBRACK, anon_sym_RPAREN, + anon_sym_LBRACK, + anon_sym_RBRACK, anon_sym_LT_EQ_EQ, - anon_sym_EQ_EQ_GT, anon_sym_LT_DASH_DASH, + anon_sym_EQ_EQ_GT, anon_sym_DASH_DASH_GT, anon_sym_AMP_EQ, anon_sym_PLUS_EQ, @@ -4825,11 +5002,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_BANG_EQ, anon_sym_GT_EQ, - sym__semicolon, - [1501] = 3, + anon_sym_SEMI, + [1495] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(120), 17, + ACTIONS(106), 1, + anon_sym_STAR_STAR, + ACTIONS(118), 16, anon_sym_EQ, anon_sym_DASH, anon_sym_PLUS, @@ -4842,19 +5021,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_SLASH, anon_sym_BSLASH, anon_sym_PERCENT, - anon_sym_STAR_STAR, anon_sym_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_GT, - ACTIONS(122), 29, - anon_sym_LBRACK, + ACTIONS(116), 29, anon_sym_COMMA, - anon_sym_RBRACK, anon_sym_RPAREN, + anon_sym_LBRACK, + anon_sym_RBRACK, anon_sym_LT_EQ_EQ, - anon_sym_EQ_EQ_GT, anon_sym_LT_DASH_DASH, + anon_sym_EQ_EQ_GT, anon_sym_DASH_DASH_GT, anon_sym_AMP_EQ, anon_sym_PLUS_EQ, @@ -4876,36 +5054,46 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_BANG_EQ, anon_sym_GT_EQ, - sym__semicolon, - [1555] = 3, + anon_sym_SEMI, + [1551] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(124), 17, - anon_sym_EQ, + ACTIONS(96), 1, + anon_sym_AMP_AMP, + ACTIONS(98), 1, + anon_sym_AMP, + ACTIONS(106), 1, + anon_sym_STAR_STAR, + ACTIONS(94), 2, anon_sym_DASH, anon_sym_PLUS, - anon_sym_AMP, + ACTIONS(110), 2, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + ACTIONS(118), 3, + anon_sym_EQ, anon_sym_PIPE, + anon_sym_CARET, + ACTIONS(108), 4, + anon_sym_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_GT, + ACTIONS(104), 6, anon_sym_GT_GT, anon_sym_LT_LT, - anon_sym_CARET, anon_sym_STAR, anon_sym_SLASH, anon_sym_BSLASH, anon_sym_PERCENT, - anon_sym_STAR_STAR, - anon_sym_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_GT, - ACTIONS(126), 29, - anon_sym_LBRACK, + ACTIONS(116), 26, anon_sym_COMMA, - anon_sym_RBRACK, anon_sym_RPAREN, + anon_sym_LBRACK, + anon_sym_RBRACK, anon_sym_LT_EQ_EQ, - anon_sym_EQ_EQ_GT, anon_sym_LT_DASH_DASH, + anon_sym_EQ_EQ_GT, anon_sym_DASH_DASH_GT, anon_sym_AMP_EQ, anon_sym_PLUS_EQ, @@ -4923,40 +5111,44 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DOT, anon_sym_QMARK, anon_sym_COLON, - anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - sym__semicolon, - [1609] = 3, + anon_sym_SEMI, + [1619] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(128), 17, - anon_sym_EQ, + ACTIONS(106), 1, + anon_sym_STAR_STAR, + ACTIONS(94), 2, anon_sym_DASH, anon_sym_PLUS, + ACTIONS(110), 2, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + ACTIONS(108), 4, + anon_sym_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_GT, + ACTIONS(118), 4, + anon_sym_EQ, anon_sym_AMP, anon_sym_PIPE, + anon_sym_CARET, + ACTIONS(104), 6, anon_sym_GT_GT, anon_sym_LT_LT, - anon_sym_CARET, anon_sym_STAR, anon_sym_SLASH, anon_sym_BSLASH, anon_sym_PERCENT, - anon_sym_STAR_STAR, - anon_sym_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_GT, - ACTIONS(130), 29, - anon_sym_LBRACK, + ACTIONS(116), 27, anon_sym_COMMA, - anon_sym_RBRACK, anon_sym_RPAREN, + anon_sym_LBRACK, + anon_sym_RBRACK, anon_sym_LT_EQ_EQ, - anon_sym_EQ_EQ_GT, anon_sym_LT_DASH_DASH, + anon_sym_EQ_EQ_GT, anon_sym_DASH_DASH_GT, anon_sym_AMP_EQ, anon_sym_PLUS_EQ, @@ -4976,56 +5168,57 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_COLON, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - sym__semicolon, - [1663] = 13, + anon_sym_SEMI, + [1683] = 18, ACTIONS(3), 1, sym_comment, - ACTIONS(60), 1, - anon_sym_STAR_STAR, - ACTIONS(62), 1, + ACTIONS(90), 1, anon_sym_EQ, - ACTIONS(70), 1, + ACTIONS(96), 1, anon_sym_AMP_AMP, - ACTIONS(72), 1, + ACTIONS(98), 1, anon_sym_AMP, - ACTIONS(74), 1, + ACTIONS(100), 1, anon_sym_PIPE_PIPE, - ACTIONS(68), 2, + ACTIONS(106), 1, + anon_sym_STAR_STAR, + ACTIONS(126), 1, + anon_sym_COMMA, + ACTIONS(128), 1, + anon_sym_RPAREN, + ACTIONS(130), 1, + anon_sym_LBRACK, + ACTIONS(132), 1, + anon_sym_DOT, + ACTIONS(134), 1, + anon_sym_QMARK, + STATE(220), 1, + aux_sym_argument_list_repeat1, + ACTIONS(94), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(76), 2, + ACTIONS(102), 2, anon_sym_PIPE, anon_sym_CARET, - ACTIONS(82), 2, + ACTIONS(110), 2, anon_sym_BANG_EQ, anon_sym_GT_EQ, - ACTIONS(80), 4, + ACTIONS(108), 4, anon_sym_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_GT, - ACTIONS(78), 6, + ACTIONS(104), 6, anon_sym_GT_GT, anon_sym_LT_LT, anon_sym_STAR, anon_sym_SLASH, anon_sym_BSLASH, anon_sym_PERCENT, - ACTIONS(132), 8, - anon_sym_LBRACK, - anon_sym_COMMA, - anon_sym_RBRACK, - anon_sym_RPAREN, - anon_sym_DOT, - anon_sym_QMARK, - anon_sym_COLON, - sym__semicolon, - ACTIONS(66), 17, + ACTIONS(92), 17, anon_sym_LT_EQ_EQ, - anon_sym_EQ_EQ_GT, anon_sym_LT_DASH_DASH, + anon_sym_EQ_EQ_GT, anon_sym_DASH_DASH_GT, anon_sym_AMP_EQ, anon_sym_PLUS_EQ, @@ -5040,35 +5233,120 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_GT_EQ, anon_sym_LT_LT_EQ, anon_sym_EQ_EQ_EQ, - [1737] = 3, + [1765] = 18, ACTIONS(3), 1, sym_comment, - ACTIONS(124), 17, + ACTIONS(90), 1, anon_sym_EQ, + ACTIONS(96), 1, + anon_sym_AMP_AMP, + ACTIONS(98), 1, + anon_sym_AMP, + ACTIONS(100), 1, + anon_sym_PIPE_PIPE, + ACTIONS(106), 1, + anon_sym_STAR_STAR, + ACTIONS(130), 1, + anon_sym_LBRACK, + ACTIONS(132), 1, + anon_sym_DOT, + ACTIONS(134), 1, + anon_sym_QMARK, + ACTIONS(136), 1, + anon_sym_COMMA, + ACTIONS(138), 1, + anon_sym_RPAREN, + STATE(218), 1, + aux_sym_array_expression_repeat1, + ACTIONS(94), 2, anon_sym_DASH, anon_sym_PLUS, - anon_sym_AMP, + ACTIONS(102), 2, anon_sym_PIPE, + anon_sym_CARET, + ACTIONS(110), 2, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + ACTIONS(108), 4, + anon_sym_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_GT, + ACTIONS(104), 6, anon_sym_GT_GT, anon_sym_LT_LT, - anon_sym_CARET, anon_sym_STAR, anon_sym_SLASH, anon_sym_BSLASH, anon_sym_PERCENT, + ACTIONS(92), 17, + anon_sym_LT_EQ_EQ, + anon_sym_LT_DASH_DASH, + anon_sym_EQ_EQ_GT, + anon_sym_DASH_DASH_GT, + anon_sym_AMP_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_BSLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_EQ_EQ_EQ, + [1847] = 18, + ACTIONS(3), 1, + sym_comment, + ACTIONS(90), 1, + anon_sym_EQ, + ACTIONS(96), 1, + anon_sym_AMP_AMP, + ACTIONS(98), 1, + anon_sym_AMP, + ACTIONS(100), 1, + anon_sym_PIPE_PIPE, + ACTIONS(106), 1, anon_sym_STAR_STAR, + ACTIONS(130), 1, + anon_sym_LBRACK, + ACTIONS(132), 1, + anon_sym_DOT, + ACTIONS(134), 1, + anon_sym_QMARK, + ACTIONS(136), 1, + anon_sym_COMMA, + ACTIONS(140), 1, + anon_sym_RBRACK, + STATE(232), 1, + aux_sym_array_expression_repeat1, + ACTIONS(94), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(102), 2, + anon_sym_PIPE, + anon_sym_CARET, + ACTIONS(110), 2, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + ACTIONS(108), 4, anon_sym_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_GT, - ACTIONS(126), 29, - anon_sym_LBRACK, - anon_sym_COMMA, - anon_sym_RBRACK, - anon_sym_RPAREN, + ACTIONS(104), 6, + anon_sym_GT_GT, + anon_sym_LT_LT, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_BSLASH, + anon_sym_PERCENT, + ACTIONS(92), 17, anon_sym_LT_EQ_EQ, - anon_sym_EQ_EQ_GT, anon_sym_LT_DASH_DASH, + anon_sym_EQ_EQ_GT, anon_sym_DASH_DASH_GT, anon_sym_AMP_EQ, anon_sym_PLUS_EQ, @@ -5083,64 +5361,54 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_GT_EQ, anon_sym_LT_LT_EQ, anon_sym_EQ_EQ_EQ, - anon_sym_DOT, - anon_sym_QMARK, - anon_sym_COLON, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - sym__semicolon, - [1791] = 18, + [1929] = 16, ACTIONS(3), 1, sym_comment, - ACTIONS(60), 1, - anon_sym_STAR_STAR, - ACTIONS(62), 1, + ACTIONS(90), 1, anon_sym_EQ, - ACTIONS(70), 1, + ACTIONS(96), 1, anon_sym_AMP_AMP, - ACTIONS(72), 1, + ACTIONS(98), 1, anon_sym_AMP, - ACTIONS(74), 1, + ACTIONS(100), 1, anon_sym_PIPE_PIPE, - ACTIONS(134), 1, + ACTIONS(106), 1, + anon_sym_STAR_STAR, + ACTIONS(130), 1, anon_sym_LBRACK, - ACTIONS(136), 1, - anon_sym_COMMA, - ACTIONS(138), 1, - anon_sym_RPAREN, - ACTIONS(140), 1, + ACTIONS(132), 1, anon_sym_DOT, - ACTIONS(142), 1, + ACTIONS(134), 1, anon_sym_QMARK, - STATE(209), 1, - aux_sym_argument_list_repeat1, - ACTIONS(68), 2, + ACTIONS(94), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(76), 2, + ACTIONS(102), 2, anon_sym_PIPE, anon_sym_CARET, - ACTIONS(82), 2, + ACTIONS(110), 2, anon_sym_BANG_EQ, anon_sym_GT_EQ, - ACTIONS(80), 4, + ACTIONS(142), 3, + anon_sym_COMMA, + anon_sym_RPAREN, + anon_sym_RBRACK, + ACTIONS(108), 4, anon_sym_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_GT, - ACTIONS(78), 6, + ACTIONS(104), 6, anon_sym_GT_GT, anon_sym_LT_LT, anon_sym_STAR, anon_sym_SLASH, anon_sym_BSLASH, anon_sym_PERCENT, - ACTIONS(66), 17, + ACTIONS(92), 17, anon_sym_LT_EQ_EQ, - anon_sym_EQ_EQ_GT, anon_sym_LT_DASH_DASH, + anon_sym_EQ_EQ_GT, anon_sym_DASH_DASH_GT, anon_sym_AMP_EQ, anon_sym_PLUS_EQ, @@ -5155,56 +5423,54 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_GT_EQ, anon_sym_LT_LT_EQ, anon_sym_EQ_EQ_EQ, - [1873] = 18, + [2007] = 17, ACTIONS(3), 1, sym_comment, - ACTIONS(60), 1, - anon_sym_STAR_STAR, - ACTIONS(62), 1, + ACTIONS(90), 1, anon_sym_EQ, - ACTIONS(70), 1, + ACTIONS(96), 1, anon_sym_AMP_AMP, - ACTIONS(72), 1, + ACTIONS(98), 1, anon_sym_AMP, - ACTIONS(74), 1, + ACTIONS(100), 1, anon_sym_PIPE_PIPE, - ACTIONS(134), 1, + ACTIONS(106), 1, + anon_sym_STAR_STAR, + ACTIONS(130), 1, anon_sym_LBRACK, - ACTIONS(140), 1, + ACTIONS(132), 1, anon_sym_DOT, - ACTIONS(142), 1, + ACTIONS(134), 1, anon_sym_QMARK, ACTIONS(144), 1, - anon_sym_COMMA, - ACTIONS(146), 1, - anon_sym_RPAREN, - STATE(180), 1, - aux_sym_argument_list_repeat1, - ACTIONS(68), 2, + anon_sym_SEMI, + STATE(153), 1, + sym__semicolon, + ACTIONS(94), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(76), 2, + ACTIONS(102), 2, anon_sym_PIPE, anon_sym_CARET, - ACTIONS(82), 2, + ACTIONS(110), 2, anon_sym_BANG_EQ, anon_sym_GT_EQ, - ACTIONS(80), 4, + ACTIONS(108), 4, anon_sym_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_GT, - ACTIONS(78), 6, + ACTIONS(104), 6, anon_sym_GT_GT, anon_sym_LT_LT, anon_sym_STAR, anon_sym_SLASH, anon_sym_BSLASH, anon_sym_PERCENT, - ACTIONS(66), 17, + ACTIONS(92), 17, anon_sym_LT_EQ_EQ, - anon_sym_EQ_EQ_GT, anon_sym_LT_DASH_DASH, + anon_sym_EQ_EQ_GT, anon_sym_DASH_DASH_GT, anon_sym_AMP_EQ, anon_sym_PLUS_EQ, @@ -5219,54 +5485,53 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_GT_EQ, anon_sym_LT_LT_EQ, anon_sym_EQ_EQ_EQ, - [1955] = 16, + [2086] = 16, ACTIONS(3), 1, sym_comment, - ACTIONS(60), 1, - anon_sym_STAR_STAR, - ACTIONS(62), 1, + ACTIONS(90), 1, anon_sym_EQ, - ACTIONS(70), 1, + ACTIONS(96), 1, anon_sym_AMP_AMP, - ACTIONS(72), 1, + ACTIONS(98), 1, anon_sym_AMP, - ACTIONS(74), 1, + ACTIONS(100), 1, anon_sym_PIPE_PIPE, - ACTIONS(134), 1, + ACTIONS(106), 1, + anon_sym_STAR_STAR, + ACTIONS(130), 1, anon_sym_LBRACK, - ACTIONS(140), 1, + ACTIONS(132), 1, anon_sym_DOT, - ACTIONS(142), 1, + ACTIONS(134), 1, anon_sym_QMARK, - ACTIONS(68), 2, + ACTIONS(94), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(76), 2, + ACTIONS(102), 2, anon_sym_PIPE, anon_sym_CARET, - ACTIONS(82), 2, + ACTIONS(110), 2, anon_sym_BANG_EQ, anon_sym_GT_EQ, - ACTIONS(148), 3, + ACTIONS(146), 2, anon_sym_COMMA, - anon_sym_RBRACK, - anon_sym_RPAREN, - ACTIONS(80), 4, + anon_sym_SEMI, + ACTIONS(108), 4, anon_sym_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_GT, - ACTIONS(78), 6, + ACTIONS(104), 6, anon_sym_GT_GT, anon_sym_LT_LT, anon_sym_STAR, anon_sym_SLASH, anon_sym_BSLASH, anon_sym_PERCENT, - ACTIONS(66), 17, + ACTIONS(92), 17, anon_sym_LT_EQ_EQ, - anon_sym_EQ_EQ_GT, anon_sym_LT_DASH_DASH, + anon_sym_EQ_EQ_GT, anon_sym_DASH_DASH_GT, anon_sym_AMP_EQ, anon_sym_PLUS_EQ, @@ -5281,56 +5546,54 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_GT_EQ, anon_sym_LT_LT_EQ, anon_sym_EQ_EQ_EQ, - [2033] = 18, + [2163] = 17, ACTIONS(3), 1, sym_comment, - ACTIONS(60), 1, - anon_sym_STAR_STAR, - ACTIONS(62), 1, + ACTIONS(90), 1, anon_sym_EQ, - ACTIONS(70), 1, + ACTIONS(96), 1, anon_sym_AMP_AMP, - ACTIONS(72), 1, + ACTIONS(98), 1, anon_sym_AMP, - ACTIONS(74), 1, + ACTIONS(100), 1, anon_sym_PIPE_PIPE, - ACTIONS(134), 1, + ACTIONS(106), 1, + anon_sym_STAR_STAR, + ACTIONS(130), 1, anon_sym_LBRACK, - ACTIONS(140), 1, + ACTIONS(132), 1, anon_sym_DOT, - ACTIONS(142), 1, + ACTIONS(134), 1, anon_sym_QMARK, - ACTIONS(150), 1, - anon_sym_COMMA, - ACTIONS(152), 1, - anon_sym_RBRACK, - STATE(211), 1, - aux_sym_argument_list_repeat1, - ACTIONS(68), 2, + ACTIONS(148), 1, + anon_sym_SEMI, + STATE(114), 1, + sym__semicolon, + ACTIONS(94), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(76), 2, + ACTIONS(102), 2, anon_sym_PIPE, anon_sym_CARET, - ACTIONS(82), 2, + ACTIONS(110), 2, anon_sym_BANG_EQ, anon_sym_GT_EQ, - ACTIONS(80), 4, + ACTIONS(108), 4, anon_sym_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_GT, - ACTIONS(78), 6, + ACTIONS(104), 6, anon_sym_GT_GT, anon_sym_LT_LT, anon_sym_STAR, anon_sym_SLASH, anon_sym_BSLASH, anon_sym_PERCENT, - ACTIONS(66), 17, + ACTIONS(92), 17, anon_sym_LT_EQ_EQ, - anon_sym_EQ_EQ_GT, anon_sym_LT_DASH_DASH, + anon_sym_EQ_EQ_GT, anon_sym_DASH_DASH_GT, anon_sym_AMP_EQ, anon_sym_PLUS_EQ, @@ -5345,251 +5608,115 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_GT_EQ, anon_sym_LT_LT_EQ, anon_sym_EQ_EQ_EQ, - [2115] = 21, + [2242] = 17, ACTIONS(3), 1, sym_comment, - ACTIONS(154), 1, - sym_parallel, - ACTIONS(156), 1, - anon_sym_LBRACE, - ACTIONS(158), 1, - anon_sym_RBRACE, - ACTIONS(160), 1, - anon_sym_component, - ACTIONS(162), 1, - anon_sym_LBRACK, - ACTIONS(164), 1, - anon_sym_if, - ACTIONS(166), 1, - anon_sym_LPAREN, - ACTIONS(168), 1, - anon_sym_for, - ACTIONS(170), 1, - anon_sym_while, - ACTIONS(172), 1, - anon_sym_return, - ACTIONS(178), 1, - sym_identifier, - ACTIONS(180), 1, - sym_int, - ACTIONS(182), 1, - sym_var, - ACTIONS(184), 1, - anon_sym_signal, - ACTIONS(174), 2, - anon_sym_BANG, - anon_sym_TILDE, - ACTIONS(176), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(4), 2, - sym_member_expression, - sym_array_access_expression, - STATE(224), 3, - sym__type, - sym_component, - sym_signal, - STATE(38), 9, - sym__statement, - sym_block_statement, - sym_expression_statement, - sym_if_statement, - sym_for_statement, - sym_while_statement, - sym_return_statement, - sym_variable_declaration_statement, - aux_sym_template_body_repeat1, - STATE(61), 11, - sym__expression, - sym_assignment_expression, - sym_increment_expression, - sym_decrement_expression, - sym_call_expression, - sym_parenthesized_expression, - sym_ternary_expression, - sym_unary_expression, - sym_binary_expression, - sym_array, - sym_tuple, - [2202] = 21, - ACTIONS(3), 1, - sym_comment, - ACTIONS(186), 1, - sym_parallel, - ACTIONS(189), 1, - anon_sym_LBRACE, - ACTIONS(192), 1, - anon_sym_RBRACE, - ACTIONS(194), 1, - anon_sym_component, - ACTIONS(197), 1, - anon_sym_LBRACK, - ACTIONS(200), 1, - anon_sym_if, - ACTIONS(203), 1, - anon_sym_LPAREN, - ACTIONS(206), 1, - anon_sym_for, - ACTIONS(209), 1, - anon_sym_while, - ACTIONS(212), 1, - anon_sym_return, - ACTIONS(221), 1, - sym_identifier, - ACTIONS(224), 1, - sym_int, - ACTIONS(227), 1, - sym_var, - ACTIONS(230), 1, - anon_sym_signal, - ACTIONS(215), 2, - anon_sym_BANG, - anon_sym_TILDE, - ACTIONS(218), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(4), 2, - sym_member_expression, - sym_array_access_expression, - STATE(224), 3, - sym__type, - sym_component, - sym_signal, - STATE(38), 9, - sym__statement, - sym_block_statement, - sym_expression_statement, - sym_if_statement, - sym_for_statement, - sym_while_statement, - sym_return_statement, - sym_variable_declaration_statement, - aux_sym_template_body_repeat1, - STATE(61), 11, - sym__expression, - sym_assignment_expression, - sym_increment_expression, - sym_decrement_expression, - sym_call_expression, - sym_parenthesized_expression, - sym_ternary_expression, - sym_unary_expression, - sym_binary_expression, - sym_array, - sym_tuple, - [2289] = 21, - ACTIONS(3), 1, - sym_comment, - ACTIONS(154), 1, - sym_parallel, - ACTIONS(156), 1, - anon_sym_LBRACE, - ACTIONS(160), 1, - anon_sym_component, - ACTIONS(162), 1, + ACTIONS(90), 1, + anon_sym_EQ, + ACTIONS(96), 1, + anon_sym_AMP_AMP, + ACTIONS(98), 1, + anon_sym_AMP, + ACTIONS(100), 1, + anon_sym_PIPE_PIPE, + ACTIONS(106), 1, + anon_sym_STAR_STAR, + ACTIONS(130), 1, anon_sym_LBRACK, - ACTIONS(164), 1, - anon_sym_if, - ACTIONS(166), 1, - anon_sym_LPAREN, - ACTIONS(168), 1, - anon_sym_for, - ACTIONS(170), 1, - anon_sym_while, - ACTIONS(172), 1, - anon_sym_return, - ACTIONS(178), 1, - sym_identifier, - ACTIONS(180), 1, - sym_int, - ACTIONS(182), 1, - sym_var, - ACTIONS(184), 1, - anon_sym_signal, - ACTIONS(233), 1, - anon_sym_RBRACE, - ACTIONS(174), 2, - anon_sym_BANG, - anon_sym_TILDE, - ACTIONS(176), 2, + ACTIONS(132), 1, + anon_sym_DOT, + ACTIONS(134), 1, + anon_sym_QMARK, + ACTIONS(150), 1, + anon_sym_SEMI, + STATE(139), 1, + sym__semicolon, + ACTIONS(94), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(4), 2, - sym_member_expression, - sym_array_access_expression, - STATE(224), 3, - sym__type, - sym_component, - sym_signal, - STATE(38), 9, - sym__statement, - sym_block_statement, - sym_expression_statement, - sym_if_statement, - sym_for_statement, - sym_while_statement, - sym_return_statement, - sym_variable_declaration_statement, - aux_sym_template_body_repeat1, - STATE(61), 11, - sym__expression, - sym_assignment_expression, - sym_increment_expression, - sym_decrement_expression, - sym_call_expression, - sym_parenthesized_expression, - sym_ternary_expression, - sym_unary_expression, - sym_binary_expression, - sym_array, - sym_tuple, - [2376] = 16, + ACTIONS(102), 2, + anon_sym_PIPE, + anon_sym_CARET, + ACTIONS(110), 2, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + ACTIONS(108), 4, + anon_sym_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_GT, + ACTIONS(104), 6, + anon_sym_GT_GT, + anon_sym_LT_LT, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_BSLASH, + anon_sym_PERCENT, + ACTIONS(92), 17, + anon_sym_LT_EQ_EQ, + anon_sym_LT_DASH_DASH, + anon_sym_EQ_EQ_GT, + anon_sym_DASH_DASH_GT, + anon_sym_AMP_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_BSLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_EQ_EQ_EQ, + [2321] = 16, ACTIONS(3), 1, sym_comment, - ACTIONS(60), 1, - anon_sym_STAR_STAR, - ACTIONS(62), 1, + ACTIONS(90), 1, anon_sym_EQ, - ACTIONS(70), 1, + ACTIONS(96), 1, anon_sym_AMP_AMP, - ACTIONS(72), 1, + ACTIONS(98), 1, anon_sym_AMP, - ACTIONS(74), 1, + ACTIONS(100), 1, anon_sym_PIPE_PIPE, - ACTIONS(134), 1, + ACTIONS(106), 1, + anon_sym_STAR_STAR, + ACTIONS(130), 1, anon_sym_LBRACK, - ACTIONS(140), 1, + ACTIONS(132), 1, anon_sym_DOT, - ACTIONS(142), 1, + ACTIONS(134), 1, anon_sym_QMARK, - ACTIONS(68), 2, + ACTIONS(94), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(76), 2, + ACTIONS(102), 2, anon_sym_PIPE, anon_sym_CARET, - ACTIONS(82), 2, + ACTIONS(110), 2, anon_sym_BANG_EQ, anon_sym_GT_EQ, - ACTIONS(235), 2, + ACTIONS(152), 2, anon_sym_COMMA, - sym__semicolon, - ACTIONS(80), 4, + anon_sym_SEMI, + ACTIONS(108), 4, anon_sym_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_GT, - ACTIONS(78), 6, + ACTIONS(104), 6, anon_sym_GT_GT, anon_sym_LT_LT, anon_sym_STAR, anon_sym_SLASH, anon_sym_BSLASH, anon_sym_PERCENT, - ACTIONS(66), 17, + ACTIONS(92), 17, anon_sym_LT_EQ_EQ, - anon_sym_EQ_EQ_GT, anon_sym_LT_DASH_DASH, + anon_sym_EQ_EQ_GT, anon_sym_DASH_DASH_GT, anon_sym_AMP_EQ, anon_sym_PLUS_EQ, @@ -5604,251 +5731,114 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_GT_EQ, anon_sym_LT_LT_EQ, anon_sym_EQ_EQ_EQ, - [2453] = 21, - ACTIONS(3), 1, - sym_comment, - ACTIONS(154), 1, - sym_parallel, - ACTIONS(156), 1, - anon_sym_LBRACE, - ACTIONS(160), 1, - anon_sym_component, - ACTIONS(162), 1, - anon_sym_LBRACK, - ACTIONS(164), 1, - anon_sym_if, - ACTIONS(166), 1, - anon_sym_LPAREN, - ACTIONS(168), 1, - anon_sym_for, - ACTIONS(170), 1, - anon_sym_while, - ACTIONS(172), 1, - anon_sym_return, - ACTIONS(178), 1, - sym_identifier, - ACTIONS(180), 1, - sym_int, - ACTIONS(182), 1, - sym_var, - ACTIONS(184), 1, - anon_sym_signal, - ACTIONS(237), 1, - anon_sym_RBRACE, - ACTIONS(174), 2, - anon_sym_BANG, - anon_sym_TILDE, - ACTIONS(176), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(4), 2, - sym_member_expression, - sym_array_access_expression, - STATE(224), 3, - sym__type, - sym_component, - sym_signal, - STATE(38), 9, - sym__statement, - sym_block_statement, - sym_expression_statement, - sym_if_statement, - sym_for_statement, - sym_while_statement, - sym_return_statement, - sym_variable_declaration_statement, - aux_sym_template_body_repeat1, - STATE(61), 11, - sym__expression, - sym_assignment_expression, - sym_increment_expression, - sym_decrement_expression, - sym_call_expression, - sym_parenthesized_expression, - sym_ternary_expression, - sym_unary_expression, - sym_binary_expression, - sym_array, - sym_tuple, - [2540] = 21, - ACTIONS(3), 1, - sym_comment, - ACTIONS(154), 1, - sym_parallel, - ACTIONS(156), 1, - anon_sym_LBRACE, - ACTIONS(160), 1, - anon_sym_component, - ACTIONS(162), 1, - anon_sym_LBRACK, - ACTIONS(164), 1, - anon_sym_if, - ACTIONS(166), 1, - anon_sym_LPAREN, - ACTIONS(168), 1, - anon_sym_for, - ACTIONS(170), 1, - anon_sym_while, - ACTIONS(172), 1, - anon_sym_return, - ACTIONS(178), 1, - sym_identifier, - ACTIONS(180), 1, - sym_int, - ACTIONS(182), 1, - sym_var, - ACTIONS(184), 1, - anon_sym_signal, - ACTIONS(239), 1, - anon_sym_RBRACE, - ACTIONS(174), 2, - anon_sym_BANG, - anon_sym_TILDE, - ACTIONS(176), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(4), 2, - sym_member_expression, - sym_array_access_expression, - STATE(224), 3, - sym__type, - sym_component, - sym_signal, - STATE(38), 9, - sym__statement, - sym_block_statement, - sym_expression_statement, - sym_if_statement, - sym_for_statement, - sym_while_statement, - sym_return_statement, - sym_variable_declaration_statement, - aux_sym_template_body_repeat1, - STATE(61), 11, - sym__expression, - sym_assignment_expression, - sym_increment_expression, - sym_decrement_expression, - sym_call_expression, - sym_parenthesized_expression, - sym_ternary_expression, - sym_unary_expression, - sym_binary_expression, - sym_array, - sym_tuple, - [2627] = 21, + [2398] = 16, ACTIONS(3), 1, sym_comment, - ACTIONS(154), 1, - sym_parallel, - ACTIONS(156), 1, - anon_sym_LBRACE, - ACTIONS(160), 1, - anon_sym_component, - ACTIONS(162), 1, + ACTIONS(90), 1, + anon_sym_EQ, + ACTIONS(96), 1, + anon_sym_AMP_AMP, + ACTIONS(98), 1, + anon_sym_AMP, + ACTIONS(100), 1, + anon_sym_PIPE_PIPE, + ACTIONS(106), 1, + anon_sym_STAR_STAR, + ACTIONS(130), 1, anon_sym_LBRACK, - ACTIONS(164), 1, - anon_sym_if, - ACTIONS(166), 1, - anon_sym_LPAREN, - ACTIONS(168), 1, - anon_sym_for, - ACTIONS(170), 1, - anon_sym_while, - ACTIONS(172), 1, - anon_sym_return, - ACTIONS(178), 1, - sym_identifier, - ACTIONS(180), 1, - sym_int, - ACTIONS(182), 1, - sym_var, - ACTIONS(184), 1, - anon_sym_signal, - ACTIONS(241), 1, - anon_sym_RBRACE, - ACTIONS(174), 2, - anon_sym_BANG, - anon_sym_TILDE, - ACTIONS(176), 2, + ACTIONS(132), 1, + anon_sym_DOT, + ACTIONS(134), 1, + anon_sym_QMARK, + ACTIONS(94), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(4), 2, - sym_member_expression, - sym_array_access_expression, - STATE(224), 3, - sym__type, - sym_component, - sym_signal, - STATE(41), 9, - sym__statement, - sym_block_statement, - sym_expression_statement, - sym_if_statement, - sym_for_statement, - sym_while_statement, - sym_return_statement, - sym_variable_declaration_statement, - aux_sym_template_body_repeat1, - STATE(61), 11, - sym__expression, - sym_assignment_expression, - sym_increment_expression, - sym_decrement_expression, - sym_call_expression, - sym_parenthesized_expression, - sym_ternary_expression, - sym_unary_expression, - sym_binary_expression, - sym_array, - sym_tuple, - [2714] = 16, + ACTIONS(102), 2, + anon_sym_PIPE, + anon_sym_CARET, + ACTIONS(110), 2, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + ACTIONS(154), 2, + anon_sym_COMMA, + anon_sym_SEMI, + ACTIONS(108), 4, + anon_sym_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_GT, + ACTIONS(104), 6, + anon_sym_GT_GT, + anon_sym_LT_LT, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_BSLASH, + anon_sym_PERCENT, + ACTIONS(92), 17, + anon_sym_LT_EQ_EQ, + anon_sym_LT_DASH_DASH, + anon_sym_EQ_EQ_GT, + anon_sym_DASH_DASH_GT, + anon_sym_AMP_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_BSLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_EQ_EQ_EQ, + [2475] = 16, ACTIONS(3), 1, sym_comment, - ACTIONS(60), 1, - anon_sym_STAR_STAR, - ACTIONS(62), 1, + ACTIONS(90), 1, anon_sym_EQ, - ACTIONS(70), 1, + ACTIONS(96), 1, anon_sym_AMP_AMP, - ACTIONS(72), 1, + ACTIONS(98), 1, anon_sym_AMP, - ACTIONS(74), 1, + ACTIONS(100), 1, anon_sym_PIPE_PIPE, - ACTIONS(134), 1, + ACTIONS(106), 1, + anon_sym_STAR_STAR, + ACTIONS(130), 1, anon_sym_LBRACK, - ACTIONS(140), 1, + ACTIONS(132), 1, anon_sym_DOT, - ACTIONS(142), 1, + ACTIONS(134), 1, anon_sym_QMARK, - ACTIONS(68), 2, + ACTIONS(94), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(76), 2, + ACTIONS(102), 2, anon_sym_PIPE, anon_sym_CARET, - ACTIONS(82), 2, + ACTIONS(110), 2, anon_sym_BANG_EQ, anon_sym_GT_EQ, - ACTIONS(243), 2, + ACTIONS(156), 2, anon_sym_COMMA, - sym__semicolon, - ACTIONS(80), 4, + anon_sym_SEMI, + ACTIONS(108), 4, anon_sym_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_GT, - ACTIONS(78), 6, + ACTIONS(104), 6, anon_sym_GT_GT, anon_sym_LT_LT, anon_sym_STAR, anon_sym_SLASH, anon_sym_BSLASH, anon_sym_PERCENT, - ACTIONS(66), 17, + ACTIONS(92), 17, anon_sym_LT_EQ_EQ, - anon_sym_EQ_EQ_GT, anon_sym_LT_DASH_DASH, + anon_sym_EQ_EQ_GT, anon_sym_DASH_DASH_GT, anon_sym_AMP_EQ, anon_sym_PLUS_EQ, @@ -5863,119 +5853,116 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_GT_EQ, anon_sym_LT_LT_EQ, anon_sym_EQ_EQ_EQ, - [2791] = 21, + [2552] = 17, ACTIONS(3), 1, sym_comment, - ACTIONS(154), 1, - sym_parallel, - ACTIONS(156), 1, - anon_sym_LBRACE, - ACTIONS(160), 1, - anon_sym_component, - ACTIONS(162), 1, + ACTIONS(90), 1, + anon_sym_EQ, + ACTIONS(96), 1, + anon_sym_AMP_AMP, + ACTIONS(98), 1, + anon_sym_AMP, + ACTIONS(100), 1, + anon_sym_PIPE_PIPE, + ACTIONS(106), 1, + anon_sym_STAR_STAR, + ACTIONS(130), 1, anon_sym_LBRACK, - ACTIONS(164), 1, - anon_sym_if, - ACTIONS(166), 1, - anon_sym_LPAREN, - ACTIONS(168), 1, - anon_sym_for, - ACTIONS(170), 1, - anon_sym_while, - ACTIONS(172), 1, - anon_sym_return, - ACTIONS(178), 1, - sym_identifier, - ACTIONS(180), 1, - sym_int, - ACTIONS(182), 1, - sym_var, - ACTIONS(184), 1, - anon_sym_signal, - ACTIONS(245), 1, - anon_sym_RBRACE, - ACTIONS(174), 2, - anon_sym_BANG, - anon_sym_TILDE, - ACTIONS(176), 2, + ACTIONS(132), 1, + anon_sym_DOT, + ACTIONS(134), 1, + anon_sym_QMARK, + ACTIONS(158), 1, + anon_sym_SEMI, + STATE(109), 1, + sym__semicolon, + ACTIONS(94), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(4), 2, - sym_member_expression, - sym_array_access_expression, - STATE(224), 3, - sym__type, - sym_component, - sym_signal, - STATE(39), 9, - sym__statement, - sym_block_statement, - sym_expression_statement, - sym_if_statement, - sym_for_statement, - sym_while_statement, - sym_return_statement, - sym_variable_declaration_statement, - aux_sym_template_body_repeat1, - STATE(61), 11, - sym__expression, - sym_assignment_expression, - sym_increment_expression, - sym_decrement_expression, - sym_call_expression, - sym_parenthesized_expression, - sym_ternary_expression, - sym_unary_expression, - sym_binary_expression, - sym_array, - sym_tuple, - [2878] = 16, + ACTIONS(102), 2, + anon_sym_PIPE, + anon_sym_CARET, + ACTIONS(110), 2, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + ACTIONS(108), 4, + anon_sym_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_GT, + ACTIONS(104), 6, + anon_sym_GT_GT, + anon_sym_LT_LT, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_BSLASH, + anon_sym_PERCENT, + ACTIONS(92), 17, + anon_sym_LT_EQ_EQ, + anon_sym_LT_DASH_DASH, + anon_sym_EQ_EQ_GT, + anon_sym_DASH_DASH_GT, + anon_sym_AMP_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_BSLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_EQ_EQ_EQ, + [2631] = 17, ACTIONS(3), 1, sym_comment, - ACTIONS(60), 1, - anon_sym_STAR_STAR, - ACTIONS(62), 1, + ACTIONS(90), 1, anon_sym_EQ, - ACTIONS(70), 1, + ACTIONS(96), 1, anon_sym_AMP_AMP, - ACTIONS(72), 1, + ACTIONS(98), 1, anon_sym_AMP, - ACTIONS(74), 1, + ACTIONS(100), 1, anon_sym_PIPE_PIPE, - ACTIONS(134), 1, + ACTIONS(106), 1, + anon_sym_STAR_STAR, + ACTIONS(130), 1, anon_sym_LBRACK, - ACTIONS(140), 1, + ACTIONS(132), 1, anon_sym_DOT, - ACTIONS(142), 1, + ACTIONS(134), 1, anon_sym_QMARK, - ACTIONS(68), 2, + ACTIONS(160), 1, + anon_sym_SEMI, + STATE(150), 1, + sym__semicolon, + ACTIONS(94), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(76), 2, + ACTIONS(102), 2, anon_sym_PIPE, anon_sym_CARET, - ACTIONS(82), 2, + ACTIONS(110), 2, anon_sym_BANG_EQ, anon_sym_GT_EQ, - ACTIONS(247), 2, - anon_sym_COMMA, - sym__semicolon, - ACTIONS(80), 4, + ACTIONS(108), 4, anon_sym_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_GT, - ACTIONS(78), 6, + ACTIONS(104), 6, anon_sym_GT_GT, anon_sym_LT_LT, anon_sym_STAR, anon_sym_SLASH, anon_sym_BSLASH, anon_sym_PERCENT, - ACTIONS(66), 17, + ACTIONS(92), 17, anon_sym_LT_EQ_EQ, - anon_sym_EQ_EQ_GT, anon_sym_LT_DASH_DASH, + anon_sym_EQ_EQ_GT, anon_sym_DASH_DASH_GT, anon_sym_AMP_EQ, anon_sym_PLUS_EQ, @@ -5990,53 +5977,53 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_GT_EQ, anon_sym_LT_LT_EQ, anon_sym_EQ_EQ_EQ, - [2955] = 16, + [2710] = 16, ACTIONS(3), 1, sym_comment, - ACTIONS(60), 1, - anon_sym_STAR_STAR, - ACTIONS(62), 1, + ACTIONS(90), 1, anon_sym_EQ, - ACTIONS(70), 1, + ACTIONS(96), 1, anon_sym_AMP_AMP, - ACTIONS(72), 1, + ACTIONS(98), 1, anon_sym_AMP, - ACTIONS(74), 1, + ACTIONS(100), 1, anon_sym_PIPE_PIPE, - ACTIONS(134), 1, + ACTIONS(106), 1, + anon_sym_STAR_STAR, + ACTIONS(130), 1, anon_sym_LBRACK, - ACTIONS(140), 1, + ACTIONS(132), 1, anon_sym_DOT, - ACTIONS(142), 1, + ACTIONS(134), 1, anon_sym_QMARK, - ACTIONS(68), 2, + ACTIONS(94), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(76), 2, + ACTIONS(102), 2, anon_sym_PIPE, anon_sym_CARET, - ACTIONS(82), 2, + ACTIONS(110), 2, anon_sym_BANG_EQ, anon_sym_GT_EQ, - ACTIONS(249), 2, + ACTIONS(162), 2, anon_sym_COMMA, - sym__semicolon, - ACTIONS(80), 4, + anon_sym_RPAREN, + ACTIONS(108), 4, anon_sym_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_GT, - ACTIONS(78), 6, + ACTIONS(104), 6, anon_sym_GT_GT, anon_sym_LT_LT, anon_sym_STAR, anon_sym_SLASH, anon_sym_BSLASH, anon_sym_PERCENT, - ACTIONS(66), 17, + ACTIONS(92), 17, anon_sym_LT_EQ_EQ, - anon_sym_EQ_EQ_GT, anon_sym_LT_DASH_DASH, + anon_sym_EQ_EQ_GT, anon_sym_DASH_DASH_GT, anon_sym_AMP_EQ, anon_sym_PLUS_EQ, @@ -6051,62 +6038,110 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_GT_EQ, anon_sym_LT_LT_EQ, anon_sym_EQ_EQ_EQ, - [3032] = 21, + [2787] = 16, ACTIONS(3), 1, sym_comment, - ACTIONS(154), 1, - sym_parallel, - ACTIONS(156), 1, - anon_sym_LBRACE, - ACTIONS(160), 1, - anon_sym_component, - ACTIONS(162), 1, + ACTIONS(90), 1, + anon_sym_EQ, + ACTIONS(96), 1, + anon_sym_AMP_AMP, + ACTIONS(98), 1, + anon_sym_AMP, + ACTIONS(100), 1, + anon_sym_PIPE_PIPE, + ACTIONS(106), 1, + anon_sym_STAR_STAR, + ACTIONS(130), 1, anon_sym_LBRACK, + ACTIONS(132), 1, + anon_sym_DOT, + ACTIONS(134), 1, + anon_sym_QMARK, ACTIONS(164), 1, - anon_sym_if, + anon_sym_RPAREN, + ACTIONS(94), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(102), 2, + anon_sym_PIPE, + anon_sym_CARET, + ACTIONS(110), 2, + anon_sym_BANG_EQ, + anon_sym_GT_EQ, + ACTIONS(108), 4, + anon_sym_LT, + anon_sym_LT_EQ, + anon_sym_EQ_EQ, + anon_sym_GT, + ACTIONS(104), 6, + anon_sym_GT_GT, + anon_sym_LT_LT, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_BSLASH, + anon_sym_PERCENT, + ACTIONS(92), 17, + anon_sym_LT_EQ_EQ, + anon_sym_LT_DASH_DASH, + anon_sym_EQ_EQ_GT, + anon_sym_DASH_DASH_GT, + anon_sym_AMP_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_STAR_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_BSLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_GT_GT_EQ, + anon_sym_LT_LT_EQ, + anon_sym_EQ_EQ_EQ, + [2863] = 20, + ACTIONS(3), 1, + sym_comment, ACTIONS(166), 1, - anon_sym_LPAREN, + anon_sym_LBRACE, ACTIONS(168), 1, - anon_sym_for, + anon_sym_RBRACE, ACTIONS(170), 1, - anon_sym_while, + anon_sym_LPAREN, ACTIONS(172), 1, - anon_sym_return, + anon_sym_component, + ACTIONS(174), 1, + anon_sym_LBRACK, + ACTIONS(176), 1, + anon_sym_if, ACTIONS(178), 1, - sym_identifier, + anon_sym_for, ACTIONS(180), 1, - sym_int, + anon_sym_while, ACTIONS(182), 1, - sym_var, + anon_sym_return, ACTIONS(184), 1, anon_sym_signal, - ACTIONS(251), 1, - anon_sym_RBRACE, - ACTIONS(174), 2, + ACTIONS(186), 1, + anon_sym_var, + ACTIONS(192), 1, + sym_identifier, + ACTIONS(194), 1, + sym_int_literal, + ACTIONS(196), 1, + sym_parallel, + ACTIONS(188), 2, anon_sym_BANG, anon_sym_TILDE, - ACTIONS(176), 2, + ACTIONS(190), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(4), 2, + STATE(7), 2, sym_member_expression, sym_array_access_expression, - STATE(224), 3, - sym__type, - sym_component, - sym_signal, - STATE(42), 9, - sym__statement, - sym_block_statement, - sym_expression_statement, - sym_if_statement, - sym_for_statement, - sym_while_statement, - sym_return_statement, - sym_variable_declaration_statement, - aux_sym_template_body_repeat1, - STATE(61), 11, + STATE(43), 11, sym__expression, + sym_array_expression, + sym_tuple_expression, sym_assignment_expression, sym_increment_expression, sym_decrement_expression, @@ -6115,53 +6150,7 @@ static const uint16_t ts_small_parse_table[] = { sym_ternary_expression, sym_unary_expression, sym_binary_expression, - sym_array, - sym_tuple, - [3119] = 21, - ACTIONS(3), 1, - sym_comment, - ACTIONS(154), 1, - sym_parallel, - ACTIONS(156), 1, - anon_sym_LBRACE, - ACTIONS(160), 1, - anon_sym_component, - ACTIONS(162), 1, - anon_sym_LBRACK, - ACTIONS(164), 1, - anon_sym_if, - ACTIONS(166), 1, - anon_sym_LPAREN, - ACTIONS(168), 1, - anon_sym_for, - ACTIONS(170), 1, - anon_sym_while, - ACTIONS(172), 1, - anon_sym_return, - ACTIONS(178), 1, - sym_identifier, - ACTIONS(180), 1, - sym_int, - ACTIONS(182), 1, - sym_var, - ACTIONS(184), 1, - anon_sym_signal, - ACTIONS(253), 1, - anon_sym_RBRACE, - ACTIONS(174), 2, - anon_sym_BANG, - anon_sym_TILDE, - ACTIONS(176), 2, - anon_sym_DASH, - anon_sym_PLUS, - STATE(4), 2, - sym_member_expression, - sym_array_access_expression, - STATE(224), 3, - sym__type, - sym_component, - sym_signal, - STATE(37), 9, + STATE(60), 11, sym__statement, sym_block_statement, sym_expression_statement, @@ -6169,66 +6158,56 @@ static const uint16_t ts_small_parse_table[] = { sym_for_statement, sym_while_statement, sym_return_statement, + sym_signal_declaration_statement, sym_variable_declaration_statement, + sym_component_declaration_statement, aux_sym_template_body_repeat1, - STATE(61), 11, - sym__expression, - sym_assignment_expression, - sym_increment_expression, - sym_decrement_expression, - sym_call_expression, - sym_parenthesized_expression, - sym_ternary_expression, - sym_unary_expression, - sym_binary_expression, - sym_array, - sym_tuple, - [3206] = 16, + [2947] = 16, ACTIONS(3), 1, sym_comment, - ACTIONS(60), 1, - anon_sym_STAR_STAR, - ACTIONS(62), 1, + ACTIONS(90), 1, anon_sym_EQ, - ACTIONS(70), 1, + ACTIONS(96), 1, anon_sym_AMP_AMP, - ACTIONS(72), 1, + ACTIONS(98), 1, anon_sym_AMP, - ACTIONS(74), 1, + ACTIONS(100), 1, anon_sym_PIPE_PIPE, - ACTIONS(134), 1, + ACTIONS(106), 1, + anon_sym_STAR_STAR, + ACTIONS(130), 1, anon_sym_LBRACK, - ACTIONS(140), 1, + ACTIONS(132), 1, anon_sym_DOT, - ACTIONS(142), 1, + ACTIONS(134), 1, anon_sym_QMARK, - ACTIONS(255), 1, + ACTIONS(198), 1, anon_sym_RPAREN, - ACTIONS(68), 2, + ACTIONS(94), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(76), 2, + ACTIONS(102), 2, anon_sym_PIPE, anon_sym_CARET, - ACTIONS(82), 2, + ACTIONS(110), 2, anon_sym_BANG_EQ, anon_sym_GT_EQ, - ACTIONS(80), 4, + ACTIONS(108), 4, anon_sym_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_GT, - ACTIONS(78), 6, + ACTIONS(104), 6, anon_sym_GT_GT, anon_sym_LT_LT, anon_sym_STAR, anon_sym_SLASH, anon_sym_BSLASH, anon_sym_PERCENT, - ACTIONS(66), 17, + ACTIONS(92), 17, anon_sym_LT_EQ_EQ, - anon_sym_EQ_EQ_GT, anon_sym_LT_DASH_DASH, + anon_sym_EQ_EQ_GT, anon_sym_DASH_DASH_GT, anon_sym_AMP_EQ, anon_sym_PLUS_EQ, @@ -6243,52 +6222,52 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_GT_EQ, anon_sym_LT_LT_EQ, anon_sym_EQ_EQ_EQ, - [3282] = 16, + [3023] = 16, ACTIONS(3), 1, sym_comment, - ACTIONS(60), 1, - anon_sym_STAR_STAR, - ACTIONS(62), 1, + ACTIONS(90), 1, anon_sym_EQ, - ACTIONS(70), 1, + ACTIONS(96), 1, anon_sym_AMP_AMP, - ACTIONS(72), 1, + ACTIONS(98), 1, anon_sym_AMP, - ACTIONS(74), 1, + ACTIONS(100), 1, anon_sym_PIPE_PIPE, - ACTIONS(134), 1, + ACTIONS(106), 1, + anon_sym_STAR_STAR, + ACTIONS(130), 1, anon_sym_LBRACK, - ACTIONS(140), 1, + ACTIONS(132), 1, anon_sym_DOT, - ACTIONS(142), 1, + ACTIONS(134), 1, anon_sym_QMARK, - ACTIONS(257), 1, - anon_sym_COLON, - ACTIONS(68), 2, + ACTIONS(200), 1, + anon_sym_RBRACK, + ACTIONS(94), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(76), 2, + ACTIONS(102), 2, anon_sym_PIPE, anon_sym_CARET, - ACTIONS(82), 2, + ACTIONS(110), 2, anon_sym_BANG_EQ, anon_sym_GT_EQ, - ACTIONS(80), 4, + ACTIONS(108), 4, anon_sym_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_GT, - ACTIONS(78), 6, + ACTIONS(104), 6, anon_sym_GT_GT, anon_sym_LT_LT, anon_sym_STAR, anon_sym_SLASH, anon_sym_BSLASH, anon_sym_PERCENT, - ACTIONS(66), 17, + ACTIONS(92), 17, anon_sym_LT_EQ_EQ, - anon_sym_EQ_EQ_GT, anon_sym_LT_DASH_DASH, + anon_sym_EQ_EQ_GT, anon_sym_DASH_DASH_GT, anon_sym_AMP_EQ, anon_sym_PLUS_EQ, @@ -6303,52 +6282,52 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_GT_EQ, anon_sym_LT_LT_EQ, anon_sym_EQ_EQ_EQ, - [3358] = 16, + [3099] = 16, ACTIONS(3), 1, sym_comment, - ACTIONS(60), 1, - anon_sym_STAR_STAR, - ACTIONS(62), 1, + ACTIONS(90), 1, anon_sym_EQ, - ACTIONS(70), 1, + ACTIONS(96), 1, anon_sym_AMP_AMP, - ACTIONS(72), 1, + ACTIONS(98), 1, anon_sym_AMP, - ACTIONS(74), 1, + ACTIONS(100), 1, anon_sym_PIPE_PIPE, - ACTIONS(134), 1, + ACTIONS(106), 1, + anon_sym_STAR_STAR, + ACTIONS(130), 1, anon_sym_LBRACK, - ACTIONS(140), 1, + ACTIONS(132), 1, anon_sym_DOT, - ACTIONS(142), 1, + ACTIONS(134), 1, anon_sym_QMARK, - ACTIONS(259), 1, - anon_sym_RPAREN, - ACTIONS(68), 2, + ACTIONS(202), 1, + anon_sym_COLON, + ACTIONS(94), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(76), 2, + ACTIONS(102), 2, anon_sym_PIPE, anon_sym_CARET, - ACTIONS(82), 2, + ACTIONS(110), 2, anon_sym_BANG_EQ, anon_sym_GT_EQ, - ACTIONS(80), 4, + ACTIONS(108), 4, anon_sym_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_GT, - ACTIONS(78), 6, + ACTIONS(104), 6, anon_sym_GT_GT, anon_sym_LT_LT, anon_sym_STAR, anon_sym_SLASH, anon_sym_BSLASH, anon_sym_PERCENT, - ACTIONS(66), 17, + ACTIONS(92), 17, anon_sym_LT_EQ_EQ, - anon_sym_EQ_EQ_GT, anon_sym_LT_DASH_DASH, + anon_sym_EQ_EQ_GT, anon_sym_DASH_DASH_GT, anon_sym_AMP_EQ, anon_sym_PLUS_EQ, @@ -6363,112 +6342,308 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_GT_EQ, anon_sym_LT_LT_EQ, anon_sym_EQ_EQ_EQ, - [3434] = 16, + [3175] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(60), 1, - anon_sym_STAR_STAR, - ACTIONS(62), 1, - anon_sym_EQ, - ACTIONS(70), 1, - anon_sym_AMP_AMP, - ACTIONS(72), 1, - anon_sym_AMP, - ACTIONS(74), 1, - anon_sym_PIPE_PIPE, - ACTIONS(134), 1, + ACTIONS(166), 1, + anon_sym_LBRACE, + ACTIONS(170), 1, + anon_sym_LPAREN, + ACTIONS(172), 1, + anon_sym_component, + ACTIONS(174), 1, anon_sym_LBRACK, - ACTIONS(140), 1, - anon_sym_DOT, - ACTIONS(142), 1, - anon_sym_QMARK, - ACTIONS(261), 1, - anon_sym_RBRACK, - ACTIONS(68), 2, + ACTIONS(176), 1, + anon_sym_if, + ACTIONS(178), 1, + anon_sym_for, + ACTIONS(180), 1, + anon_sym_while, + ACTIONS(182), 1, + anon_sym_return, + ACTIONS(184), 1, + anon_sym_signal, + ACTIONS(186), 1, + anon_sym_var, + ACTIONS(192), 1, + sym_identifier, + ACTIONS(194), 1, + sym_int_literal, + ACTIONS(196), 1, + sym_parallel, + ACTIONS(204), 1, + anon_sym_RBRACE, + ACTIONS(188), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(190), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(76), 2, - anon_sym_PIPE, - anon_sym_CARET, - ACTIONS(82), 2, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - ACTIONS(80), 4, - anon_sym_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_GT, - ACTIONS(78), 6, - anon_sym_GT_GT, - anon_sym_LT_LT, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_BSLASH, - anon_sym_PERCENT, - ACTIONS(66), 17, - anon_sym_LT_EQ_EQ, - anon_sym_EQ_EQ_GT, - anon_sym_LT_DASH_DASH, - anon_sym_DASH_DASH_GT, - anon_sym_AMP_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_BSLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_PIPE_EQ, - anon_sym_CARET_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_EQ_EQ_EQ, - [3510] = 16, + STATE(7), 2, + sym_member_expression, + sym_array_access_expression, + STATE(43), 11, + sym__expression, + sym_array_expression, + sym_tuple_expression, + sym_assignment_expression, + sym_increment_expression, + sym_decrement_expression, + sym_call_expression, + sym_parenthesized_expression, + sym_ternary_expression, + sym_unary_expression, + sym_binary_expression, + STATE(53), 11, + sym__statement, + sym_block_statement, + sym_expression_statement, + sym_if_statement, + sym_for_statement, + sym_while_statement, + sym_return_statement, + sym_signal_declaration_statement, + sym_variable_declaration_statement, + sym_component_declaration_statement, + aux_sym_template_body_repeat1, + [3259] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(166), 1, + anon_sym_LBRACE, + ACTIONS(170), 1, + anon_sym_LPAREN, + ACTIONS(172), 1, + anon_sym_component, + ACTIONS(174), 1, + anon_sym_LBRACK, + ACTIONS(176), 1, + anon_sym_if, + ACTIONS(178), 1, + anon_sym_for, + ACTIONS(180), 1, + anon_sym_while, + ACTIONS(182), 1, + anon_sym_return, + ACTIONS(184), 1, + anon_sym_signal, + ACTIONS(186), 1, + anon_sym_var, + ACTIONS(192), 1, + sym_identifier, + ACTIONS(194), 1, + sym_int_literal, + ACTIONS(196), 1, + sym_parallel, + ACTIONS(206), 1, + anon_sym_RBRACE, + ACTIONS(188), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(190), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(7), 2, + sym_member_expression, + sym_array_access_expression, + STATE(43), 11, + sym__expression, + sym_array_expression, + sym_tuple_expression, + sym_assignment_expression, + sym_increment_expression, + sym_decrement_expression, + sym_call_expression, + sym_parenthesized_expression, + sym_ternary_expression, + sym_unary_expression, + sym_binary_expression, + STATE(56), 11, + sym__statement, + sym_block_statement, + sym_expression_statement, + sym_if_statement, + sym_for_statement, + sym_while_statement, + sym_return_statement, + sym_signal_declaration_statement, + sym_variable_declaration_statement, + sym_component_declaration_statement, + aux_sym_template_body_repeat1, + [3343] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(166), 1, + anon_sym_LBRACE, + ACTIONS(170), 1, + anon_sym_LPAREN, + ACTIONS(172), 1, + anon_sym_component, + ACTIONS(174), 1, + anon_sym_LBRACK, + ACTIONS(176), 1, + anon_sym_if, + ACTIONS(178), 1, + anon_sym_for, + ACTIONS(180), 1, + anon_sym_while, + ACTIONS(182), 1, + anon_sym_return, + ACTIONS(184), 1, + anon_sym_signal, + ACTIONS(186), 1, + anon_sym_var, + ACTIONS(192), 1, + sym_identifier, + ACTIONS(194), 1, + sym_int_literal, + ACTIONS(196), 1, + sym_parallel, + ACTIONS(208), 1, + anon_sym_RBRACE, + ACTIONS(188), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(190), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(7), 2, + sym_member_expression, + sym_array_access_expression, + STATE(43), 11, + sym__expression, + sym_array_expression, + sym_tuple_expression, + sym_assignment_expression, + sym_increment_expression, + sym_decrement_expression, + sym_call_expression, + sym_parenthesized_expression, + sym_ternary_expression, + sym_unary_expression, + sym_binary_expression, + STATE(51), 11, + sym__statement, + sym_block_statement, + sym_expression_statement, + sym_if_statement, + sym_for_statement, + sym_while_statement, + sym_return_statement, + sym_signal_declaration_statement, + sym_variable_declaration_statement, + sym_component_declaration_statement, + aux_sym_template_body_repeat1, + [3427] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(166), 1, + anon_sym_LBRACE, + ACTIONS(170), 1, + anon_sym_LPAREN, + ACTIONS(172), 1, + anon_sym_component, + ACTIONS(174), 1, + anon_sym_LBRACK, + ACTIONS(176), 1, + anon_sym_if, + ACTIONS(178), 1, + anon_sym_for, + ACTIONS(180), 1, + anon_sym_while, + ACTIONS(182), 1, + anon_sym_return, + ACTIONS(184), 1, + anon_sym_signal, + ACTIONS(186), 1, + anon_sym_var, + ACTIONS(192), 1, + sym_identifier, + ACTIONS(194), 1, + sym_int_literal, + ACTIONS(196), 1, + sym_parallel, + ACTIONS(210), 1, + anon_sym_RBRACE, + ACTIONS(188), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(190), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(7), 2, + sym_member_expression, + sym_array_access_expression, + STATE(43), 11, + sym__expression, + sym_array_expression, + sym_tuple_expression, + sym_assignment_expression, + sym_increment_expression, + sym_decrement_expression, + sym_call_expression, + sym_parenthesized_expression, + sym_ternary_expression, + sym_unary_expression, + sym_binary_expression, + STATE(56), 11, + sym__statement, + sym_block_statement, + sym_expression_statement, + sym_if_statement, + sym_for_statement, + sym_while_statement, + sym_return_statement, + sym_signal_declaration_statement, + sym_variable_declaration_statement, + sym_component_declaration_statement, + aux_sym_template_body_repeat1, + [3511] = 16, ACTIONS(3), 1, sym_comment, - ACTIONS(60), 1, - anon_sym_STAR_STAR, - ACTIONS(62), 1, + ACTIONS(90), 1, anon_sym_EQ, - ACTIONS(70), 1, + ACTIONS(96), 1, anon_sym_AMP_AMP, - ACTIONS(72), 1, + ACTIONS(98), 1, anon_sym_AMP, - ACTIONS(74), 1, + ACTIONS(100), 1, anon_sym_PIPE_PIPE, - ACTIONS(134), 1, + ACTIONS(106), 1, + anon_sym_STAR_STAR, + ACTIONS(130), 1, anon_sym_LBRACK, - ACTIONS(140), 1, + ACTIONS(132), 1, anon_sym_DOT, - ACTIONS(142), 1, + ACTIONS(134), 1, anon_sym_QMARK, - ACTIONS(263), 1, + ACTIONS(212), 1, anon_sym_RPAREN, - ACTIONS(68), 2, + ACTIONS(94), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(76), 2, + ACTIONS(102), 2, anon_sym_PIPE, anon_sym_CARET, - ACTIONS(82), 2, + ACTIONS(110), 2, anon_sym_BANG_EQ, anon_sym_GT_EQ, - ACTIONS(80), 4, + ACTIONS(108), 4, anon_sym_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_GT, - ACTIONS(78), 6, + ACTIONS(104), 6, anon_sym_GT_GT, anon_sym_LT_LT, anon_sym_STAR, anon_sym_SLASH, anon_sym_BSLASH, anon_sym_PERCENT, - ACTIONS(66), 17, + ACTIONS(92), 17, anon_sym_LT_EQ_EQ, - anon_sym_EQ_EQ_GT, anon_sym_LT_DASH_DASH, + anon_sym_EQ_EQ_GT, anon_sym_DASH_DASH_GT, anon_sym_AMP_EQ, anon_sym_PLUS_EQ, @@ -6483,52 +6658,52 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_GT_EQ, anon_sym_LT_LT_EQ, anon_sym_EQ_EQ_EQ, - [3586] = 16, + [3587] = 16, ACTIONS(3), 1, sym_comment, - ACTIONS(60), 1, - anon_sym_STAR_STAR, - ACTIONS(62), 1, + ACTIONS(90), 1, anon_sym_EQ, - ACTIONS(70), 1, + ACTIONS(96), 1, anon_sym_AMP_AMP, - ACTIONS(72), 1, + ACTIONS(98), 1, anon_sym_AMP, - ACTIONS(74), 1, + ACTIONS(100), 1, anon_sym_PIPE_PIPE, - ACTIONS(134), 1, + ACTIONS(106), 1, + anon_sym_STAR_STAR, + ACTIONS(130), 1, anon_sym_LBRACK, - ACTIONS(140), 1, + ACTIONS(132), 1, anon_sym_DOT, - ACTIONS(142), 1, + ACTIONS(134), 1, anon_sym_QMARK, - ACTIONS(265), 1, + ACTIONS(214), 1, anon_sym_RPAREN, - ACTIONS(68), 2, + ACTIONS(94), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(76), 2, + ACTIONS(102), 2, anon_sym_PIPE, anon_sym_CARET, - ACTIONS(82), 2, + ACTIONS(110), 2, anon_sym_BANG_EQ, anon_sym_GT_EQ, - ACTIONS(80), 4, + ACTIONS(108), 4, anon_sym_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_GT, - ACTIONS(78), 6, + ACTIONS(104), 6, anon_sym_GT_GT, anon_sym_LT_LT, anon_sym_STAR, anon_sym_SLASH, anon_sym_BSLASH, anon_sym_PERCENT, - ACTIONS(66), 17, + ACTIONS(92), 17, anon_sym_LT_EQ_EQ, - anon_sym_EQ_EQ_GT, anon_sym_LT_DASH_DASH, + anon_sym_EQ_EQ_GT, anon_sym_DASH_DASH_GT, anon_sym_AMP_EQ, anon_sym_PLUS_EQ, @@ -6543,112 +6718,180 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_GT_EQ, anon_sym_LT_LT_EQ, anon_sym_EQ_EQ_EQ, - [3662] = 16, + [3663] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(60), 1, - anon_sym_STAR_STAR, - ACTIONS(62), 1, - anon_sym_EQ, - ACTIONS(70), 1, - anon_sym_AMP_AMP, - ACTIONS(72), 1, - anon_sym_AMP, - ACTIONS(74), 1, - anon_sym_PIPE_PIPE, - ACTIONS(134), 1, + ACTIONS(216), 1, + anon_sym_LBRACE, + ACTIONS(219), 1, + anon_sym_RBRACE, + ACTIONS(221), 1, + anon_sym_LPAREN, + ACTIONS(224), 1, + anon_sym_component, + ACTIONS(227), 1, anon_sym_LBRACK, - ACTIONS(140), 1, - anon_sym_DOT, - ACTIONS(142), 1, - anon_sym_QMARK, - ACTIONS(267), 1, - sym__semicolon, - ACTIONS(68), 2, + ACTIONS(230), 1, + anon_sym_if, + ACTIONS(233), 1, + anon_sym_for, + ACTIONS(236), 1, + anon_sym_while, + ACTIONS(239), 1, + anon_sym_return, + ACTIONS(242), 1, + anon_sym_signal, + ACTIONS(245), 1, + anon_sym_var, + ACTIONS(254), 1, + sym_identifier, + ACTIONS(257), 1, + sym_int_literal, + ACTIONS(260), 1, + sym_parallel, + ACTIONS(248), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(251), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(76), 2, - anon_sym_PIPE, - anon_sym_CARET, - ACTIONS(82), 2, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - ACTIONS(80), 4, - anon_sym_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_GT, - ACTIONS(78), 6, - anon_sym_GT_GT, - anon_sym_LT_LT, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_BSLASH, - anon_sym_PERCENT, - ACTIONS(66), 17, - anon_sym_LT_EQ_EQ, - anon_sym_EQ_EQ_GT, - anon_sym_LT_DASH_DASH, - anon_sym_DASH_DASH_GT, - anon_sym_AMP_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_BSLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_PIPE_EQ, - anon_sym_CARET_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_EQ_EQ_EQ, - [3738] = 16, + STATE(7), 2, + sym_member_expression, + sym_array_access_expression, + STATE(43), 11, + sym__expression, + sym_array_expression, + sym_tuple_expression, + sym_assignment_expression, + sym_increment_expression, + sym_decrement_expression, + sym_call_expression, + sym_parenthesized_expression, + sym_ternary_expression, + sym_unary_expression, + sym_binary_expression, + STATE(56), 11, + sym__statement, + sym_block_statement, + sym_expression_statement, + sym_if_statement, + sym_for_statement, + sym_while_statement, + sym_return_statement, + sym_signal_declaration_statement, + sym_variable_declaration_statement, + sym_component_declaration_statement, + aux_sym_template_body_repeat1, + [3747] = 20, ACTIONS(3), 1, sym_comment, - ACTIONS(60), 1, - anon_sym_STAR_STAR, - ACTIONS(62), 1, + ACTIONS(166), 1, + anon_sym_LBRACE, + ACTIONS(170), 1, + anon_sym_LPAREN, + ACTIONS(172), 1, + anon_sym_component, + ACTIONS(174), 1, + anon_sym_LBRACK, + ACTIONS(176), 1, + anon_sym_if, + ACTIONS(178), 1, + anon_sym_for, + ACTIONS(180), 1, + anon_sym_while, + ACTIONS(182), 1, + anon_sym_return, + ACTIONS(184), 1, + anon_sym_signal, + ACTIONS(186), 1, + anon_sym_var, + ACTIONS(192), 1, + sym_identifier, + ACTIONS(194), 1, + sym_int_literal, + ACTIONS(196), 1, + sym_parallel, + ACTIONS(263), 1, + anon_sym_RBRACE, + ACTIONS(188), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(190), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(7), 2, + sym_member_expression, + sym_array_access_expression, + STATE(43), 11, + sym__expression, + sym_array_expression, + sym_tuple_expression, + sym_assignment_expression, + sym_increment_expression, + sym_decrement_expression, + sym_call_expression, + sym_parenthesized_expression, + sym_ternary_expression, + sym_unary_expression, + sym_binary_expression, + STATE(56), 11, + sym__statement, + sym_block_statement, + sym_expression_statement, + sym_if_statement, + sym_for_statement, + sym_while_statement, + sym_return_statement, + sym_signal_declaration_statement, + sym_variable_declaration_statement, + sym_component_declaration_statement, + aux_sym_template_body_repeat1, + [3831] = 16, + ACTIONS(3), 1, + sym_comment, + ACTIONS(90), 1, anon_sym_EQ, - ACTIONS(70), 1, + ACTIONS(96), 1, anon_sym_AMP_AMP, - ACTIONS(72), 1, + ACTIONS(98), 1, anon_sym_AMP, - ACTIONS(74), 1, + ACTIONS(100), 1, anon_sym_PIPE_PIPE, - ACTIONS(134), 1, + ACTIONS(106), 1, + anon_sym_STAR_STAR, + ACTIONS(130), 1, anon_sym_LBRACK, - ACTIONS(140), 1, + ACTIONS(132), 1, anon_sym_DOT, - ACTIONS(142), 1, + ACTIONS(134), 1, anon_sym_QMARK, - ACTIONS(269), 1, - anon_sym_RPAREN, - ACTIONS(68), 2, + ACTIONS(265), 1, + anon_sym_RBRACK, + ACTIONS(94), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(76), 2, + ACTIONS(102), 2, anon_sym_PIPE, anon_sym_CARET, - ACTIONS(82), 2, + ACTIONS(110), 2, anon_sym_BANG_EQ, anon_sym_GT_EQ, - ACTIONS(80), 4, + ACTIONS(108), 4, anon_sym_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_GT, - ACTIONS(78), 6, + ACTIONS(104), 6, anon_sym_GT_GT, anon_sym_LT_LT, anon_sym_STAR, anon_sym_SLASH, anon_sym_BSLASH, anon_sym_PERCENT, - ACTIONS(66), 17, + ACTIONS(92), 17, anon_sym_LT_EQ_EQ, - anon_sym_EQ_EQ_GT, anon_sym_LT_DASH_DASH, + anon_sym_EQ_EQ_GT, anon_sym_DASH_DASH_GT, anon_sym_AMP_EQ, anon_sym_PLUS_EQ, @@ -6663,52 +6906,180 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_GT_EQ, anon_sym_LT_LT_EQ, anon_sym_EQ_EQ_EQ, - [3814] = 16, + [3907] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(166), 1, + anon_sym_LBRACE, + ACTIONS(170), 1, + anon_sym_LPAREN, + ACTIONS(172), 1, + anon_sym_component, + ACTIONS(174), 1, + anon_sym_LBRACK, + ACTIONS(176), 1, + anon_sym_if, + ACTIONS(178), 1, + anon_sym_for, + ACTIONS(180), 1, + anon_sym_while, + ACTIONS(182), 1, + anon_sym_return, + ACTIONS(184), 1, + anon_sym_signal, + ACTIONS(186), 1, + anon_sym_var, + ACTIONS(192), 1, + sym_identifier, + ACTIONS(194), 1, + sym_int_literal, + ACTIONS(196), 1, + sym_parallel, + ACTIONS(267), 1, + anon_sym_RBRACE, + ACTIONS(188), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(190), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(7), 2, + sym_member_expression, + sym_array_access_expression, + STATE(43), 11, + sym__expression, + sym_array_expression, + sym_tuple_expression, + sym_assignment_expression, + sym_increment_expression, + sym_decrement_expression, + sym_call_expression, + sym_parenthesized_expression, + sym_ternary_expression, + sym_unary_expression, + sym_binary_expression, + STATE(57), 11, + sym__statement, + sym_block_statement, + sym_expression_statement, + sym_if_statement, + sym_for_statement, + sym_while_statement, + sym_return_statement, + sym_signal_declaration_statement, + sym_variable_declaration_statement, + sym_component_declaration_statement, + aux_sym_template_body_repeat1, + [3991] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(166), 1, + anon_sym_LBRACE, + ACTIONS(170), 1, + anon_sym_LPAREN, + ACTIONS(172), 1, + anon_sym_component, + ACTIONS(174), 1, + anon_sym_LBRACK, + ACTIONS(176), 1, + anon_sym_if, + ACTIONS(178), 1, + anon_sym_for, + ACTIONS(180), 1, + anon_sym_while, + ACTIONS(182), 1, + anon_sym_return, + ACTIONS(184), 1, + anon_sym_signal, + ACTIONS(186), 1, + anon_sym_var, + ACTIONS(192), 1, + sym_identifier, + ACTIONS(194), 1, + sym_int_literal, + ACTIONS(196), 1, + sym_parallel, + ACTIONS(269), 1, + anon_sym_RBRACE, + ACTIONS(188), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(190), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(7), 2, + sym_member_expression, + sym_array_access_expression, + STATE(43), 11, + sym__expression, + sym_array_expression, + sym_tuple_expression, + sym_assignment_expression, + sym_increment_expression, + sym_decrement_expression, + sym_call_expression, + sym_parenthesized_expression, + sym_ternary_expression, + sym_unary_expression, + sym_binary_expression, + STATE(56), 11, + sym__statement, + sym_block_statement, + sym_expression_statement, + sym_if_statement, + sym_for_statement, + sym_while_statement, + sym_return_statement, + sym_signal_declaration_statement, + sym_variable_declaration_statement, + sym_component_declaration_statement, + aux_sym_template_body_repeat1, + [4075] = 16, ACTIONS(3), 1, sym_comment, - ACTIONS(60), 1, - anon_sym_STAR_STAR, - ACTIONS(62), 1, + ACTIONS(90), 1, anon_sym_EQ, - ACTIONS(70), 1, + ACTIONS(96), 1, anon_sym_AMP_AMP, - ACTIONS(72), 1, + ACTIONS(98), 1, anon_sym_AMP, - ACTIONS(74), 1, + ACTIONS(100), 1, anon_sym_PIPE_PIPE, - ACTIONS(134), 1, + ACTIONS(106), 1, + anon_sym_STAR_STAR, + ACTIONS(130), 1, anon_sym_LBRACK, - ACTIONS(140), 1, + ACTIONS(132), 1, anon_sym_DOT, - ACTIONS(142), 1, + ACTIONS(134), 1, anon_sym_QMARK, ACTIONS(271), 1, - anon_sym_RBRACK, - ACTIONS(68), 2, + anon_sym_RPAREN, + ACTIONS(94), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(76), 2, + ACTIONS(102), 2, anon_sym_PIPE, anon_sym_CARET, - ACTIONS(82), 2, + ACTIONS(110), 2, anon_sym_BANG_EQ, anon_sym_GT_EQ, - ACTIONS(80), 4, + ACTIONS(108), 4, anon_sym_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_GT, - ACTIONS(78), 6, + ACTIONS(104), 6, anon_sym_GT_GT, anon_sym_LT_LT, anon_sym_STAR, anon_sym_SLASH, anon_sym_BSLASH, anon_sym_PERCENT, - ACTIONS(66), 17, + ACTIONS(92), 17, anon_sym_LT_EQ_EQ, - anon_sym_EQ_EQ_GT, anon_sym_LT_DASH_DASH, + anon_sym_EQ_EQ_GT, anon_sym_DASH_DASH_GT, anon_sym_AMP_EQ, anon_sym_PLUS_EQ, @@ -6723,52 +7094,52 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_GT_EQ, anon_sym_LT_LT_EQ, anon_sym_EQ_EQ_EQ, - [3890] = 16, + [4151] = 16, ACTIONS(3), 1, sym_comment, - ACTIONS(60), 1, - anon_sym_STAR_STAR, - ACTIONS(62), 1, + ACTIONS(90), 1, anon_sym_EQ, - ACTIONS(70), 1, + ACTIONS(96), 1, anon_sym_AMP_AMP, - ACTIONS(72), 1, + ACTIONS(98), 1, anon_sym_AMP, - ACTIONS(74), 1, + ACTIONS(100), 1, anon_sym_PIPE_PIPE, - ACTIONS(134), 1, + ACTIONS(106), 1, + anon_sym_STAR_STAR, + ACTIONS(130), 1, anon_sym_LBRACK, - ACTIONS(140), 1, + ACTIONS(132), 1, anon_sym_DOT, - ACTIONS(142), 1, + ACTIONS(134), 1, anon_sym_QMARK, ACTIONS(273), 1, - sym__semicolon, - ACTIONS(68), 2, + anon_sym_RPAREN, + ACTIONS(94), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(76), 2, + ACTIONS(102), 2, anon_sym_PIPE, anon_sym_CARET, - ACTIONS(82), 2, + ACTIONS(110), 2, anon_sym_BANG_EQ, anon_sym_GT_EQ, - ACTIONS(80), 4, + ACTIONS(108), 4, anon_sym_LT, anon_sym_LT_EQ, anon_sym_EQ_EQ, anon_sym_GT, - ACTIONS(78), 6, + ACTIONS(104), 6, anon_sym_GT_GT, anon_sym_LT_LT, anon_sym_STAR, anon_sym_SLASH, anon_sym_BSLASH, anon_sym_PERCENT, - ACTIONS(66), 17, + ACTIONS(92), 17, anon_sym_LT_EQ_EQ, - anon_sym_EQ_EQ_GT, anon_sym_LT_DASH_DASH, + anon_sym_EQ_EQ_GT, anon_sym_DASH_DASH_GT, anon_sym_AMP_EQ, anon_sym_PLUS_EQ, @@ -6783,289 +7154,350 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_GT_EQ, anon_sym_LT_LT_EQ, anon_sym_EQ_EQ_EQ, - [3966] = 16, + [4227] = 19, ACTIONS(3), 1, sym_comment, - ACTIONS(60), 1, - anon_sym_STAR_STAR, - ACTIONS(62), 1, - anon_sym_EQ, - ACTIONS(70), 1, - anon_sym_AMP_AMP, - ACTIONS(72), 1, - anon_sym_AMP, - ACTIONS(74), 1, - anon_sym_PIPE_PIPE, - ACTIONS(134), 1, + ACTIONS(170), 1, + anon_sym_LPAREN, + ACTIONS(174), 1, anon_sym_LBRACK, - ACTIONS(140), 1, - anon_sym_DOT, - ACTIONS(142), 1, - anon_sym_QMARK, + ACTIONS(192), 1, + sym_identifier, + ACTIONS(196), 1, + sym_parallel, ACTIONS(275), 1, - sym__semicolon, - ACTIONS(68), 2, + anon_sym_LBRACE, + ACTIONS(277), 1, + anon_sym_component, + ACTIONS(279), 1, + anon_sym_if, + ACTIONS(281), 1, + anon_sym_for, + ACTIONS(283), 1, + anon_sym_while, + ACTIONS(285), 1, + anon_sym_return, + ACTIONS(287), 1, + anon_sym_signal, + ACTIONS(289), 1, + anon_sym_var, + ACTIONS(291), 1, + sym_int_literal, + ACTIONS(188), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(190), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(76), 2, - anon_sym_PIPE, - anon_sym_CARET, - ACTIONS(82), 2, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - ACTIONS(80), 4, - anon_sym_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_GT, - ACTIONS(78), 6, - anon_sym_GT_GT, - anon_sym_LT_LT, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_BSLASH, - anon_sym_PERCENT, - ACTIONS(66), 17, - anon_sym_LT_EQ_EQ, - anon_sym_EQ_EQ_GT, - anon_sym_LT_DASH_DASH, - anon_sym_DASH_DASH_GT, - anon_sym_AMP_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_BSLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_PIPE_EQ, - anon_sym_CARET_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_EQ_EQ_EQ, - [4042] = 16, + STATE(7), 2, + sym_member_expression, + sym_array_access_expression, + STATE(118), 10, + sym__statement, + sym_block_statement, + sym_expression_statement, + sym_if_statement, + sym_for_statement, + sym_while_statement, + sym_return_statement, + sym_signal_declaration_statement, + sym_variable_declaration_statement, + sym_component_declaration_statement, + STATE(37), 11, + sym__expression, + sym_array_expression, + sym_tuple_expression, + sym_assignment_expression, + sym_increment_expression, + sym_decrement_expression, + sym_call_expression, + sym_parenthesized_expression, + sym_ternary_expression, + sym_unary_expression, + sym_binary_expression, + [4307] = 19, ACTIONS(3), 1, sym_comment, - ACTIONS(60), 1, - anon_sym_STAR_STAR, - ACTIONS(62), 1, - anon_sym_EQ, - ACTIONS(70), 1, - anon_sym_AMP_AMP, - ACTIONS(72), 1, - anon_sym_AMP, - ACTIONS(74), 1, - anon_sym_PIPE_PIPE, - ACTIONS(134), 1, + ACTIONS(166), 1, + anon_sym_LBRACE, + ACTIONS(170), 1, + anon_sym_LPAREN, + ACTIONS(172), 1, + anon_sym_component, + ACTIONS(174), 1, anon_sym_LBRACK, - ACTIONS(140), 1, - anon_sym_DOT, - ACTIONS(142), 1, - anon_sym_QMARK, - ACTIONS(277), 1, - sym__semicolon, - ACTIONS(68), 2, + ACTIONS(176), 1, + anon_sym_if, + ACTIONS(178), 1, + anon_sym_for, + ACTIONS(180), 1, + anon_sym_while, + ACTIONS(182), 1, + anon_sym_return, + ACTIONS(184), 1, + anon_sym_signal, + ACTIONS(186), 1, + anon_sym_var, + ACTIONS(192), 1, + sym_identifier, + ACTIONS(194), 1, + sym_int_literal, + ACTIONS(196), 1, + sym_parallel, + ACTIONS(188), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(190), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(76), 2, - anon_sym_PIPE, - anon_sym_CARET, - ACTIONS(82), 2, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - ACTIONS(80), 4, - anon_sym_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_GT, - ACTIONS(78), 6, - anon_sym_GT_GT, - anon_sym_LT_LT, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_BSLASH, - anon_sym_PERCENT, - ACTIONS(66), 17, - anon_sym_LT_EQ_EQ, - anon_sym_EQ_EQ_GT, - anon_sym_LT_DASH_DASH, - anon_sym_DASH_DASH_GT, - anon_sym_AMP_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_BSLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_PIPE_EQ, - anon_sym_CARET_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_EQ_EQ_EQ, - [4118] = 16, + STATE(7), 2, + sym_member_expression, + sym_array_access_expression, + STATE(135), 10, + sym__statement, + sym_block_statement, + sym_expression_statement, + sym_if_statement, + sym_for_statement, + sym_while_statement, + sym_return_statement, + sym_signal_declaration_statement, + sym_variable_declaration_statement, + sym_component_declaration_statement, + STATE(43), 11, + sym__expression, + sym_array_expression, + sym_tuple_expression, + sym_assignment_expression, + sym_increment_expression, + sym_decrement_expression, + sym_call_expression, + sym_parenthesized_expression, + sym_ternary_expression, + sym_unary_expression, + sym_binary_expression, + [4387] = 19, + ACTIONS(3), 1, + sym_comment, + ACTIONS(166), 1, + anon_sym_LBRACE, + ACTIONS(170), 1, + anon_sym_LPAREN, + ACTIONS(172), 1, + anon_sym_component, + ACTIONS(174), 1, + anon_sym_LBRACK, + ACTIONS(176), 1, + anon_sym_if, + ACTIONS(178), 1, + anon_sym_for, + ACTIONS(180), 1, + anon_sym_while, + ACTIONS(182), 1, + anon_sym_return, + ACTIONS(184), 1, + anon_sym_signal, + ACTIONS(186), 1, + anon_sym_var, + ACTIONS(192), 1, + sym_identifier, + ACTIONS(194), 1, + sym_int_literal, + ACTIONS(196), 1, + sym_parallel, + ACTIONS(188), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(190), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(7), 2, + sym_member_expression, + sym_array_access_expression, + STATE(143), 10, + sym__statement, + sym_block_statement, + sym_expression_statement, + sym_if_statement, + sym_for_statement, + sym_while_statement, + sym_return_statement, + sym_signal_declaration_statement, + sym_variable_declaration_statement, + sym_component_declaration_statement, + STATE(43), 11, + sym__expression, + sym_array_expression, + sym_tuple_expression, + sym_assignment_expression, + sym_increment_expression, + sym_decrement_expression, + sym_call_expression, + sym_parenthesized_expression, + sym_ternary_expression, + sym_unary_expression, + sym_binary_expression, + [4467] = 19, ACTIONS(3), 1, sym_comment, - ACTIONS(60), 1, - anon_sym_STAR_STAR, - ACTIONS(62), 1, - anon_sym_EQ, - ACTIONS(70), 1, - anon_sym_AMP_AMP, - ACTIONS(72), 1, - anon_sym_AMP, - ACTIONS(74), 1, - anon_sym_PIPE_PIPE, - ACTIONS(134), 1, + ACTIONS(170), 1, + anon_sym_LPAREN, + ACTIONS(174), 1, anon_sym_LBRACK, - ACTIONS(140), 1, - anon_sym_DOT, - ACTIONS(142), 1, - anon_sym_QMARK, + ACTIONS(192), 1, + sym_identifier, + ACTIONS(196), 1, + sym_parallel, + ACTIONS(275), 1, + anon_sym_LBRACE, + ACTIONS(277), 1, + anon_sym_component, ACTIONS(279), 1, - sym__semicolon, - ACTIONS(68), 2, + anon_sym_if, + ACTIONS(281), 1, + anon_sym_for, + ACTIONS(283), 1, + anon_sym_while, + ACTIONS(285), 1, + anon_sym_return, + ACTIONS(287), 1, + anon_sym_signal, + ACTIONS(289), 1, + anon_sym_var, + ACTIONS(291), 1, + sym_int_literal, + ACTIONS(188), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(190), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(76), 2, - anon_sym_PIPE, - anon_sym_CARET, - ACTIONS(82), 2, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - ACTIONS(80), 4, - anon_sym_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_GT, - ACTIONS(78), 6, - anon_sym_GT_GT, - anon_sym_LT_LT, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_BSLASH, - anon_sym_PERCENT, - ACTIONS(66), 17, - anon_sym_LT_EQ_EQ, - anon_sym_EQ_EQ_GT, - anon_sym_LT_DASH_DASH, - anon_sym_DASH_DASH_GT, - anon_sym_AMP_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_BSLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_PIPE_EQ, - anon_sym_CARET_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_EQ_EQ_EQ, - [4194] = 16, + STATE(7), 2, + sym_member_expression, + sym_array_access_expression, + STATE(124), 10, + sym__statement, + sym_block_statement, + sym_expression_statement, + sym_if_statement, + sym_for_statement, + sym_while_statement, + sym_return_statement, + sym_signal_declaration_statement, + sym_variable_declaration_statement, + sym_component_declaration_statement, + STATE(37), 11, + sym__expression, + sym_array_expression, + sym_tuple_expression, + sym_assignment_expression, + sym_increment_expression, + sym_decrement_expression, + sym_call_expression, + sym_parenthesized_expression, + sym_ternary_expression, + sym_unary_expression, + sym_binary_expression, + [4547] = 19, ACTIONS(3), 1, sym_comment, - ACTIONS(60), 1, - anon_sym_STAR_STAR, - ACTIONS(62), 1, - anon_sym_EQ, - ACTIONS(70), 1, - anon_sym_AMP_AMP, - ACTIONS(72), 1, - anon_sym_AMP, - ACTIONS(74), 1, - anon_sym_PIPE_PIPE, - ACTIONS(134), 1, + ACTIONS(170), 1, + anon_sym_LPAREN, + ACTIONS(174), 1, anon_sym_LBRACK, - ACTIONS(140), 1, - anon_sym_DOT, - ACTIONS(142), 1, - anon_sym_QMARK, + ACTIONS(192), 1, + sym_identifier, + ACTIONS(196), 1, + sym_parallel, + ACTIONS(275), 1, + anon_sym_LBRACE, + ACTIONS(277), 1, + anon_sym_component, + ACTIONS(279), 1, + anon_sym_if, ACTIONS(281), 1, - anon_sym_RPAREN, - ACTIONS(68), 2, + anon_sym_for, + ACTIONS(283), 1, + anon_sym_while, + ACTIONS(285), 1, + anon_sym_return, + ACTIONS(287), 1, + anon_sym_signal, + ACTIONS(289), 1, + anon_sym_var, + ACTIONS(291), 1, + sym_int_literal, + ACTIONS(188), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(190), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(76), 2, - anon_sym_PIPE, - anon_sym_CARET, - ACTIONS(82), 2, - anon_sym_BANG_EQ, - anon_sym_GT_EQ, - ACTIONS(80), 4, - anon_sym_LT, - anon_sym_LT_EQ, - anon_sym_EQ_EQ, - anon_sym_GT, - ACTIONS(78), 6, - anon_sym_GT_GT, - anon_sym_LT_LT, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_BSLASH, - anon_sym_PERCENT, - ACTIONS(66), 17, - anon_sym_LT_EQ_EQ, - anon_sym_EQ_EQ_GT, - anon_sym_LT_DASH_DASH, - anon_sym_DASH_DASH_GT, - anon_sym_AMP_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_STAR_EQ, - anon_sym_STAR_STAR_EQ, - anon_sym_SLASH_EQ, - anon_sym_BSLASH_EQ, - anon_sym_PERCENT_EQ, - anon_sym_PIPE_EQ, - anon_sym_CARET_EQ, - anon_sym_GT_GT_EQ, - anon_sym_LT_LT_EQ, - anon_sym_EQ_EQ_EQ, - [4270] = 20, + STATE(7), 2, + sym_member_expression, + sym_array_access_expression, + STATE(116), 10, + sym__statement, + sym_block_statement, + sym_expression_statement, + sym_if_statement, + sym_for_statement, + sym_while_statement, + sym_return_statement, + sym_signal_declaration_statement, + sym_variable_declaration_statement, + sym_component_declaration_statement, + STATE(37), 11, + sym__expression, + sym_array_expression, + sym_tuple_expression, + sym_assignment_expression, + sym_increment_expression, + sym_decrement_expression, + sym_call_expression, + sym_parenthesized_expression, + sym_ternary_expression, + sym_unary_expression, + sym_binary_expression, + [4627] = 19, ACTIONS(3), 1, sym_comment, - ACTIONS(154), 1, - sym_parallel, - ACTIONS(156), 1, + ACTIONS(166), 1, anon_sym_LBRACE, - ACTIONS(160), 1, + ACTIONS(170), 1, + anon_sym_LPAREN, + ACTIONS(172), 1, anon_sym_component, - ACTIONS(162), 1, + ACTIONS(174), 1, anon_sym_LBRACK, - ACTIONS(164), 1, + ACTIONS(176), 1, anon_sym_if, - ACTIONS(166), 1, - anon_sym_LPAREN, - ACTIONS(168), 1, - anon_sym_for, - ACTIONS(170), 1, - anon_sym_while, - ACTIONS(172), 1, - anon_sym_return, ACTIONS(178), 1, - sym_identifier, + anon_sym_for, ACTIONS(180), 1, - sym_int, + anon_sym_while, ACTIONS(182), 1, - sym_var, + anon_sym_return, ACTIONS(184), 1, anon_sym_signal, - ACTIONS(174), 2, + ACTIONS(186), 1, + anon_sym_var, + ACTIONS(192), 1, + sym_identifier, + ACTIONS(194), 1, + sym_int_literal, + ACTIONS(196), 1, + sym_parallel, + ACTIONS(188), 2, anon_sym_BANG, anon_sym_TILDE, - ACTIONS(176), 2, + ACTIONS(190), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(4), 2, + STATE(7), 2, sym_member_expression, sym_array_access_expression, - STATE(224), 3, - sym__type, - sym_component, - sym_signal, - STATE(130), 8, + STATE(138), 10, sym__statement, sym_block_statement, sym_expression_statement, @@ -7073,9 +7505,13 @@ static const uint16_t ts_small_parse_table[] = { sym_for_statement, sym_while_statement, sym_return_statement, + sym_signal_declaration_statement, sym_variable_declaration_statement, - STATE(61), 11, + sym_component_declaration_statement, + STATE(43), 11, sym__expression, + sym_array_expression, + sym_tuple_expression, sym_assignment_expression, sym_increment_expression, sym_decrement_expression, @@ -7084,51 +7520,106 @@ static const uint16_t ts_small_parse_table[] = { sym_ternary_expression, sym_unary_expression, sym_binary_expression, - sym_array, - sym_tuple, - [4353] = 20, + [4707] = 19, ACTIONS(3), 1, sym_comment, - ACTIONS(154), 1, - sym_parallel, - ACTIONS(160), 1, - anon_sym_component, - ACTIONS(162), 1, - anon_sym_LBRACK, - ACTIONS(166), 1, + ACTIONS(170), 1, anon_sym_LPAREN, - ACTIONS(178), 1, + ACTIONS(174), 1, + anon_sym_LBRACK, + ACTIONS(192), 1, sym_identifier, - ACTIONS(184), 1, - anon_sym_signal, - ACTIONS(283), 1, + ACTIONS(196), 1, + sym_parallel, + ACTIONS(275), 1, anon_sym_LBRACE, - ACTIONS(285), 1, + ACTIONS(277), 1, + anon_sym_component, + ACTIONS(279), 1, anon_sym_if, - ACTIONS(287), 1, + ACTIONS(281), 1, anon_sym_for, + ACTIONS(283), 1, + anon_sym_while, + ACTIONS(285), 1, + anon_sym_return, + ACTIONS(287), 1, + anon_sym_signal, ACTIONS(289), 1, + anon_sym_var, + ACTIONS(291), 1, + sym_int_literal, + ACTIONS(188), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(190), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(7), 2, + sym_member_expression, + sym_array_access_expression, + STATE(115), 10, + sym__statement, + sym_block_statement, + sym_expression_statement, + sym_if_statement, + sym_for_statement, + sym_while_statement, + sym_return_statement, + sym_signal_declaration_statement, + sym_variable_declaration_statement, + sym_component_declaration_statement, + STATE(37), 11, + sym__expression, + sym_array_expression, + sym_tuple_expression, + sym_assignment_expression, + sym_increment_expression, + sym_decrement_expression, + sym_call_expression, + sym_parenthesized_expression, + sym_ternary_expression, + sym_unary_expression, + sym_binary_expression, + [4787] = 19, + ACTIONS(3), 1, + sym_comment, + ACTIONS(166), 1, + anon_sym_LBRACE, + ACTIONS(170), 1, + anon_sym_LPAREN, + ACTIONS(172), 1, + anon_sym_component, + ACTIONS(174), 1, + anon_sym_LBRACK, + ACTIONS(176), 1, + anon_sym_if, + ACTIONS(178), 1, + anon_sym_for, + ACTIONS(180), 1, anon_sym_while, - ACTIONS(291), 1, + ACTIONS(182), 1, anon_sym_return, - ACTIONS(293), 1, - sym_int, - ACTIONS(295), 1, - sym_var, - ACTIONS(174), 2, + ACTIONS(184), 1, + anon_sym_signal, + ACTIONS(186), 1, + anon_sym_var, + ACTIONS(192), 1, + sym_identifier, + ACTIONS(194), 1, + sym_int_literal, + ACTIONS(196), 1, + sym_parallel, + ACTIONS(188), 2, anon_sym_BANG, anon_sym_TILDE, - ACTIONS(176), 2, + ACTIONS(190), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(4), 2, + STATE(7), 2, sym_member_expression, sym_array_access_expression, - STATE(216), 3, - sym__type, - sym_component, - sym_signal, - STATE(121), 8, + STATE(148), 10, sym__statement, sym_block_statement, sym_expression_statement, @@ -7136,9 +7627,13 @@ static const uint16_t ts_small_parse_table[] = { sym_for_statement, sym_while_statement, sym_return_statement, + sym_signal_declaration_statement, sym_variable_declaration_statement, - STATE(56), 11, + sym_component_declaration_statement, + STATE(43), 11, sym__expression, + sym_array_expression, + sym_tuple_expression, sym_assignment_expression, sym_increment_expression, sym_decrement_expression, @@ -7147,51 +7642,45 @@ static const uint16_t ts_small_parse_table[] = { sym_ternary_expression, sym_unary_expression, sym_binary_expression, - sym_array, - sym_tuple, - [4436] = 20, + [4867] = 19, ACTIONS(3), 1, sym_comment, - ACTIONS(154), 1, - sym_parallel, - ACTIONS(160), 1, - anon_sym_component, - ACTIONS(162), 1, - anon_sym_LBRACK, - ACTIONS(166), 1, + ACTIONS(170), 1, anon_sym_LPAREN, - ACTIONS(178), 1, + ACTIONS(174), 1, + anon_sym_LBRACK, + ACTIONS(192), 1, sym_identifier, - ACTIONS(184), 1, - anon_sym_signal, - ACTIONS(283), 1, + ACTIONS(196), 1, + sym_parallel, + ACTIONS(275), 1, anon_sym_LBRACE, - ACTIONS(285), 1, + ACTIONS(277), 1, + anon_sym_component, + ACTIONS(279), 1, anon_sym_if, - ACTIONS(287), 1, + ACTIONS(281), 1, anon_sym_for, - ACTIONS(289), 1, + ACTIONS(283), 1, anon_sym_while, - ACTIONS(291), 1, + ACTIONS(285), 1, anon_sym_return, - ACTIONS(293), 1, - sym_int, - ACTIONS(295), 1, - sym_var, - ACTIONS(174), 2, + ACTIONS(287), 1, + anon_sym_signal, + ACTIONS(289), 1, + anon_sym_var, + ACTIONS(291), 1, + sym_int_literal, + ACTIONS(188), 2, anon_sym_BANG, anon_sym_TILDE, - ACTIONS(176), 2, + ACTIONS(190), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(4), 2, + STATE(7), 2, sym_member_expression, sym_array_access_expression, - STATE(216), 3, - sym__type, - sym_component, - sym_signal, - STATE(118), 8, + STATE(121), 10, sym__statement, sym_block_statement, sym_expression_statement, @@ -7199,9 +7688,13 @@ static const uint16_t ts_small_parse_table[] = { sym_for_statement, sym_while_statement, sym_return_statement, + sym_signal_declaration_statement, sym_variable_declaration_statement, - STATE(56), 11, + sym_component_declaration_statement, + STATE(37), 11, sym__expression, + sym_array_expression, + sym_tuple_expression, sym_assignment_expression, sym_increment_expression, sym_decrement_expression, @@ -7210,51 +7703,45 @@ static const uint16_t ts_small_parse_table[] = { sym_ternary_expression, sym_unary_expression, sym_binary_expression, - sym_array, - sym_tuple, - [4519] = 20, + [4947] = 19, ACTIONS(3), 1, sym_comment, - ACTIONS(154), 1, - sym_parallel, - ACTIONS(160), 1, - anon_sym_component, - ACTIONS(162), 1, - anon_sym_LBRACK, - ACTIONS(166), 1, + ACTIONS(170), 1, anon_sym_LPAREN, - ACTIONS(178), 1, + ACTIONS(174), 1, + anon_sym_LBRACK, + ACTIONS(192), 1, sym_identifier, - ACTIONS(184), 1, - anon_sym_signal, - ACTIONS(283), 1, + ACTIONS(196), 1, + sym_parallel, + ACTIONS(275), 1, anon_sym_LBRACE, - ACTIONS(285), 1, + ACTIONS(277), 1, + anon_sym_component, + ACTIONS(279), 1, anon_sym_if, - ACTIONS(287), 1, + ACTIONS(281), 1, anon_sym_for, - ACTIONS(289), 1, + ACTIONS(283), 1, anon_sym_while, - ACTIONS(291), 1, + ACTIONS(285), 1, anon_sym_return, - ACTIONS(293), 1, - sym_int, - ACTIONS(295), 1, - sym_var, - ACTIONS(174), 2, + ACTIONS(287), 1, + anon_sym_signal, + ACTIONS(289), 1, + anon_sym_var, + ACTIONS(291), 1, + sym_int_literal, + ACTIONS(188), 2, anon_sym_BANG, anon_sym_TILDE, - ACTIONS(176), 2, + ACTIONS(190), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(4), 2, + STATE(7), 2, sym_member_expression, sym_array_access_expression, - STATE(216), 3, - sym__type, - sym_component, - sym_signal, - STATE(119), 8, + STATE(111), 10, sym__statement, sym_block_statement, sym_expression_statement, @@ -7262,9 +7749,13 @@ static const uint16_t ts_small_parse_table[] = { sym_for_statement, sym_while_statement, sym_return_statement, + sym_signal_declaration_statement, sym_variable_declaration_statement, - STATE(56), 11, + sym_component_declaration_statement, + STATE(37), 11, sym__expression, + sym_array_expression, + sym_tuple_expression, sym_assignment_expression, sym_increment_expression, sym_decrement_expression, @@ -7273,61 +7764,40 @@ static const uint16_t ts_small_parse_table[] = { sym_ternary_expression, sym_unary_expression, sym_binary_expression, - sym_array, - sym_tuple, - [4602] = 20, + [5027] = 13, ACTIONS(3), 1, sym_comment, - ACTIONS(154), 1, - sym_parallel, - ACTIONS(160), 1, - anon_sym_component, - ACTIONS(162), 1, - anon_sym_LBRACK, - ACTIONS(166), 1, + ACTIONS(170), 1, anon_sym_LPAREN, - ACTIONS(178), 1, + ACTIONS(174), 1, + anon_sym_LBRACK, + ACTIONS(192), 1, sym_identifier, - ACTIONS(184), 1, - anon_sym_signal, - ACTIONS(283), 1, - anon_sym_LBRACE, - ACTIONS(285), 1, - anon_sym_if, - ACTIONS(287), 1, - anon_sym_for, - ACTIONS(289), 1, - anon_sym_while, - ACTIONS(291), 1, - anon_sym_return, + ACTIONS(196), 1, + sym_parallel, ACTIONS(293), 1, - sym_int, + anon_sym_var, ACTIONS(295), 1, - sym_var, - ACTIONS(174), 2, + anon_sym_SEMI, + ACTIONS(297), 1, + sym_int_literal, + ACTIONS(188), 2, anon_sym_BANG, anon_sym_TILDE, - ACTIONS(176), 2, + ACTIONS(190), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(4), 2, + STATE(7), 2, sym_member_expression, sym_array_access_expression, - STATE(216), 3, - sym__type, - sym_component, - sym_signal, - STATE(122), 8, - sym__statement, - sym_block_statement, + STATE(76), 3, sym_expression_statement, - sym_if_statement, - sym_for_statement, - sym_while_statement, - sym_return_statement, sym_variable_declaration_statement, - STATE(56), 11, + sym__semicolon, + STATE(35), 11, sym__expression, + sym_array_expression, + sym_tuple_expression, sym_assignment_expression, sym_increment_expression, sym_decrement_expression, @@ -7336,61 +7806,40 @@ static const uint16_t ts_small_parse_table[] = { sym_ternary_expression, sym_unary_expression, sym_binary_expression, - sym_array, - sym_tuple, - [4685] = 20, + [5082] = 13, ACTIONS(3), 1, sym_comment, - ACTIONS(154), 1, - sym_parallel, - ACTIONS(156), 1, - anon_sym_LBRACE, - ACTIONS(160), 1, - anon_sym_component, - ACTIONS(162), 1, - anon_sym_LBRACK, - ACTIONS(164), 1, - anon_sym_if, - ACTIONS(166), 1, - anon_sym_LPAREN, - ACTIONS(168), 1, - anon_sym_for, ACTIONS(170), 1, - anon_sym_while, - ACTIONS(172), 1, - anon_sym_return, - ACTIONS(178), 1, + anon_sym_LPAREN, + ACTIONS(174), 1, + anon_sym_LBRACK, + ACTIONS(192), 1, sym_identifier, - ACTIONS(180), 1, - sym_int, - ACTIONS(182), 1, - sym_var, - ACTIONS(184), 1, - anon_sym_signal, - ACTIONS(174), 2, + ACTIONS(196), 1, + sym_parallel, + ACTIONS(293), 1, + anon_sym_var, + ACTIONS(297), 1, + sym_int_literal, + ACTIONS(299), 1, + anon_sym_SEMI, + ACTIONS(188), 2, anon_sym_BANG, anon_sym_TILDE, - ACTIONS(176), 2, + ACTIONS(190), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(4), 2, + STATE(7), 2, sym_member_expression, sym_array_access_expression, - STATE(224), 3, - sym__type, - sym_component, - sym_signal, - STATE(137), 8, - sym__statement, - sym_block_statement, + STATE(75), 3, sym_expression_statement, - sym_if_statement, - sym_for_statement, - sym_while_statement, - sym_return_statement, sym_variable_declaration_statement, - STATE(61), 11, + sym__semicolon, + STATE(35), 11, sym__expression, + sym_array_expression, + sym_tuple_expression, sym_assignment_expression, sym_increment_expression, sym_decrement_expression, @@ -7399,61 +7848,37 @@ static const uint16_t ts_small_parse_table[] = { sym_ternary_expression, sym_unary_expression, sym_binary_expression, - sym_array, - sym_tuple, - [4768] = 20, + [5137] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(154), 1, - sym_parallel, - ACTIONS(156), 1, - anon_sym_LBRACE, - ACTIONS(160), 1, - anon_sym_component, - ACTIONS(162), 1, - anon_sym_LBRACK, - ACTIONS(164), 1, - anon_sym_if, - ACTIONS(166), 1, - anon_sym_LPAREN, - ACTIONS(168), 1, - anon_sym_for, ACTIONS(170), 1, - anon_sym_while, - ACTIONS(172), 1, - anon_sym_return, - ACTIONS(178), 1, + anon_sym_LPAREN, + ACTIONS(174), 1, + anon_sym_LBRACK, + ACTIONS(192), 1, sym_identifier, - ACTIONS(180), 1, - sym_int, - ACTIONS(182), 1, - sym_var, - ACTIONS(184), 1, - anon_sym_signal, - ACTIONS(174), 2, + ACTIONS(196), 1, + sym_parallel, + ACTIONS(297), 1, + sym_int_literal, + ACTIONS(301), 1, + anon_sym_SEMI, + ACTIONS(188), 2, anon_sym_BANG, anon_sym_TILDE, - ACTIONS(176), 2, + ACTIONS(190), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(4), 2, + STATE(7), 2, sym_member_expression, sym_array_access_expression, - STATE(224), 3, - sym__type, - sym_component, - sym_signal, - STATE(135), 8, - sym__statement, - sym_block_statement, + STATE(81), 2, sym_expression_statement, - sym_if_statement, - sym_for_statement, - sym_while_statement, - sym_return_statement, - sym_variable_declaration_statement, - STATE(61), 11, + sym__semicolon, + STATE(35), 11, sym__expression, + sym_array_expression, + sym_tuple_expression, sym_assignment_expression, sym_increment_expression, sym_decrement_expression, @@ -7462,61 +7887,37 @@ static const uint16_t ts_small_parse_table[] = { sym_ternary_expression, sym_unary_expression, sym_binary_expression, - sym_array, - sym_tuple, - [4851] = 20, + [5188] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(154), 1, - sym_parallel, - ACTIONS(156), 1, - anon_sym_LBRACE, - ACTIONS(160), 1, - anon_sym_component, - ACTIONS(162), 1, - anon_sym_LBRACK, - ACTIONS(164), 1, - anon_sym_if, - ACTIONS(166), 1, - anon_sym_LPAREN, - ACTIONS(168), 1, - anon_sym_for, ACTIONS(170), 1, - anon_sym_while, - ACTIONS(172), 1, - anon_sym_return, - ACTIONS(178), 1, + anon_sym_LPAREN, + ACTIONS(174), 1, + anon_sym_LBRACK, + ACTIONS(192), 1, sym_identifier, - ACTIONS(180), 1, - sym_int, - ACTIONS(182), 1, - sym_var, - ACTIONS(184), 1, - anon_sym_signal, - ACTIONS(174), 2, + ACTIONS(196), 1, + sym_parallel, + ACTIONS(297), 1, + sym_int_literal, + ACTIONS(303), 1, + anon_sym_SEMI, + ACTIONS(188), 2, anon_sym_BANG, anon_sym_TILDE, - ACTIONS(176), 2, + ACTIONS(190), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(4), 2, + STATE(7), 2, sym_member_expression, sym_array_access_expression, - STATE(224), 3, - sym__type, - sym_component, - sym_signal, - STATE(129), 8, - sym__statement, - sym_block_statement, + STATE(82), 2, sym_expression_statement, - sym_if_statement, - sym_for_statement, - sym_while_statement, - sym_return_statement, - sym_variable_declaration_statement, - STATE(61), 11, + sym__semicolon, + STATE(35), 11, sym__expression, + sym_array_expression, + sym_tuple_expression, sym_assignment_expression, sym_increment_expression, sym_decrement_expression, @@ -7525,61 +7926,74 @@ static const uint16_t ts_small_parse_table[] = { sym_ternary_expression, sym_unary_expression, sym_binary_expression, - sym_array, - sym_tuple, - [4934] = 20, + [5239] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(154), 1, - sym_parallel, - ACTIONS(160), 1, - anon_sym_component, - ACTIONS(162), 1, - anon_sym_LBRACK, - ACTIONS(166), 1, + ACTIONS(170), 1, anon_sym_LPAREN, - ACTIONS(178), 1, + ACTIONS(174), 1, + anon_sym_LBRACK, + ACTIONS(192), 1, sym_identifier, - ACTIONS(184), 1, - anon_sym_signal, - ACTIONS(283), 1, - anon_sym_LBRACE, - ACTIONS(285), 1, - anon_sym_if, - ACTIONS(287), 1, - anon_sym_for, - ACTIONS(289), 1, - anon_sym_while, - ACTIONS(291), 1, - anon_sym_return, - ACTIONS(293), 1, - sym_int, - ACTIONS(295), 1, - sym_var, - ACTIONS(174), 2, + ACTIONS(196), 1, + sym_parallel, + ACTIONS(305), 1, + anon_sym_RPAREN, + ACTIONS(307), 1, + sym_int_literal, + STATE(281), 1, + sym_argument_list, + ACTIONS(188), 2, + anon_sym_BANG, + anon_sym_TILDE, + ACTIONS(190), 2, + anon_sym_DASH, + anon_sym_PLUS, + STATE(7), 2, + sym_member_expression, + sym_array_access_expression, + STATE(31), 11, + sym__expression, + sym_array_expression, + sym_tuple_expression, + sym_assignment_expression, + sym_increment_expression, + sym_decrement_expression, + sym_call_expression, + sym_parenthesized_expression, + sym_ternary_expression, + sym_unary_expression, + sym_binary_expression, + [5289] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(170), 1, + anon_sym_LPAREN, + ACTIONS(174), 1, + anon_sym_LBRACK, + ACTIONS(192), 1, + sym_identifier, + ACTIONS(196), 1, + sym_parallel, + ACTIONS(307), 1, + sym_int_literal, + ACTIONS(309), 1, + anon_sym_RPAREN, + STATE(293), 1, + sym_argument_list, + ACTIONS(188), 2, anon_sym_BANG, anon_sym_TILDE, - ACTIONS(176), 2, + ACTIONS(190), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(4), 2, + STATE(7), 2, sym_member_expression, sym_array_access_expression, - STATE(216), 3, - sym__type, - sym_component, - sym_signal, - STATE(124), 8, - sym__statement, - sym_block_statement, - sym_expression_statement, - sym_if_statement, - sym_for_statement, - sym_while_statement, - sym_return_statement, - sym_variable_declaration_statement, - STATE(56), 11, + STATE(31), 11, sym__expression, + sym_array_expression, + sym_tuple_expression, sym_assignment_expression, sym_increment_expression, sym_decrement_expression, @@ -7588,61 +8002,36 @@ static const uint16_t ts_small_parse_table[] = { sym_ternary_expression, sym_unary_expression, sym_binary_expression, - sym_array, - sym_tuple, - [5017] = 20, + [5339] = 12, ACTIONS(3), 1, sym_comment, - ACTIONS(154), 1, - sym_parallel, - ACTIONS(160), 1, - anon_sym_component, - ACTIONS(162), 1, - anon_sym_LBRACK, - ACTIONS(166), 1, + ACTIONS(170), 1, anon_sym_LPAREN, - ACTIONS(178), 1, + ACTIONS(174), 1, + anon_sym_LBRACK, + ACTIONS(192), 1, sym_identifier, - ACTIONS(184), 1, - anon_sym_signal, - ACTIONS(283), 1, - anon_sym_LBRACE, - ACTIONS(285), 1, - anon_sym_if, - ACTIONS(287), 1, - anon_sym_for, - ACTIONS(289), 1, - anon_sym_while, - ACTIONS(291), 1, - anon_sym_return, - ACTIONS(293), 1, - sym_int, - ACTIONS(295), 1, - sym_var, - ACTIONS(174), 2, + ACTIONS(196), 1, + sym_parallel, + ACTIONS(307), 1, + sym_int_literal, + ACTIONS(311), 1, + anon_sym_RPAREN, + STATE(294), 1, + sym_argument_list, + ACTIONS(188), 2, anon_sym_BANG, anon_sym_TILDE, - ACTIONS(176), 2, + ACTIONS(190), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(4), 2, + STATE(7), 2, sym_member_expression, sym_array_access_expression, - STATE(216), 3, - sym__type, - sym_component, - sym_signal, - STATE(126), 8, - sym__statement, - sym_block_statement, - sym_expression_statement, - sym_if_statement, - sym_for_statement, - sym_while_statement, - sym_return_statement, - sym_variable_declaration_statement, - STATE(56), 11, + STATE(31), 11, sym__expression, + sym_array_expression, + sym_tuple_expression, sym_assignment_expression, sym_increment_expression, sym_decrement_expression, @@ -7651,47 +8040,34 @@ static const uint16_t ts_small_parse_table[] = { sym_ternary_expression, sym_unary_expression, sym_binary_expression, - sym_array, - sym_tuple, - [5100] = 16, + [5389] = 11, ACTIONS(3), 1, sym_comment, - ACTIONS(154), 1, - sym_parallel, - ACTIONS(160), 1, - anon_sym_component, - ACTIONS(162), 1, - anon_sym_LBRACK, - ACTIONS(166), 1, + ACTIONS(170), 1, anon_sym_LPAREN, - ACTIONS(178), 1, + ACTIONS(174), 1, + anon_sym_LBRACK, + ACTIONS(192), 1, sym_identifier, - ACTIONS(184), 1, - anon_sym_signal, - ACTIONS(297), 1, - sym__semicolon, - ACTIONS(299), 1, - sym_int, - ACTIONS(301), 1, - sym_var, - ACTIONS(174), 2, + ACTIONS(196), 1, + sym_parallel, + ACTIONS(313), 1, + anon_sym_RBRACK, + ACTIONS(315), 1, + sym_int_literal, + ACTIONS(188), 2, anon_sym_BANG, anon_sym_TILDE, - ACTIONS(176), 2, + ACTIONS(190), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(4), 2, + STATE(7), 2, sym_member_expression, sym_array_access_expression, - STATE(80), 2, - sym_expression_statement, - sym_variable_declaration_statement, - STATE(219), 3, - sym__type, - sym_component, - sym_signal, - STATE(59), 11, + STATE(58), 11, sym__expression, + sym_array_expression, + sym_tuple_expression, sym_assignment_expression, sym_increment_expression, sym_decrement_expression, @@ -7700,47 +8076,34 @@ static const uint16_t ts_small_parse_table[] = { sym_ternary_expression, sym_unary_expression, sym_binary_expression, - sym_array, - sym_tuple, - [5165] = 16, + [5436] = 11, ACTIONS(3), 1, sym_comment, - ACTIONS(154), 1, - sym_parallel, - ACTIONS(160), 1, - anon_sym_component, - ACTIONS(162), 1, - anon_sym_LBRACK, - ACTIONS(166), 1, + ACTIONS(170), 1, anon_sym_LPAREN, - ACTIONS(178), 1, + ACTIONS(174), 1, + anon_sym_LBRACK, + ACTIONS(192), 1, sym_identifier, - ACTIONS(184), 1, - anon_sym_signal, - ACTIONS(299), 1, - sym_int, - ACTIONS(301), 1, - sym_var, - ACTIONS(303), 1, - sym__semicolon, - ACTIONS(174), 2, + ACTIONS(196), 1, + sym_parallel, + ACTIONS(317), 1, + anon_sym_RPAREN, + ACTIONS(319), 1, + sym_int_literal, + ACTIONS(188), 2, anon_sym_BANG, anon_sym_TILDE, - ACTIONS(176), 2, + ACTIONS(190), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(4), 2, + STATE(7), 2, sym_member_expression, sym_array_access_expression, - STATE(77), 2, - sym_expression_statement, - sym_variable_declaration_statement, - STATE(219), 3, - sym__type, - sym_component, - sym_signal, - STATE(59), 11, + STATE(61), 11, sym__expression, + sym_array_expression, + sym_tuple_expression, sym_assignment_expression, sym_increment_expression, sym_decrement_expression, @@ -7749,36 +8112,34 @@ static const uint16_t ts_small_parse_table[] = { sym_ternary_expression, sym_unary_expression, sym_binary_expression, - sym_array, - sym_tuple, - [5230] = 12, + [5483] = 11, ACTIONS(3), 1, sym_comment, - ACTIONS(154), 1, - sym_parallel, - ACTIONS(162), 1, - anon_sym_LBRACK, - ACTIONS(166), 1, + ACTIONS(170), 1, anon_sym_LPAREN, - ACTIONS(178), 1, + ACTIONS(174), 1, + anon_sym_LBRACK, + ACTIONS(192), 1, sym_identifier, - ACTIONS(305), 1, + ACTIONS(196), 1, + sym_parallel, + ACTIONS(321), 1, anon_sym_RPAREN, - ACTIONS(307), 1, - sym_int, - STATE(246), 1, - sym_argument_list, - ACTIONS(174), 2, + ACTIONS(323), 1, + sym_int_literal, + ACTIONS(188), 2, anon_sym_BANG, anon_sym_TILDE, - ACTIONS(176), 2, + ACTIONS(190), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(4), 2, + STATE(7), 2, sym_member_expression, sym_array_access_expression, - STATE(34), 11, + STATE(54), 11, sym__expression, + sym_array_expression, + sym_tuple_expression, sym_assignment_expression, sym_increment_expression, sym_decrement_expression, @@ -7787,36 +8148,32 @@ static const uint16_t ts_small_parse_table[] = { sym_ternary_expression, sym_unary_expression, sym_binary_expression, - sym_array, - sym_tuple, - [5280] = 12, + [5530] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(154), 1, - sym_parallel, - ACTIONS(162), 1, - anon_sym_LBRACK, - ACTIONS(166), 1, + ACTIONS(170), 1, anon_sym_LPAREN, - ACTIONS(178), 1, + ACTIONS(174), 1, + anon_sym_LBRACK, + ACTIONS(192), 1, sym_identifier, - ACTIONS(299), 1, - sym_int, - ACTIONS(309), 1, - sym__semicolon, - STATE(86), 1, - sym_expression_statement, - ACTIONS(174), 2, + ACTIONS(196), 1, + sym_parallel, + ACTIONS(325), 1, + sym_int_literal, + ACTIONS(188), 2, anon_sym_BANG, anon_sym_TILDE, - ACTIONS(176), 2, + ACTIONS(190), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(4), 2, + STATE(7), 2, sym_member_expression, sym_array_access_expression, - STATE(59), 11, + STATE(19), 11, sym__expression, + sym_array_expression, + sym_tuple_expression, sym_assignment_expression, sym_increment_expression, sym_decrement_expression, @@ -7825,36 +8182,32 @@ static const uint16_t ts_small_parse_table[] = { sym_ternary_expression, sym_unary_expression, sym_binary_expression, - sym_array, - sym_tuple, - [5330] = 12, + [5574] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(154), 1, - sym_parallel, - ACTIONS(162), 1, - anon_sym_LBRACK, - ACTIONS(166), 1, + ACTIONS(170), 1, anon_sym_LPAREN, - ACTIONS(178), 1, + ACTIONS(174), 1, + anon_sym_LBRACK, + ACTIONS(192), 1, sym_identifier, - ACTIONS(307), 1, - sym_int, - ACTIONS(311), 1, - anon_sym_RPAREN, - STATE(228), 1, - sym_argument_list, - ACTIONS(174), 2, + ACTIONS(196), 1, + sym_parallel, + ACTIONS(327), 1, + sym_int_literal, + ACTIONS(188), 2, anon_sym_BANG, anon_sym_TILDE, - ACTIONS(176), 2, + ACTIONS(190), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(4), 2, + STATE(7), 2, sym_member_expression, sym_array_access_expression, - STATE(34), 11, + STATE(29), 11, sym__expression, + sym_array_expression, + sym_tuple_expression, sym_assignment_expression, sym_increment_expression, sym_decrement_expression, @@ -7863,36 +8216,32 @@ static const uint16_t ts_small_parse_table[] = { sym_ternary_expression, sym_unary_expression, sym_binary_expression, - sym_array, - sym_tuple, - [5380] = 12, + [5618] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(154), 1, - sym_parallel, - ACTIONS(162), 1, - anon_sym_LBRACK, - ACTIONS(166), 1, + ACTIONS(170), 1, anon_sym_LPAREN, - ACTIONS(178), 1, + ACTIONS(174), 1, + anon_sym_LBRACK, + ACTIONS(192), 1, sym_identifier, - ACTIONS(307), 1, - sym_int, - ACTIONS(313), 1, - anon_sym_RPAREN, - STATE(248), 1, - sym_argument_list, - ACTIONS(174), 2, + ACTIONS(196), 1, + sym_parallel, + ACTIONS(329), 1, + sym_int_literal, + ACTIONS(188), 2, anon_sym_BANG, anon_sym_TILDE, - ACTIONS(176), 2, + ACTIONS(190), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(4), 2, + STATE(7), 2, sym_member_expression, sym_array_access_expression, - STATE(34), 11, + STATE(55), 11, sym__expression, + sym_array_expression, + sym_tuple_expression, sym_assignment_expression, sym_increment_expression, sym_decrement_expression, @@ -7901,36 +8250,32 @@ static const uint16_t ts_small_parse_table[] = { sym_ternary_expression, sym_unary_expression, sym_binary_expression, - sym_array, - sym_tuple, - [5430] = 12, + [5662] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(154), 1, - sym_parallel, - ACTIONS(162), 1, - anon_sym_LBRACK, - ACTIONS(166), 1, + ACTIONS(170), 1, anon_sym_LPAREN, - ACTIONS(178), 1, + ACTIONS(174), 1, + anon_sym_LBRACK, + ACTIONS(192), 1, sym_identifier, - ACTIONS(299), 1, - sym_int, - ACTIONS(315), 1, - sym__semicolon, - STATE(83), 1, - sym_expression_statement, - ACTIONS(174), 2, + ACTIONS(196), 1, + sym_parallel, + ACTIONS(331), 1, + sym_int_literal, + ACTIONS(188), 2, anon_sym_BANG, anon_sym_TILDE, - ACTIONS(176), 2, + ACTIONS(190), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(4), 2, + STATE(7), 2, sym_member_expression, sym_array_access_expression, - STATE(59), 11, + STATE(62), 11, sym__expression, + sym_array_expression, + sym_tuple_expression, sym_assignment_expression, sym_increment_expression, sym_decrement_expression, @@ -7939,34 +8284,32 @@ static const uint16_t ts_small_parse_table[] = { sym_ternary_expression, sym_unary_expression, sym_binary_expression, - sym_array, - sym_tuple, - [5480] = 11, + [5706] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(154), 1, - sym_parallel, - ACTIONS(162), 1, - anon_sym_LBRACK, - ACTIONS(166), 1, + ACTIONS(170), 1, anon_sym_LPAREN, - ACTIONS(178), 1, + ACTIONS(174), 1, + anon_sym_LBRACK, + ACTIONS(192), 1, sym_identifier, - ACTIONS(317), 1, - anon_sym_RPAREN, - ACTIONS(319), 1, - sym_int, - ACTIONS(174), 2, + ACTIONS(196), 1, + sym_parallel, + ACTIONS(333), 1, + sym_int_literal, + ACTIONS(188), 2, anon_sym_BANG, anon_sym_TILDE, - ACTIONS(176), 2, + ACTIONS(190), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(4), 2, + STATE(7), 2, sym_member_expression, sym_array_access_expression, - STATE(35), 11, + STATE(47), 11, sym__expression, + sym_array_expression, + sym_tuple_expression, sym_assignment_expression, sym_increment_expression, sym_decrement_expression, @@ -7975,34 +8318,32 @@ static const uint16_t ts_small_parse_table[] = { sym_ternary_expression, sym_unary_expression, sym_binary_expression, - sym_array, - sym_tuple, - [5527] = 11, + [5750] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(154), 1, - sym_parallel, - ACTIONS(162), 1, - anon_sym_LBRACK, - ACTIONS(166), 1, + ACTIONS(170), 1, anon_sym_LPAREN, - ACTIONS(178), 1, + ACTIONS(174), 1, + anon_sym_LBRACK, + ACTIONS(192), 1, sym_identifier, - ACTIONS(319), 1, - sym_int, - ACTIONS(321), 1, - anon_sym_RBRACK, - ACTIONS(174), 2, + ACTIONS(196), 1, + sym_parallel, + ACTIONS(335), 1, + sym_int_literal, + ACTIONS(188), 2, anon_sym_BANG, anon_sym_TILDE, - ACTIONS(176), 2, + ACTIONS(190), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(4), 2, + STATE(7), 2, sym_member_expression, sym_array_access_expression, - STATE(35), 11, + STATE(44), 11, sym__expression, + sym_array_expression, + sym_tuple_expression, sym_assignment_expression, sym_increment_expression, sym_decrement_expression, @@ -8011,34 +8352,32 @@ static const uint16_t ts_small_parse_table[] = { sym_ternary_expression, sym_unary_expression, sym_binary_expression, - sym_array, - sym_tuple, - [5574] = 11, + [5794] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(154), 1, - sym_parallel, - ACTIONS(162), 1, - anon_sym_LBRACK, - ACTIONS(166), 1, + ACTIONS(170), 1, anon_sym_LPAREN, - ACTIONS(178), 1, + ACTIONS(174), 1, + anon_sym_LBRACK, + ACTIONS(192), 1, sym_identifier, - ACTIONS(323), 1, - anon_sym_RPAREN, - ACTIONS(325), 1, - sym_int, - ACTIONS(174), 2, + ACTIONS(196), 1, + sym_parallel, + ACTIONS(337), 1, + sym_int_literal, + ACTIONS(188), 2, anon_sym_BANG, anon_sym_TILDE, - ACTIONS(176), 2, + ACTIONS(190), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(4), 2, + STATE(7), 2, sym_member_expression, sym_array_access_expression, - STATE(57), 11, + STATE(45), 11, sym__expression, + sym_array_expression, + sym_tuple_expression, sym_assignment_expression, sym_increment_expression, sym_decrement_expression, @@ -8047,34 +8386,32 @@ static const uint16_t ts_small_parse_table[] = { sym_ternary_expression, sym_unary_expression, sym_binary_expression, - sym_array, - sym_tuple, - [5621] = 11, + [5838] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(154), 1, - sym_parallel, - ACTIONS(162), 1, - anon_sym_LBRACK, - ACTIONS(166), 1, + ACTIONS(170), 1, anon_sym_LPAREN, - ACTIONS(178), 1, + ACTIONS(174), 1, + anon_sym_LBRACK, + ACTIONS(192), 1, sym_identifier, - ACTIONS(319), 1, - sym_int, - ACTIONS(327), 1, - anon_sym_RPAREN, - ACTIONS(174), 2, + ACTIONS(196), 1, + sym_parallel, + ACTIONS(339), 1, + sym_int_literal, + ACTIONS(188), 2, anon_sym_BANG, anon_sym_TILDE, - ACTIONS(176), 2, + ACTIONS(190), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(4), 2, + STATE(7), 2, sym_member_expression, sym_array_access_expression, - STATE(35), 11, + STATE(42), 11, sym__expression, + sym_array_expression, + sym_tuple_expression, sym_assignment_expression, sym_increment_expression, sym_decrement_expression, @@ -8083,34 +8420,32 @@ static const uint16_t ts_small_parse_table[] = { sym_ternary_expression, sym_unary_expression, sym_binary_expression, - sym_array, - sym_tuple, - [5668] = 11, + [5882] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(154), 1, - sym_parallel, - ACTIONS(162), 1, - anon_sym_LBRACK, - ACTIONS(166), 1, + ACTIONS(170), 1, anon_sym_LPAREN, - ACTIONS(178), 1, + ACTIONS(174), 1, + anon_sym_LBRACK, + ACTIONS(192), 1, sym_identifier, - ACTIONS(319), 1, - sym_int, - ACTIONS(329), 1, - anon_sym_RBRACK, - ACTIONS(174), 2, + ACTIONS(196), 1, + sym_parallel, + ACTIONS(341), 1, + sym_int_literal, + ACTIONS(188), 2, anon_sym_BANG, anon_sym_TILDE, - ACTIONS(176), 2, + ACTIONS(190), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(4), 2, + STATE(7), 2, sym_member_expression, sym_array_access_expression, - STATE(35), 11, + STATE(41), 11, sym__expression, + sym_array_expression, + sym_tuple_expression, sym_assignment_expression, sym_increment_expression, sym_decrement_expression, @@ -8119,34 +8454,32 @@ static const uint16_t ts_small_parse_table[] = { sym_ternary_expression, sym_unary_expression, sym_binary_expression, - sym_array, - sym_tuple, - [5715] = 11, + [5926] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(154), 1, - sym_parallel, - ACTIONS(162), 1, - anon_sym_LBRACK, - ACTIONS(166), 1, + ACTIONS(170), 1, anon_sym_LPAREN, - ACTIONS(178), 1, + ACTIONS(174), 1, + anon_sym_LBRACK, + ACTIONS(192), 1, sym_identifier, - ACTIONS(331), 1, - anon_sym_RPAREN, - ACTIONS(333), 1, - sym_int, - ACTIONS(174), 2, + ACTIONS(196), 1, + sym_parallel, + ACTIONS(343), 1, + sym_int_literal, + ACTIONS(188), 2, anon_sym_BANG, anon_sym_TILDE, - ACTIONS(176), 2, + ACTIONS(190), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(4), 2, + STATE(7), 2, sym_member_expression, sym_array_access_expression, - STATE(55), 11, + STATE(40), 11, sym__expression, + sym_array_expression, + sym_tuple_expression, sym_assignment_expression, sym_increment_expression, sym_decrement_expression, @@ -8155,34 +8488,32 @@ static const uint16_t ts_small_parse_table[] = { sym_ternary_expression, sym_unary_expression, sym_binary_expression, - sym_array, - sym_tuple, - [5762] = 11, + [5970] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(154), 1, - sym_parallel, - ACTIONS(162), 1, - anon_sym_LBRACK, - ACTIONS(166), 1, + ACTIONS(170), 1, anon_sym_LPAREN, - ACTIONS(178), 1, + ACTIONS(174), 1, + anon_sym_LBRACK, + ACTIONS(192), 1, sym_identifier, - ACTIONS(335), 1, - anon_sym_RBRACK, - ACTIONS(337), 1, - sym_int, - ACTIONS(174), 2, + ACTIONS(196), 1, + sym_parallel, + ACTIONS(345), 1, + sym_int_literal, + ACTIONS(188), 2, anon_sym_BANG, anon_sym_TILDE, - ACTIONS(176), 2, + ACTIONS(190), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(4), 2, + STATE(7), 2, sym_member_expression, sym_array_access_expression, - STATE(58), 11, + STATE(36), 11, sym__expression, + sym_array_expression, + sym_tuple_expression, sym_assignment_expression, sym_increment_expression, sym_decrement_expression, @@ -8191,32 +8522,32 @@ static const uint16_t ts_small_parse_table[] = { sym_ternary_expression, sym_unary_expression, sym_binary_expression, - sym_array, - sym_tuple, - [5809] = 10, + [6014] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(154), 1, - sym_parallel, - ACTIONS(162), 1, - anon_sym_LBRACK, - ACTIONS(166), 1, + ACTIONS(170), 1, anon_sym_LPAREN, - ACTIONS(178), 1, + ACTIONS(174), 1, + anon_sym_LBRACK, + ACTIONS(192), 1, sym_identifier, - ACTIONS(339), 1, - sym_int, - ACTIONS(174), 2, + ACTIONS(196), 1, + sym_parallel, + ACTIONS(347), 1, + sym_int_literal, + ACTIONS(188), 2, anon_sym_BANG, anon_sym_TILDE, - ACTIONS(176), 2, + ACTIONS(190), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(4), 2, + STATE(7), 2, sym_member_expression, sym_array_access_expression, - STATE(19), 11, + STATE(39), 11, sym__expression, + sym_array_expression, + sym_tuple_expression, sym_assignment_expression, sym_increment_expression, sym_decrement_expression, @@ -8225,32 +8556,32 @@ static const uint16_t ts_small_parse_table[] = { sym_ternary_expression, sym_unary_expression, sym_binary_expression, - sym_array, - sym_tuple, - [5853] = 10, + [6058] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(154), 1, - sym_parallel, - ACTIONS(162), 1, - anon_sym_LBRACK, - ACTIONS(166), 1, + ACTIONS(170), 1, anon_sym_LPAREN, - ACTIONS(178), 1, + ACTIONS(174), 1, + anon_sym_LBRACK, + ACTIONS(192), 1, sym_identifier, - ACTIONS(341), 1, - sym_int, - ACTIONS(174), 2, + ACTIONS(196), 1, + sym_parallel, + ACTIONS(349), 1, + sym_int_literal, + ACTIONS(188), 2, anon_sym_BANG, anon_sym_TILDE, - ACTIONS(176), 2, + ACTIONS(190), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(4), 2, + STATE(7), 2, sym_member_expression, sym_array_access_expression, - STATE(16), 11, + STATE(28), 11, sym__expression, + sym_array_expression, + sym_tuple_expression, sym_assignment_expression, sym_increment_expression, sym_decrement_expression, @@ -8259,32 +8590,32 @@ static const uint16_t ts_small_parse_table[] = { sym_ternary_expression, sym_unary_expression, sym_binary_expression, - sym_array, - sym_tuple, - [5897] = 10, + [6102] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(154), 1, - sym_parallel, - ACTIONS(162), 1, - anon_sym_LBRACK, - ACTIONS(166), 1, + ACTIONS(170), 1, anon_sym_LPAREN, - ACTIONS(178), 1, + ACTIONS(174), 1, + anon_sym_LBRACK, + ACTIONS(192), 1, sym_identifier, - ACTIONS(343), 1, - sym_int, - ACTIONS(174), 2, + ACTIONS(196), 1, + sym_parallel, + ACTIONS(351), 1, + sym_int_literal, + ACTIONS(188), 2, anon_sym_BANG, anon_sym_TILDE, - ACTIONS(176), 2, + ACTIONS(190), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(4), 2, + STATE(7), 2, sym_member_expression, sym_array_access_expression, - STATE(63), 11, + STATE(26), 11, sym__expression, + sym_array_expression, + sym_tuple_expression, sym_assignment_expression, sym_increment_expression, sym_decrement_expression, @@ -8293,32 +8624,32 @@ static const uint16_t ts_small_parse_table[] = { sym_ternary_expression, sym_unary_expression, sym_binary_expression, - sym_array, - sym_tuple, - [5941] = 10, + [6146] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(154), 1, - sym_parallel, - ACTIONS(162), 1, - anon_sym_LBRACK, - ACTIONS(166), 1, + ACTIONS(170), 1, anon_sym_LPAREN, - ACTIONS(178), 1, + ACTIONS(174), 1, + anon_sym_LBRACK, + ACTIONS(192), 1, sym_identifier, - ACTIONS(345), 1, - sym_int, - ACTIONS(174), 2, + ACTIONS(196), 1, + sym_parallel, + ACTIONS(353), 1, + sym_int_literal, + ACTIONS(188), 2, anon_sym_BANG, anon_sym_TILDE, - ACTIONS(176), 2, + ACTIONS(190), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(4), 2, + STATE(7), 2, sym_member_expression, sym_array_access_expression, - STATE(54), 11, + STATE(21), 11, sym__expression, + sym_array_expression, + sym_tuple_expression, sym_assignment_expression, sym_increment_expression, sym_decrement_expression, @@ -8327,32 +8658,32 @@ static const uint16_t ts_small_parse_table[] = { sym_ternary_expression, sym_unary_expression, sym_binary_expression, - sym_array, - sym_tuple, - [5985] = 10, + [6190] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(154), 1, - sym_parallel, - ACTIONS(162), 1, - anon_sym_LBRACK, - ACTIONS(166), 1, + ACTIONS(170), 1, anon_sym_LPAREN, - ACTIONS(178), 1, + ACTIONS(174), 1, + anon_sym_LBRACK, + ACTIONS(192), 1, sym_identifier, - ACTIONS(347), 1, - sym_int, - ACTIONS(174), 2, + ACTIONS(196), 1, + sym_parallel, + ACTIONS(355), 1, + sym_int_literal, + ACTIONS(188), 2, anon_sym_BANG, anon_sym_TILDE, - ACTIONS(176), 2, + ACTIONS(190), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(4), 2, + STATE(7), 2, sym_member_expression, sym_array_access_expression, - STATE(52), 11, + STATE(34), 11, sym__expression, + sym_array_expression, + sym_tuple_expression, sym_assignment_expression, sym_increment_expression, sym_decrement_expression, @@ -8361,32 +8692,32 @@ static const uint16_t ts_small_parse_table[] = { sym_ternary_expression, sym_unary_expression, sym_binary_expression, - sym_array, - sym_tuple, - [6029] = 10, + [6234] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(154), 1, - sym_parallel, - ACTIONS(162), 1, - anon_sym_LBRACK, - ACTIONS(166), 1, + ACTIONS(170), 1, anon_sym_LPAREN, - ACTIONS(178), 1, + ACTIONS(174), 1, + anon_sym_LBRACK, + ACTIONS(192), 1, sym_identifier, - ACTIONS(349), 1, - sym_int, - ACTIONS(174), 2, + ACTIONS(196), 1, + sym_parallel, + ACTIONS(357), 1, + sym_int_literal, + ACTIONS(188), 2, anon_sym_BANG, anon_sym_TILDE, - ACTIONS(176), 2, + ACTIONS(190), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(4), 2, + STATE(7), 2, sym_member_expression, sym_array_access_expression, - STATE(46), 11, + STATE(17), 11, sym__expression, + sym_array_expression, + sym_tuple_expression, sym_assignment_expression, sym_increment_expression, sym_decrement_expression, @@ -8395,32 +8726,32 @@ static const uint16_t ts_small_parse_table[] = { sym_ternary_expression, sym_unary_expression, sym_binary_expression, - sym_array, - sym_tuple, - [6073] = 10, + [6278] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(154), 1, - sym_parallel, - ACTIONS(162), 1, - anon_sym_LBRACK, - ACTIONS(166), 1, + ACTIONS(170), 1, anon_sym_LPAREN, - ACTIONS(178), 1, + ACTIONS(174), 1, + anon_sym_LBRACK, + ACTIONS(192), 1, sym_identifier, - ACTIONS(351), 1, - sym_int, - ACTIONS(174), 2, + ACTIONS(196), 1, + sym_parallel, + ACTIONS(359), 1, + sym_int_literal, + ACTIONS(188), 2, anon_sym_BANG, anon_sym_TILDE, - ACTIONS(176), 2, + ACTIONS(190), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(4), 2, + STATE(7), 2, sym_member_expression, sym_array_access_expression, - STATE(50), 11, + STATE(16), 11, sym__expression, + sym_array_expression, + sym_tuple_expression, sym_assignment_expression, sym_increment_expression, sym_decrement_expression, @@ -8429,32 +8760,32 @@ static const uint16_t ts_small_parse_table[] = { sym_ternary_expression, sym_unary_expression, sym_binary_expression, - sym_array, - sym_tuple, - [6117] = 10, + [6322] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(154), 1, - sym_parallel, - ACTIONS(162), 1, - anon_sym_LBRACK, - ACTIONS(166), 1, + ACTIONS(170), 1, anon_sym_LPAREN, - ACTIONS(178), 1, + ACTIONS(174), 1, + anon_sym_LBRACK, + ACTIONS(192), 1, sym_identifier, - ACTIONS(319), 1, - sym_int, - ACTIONS(174), 2, + ACTIONS(196), 1, + sym_parallel, + ACTIONS(361), 1, + sym_int_literal, + ACTIONS(188), 2, anon_sym_BANG, anon_sym_TILDE, - ACTIONS(176), 2, + ACTIONS(190), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(4), 2, + STATE(7), 2, sym_member_expression, sym_array_access_expression, - STATE(35), 11, + STATE(32), 11, sym__expression, + sym_array_expression, + sym_tuple_expression, sym_assignment_expression, sym_increment_expression, sym_decrement_expression, @@ -8463,32 +8794,32 @@ static const uint16_t ts_small_parse_table[] = { sym_ternary_expression, sym_unary_expression, sym_binary_expression, - sym_array, - sym_tuple, - [6161] = 10, + [6366] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(154), 1, - sym_parallel, - ACTIONS(162), 1, - anon_sym_LBRACK, - ACTIONS(166), 1, + ACTIONS(170), 1, anon_sym_LPAREN, - ACTIONS(178), 1, + ACTIONS(174), 1, + anon_sym_LBRACK, + ACTIONS(192), 1, sym_identifier, - ACTIONS(353), 1, - sym_int, - ACTIONS(174), 2, + ACTIONS(196), 1, + sym_parallel, + ACTIONS(363), 1, + sym_int_literal, + ACTIONS(188), 2, anon_sym_BANG, anon_sym_TILDE, - ACTIONS(176), 2, + ACTIONS(190), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(4), 2, + STATE(7), 2, sym_member_expression, sym_array_access_expression, - STATE(60), 11, + STATE(33), 11, sym__expression, + sym_array_expression, + sym_tuple_expression, sym_assignment_expression, sym_increment_expression, sym_decrement_expression, @@ -8497,32 +8828,32 @@ static const uint16_t ts_small_parse_table[] = { sym_ternary_expression, sym_unary_expression, sym_binary_expression, - sym_array, - sym_tuple, - [6205] = 10, + [6410] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(154), 1, - sym_parallel, - ACTIONS(162), 1, - anon_sym_LBRACK, - ACTIONS(166), 1, + ACTIONS(170), 1, anon_sym_LPAREN, - ACTIONS(178), 1, + ACTIONS(174), 1, + anon_sym_LBRACK, + ACTIONS(192), 1, sym_identifier, - ACTIONS(355), 1, - sym_int, - ACTIONS(174), 2, + ACTIONS(196), 1, + sym_parallel, + ACTIONS(365), 1, + sym_int_literal, + ACTIONS(188), 2, anon_sym_BANG, anon_sym_TILDE, - ACTIONS(176), 2, + ACTIONS(190), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(4), 2, + STATE(7), 2, sym_member_expression, sym_array_access_expression, - STATE(36), 11, + STATE(38), 11, sym__expression, + sym_array_expression, + sym_tuple_expression, sym_assignment_expression, sym_increment_expression, sym_decrement_expression, @@ -8531,32 +8862,32 @@ static const uint16_t ts_small_parse_table[] = { sym_ternary_expression, sym_unary_expression, sym_binary_expression, - sym_array, - sym_tuple, - [6249] = 10, + [6454] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(154), 1, - sym_parallel, - ACTIONS(162), 1, - anon_sym_LBRACK, - ACTIONS(166), 1, + ACTIONS(170), 1, anon_sym_LPAREN, - ACTIONS(178), 1, + ACTIONS(174), 1, + anon_sym_LBRACK, + ACTIONS(192), 1, sym_identifier, - ACTIONS(357), 1, - sym_int, - ACTIONS(174), 2, + ACTIONS(196), 1, + sym_parallel, + ACTIONS(367), 1, + sym_int_literal, + ACTIONS(188), 2, anon_sym_BANG, anon_sym_TILDE, - ACTIONS(176), 2, + ACTIONS(190), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(4), 2, + STATE(7), 2, sym_member_expression, sym_array_access_expression, - STATE(31), 11, + STATE(23), 11, sym__expression, + sym_array_expression, + sym_tuple_expression, sym_assignment_expression, sym_increment_expression, sym_decrement_expression, @@ -8565,32 +8896,32 @@ static const uint16_t ts_small_parse_table[] = { sym_ternary_expression, sym_unary_expression, sym_binary_expression, - sym_array, - sym_tuple, - [6293] = 10, + [6498] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(154), 1, - sym_parallel, - ACTIONS(162), 1, - anon_sym_LBRACK, - ACTIONS(166), 1, + ACTIONS(170), 1, anon_sym_LPAREN, - ACTIONS(178), 1, + ACTIONS(174), 1, + anon_sym_LBRACK, + ACTIONS(192), 1, sym_identifier, - ACTIONS(359), 1, - sym_int, - ACTIONS(174), 2, + ACTIONS(196), 1, + sym_parallel, + ACTIONS(369), 1, + sym_int_literal, + ACTIONS(188), 2, anon_sym_BANG, anon_sym_TILDE, - ACTIONS(176), 2, + ACTIONS(190), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(4), 2, + STATE(7), 2, sym_member_expression, sym_array_access_expression, - STATE(53), 11, + STATE(48), 11, sym__expression, + sym_array_expression, + sym_tuple_expression, sym_assignment_expression, sym_increment_expression, sym_decrement_expression, @@ -8599,32 +8930,32 @@ static const uint16_t ts_small_parse_table[] = { sym_ternary_expression, sym_unary_expression, sym_binary_expression, - sym_array, - sym_tuple, - [6337] = 10, + [6542] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(154), 1, - sym_parallel, - ACTIONS(162), 1, - anon_sym_LBRACK, - ACTIONS(166), 1, + ACTIONS(170), 1, anon_sym_LPAREN, - ACTIONS(178), 1, + ACTIONS(174), 1, + anon_sym_LBRACK, + ACTIONS(192), 1, sym_identifier, - ACTIONS(361), 1, - sym_int, - ACTIONS(174), 2, + ACTIONS(196), 1, + sym_parallel, + ACTIONS(371), 1, + sym_int_literal, + ACTIONS(188), 2, anon_sym_BANG, anon_sym_TILDE, - ACTIONS(176), 2, + ACTIONS(190), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(4), 2, + STATE(7), 2, sym_member_expression, sym_array_access_expression, - STATE(11), 11, + STATE(49), 11, sym__expression, + sym_array_expression, + sym_tuple_expression, sym_assignment_expression, sym_increment_expression, sym_decrement_expression, @@ -8633,32 +8964,32 @@ static const uint16_t ts_small_parse_table[] = { sym_ternary_expression, sym_unary_expression, sym_binary_expression, - sym_array, - sym_tuple, - [6381] = 10, + [6586] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(154), 1, - sym_parallel, - ACTIONS(162), 1, - anon_sym_LBRACK, - ACTIONS(166), 1, + ACTIONS(170), 1, anon_sym_LPAREN, - ACTIONS(178), 1, + ACTIONS(174), 1, + anon_sym_LBRACK, + ACTIONS(192), 1, sym_identifier, - ACTIONS(363), 1, - sym_int, - ACTIONS(174), 2, + ACTIONS(196), 1, + sym_parallel, + ACTIONS(373), 1, + sym_int_literal, + ACTIONS(188), 2, anon_sym_BANG, anon_sym_TILDE, - ACTIONS(176), 2, + ACTIONS(190), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(4), 2, + STATE(7), 2, sym_member_expression, sym_array_access_expression, - STATE(51), 11, + STATE(22), 11, sym__expression, + sym_array_expression, + sym_tuple_expression, sym_assignment_expression, sym_increment_expression, sym_decrement_expression, @@ -8667,32 +8998,32 @@ static const uint16_t ts_small_parse_table[] = { sym_ternary_expression, sym_unary_expression, sym_binary_expression, - sym_array, - sym_tuple, - [6425] = 10, + [6630] = 10, ACTIONS(3), 1, sym_comment, - ACTIONS(154), 1, - sym_parallel, - ACTIONS(162), 1, - anon_sym_LBRACK, - ACTIONS(166), 1, + ACTIONS(170), 1, anon_sym_LPAREN, - ACTIONS(178), 1, + ACTIONS(174), 1, + anon_sym_LBRACK, + ACTIONS(192), 1, sym_identifier, - ACTIONS(365), 1, - sym_int, - ACTIONS(174), 2, + ACTIONS(196), 1, + sym_parallel, + ACTIONS(375), 1, + sym_int_literal, + ACTIONS(188), 2, anon_sym_BANG, anon_sym_TILDE, - ACTIONS(176), 2, + ACTIONS(190), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(4), 2, + STATE(7), 2, sym_member_expression, sym_array_access_expression, - STATE(21), 11, + STATE(30), 11, sym__expression, + sym_array_expression, + sym_tuple_expression, sym_assignment_expression, sym_increment_expression, sym_decrement_expression, @@ -8701,978 +9032,1012 @@ static const uint16_t ts_small_parse_table[] = { sym_ternary_expression, sym_unary_expression, sym_binary_expression, - sym_array, - sym_tuple, - [6469] = 10, + [6674] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(154), 1, + ACTIONS(377), 9, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_LPAREN, + anon_sym_LBRACK, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_DASH, + anon_sym_PLUS, + sym_int_literal, + ACTIONS(379), 10, + anon_sym_component, + anon_sym_if, + anon_sym_else, + anon_sym_for, + anon_sym_while, + anon_sym_return, + anon_sym_signal, + anon_sym_var, + sym_identifier, sym_parallel, - ACTIONS(162), 1, + [6701] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(381), 9, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_LPAREN, anon_sym_LBRACK, - ACTIONS(166), 1, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_DASH, + anon_sym_PLUS, + sym_int_literal, + ACTIONS(383), 10, + anon_sym_component, + anon_sym_if, + anon_sym_else, + anon_sym_for, + anon_sym_while, + anon_sym_return, + anon_sym_signal, + anon_sym_var, + sym_identifier, + sym_parallel, + [6728] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(389), 1, + anon_sym_else, + ACTIONS(385), 9, + anon_sym_LBRACE, + anon_sym_RBRACE, anon_sym_LPAREN, - ACTIONS(178), 1, + anon_sym_LBRACK, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_DASH, + anon_sym_PLUS, + sym_int_literal, + ACTIONS(387), 9, + anon_sym_component, + anon_sym_if, + anon_sym_for, + anon_sym_while, + anon_sym_return, + anon_sym_signal, + anon_sym_var, sym_identifier, - ACTIONS(367), 1, - sym_int, - ACTIONS(174), 2, + sym_parallel, + [6757] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(391), 9, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_LPAREN, + anon_sym_LBRACK, anon_sym_BANG, anon_sym_TILDE, - ACTIONS(176), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(4), 2, - sym_member_expression, - sym_array_access_expression, - STATE(20), 11, - sym__expression, - sym_assignment_expression, - sym_increment_expression, - sym_decrement_expression, - sym_call_expression, - sym_parenthesized_expression, - sym_ternary_expression, - sym_unary_expression, - sym_binary_expression, - sym_array, - sym_tuple, - [6513] = 10, + sym_int_literal, + ACTIONS(393), 10, + anon_sym_component, + anon_sym_if, + anon_sym_else, + anon_sym_for, + anon_sym_while, + anon_sym_return, + anon_sym_signal, + anon_sym_var, + sym_identifier, + sym_parallel, + [6784] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(154), 1, - sym_parallel, - ACTIONS(162), 1, - anon_sym_LBRACK, - ACTIONS(166), 1, + ACTIONS(395), 9, + anon_sym_LBRACE, + anon_sym_RBRACE, anon_sym_LPAREN, - ACTIONS(178), 1, - sym_identifier, - ACTIONS(369), 1, - sym_int, - ACTIONS(174), 2, + anon_sym_LBRACK, anon_sym_BANG, anon_sym_TILDE, - ACTIONS(176), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(4), 2, - sym_member_expression, - sym_array_access_expression, - STATE(47), 11, - sym__expression, - sym_assignment_expression, - sym_increment_expression, - sym_decrement_expression, - sym_call_expression, - sym_parenthesized_expression, - sym_ternary_expression, - sym_unary_expression, - sym_binary_expression, - sym_array, - sym_tuple, - [6557] = 10, + sym_int_literal, + ACTIONS(397), 10, + anon_sym_component, + anon_sym_if, + anon_sym_else, + anon_sym_for, + anon_sym_while, + anon_sym_return, + anon_sym_signal, + anon_sym_var, + sym_identifier, + sym_parallel, + [6811] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(154), 1, - sym_parallel, - ACTIONS(162), 1, - anon_sym_LBRACK, - ACTIONS(166), 1, + ACTIONS(399), 9, + anon_sym_LBRACE, + anon_sym_RBRACE, anon_sym_LPAREN, - ACTIONS(178), 1, - sym_identifier, - ACTIONS(371), 1, - sym_int, - ACTIONS(174), 2, + anon_sym_LBRACK, anon_sym_BANG, anon_sym_TILDE, - ACTIONS(176), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(4), 2, - sym_member_expression, - sym_array_access_expression, - STATE(10), 11, - sym__expression, - sym_assignment_expression, - sym_increment_expression, - sym_decrement_expression, - sym_call_expression, - sym_parenthesized_expression, - sym_ternary_expression, - sym_unary_expression, - sym_binary_expression, - sym_array, - sym_tuple, - [6601] = 10, + sym_int_literal, + ACTIONS(401), 10, + anon_sym_component, + anon_sym_if, + anon_sym_else, + anon_sym_for, + anon_sym_while, + anon_sym_return, + anon_sym_signal, + anon_sym_var, + sym_identifier, + sym_parallel, + [6838] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(154), 1, - sym_parallel, - ACTIONS(162), 1, - anon_sym_LBRACK, - ACTIONS(166), 1, + ACTIONS(403), 9, + anon_sym_LBRACE, + anon_sym_RBRACE, anon_sym_LPAREN, - ACTIONS(178), 1, - sym_identifier, - ACTIONS(373), 1, - sym_int, - ACTIONS(174), 2, + anon_sym_LBRACK, anon_sym_BANG, anon_sym_TILDE, - ACTIONS(176), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(4), 2, - sym_member_expression, - sym_array_access_expression, - STATE(17), 11, - sym__expression, - sym_assignment_expression, - sym_increment_expression, - sym_decrement_expression, - sym_call_expression, - sym_parenthesized_expression, - sym_ternary_expression, - sym_unary_expression, - sym_binary_expression, - sym_array, - sym_tuple, - [6645] = 10, + sym_int_literal, + ACTIONS(405), 10, + anon_sym_component, + anon_sym_if, + anon_sym_else, + anon_sym_for, + anon_sym_while, + anon_sym_return, + anon_sym_signal, + anon_sym_var, + sym_identifier, + sym_parallel, + [6865] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(154), 1, - sym_parallel, - ACTIONS(162), 1, - anon_sym_LBRACK, - ACTIONS(166), 1, + ACTIONS(407), 9, + anon_sym_LBRACE, + anon_sym_RBRACE, anon_sym_LPAREN, - ACTIONS(178), 1, - sym_identifier, - ACTIONS(375), 1, - sym_int, - ACTIONS(174), 2, + anon_sym_LBRACK, anon_sym_BANG, anon_sym_TILDE, - ACTIONS(176), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(4), 2, - sym_member_expression, - sym_array_access_expression, - STATE(33), 11, - sym__expression, - sym_assignment_expression, - sym_increment_expression, - sym_decrement_expression, - sym_call_expression, - sym_parenthesized_expression, - sym_ternary_expression, - sym_unary_expression, - sym_binary_expression, - sym_array, - sym_tuple, - [6689] = 10, + sym_int_literal, + ACTIONS(409), 10, + anon_sym_component, + anon_sym_if, + anon_sym_else, + anon_sym_for, + anon_sym_while, + anon_sym_return, + anon_sym_signal, + anon_sym_var, + sym_identifier, + sym_parallel, + [6892] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(154), 1, - sym_parallel, - ACTIONS(162), 1, - anon_sym_LBRACK, - ACTIONS(166), 1, + ACTIONS(411), 9, + anon_sym_LBRACE, + anon_sym_RBRACE, anon_sym_LPAREN, - ACTIONS(178), 1, - sym_identifier, - ACTIONS(377), 1, - sym_int, - ACTIONS(174), 2, + anon_sym_LBRACK, anon_sym_BANG, anon_sym_TILDE, - ACTIONS(176), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(4), 2, - sym_member_expression, - sym_array_access_expression, - STATE(32), 11, - sym__expression, - sym_assignment_expression, - sym_increment_expression, - sym_decrement_expression, - sym_call_expression, - sym_parenthesized_expression, - sym_ternary_expression, - sym_unary_expression, - sym_binary_expression, - sym_array, - sym_tuple, - [6733] = 10, + sym_int_literal, + ACTIONS(413), 10, + anon_sym_component, + anon_sym_if, + anon_sym_else, + anon_sym_for, + anon_sym_while, + anon_sym_return, + anon_sym_signal, + anon_sym_var, + sym_identifier, + sym_parallel, + [6919] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(154), 1, - sym_parallel, - ACTIONS(162), 1, - anon_sym_LBRACK, - ACTIONS(166), 1, + ACTIONS(415), 9, + anon_sym_LBRACE, + anon_sym_RBRACE, anon_sym_LPAREN, - ACTIONS(178), 1, - sym_identifier, - ACTIONS(379), 1, - sym_int, - ACTIONS(174), 2, + anon_sym_LBRACK, anon_sym_BANG, anon_sym_TILDE, - ACTIONS(176), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(4), 2, - sym_member_expression, - sym_array_access_expression, - STATE(40), 11, - sym__expression, - sym_assignment_expression, - sym_increment_expression, - sym_decrement_expression, - sym_call_expression, - sym_parenthesized_expression, - sym_ternary_expression, - sym_unary_expression, - sym_binary_expression, - sym_array, - sym_tuple, - [6777] = 10, + sym_int_literal, + ACTIONS(417), 10, + anon_sym_component, + anon_sym_if, + anon_sym_else, + anon_sym_for, + anon_sym_while, + anon_sym_return, + anon_sym_signal, + anon_sym_var, + sym_identifier, + sym_parallel, + [6946] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(154), 1, - sym_parallel, - ACTIONS(162), 1, - anon_sym_LBRACK, - ACTIONS(166), 1, + ACTIONS(419), 9, + anon_sym_LBRACE, + anon_sym_RBRACE, anon_sym_LPAREN, - ACTIONS(178), 1, - sym_identifier, - ACTIONS(381), 1, - sym_int, - ACTIONS(174), 2, + anon_sym_LBRACK, anon_sym_BANG, anon_sym_TILDE, - ACTIONS(176), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(4), 2, - sym_member_expression, - sym_array_access_expression, - STATE(44), 11, - sym__expression, - sym_assignment_expression, - sym_increment_expression, - sym_decrement_expression, - sym_call_expression, - sym_parenthesized_expression, - sym_ternary_expression, - sym_unary_expression, - sym_binary_expression, - sym_array, - sym_tuple, - [6821] = 10, + sym_int_literal, + ACTIONS(421), 10, + anon_sym_component, + anon_sym_if, + anon_sym_else, + anon_sym_for, + anon_sym_while, + anon_sym_return, + anon_sym_signal, + anon_sym_var, + sym_identifier, + sym_parallel, + [6973] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(154), 1, - sym_parallel, - ACTIONS(162), 1, - anon_sym_LBRACK, - ACTIONS(166), 1, + ACTIONS(423), 9, + anon_sym_LBRACE, + anon_sym_RBRACE, anon_sym_LPAREN, - ACTIONS(178), 1, - sym_identifier, - ACTIONS(383), 1, - sym_int, - ACTIONS(174), 2, + anon_sym_LBRACK, anon_sym_BANG, anon_sym_TILDE, - ACTIONS(176), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(4), 2, - sym_member_expression, - sym_array_access_expression, - STATE(29), 11, - sym__expression, - sym_assignment_expression, - sym_increment_expression, - sym_decrement_expression, - sym_call_expression, - sym_parenthesized_expression, - sym_ternary_expression, - sym_unary_expression, - sym_binary_expression, - sym_array, - sym_tuple, - [6865] = 10, + sym_int_literal, + ACTIONS(425), 10, + anon_sym_component, + anon_sym_if, + anon_sym_else, + anon_sym_for, + anon_sym_while, + anon_sym_return, + anon_sym_signal, + anon_sym_var, + sym_identifier, + sym_parallel, + [7000] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(154), 1, - sym_parallel, - ACTIONS(162), 1, - anon_sym_LBRACK, - ACTIONS(166), 1, + ACTIONS(427), 1, + anon_sym_else, + ACTIONS(385), 9, + anon_sym_LBRACE, + anon_sym_RBRACE, anon_sym_LPAREN, - ACTIONS(178), 1, - sym_identifier, - ACTIONS(385), 1, - sym_int, - ACTIONS(174), 2, + anon_sym_LBRACK, anon_sym_BANG, anon_sym_TILDE, - ACTIONS(176), 2, anon_sym_DASH, anon_sym_PLUS, - STATE(4), 2, - sym_member_expression, - sym_array_access_expression, - STATE(62), 11, - sym__expression, - sym_assignment_expression, - sym_increment_expression, - sym_decrement_expression, - sym_call_expression, - sym_parenthesized_expression, - sym_ternary_expression, - sym_unary_expression, - sym_binary_expression, - sym_array, - sym_tuple, - [6909] = 3, + sym_int_literal, + ACTIONS(387), 9, + anon_sym_component, + anon_sym_if, + anon_sym_for, + anon_sym_while, + anon_sym_return, + anon_sym_signal, + anon_sym_var, + sym_identifier, + sym_parallel, + [7029] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(389), 9, + ACTIONS(429), 9, anon_sym_LBRACE, anon_sym_RBRACE, - anon_sym_LBRACK, anon_sym_LPAREN, + anon_sym_LBRACK, anon_sym_BANG, anon_sym_TILDE, anon_sym_DASH, anon_sym_PLUS, - sym_int, - ACTIONS(387), 10, - sym_parallel, + sym_int_literal, + ACTIONS(431), 10, anon_sym_component, anon_sym_if, anon_sym_else, anon_sym_for, anon_sym_while, anon_sym_return, - sym_identifier, - sym_var, anon_sym_signal, - [6936] = 3, + anon_sym_var, + sym_identifier, + sym_parallel, + [7056] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(393), 9, + ACTIONS(419), 9, anon_sym_LBRACE, anon_sym_RBRACE, - anon_sym_LBRACK, anon_sym_LPAREN, + anon_sym_LBRACK, anon_sym_BANG, anon_sym_TILDE, anon_sym_DASH, anon_sym_PLUS, - sym_int, - ACTIONS(391), 10, - sym_parallel, + sym_int_literal, + ACTIONS(421), 10, anon_sym_component, anon_sym_if, anon_sym_else, anon_sym_for, anon_sym_while, anon_sym_return, - sym_identifier, - sym_var, anon_sym_signal, - [6963] = 3, + anon_sym_var, + sym_identifier, + sym_parallel, + [7083] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(397), 9, + ACTIONS(433), 9, anon_sym_LBRACE, anon_sym_RBRACE, - anon_sym_LBRACK, anon_sym_LPAREN, + anon_sym_LBRACK, anon_sym_BANG, anon_sym_TILDE, anon_sym_DASH, anon_sym_PLUS, - sym_int, - ACTIONS(395), 10, - sym_parallel, + sym_int_literal, + ACTIONS(435), 10, anon_sym_component, anon_sym_if, anon_sym_else, anon_sym_for, anon_sym_while, anon_sym_return, - sym_identifier, - sym_var, anon_sym_signal, - [6990] = 3, + anon_sym_var, + sym_identifier, + sym_parallel, + [7110] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(401), 9, + ACTIONS(437), 9, anon_sym_LBRACE, anon_sym_RBRACE, - anon_sym_LBRACK, anon_sym_LPAREN, + anon_sym_LBRACK, anon_sym_BANG, anon_sym_TILDE, anon_sym_DASH, anon_sym_PLUS, - sym_int, - ACTIONS(399), 10, - sym_parallel, + sym_int_literal, + ACTIONS(439), 10, anon_sym_component, anon_sym_if, anon_sym_else, anon_sym_for, anon_sym_while, anon_sym_return, - sym_identifier, - sym_var, anon_sym_signal, - [7017] = 3, + anon_sym_var, + sym_identifier, + sym_parallel, + [7137] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(405), 9, + ACTIONS(441), 9, anon_sym_LBRACE, anon_sym_RBRACE, - anon_sym_LBRACK, anon_sym_LPAREN, + anon_sym_LBRACK, anon_sym_BANG, anon_sym_TILDE, anon_sym_DASH, anon_sym_PLUS, - sym_int, - ACTIONS(403), 10, - sym_parallel, + sym_int_literal, + ACTIONS(443), 10, anon_sym_component, anon_sym_if, anon_sym_else, anon_sym_for, anon_sym_while, anon_sym_return, - sym_identifier, - sym_var, anon_sym_signal, - [7044] = 3, + anon_sym_var, + sym_identifier, + sym_parallel, + [7164] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(409), 9, + ACTIONS(445), 9, anon_sym_LBRACE, anon_sym_RBRACE, - anon_sym_LBRACK, anon_sym_LPAREN, + anon_sym_LBRACK, anon_sym_BANG, anon_sym_TILDE, anon_sym_DASH, anon_sym_PLUS, - sym_int, - ACTIONS(407), 10, - sym_parallel, + sym_int_literal, + ACTIONS(447), 10, anon_sym_component, anon_sym_if, anon_sym_else, anon_sym_for, anon_sym_while, anon_sym_return, - sym_identifier, - sym_var, anon_sym_signal, - [7071] = 3, + anon_sym_var, + sym_identifier, + sym_parallel, + [7191] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(413), 9, + ACTIONS(449), 9, anon_sym_LBRACE, anon_sym_RBRACE, - anon_sym_LBRACK, anon_sym_LPAREN, + anon_sym_LBRACK, anon_sym_BANG, anon_sym_TILDE, anon_sym_DASH, anon_sym_PLUS, - sym_int, - ACTIONS(411), 10, - sym_parallel, + sym_int_literal, + ACTIONS(451), 10, anon_sym_component, anon_sym_if, anon_sym_else, anon_sym_for, anon_sym_while, anon_sym_return, - sym_identifier, - sym_var, anon_sym_signal, - [7098] = 3, + anon_sym_var, + sym_identifier, + sym_parallel, + [7218] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(417), 9, + ACTIONS(453), 9, anon_sym_LBRACE, anon_sym_RBRACE, - anon_sym_LBRACK, anon_sym_LPAREN, + anon_sym_LBRACK, anon_sym_BANG, anon_sym_TILDE, anon_sym_DASH, anon_sym_PLUS, - sym_int, - ACTIONS(415), 10, - sym_parallel, + sym_int_literal, + ACTIONS(455), 10, anon_sym_component, anon_sym_if, anon_sym_else, anon_sym_for, anon_sym_while, anon_sym_return, - sym_identifier, - sym_var, anon_sym_signal, - [7125] = 3, + anon_sym_var, + sym_identifier, + sym_parallel, + [7245] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(421), 9, + ACTIONS(437), 9, anon_sym_LBRACE, anon_sym_RBRACE, - anon_sym_LBRACK, anon_sym_LPAREN, + anon_sym_LBRACK, anon_sym_BANG, anon_sym_TILDE, anon_sym_DASH, anon_sym_PLUS, - sym_int, - ACTIONS(419), 10, - sym_parallel, + sym_int_literal, + ACTIONS(439), 10, anon_sym_component, anon_sym_if, anon_sym_else, anon_sym_for, anon_sym_while, anon_sym_return, - sym_identifier, - sym_var, anon_sym_signal, - [7152] = 3, + anon_sym_var, + sym_identifier, + sym_parallel, + [7272] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(425), 9, + ACTIONS(429), 9, anon_sym_LBRACE, anon_sym_RBRACE, - anon_sym_LBRACK, anon_sym_LPAREN, + anon_sym_LBRACK, anon_sym_BANG, anon_sym_TILDE, anon_sym_DASH, anon_sym_PLUS, - sym_int, - ACTIONS(423), 10, - sym_parallel, + sym_int_literal, + ACTIONS(431), 9, anon_sym_component, anon_sym_if, - anon_sym_else, anon_sym_for, anon_sym_while, anon_sym_return, - sym_identifier, - sym_var, anon_sym_signal, - [7179] = 3, + anon_sym_var, + sym_identifier, + sym_parallel, + [7298] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(429), 9, + ACTIONS(419), 9, anon_sym_LBRACE, anon_sym_RBRACE, - anon_sym_LBRACK, anon_sym_LPAREN, + anon_sym_LBRACK, anon_sym_BANG, anon_sym_TILDE, anon_sym_DASH, anon_sym_PLUS, - sym_int, - ACTIONS(427), 10, - sym_parallel, + sym_int_literal, + ACTIONS(421), 9, anon_sym_component, anon_sym_if, - anon_sym_else, anon_sym_for, anon_sym_while, anon_sym_return, - sym_identifier, - sym_var, anon_sym_signal, - [7206] = 4, + anon_sym_var, + sym_identifier, + sym_parallel, + [7324] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(435), 1, - anon_sym_else, - ACTIONS(431), 9, - sym_parallel, + ACTIONS(395), 9, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_LPAREN, + anon_sym_LBRACK, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_DASH, + anon_sym_PLUS, + sym_int_literal, + ACTIONS(397), 9, anon_sym_component, anon_sym_if, anon_sym_for, anon_sym_while, anon_sym_return, - sym_identifier, - sym_var, anon_sym_signal, - ACTIONS(433), 9, + anon_sym_var, + sym_identifier, + sym_parallel, + [7350] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(381), 9, anon_sym_LBRACE, anon_sym_RBRACE, - anon_sym_LBRACK, anon_sym_LPAREN, + anon_sym_LBRACK, anon_sym_BANG, anon_sym_TILDE, anon_sym_DASH, anon_sym_PLUS, - sym_int, - [7235] = 3, + sym_int_literal, + ACTIONS(383), 9, + anon_sym_component, + anon_sym_if, + anon_sym_for, + anon_sym_while, + anon_sym_return, + anon_sym_signal, + anon_sym_var, + sym_identifier, + sym_parallel, + [7376] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(439), 9, + ACTIONS(415), 9, anon_sym_LBRACE, anon_sym_RBRACE, - anon_sym_LBRACK, anon_sym_LPAREN, + anon_sym_LBRACK, anon_sym_BANG, anon_sym_TILDE, anon_sym_DASH, anon_sym_PLUS, - sym_int, - ACTIONS(437), 10, - sym_parallel, + sym_int_literal, + ACTIONS(417), 9, anon_sym_component, anon_sym_if, - anon_sym_else, anon_sym_for, anon_sym_while, anon_sym_return, - sym_identifier, - sym_var, anon_sym_signal, - [7262] = 4, + anon_sym_var, + sym_identifier, + sym_parallel, + [7402] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(441), 1, - anon_sym_else, - ACTIONS(431), 9, - sym_parallel, + ACTIONS(453), 9, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_LPAREN, + anon_sym_LBRACK, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_DASH, + anon_sym_PLUS, + sym_int_literal, + ACTIONS(455), 9, anon_sym_component, anon_sym_if, anon_sym_for, anon_sym_while, anon_sym_return, - sym_identifier, - sym_var, anon_sym_signal, - ACTIONS(433), 9, + anon_sym_var, + sym_identifier, + sym_parallel, + [7428] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(419), 9, anon_sym_LBRACE, anon_sym_RBRACE, - anon_sym_LBRACK, anon_sym_LPAREN, + anon_sym_LBRACK, anon_sym_BANG, anon_sym_TILDE, anon_sym_DASH, anon_sym_PLUS, - sym_int, - [7291] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(399), 9, - sym_parallel, + sym_int_literal, + ACTIONS(421), 9, anon_sym_component, anon_sym_if, anon_sym_for, anon_sym_while, anon_sym_return, - sym_identifier, - sym_var, anon_sym_signal, - ACTIONS(401), 9, + anon_sym_var, + sym_identifier, + sym_parallel, + [7454] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(403), 9, anon_sym_LBRACE, anon_sym_RBRACE, - anon_sym_LBRACK, anon_sym_LPAREN, + anon_sym_LBRACK, anon_sym_BANG, anon_sym_TILDE, anon_sym_DASH, anon_sym_PLUS, - sym_int, - [7317] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(395), 9, - sym_parallel, + sym_int_literal, + ACTIONS(405), 9, anon_sym_component, anon_sym_if, anon_sym_for, anon_sym_while, anon_sym_return, - sym_identifier, - sym_var, anon_sym_signal, - ACTIONS(397), 9, + anon_sym_var, + sym_identifier, + sym_parallel, + [7480] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(377), 9, anon_sym_LBRACE, anon_sym_RBRACE, - anon_sym_LBRACK, anon_sym_LPAREN, + anon_sym_LBRACK, anon_sym_BANG, anon_sym_TILDE, anon_sym_DASH, anon_sym_PLUS, - sym_int, - [7343] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(419), 9, - sym_parallel, + sym_int_literal, + ACTIONS(379), 9, anon_sym_component, anon_sym_if, anon_sym_for, anon_sym_while, anon_sym_return, - sym_identifier, - sym_var, anon_sym_signal, - ACTIONS(421), 9, + anon_sym_var, + sym_identifier, + sym_parallel, + [7506] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(391), 9, anon_sym_LBRACE, anon_sym_RBRACE, - anon_sym_LBRACK, anon_sym_LPAREN, + anon_sym_LBRACK, anon_sym_BANG, anon_sym_TILDE, anon_sym_DASH, anon_sym_PLUS, - sym_int, - [7369] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(423), 9, - sym_parallel, + sym_int_literal, + ACTIONS(393), 9, anon_sym_component, anon_sym_if, anon_sym_for, anon_sym_while, anon_sym_return, - sym_identifier, - sym_var, anon_sym_signal, - ACTIONS(425), 9, + anon_sym_var, + sym_identifier, + sym_parallel, + [7532] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(411), 9, anon_sym_LBRACE, anon_sym_RBRACE, - anon_sym_LBRACK, anon_sym_LPAREN, + anon_sym_LBRACK, anon_sym_BANG, anon_sym_TILDE, anon_sym_DASH, anon_sym_PLUS, - sym_int, - [7395] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(387), 9, - sym_parallel, + sym_int_literal, + ACTIONS(413), 9, anon_sym_component, anon_sym_if, anon_sym_for, anon_sym_while, anon_sym_return, - sym_identifier, - sym_var, anon_sym_signal, - ACTIONS(389), 9, + anon_sym_var, + sym_identifier, + sym_parallel, + [7558] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(449), 9, anon_sym_LBRACE, anon_sym_RBRACE, - anon_sym_LBRACK, anon_sym_LPAREN, + anon_sym_LBRACK, anon_sym_BANG, anon_sym_TILDE, anon_sym_DASH, anon_sym_PLUS, - sym_int, - [7421] = 3, + sym_int_literal, + ACTIONS(451), 9, + anon_sym_component, + anon_sym_if, + anon_sym_for, + anon_sym_while, + anon_sym_return, + anon_sym_signal, + anon_sym_var, + sym_identifier, + sym_parallel, + [7584] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(403), 9, - sym_parallel, + ACTIONS(433), 9, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_LPAREN, + anon_sym_LBRACK, + anon_sym_BANG, + anon_sym_TILDE, + anon_sym_DASH, + anon_sym_PLUS, + sym_int_literal, + ACTIONS(435), 9, anon_sym_component, anon_sym_if, anon_sym_for, anon_sym_while, anon_sym_return, - sym_identifier, - sym_var, anon_sym_signal, - ACTIONS(405), 9, + anon_sym_var, + sym_identifier, + sym_parallel, + [7610] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(445), 9, anon_sym_LBRACE, anon_sym_RBRACE, - anon_sym_LBRACK, anon_sym_LPAREN, + anon_sym_LBRACK, anon_sym_BANG, anon_sym_TILDE, anon_sym_DASH, anon_sym_PLUS, - sym_int, - [7447] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(415), 9, - sym_parallel, + sym_int_literal, + ACTIONS(447), 9, anon_sym_component, anon_sym_if, anon_sym_for, anon_sym_while, anon_sym_return, - sym_identifier, - sym_var, anon_sym_signal, - ACTIONS(417), 9, + anon_sym_var, + sym_identifier, + sym_parallel, + [7636] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(437), 9, anon_sym_LBRACE, anon_sym_RBRACE, - anon_sym_LBRACK, anon_sym_LPAREN, + anon_sym_LBRACK, anon_sym_BANG, anon_sym_TILDE, anon_sym_DASH, anon_sym_PLUS, - sym_int, - [7473] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(427), 9, - sym_parallel, + sym_int_literal, + ACTIONS(439), 9, anon_sym_component, anon_sym_if, anon_sym_for, anon_sym_while, anon_sym_return, - sym_identifier, - sym_var, anon_sym_signal, - ACTIONS(429), 9, + anon_sym_var, + sym_identifier, + sym_parallel, + [7662] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(437), 9, anon_sym_LBRACE, anon_sym_RBRACE, - anon_sym_LBRACK, anon_sym_LPAREN, + anon_sym_LBRACK, anon_sym_BANG, anon_sym_TILDE, anon_sym_DASH, anon_sym_PLUS, - sym_int, - [7499] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(407), 9, - sym_parallel, + sym_int_literal, + ACTIONS(439), 9, anon_sym_component, anon_sym_if, anon_sym_for, anon_sym_while, anon_sym_return, - sym_identifier, - sym_var, anon_sym_signal, - ACTIONS(409), 9, + anon_sym_var, + sym_identifier, + sym_parallel, + [7688] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(441), 9, anon_sym_LBRACE, anon_sym_RBRACE, - anon_sym_LBRACK, anon_sym_LPAREN, + anon_sym_LBRACK, anon_sym_BANG, anon_sym_TILDE, anon_sym_DASH, anon_sym_PLUS, - sym_int, - [7525] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(437), 9, - sym_parallel, + sym_int_literal, + ACTIONS(443), 9, anon_sym_component, anon_sym_if, anon_sym_for, anon_sym_while, anon_sym_return, - sym_identifier, - sym_var, anon_sym_signal, - ACTIONS(439), 9, + anon_sym_var, + sym_identifier, + sym_parallel, + [7714] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(407), 9, anon_sym_LBRACE, anon_sym_RBRACE, - anon_sym_LBRACK, anon_sym_LPAREN, + anon_sym_LBRACK, anon_sym_BANG, anon_sym_TILDE, anon_sym_DASH, anon_sym_PLUS, - sym_int, - [7551] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(411), 9, - sym_parallel, + sym_int_literal, + ACTIONS(409), 9, anon_sym_component, anon_sym_if, anon_sym_for, anon_sym_while, anon_sym_return, - sym_identifier, - sym_var, anon_sym_signal, - ACTIONS(413), 9, + anon_sym_var, + sym_identifier, + sym_parallel, + [7740] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(423), 9, anon_sym_LBRACE, anon_sym_RBRACE, - anon_sym_LBRACK, anon_sym_LPAREN, + anon_sym_LBRACK, anon_sym_BANG, anon_sym_TILDE, anon_sym_DASH, anon_sym_PLUS, - sym_int, - [7577] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(391), 9, - sym_parallel, + sym_int_literal, + ACTIONS(425), 9, anon_sym_component, anon_sym_if, anon_sym_for, anon_sym_while, anon_sym_return, - sym_identifier, - sym_var, anon_sym_signal, - ACTIONS(393), 9, + anon_sym_var, + sym_identifier, + sym_parallel, + [7766] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(399), 9, anon_sym_LBRACE, anon_sym_RBRACE, - anon_sym_LBRACK, anon_sym_LPAREN, + anon_sym_LBRACK, anon_sym_BANG, anon_sym_TILDE, anon_sym_DASH, anon_sym_PLUS, - sym_int, - [7603] = 8, + sym_int_literal, + ACTIONS(401), 9, + anon_sym_component, + anon_sym_if, + anon_sym_for, + anon_sym_while, + anon_sym_return, + anon_sym_signal, + anon_sym_var, + sym_identifier, + sym_parallel, + [7792] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(443), 1, + ACTIONS(457), 1, ts_builtin_sym_end, - ACTIONS(445), 1, + ACTIONS(459), 1, anon_sym_pragma, - ACTIONS(448), 1, + ACTIONS(462), 1, anon_sym_include, - ACTIONS(451), 1, + ACTIONS(465), 1, anon_sym_template, - ACTIONS(454), 1, + ACTIONS(468), 1, anon_sym_function, - ACTIONS(457), 1, + ACTIONS(471), 1, anon_sym_component, - STATE(139), 9, + STATE(151), 9, sym__source_unit, sym__directive, sym_pragma_directive, @@ -9682,7 +10047,7 @@ static const uint16_t ts_small_parse_table[] = { sym_function_definition, sym_main_component_definition, aux_sym_source_file_repeat1, - [7636] = 8, + [7825] = 8, ACTIONS(3), 1, sym_comment, ACTIONS(7), 1, @@ -9695,9 +10060,9 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_function, ACTIONS(15), 1, anon_sym_component, - ACTIONS(460), 1, + ACTIONS(474), 1, ts_builtin_sym_end, - STATE(139), 9, + STATE(151), 9, sym__source_unit, sym__directive, sym_pragma_directive, @@ -9707,1103 +10072,1311 @@ static const uint16_t ts_small_parse_table[] = { sym_function_definition, sym_main_component_definition, aux_sym_source_file_repeat1, - [7669] = 8, - ACTIONS(3), 1, - sym_comment, - ACTIONS(462), 1, - anon_sym_EQ, - ACTIONS(464), 1, - anon_sym_LBRACK, - STATE(142), 1, - aux_sym__variable_initialization_repeat1, - STATE(150), 1, - aux_sym_array_definition_repeat1, - STATE(155), 1, - sym_array_definition, - ACTIONS(466), 2, - anon_sym_COMMA, - sym__semicolon, - ACTIONS(468), 4, - anon_sym_LT_EQ_EQ, - anon_sym_EQ_EQ_GT, - anon_sym_LT_DASH_DASH, - anon_sym_DASH_DASH_GT, - [7698] = 8, - ACTIONS(3), 1, - sym_comment, - ACTIONS(464), 1, - anon_sym_LBRACK, - ACTIONS(470), 1, - anon_sym_EQ, - STATE(145), 1, - aux_sym__variable_initialization_repeat1, - STATE(150), 1, - aux_sym_array_definition_repeat1, - STATE(153), 1, - sym_array_definition, - ACTIONS(472), 2, - anon_sym_COMMA, - sym__semicolon, - ACTIONS(474), 4, - anon_sym_LT_EQ_EQ, - anon_sym_EQ_EQ_GT, - anon_sym_LT_DASH_DASH, - anon_sym_DASH_DASH_GT, - [7727] = 3, + [7858] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(399), 2, - sym_parallel, + ACTIONS(401), 2, sym_identifier, - ACTIONS(401), 9, - anon_sym_LBRACK, + sym_parallel, + ACTIONS(399), 9, anon_sym_LPAREN, anon_sym_RPAREN, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_DASH, - anon_sym_PLUS, - sym__semicolon, - sym_int, - [7746] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(415), 2, - sym_parallel, - sym_identifier, - ACTIONS(417), 8, anon_sym_LBRACK, - anon_sym_LPAREN, anon_sym_BANG, anon_sym_TILDE, anon_sym_DASH, anon_sym_PLUS, - sym__semicolon, - sym_int, - [7764] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(478), 1, - anon_sym_EQ, - ACTIONS(480), 1, - anon_sym_COMMA, - STATE(145), 1, - aux_sym__variable_initialization_repeat1, - ACTIONS(476), 7, - anon_sym_RBRACE, - anon_sym_LBRACK, - anon_sym_LT_EQ_EQ, - anon_sym_EQ_EQ_GT, - anon_sym_LT_DASH_DASH, - anon_sym_DASH_DASH_GT, - sym__semicolon, - [7786] = 3, + anon_sym_SEMI, + sym_int_literal, + [7877] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(395), 2, - sym_parallel, + ACTIONS(397), 2, sym_identifier, - ACTIONS(397), 8, - anon_sym_LBRACK, + sym_parallel, + ACTIONS(395), 8, anon_sym_LPAREN, + anon_sym_LBRACK, anon_sym_BANG, anon_sym_TILDE, anon_sym_DASH, anon_sym_PLUS, - sym__semicolon, - sym_int, - [7804] = 3, + anon_sym_SEMI, + sym_int_literal, + [7895] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(437), 2, - sym_parallel, + ACTIONS(393), 2, sym_identifier, - ACTIONS(439), 8, - anon_sym_LBRACK, + sym_parallel, + ACTIONS(391), 8, anon_sym_LPAREN, + anon_sym_LBRACK, anon_sym_BANG, anon_sym_TILDE, anon_sym_DASH, anon_sym_PLUS, - sym__semicolon, - sym_int, - [7822] = 3, + anon_sym_SEMI, + sym_int_literal, + [7913] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(427), 2, - sym_parallel, + ACTIONS(476), 1, + anon_sym_LBRACE, + ACTIONS(480), 1, sym_identifier, - ACTIONS(429), 8, - anon_sym_LBRACK, - anon_sym_LPAREN, - anon_sym_BANG, - anon_sym_TILDE, - anon_sym_DASH, - anon_sym_PLUS, - sym__semicolon, - sym_int, - [7840] = 3, + STATE(210), 1, + sym__signal_declaration, + STATE(211), 1, + sym_signal_visibility, + STATE(262), 1, + sym_signal_tags, + ACTIONS(478), 2, + anon_sym_input, + anon_sym_output, + [7936] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(478), 1, - anon_sym_EQ, - ACTIONS(476), 8, - anon_sym_RBRACE, + ACTIONS(484), 1, anon_sym_LBRACK, + STATE(157), 1, + aux_sym_array_type_repeat1, + ACTIONS(482), 5, anon_sym_COMMA, - anon_sym_LT_EQ_EQ, - anon_sym_EQ_EQ_GT, - anon_sym_LT_DASH_DASH, - anon_sym_DASH_DASH_GT, - sym__semicolon, - [7857] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(464), 1, - anon_sym_LBRACK, - ACTIONS(483), 1, anon_sym_EQ, - STATE(151), 1, - aux_sym_array_definition_repeat1, - ACTIONS(485), 6, - anon_sym_COMMA, anon_sym_LT_EQ_EQ, - anon_sym_EQ_EQ_GT, anon_sym_LT_DASH_DASH, - anon_sym_DASH_DASH_GT, - sym__semicolon, - [7878] = 5, + anon_sym_SEMI, + [7953] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(487), 1, - anon_sym_EQ, ACTIONS(489), 1, anon_sym_LBRACK, - STATE(151), 1, - aux_sym_array_definition_repeat1, - ACTIONS(492), 6, - anon_sym_COMMA, - anon_sym_LT_EQ_EQ, - anon_sym_EQ_EQ_GT, - anon_sym_LT_DASH_DASH, - anon_sym_DASH_DASH_GT, - sym__semicolon, - [7899] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(494), 1, - anon_sym_EQ, - ACTIONS(496), 7, - anon_sym_LBRACK, + STATE(157), 1, + aux_sym_array_type_repeat1, + ACTIONS(487), 5, anon_sym_COMMA, - anon_sym_LT_EQ_EQ, - anon_sym_EQ_EQ_GT, - anon_sym_LT_DASH_DASH, - anon_sym_DASH_DASH_GT, - sym__semicolon, - [7915] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(498), 1, anon_sym_EQ, - ACTIONS(500), 2, - anon_sym_COMMA, - sym__semicolon, - ACTIONS(502), 4, anon_sym_LT_EQ_EQ, - anon_sym_EQ_EQ_GT, anon_sym_LT_DASH_DASH, - anon_sym_DASH_DASH_GT, - [7932] = 4, + anon_sym_SEMI, + [7970] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(504), 1, - anon_sym_EQ, - ACTIONS(506), 2, - anon_sym_COMMA, - sym__semicolon, - ACTIONS(508), 4, - anon_sym_LT_EQ_EQ, - anon_sym_EQ_EQ_GT, - anon_sym_LT_DASH_DASH, - anon_sym_DASH_DASH_GT, - [7949] = 4, + ACTIONS(476), 1, + anon_sym_LBRACE, + ACTIONS(480), 1, + sym_identifier, + STATE(190), 1, + sym__signal_declaration, + STATE(213), 1, + sym_signal_visibility, + STATE(266), 1, + sym_signal_tags, + ACTIONS(478), 2, + anon_sym_input, + anon_sym_output, + [7993] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(470), 1, - anon_sym_EQ, - ACTIONS(472), 2, + ACTIONS(489), 1, + anon_sym_LBRACK, + STATE(158), 1, + aux_sym_array_type_repeat1, + STATE(203), 1, + sym_array_type, + ACTIONS(491), 2, anon_sym_COMMA, - sym__semicolon, - ACTIONS(474), 4, + anon_sym_SEMI, + ACTIONS(493), 2, anon_sym_LT_EQ_EQ, - anon_sym_EQ_EQ_GT, anon_sym_LT_DASH_DASH, - anon_sym_DASH_DASH_GT, - [7966] = 2, + [8014] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(510), 6, + ACTIONS(495), 6, ts_builtin_sym_end, anon_sym_pragma, anon_sym_include, anon_sym_template, anon_sym_function, anon_sym_component, - [7978] = 2, + [8026] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(512), 6, + ACTIONS(497), 6, ts_builtin_sym_end, anon_sym_pragma, anon_sym_include, anon_sym_template, anon_sym_function, anon_sym_component, - [7990] = 2, + [8038] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(514), 6, + ACTIONS(499), 6, ts_builtin_sym_end, anon_sym_pragma, anon_sym_include, anon_sym_template, anon_sym_function, anon_sym_component, - [8002] = 2, + [8050] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(516), 6, + ACTIONS(501), 6, + anon_sym_COMMA, + anon_sym_EQ, + anon_sym_LBRACK, + anon_sym_LT_EQ_EQ, + anon_sym_LT_DASH_DASH, + anon_sym_SEMI, + [8062] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(503), 6, ts_builtin_sym_end, anon_sym_pragma, anon_sym_include, anon_sym_template, anon_sym_function, anon_sym_component, - [8014] = 2, + [8074] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(518), 6, + ACTIONS(505), 6, ts_builtin_sym_end, anon_sym_pragma, anon_sym_include, anon_sym_template, anon_sym_function, anon_sym_component, - [8026] = 2, + [8086] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(520), 6, + ACTIONS(507), 6, ts_builtin_sym_end, anon_sym_pragma, anon_sym_include, anon_sym_template, anon_sym_function, anon_sym_component, - [8038] = 2, + [8098] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(522), 6, + ACTIONS(509), 6, ts_builtin_sym_end, anon_sym_pragma, anon_sym_include, anon_sym_template, anon_sym_function, anon_sym_component, - [8050] = 2, + [8110] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(524), 6, + ACTIONS(511), 6, ts_builtin_sym_end, anon_sym_pragma, anon_sym_include, anon_sym_template, anon_sym_function, anon_sym_component, - [8062] = 2, + [8122] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(489), 1, + anon_sym_LBRACK, + ACTIONS(515), 1, + anon_sym_EQ, + STATE(158), 1, + aux_sym_array_type_repeat1, + STATE(224), 1, + sym_array_type, + ACTIONS(513), 2, + anon_sym_COMMA, + anon_sym_SEMI, + [8142] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(526), 6, + ACTIONS(517), 6, ts_builtin_sym_end, anon_sym_pragma, anon_sym_include, anon_sym_template, anon_sym_function, anon_sym_component, - [8074] = 2, + [8154] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(528), 6, + ACTIONS(519), 6, ts_builtin_sym_end, anon_sym_pragma, anon_sym_include, anon_sym_template, anon_sym_function, anon_sym_component, - [8086] = 6, + [8166] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(530), 1, - anon_sym_LBRACE, - ACTIONS(532), 1, - sym_identifier, - STATE(201), 1, - sym_signal_visability, - STATE(232), 1, - sym_signal_tags, - ACTIONS(534), 2, - anon_sym_input, - anon_sym_output, - [8106] = 2, + ACTIONS(489), 1, + anon_sym_LBRACK, + ACTIONS(523), 1, + anon_sym_EQ, + STATE(158), 1, + aux_sym_array_type_repeat1, + STATE(216), 1, + sym_array_type, + ACTIONS(521), 2, + anon_sym_COMMA, + anon_sym_SEMI, + [8186] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(536), 6, + ACTIONS(525), 6, ts_builtin_sym_end, anon_sym_pragma, anon_sym_include, anon_sym_template, anon_sym_function, anon_sym_component, - [8118] = 5, + [8198] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(538), 1, + ACTIONS(527), 1, anon_sym_custom_templates, - ACTIONS(540), 1, + ACTIONS(529), 1, anon_sym_circom, - STATE(250), 1, + STATE(296), 1, sym__circom, - STATE(253), 2, + STATE(264), 2, sym_circom_custom_templates_token, sym_circom_pragma_token, - [8135] = 4, + [8215] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(542), 1, + ACTIONS(531), 1, anon_sym_COMMA, - STATE(169), 1, - aux_sym_main_component_public_signals_repeat1, - ACTIONS(545), 2, - anon_sym_RBRACK, - anon_sym_RPAREN, - [8149] = 5, - ACTIONS(547), 1, - sym__escape_sequence, - ACTIONS(549), 1, - sym__string_immediate_elt_inside_double_quote, - ACTIONS(551), 1, - anon_sym_DQUOTE, - ACTIONS(553), 1, + ACTIONS(533), 1, + anon_sym_SEMI, + STATE(140), 1, + sym__semicolon, + STATE(215), 1, + aux_sym_variable_declaration_statement_repeat1, + [8231] = 5, + ACTIONS(3), 1, sym_comment, - STATE(174), 1, - aux_sym_string_repeat1, - [8165] = 5, - ACTIONS(553), 1, + ACTIONS(531), 1, + anon_sym_COMMA, + ACTIONS(535), 1, + anon_sym_SEMI, + STATE(133), 1, + sym__semicolon, + STATE(176), 1, + aux_sym_variable_declaration_statement_repeat1, + [8247] = 5, + ACTIONS(3), 1, sym_comment, - ACTIONS(555), 1, - sym__escape_sequence, - ACTIONS(558), 1, - sym__string_immediate_elt_inside_double_quote, - ACTIONS(561), 1, - anon_sym_DQUOTE, - STATE(171), 1, - aux_sym_string_repeat1, - [8181] = 4, + ACTIONS(537), 1, + anon_sym_COMMA, + ACTIONS(539), 1, + anon_sym_SEMI, + STATE(119), 1, + sym__semicolon, + STATE(227), 1, + aux_sym_signal_declaration_statement_repeat1, + [8263] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(537), 1, + anon_sym_COMMA, + ACTIONS(541), 1, + anon_sym_SEMI, + STATE(120), 1, + sym__semicolon, + STATE(212), 1, + aux_sym_signal_declaration_statement_repeat1, + [8279] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(537), 1, + anon_sym_COMMA, + ACTIONS(543), 1, + anon_sym_SEMI, + STATE(123), 1, + sym__semicolon, + STATE(227), 1, + aux_sym_signal_declaration_statement_repeat1, + [8295] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(545), 1, + anon_sym_COMMA, + STATE(181), 1, + aux_sym_array_expression_repeat1, + ACTIONS(142), 2, + anon_sym_RPAREN, + anon_sym_RBRACK, + [8309] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(531), 1, + anon_sym_COMMA, + ACTIONS(548), 1, + anon_sym_SEMI, + STATE(155), 1, + sym__semicolon, + STATE(215), 1, + aux_sym_variable_declaration_statement_repeat1, + [8325] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(565), 1, + ACTIONS(550), 1, sym_identifier, - STATE(230), 1, + STATE(283), 1, sym_template_type, - ACTIONS(563), 2, + ACTIONS(552), 2, sym_custom, sym_parallel, - [8195] = 5, - ACTIONS(551), 1, - anon_sym_SQUOTE, - ACTIONS(553), 1, + [8339] = 5, + ACTIONS(3), 1, sym_comment, - ACTIONS(567), 1, - sym__escape_sequence, - ACTIONS(569), 1, - sym__string_immediate_elt_inside_quote, - STATE(175), 1, - aux_sym_string_repeat2, - [8211] = 5, - ACTIONS(553), 1, + ACTIONS(537), 1, + anon_sym_COMMA, + ACTIONS(554), 1, + anon_sym_SEMI, + STATE(125), 1, + sym__semicolon, + STATE(178), 1, + aux_sym_signal_declaration_statement_repeat1, + [8355] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(537), 1, + anon_sym_COMMA, + ACTIONS(556), 1, + anon_sym_SEMI, + STATE(130), 1, + sym__semicolon, + STATE(180), 1, + aux_sym_signal_declaration_statement_repeat1, + [8371] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(537), 1, + anon_sym_COMMA, + ACTIONS(558), 1, + anon_sym_SEMI, + STATE(126), 1, + sym__semicolon, + STATE(227), 1, + aux_sym_signal_declaration_statement_repeat1, + [8387] = 5, + ACTIONS(3), 1, sym_comment, - ACTIONS(571), 1, + ACTIONS(560), 1, + anon_sym_COMMA, + ACTIONS(562), 1, + anon_sym_SEMI, + STATE(110), 1, + sym__semicolon, + STATE(219), 1, + aux_sym_component_declaration_statement_repeat1, + [8403] = 5, + ACTIONS(564), 1, + anon_sym_DQUOTE, + ACTIONS(566), 1, sym__escape_sequence, - ACTIONS(573), 1, + ACTIONS(568), 1, sym__string_immediate_elt_inside_double_quote, - ACTIONS(575), 1, - anon_sym_DQUOTE, - STATE(171), 1, + ACTIONS(570), 1, + sym_comment, + STATE(191), 1, aux_sym_string_repeat1, - [8227] = 5, - ACTIONS(553), 1, + [8419] = 5, + ACTIONS(3), 1, sym_comment, - ACTIONS(575), 1, - anon_sym_SQUOTE, - ACTIONS(577), 1, + ACTIONS(531), 1, + anon_sym_COMMA, + ACTIONS(572), 1, + anon_sym_SEMI, + STATE(154), 1, + sym__semicolon, + STATE(182), 1, + aux_sym_variable_declaration_statement_repeat1, + [8435] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(537), 1, + anon_sym_COMMA, + ACTIONS(574), 1, + anon_sym_SEMI, + STATE(127), 1, + sym__semicolon, + STATE(186), 1, + aux_sym_signal_declaration_statement_repeat1, + [8451] = 5, + ACTIONS(570), 1, + sym_comment, + ACTIONS(576), 1, + anon_sym_DQUOTE, + ACTIONS(578), 1, sym__escape_sequence, - ACTIONS(579), 1, - sym__string_immediate_elt_inside_quote, - STATE(177), 1, - aux_sym_string_repeat2, - [8243] = 4, + ACTIONS(580), 1, + sym__string_immediate_elt_inside_double_quote, + STATE(195), 1, + aux_sym_string_repeat1, + [8467] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(581), 1, + ACTIONS(560), 1, anon_sym_COMMA, - STATE(176), 1, - aux_sym_argument_list_repeat1, - ACTIONS(148), 2, - anon_sym_RBRACK, - anon_sym_RPAREN, - [8257] = 5, - ACTIONS(553), 1, + ACTIONS(582), 1, + anon_sym_SEMI, + STATE(129), 1, + sym__semicolon, + STATE(187), 1, + aux_sym_component_declaration_statement_repeat1, + [8483] = 5, + ACTIONS(3), 1, sym_comment, + ACTIONS(537), 1, + anon_sym_COMMA, ACTIONS(584), 1, + anon_sym_SEMI, + STATE(145), 1, + sym__semicolon, + STATE(199), 1, + aux_sym_signal_declaration_statement_repeat1, + [8499] = 5, + ACTIONS(570), 1, + sym_comment, + ACTIONS(576), 1, + anon_sym_SQUOTE, + ACTIONS(586), 1, sym__escape_sequence, - ACTIONS(587), 1, + ACTIONS(588), 1, sym__string_immediate_elt_inside_quote, - ACTIONS(590), 1, - anon_sym_SQUOTE, - STATE(177), 1, + STATE(201), 1, aux_sym_string_repeat2, - [8273] = 4, - ACTIONS(3), 1, + [8515] = 5, + ACTIONS(570), 1, sym_comment, - ACTIONS(592), 1, + ACTIONS(590), 1, anon_sym_DQUOTE, - ACTIONS(594), 1, - anon_sym_SQUOTE, - STATE(229), 1, - sym_string, - [8286] = 4, + ACTIONS(592), 1, + sym__escape_sequence, + ACTIONS(595), 1, + sym__string_immediate_elt_inside_double_quote, + STATE(195), 1, + aux_sym_string_repeat1, + [8531] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(596), 1, - anon_sym_LBRACE, + ACTIONS(537), 1, + anon_sym_COMMA, ACTIONS(598), 1, - anon_sym_EQ, - STATE(268), 1, - sym_main_component_public_signals, - [8299] = 4, + anon_sym_SEMI, + STATE(132), 1, + sym__semicolon, + STATE(227), 1, + aux_sym_signal_declaration_statement_repeat1, + [8547] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(144), 1, + ACTIONS(537), 1, anon_sym_COMMA, ACTIONS(600), 1, - anon_sym_RPAREN, - STATE(176), 1, - aux_sym_argument_list_repeat1, - [8312] = 4, + anon_sym_SEMI, + STATE(149), 1, + sym__semicolon, + STATE(208), 1, + aux_sym_signal_declaration_statement_repeat1, + [8563] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(154), 1, - sym_parallel, + ACTIONS(537), 1, + anon_sym_COMMA, ACTIONS(602), 1, - sym_identifier, - STATE(252), 1, - sym_call_expression, - [8325] = 2, + anon_sym_SEMI, + STATE(146), 1, + sym__semicolon, + STATE(196), 1, + aux_sym_signal_declaration_statement_repeat1, + [8579] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(604), 3, + ACTIONS(537), 1, anon_sym_COMMA, - anon_sym_RBRACK, - anon_sym_RPAREN, - [8334] = 4, + ACTIONS(604), 1, + anon_sym_SEMI, + STATE(137), 1, + sym__semicolon, + STATE(227), 1, + aux_sym_signal_declaration_statement_repeat1, + [8595] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(606), 1, + ACTIONS(537), 1, anon_sym_COMMA, + ACTIONS(606), 1, + anon_sym_SEMI, + STATE(147), 1, + sym__semicolon, + STATE(227), 1, + aux_sym_signal_declaration_statement_repeat1, + [8611] = 5, + ACTIONS(570), 1, + sym_comment, ACTIONS(608), 1, - anon_sym_RPAREN, - STATE(195), 1, - aux_sym_main_component_public_signals_repeat1, - [8347] = 4, + anon_sym_SQUOTE, + ACTIONS(610), 1, + sym__escape_sequence, + ACTIONS(613), 1, + sym__string_immediate_elt_inside_quote, + STATE(201), 1, + aux_sym_string_repeat2, + [8627] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(610), 1, + ACTIONS(531), 1, + anon_sym_COMMA, + ACTIONS(616), 1, + anon_sym_SEMI, + STATE(113), 1, sym__semicolon, - ACTIONS(612), 1, - sym_identifier, - STATE(220), 1, - sym__variable_initialization, - [8360] = 4, + STATE(204), 1, + aux_sym_variable_declaration_statement_repeat1, + [8643] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(614), 1, + ACTIONS(618), 2, anon_sym_COMMA, - ACTIONS(616), 1, + anon_sym_SEMI, + ACTIONS(620), 2, + anon_sym_LT_EQ_EQ, + anon_sym_LT_DASH_DASH, + [8655] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(531), 1, + anon_sym_COMMA, + ACTIONS(622), 1, + anon_sym_SEMI, + STATE(112), 1, sym__semicolon, - STATE(188), 1, + STATE(215), 1, aux_sym_variable_declaration_statement_repeat1, - [8373] = 4, + [8671] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(612), 1, - sym_identifier, - ACTIONS(618), 1, + ACTIONS(624), 1, + anon_sym_COMMA, + STATE(205), 1, + aux_sym_parameter_list_repeat1, + ACTIONS(627), 2, + anon_sym_RPAREN, + anon_sym_RBRACK, + [8685] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(560), 1, + anon_sym_COMMA, + ACTIONS(629), 1, + anon_sym_SEMI, + STATE(136), 1, sym__semicolon, - STATE(220), 1, - sym__variable_initialization, - [8386] = 4, + STATE(209), 1, + aux_sym_component_declaration_statement_repeat1, + [8701] = 5, + ACTIONS(564), 1, + anon_sym_SQUOTE, + ACTIONS(570), 1, + sym_comment, + ACTIONS(631), 1, + sym__escape_sequence, + ACTIONS(633), 1, + sym__string_immediate_elt_inside_quote, + STATE(194), 1, + aux_sym_string_repeat2, + [8717] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(620), 1, - anon_sym_RBRACE, - ACTIONS(622), 1, + ACTIONS(537), 1, anon_sym_COMMA, - STATE(145), 1, - aux_sym__variable_initialization_repeat1, - [8399] = 4, + ACTIONS(635), 1, + anon_sym_SEMI, + STATE(141), 1, + sym__semicolon, + STATE(227), 1, + aux_sym_signal_declaration_statement_repeat1, + [8733] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(624), 1, + ACTIONS(560), 1, anon_sym_COMMA, - ACTIONS(627), 1, + ACTIONS(637), 1, + anon_sym_SEMI, + STATE(134), 1, sym__semicolon, - STATE(188), 1, - aux_sym_variable_declaration_statement_repeat1, - [8412] = 4, + STATE(219), 1, + aux_sym_component_declaration_statement_repeat1, + [8749] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(612), 1, - sym_identifier, - ACTIONS(629), 1, + ACTIONS(537), 1, + anon_sym_COMMA, + ACTIONS(639), 1, + anon_sym_SEMI, + STATE(144), 1, sym__semicolon, - STATE(220), 1, - sym__variable_initialization, - [8425] = 4, + STATE(200), 1, + aux_sym_signal_declaration_statement_repeat1, + [8765] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(631), 1, + ACTIONS(476), 1, + anon_sym_LBRACE, + ACTIONS(641), 1, + sym_identifier, + STATE(198), 1, + sym__signal_declaration, + STATE(257), 1, + sym_signal_tags, + [8781] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(537), 1, anon_sym_COMMA, - ACTIONS(633), 1, + ACTIONS(643), 1, + anon_sym_SEMI, + STATE(117), 1, sym__semicolon, + STATE(227), 1, + aux_sym_signal_declaration_statement_repeat1, + [8797] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(476), 1, + anon_sym_LBRACE, + ACTIONS(641), 1, + sym_identifier, STATE(185), 1, + sym__signal_declaration, + STATE(260), 1, + sym_signal_tags, + [8813] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(645), 1, + anon_sym_RBRACE, + ACTIONS(647), 1, + anon_sym_COMMA, + STATE(214), 1, + aux_sym_signal_tags_repeat1, + [8826] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(650), 1, + anon_sym_COMMA, + ACTIONS(653), 1, + anon_sym_SEMI, + STATE(215), 1, aux_sym_variable_declaration_statement_repeat1, - [8438] = 4, + [8839] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(635), 1, - anon_sym_RBRACK, - ACTIONS(637), 1, + ACTIONS(657), 1, + anon_sym_EQ, + ACTIONS(655), 2, + anon_sym_COMMA, + anon_sym_SEMI, + [8850] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(196), 1, + sym_parallel, + ACTIONS(659), 1, sym_identifier, - STATE(199), 1, - sym_parameter, - [8451] = 4, + STATE(252), 1, + sym_call_expression, + [8863] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(136), 1, + anon_sym_COMMA, + ACTIONS(661), 1, + anon_sym_RPAREN, + STATE(181), 1, + aux_sym_array_expression_repeat1, + [8876] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(663), 1, + anon_sym_COMMA, + ACTIONS(666), 1, + anon_sym_SEMI, + STATE(219), 1, + aux_sym_component_declaration_statement_repeat1, + [8889] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(154), 1, - sym_parallel, - ACTIONS(602), 1, - sym_identifier, - STATE(238), 1, - sym_call_expression, - [8464] = 4, + ACTIONS(126), 1, + anon_sym_COMMA, + ACTIONS(668), 1, + anon_sym_RPAREN, + STATE(237), 1, + aux_sym_argument_list_repeat1, + [8902] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(637), 1, - sym_identifier, - ACTIONS(639), 1, - anon_sym_RPAREN, - STATE(199), 1, - sym_parameter, - [8477] = 4, + ACTIONS(670), 1, + anon_sym_COMMA, + ACTIONS(672), 1, + anon_sym_RBRACK, + STATE(222), 1, + aux_sym_parameter_list_repeat1, + [8915] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(612), 1, - sym_identifier, - ACTIONS(641), 1, - sym__semicolon, - STATE(220), 1, - sym__variable_initialization, - [8490] = 4, + ACTIONS(670), 1, + anon_sym_COMMA, + ACTIONS(674), 1, + anon_sym_RBRACK, + STATE(205), 1, + aux_sym_parameter_list_repeat1, + [8928] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(639), 1, - anon_sym_RPAREN, - ACTIONS(643), 1, + ACTIONS(676), 1, + anon_sym_RBRACE, + ACTIONS(678), 1, anon_sym_COMMA, - STATE(169), 1, - aux_sym_main_component_public_signals_repeat1, - [8503] = 4, + STATE(214), 1, + aux_sym_signal_tags_repeat1, + [8941] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(645), 1, + ACTIONS(682), 1, + anon_sym_EQ, + ACTIONS(680), 2, anon_sym_COMMA, - ACTIONS(647), 1, - sym__semicolon, - STATE(188), 1, - aux_sym_variable_declaration_statement_repeat1, - [8516] = 4, + anon_sym_SEMI, + [8952] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(612), 1, + ACTIONS(196), 1, + sym_parallel, + ACTIONS(659), 1, sym_identifier, - ACTIONS(649), 1, - sym__semicolon, - STATE(220), 1, - sym__variable_initialization, - [8529] = 4, + STATE(243), 1, + sym_call_expression, + [8965] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(651), 1, - anon_sym_COMMA, - ACTIONS(653), 1, - sym__semicolon, - STATE(196), 1, - aux_sym_variable_declaration_statement_repeat1, - [8542] = 2, + ACTIONS(684), 1, + anon_sym_DQUOTE, + ACTIONS(686), 1, + anon_sym_SQUOTE, + STATE(267), 1, + sym_string, + [8978] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(545), 3, + ACTIONS(688), 1, anon_sym_COMMA, - anon_sym_RBRACK, - anon_sym_RPAREN, - [8551] = 4, + ACTIONS(691), 1, + anon_sym_SEMI, + STATE(227), 1, + aux_sym_signal_declaration_statement_repeat1, + [8991] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(637), 1, - sym_identifier, - ACTIONS(655), 1, + ACTIONS(693), 1, anon_sym_RPAREN, - STATE(199), 1, - sym_parameter, - [8564] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(530), 1, - anon_sym_LBRACE, - ACTIONS(657), 1, + ACTIONS(695), 1, sym_identifier, - STATE(258), 1, - sym_signal_tags, - [8577] = 4, + STATE(231), 1, + sym_parameter, + [9004] = 4, ACTIONS(3), 1, sym_comment, + ACTIONS(196), 1, + sym_parallel, ACTIONS(659), 1, - anon_sym_COMMA, - ACTIONS(661), 1, - sym__semicolon, - STATE(205), 1, - aux_sym_variable_declaration_statement_repeat1, - [8590] = 4, + sym_identifier, + STATE(246), 1, + sym_call_expression, + [9017] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(663), 1, + ACTIONS(697), 3, anon_sym_COMMA, - ACTIONS(665), 1, + anon_sym_RPAREN, anon_sym_RBRACK, - STATE(207), 1, - aux_sym_main_component_public_signals_repeat1, - [8603] = 4, + [9026] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(637), 1, - sym_identifier, - ACTIONS(667), 1, - anon_sym_RBRACK, - STATE(199), 1, - sym_parameter, - [8616] = 4, + ACTIONS(670), 1, + anon_sym_COMMA, + ACTIONS(699), 1, + anon_sym_RPAREN, + STATE(235), 1, + aux_sym_parameter_list_repeat1, + [9039] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(669), 1, + ACTIONS(136), 1, anon_sym_COMMA, - ACTIONS(671), 1, - sym__semicolon, - STATE(188), 1, - aux_sym_variable_declaration_statement_repeat1, - [8629] = 4, + ACTIONS(701), 1, + anon_sym_RBRACK, + STATE(181), 1, + aux_sym_array_expression_repeat1, + [9052] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(612), 1, + ACTIONS(196), 1, + sym_parallel, + ACTIONS(659), 1, sym_identifier, - ACTIONS(673), 1, - sym__semicolon, - STATE(220), 1, - sym__variable_initialization, - [8642] = 4, + STATE(245), 1, + sym_call_expression, + [9065] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(667), 1, + ACTIONS(627), 3, + anon_sym_COMMA, + anon_sym_RPAREN, anon_sym_RBRACK, - ACTIONS(675), 1, + [9074] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(670), 1, anon_sym_COMMA, - STATE(169), 1, - aux_sym_main_component_public_signals_repeat1, - [8655] = 4, + ACTIONS(703), 1, + anon_sym_RPAREN, + STATE(205), 1, + aux_sym_parameter_list_repeat1, + [9087] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(622), 1, + ACTIONS(678), 1, anon_sym_COMMA, - ACTIONS(677), 1, + ACTIONS(705), 1, anon_sym_RBRACE, - STATE(187), 1, - aux_sym__variable_initialization_repeat1, - [8668] = 4, + STATE(223), 1, + aux_sym_signal_tags_repeat1, + [9100] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(327), 1, - anon_sym_RPAREN, - ACTIONS(679), 1, + ACTIONS(707), 1, anon_sym_COMMA, - STATE(176), 1, + ACTIONS(710), 1, + anon_sym_RPAREN, + STATE(237), 1, aux_sym_argument_list_repeat1, - [8681] = 4, + [9113] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(637), 1, - sym_identifier, - ACTIONS(681), 1, - anon_sym_RPAREN, - STATE(183), 1, - sym_parameter, - [8694] = 4, + ACTIONS(712), 1, + anon_sym_LBRACE, + ACTIONS(714), 1, + anon_sym_EQ, + STATE(274), 1, + sym_main_component_public_signals, + [9126] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(329), 1, - anon_sym_RBRACK, - ACTIONS(683), 1, - anon_sym_COMMA, - STATE(176), 1, - aux_sym_argument_list_repeat1, - [8707] = 3, + ACTIONS(716), 1, + anon_sym_LPAREN, + STATE(253), 1, + sym_parameter_list, + [9136] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(685), 1, - anon_sym_LBRACE, - STATE(159), 1, - sym_template_body, - [8717] = 2, + ACTIONS(716), 1, + anon_sym_LPAREN, + STATE(247), 1, + sym_parameter_list, + [9146] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(687), 2, - anon_sym_LBRACE, + ACTIONS(718), 1, sym_identifier, - [8725] = 3, + STATE(177), 1, + sym__variable_declaration, + [9156] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(612), 1, + ACTIONS(720), 1, sym_identifier, - STATE(220), 1, - sym__variable_initialization, - [8735] = 3, + STATE(206), 1, + sym__component_declaration, + [9166] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(689), 1, - anon_sym_LPAREN, - STATE(212), 1, - sym_parameter_list, - [8745] = 3, + ACTIONS(722), 2, + anon_sym_COMMA, + anon_sym_SEMI, + [9174] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(612), 1, + ACTIONS(695), 1, sym_identifier, - STATE(190), 1, - sym__variable_initialization, - [8755] = 3, + STATE(234), 1, + sym_parameter, + [9184] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(689), 1, - anon_sym_LPAREN, - STATE(218), 1, - sym_parameter_list, - [8765] = 3, + ACTIONS(724), 1, + anon_sym_SEMI, + STATE(169), 1, + sym__semicolon, + [9194] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(726), 1, + anon_sym_SEMI, + STATE(171), 1, + sym__semicolon, + [9204] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(685), 1, + ACTIONS(728), 1, anon_sym_LBRACE, - STATE(165), 1, + STATE(166), 1, sym_template_body, - [8775] = 3, + [9214] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(612), 1, + ACTIONS(720), 1, sym_identifier, - STATE(198), 1, - sym__variable_initialization, - [8785] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(691), 2, - anon_sym_COMMA, - sym__semicolon, - [8793] = 3, + STATE(192), 1, + sym__component_declaration, + [9224] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(689), 1, + ACTIONS(716), 1, anon_sym_LPAREN, - STATE(225), 1, + STATE(255), 1, sym_parameter_list, - [8803] = 3, + [9234] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(637), 1, - sym_identifier, - STATE(199), 1, - sym_parameter, - [8813] = 3, + ACTIONS(730), 2, + anon_sym_COMMA, + anon_sym_SEMI, + [9242] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(637), 1, + ACTIONS(641), 1, sym_identifier, - STATE(203), 1, - sym_parameter, - [8823] = 3, + STATE(259), 1, + sym__signal_declaration, + [9252] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(612), 1, - sym_identifier, - STATE(202), 1, - sym__variable_initialization, - [8833] = 3, + ACTIONS(732), 2, + anon_sym_COMMA, + anon_sym_SEMI, + [9260] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(693), 1, + ACTIONS(734), 1, anon_sym_LBRACE, - STATE(162), 1, + STATE(167), 1, sym_function_body, - [8843] = 2, + [9270] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(695), 1, sym_identifier, - [8850] = 2, + STATE(221), 1, + sym_parameter, + [9280] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(697), 1, + ACTIONS(728), 1, anon_sym_LBRACE, - [8857] = 2, + STATE(162), 1, + sym_template_body, + [9290] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(305), 1, - anon_sym_RPAREN, - [8864] = 2, + ACTIONS(718), 1, + sym_identifier, + STATE(189), 1, + sym__variable_declaration, + [9300] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(699), 1, - sym__semicolon, - [8871] = 2, + ACTIONS(641), 1, + sym_identifier, + STATE(197), 1, + sym__signal_declaration, + [9310] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(701), 1, + ACTIONS(736), 2, + anon_sym_LBRACE, sym_identifier, - [8878] = 2, + [9318] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(703), 1, - sym_identifier, - [8885] = 2, + ACTIONS(738), 2, + anon_sym_COMMA, + anon_sym_SEMI, + [9326] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(657), 1, + ACTIONS(641), 1, sym_identifier, - [8892] = 2, + STATE(179), 1, + sym__signal_declaration, + [9336] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(705), 1, + ACTIONS(718), 1, sym_identifier, - [8899] = 2, + STATE(250), 1, + sym__variable_declaration, + [9346] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(707), 1, + ACTIONS(641), 1, sym_identifier, - [8906] = 2, + STATE(193), 1, + sym__signal_declaration, + [9356] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(709), 1, + ACTIONS(718), 1, sym_identifier, - [8913] = 2, + STATE(202), 1, + sym__variable_declaration, + [9366] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(711), 1, - sym_identifier, - [8920] = 2, + ACTIONS(740), 1, + anon_sym_SEMI, + STATE(161), 1, + sym__semicolon, + [9376] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(713), 1, - anon_sym_LBRACE, - [8927] = 2, + ACTIONS(645), 2, + anon_sym_RBRACE, + anon_sym_COMMA, + [9384] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(641), 1, + sym_identifier, + STATE(184), 1, + sym__signal_declaration, + [9394] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(715), 1, + ACTIONS(742), 1, + anon_sym_SEMI, + STATE(165), 1, sym__semicolon, - [8934] = 2, + [9404] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(717), 1, - anon_sym_LPAREN, - [8941] = 2, + ACTIONS(744), 2, + anon_sym_COMMA, + anon_sym_SEMI, + [9412] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(719), 1, - anon_sym_LPAREN, - [8948] = 2, + ACTIONS(720), 1, + sym_identifier, + STATE(268), 1, + sym__component_declaration, + [9422] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(721), 1, - anon_sym_LPAREN, - [8955] = 2, + ACTIONS(746), 1, + anon_sym_RBRACE, + [9429] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(723), 1, - anon_sym_LPAREN, - [8962] = 2, + ACTIONS(748), 1, + anon_sym_LBRACK, + [9436] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(750), 1, + anon_sym_LBRACE, + [9443] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(752), 1, + anon_sym_SEMI, + [9450] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(725), 1, + ACTIONS(754), 1, anon_sym_EQ, - [8969] = 2, + [9457] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(727), 1, - anon_sym_RBRACE, - [8976] = 2, + ACTIONS(756), 1, + anon_sym_SEMI, + [9464] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(729), 1, - anon_sym_main, - [8983] = 2, + ACTIONS(758), 1, + sym_identifier, + [9471] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(731), 1, - anon_sym_RPAREN, - [8990] = 2, + ACTIONS(760), 1, + anon_sym_public, + [9478] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(733), 1, - ts_builtin_sym_end, - [8997] = 2, + ACTIONS(17), 1, + anon_sym_LPAREN, + [9485] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(735), 1, - anon_sym_RPAREN, - [9004] = 2, + ACTIONS(762), 1, + anon_sym_SEMI, + [9492] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(737), 1, + ACTIONS(764), 1, anon_sym_LBRACE, - [9011] = 2, + [9499] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(739), 1, - sym_circom_version, - [9018] = 2, + ACTIONS(766), 1, + anon_sym_RPAREN, + [9506] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(741), 1, - sym__semicolon, - [9025] = 2, + ACTIONS(768), 1, + anon_sym_LPAREN, + [9513] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(743), 1, - sym__semicolon, - [9032] = 2, + ACTIONS(770), 1, + sym_identifier, + [9520] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(745), 1, - sym__semicolon, - [9039] = 2, + ACTIONS(772), 1, + anon_sym_LPAREN, + [9527] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(747), 1, - anon_sym_EQ, - [9046] = 2, + ACTIONS(774), 1, + anon_sym_LPAREN, + [9534] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(749), 1, - anon_sym_RBRACE, - [9053] = 2, + ACTIONS(776), 1, + anon_sym_LPAREN, + [9541] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(778), 1, + sym_identifier, + [9548] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(780), 1, + anon_sym_LBRACE, + [9555] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(751), 1, + ACTIONS(782), 1, anon_sym_EQ, - [9060] = 2, + [9562] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(21), 1, - anon_sym_LPAREN, - [9067] = 2, + ACTIONS(784), 1, + sym_identifier, + [9569] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(753), 1, + ACTIONS(786), 1, sym_identifier, - [9074] = 2, + [9576] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(755), 1, + ACTIONS(788), 1, sym_identifier, - [9081] = 2, + [9583] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(757), 1, - anon_sym_LBRACK, - [9088] = 2, + ACTIONS(305), 1, + anon_sym_RPAREN, + [9590] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(759), 1, - sym__semicolon, - [9095] = 2, + ACTIONS(790), 1, + anon_sym_RPAREN, + [9597] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(761), 1, - sym_identifier, - [9102] = 2, + ACTIONS(792), 1, + anon_sym_EQ, + [9604] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(763), 1, - sym__semicolon, - [9109] = 2, + ACTIONS(794), 1, + sym_circom_version, + [9611] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(765), 1, + ACTIONS(796), 1, sym_identifier, - [9116] = 2, + [9618] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(767), 1, - anon_sym_LBRACE, - [9123] = 2, + ACTIONS(798), 1, + sym_identifier, + [9625] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(769), 1, - sym__semicolon, - [9130] = 2, + ACTIONS(800), 1, + anon_sym_SEMI, + [9632] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(802), 1, + ts_builtin_sym_end, + [9639] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(771), 1, + ACTIONS(804), 1, anon_sym_LPAREN, - [9137] = 2, + [9646] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(773), 1, - anon_sym_EQ, - [9144] = 2, + ACTIONS(806), 1, + anon_sym_main, + [9653] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(775), 1, - anon_sym_RBRACE, - [9151] = 2, + ACTIONS(808), 1, + sym_identifier, + [9660] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(777), 1, + ACTIONS(810), 1, anon_sym_LPAREN, - [9158] = 2, + [9667] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(779), 1, - anon_sym_public, - [9165] = 2, + ACTIONS(812), 1, + anon_sym_RBRACE, + [9674] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(781), 1, + ACTIONS(814), 1, anon_sym_LPAREN, }; @@ -10814,271 +11387,305 @@ static const uint32_t ts_small_parse_table_map[] = { [SMALL_STATE(5)] = 181, [SMALL_STATE(6)] = 241, [SMALL_STATE(7)] = 297, - [SMALL_STATE(8)] = 353, - [SMALL_STATE(9)] = 413, + [SMALL_STATE(8)] = 357, + [SMALL_STATE(9)] = 417, [SMALL_STATE(10)] = 473, - [SMALL_STATE(11)] = 529, - [SMALL_STATE(12)] = 603, - [SMALL_STATE(13)] = 657, - [SMALL_STATE(14)] = 711, - [SMALL_STATE(15)] = 765, - [SMALL_STATE(16)] = 819, - [SMALL_STATE(17)] = 879, - [SMALL_STATE(18)] = 933, - [SMALL_STATE(19)] = 987, - [SMALL_STATE(20)] = 1055, - [SMALL_STATE(21)] = 1119, - [SMALL_STATE(22)] = 1177, - [SMALL_STATE(23)] = 1231, - [SMALL_STATE(24)] = 1285, - [SMALL_STATE(25)] = 1339, - [SMALL_STATE(26)] = 1393, - [SMALL_STATE(27)] = 1447, - [SMALL_STATE(28)] = 1501, - [SMALL_STATE(29)] = 1555, - [SMALL_STATE(30)] = 1609, - [SMALL_STATE(31)] = 1663, - [SMALL_STATE(32)] = 1737, - [SMALL_STATE(33)] = 1791, - [SMALL_STATE(34)] = 1873, - [SMALL_STATE(35)] = 1955, - [SMALL_STATE(36)] = 2033, - [SMALL_STATE(37)] = 2115, - [SMALL_STATE(38)] = 2202, - [SMALL_STATE(39)] = 2289, - [SMALL_STATE(40)] = 2376, - [SMALL_STATE(41)] = 2453, - [SMALL_STATE(42)] = 2540, - [SMALL_STATE(43)] = 2627, - [SMALL_STATE(44)] = 2714, - [SMALL_STATE(45)] = 2791, - [SMALL_STATE(46)] = 2878, - [SMALL_STATE(47)] = 2955, - [SMALL_STATE(48)] = 3032, - [SMALL_STATE(49)] = 3119, - [SMALL_STATE(50)] = 3206, - [SMALL_STATE(51)] = 3282, - [SMALL_STATE(52)] = 3358, - [SMALL_STATE(53)] = 3434, - [SMALL_STATE(54)] = 3510, - [SMALL_STATE(55)] = 3586, - [SMALL_STATE(56)] = 3662, - [SMALL_STATE(57)] = 3738, - [SMALL_STATE(58)] = 3814, - [SMALL_STATE(59)] = 3890, - [SMALL_STATE(60)] = 3966, - [SMALL_STATE(61)] = 4042, - [SMALL_STATE(62)] = 4118, - [SMALL_STATE(63)] = 4194, - [SMALL_STATE(64)] = 4270, - [SMALL_STATE(65)] = 4353, - [SMALL_STATE(66)] = 4436, - [SMALL_STATE(67)] = 4519, - [SMALL_STATE(68)] = 4602, - [SMALL_STATE(69)] = 4685, - [SMALL_STATE(70)] = 4768, - [SMALL_STATE(71)] = 4851, - [SMALL_STATE(72)] = 4934, - [SMALL_STATE(73)] = 5017, - [SMALL_STATE(74)] = 5100, - [SMALL_STATE(75)] = 5165, - [SMALL_STATE(76)] = 5230, - [SMALL_STATE(77)] = 5280, - [SMALL_STATE(78)] = 5330, - [SMALL_STATE(79)] = 5380, - [SMALL_STATE(80)] = 5430, - [SMALL_STATE(81)] = 5480, - [SMALL_STATE(82)] = 5527, - [SMALL_STATE(83)] = 5574, - [SMALL_STATE(84)] = 5621, - [SMALL_STATE(85)] = 5668, - [SMALL_STATE(86)] = 5715, - [SMALL_STATE(87)] = 5762, - [SMALL_STATE(88)] = 5809, - [SMALL_STATE(89)] = 5853, - [SMALL_STATE(90)] = 5897, - [SMALL_STATE(91)] = 5941, - [SMALL_STATE(92)] = 5985, - [SMALL_STATE(93)] = 6029, - [SMALL_STATE(94)] = 6073, - [SMALL_STATE(95)] = 6117, - [SMALL_STATE(96)] = 6161, - [SMALL_STATE(97)] = 6205, - [SMALL_STATE(98)] = 6249, - [SMALL_STATE(99)] = 6293, - [SMALL_STATE(100)] = 6337, - [SMALL_STATE(101)] = 6381, - [SMALL_STATE(102)] = 6425, - [SMALL_STATE(103)] = 6469, - [SMALL_STATE(104)] = 6513, - [SMALL_STATE(105)] = 6557, - [SMALL_STATE(106)] = 6601, - [SMALL_STATE(107)] = 6645, - [SMALL_STATE(108)] = 6689, - [SMALL_STATE(109)] = 6733, - [SMALL_STATE(110)] = 6777, - [SMALL_STATE(111)] = 6821, - [SMALL_STATE(112)] = 6865, - [SMALL_STATE(113)] = 6909, - [SMALL_STATE(114)] = 6936, - [SMALL_STATE(115)] = 6963, - [SMALL_STATE(116)] = 6990, - [SMALL_STATE(117)] = 7017, - [SMALL_STATE(118)] = 7044, - [SMALL_STATE(119)] = 7071, - [SMALL_STATE(120)] = 7098, - [SMALL_STATE(121)] = 7125, - [SMALL_STATE(122)] = 7152, - [SMALL_STATE(123)] = 7179, - [SMALL_STATE(124)] = 7206, - [SMALL_STATE(125)] = 7235, - [SMALL_STATE(126)] = 7262, - [SMALL_STATE(127)] = 7291, - [SMALL_STATE(128)] = 7317, - [SMALL_STATE(129)] = 7343, - [SMALL_STATE(130)] = 7369, - [SMALL_STATE(131)] = 7395, - [SMALL_STATE(132)] = 7421, - [SMALL_STATE(133)] = 7447, - [SMALL_STATE(134)] = 7473, - [SMALL_STATE(135)] = 7499, - [SMALL_STATE(136)] = 7525, - [SMALL_STATE(137)] = 7551, - [SMALL_STATE(138)] = 7577, - [SMALL_STATE(139)] = 7603, - [SMALL_STATE(140)] = 7636, - [SMALL_STATE(141)] = 7669, - [SMALL_STATE(142)] = 7698, - [SMALL_STATE(143)] = 7727, - [SMALL_STATE(144)] = 7746, - [SMALL_STATE(145)] = 7764, - [SMALL_STATE(146)] = 7786, - [SMALL_STATE(147)] = 7804, - [SMALL_STATE(148)] = 7822, - [SMALL_STATE(149)] = 7840, - [SMALL_STATE(150)] = 7857, - [SMALL_STATE(151)] = 7878, - [SMALL_STATE(152)] = 7899, - [SMALL_STATE(153)] = 7915, - [SMALL_STATE(154)] = 7932, - [SMALL_STATE(155)] = 7949, - [SMALL_STATE(156)] = 7966, - [SMALL_STATE(157)] = 7978, - [SMALL_STATE(158)] = 7990, - [SMALL_STATE(159)] = 8002, - [SMALL_STATE(160)] = 8014, - [SMALL_STATE(161)] = 8026, - [SMALL_STATE(162)] = 8038, - [SMALL_STATE(163)] = 8050, - [SMALL_STATE(164)] = 8062, - [SMALL_STATE(165)] = 8074, - [SMALL_STATE(166)] = 8086, - [SMALL_STATE(167)] = 8106, - [SMALL_STATE(168)] = 8118, - [SMALL_STATE(169)] = 8135, - [SMALL_STATE(170)] = 8149, - [SMALL_STATE(171)] = 8165, - [SMALL_STATE(172)] = 8181, - [SMALL_STATE(173)] = 8195, - [SMALL_STATE(174)] = 8211, - [SMALL_STATE(175)] = 8227, - [SMALL_STATE(176)] = 8243, - [SMALL_STATE(177)] = 8257, - [SMALL_STATE(178)] = 8273, - [SMALL_STATE(179)] = 8286, - [SMALL_STATE(180)] = 8299, - [SMALL_STATE(181)] = 8312, - [SMALL_STATE(182)] = 8325, - [SMALL_STATE(183)] = 8334, - [SMALL_STATE(184)] = 8347, - [SMALL_STATE(185)] = 8360, - [SMALL_STATE(186)] = 8373, - [SMALL_STATE(187)] = 8386, - [SMALL_STATE(188)] = 8399, - [SMALL_STATE(189)] = 8412, - [SMALL_STATE(190)] = 8425, - [SMALL_STATE(191)] = 8438, - [SMALL_STATE(192)] = 8451, - [SMALL_STATE(193)] = 8464, - [SMALL_STATE(194)] = 8477, - [SMALL_STATE(195)] = 8490, - [SMALL_STATE(196)] = 8503, - [SMALL_STATE(197)] = 8516, - [SMALL_STATE(198)] = 8529, - [SMALL_STATE(199)] = 8542, - [SMALL_STATE(200)] = 8551, - [SMALL_STATE(201)] = 8564, - [SMALL_STATE(202)] = 8577, - [SMALL_STATE(203)] = 8590, - [SMALL_STATE(204)] = 8603, - [SMALL_STATE(205)] = 8616, - [SMALL_STATE(206)] = 8629, - [SMALL_STATE(207)] = 8642, - [SMALL_STATE(208)] = 8655, - [SMALL_STATE(209)] = 8668, - [SMALL_STATE(210)] = 8681, - [SMALL_STATE(211)] = 8694, - [SMALL_STATE(212)] = 8707, - [SMALL_STATE(213)] = 8717, - [SMALL_STATE(214)] = 8725, - [SMALL_STATE(215)] = 8735, - [SMALL_STATE(216)] = 8745, - [SMALL_STATE(217)] = 8755, - [SMALL_STATE(218)] = 8765, - [SMALL_STATE(219)] = 8775, - [SMALL_STATE(220)] = 8785, - [SMALL_STATE(221)] = 8793, - [SMALL_STATE(222)] = 8803, - [SMALL_STATE(223)] = 8813, - [SMALL_STATE(224)] = 8823, - [SMALL_STATE(225)] = 8833, - [SMALL_STATE(226)] = 8843, - [SMALL_STATE(227)] = 8850, - [SMALL_STATE(228)] = 8857, - [SMALL_STATE(229)] = 8864, - [SMALL_STATE(230)] = 8871, - [SMALL_STATE(231)] = 8878, - [SMALL_STATE(232)] = 8885, - [SMALL_STATE(233)] = 8892, - [SMALL_STATE(234)] = 8899, - [SMALL_STATE(235)] = 8906, - [SMALL_STATE(236)] = 8913, - [SMALL_STATE(237)] = 8920, - [SMALL_STATE(238)] = 8927, - [SMALL_STATE(239)] = 8934, - [SMALL_STATE(240)] = 8941, - [SMALL_STATE(241)] = 8948, - [SMALL_STATE(242)] = 8955, - [SMALL_STATE(243)] = 8962, - [SMALL_STATE(244)] = 8969, - [SMALL_STATE(245)] = 8976, - [SMALL_STATE(246)] = 8983, - [SMALL_STATE(247)] = 8990, - [SMALL_STATE(248)] = 8997, - [SMALL_STATE(249)] = 9004, - [SMALL_STATE(250)] = 9011, - [SMALL_STATE(251)] = 9018, - [SMALL_STATE(252)] = 9025, - [SMALL_STATE(253)] = 9032, - [SMALL_STATE(254)] = 9039, - [SMALL_STATE(255)] = 9046, - [SMALL_STATE(256)] = 9053, - [SMALL_STATE(257)] = 9060, - [SMALL_STATE(258)] = 9067, - [SMALL_STATE(259)] = 9074, - [SMALL_STATE(260)] = 9081, - [SMALL_STATE(261)] = 9088, - [SMALL_STATE(262)] = 9095, - [SMALL_STATE(263)] = 9102, - [SMALL_STATE(264)] = 9109, - [SMALL_STATE(265)] = 9116, - [SMALL_STATE(266)] = 9123, - [SMALL_STATE(267)] = 9130, - [SMALL_STATE(268)] = 9137, - [SMALL_STATE(269)] = 9144, - [SMALL_STATE(270)] = 9151, - [SMALL_STATE(271)] = 9158, - [SMALL_STATE(272)] = 9165, + [SMALL_STATE(11)] = 527, + [SMALL_STATE(12)] = 581, + [SMALL_STATE(13)] = 635, + [SMALL_STATE(14)] = 689, + [SMALL_STATE(15)] = 743, + [SMALL_STATE(16)] = 797, + [SMALL_STATE(17)] = 851, + [SMALL_STATE(18)] = 905, + [SMALL_STATE(19)] = 959, + [SMALL_STATE(20)] = 1033, + [SMALL_STATE(21)] = 1087, + [SMALL_STATE(22)] = 1147, + [SMALL_STATE(23)] = 1205, + [SMALL_STATE(24)] = 1279, + [SMALL_STATE(25)] = 1333, + [SMALL_STATE(26)] = 1387, + [SMALL_STATE(27)] = 1441, + [SMALL_STATE(28)] = 1495, + [SMALL_STATE(29)] = 1551, + [SMALL_STATE(30)] = 1619, + [SMALL_STATE(31)] = 1683, + [SMALL_STATE(32)] = 1765, + [SMALL_STATE(33)] = 1847, + [SMALL_STATE(34)] = 1929, + [SMALL_STATE(35)] = 2007, + [SMALL_STATE(36)] = 2086, + [SMALL_STATE(37)] = 2163, + [SMALL_STATE(38)] = 2242, + [SMALL_STATE(39)] = 2321, + [SMALL_STATE(40)] = 2398, + [SMALL_STATE(41)] = 2475, + [SMALL_STATE(42)] = 2552, + [SMALL_STATE(43)] = 2631, + [SMALL_STATE(44)] = 2710, + [SMALL_STATE(45)] = 2787, + [SMALL_STATE(46)] = 2863, + [SMALL_STATE(47)] = 2947, + [SMALL_STATE(48)] = 3023, + [SMALL_STATE(49)] = 3099, + [SMALL_STATE(50)] = 3175, + [SMALL_STATE(51)] = 3259, + [SMALL_STATE(52)] = 3343, + [SMALL_STATE(53)] = 3427, + [SMALL_STATE(54)] = 3511, + [SMALL_STATE(55)] = 3587, + [SMALL_STATE(56)] = 3663, + [SMALL_STATE(57)] = 3747, + [SMALL_STATE(58)] = 3831, + [SMALL_STATE(59)] = 3907, + [SMALL_STATE(60)] = 3991, + [SMALL_STATE(61)] = 4075, + [SMALL_STATE(62)] = 4151, + [SMALL_STATE(63)] = 4227, + [SMALL_STATE(64)] = 4307, + [SMALL_STATE(65)] = 4387, + [SMALL_STATE(66)] = 4467, + [SMALL_STATE(67)] = 4547, + [SMALL_STATE(68)] = 4627, + [SMALL_STATE(69)] = 4707, + [SMALL_STATE(70)] = 4787, + [SMALL_STATE(71)] = 4867, + [SMALL_STATE(72)] = 4947, + [SMALL_STATE(73)] = 5027, + [SMALL_STATE(74)] = 5082, + [SMALL_STATE(75)] = 5137, + [SMALL_STATE(76)] = 5188, + [SMALL_STATE(77)] = 5239, + [SMALL_STATE(78)] = 5289, + [SMALL_STATE(79)] = 5339, + [SMALL_STATE(80)] = 5389, + [SMALL_STATE(81)] = 5436, + [SMALL_STATE(82)] = 5483, + [SMALL_STATE(83)] = 5530, + [SMALL_STATE(84)] = 5574, + [SMALL_STATE(85)] = 5618, + [SMALL_STATE(86)] = 5662, + [SMALL_STATE(87)] = 5706, + [SMALL_STATE(88)] = 5750, + [SMALL_STATE(89)] = 5794, + [SMALL_STATE(90)] = 5838, + [SMALL_STATE(91)] = 5882, + [SMALL_STATE(92)] = 5926, + [SMALL_STATE(93)] = 5970, + [SMALL_STATE(94)] = 6014, + [SMALL_STATE(95)] = 6058, + [SMALL_STATE(96)] = 6102, + [SMALL_STATE(97)] = 6146, + [SMALL_STATE(98)] = 6190, + [SMALL_STATE(99)] = 6234, + [SMALL_STATE(100)] = 6278, + [SMALL_STATE(101)] = 6322, + [SMALL_STATE(102)] = 6366, + [SMALL_STATE(103)] = 6410, + [SMALL_STATE(104)] = 6454, + [SMALL_STATE(105)] = 6498, + [SMALL_STATE(106)] = 6542, + [SMALL_STATE(107)] = 6586, + [SMALL_STATE(108)] = 6630, + [SMALL_STATE(109)] = 6674, + [SMALL_STATE(110)] = 6701, + [SMALL_STATE(111)] = 6728, + [SMALL_STATE(112)] = 6757, + [SMALL_STATE(113)] = 6784, + [SMALL_STATE(114)] = 6811, + [SMALL_STATE(115)] = 6838, + [SMALL_STATE(116)] = 6865, + [SMALL_STATE(117)] = 6892, + [SMALL_STATE(118)] = 6919, + [SMALL_STATE(119)] = 6946, + [SMALL_STATE(120)] = 6973, + [SMALL_STATE(121)] = 7000, + [SMALL_STATE(122)] = 7029, + [SMALL_STATE(123)] = 7056, + [SMALL_STATE(124)] = 7083, + [SMALL_STATE(125)] = 7110, + [SMALL_STATE(126)] = 7137, + [SMALL_STATE(127)] = 7164, + [SMALL_STATE(128)] = 7191, + [SMALL_STATE(129)] = 7218, + [SMALL_STATE(130)] = 7245, + [SMALL_STATE(131)] = 7272, + [SMALL_STATE(132)] = 7298, + [SMALL_STATE(133)] = 7324, + [SMALL_STATE(134)] = 7350, + [SMALL_STATE(135)] = 7376, + [SMALL_STATE(136)] = 7402, + [SMALL_STATE(137)] = 7428, + [SMALL_STATE(138)] = 7454, + [SMALL_STATE(139)] = 7480, + [SMALL_STATE(140)] = 7506, + [SMALL_STATE(141)] = 7532, + [SMALL_STATE(142)] = 7558, + [SMALL_STATE(143)] = 7584, + [SMALL_STATE(144)] = 7610, + [SMALL_STATE(145)] = 7636, + [SMALL_STATE(146)] = 7662, + [SMALL_STATE(147)] = 7688, + [SMALL_STATE(148)] = 7714, + [SMALL_STATE(149)] = 7740, + [SMALL_STATE(150)] = 7766, + [SMALL_STATE(151)] = 7792, + [SMALL_STATE(152)] = 7825, + [SMALL_STATE(153)] = 7858, + [SMALL_STATE(154)] = 7877, + [SMALL_STATE(155)] = 7895, + [SMALL_STATE(156)] = 7913, + [SMALL_STATE(157)] = 7936, + [SMALL_STATE(158)] = 7953, + [SMALL_STATE(159)] = 7970, + [SMALL_STATE(160)] = 7993, + [SMALL_STATE(161)] = 8014, + [SMALL_STATE(162)] = 8026, + [SMALL_STATE(163)] = 8038, + [SMALL_STATE(164)] = 8050, + [SMALL_STATE(165)] = 8062, + [SMALL_STATE(166)] = 8074, + [SMALL_STATE(167)] = 8086, + [SMALL_STATE(168)] = 8098, + [SMALL_STATE(169)] = 8110, + [SMALL_STATE(170)] = 8122, + [SMALL_STATE(171)] = 8142, + [SMALL_STATE(172)] = 8154, + [SMALL_STATE(173)] = 8166, + [SMALL_STATE(174)] = 8186, + [SMALL_STATE(175)] = 8198, + [SMALL_STATE(176)] = 8215, + [SMALL_STATE(177)] = 8231, + [SMALL_STATE(178)] = 8247, + [SMALL_STATE(179)] = 8263, + [SMALL_STATE(180)] = 8279, + [SMALL_STATE(181)] = 8295, + [SMALL_STATE(182)] = 8309, + [SMALL_STATE(183)] = 8325, + [SMALL_STATE(184)] = 8339, + [SMALL_STATE(185)] = 8355, + [SMALL_STATE(186)] = 8371, + [SMALL_STATE(187)] = 8387, + [SMALL_STATE(188)] = 8403, + [SMALL_STATE(189)] = 8419, + [SMALL_STATE(190)] = 8435, + [SMALL_STATE(191)] = 8451, + [SMALL_STATE(192)] = 8467, + [SMALL_STATE(193)] = 8483, + [SMALL_STATE(194)] = 8499, + [SMALL_STATE(195)] = 8515, + [SMALL_STATE(196)] = 8531, + [SMALL_STATE(197)] = 8547, + [SMALL_STATE(198)] = 8563, + [SMALL_STATE(199)] = 8579, + [SMALL_STATE(200)] = 8595, + [SMALL_STATE(201)] = 8611, + [SMALL_STATE(202)] = 8627, + [SMALL_STATE(203)] = 8643, + [SMALL_STATE(204)] = 8655, + [SMALL_STATE(205)] = 8671, + [SMALL_STATE(206)] = 8685, + [SMALL_STATE(207)] = 8701, + [SMALL_STATE(208)] = 8717, + [SMALL_STATE(209)] = 8733, + [SMALL_STATE(210)] = 8749, + [SMALL_STATE(211)] = 8765, + [SMALL_STATE(212)] = 8781, + [SMALL_STATE(213)] = 8797, + [SMALL_STATE(214)] = 8813, + [SMALL_STATE(215)] = 8826, + [SMALL_STATE(216)] = 8839, + [SMALL_STATE(217)] = 8850, + [SMALL_STATE(218)] = 8863, + [SMALL_STATE(219)] = 8876, + [SMALL_STATE(220)] = 8889, + [SMALL_STATE(221)] = 8902, + [SMALL_STATE(222)] = 8915, + [SMALL_STATE(223)] = 8928, + [SMALL_STATE(224)] = 8941, + [SMALL_STATE(225)] = 8952, + [SMALL_STATE(226)] = 8965, + [SMALL_STATE(227)] = 8978, + [SMALL_STATE(228)] = 8991, + [SMALL_STATE(229)] = 9004, + [SMALL_STATE(230)] = 9017, + [SMALL_STATE(231)] = 9026, + [SMALL_STATE(232)] = 9039, + [SMALL_STATE(233)] = 9052, + [SMALL_STATE(234)] = 9065, + [SMALL_STATE(235)] = 9074, + [SMALL_STATE(236)] = 9087, + [SMALL_STATE(237)] = 9100, + [SMALL_STATE(238)] = 9113, + [SMALL_STATE(239)] = 9126, + [SMALL_STATE(240)] = 9136, + [SMALL_STATE(241)] = 9146, + [SMALL_STATE(242)] = 9156, + [SMALL_STATE(243)] = 9166, + [SMALL_STATE(244)] = 9174, + [SMALL_STATE(245)] = 9184, + [SMALL_STATE(246)] = 9194, + [SMALL_STATE(247)] = 9204, + [SMALL_STATE(248)] = 9214, + [SMALL_STATE(249)] = 9224, + [SMALL_STATE(250)] = 9234, + [SMALL_STATE(251)] = 9242, + [SMALL_STATE(252)] = 9252, + [SMALL_STATE(253)] = 9260, + [SMALL_STATE(254)] = 9270, + [SMALL_STATE(255)] = 9280, + [SMALL_STATE(256)] = 9290, + [SMALL_STATE(257)] = 9300, + [SMALL_STATE(258)] = 9310, + [SMALL_STATE(259)] = 9318, + [SMALL_STATE(260)] = 9326, + [SMALL_STATE(261)] = 9336, + [SMALL_STATE(262)] = 9346, + [SMALL_STATE(263)] = 9356, + [SMALL_STATE(264)] = 9366, + [SMALL_STATE(265)] = 9376, + [SMALL_STATE(266)] = 9384, + [SMALL_STATE(267)] = 9394, + [SMALL_STATE(268)] = 9404, + [SMALL_STATE(269)] = 9412, + [SMALL_STATE(270)] = 9422, + [SMALL_STATE(271)] = 9429, + [SMALL_STATE(272)] = 9436, + [SMALL_STATE(273)] = 9443, + [SMALL_STATE(274)] = 9450, + [SMALL_STATE(275)] = 9457, + [SMALL_STATE(276)] = 9464, + [SMALL_STATE(277)] = 9471, + [SMALL_STATE(278)] = 9478, + [SMALL_STATE(279)] = 9485, + [SMALL_STATE(280)] = 9492, + [SMALL_STATE(281)] = 9499, + [SMALL_STATE(282)] = 9506, + [SMALL_STATE(283)] = 9513, + [SMALL_STATE(284)] = 9520, + [SMALL_STATE(285)] = 9527, + [SMALL_STATE(286)] = 9534, + [SMALL_STATE(287)] = 9541, + [SMALL_STATE(288)] = 9548, + [SMALL_STATE(289)] = 9555, + [SMALL_STATE(290)] = 9562, + [SMALL_STATE(291)] = 9569, + [SMALL_STATE(292)] = 9576, + [SMALL_STATE(293)] = 9583, + [SMALL_STATE(294)] = 9590, + [SMALL_STATE(295)] = 9597, + [SMALL_STATE(296)] = 9604, + [SMALL_STATE(297)] = 9611, + [SMALL_STATE(298)] = 9618, + [SMALL_STATE(299)] = 9625, + [SMALL_STATE(300)] = 9632, + [SMALL_STATE(301)] = 9639, + [SMALL_STATE(302)] = 9646, + [SMALL_STATE(303)] = 9653, + [SMALL_STATE(304)] = 9660, + [SMALL_STATE(305)] = 9667, + [SMALL_STATE(306)] = 9674, }; static const TSParseActionEntry ts_parse_actions[] = { @@ -11086,379 +11693,394 @@ static const TSParseActionEntry ts_parse_actions[] = { [1] = {.entry = {.count = 1, .reusable = false}}, RECOVER(), [3] = {.entry = {.count = 1, .reusable = true}}, SHIFT_EXTRA(), [5] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 0, 0, 0), - [7] = {.entry = {.count = 1, .reusable = true}}, SHIFT(168), - [9] = {.entry = {.count = 1, .reusable = true}}, SHIFT(178), - [11] = {.entry = {.count = 1, .reusable = true}}, SHIFT(172), - [13] = {.entry = {.count = 1, .reusable = true}}, SHIFT(231), - [15] = {.entry = {.count = 1, .reusable = true}}, SHIFT(245), - [17] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__expression, 1, 0, 0), + [7] = {.entry = {.count = 1, .reusable = true}}, SHIFT(175), + [9] = {.entry = {.count = 1, .reusable = true}}, SHIFT(226), + [11] = {.entry = {.count = 1, .reusable = true}}, SHIFT(183), + [13] = {.entry = {.count = 1, .reusable = true}}, SHIFT(303), + [15] = {.entry = {.count = 1, .reusable = true}}, SHIFT(302), + [17] = {.entry = {.count = 1, .reusable = true}}, SHIFT(78), [19] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__expression, 1, 0, 0), - [21] = {.entry = {.count = 1, .reusable = true}}, SHIFT(78), - [23] = {.entry = {.count = 1, .reusable = true}}, SHIFT(27), - [25] = {.entry = {.count = 1, .reusable = false}}, SHIFT(13), - [27] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__expression, 1, 0, 0), SHIFT(235), - [30] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_array_access_expression, 4, 0, 9), - [32] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_access_expression, 4, 0, 9), - [34] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_call_expression, 3, 0, 0), + [21] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__expression, 1, 0, 0), + [23] = {.entry = {.count = 1, .reusable = true}}, SHIFT(18), + [25] = {.entry = {.count = 1, .reusable = false}}, SHIFT(20), + [27] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__expression, 1, 0, 0), SHIFT(292), + [30] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_access_expression, 3, 0, 13), + [32] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_array_access_expression, 3, 0, 13), + [34] = {.entry = {.count = 1, .reusable = true}}, SHIFT(79), [36] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_call_expression, 3, 0, 0), - [38] = {.entry = {.count = 1, .reusable = true}}, SHIFT(79), - [40] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_member_expression, 3, 1, 5), - [42] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_member_expression, 3, 1, 5), - [44] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_array_access_expression, 3, 0, 6), - [46] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_access_expression, 3, 0, 6), - [48] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_call_expression, 5, 0, 0), - [50] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_call_expression, 5, 0, 0), - [52] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_call_expression, 4, 0, 0), - [54] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_call_expression, 4, 0, 0), - [56] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_binary_expression, 3, 0, 7), - [58] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binary_expression, 3, 0, 7), - [60] = {.entry = {.count = 1, .reusable = false}}, SHIFT(106), - [62] = {.entry = {.count = 1, .reusable = false}}, SHIFT(100), - [64] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment_expression, 3, 0, 0), - [66] = {.entry = {.count = 1, .reusable = true}}, SHIFT(100), - [68] = {.entry = {.count = 1, .reusable = false}}, SHIFT(102), - [70] = {.entry = {.count = 1, .reusable = true}}, SHIFT(103), - [72] = {.entry = {.count = 1, .reusable = false}}, SHIFT(103), - [74] = {.entry = {.count = 1, .reusable = true}}, SHIFT(88), - [76] = {.entry = {.count = 1, .reusable = false}}, SHIFT(88), - [78] = {.entry = {.count = 1, .reusable = false}}, SHIFT(105), - [80] = {.entry = {.count = 1, .reusable = false}}, SHIFT(89), - [82] = {.entry = {.count = 1, .reusable = true}}, SHIFT(89), - [84] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple, 4, 0, 0), - [86] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple, 4, 0, 0), - [88] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_decrement_expression, 2, 0, 0), - [90] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_decrement_expression, 2, 0, 0), - [92] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_array, 4, 0, 0), - [94] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array, 4, 0, 0), - [96] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_anonymous_inputs, 3, 0, 0), - [98] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_anonymous_inputs, 3, 0, 0), - [100] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_anonymous_inputs, 2, 0, 0), - [102] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_anonymous_inputs, 2, 0, 0), - [104] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_array, 5, 0, 0), - [106] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array, 5, 0, 0), - [108] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_parenthesized_expression, 3, 0, 0), - [110] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parenthesized_expression, 3, 0, 0), - [112] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_array, 3, 0, 0), - [114] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array, 3, 0, 0), - [116] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_increment_expression, 2, 0, 0), - [118] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_increment_expression, 2, 0, 0), - [120] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple, 5, 0, 0), - [122] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple, 5, 0, 0), - [124] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_unary_expression, 2, 0, 4), - [126] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_unary_expression, 2, 0, 4), - [128] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_call_expression, 6, 0, 0), - [130] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_call_expression, 6, 0, 0), - [132] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_ternary_expression, 5, 0, 0), - [134] = {.entry = {.count = 1, .reusable = true}}, SHIFT(87), - [136] = {.entry = {.count = 1, .reusable = true}}, SHIFT(84), - [138] = {.entry = {.count = 1, .reusable = true}}, SHIFT(25), - [140] = {.entry = {.count = 1, .reusable = true}}, SHIFT(235), - [142] = {.entry = {.count = 1, .reusable = true}}, SHIFT(101), - [144] = {.entry = {.count = 1, .reusable = true}}, SHIFT(95), - [146] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 1, 0, 0), - [148] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_argument_list_repeat1, 2, 0, 0), - [150] = {.entry = {.count = 1, .reusable = true}}, SHIFT(85), - [152] = {.entry = {.count = 1, .reusable = true}}, SHIFT(26), - [154] = {.entry = {.count = 1, .reusable = false}}, SHIFT(259), - [156] = {.entry = {.count = 1, .reusable = true}}, SHIFT(43), - [158] = {.entry = {.count = 1, .reusable = true}}, SHIFT(157), - [160] = {.entry = {.count = 1, .reusable = false}}, SHIFT(226), - [162] = {.entry = {.count = 1, .reusable = true}}, SHIFT(97), - [164] = {.entry = {.count = 1, .reusable = false}}, SHIFT(242), - [166] = {.entry = {.count = 1, .reusable = true}}, SHIFT(107), - [168] = {.entry = {.count = 1, .reusable = false}}, SHIFT(241), - [170] = {.entry = {.count = 1, .reusable = false}}, SHIFT(240), - [172] = {.entry = {.count = 1, .reusable = false}}, SHIFT(112), - [174] = {.entry = {.count = 1, .reusable = true}}, SHIFT(111), - [176] = {.entry = {.count = 1, .reusable = true}}, SHIFT(108), - [178] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2), - [180] = {.entry = {.count = 1, .reusable = true}}, SHIFT(61), - [182] = {.entry = {.count = 1, .reusable = false}}, SHIFT(224), - [184] = {.entry = {.count = 1, .reusable = false}}, SHIFT(166), - [186] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_template_body_repeat1, 2, 0, 0), SHIFT_REPEAT(259), - [189] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_template_body_repeat1, 2, 0, 0), SHIFT_REPEAT(43), - [192] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_template_body_repeat1, 2, 0, 0), - [194] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_template_body_repeat1, 2, 0, 0), SHIFT_REPEAT(226), - [197] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_template_body_repeat1, 2, 0, 0), SHIFT_REPEAT(97), - [200] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_template_body_repeat1, 2, 0, 0), SHIFT_REPEAT(242), - [203] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_template_body_repeat1, 2, 0, 0), SHIFT_REPEAT(107), - [206] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_template_body_repeat1, 2, 0, 0), SHIFT_REPEAT(241), - [209] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_template_body_repeat1, 2, 0, 0), SHIFT_REPEAT(240), - [212] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_template_body_repeat1, 2, 0, 0), SHIFT_REPEAT(112), - [215] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_template_body_repeat1, 2, 0, 0), SHIFT_REPEAT(111), - [218] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_template_body_repeat1, 2, 0, 0), SHIFT_REPEAT(108), - [221] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_template_body_repeat1, 2, 0, 0), SHIFT_REPEAT(2), - [224] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_template_body_repeat1, 2, 0, 0), SHIFT_REPEAT(61), - [227] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_template_body_repeat1, 2, 0, 0), SHIFT_REPEAT(224), - [230] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_template_body_repeat1, 2, 0, 0), SHIFT_REPEAT(166), - [233] = {.entry = {.count = 1, .reusable = true}}, SHIFT(113), - [235] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__variable_initialization, 3, 0, 10), - [237] = {.entry = {.count = 1, .reusable = true}}, SHIFT(131), - [239] = {.entry = {.count = 1, .reusable = true}}, SHIFT(158), - [241] = {.entry = {.count = 1, .reusable = true}}, SHIFT(138), - [243] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__variable_initialization, 6, 0, 15), - [245] = {.entry = {.count = 1, .reusable = true}}, SHIFT(114), - [247] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__variable_initialization, 4, 0, 13), - [249] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__variable_initialization, 5, 0, 14), - [251] = {.entry = {.count = 1, .reusable = true}}, SHIFT(164), - [253] = {.entry = {.count = 1, .reusable = true}}, SHIFT(167), - [255] = {.entry = {.count = 1, .reusable = true}}, SHIFT(71), - [257] = {.entry = {.count = 1, .reusable = true}}, SHIFT(98), - [259] = {.entry = {.count = 1, .reusable = true}}, SHIFT(73), - [261] = {.entry = {.count = 1, .reusable = true}}, SHIFT(152), - [263] = {.entry = {.count = 1, .reusable = true}}, SHIFT(65), - [265] = {.entry = {.count = 1, .reusable = true}}, SHIFT(64), - [267] = {.entry = {.count = 1, .reusable = true}}, SHIFT(116), - [269] = {.entry = {.count = 1, .reusable = true}}, SHIFT(68), - [271] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3), - [273] = {.entry = {.count = 1, .reusable = true}}, SHIFT(143), - [275] = {.entry = {.count = 1, .reusable = true}}, SHIFT(117), - [277] = {.entry = {.count = 1, .reusable = true}}, SHIFT(127), - [279] = {.entry = {.count = 1, .reusable = true}}, SHIFT(132), - [281] = {.entry = {.count = 1, .reusable = true}}, SHIFT(72), - [283] = {.entry = {.count = 1, .reusable = true}}, SHIFT(45), - [285] = {.entry = {.count = 1, .reusable = false}}, SHIFT(272), - [287] = {.entry = {.count = 1, .reusable = false}}, SHIFT(270), - [289] = {.entry = {.count = 1, .reusable = false}}, SHIFT(267), - [291] = {.entry = {.count = 1, .reusable = false}}, SHIFT(96), - [293] = {.entry = {.count = 1, .reusable = true}}, SHIFT(56), - [295] = {.entry = {.count = 1, .reusable = false}}, SHIFT(216), - [297] = {.entry = {.count = 1, .reusable = true}}, SHIFT(80), - [299] = {.entry = {.count = 1, .reusable = true}}, SHIFT(59), - [301] = {.entry = {.count = 1, .reusable = false}}, SHIFT(219), - [303] = {.entry = {.count = 1, .reusable = true}}, SHIFT(77), - [305] = {.entry = {.count = 1, .reusable = true}}, SHIFT(9), - [307] = {.entry = {.count = 1, .reusable = true}}, SHIFT(34), - [309] = {.entry = {.count = 1, .reusable = true}}, SHIFT(86), - [311] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5), - [313] = {.entry = {.count = 1, .reusable = true}}, SHIFT(22), - [315] = {.entry = {.count = 1, .reusable = true}}, SHIFT(83), - [317] = {.entry = {.count = 1, .reusable = true}}, SHIFT(28), - [319] = {.entry = {.count = 1, .reusable = true}}, SHIFT(35), - [321] = {.entry = {.count = 1, .reusable = true}}, SHIFT(24), - [323] = {.entry = {.count = 1, .reusable = true}}, SHIFT(66), - [325] = {.entry = {.count = 1, .reusable = true}}, SHIFT(57), - [327] = {.entry = {.count = 1, .reusable = true}}, SHIFT(12), - [329] = {.entry = {.count = 1, .reusable = true}}, SHIFT(14), - [331] = {.entry = {.count = 1, .reusable = true}}, SHIFT(70), - [333] = {.entry = {.count = 1, .reusable = true}}, SHIFT(55), - [335] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7), - [337] = {.entry = {.count = 1, .reusable = true}}, SHIFT(58), - [339] = {.entry = {.count = 1, .reusable = true}}, SHIFT(19), - [341] = {.entry = {.count = 1, .reusable = true}}, SHIFT(16), - [343] = {.entry = {.count = 1, .reusable = true}}, SHIFT(63), - [345] = {.entry = {.count = 1, .reusable = true}}, SHIFT(54), - [347] = {.entry = {.count = 1, .reusable = true}}, SHIFT(52), - [349] = {.entry = {.count = 1, .reusable = true}}, SHIFT(46), - [351] = {.entry = {.count = 1, .reusable = true}}, SHIFT(50), - [353] = {.entry = {.count = 1, .reusable = true}}, SHIFT(60), - [355] = {.entry = {.count = 1, .reusable = true}}, SHIFT(36), - [357] = {.entry = {.count = 1, .reusable = true}}, SHIFT(31), - [359] = {.entry = {.count = 1, .reusable = true}}, SHIFT(53), - [361] = {.entry = {.count = 1, .reusable = true}}, SHIFT(11), - [363] = {.entry = {.count = 1, .reusable = true}}, SHIFT(51), - [365] = {.entry = {.count = 1, .reusable = true}}, SHIFT(21), - [367] = {.entry = {.count = 1, .reusable = true}}, SHIFT(20), - [369] = {.entry = {.count = 1, .reusable = true}}, SHIFT(47), - [371] = {.entry = {.count = 1, .reusable = true}}, SHIFT(10), - [373] = {.entry = {.count = 1, .reusable = true}}, SHIFT(17), - [375] = {.entry = {.count = 1, .reusable = true}}, SHIFT(33), - [377] = {.entry = {.count = 1, .reusable = true}}, SHIFT(32), - [379] = {.entry = {.count = 1, .reusable = true}}, SHIFT(40), - [381] = {.entry = {.count = 1, .reusable = true}}, SHIFT(44), - [383] = {.entry = {.count = 1, .reusable = true}}, SHIFT(29), - [385] = {.entry = {.count = 1, .reusable = true}}, SHIFT(62), - [387] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block_statement, 3, 0, 0), - [389] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block_statement, 3, 0, 0), - [391] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block_statement, 2, 0, 0), - [393] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block_statement, 2, 0, 0), - [395] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_variable_declaration_statement, 5, 0, 11), - [397] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_declaration_statement, 5, 0, 11), - [399] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_statement, 2, 0, 0), - [401] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_statement, 2, 0, 0), - [403] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_return_statement, 3, 0, 0), - [405] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_statement, 3, 0, 0), - [407] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 6, 0, 0), - [409] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 6, 0, 0), - [411] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 7, 0, 0), - [413] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 7, 0, 0), - [415] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_variable_declaration_statement, 4, 0, 11), - [417] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_declaration_statement, 4, 0, 11), - [419] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_while_statement, 5, 0, 0), - [421] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while_statement, 5, 0, 0), - [423] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 7, 0, 0), - [425] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 7, 0, 0), - [427] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_variable_declaration_statement, 4, 0, 8), - [429] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_declaration_statement, 4, 0, 8), - [431] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 5, 0, 0), - [433] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 5, 0, 0), - [435] = {.entry = {.count = 1, .reusable = false}}, SHIFT(67), - [437] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_variable_declaration_statement, 3, 0, 8), - [439] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_declaration_statement, 3, 0, 8), - [441] = {.entry = {.count = 1, .reusable = false}}, SHIFT(69), - [443] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), - [445] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(168), - [448] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(178), - [451] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(172), - [454] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(231), - [457] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(245), - [460] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 1, 0, 0), - [462] = {.entry = {.count = 1, .reusable = false}}, SHIFT(109), - [464] = {.entry = {.count = 1, .reusable = true}}, SHIFT(99), - [466] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__variable_initialization, 1, 0, 0), - [468] = {.entry = {.count = 1, .reusable = true}}, SHIFT(109), - [470] = {.entry = {.count = 1, .reusable = false}}, SHIFT(93), - [472] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__variable_initialization, 2, 0, 0), - [474] = {.entry = {.count = 1, .reusable = true}}, SHIFT(93), - [476] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__variable_initialization_repeat1, 2, 0, 0), - [478] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym__variable_initialization_repeat1, 2, 0, 0), - [480] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__variable_initialization_repeat1, 2, 0, 0), SHIFT_REPEAT(262), - [483] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_array_definition, 1, 0, 0), - [485] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_definition, 1, 0, 0), - [487] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_array_definition_repeat1, 2, 0, 0), - [489] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_array_definition_repeat1, 2, 0, 0), SHIFT_REPEAT(99), - [492] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_array_definition_repeat1, 2, 0, 0), - [494] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_array_definition_repeat1, 3, 0, 0), - [496] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_array_definition_repeat1, 3, 0, 0), - [498] = {.entry = {.count = 1, .reusable = false}}, SHIFT(104), - [500] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__variable_initialization, 3, 0, 0), - [502] = {.entry = {.count = 1, .reusable = true}}, SHIFT(104), - [504] = {.entry = {.count = 1, .reusable = false}}, SHIFT(110), - [506] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__variable_initialization, 4, 0, 0), - [508] = {.entry = {.count = 1, .reusable = true}}, SHIFT(110), - [510] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pragma_directive, 3, 0, 0), - [512] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_body, 3, 0, 0), - [514] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_body, 3, 0, 0), - [516] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_definition, 4, 0, 2), - [518] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_include_directive, 3, 0, 1), - [520] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_main_component_definition, 6, 0, 0), - [522] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 4, 0, 2), - [524] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_main_component_definition, 5, 0, 0), - [526] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_body, 2, 0, 0), - [528] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_definition, 5, 0, 3), - [530] = {.entry = {.count = 1, .reusable = true}}, SHIFT(234), - [532] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_signal, 1, 0, 0), - [534] = {.entry = {.count = 1, .reusable = false}}, SHIFT(213), - [536] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_body, 2, 0, 0), - [538] = {.entry = {.count = 1, .reusable = true}}, SHIFT(251), - [540] = {.entry = {.count = 1, .reusable = true}}, SHIFT(250), - [542] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_main_component_public_signals_repeat1, 2, 0, 0), SHIFT_REPEAT(222), - [545] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_main_component_public_signals_repeat1, 2, 0, 0), - [547] = {.entry = {.count = 1, .reusable = false}}, SHIFT(174), - [549] = {.entry = {.count = 1, .reusable = true}}, SHIFT(174), - [551] = {.entry = {.count = 1, .reusable = false}}, SHIFT(261), - [553] = {.entry = {.count = 1, .reusable = false}}, SHIFT_EXTRA(), - [555] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_string_repeat1, 2, 0, 0), SHIFT_REPEAT(171), - [558] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_string_repeat1, 2, 0, 0), SHIFT_REPEAT(171), - [561] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_string_repeat1, 2, 0, 0), - [563] = {.entry = {.count = 1, .reusable = false}}, SHIFT(236), - [565] = {.entry = {.count = 1, .reusable = false}}, SHIFT(215), - [567] = {.entry = {.count = 1, .reusable = false}}, SHIFT(175), - [569] = {.entry = {.count = 1, .reusable = true}}, SHIFT(175), - [571] = {.entry = {.count = 1, .reusable = false}}, SHIFT(171), - [573] = {.entry = {.count = 1, .reusable = true}}, SHIFT(171), - [575] = {.entry = {.count = 1, .reusable = false}}, SHIFT(266), - [577] = {.entry = {.count = 1, .reusable = false}}, SHIFT(177), - [579] = {.entry = {.count = 1, .reusable = true}}, SHIFT(177), - [581] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_argument_list_repeat1, 2, 0, 0), SHIFT_REPEAT(95), - [584] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_string_repeat2, 2, 0, 0), SHIFT_REPEAT(177), - [587] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_string_repeat2, 2, 0, 0), SHIFT_REPEAT(177), - [590] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_string_repeat2, 2, 0, 0), - [592] = {.entry = {.count = 1, .reusable = true}}, SHIFT(170), - [594] = {.entry = {.count = 1, .reusable = true}}, SHIFT(173), - [596] = {.entry = {.count = 1, .reusable = true}}, SHIFT(271), - [598] = {.entry = {.count = 1, .reusable = true}}, SHIFT(181), - [600] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 2, 0, 0), - [602] = {.entry = {.count = 1, .reusable = false}}, SHIFT(257), - [604] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter, 1, 0, 0), - [606] = {.entry = {.count = 1, .reusable = true}}, SHIFT(193), - [608] = {.entry = {.count = 1, .reusable = true}}, SHIFT(227), - [610] = {.entry = {.count = 1, .reusable = true}}, SHIFT(115), - [612] = {.entry = {.count = 1, .reusable = true}}, SHIFT(141), - [614] = {.entry = {.count = 1, .reusable = true}}, SHIFT(184), - [616] = {.entry = {.count = 1, .reusable = true}}, SHIFT(120), - [618] = {.entry = {.count = 1, .reusable = true}}, SHIFT(128), - [620] = {.entry = {.count = 1, .reusable = true}}, SHIFT(233), - [622] = {.entry = {.count = 1, .reusable = true}}, SHIFT(262), - [624] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_variable_declaration_statement_repeat1, 2, 0, 12), SHIFT_REPEAT(214), - [627] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_variable_declaration_statement_repeat1, 2, 0, 12), - [629] = {.entry = {.count = 1, .reusable = true}}, SHIFT(123), - [631] = {.entry = {.count = 1, .reusable = true}}, SHIFT(189), - [633] = {.entry = {.count = 1, .reusable = true}}, SHIFT(125), - [635] = {.entry = {.count = 1, .reusable = true}}, SHIFT(269), - [637] = {.entry = {.count = 1, .reusable = true}}, SHIFT(182), - [639] = {.entry = {.count = 1, .reusable = true}}, SHIFT(237), - [641] = {.entry = {.count = 1, .reusable = true}}, SHIFT(146), - [643] = {.entry = {.count = 1, .reusable = true}}, SHIFT(200), - [645] = {.entry = {.count = 1, .reusable = true}}, SHIFT(194), - [647] = {.entry = {.count = 1, .reusable = true}}, SHIFT(144), - [649] = {.entry = {.count = 1, .reusable = true}}, SHIFT(148), - [651] = {.entry = {.count = 1, .reusable = true}}, SHIFT(197), - [653] = {.entry = {.count = 1, .reusable = true}}, SHIFT(147), - [655] = {.entry = {.count = 1, .reusable = true}}, SHIFT(249), - [657] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_signal, 2, 0, 0), - [659] = {.entry = {.count = 1, .reusable = true}}, SHIFT(206), - [661] = {.entry = {.count = 1, .reusable = true}}, SHIFT(136), - [663] = {.entry = {.count = 1, .reusable = true}}, SHIFT(204), - [665] = {.entry = {.count = 1, .reusable = true}}, SHIFT(244), - [667] = {.entry = {.count = 1, .reusable = true}}, SHIFT(255), - [669] = {.entry = {.count = 1, .reusable = true}}, SHIFT(186), - [671] = {.entry = {.count = 1, .reusable = true}}, SHIFT(133), - [673] = {.entry = {.count = 1, .reusable = true}}, SHIFT(134), - [675] = {.entry = {.count = 1, .reusable = true}}, SHIFT(191), - [677] = {.entry = {.count = 1, .reusable = true}}, SHIFT(264), - [679] = {.entry = {.count = 1, .reusable = true}}, SHIFT(81), - [681] = {.entry = {.count = 1, .reusable = true}}, SHIFT(265), - [683] = {.entry = {.count = 1, .reusable = true}}, SHIFT(82), - [685] = {.entry = {.count = 1, .reusable = true}}, SHIFT(49), - [687] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_signal_visability, 1, 0, 0), - [689] = {.entry = {.count = 1, .reusable = true}}, SHIFT(210), - [691] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_variable_declaration_statement_repeat1, 2, 0, 8), - [693] = {.entry = {.count = 1, .reusable = true}}, SHIFT(48), - [695] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_component, 1, 0, 0), - [697] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter_list, 3, 0, 0), - [699] = {.entry = {.count = 1, .reusable = true}}, SHIFT(160), - [701] = {.entry = {.count = 1, .reusable = true}}, SHIFT(217), - [703] = {.entry = {.count = 1, .reusable = true}}, SHIFT(221), - [705] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_signal_tags, 4, 0, 0), - [707] = {.entry = {.count = 1, .reusable = true}}, SHIFT(208), - [709] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6), - [711] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_type, 1, 0, 0), - [713] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter_list, 4, 0, 0), - [715] = {.entry = {.count = 1, .reusable = true}}, SHIFT(161), - [717] = {.entry = {.count = 1, .reusable = true}}, SHIFT(76), - [719] = {.entry = {.count = 1, .reusable = true}}, SHIFT(94), - [721] = {.entry = {.count = 1, .reusable = true}}, SHIFT(75), - [723] = {.entry = {.count = 1, .reusable = true}}, SHIFT(92), - [725] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_main_component_public_signals, 7, 0, 0), - [727] = {.entry = {.count = 1, .reusable = true}}, SHIFT(254), - [729] = {.entry = {.count = 1, .reusable = true}}, SHIFT(179), - [731] = {.entry = {.count = 1, .reusable = true}}, SHIFT(8), - [733] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), - [735] = {.entry = {.count = 1, .reusable = true}}, SHIFT(18), - [737] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter_list, 5, 0, 0), - [739] = {.entry = {.count = 1, .reusable = true}}, SHIFT(263), - [741] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_circom_custom_templates_token, 1, 0, 0), - [743] = {.entry = {.count = 1, .reusable = true}}, SHIFT(163), - [745] = {.entry = {.count = 1, .reusable = true}}, SHIFT(156), - [747] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_main_component_public_signals, 6, 0, 0), - [749] = {.entry = {.count = 1, .reusable = true}}, SHIFT(243), - [751] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_main_component_public_signals, 8, 0, 0), - [753] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_signal, 3, 0, 0), - [755] = {.entry = {.count = 1, .reusable = true}}, SHIFT(239), - [757] = {.entry = {.count = 1, .reusable = true}}, SHIFT(223), - [759] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string, 2, 0, 0), - [761] = {.entry = {.count = 1, .reusable = true}}, SHIFT(149), - [763] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_circom_pragma_token, 2, 0, 0), - [765] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_signal_tags, 3, 0, 0), - [767] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter_list, 2, 0, 0), - [769] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string, 3, 0, 0), - [771] = {.entry = {.count = 1, .reusable = true}}, SHIFT(91), - [773] = {.entry = {.count = 1, .reusable = true}}, SHIFT(192), - [775] = {.entry = {.count = 1, .reusable = true}}, SHIFT(256), - [777] = {.entry = {.count = 1, .reusable = true}}, SHIFT(74), - [779] = {.entry = {.count = 1, .reusable = true}}, SHIFT(260), - [781] = {.entry = {.count = 1, .reusable = true}}, SHIFT(90), + [38] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_call_expression, 3, 0, 0), + [40] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_call_expression, 5, 0, 0), + [42] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_call_expression, 5, 0, 0), + [44] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_access_expression, 4, 0, 20), + [46] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_array_access_expression, 4, 0, 20), + [48] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_call_expression, 4, 0, 0), + [50] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_call_expression, 4, 0, 0), + [52] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_member_expression, 3, 1, 12), + [54] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_member_expression, 3, 1, 12), + [56] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_expression, 3, 0, 0), + [58] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_array_expression, 3, 0, 0), + [60] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parenthesized_expression, 3, 0, 0), + [62] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_parenthesized_expression, 3, 0, 0), + [64] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_anonymous_inputs, 3, 0, 0), + [66] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_anonymous_inputs, 3, 0, 0), + [68] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_expression, 4, 0, 0), + [70] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_expression, 4, 0, 0), + [72] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_call_expression, 6, 0, 0), + [74] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_call_expression, 6, 0, 0), + [76] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_expression, 4, 0, 0), + [78] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_array_expression, 4, 0, 0), + [80] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_unary_expression, 2, 0, 7), + [82] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_unary_expression, 2, 0, 7), + [84] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_increment_expression, 2, 0, 0), + [86] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_increment_expression, 2, 0, 0), + [88] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_ternary_expression, 5, 0, 0), + [90] = {.entry = {.count = 1, .reusable = false}}, SHIFT(104), + [92] = {.entry = {.count = 1, .reusable = true}}, SHIFT(104), + [94] = {.entry = {.count = 1, .reusable = false}}, SHIFT(107), + [96] = {.entry = {.count = 1, .reusable = true}}, SHIFT(108), + [98] = {.entry = {.count = 1, .reusable = false}}, SHIFT(108), + [100] = {.entry = {.count = 1, .reusable = true}}, SHIFT(84), + [102] = {.entry = {.count = 1, .reusable = false}}, SHIFT(84), + [104] = {.entry = {.count = 1, .reusable = false}}, SHIFT(95), + [106] = {.entry = {.count = 1, .reusable = false}}, SHIFT(96), + [108] = {.entry = {.count = 1, .reusable = false}}, SHIFT(97), + [110] = {.entry = {.count = 1, .reusable = true}}, SHIFT(97), + [112] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_decrement_expression, 2, 0, 0), + [114] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_decrement_expression, 2, 0, 0), + [116] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binary_expression, 3, 0, 14), + [118] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_binary_expression, 3, 0, 14), + [120] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment_expression, 3, 0, 0), + [122] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_anonymous_inputs, 2, 0, 0), + [124] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_anonymous_inputs, 2, 0, 0), + [126] = {.entry = {.count = 1, .reusable = true}}, SHIFT(88), + [128] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 1, 0, 8), + [130] = {.entry = {.count = 1, .reusable = true}}, SHIFT(80), + [132] = {.entry = {.count = 1, .reusable = true}}, SHIFT(292), + [134] = {.entry = {.count = 1, .reusable = true}}, SHIFT(106), + [136] = {.entry = {.count = 1, .reusable = true}}, SHIFT(98), + [138] = {.entry = {.count = 1, .reusable = true}}, SHIFT(11), + [140] = {.entry = {.count = 1, .reusable = true}}, SHIFT(10), + [142] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_array_expression_repeat1, 2, 0, 0), + [144] = {.entry = {.count = 1, .reusable = true}}, SHIFT(153), + [146] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__variable_declaration, 4, 0, 23), + [148] = {.entry = {.count = 1, .reusable = true}}, SHIFT(114), + [150] = {.entry = {.count = 1, .reusable = true}}, SHIFT(139), + [152] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__signal_declaration, 3, 0, 16), + [154] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__signal_declaration, 4, 0, 23), + [156] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__variable_declaration, 3, 0, 16), + [158] = {.entry = {.count = 1, .reusable = true}}, SHIFT(109), + [160] = {.entry = {.count = 1, .reusable = true}}, SHIFT(150), + [162] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_argument_list_repeat1, 2, 0, 21), + [164] = {.entry = {.count = 1, .reusable = true}}, SHIFT(65), + [166] = {.entry = {.count = 1, .reusable = true}}, SHIFT(52), + [168] = {.entry = {.count = 1, .reusable = true}}, SHIFT(163), + [170] = {.entry = {.count = 1, .reusable = true}}, SHIFT(101), + [172] = {.entry = {.count = 1, .reusable = false}}, SHIFT(242), + [174] = {.entry = {.count = 1, .reusable = true}}, SHIFT(102), + [176] = {.entry = {.count = 1, .reusable = false}}, SHIFT(282), + [178] = {.entry = {.count = 1, .reusable = false}}, SHIFT(284), + [180] = {.entry = {.count = 1, .reusable = false}}, SHIFT(285), + [182] = {.entry = {.count = 1, .reusable = false}}, SHIFT(103), + [184] = {.entry = {.count = 1, .reusable = false}}, SHIFT(156), + [186] = {.entry = {.count = 1, .reusable = false}}, SHIFT(241), + [188] = {.entry = {.count = 1, .reusable = true}}, SHIFT(100), + [190] = {.entry = {.count = 1, .reusable = true}}, SHIFT(99), + [192] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2), + [194] = {.entry = {.count = 1, .reusable = true}}, SHIFT(43), + [196] = {.entry = {.count = 1, .reusable = false}}, SHIFT(276), + [198] = {.entry = {.count = 1, .reusable = true}}, SHIFT(71), + [200] = {.entry = {.count = 1, .reusable = true}}, SHIFT(164), + [202] = {.entry = {.count = 1, .reusable = true}}, SHIFT(83), + [204] = {.entry = {.count = 1, .reusable = true}}, SHIFT(122), + [206] = {.entry = {.count = 1, .reusable = true}}, SHIFT(142), + [208] = {.entry = {.count = 1, .reusable = true}}, SHIFT(131), + [210] = {.entry = {.count = 1, .reusable = true}}, SHIFT(128), + [212] = {.entry = {.count = 1, .reusable = true}}, SHIFT(69), + [214] = {.entry = {.count = 1, .reusable = true}}, SHIFT(72), + [216] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_template_body_repeat1, 2, 0, 0), SHIFT_REPEAT(52), + [219] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_template_body_repeat1, 2, 0, 0), + [221] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_template_body_repeat1, 2, 0, 0), SHIFT_REPEAT(101), + [224] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_template_body_repeat1, 2, 0, 0), SHIFT_REPEAT(242), + [227] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_template_body_repeat1, 2, 0, 0), SHIFT_REPEAT(102), + [230] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_template_body_repeat1, 2, 0, 0), SHIFT_REPEAT(282), + [233] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_template_body_repeat1, 2, 0, 0), SHIFT_REPEAT(284), + [236] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_template_body_repeat1, 2, 0, 0), SHIFT_REPEAT(285), + [239] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_template_body_repeat1, 2, 0, 0), SHIFT_REPEAT(103), + [242] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_template_body_repeat1, 2, 0, 0), SHIFT_REPEAT(156), + [245] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_template_body_repeat1, 2, 0, 0), SHIFT_REPEAT(241), + [248] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_template_body_repeat1, 2, 0, 0), SHIFT_REPEAT(100), + [251] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_template_body_repeat1, 2, 0, 0), SHIFT_REPEAT(99), + [254] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_template_body_repeat1, 2, 0, 0), SHIFT_REPEAT(2), + [257] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_template_body_repeat1, 2, 0, 0), SHIFT_REPEAT(43), + [260] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_template_body_repeat1, 2, 0, 0), SHIFT_REPEAT(276), + [263] = {.entry = {.count = 1, .reusable = true}}, SHIFT(172), + [265] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6), + [267] = {.entry = {.count = 1, .reusable = true}}, SHIFT(174), + [269] = {.entry = {.count = 1, .reusable = true}}, SHIFT(168), + [271] = {.entry = {.count = 1, .reusable = true}}, SHIFT(68), + [273] = {.entry = {.count = 1, .reusable = true}}, SHIFT(66), + [275] = {.entry = {.count = 1, .reusable = true}}, SHIFT(50), + [277] = {.entry = {.count = 1, .reusable = false}}, SHIFT(248), + [279] = {.entry = {.count = 1, .reusable = false}}, SHIFT(306), + [281] = {.entry = {.count = 1, .reusable = false}}, SHIFT(304), + [283] = {.entry = {.count = 1, .reusable = false}}, SHIFT(301), + [285] = {.entry = {.count = 1, .reusable = false}}, SHIFT(90), + [287] = {.entry = {.count = 1, .reusable = false}}, SHIFT(159), + [289] = {.entry = {.count = 1, .reusable = false}}, SHIFT(263), + [291] = {.entry = {.count = 1, .reusable = true}}, SHIFT(37), + [293] = {.entry = {.count = 1, .reusable = false}}, SHIFT(256), + [295] = {.entry = {.count = 1, .reusable = true}}, SHIFT(76), + [297] = {.entry = {.count = 1, .reusable = true}}, SHIFT(35), + [299] = {.entry = {.count = 1, .reusable = true}}, SHIFT(75), + [301] = {.entry = {.count = 1, .reusable = true}}, SHIFT(81), + [303] = {.entry = {.count = 1, .reusable = true}}, SHIFT(82), + [305] = {.entry = {.count = 1, .reusable = true}}, SHIFT(8), + [307] = {.entry = {.count = 1, .reusable = true}}, SHIFT(31), + [309] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4), + [311] = {.entry = {.count = 1, .reusable = true}}, SHIFT(27), + [313] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3), + [315] = {.entry = {.count = 1, .reusable = true}}, SHIFT(58), + [317] = {.entry = {.count = 1, .reusable = true}}, SHIFT(64), + [319] = {.entry = {.count = 1, .reusable = true}}, SHIFT(61), + [321] = {.entry = {.count = 1, .reusable = true}}, SHIFT(63), + [323] = {.entry = {.count = 1, .reusable = true}}, SHIFT(54), + [325] = {.entry = {.count = 1, .reusable = true}}, SHIFT(19), + [327] = {.entry = {.count = 1, .reusable = true}}, SHIFT(29), + [329] = {.entry = {.count = 1, .reusable = true}}, SHIFT(55), + [331] = {.entry = {.count = 1, .reusable = true}}, SHIFT(62), + [333] = {.entry = {.count = 1, .reusable = true}}, SHIFT(47), + [335] = {.entry = {.count = 1, .reusable = true}}, SHIFT(44), + [337] = {.entry = {.count = 1, .reusable = true}}, SHIFT(45), + [339] = {.entry = {.count = 1, .reusable = true}}, SHIFT(42), + [341] = {.entry = {.count = 1, .reusable = true}}, SHIFT(41), + [343] = {.entry = {.count = 1, .reusable = true}}, SHIFT(40), + [345] = {.entry = {.count = 1, .reusable = true}}, SHIFT(36), + [347] = {.entry = {.count = 1, .reusable = true}}, SHIFT(39), + [349] = {.entry = {.count = 1, .reusable = true}}, SHIFT(28), + [351] = {.entry = {.count = 1, .reusable = true}}, SHIFT(26), + [353] = {.entry = {.count = 1, .reusable = true}}, SHIFT(21), + [355] = {.entry = {.count = 1, .reusable = true}}, SHIFT(34), + [357] = {.entry = {.count = 1, .reusable = true}}, SHIFT(17), + [359] = {.entry = {.count = 1, .reusable = true}}, SHIFT(16), + [361] = {.entry = {.count = 1, .reusable = true}}, SHIFT(32), + [363] = {.entry = {.count = 1, .reusable = true}}, SHIFT(33), + [365] = {.entry = {.count = 1, .reusable = true}}, SHIFT(38), + [367] = {.entry = {.count = 1, .reusable = true}}, SHIFT(23), + [369] = {.entry = {.count = 1, .reusable = true}}, SHIFT(48), + [371] = {.entry = {.count = 1, .reusable = true}}, SHIFT(49), + [373] = {.entry = {.count = 1, .reusable = true}}, SHIFT(22), + [375] = {.entry = {.count = 1, .reusable = true}}, SHIFT(30), + [377] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_statement, 3, 0, 0), + [379] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_return_statement, 3, 0, 0), + [381] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_component_declaration_statement, 4, 0, 17), + [383] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_component_declaration_statement, 4, 0, 17), + [385] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 5, 0, 0), + [387] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 5, 0, 0), + [389] = {.entry = {.count = 1, .reusable = false}}, SHIFT(67), + [391] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_declaration_statement, 4, 0, 17), + [393] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_variable_declaration_statement, 4, 0, 17), + [395] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_declaration_statement, 3, 0, 11), + [397] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_variable_declaration_statement, 3, 0, 11), + [399] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_statement, 2, 0, 0), + [401] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_statement, 2, 0, 0), + [403] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 7, 0, 0), + [405] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 7, 0, 0), + [407] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 7, 0, 0), + [409] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 7, 0, 0), + [411] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_signal_declaration_statement, 6, 0, 26), + [413] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_signal_declaration_statement, 6, 0, 26), + [415] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 6, 0, 0), + [417] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 6, 0, 0), + [419] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_signal_declaration_statement, 5, 0, 24), + [421] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_signal_declaration_statement, 5, 0, 24), + [423] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_signal_declaration_statement, 5, 0, 25), + [425] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_signal_declaration_statement, 5, 0, 25), + [427] = {.entry = {.count = 1, .reusable = false}}, SHIFT(70), + [429] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block_statement, 2, 0, 0), + [431] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block_statement, 2, 0, 0), + [433] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while_statement, 5, 0, 0), + [435] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_while_statement, 5, 0, 0), + [437] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_signal_declaration_statement, 4, 0, 19), + [439] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_signal_declaration_statement, 4, 0, 19), + [441] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_signal_declaration_statement, 4, 0, 17), + [443] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_signal_declaration_statement, 4, 0, 17), + [445] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_signal_declaration_statement, 3, 0, 11), + [447] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_signal_declaration_statement, 3, 0, 11), + [449] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block_statement, 3, 0, 0), + [451] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block_statement, 3, 0, 0), + [453] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_component_declaration_statement, 3, 0, 11), + [455] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_component_declaration_statement, 3, 0, 11), + [457] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), + [459] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(175), + [462] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(226), + [465] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(183), + [468] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(303), + [471] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(302), + [474] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 1, 0, 0), + [476] = {.entry = {.count = 1, .reusable = true}}, SHIFT(290), + [478] = {.entry = {.count = 1, .reusable = false}}, SHIFT(258), + [480] = {.entry = {.count = 1, .reusable = false}}, SHIFT(160), + [482] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_array_type_repeat1, 2, 0, 0), + [484] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_array_type_repeat1, 2, 0, 0), SHIFT_REPEAT(105), + [487] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_type, 1, 0, 0), + [489] = {.entry = {.count = 1, .reusable = true}}, SHIFT(105), + [491] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__signal_declaration, 1, 0, 3), + [493] = {.entry = {.count = 1, .reusable = true}}, SHIFT(94), + [495] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pragma_directive, 3, 0, 0), + [497] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_definition, 4, 0, 4), + [499] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_body, 2, 0, 0), + [501] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_array_type_repeat1, 3, 0, 0), + [503] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_include_directive, 3, 0, 2), + [505] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_definition, 5, 0, 5), + [507] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 4, 0, 4), + [509] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_body, 3, 0, 0), + [511] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_main_component_definition, 6, 0, 9), + [513] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__variable_declaration, 1, 0, 3), + [515] = {.entry = {.count = 1, .reusable = true}}, SHIFT(91), + [517] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_main_component_definition, 5, 0, 6), + [519] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_body, 3, 0, 0), + [521] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__component_declaration, 1, 0, 3), + [523] = {.entry = {.count = 1, .reusable = true}}, SHIFT(217), + [525] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_body, 2, 0, 0), + [527] = {.entry = {.count = 1, .reusable = true}}, SHIFT(299), + [529] = {.entry = {.count = 1, .reusable = true}}, SHIFT(296), + [531] = {.entry = {.count = 1, .reusable = true}}, SHIFT(261), + [533] = {.entry = {.count = 1, .reusable = true}}, SHIFT(140), + [535] = {.entry = {.count = 1, .reusable = true}}, SHIFT(133), + [537] = {.entry = {.count = 1, .reusable = true}}, SHIFT(251), + [539] = {.entry = {.count = 1, .reusable = true}}, SHIFT(119), + [541] = {.entry = {.count = 1, .reusable = true}}, SHIFT(120), + [543] = {.entry = {.count = 1, .reusable = true}}, SHIFT(123), + [545] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_array_expression_repeat1, 2, 0, 0), SHIFT_REPEAT(98), + [548] = {.entry = {.count = 1, .reusable = true}}, SHIFT(155), + [550] = {.entry = {.count = 1, .reusable = false}}, SHIFT(249), + [552] = {.entry = {.count = 1, .reusable = false}}, SHIFT(287), + [554] = {.entry = {.count = 1, .reusable = true}}, SHIFT(125), + [556] = {.entry = {.count = 1, .reusable = true}}, SHIFT(130), + [558] = {.entry = {.count = 1, .reusable = true}}, SHIFT(126), + [560] = {.entry = {.count = 1, .reusable = true}}, SHIFT(269), + [562] = {.entry = {.count = 1, .reusable = true}}, SHIFT(110), + [564] = {.entry = {.count = 1, .reusable = false}}, SHIFT(275), + [566] = {.entry = {.count = 1, .reusable = false}}, SHIFT(191), + [568] = {.entry = {.count = 1, .reusable = true}}, SHIFT(191), + [570] = {.entry = {.count = 1, .reusable = false}}, SHIFT_EXTRA(), + [572] = {.entry = {.count = 1, .reusable = true}}, SHIFT(154), + [574] = {.entry = {.count = 1, .reusable = true}}, SHIFT(127), + [576] = {.entry = {.count = 1, .reusable = false}}, SHIFT(273), + [578] = {.entry = {.count = 1, .reusable = false}}, SHIFT(195), + [580] = {.entry = {.count = 1, .reusable = true}}, SHIFT(195), + [582] = {.entry = {.count = 1, .reusable = true}}, SHIFT(129), + [584] = {.entry = {.count = 1, .reusable = true}}, SHIFT(145), + [586] = {.entry = {.count = 1, .reusable = false}}, SHIFT(201), + [588] = {.entry = {.count = 1, .reusable = true}}, SHIFT(201), + [590] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_string_repeat1, 2, 0, 0), + [592] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_string_repeat1, 2, 0, 0), SHIFT_REPEAT(195), + [595] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_string_repeat1, 2, 0, 0), SHIFT_REPEAT(195), + [598] = {.entry = {.count = 1, .reusable = true}}, SHIFT(132), + [600] = {.entry = {.count = 1, .reusable = true}}, SHIFT(149), + [602] = {.entry = {.count = 1, .reusable = true}}, SHIFT(146), + [604] = {.entry = {.count = 1, .reusable = true}}, SHIFT(137), + [606] = {.entry = {.count = 1, .reusable = true}}, SHIFT(147), + [608] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_string_repeat2, 2, 0, 0), + [610] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_string_repeat2, 2, 0, 0), SHIFT_REPEAT(201), + [613] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_string_repeat2, 2, 0, 0), SHIFT_REPEAT(201), + [616] = {.entry = {.count = 1, .reusable = true}}, SHIFT(113), + [618] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__signal_declaration, 2, 0, 10), + [620] = {.entry = {.count = 1, .reusable = true}}, SHIFT(92), + [622] = {.entry = {.count = 1, .reusable = true}}, SHIFT(112), + [624] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_parameter_list_repeat1, 2, 0, 0), SHIFT_REPEAT(244), + [627] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_parameter_list_repeat1, 2, 0, 0), + [629] = {.entry = {.count = 1, .reusable = true}}, SHIFT(136), + [631] = {.entry = {.count = 1, .reusable = false}}, SHIFT(194), + [633] = {.entry = {.count = 1, .reusable = true}}, SHIFT(194), + [635] = {.entry = {.count = 1, .reusable = true}}, SHIFT(141), + [637] = {.entry = {.count = 1, .reusable = true}}, SHIFT(134), + [639] = {.entry = {.count = 1, .reusable = true}}, SHIFT(144), + [641] = {.entry = {.count = 1, .reusable = true}}, SHIFT(160), + [643] = {.entry = {.count = 1, .reusable = true}}, SHIFT(117), + [645] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_signal_tags_repeat1, 2, 0, 0), + [647] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_signal_tags_repeat1, 2, 0, 0), SHIFT_REPEAT(297), + [650] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_variable_declaration_statement_repeat1, 2, 0, 18), SHIFT_REPEAT(261), + [653] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_variable_declaration_statement_repeat1, 2, 0, 18), + [655] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__component_declaration, 2, 0, 10), + [657] = {.entry = {.count = 1, .reusable = true}}, SHIFT(225), + [659] = {.entry = {.count = 1, .reusable = false}}, SHIFT(278), + [661] = {.entry = {.count = 1, .reusable = true}}, SHIFT(13), + [663] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_component_declaration_statement_repeat1, 2, 0, 18), SHIFT_REPEAT(269), + [666] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_component_declaration_statement_repeat1, 2, 0, 18), + [668] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 2, 0, 15), + [670] = {.entry = {.count = 1, .reusable = true}}, SHIFT(244), + [672] = {.entry = {.count = 1, .reusable = true}}, SHIFT(305), + [674] = {.entry = {.count = 1, .reusable = true}}, SHIFT(270), + [676] = {.entry = {.count = 1, .reusable = true}}, SHIFT(291), + [678] = {.entry = {.count = 1, .reusable = true}}, SHIFT(297), + [680] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__variable_declaration, 2, 0, 10), + [682] = {.entry = {.count = 1, .reusable = true}}, SHIFT(93), + [684] = {.entry = {.count = 1, .reusable = true}}, SHIFT(188), + [686] = {.entry = {.count = 1, .reusable = true}}, SHIFT(207), + [688] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_signal_declaration_statement_repeat1, 2, 0, 18), SHIFT_REPEAT(251), + [691] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_signal_declaration_statement_repeat1, 2, 0, 18), + [693] = {.entry = {.count = 1, .reusable = true}}, SHIFT(280), + [695] = {.entry = {.count = 1, .reusable = true}}, SHIFT(230), + [697] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter, 1, 0, 3), + [699] = {.entry = {.count = 1, .reusable = true}}, SHIFT(272), + [701] = {.entry = {.count = 1, .reusable = true}}, SHIFT(15), + [703] = {.entry = {.count = 1, .reusable = true}}, SHIFT(288), + [705] = {.entry = {.count = 1, .reusable = true}}, SHIFT(298), + [707] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_argument_list_repeat1, 2, 0, 22), SHIFT_REPEAT(88), + [710] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_argument_list_repeat1, 2, 0, 22), + [712] = {.entry = {.count = 1, .reusable = true}}, SHIFT(277), + [714] = {.entry = {.count = 1, .reusable = true}}, SHIFT(229), + [716] = {.entry = {.count = 1, .reusable = true}}, SHIFT(228), + [718] = {.entry = {.count = 1, .reusable = true}}, SHIFT(170), + [720] = {.entry = {.count = 1, .reusable = true}}, SHIFT(173), + [722] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__component_declaration, 4, 0, 23), + [724] = {.entry = {.count = 1, .reusable = true}}, SHIFT(169), + [726] = {.entry = {.count = 1, .reusable = true}}, SHIFT(171), + [728] = {.entry = {.count = 1, .reusable = true}}, SHIFT(59), + [730] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_variable_declaration_statement_repeat1, 2, 0, 11), + [732] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__component_declaration, 3, 0, 16), + [734] = {.entry = {.count = 1, .reusable = true}}, SHIFT(46), + [736] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_signal_visibility, 1, 0, 0), + [738] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_signal_declaration_statement_repeat1, 2, 0, 11), + [740] = {.entry = {.count = 1, .reusable = true}}, SHIFT(161), + [742] = {.entry = {.count = 1, .reusable = true}}, SHIFT(165), + [744] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_component_declaration_statement_repeat1, 2, 0, 11), + [746] = {.entry = {.count = 1, .reusable = true}}, SHIFT(289), + [748] = {.entry = {.count = 1, .reusable = true}}, SHIFT(254), + [750] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter_list, 3, 0, 0), + [752] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string, 3, 0, 0), + [754] = {.entry = {.count = 1, .reusable = true}}, SHIFT(233), + [756] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string, 2, 0, 0), + [758] = {.entry = {.count = 1, .reusable = true}}, SHIFT(286), + [760] = {.entry = {.count = 1, .reusable = true}}, SHIFT(271), + [762] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_circom_pragma_token, 2, 0, 1), + [764] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter_list, 2, 0, 0), + [766] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5), + [768] = {.entry = {.count = 1, .reusable = true}}, SHIFT(87), + [770] = {.entry = {.count = 1, .reusable = true}}, SHIFT(240), + [772] = {.entry = {.count = 1, .reusable = true}}, SHIFT(74), + [774] = {.entry = {.count = 1, .reusable = true}}, SHIFT(89), + [776] = {.entry = {.count = 1, .reusable = true}}, SHIFT(77), + [778] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_type, 1, 0, 0), + [780] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter_list, 4, 0, 0), + [782] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_main_component_public_signals, 7, 0, 0), + [784] = {.entry = {.count = 1, .reusable = true}}, SHIFT(236), + [786] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_signal_tags, 4, 0, 0), + [788] = {.entry = {.count = 1, .reusable = true}}, SHIFT(9), + [790] = {.entry = {.count = 1, .reusable = true}}, SHIFT(12), + [792] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_main_component_public_signals, 6, 0, 0), + [794] = {.entry = {.count = 1, .reusable = true}}, SHIFT(279), + [796] = {.entry = {.count = 1, .reusable = true}}, SHIFT(265), + [798] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_signal_tags, 3, 0, 0), + [800] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_circom_custom_templates_token, 1, 0, 0), + [802] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), + [804] = {.entry = {.count = 1, .reusable = true}}, SHIFT(86), + [806] = {.entry = {.count = 1, .reusable = true}}, SHIFT(238), + [808] = {.entry = {.count = 1, .reusable = true}}, SHIFT(239), + [810] = {.entry = {.count = 1, .reusable = true}}, SHIFT(73), + [812] = {.entry = {.count = 1, .reusable = true}}, SHIFT(295), + [814] = {.entry = {.count = 1, .reusable = true}}, SHIFT(85), }; #ifdef __cplusplus diff --git a/src/tree_sitter/parser.h b/src/tree_sitter/parser.h index 17f0e94..799f599 100644 --- a/src/tree_sitter/parser.h +++ b/src/tree_sitter/parser.h @@ -47,6 +47,7 @@ struct TSLexer { uint32_t (*get_column)(TSLexer *); bool (*is_at_included_range_start)(const TSLexer *); bool (*eof)(const TSLexer *); + void (*log)(const TSLexer *, const char *, ...); }; typedef enum { diff --git a/test/corpus/comments.txt b/test/corpus/comments.txt index df057ef..1c447b0 100644 --- a/test/corpus/comments.txt +++ b/test/corpus/comments.txt @@ -26,17 +26,14 @@ component main {public [in1,in2]} = Multiplier2(); (parameter_list) (template_body (comment) - (variable_declaration_statement - (signal - (signal_visability)) + (signal_declaration_statement + (signal_visibility) (identifier)) - (variable_declaration_statement - (signal - (signal_visability)) + (signal_declaration_statement + (signal_visibility) (identifier)) - (variable_declaration_statement - (signal - (signal_visability)) + (signal_declaration_statement + (signal_visibility) (identifier)) (comment) (expression_statement diff --git a/test/corpus/declaration.txt b/test/corpus/declaration.txt index 62f66a1..761b1a1 100644 --- a/test/corpus/declaration.txt +++ b/test/corpus/declaration.txt @@ -1,5 +1,5 @@ ===================================== -Simple Signals Declaration +Simple Signals Declaration ===================================== template test(){ signal inter; @@ -7,21 +7,18 @@ template test(){ signal output out; } --- - (source_file +(source_file (template_definition (identifier) (parameter_list) (template_body - (variable_declaration_statement - (signal) + (signal_declaration_statement (identifier)) - (variable_declaration_statement - (signal - (signal_visability)) + (signal_declaration_statement + (signal_visibility) (identifier)) - (variable_declaration_statement - (signal - (signal_visability)) + (signal_declaration_statement + (signal_visibility) (identifier))))) ===================================== Variable Declaration @@ -30,13 +27,12 @@ template qwe(){ var tmp; } --- - (source_file +(source_file (template_definition (identifier) (parameter_list) (template_body (variable_declaration_statement - (var) (identifier))))) ===================================== Component Declaration @@ -45,13 +41,12 @@ template qwe(){ component tmp; } --- - (source_file +(source_file (template_definition (identifier) (parameter_list) (template_body - (variable_declaration_statement - (component) + (component_declaration_statement (identifier))))) ===================================== Input Signal Array Declaration @@ -63,7 +58,7 @@ template test(N, M){ signal input inArray[1][1]; } --- -(source_file + (source_file (template_definition (identifier) (parameter_list @@ -72,32 +67,28 @@ template test(N, M){ (parameter (identifier))) (template_body - (variable_declaration_statement - (signal - (signal_visability)) + (signal_declaration_statement + (signal_visibility) (identifier) - (array_definition - (int))) - (variable_declaration_statement - (signal - (signal_visability)) + (array_type + (int_literal))) + (signal_declaration_statement + (signal_visibility) (identifier) - (array_definition + (array_type (identifier))) - (variable_declaration_statement - (signal - (signal_visability)) + (signal_declaration_statement + (signal_visibility) (identifier) - (array_definition + (array_type (identifier) (identifier))) - (variable_declaration_statement - (signal - (signal_visability)) + (signal_declaration_statement + (signal_visibility) (identifier) - (array_definition - (int) - (int)))))) + (array_type + (int_literal) + (int_literal)))))) ===================================== Input Signal with tags Declaration ===================================== @@ -110,12 +101,11 @@ template plate(){ (identifier) (parameter_list) (template_body - (variable_declaration_statement - (signal - (signal_visability) - (signal_tags - (identifier) - (identifier))) + (signal_declaration_statement + (signal_visibility) + (signal_tags + (identifier) + (identifier)) (identifier))))) ===================================== Output Signal Declaration with initialization @@ -129,9 +119,8 @@ template plate(){ (identifier) (parameter_list) (template_body - (variable_declaration_statement - (signal - (signal_visability)) + (signal_declaration_statement + (signal_visibility) (identifier) (binary_expression (identifier) @@ -149,11 +138,10 @@ template test(){ (parameter_list) (template_body (variable_declaration_statement - (var) (identifier) - (int) + (int_literal) (identifier) - (int))))) + (int_literal))))) ===================================== Multiple components declaration ===================================== @@ -166,7 +154,6 @@ template test(){ (identifier) (parameter_list) (template_body - (variable_declaration_statement - (component) + (component_declaration_statement (identifier) (identifier))))) \ No newline at end of file diff --git a/test/corpus/expressions.txt b/test/corpus/expressions.txt index 4226a49..7967b5b 100644 --- a/test/corpus/expressions.txt +++ b/test/corpus/expressions.txt @@ -14,25 +14,21 @@ template test(){ (parameter_list) (template_body (variable_declaration_statement - (var) (identifier) (unary_expression - (int))) + (int_literal))) (variable_declaration_statement - (var) (identifier) (unary_expression - (int))) + (int_literal))) (variable_declaration_statement - (var) (identifier) (unary_expression - (int))) + (int_literal))) (variable_declaration_statement - (var) (identifier) (unary_expression - (int)))))) + (int_literal)))))) ===================================== Variable Declaration With Binary Expression ===================================== @@ -65,125 +61,105 @@ template test(){ (parameter_list) (template_body (variable_declaration_statement - (var) (identifier) (binary_expression - (int) - (int))) + (int_literal) + (int_literal))) (variable_declaration_statement - (var) (identifier) (binary_expression - (int) - (int))) + (int_literal) + (int_literal))) (variable_declaration_statement - (var) (identifier) (binary_expression - (int) - (int))) + (int_literal) + (int_literal))) (variable_declaration_statement - (var) (identifier) (binary_expression - (int) - (int))) + (int_literal) + (int_literal))) (variable_declaration_statement - (var) (identifier) (binary_expression - (int) - (int))) + (int_literal) + (int_literal))) (variable_declaration_statement - (var) (identifier) (binary_expression - (int) - (int))) + (int_literal) + (int_literal))) (variable_declaration_statement - (var) (identifier) (binary_expression - (int) - (int))) + (int_literal) + (int_literal))) (variable_declaration_statement - (var) (identifier) (binary_expression - (int) - (int))) + (int_literal) + (int_literal))) (variable_declaration_statement - (var) (identifier) (binary_expression - (int) - (int))) + (int_literal) + (int_literal))) (variable_declaration_statement - (var) (identifier) (binary_expression - (int) - (int))) + (int_literal) + (int_literal))) (variable_declaration_statement - (var) (identifier) (binary_expression - (int) - (int))) + (int_literal) + (int_literal))) (variable_declaration_statement - (var) (identifier) (binary_expression - (int) - (int))) + (int_literal) + (int_literal))) (variable_declaration_statement - (var) (identifier) (binary_expression - (int) - (int))) + (int_literal) + (int_literal))) (variable_declaration_statement - (var) (identifier) (binary_expression - (int) - (int))) + (int_literal) + (int_literal))) (variable_declaration_statement - (var) (identifier) (binary_expression - (int) - (int))) + (int_literal) + (int_literal))) (variable_declaration_statement - (var) (identifier) (binary_expression - (int) - (int))) + (int_literal) + (int_literal))) (variable_declaration_statement - (var) (identifier) (binary_expression - (int) - (int))) + (int_literal) + (int_literal))) (variable_declaration_statement - (var) (identifier) (binary_expression - (int) - (int))) + (int_literal) + (int_literal))) (variable_declaration_statement - (var) (identifier) (binary_expression - (int) - (int))) + (int_literal) + (int_literal))) (variable_declaration_statement - (var) (identifier) (binary_expression - (int) - (int)))))) + (int_literal) + (int_literal)))))) ===================================== Variable Declaration With Ternary Expression ===================================== @@ -197,14 +173,13 @@ template test(){ (parameter_list) (template_body (variable_declaration_statement - (var) (identifier) (ternary_expression - (int) + (int_literal) (binary_expression - (int) - (int)) - (int)))))) + (int_literal) + (int_literal)) + (int_literal)))))) ===================================== Variable Declaration With Member Expression ===================================== @@ -218,7 +193,6 @@ template qwer(){ (parameter_list) (template_body (variable_declaration_statement - (var) (identifier) (member_expression (identifier) @@ -236,11 +210,10 @@ template test(){ (parameter_list) (template_body (variable_declaration_statement - (var) (identifier) (array_access_expression (identifier) - (int)))))) + (int_literal)))))) ===================================== Variable Declaration With Member Array Access Expression ===================================== @@ -254,34 +227,34 @@ template test(){ (parameter_list) (template_body (variable_declaration_statement - (var) (identifier) (array_access_expression (member_expression (identifier) (property_identifier)) - (int)))))) + (int_literal)))))) ===================================== Variable Declaration With Member Double Array Access Expression ===================================== -template test(){ +template test(N){ var tmp = qwer.in[0][N]; } --- (source_file (template_definition (identifier) - (parameter_list) + (parameter_list + (parameter + (identifier))) (template_body (variable_declaration_statement - (var) (identifier) (array_access_expression (array_access_expression (member_expression (identifier) (property_identifier)) - (int)) + (int_literal)) (identifier)))))) ===================================== Variable Declaration With parenthesized Expression @@ -296,12 +269,11 @@ template test(){ (parameter_list) (template_body (variable_declaration_statement - (var) (identifier) (parenthesized_expression (binary_expression - (int) - (int))))))) + (int_literal) + (int_literal))))))) ===================================== Variable Declaration With Complex Expression ===================================== @@ -315,7 +287,6 @@ template test(){ (parameter_list) (template_body (variable_declaration_statement - (var) (identifier) (binary_expression (parenthesized_expression @@ -326,16 +297,16 @@ template test(){ (binary_expression (parenthesized_expression (binary_expression - (int) - (int))) + (int_literal) + (int_literal))) (identifier)) (property_identifier)) (binary_expression - (int) + (int_literal) (identifier))) (property_identifier)) - (int))) - (int)))))) + (int_literal))) + (int_literal)))))) ===================================== Variable Declaration With Function call Expression ===================================== @@ -351,19 +322,16 @@ template test(){ (parameter_list) (template_body (variable_declaration_statement - (var) (identifier) (call_expression (identifier))) (variable_declaration_statement - (var) (identifier) (call_expression (identifier) (argument_list - (int)))) + (int_literal)))) (variable_declaration_statement - (var) (identifier) (call_expression (identifier) @@ -372,8 +340,8 @@ template test(){ (identifier) (property_identifier)) (binary_expression - (int) - (int)))))))) + (int_literal) + (int_literal)))))))) ===================================== Signal Assignment ===================================== @@ -389,19 +357,16 @@ template test(){ (identifier) (parameter_list) (template_body - (variable_declaration_statement - (signal - (signal_visability)) + (signal_declaration_statement + (signal_visibility) (identifier) - (array_definition + (array_type (identifier))) - (variable_declaration_statement - (signal - (signal_visability)) + (signal_declaration_statement + (signal_visibility) (identifier)) - (variable_declaration_statement - (signal - (signal_visability)) + (signal_declaration_statement + (signal_visibility) (identifier)) (expression_statement (assignment_expression @@ -413,7 +378,7 @@ template test(){ (binary_expression (identifier) (identifier))) - (int))))))) + (int_literal))))))) ===================================== Left assignment ===================================== @@ -423,25 +388,23 @@ template test(){ in*out === 0; } --- - (source_file +(source_file (template_definition (identifier) (parameter_list) (template_body - (variable_declaration_statement - (signal - (signal_visability)) + (signal_declaration_statement + (signal_visibility) (identifier)) - (variable_declaration_statement - (signal - (signal_visability)) + (signal_declaration_statement + (signal_visibility) (identifier)) (expression_statement (assignment_expression (binary_expression (identifier) (identifier)) - (int)))))) + (int_literal)))))) ===================================== Increments, decrements ===================================== @@ -481,7 +444,7 @@ template test(){ (member_expression (identifier) (property_identifier)) - (int)))) + (int_literal)))) (expression_statement (decrement_expression (array_access_expression @@ -489,7 +452,7 @@ template test(){ (identifier) (property_identifier)) (binary_expression - (int) + (int_literal) (identifier))))) (expression_statement (assignment_expression @@ -499,7 +462,7 @@ template test(){ (identifier) (identifier)) (property_identifier)) - (int)) + (int_literal)) (identifier)))))) ===================================== Expression with array initialization @@ -518,11 +481,10 @@ template FloatAdd(k, p) { (identifier))) (template_body (variable_declaration_statement - (var) (identifier) - (array_definition - (int)) - (array + (array_type + (int_literal)) + (array_expression (identifier) (identifier)))))) ===================================== @@ -541,29 +503,27 @@ template B(n){ (identifier))) (template_body (variable_declaration_statement - (var) (identifier) - (int) + (int_literal) (identifier) - (int)) - (variable_declaration_statement - (component) + (int_literal)) + (component_declaration_statement (identifier)) (expression_statement (assignment_expression - (tuple + (tuple_expression (identifier) (identifier) (identifier)) - (tuple - (int) + (tuple_expression + (int_literal) (binary_expression (identifier) - (int)) + (int_literal)) (call_expression (identifier) (argument_list - (int))))))))) + (int_literal))))))))) ===================================== Expression with anonymous components, circom 2.0.1 ===================================== @@ -578,8 +538,7 @@ template B(n){ (parameter (identifier))) (template_body - (variable_declaration_statement - (signal) + (signal_declaration_statement (identifier) (call_expression (identifier) @@ -589,7 +548,7 @@ template B(n){ (argument_list (array_access_expression (identifier) - (int)) + (int_literal)) (array_access_expression (identifier) - (int))))))))) \ No newline at end of file + (int_literal))))))))) \ No newline at end of file diff --git a/test/corpus/functions.txt b/test/corpus/functions.txt index 8f4b2fe..34ffab6 100644 --- a/test/corpus/functions.txt +++ b/test/corpus/functions.txt @@ -11,7 +11,7 @@ function simple () { (parameter_list) (function_body (return_statement - (int))))) + (int_literal))))) ===================================== Simple Function with Arguments ===================================== diff --git a/test/corpus/loops.txt b/test/corpus/loops.txt index f23dac6..17e07fd 100644 --- a/test/corpus/loops.txt +++ b/test/corpus/loops.txt @@ -17,13 +17,12 @@ function f1 (n) { (function_body (for_statement (variable_declaration_statement - (var) (identifier) - (int)) + (int_literal)) (expression_statement (binary_expression (identifier) - (int))) + (int_literal))) (increment_expression (identifier)) (block_statement @@ -52,7 +51,7 @@ function f2 (n) { (while_statement (binary_expression (identifier) - (int)) + (int_literal)) (block_statement (expression_statement (decrement_expression diff --git a/test/corpus/real_examles.txt b/test/corpus/real_examles.txt index efd2b00..7e21be2 100644 --- a/test/corpus/real_examles.txt +++ b/test/corpus/real_examles.txt @@ -36,45 +36,41 @@ template Fibonacci(n) { (argument_list (binary_expression (identifier) - (int))))) - (variable_declaration_statement - (signal - (signal_visability)) - (identifier) - (array_definition - (int))) - (variable_declaration_statement - (signal - (signal_visability)) + (int_literal))))) + (signal_declaration_statement + (signal_visibility) + (identifier) + (array_type + (int_literal))) + (signal_declaration_statement + (signal_visibility) (identifier)) - (variable_declaration_statement - (signal) + (signal_declaration_statement (identifier) - (array_definition + (array_type (binary_expression (identifier) - (int)))) + (int_literal)))) (expression_statement (array_access_expression (assignment_expression (array_access_expression (identifier) - (int)) + (int_literal)) (identifier)) - (int))) + (int_literal))) (expression_statement (array_access_expression (assignment_expression (array_access_expression (identifier) - (int)) + (int_literal)) (identifier)) - (int))) + (int_literal))) (for_statement (variable_declaration_statement - (var) (identifier) - (int)) + (int_literal)) (expression_statement (binary_expression (identifier) @@ -93,11 +89,11 @@ template Fibonacci(n) { (identifier)) (binary_expression (identifier) - (int))) + (int_literal))) (identifier)) (binary_expression (identifier) - (int)))))) + (int_literal)))))) (expression_statement (array_access_expression (assignment_expression @@ -257,11 +253,10 @@ template Sudoku(n_sqrt) { (identifier))) (function_body (variable_declaration_statement - (var) (identifier) - (int) + (int_literal) (identifier) - (int)) + (int_literal)) (while_statement (binary_expression (identifier) @@ -273,7 +268,7 @@ template Sudoku(n_sqrt) { (expression_statement (assignment_expression (identifier) - (int))))) + (int_literal))))) (return_statement (identifier)))) (comment) @@ -281,14 +276,12 @@ template Sudoku(n_sqrt) { (identifier) (parameter_list) (template_body - (variable_declaration_statement - (signal - (signal_visability)) + (signal_declaration_statement + (signal_visibility) (identifier) - (array_definition - (int))) - (variable_declaration_statement - (signal) + (array_type + (int_literal))) + (signal_declaration_statement (identifier)) (comment) (comment) @@ -296,15 +289,15 @@ template Sudoku(n_sqrt) { (assignment_expression (identifier) (binary_expression - (int) + (int_literal) (parenthesized_expression (array_access_expression (binary_expression (array_access_expression (identifier) - (int)) + (int_literal)) (identifier)) - (int)))))) + (int_literal)))))) (expression_statement (assignment_expression (binary_expression @@ -314,10 +307,10 @@ template Sudoku(n_sqrt) { (binary_expression (array_access_expression (identifier) - (int)) + (int_literal)) (identifier)) - (int)))) - (int))))) + (int_literal)))) + (int_literal))))) (comment) (template_definition (identifier) @@ -331,26 +324,22 @@ template Sudoku(n_sqrt) { (argument_list (binary_expression (identifier) - (int))))) - (variable_declaration_statement - (signal - (signal_visability)) + (int_literal))))) + (signal_declaration_statement + (signal_visibility) (identifier)) (comment) - (variable_declaration_statement - (signal) + (signal_declaration_statement (identifier) - (array_definition + (array_type (identifier))) (variable_declaration_statement - (var) (identifier) - (int)) + (int_literal)) (for_statement (variable_declaration_statement - (var) (identifier) - (int)) + (int_literal)) (expression_statement (binary_expression (identifier) @@ -368,7 +357,7 @@ template Sudoku(n_sqrt) { (binary_expression (identifier) (identifier))) - (int)))) + (int_literal)))) (expression_statement (assignment_expression (binary_expression @@ -378,10 +367,10 @@ template Sudoku(n_sqrt) { (parenthesized_expression (array_access_expression (binary_expression - (int) + (int_literal) (identifier)) (identifier)))) - (int))) + (int_literal))) (expression_statement (array_access_expression (assignment_expression @@ -389,7 +378,7 @@ template Sudoku(n_sqrt) { (binary_expression (parenthesized_expression (binary_expression - (int) + (int_literal) (identifier))) (identifier))) (identifier))))) @@ -414,29 +403,25 @@ template Sudoku(n_sqrt) { (binary_expression (identifier) (identifier))))) - (variable_declaration_statement - (signal - (signal_visability)) + (signal_declaration_statement + (signal_visibility) (identifier)) (comment) (variable_declaration_statement - (var) (identifier) (binary_expression (call_expression (identifier) (argument_list (identifier))) - (int))) - (variable_declaration_statement - (component) + (int_literal))) + (component_declaration_statement (identifier) (call_expression (identifier) (argument_list (identifier)))) - (variable_declaration_statement - (component) + (component_declaration_statement (identifier) (call_expression (identifier) @@ -462,10 +447,10 @@ template Sudoku(n_sqrt) { (identifier) (parenthesized_expression (binary_expression - (int) + (int_literal) (identifier)))) (identifier)) - (int)))) + (int_literal)))) (comment))) (comment) (template_definition @@ -474,24 +459,21 @@ template Sudoku(n_sqrt) { (parameter (identifier))) (template_body - (variable_declaration_statement - (signal - (signal_visability)) + (signal_declaration_statement + (signal_visibility) (identifier) - (array_definition + (array_type (identifier))) - (variable_declaration_statement - (component) + (component_declaration_statement (identifier) - (array_definition + (array_type (identifier) (identifier))) (comment) (for_statement (variable_declaration_statement - (var) (identifier) - (int)) + (int_literal)) (expression_statement (binary_expression (identifier) @@ -501,9 +483,8 @@ template Sudoku(n_sqrt) { (block_statement (for_statement (variable_declaration_statement - (var) (identifier) - (int)) + (int_literal)) (expression_statement (binary_expression (identifier) @@ -529,7 +510,7 @@ template Sudoku(n_sqrt) { (identifier)) (identifier)) (property_identifier)) - (array + (array_expression (array_access_expression (identifier) (identifier)) @@ -543,33 +524,29 @@ template Sudoku(n_sqrt) { (identifier))) (template_body (variable_declaration_statement - (var) (identifier) (binary_expression (identifier) (identifier))) - (variable_declaration_statement - (signal - (signal_visability)) + (signal_declaration_statement + (signal_visibility) (identifier) - (array_definition + (array_type (identifier) (identifier))) (comment) - (variable_declaration_statement - (signal - (signal_visability)) + (signal_declaration_statement + (signal_visibility) (identifier) - (array_definition + (array_type (identifier) (identifier))) (comment) (comment) (for_statement (variable_declaration_statement - (var) (identifier) - (int)) + (int_literal)) (expression_statement (binary_expression (identifier) @@ -579,9 +556,8 @@ template Sudoku(n_sqrt) { (block_statement (for_statement (variable_declaration_statement - (var) (identifier) - (int)) + (int_literal)) (expression_statement (binary_expression (identifier) @@ -610,19 +586,17 @@ template Sudoku(n_sqrt) { (identifier)) (identifier)) (identifier)))) - (int))))))) + (int_literal))))))) (comment) - (variable_declaration_statement - (component) + (component_declaration_statement (identifier) - (array_definition + (array_type (identifier) (identifier))) (for_statement (variable_declaration_statement - (var) (identifier) - (int)) + (int_literal)) (expression_statement (binary_expression (identifier) @@ -632,9 +606,8 @@ template Sudoku(n_sqrt) { (block_statement (for_statement (variable_declaration_statement - (var) (identifier) - (int)) + (int_literal)) (expression_statement (binary_expression (identifier) @@ -652,7 +625,7 @@ template Sudoku(n_sqrt) { (call_expression (identifier) (argument_list - (int) + (int_literal) (identifier))))) (expression_statement (array_access_expression @@ -669,16 +642,14 @@ template Sudoku(n_sqrt) { (identifier)) (identifier))))))) (comment) - (variable_declaration_statement - (component) + (component_declaration_statement (identifier) - (array_definition + (array_type (identifier))) (for_statement (variable_declaration_statement - (var) (identifier) - (int)) + (int_literal)) (expression_statement (binary_expression (identifier) @@ -688,9 +659,8 @@ template Sudoku(n_sqrt) { (block_statement (for_statement (variable_declaration_statement - (var) (identifier) - (int)) + (int_literal)) (expression_statement (binary_expression (identifier) @@ -701,7 +671,7 @@ template Sudoku(n_sqrt) { (if_statement (binary_expression (identifier) - (int)) + (int_literal)) (block_statement (expression_statement (assignment_expression @@ -726,16 +696,14 @@ template Sudoku(n_sqrt) { (identifier)) (identifier)) (identifier))))))) - (variable_declaration_statement - (component) + (component_declaration_statement (identifier) - (array_definition + (array_type (identifier))) (for_statement (variable_declaration_statement - (var) (identifier) - (int)) + (int_literal)) (expression_statement (binary_expression (identifier) @@ -745,9 +713,8 @@ template Sudoku(n_sqrt) { (block_statement (for_statement (variable_declaration_statement - (var) (identifier) - (int)) + (int_literal)) (expression_statement (binary_expression (identifier) @@ -758,7 +725,7 @@ template Sudoku(n_sqrt) { (if_statement (binary_expression (identifier) - (int)) + (int_literal)) (block_statement (expression_statement (assignment_expression @@ -784,20 +751,17 @@ template Sudoku(n_sqrt) { (identifier)) (identifier))))))) (comment) - (variable_declaration_statement - (component) + (component_declaration_statement (identifier) - (array_definition + (array_type (identifier))) (variable_declaration_statement - (var) (identifier) - (int)) + (int_literal)) (for_statement (variable_declaration_statement - (var) (identifier) - (int)) + (int_literal)) (expression_statement (binary_expression (identifier) @@ -807,9 +771,8 @@ template Sudoku(n_sqrt) { (block_statement (for_statement (variable_declaration_statement - (var) (identifier) - (int)) + (int_literal)) (expression_statement (binary_expression (identifier) @@ -829,24 +792,20 @@ template Sudoku(n_sqrt) { (identifier))))) (comment) (variable_declaration_statement - (var) (identifier) (binary_expression (identifier) (identifier))) (variable_declaration_statement - (var) (identifier) (binary_expression (identifier) (identifier))) (variable_declaration_statement - (var) (identifier) - (int)) + (int_literal)) (for_statement (variable_declaration_statement - (var) (identifier) (identifier)) (expression_statement @@ -860,7 +819,6 @@ template Sudoku(n_sqrt) { (block_statement (for_statement (variable_declaration_statement - (var) (identifier) (identifier)) (expression_statement @@ -1334,11 +1292,10 @@ template FloatAdd(k, p) { (identifier))) (function_body (variable_declaration_statement - (var) (identifier) - (int) + (int_literal) (identifier) - (int)) + (int_literal)) (while_statement (binary_expression (identifier) @@ -1350,7 +1307,7 @@ template FloatAdd(k, p) { (expression_statement (assignment_expression (identifier) - (int))))) + (int_literal))))) (return_statement (identifier)))) (comment) @@ -1358,21 +1315,17 @@ template FloatAdd(k, p) { (identifier) (parameter_list) (template_body - (variable_declaration_statement - (signal - (signal_visability)) + (signal_declaration_statement + (signal_visibility) (identifier)) - (variable_declaration_statement - (signal - (signal_visability)) + (signal_declaration_statement + (signal_visibility) (identifier)) - (variable_declaration_statement - (signal - (signal_visability)) + (signal_declaration_statement + (signal_visibility) (identifier)) - (variable_declaration_statement - (signal - (signal_visability)) + (signal_declaration_statement + (signal_visibility) (identifier)) (comment) (comment) @@ -1401,30 +1354,25 @@ template FloatAdd(k, p) { (argument_list (binary_expression (identifier) - (int))))) - (variable_declaration_statement - (signal - (signal_visability)) + (int_literal))))) + (signal_declaration_statement + (signal_visibility) (identifier)) - (variable_declaration_statement - (signal - (signal_visability)) + (signal_declaration_statement + (signal_visibility) (identifier)) (comment) - (variable_declaration_statement - (signal) + (signal_declaration_statement (identifier) - (array_definition + (array_type (identifier))) (variable_declaration_statement - (var) (identifier) - (int)) + (int_literal)) (for_statement (variable_declaration_statement - (var) (identifier) - (int)) + (int_literal)) (expression_statement (binary_expression (identifier) @@ -1442,7 +1390,7 @@ template FloatAdd(k, p) { (binary_expression (identifier) (identifier))) - (int)))) + (int_literal)))) (expression_statement (assignment_expression (binary_expression @@ -1452,10 +1400,10 @@ template FloatAdd(k, p) { (parenthesized_expression (array_access_expression (binary_expression - (int) + (int_literal) (identifier)) (identifier)))) - (int))) + (int_literal))) (expression_statement (array_access_expression (assignment_expression @@ -1463,13 +1411,12 @@ template FloatAdd(k, p) { (binary_expression (parenthesized_expression (binary_expression - (int) + (int_literal) (identifier))) (identifier))) (identifier))))) (comment) - (variable_declaration_statement - (component) + (component_declaration_statement (identifier) (call_expression (identifier))) @@ -1479,7 +1426,7 @@ template FloatAdd(k, p) { (member_expression (identifier) (property_identifier)) - (int)) + (int_literal)) (identifier))) (expression_statement (assignment_expression @@ -1487,7 +1434,7 @@ template FloatAdd(k, p) { (member_expression (identifier) (property_identifier)) - (int)) + (int_literal)) (identifier))) (expression_statement (member_expression @@ -1504,17 +1451,14 @@ template FloatAdd(k, p) { (parameter (identifier))) (template_body - (variable_declaration_statement - (signal - (signal_visability)) + (signal_declaration_statement + (signal_visibility) (identifier)) - (variable_declaration_statement - (signal - (signal_visability)) + (signal_declaration_statement + (signal_visibility) (identifier)) (comment) - (variable_declaration_statement - (component) + (component_declaration_statement (identifier) (call_expression (identifier))) @@ -1526,8 +1470,7 @@ template FloatAdd(k, p) { (identifier))) (comment) (comment) - (variable_declaration_statement - (component) + (component_declaration_statement (identifier) (call_expression (identifier))) @@ -1539,8 +1482,7 @@ template FloatAdd(k, p) { (identifier))) (comment) (comment) - (variable_declaration_statement - (component) + (component_declaration_statement (identifier) (call_expression (identifier) @@ -1554,8 +1496,7 @@ template FloatAdd(k, p) { (identifier))) (comment) (comment) - (variable_declaration_statement - (component) + (component_declaration_statement (identifier) (call_expression (identifier) @@ -1570,11 +1511,10 @@ template FloatAdd(k, p) { (identifier) (parenthesized_expression (binary_expression - (int) + (int_literal) (identifier)))))) (comment) - (variable_declaration_statement - (component) + (component_declaration_statement (identifier) (call_expression (identifier))) @@ -1613,7 +1553,7 @@ template FloatAdd(k, p) { (member_expression (identifier) (property_identifier)) - (int))))) + (int_literal))))) (comment) (template_definition (identifier) @@ -1630,17 +1570,14 @@ template FloatAdd(k, p) { (binary_expression (identifier) (identifier))))) - (variable_declaration_statement - (signal - (signal_visability)) + (signal_declaration_statement + (signal_visibility) (identifier)) - (variable_declaration_statement - (signal - (signal_visability)) + (signal_declaration_statement + (signal_visibility) (identifier)) (comment) - (variable_declaration_statement - (component) + (component_declaration_statement (identifier) (call_expression (identifier) @@ -1653,18 +1590,16 @@ template FloatAdd(k, p) { (property_identifier)) (identifier))) (comment) - (variable_declaration_statement - (signal) + (signal_declaration_statement (identifier) - (array_definition + (array_type (binary_expression (identifier) (identifier)))) (for_statement (variable_declaration_statement - (var) (identifier) - (int)) + (int_literal)) (expression_statement (binary_expression (identifier) @@ -1687,8 +1622,7 @@ template FloatAdd(k, p) { (identifier) (identifier)))))) (comment) - (variable_declaration_statement - (component) + (component_declaration_statement (identifier) (call_expression (identifier) @@ -1719,21 +1653,17 @@ template FloatAdd(k, p) { (parameter (identifier))) (template_body - (variable_declaration_statement - (signal - (signal_visability)) + (signal_declaration_statement + (signal_visibility) (identifier)) - (variable_declaration_statement - (signal - (signal_visability)) + (signal_declaration_statement + (signal_visibility) (identifier)) - (variable_declaration_statement - (signal - (signal_visability)) + (signal_declaration_statement + (signal_visibility) (identifier)) - (variable_declaration_statement - (signal - (signal_visability)) + (signal_declaration_statement + (signal_visibility) (identifier)) (expression_statement (call_expression @@ -1743,22 +1673,21 @@ template FloatAdd(k, p) { (identifier) (identifier))))) (comment) - (variable_declaration_statement - (component) + (component_declaration_statement (identifier) (call_expression (identifier) (argument_list (binary_expression (identifier) - (int))))) + (int_literal))))) (expression_statement (assignment_expression (array_access_expression (member_expression (identifier) (property_identifier)) - (int)) + (int_literal)) (identifier))) (expression_statement (assignment_expression @@ -1766,32 +1695,30 @@ template FloatAdd(k, p) { (member_expression (identifier) (property_identifier)) - (int)) + (int_literal)) (binary_expression (parenthesized_expression (binary_expression - (int) + (int_literal) (parenthesized_expression (binary_expression (identifier) - (int))))) + (int_literal))))) (parenthesized_expression (binary_expression - (int) + (int_literal) (parenthesized_expression (binary_expression (binary_expression (identifier) (identifier)) - (int)))))))) - (variable_declaration_statement - (signal) + (int_literal)))))))) + (signal_declaration_statement (identifier) (member_expression (identifier) (property_identifier))) (variable_declaration_statement - (var) (identifier) (binary_expression (identifier) @@ -1799,26 +1726,24 @@ template FloatAdd(k, p) { (comment) (comment) (variable_declaration_statement - (var) (identifier) (binary_expression (identifier) (parenthesized_expression (binary_expression - (int) + (int_literal) (parenthesized_expression (binary_expression (identifier) - (int))))))) - (variable_declaration_statement - (component) + (int_literal))))))) + (component_declaration_statement (identifier) (call_expression (identifier) (argument_list (binary_expression (identifier) - (int)) + (int_literal)) (identifier)))) (expression_statement (assignment_expression @@ -1827,44 +1752,38 @@ template FloatAdd(k, p) { (property_identifier)) (identifier))) (variable_declaration_statement - (var) (identifier) (member_expression (identifier) (property_identifier))) (variable_declaration_statement - (var) (identifier) (identifier)) (comment) (variable_declaration_statement - (var) (identifier) (binary_expression (identifier) - (int))) + (int_literal))) (variable_declaration_statement - (var) (identifier) (parenthesized_expression (binary_expression - (int) + (int_literal) (identifier)))) (comment) - (variable_declaration_statement - (component) + (component_declaration_statement (identifier) - (array_definition - (int))) + (array_type + (int_literal))) (for_statement (variable_declaration_statement - (var) (identifier) - (int)) + (int_literal)) (expression_statement (binary_expression (identifier) - (int))) + (int_literal))) (increment_expression (identifier)) (block_statement @@ -1888,7 +1807,7 @@ template FloatAdd(k, p) { (member_expression (array_access_expression (identifier) - (int)) + (int_literal)) (property_identifier)) (identifier))) (expression_statement @@ -1896,7 +1815,7 @@ template FloatAdd(k, p) { (member_expression (array_access_expression (identifier) - (int)) + (int_literal)) (property_identifier)) (identifier))) (expression_statement @@ -1904,7 +1823,7 @@ template FloatAdd(k, p) { (member_expression (array_access_expression (identifier) - (int)) + (int_literal)) (property_identifier)) (identifier))) (expression_statement @@ -1912,7 +1831,7 @@ template FloatAdd(k, p) { (member_expression (array_access_expression (identifier) - (int)) + (int_literal)) (property_identifier)) (identifier))) (expression_statement @@ -1921,7 +1840,7 @@ template FloatAdd(k, p) { (assignment_expression (identifier) (identifier)) - (int)) + (int_literal)) (property_identifier))) (expression_statement (member_expression @@ -1929,7 +1848,7 @@ template FloatAdd(k, p) { (assignment_expression (identifier) (identifier)) - (int)) + (int_literal)) (property_identifier))))) (template_definition (identifier) @@ -1937,25 +1856,21 @@ template FloatAdd(k, p) { (parameter (identifier))) (template_body - (variable_declaration_statement - (signal - (signal_visability)) + (signal_declaration_statement + (signal_visibility) (identifier)) - (variable_declaration_statement - (signal - (signal_visability)) + (signal_declaration_statement + (signal_visibility) (identifier)) - (variable_declaration_statement - (signal - (signal_visability)) + (signal_declaration_statement + (signal_visibility) (identifier) - (array_definition + (array_type (identifier))) (for_statement (variable_declaration_statement - (var) (identifier) - (int)) + (int_literal)) (expression_statement (binary_expression (identifier) @@ -1973,7 +1888,7 @@ template FloatAdd(k, p) { (binary_expression (identifier) (identifier))) - (int)))) + (int_literal)))) (expression_statement (assignment_expression (binary_expression @@ -1983,19 +1898,17 @@ template FloatAdd(k, p) { (parenthesized_expression (array_access_expression (binary_expression - (int) + (int_literal) (identifier)) (identifier)))) - (int))))) + (int_literal))))) (variable_declaration_statement - (var) (identifier) - (int)) + (int_literal)) (for_statement (variable_declaration_statement - (var) (identifier) - (int)) + (int_literal)) (expression_statement (binary_expression (identifier) @@ -2010,7 +1923,7 @@ template FloatAdd(k, p) { (binary_expression (parenthesized_expression (binary_expression - (int) + (int_literal) (identifier))) (identifier))) (identifier))))) @@ -2024,9 +1937,9 @@ template FloatAdd(k, p) { (identifier))) (parenthesized_expression (binary_expression - (int) + (int_literal) (identifier)))) - (int))))) + (int_literal))))) (template_definition (identifier) (parameter_list @@ -2039,30 +1952,26 @@ template FloatAdd(k, p) { (argument_list (binary_expression (identifier) - (int))))) - (variable_declaration_statement - (signal - (signal_visability)) - (identifier) - (array_definition - (int))) - (variable_declaration_statement - (signal - (signal_visability)) + (int_literal))))) + (signal_declaration_statement + (signal_visibility) + (identifier) + (array_type + (int_literal))) + (signal_declaration_statement + (signal_visibility) (identifier)) - (variable_declaration_statement - (signal - (signal_visability)) + (signal_declaration_statement + (signal_visibility) (identifier)) - (variable_declaration_statement - (component) + (component_declaration_statement (identifier) (call_expression (identifier) (argument_list (binary_expression (identifier) - (int))))) + (int_literal))))) (expression_statement (array_access_expression (binary_expression @@ -2073,13 +1982,13 @@ template FloatAdd(k, p) { (identifier) (property_identifier)) (identifier)) - (int)) + (int_literal)) (parenthesized_expression (binary_expression - (int) + (int_literal) (identifier)))) (identifier)) - (int))) + (int_literal))) (expression_statement (assignment_expression (member_expression @@ -2092,7 +2001,7 @@ template FloatAdd(k, p) { (assignment_expression (identifier) (binary_expression - (int) + (int_literal) (identifier))) (property_identifier)) (identifier))))) @@ -2103,35 +2012,29 @@ template FloatAdd(k, p) { (parameter (identifier))) (template_body - (variable_declaration_statement - (signal - (signal_visability)) + (signal_declaration_statement + (signal_visibility) (identifier)) - (variable_declaration_statement - (signal - (signal_visability)) + (signal_declaration_statement + (signal_visibility) (identifier)) - (variable_declaration_statement - (signal - (signal_visability)) + (signal_declaration_statement + (signal_visibility) (identifier)) - (variable_declaration_statement - (signal - (signal_visability)) + (signal_declaration_statement + (signal_visibility) (identifier)) (comment) (variable_declaration_statement - (var) (identifier) (binary_expression (call_expression (identifier) (argument_list (identifier))) - (int))) + (int_literal))) (comment) - (variable_declaration_statement - (component) + (component_declaration_statement (identifier) (call_expression (identifier) @@ -2150,8 +2053,7 @@ template FloatAdd(k, p) { (property_identifier)) (identifier))) (comment) - (variable_declaration_statement - (component) + (component_declaration_statement (identifier) (call_expression (identifier) @@ -2163,7 +2065,7 @@ template FloatAdd(k, p) { (member_expression (identifier) (property_identifier)) - (int)) + (int_literal)) (identifier))) (expression_statement (assignment_expression @@ -2171,7 +2073,7 @@ template FloatAdd(k, p) { (member_expression (identifier) (property_identifier)) - (int)) + (int_literal)) (identifier))) (expression_statement (assignment_expression @@ -2187,28 +2089,25 @@ template FloatAdd(k, p) { (member_expression (identifier) (property_identifier)) - (int))) + (int_literal))) (parenthesized_expression (binary_expression - (int) + (int_literal) (identifier)))) - (int))) + (int_literal))) (comment) (comment) (variable_declaration_statement - (var) (identifier) - (int)) - (variable_declaration_statement - (component) + (int_literal)) + (component_declaration_statement (identifier) - (array_definition + (array_type (identifier))) (for_statement (variable_declaration_statement - (var) (identifier) - (int)) + (int_literal)) (expression_statement (binary_expression (identifier) @@ -2246,10 +2145,10 @@ template FloatAdd(k, p) { (identifier) (parenthesized_expression (binary_expression - (int) + (int_literal) (parenthesized_expression (binary_expression - (int) + (int_literal) (identifier)))))))) (expression_statement (assignment_expression @@ -2268,8 +2167,7 @@ template FloatAdd(k, p) { (identifier)) (property_identifier))))) (comment) - (variable_declaration_statement - (component) + (component_declaration_statement (identifier) (call_expression (identifier))) @@ -2284,7 +2182,7 @@ template FloatAdd(k, p) { (member_expression (identifier) (property_identifier)) - (int))) + (int_literal))) (expression_statement (assignment_expression (member_expression @@ -2312,26 +2210,22 @@ template FloatAdd(k, p) { (parameter (identifier))) (template_body - (variable_declaration_statement - (signal - (signal_visability)) + (signal_declaration_statement + (signal_visibility) (identifier)) - (variable_declaration_statement - (signal - (signal_visability)) + (signal_declaration_statement + (signal_visibility) (identifier)) - (variable_declaration_statement - (signal - (signal_visability)) + (signal_declaration_statement + (signal_visibility) (identifier) - (array_definition + (array_type (identifier))) (comment) (for_statement (variable_declaration_statement - (var) (identifier) - (int)) + (int_literal)) (expression_statement (binary_expression (identifier) @@ -2340,7 +2234,6 @@ template FloatAdd(k, p) { (identifier)) (block_statement (variable_declaration_statement - (var) (identifier)) (if_statement (binary_expression @@ -2348,7 +2241,7 @@ template FloatAdd(k, p) { (binary_expression (parenthesized_expression (binary_expression - (int) + (int_literal) (identifier))) (identifier))) (parenthesized_expression @@ -2356,21 +2249,21 @@ template FloatAdd(k, p) { (identifier) (parenthesized_expression (binary_expression - (int) + (int_literal) (parenthesized_expression (binary_expression (identifier) - (int)))))))) + (int_literal)))))))) (block_statement (expression_statement (assignment_expression (identifier) - (int)))) + (int_literal)))) (block_statement (expression_statement (assignment_expression (identifier) - (int))))) + (int_literal))))) (expression_statement (assignment_expression (array_access_expression @@ -2379,14 +2272,12 @@ template FloatAdd(k, p) { (identifier))))) (comment) (variable_declaration_statement - (var) (identifier) - (int)) + (int_literal)) (for_statement (variable_declaration_statement - (var) (identifier) - (int)) + (int_literal)) (expression_statement (binary_expression (identifier) @@ -2409,37 +2300,34 @@ template FloatAdd(k, p) { (parenthesized_expression (array_access_expression (binary_expression - (int) + (int_literal) (identifier)) (identifier)))) - (int))) + (int_literal))) (comment))) (expression_statement (assignment_expression (binary_expression (parenthesized_expression (binary_expression - (int) + (int_literal) (identifier))) (parenthesized_expression (binary_expression - (int) + (int_literal) (identifier)))) - (int))) + (int_literal))) (comment) (variable_declaration_statement - (var) (identifier) - (int)) + (int_literal)) (variable_declaration_statement - (var) (identifier) - (int)) + (int_literal)) (for_statement (variable_declaration_statement - (var) (identifier) - (int)) + (int_literal)) (expression_statement (binary_expression (identifier) @@ -2456,7 +2344,7 @@ template FloatAdd(k, p) { (identifier)) (parenthesized_expression (binary_expression - (int) + (int_literal) (identifier))))) (expression_statement (binary_expression @@ -2467,27 +2355,26 @@ template FloatAdd(k, p) { (identifier)) (parenthesized_expression (binary_expression - (int) + (int_literal) (parenthesized_expression (binary_expression (identifier) - (int))))))))) - (variable_declaration_statement - (component) + (int_literal))))))))) + (component_declaration_statement (identifier) (call_expression (identifier) (argument_list (binary_expression (identifier) - (int))))) + (int_literal))))) (expression_statement (assignment_expression (array_access_expression (member_expression (identifier) (property_identifier)) - (int)) + (int_literal)) (identifier))) (expression_statement (assignment_expression @@ -2495,7 +2382,7 @@ template FloatAdd(k, p) { (member_expression (identifier) (property_identifier)) - (int)) + (int_literal)) (identifier))) (expression_statement (assignment_expression @@ -2505,14 +2392,13 @@ template FloatAdd(k, p) { (member_expression (identifier) (property_identifier)) - (int))) + (int_literal))) (parenthesized_expression (binary_expression - (int) + (int_literal) (identifier)))) - (int))) - (variable_declaration_statement - (component) + (int_literal))) + (component_declaration_statement (identifier) (call_expression (identifier) @@ -2524,17 +2410,17 @@ template FloatAdd(k, p) { (member_expression (identifier) (property_identifier)) - (int)) + (int_literal)) (binary_expression (identifier) - (int)))) + (int_literal)))) (expression_statement (assignment_expression (array_access_expression (member_expression (identifier) (property_identifier)) - (int)) + (int_literal)) (identifier))) (expression_statement (assignment_expression @@ -2544,12 +2430,12 @@ template FloatAdd(k, p) { (member_expression (identifier) (property_identifier)) - (int))) + (int_literal))) (parenthesized_expression (binary_expression - (int) + (int_literal) (identifier)))) - (int))))) + (int_literal))))) (comment) (template_definition (identifier) @@ -2561,25 +2447,20 @@ template FloatAdd(k, p) { (parameter (identifier))) (template_body - (variable_declaration_statement - (signal - (signal_visability)) + (signal_declaration_statement + (signal_visibility) (identifier)) - (variable_declaration_statement - (signal - (signal_visability)) + (signal_declaration_statement + (signal_visibility) (identifier)) - (variable_declaration_statement - (signal - (signal_visability)) + (signal_declaration_statement + (signal_visibility) (identifier)) - (variable_declaration_statement - (signal - (signal_visability)) + (signal_declaration_statement + (signal_visibility) (identifier)) - (variable_declaration_statement - (signal - (signal_visability)) + (signal_declaration_statement + (signal_visibility) (identifier)) (expression_statement (call_expression @@ -2589,15 +2470,14 @@ template FloatAdd(k, p) { (identifier) (identifier))))) (comment) - (variable_declaration_statement - (component) + (component_declaration_statement (identifier) (call_expression (identifier) (argument_list (binary_expression (identifier) - (int))))) + (int_literal))))) (expression_statement (assignment_expression (member_expression @@ -2612,20 +2492,18 @@ template FloatAdd(k, p) { (identifier))) (comment) (variable_declaration_statement - (var) (identifier) (identifier)) (for_statement (variable_declaration_statement - (var) (identifier) - (int)) + (int_literal)) (expression_statement (binary_expression (identifier) (binary_expression (identifier) - (int)))) + (int_literal)))) (increment_expression (identifier)) (block_statement @@ -2650,7 +2528,7 @@ template FloatAdd(k, p) { (identifier)) (parenthesized_expression (binary_expression - (int) + (int_literal) (parenthesized_expression (binary_expression (identifier) @@ -2679,41 +2557,35 @@ template FloatAdd(k, p) { (parameter (identifier))) (template_body - (variable_declaration_statement - (signal - (signal_visability)) - (identifier) - (array_definition - (int))) - (variable_declaration_statement - (signal - (signal_visability)) - (identifier) - (array_definition - (int))) - (variable_declaration_statement - (signal - (signal_visability)) + (signal_declaration_statement + (signal_visibility) + (identifier) + (array_type + (int_literal))) + (signal_declaration_statement + (signal_visibility) + (identifier) + (array_type + (int_literal))) + (signal_declaration_statement + (signal_visibility) (identifier)) - (variable_declaration_statement - (signal - (signal_visability)) + (signal_declaration_statement + (signal_visibility) (identifier)) (comment) - (variable_declaration_statement - (component) + (component_declaration_statement (identifier) - (array_definition - (int))) + (array_type + (int_literal))) (for_statement (variable_declaration_statement - (var) (identifier) - (int)) + (int_literal)) (expression_statement (binary_expression (identifier) - (int))) + (int_literal))) (increment_expression (identifier)) (block_statement @@ -2749,12 +2621,10 @@ template FloatAdd(k, p) { (identifier))))) (comment) (variable_declaration_statement - (var) (identifier) - (array_definition - (int))) - (variable_declaration_statement - (component) + (array_type + (int_literal))) + (component_declaration_statement (identifier) (call_expression (identifier) @@ -2763,16 +2633,15 @@ template FloatAdd(k, p) { (binary_expression (identifier) (identifier)) - (int))))) + (int_literal))))) (for_statement (variable_declaration_statement - (var) (identifier) - (int)) + (int_literal)) (expression_statement (binary_expression (identifier) - (int))) + (int_literal))) (increment_expression (identifier)) (block_statement @@ -2790,11 +2659,11 @@ template FloatAdd(k, p) { (identifier)) (parenthesized_expression (binary_expression - (int) + (int_literal) (parenthesized_expression (binary_expression (identifier) - (int))))))) + (int_literal))))))) (identifier))) (identifier))) (expression_statement @@ -2807,51 +2676,46 @@ template FloatAdd(k, p) { (identifier)) (identifier)) (identifier))))) - (variable_declaration_statement - (signal) + (signal_declaration_statement (identifier) (member_expression (identifier) (property_identifier))) (comment) (variable_declaration_statement - (var) (identifier) - (array_definition - (int)) - (array + (array_type + (int_literal)) + (array_expression (array_access_expression (identifier) - (int)) + (int_literal)) (array_access_expression (identifier) - (int)))) + (int_literal)))) (variable_declaration_statement - (var) (identifier) - (array_definition - (int)) - (array + (array_type + (int_literal)) + (array_expression (array_access_expression (identifier) - (int)) + (int_literal)) (array_access_expression (identifier) - (int)))) - (variable_declaration_statement - (component) + (int_literal)))) + (component_declaration_statement (identifier) - (array_definition - (int))) + (array_type + (int_literal))) (for_statement (variable_declaration_statement - (var) (identifier) - (int)) + (int_literal)) (expression_statement (binary_expression (identifier) - (int))) + (int_literal))) (increment_expression (identifier)) (block_statement @@ -2891,46 +2755,40 @@ template FloatAdd(k, p) { (identifier)) (identifier))))) (variable_declaration_statement - (var) (identifier) (member_expression (array_access_expression (identifier) - (int)) + (int_literal)) (property_identifier))) (variable_declaration_statement - (var) (identifier) (member_expression (array_access_expression (identifier) - (int)) + (int_literal)) (property_identifier))) (variable_declaration_statement - (var) (identifier) (member_expression (array_access_expression (identifier) - (int)) + (int_literal)) (property_identifier))) (variable_declaration_statement - (var) (identifier) (member_expression (array_access_expression (identifier) - (int)) + (int_literal)) (property_identifier))) (comment) (variable_declaration_statement - (var) (identifier) (binary_expression (identifier) (identifier))) - (variable_declaration_statement - (component) + (component_declaration_statement (identifier) (call_expression (identifier) @@ -2942,20 +2800,19 @@ template FloatAdd(k, p) { (member_expression (identifier) (property_identifier)) - (int)) + (int_literal)) (binary_expression (identifier) - (int)))) + (int_literal)))) (expression_statement (assignment_expression (array_access_expression (member_expression (identifier) (property_identifier)) - (int)) + (int_literal)) (identifier))) - (variable_declaration_statement - (component) + (component_declaration_statement (identifier) (call_expression (identifier))) @@ -2966,8 +2823,7 @@ template FloatAdd(k, p) { (property_identifier)) (identifier))) (comment) - (variable_declaration_statement - (component) + (component_declaration_statement (identifier) (call_expression (identifier))) @@ -2987,31 +2843,28 @@ template FloatAdd(k, p) { (property_identifier)) (identifier)) (property_identifier))) - (variable_declaration_statement - (signal) + (signal_declaration_statement (identifier) (member_expression (identifier) (property_identifier))) (comment) (variable_declaration_statement - (var) (identifier) - (array_definition - (int)) - (array + (array_type + (int_literal)) + (array_expression (identifier) (identifier))) (comment) - (variable_declaration_statement - (component) + (component_declaration_statement (identifier) (call_expression (identifier) (argument_list (binary_expression (identifier) - (int))))) + (int_literal))))) (expression_statement (assignment_expression (member_expression @@ -3038,17 +2891,14 @@ template FloatAdd(k, p) { (identifier)) (property_identifier))) (variable_declaration_statement - (var) (identifier) (binary_expression (identifier) (identifier))) (variable_declaration_statement - (var) (identifier) (identifier)) - (variable_declaration_statement - (component) + (component_declaration_statement (identifier) (call_expression (identifier) @@ -3057,9 +2907,9 @@ template FloatAdd(k, p) { (identifier) (binary_expression (binary_expression - (int) + (int_literal) (identifier)) - (int))))) + (int_literal))))) (expression_statement (assignment_expression (member_expression @@ -3078,8 +2928,7 @@ template FloatAdd(k, p) { (identifier) (property_identifier)) (identifier))) - (variable_declaration_statement - (component) + (component_declaration_statement (identifier) (call_expression (identifier) @@ -3088,9 +2937,9 @@ template FloatAdd(k, p) { (identifier) (binary_expression (binary_expression - (int) + (int_literal) (identifier)) - (int))))) + (int_literal))))) (expression_statement (member_expression (assignment_expression @@ -3108,11 +2957,10 @@ template FloatAdd(k, p) { (identifier)) (property_identifier))) (variable_declaration_statement - (var) (identifier) - (array_definition - (int)) - (array + (array_type + (int_literal)) + (array_expression (member_expression (identifier) (property_identifier)) @@ -3120,20 +2968,18 @@ template FloatAdd(k, p) { (identifier) (property_identifier)))) (comment) - (variable_declaration_statement - (component) + (component_declaration_statement (identifier) - (array_definition - (int))) + (array_type + (int_literal))) (for_statement (variable_declaration_statement - (var) (identifier) - (int)) + (int_literal)) (expression_statement (binary_expression (identifier) - (int))) + (int_literal))) (increment_expression (identifier)) (block_statement @@ -3178,7 +3024,7 @@ template FloatAdd(k, p) { (assignment_expression (identifier) (identifier)) - (int)) + (int_literal)) (property_identifier))) (expression_statement (member_expression @@ -3186,7 +3032,7 @@ template FloatAdd(k, p) { (assignment_expression (identifier) (identifier)) - (int)) + (int_literal)) (property_identifier)))))) ===================================== Example 4, sha256 @@ -3249,29 +3095,25 @@ template Sha256Bytes(N) { (parameter (identifier))) (template_body - (variable_declaration_statement - (signal - (signal_visability)) + (signal_declaration_statement + (signal_visibility) (identifier) - (array_definition + (array_type (identifier))) - (variable_declaration_statement - (signal - (signal_visability)) + (signal_declaration_statement + (signal_visibility) (identifier) - (array_definition - (int))) + (array_type + (int_literal))) (comment) - (variable_declaration_statement - (component) + (component_declaration_statement (identifier) - (array_definition + (array_type (identifier))) (for_statement (variable_declaration_statement - (var) (identifier) - (int)) + (int_literal)) (expression_statement (binary_expression (identifier) @@ -3287,7 +3129,7 @@ template Sha256Bytes(N) { (call_expression (identifier) (argument_list - (int))))) + (int_literal))))) (expression_statement (array_access_expression (assignment_expression @@ -3299,20 +3141,18 @@ template Sha256Bytes(N) { (identifier)) (identifier))))) (comment) - (variable_declaration_statement - (component) + (component_declaration_statement (identifier) (call_expression (identifier) (argument_list (binary_expression (identifier) - (int))))) + (int_literal))))) (for_statement (variable_declaration_statement - (var) (identifier) - (int)) + (int_literal)) (expression_statement (binary_expression (identifier) @@ -3322,13 +3162,12 @@ template Sha256Bytes(N) { (block_statement (for_statement (variable_declaration_statement - (var) (identifier) - (int)) + (int_literal)) (expression_statement (binary_expression (identifier) - (int))) + (int_literal))) (increment_expression (identifier)) (block_statement @@ -3344,29 +3183,27 @@ template Sha256Bytes(N) { (binary_expression (binary_expression (identifier) - (int)) + (int_literal)) (identifier))) (identifier)) (identifier)) (property_identifier)) (binary_expression - (int) + (int_literal) (identifier)))))))) (comment) - (variable_declaration_statement - (component) + (component_declaration_statement (identifier) - (array_definition - (int))) + (array_type + (int_literal))) (for_statement (variable_declaration_statement - (var) (identifier) - (int)) + (int_literal)) (expression_statement (binary_expression (identifier) - (int))) + (int_literal))) (increment_expression (identifier)) (block_statement @@ -3378,16 +3215,15 @@ template Sha256Bytes(N) { (call_expression (identifier) (argument_list - (int))))) + (int_literal))))) (for_statement (variable_declaration_statement - (var) (identifier) - (int)) + (int_literal)) (expression_statement (binary_expression (identifier) - (int))) + (int_literal))) (increment_expression (identifier)) (block_statement @@ -3402,14 +3238,14 @@ template Sha256Bytes(N) { (identifier)) (property_identifier)) (binary_expression - (int) + (int_literal) (identifier))) (identifier)) (property_identifier)) (binary_expression (binary_expression (identifier) - (int)) + (int_literal)) (identifier)))))) (expression_statement (member_expression diff --git a/test/corpus/template.txt b/test/corpus/template.txt index b662219..eb4b59c 100644 --- a/test/corpus/template.txt +++ b/test/corpus/template.txt @@ -41,13 +41,11 @@ template wrong (N, M) { (parameter (identifier))) (template_body - (variable_declaration_statement - (signal - (signal_visability)) + (signal_declaration_statement + (signal_visibility) (identifier)) - (variable_declaration_statement - (signal - (signal_visability)) + (signal_declaration_statement + (signal_visibility) (identifier))))) ===================================== Parallel Template @@ -70,16 +68,15 @@ template parallel name(N, M) { (parameter (identifier))) (template_body - (variable_declaration_statement - (component) + (component_declaration_statement (identifier) - (array_definition + (array_type (identifier))) (for_statement (expression_statement (assignment_expression (identifier) - (int))) + (int_literal))) (expression_statement (binary_expression (identifier)