From 42339e1171fc8adda6326efcbc5a55666e03e0e1 Mon Sep 17 00:00:00 2001 From: Jeff Date: Tue, 31 Oct 2023 01:09:29 -0400 Subject: [PATCH] Begin syntax revision --- Cargo.lock | 2 +- examples/clue_solver.ds | 16 +- examples/for_loop.ds | 2 +- examples/scope.ds | 60 - examples/transform_loop.ds | 2 +- src/abstract_tree/filter.rs | 47 +- src/abstract_tree/for.rs | 3 +- tests/dust_examples.rs | 6 - tree-sitter-dust/corpus/async.txt | 155 +- tree-sitter-dust/corpus/control_flow.txt | 93 +- tree-sitter-dust/corpus/for.txt | 27 +- tree-sitter-dust/corpus/reduce.txt | 77 + tree-sitter-dust/corpus/remove.txt | 4 +- tree-sitter-dust/grammar.js | 106 +- tree-sitter-dust/src/grammar.json | 538 +- tree-sitter-dust/src/node-types.json | 162 +- tree-sitter-dust/src/parser.c | 14888 +++++++++++---------- 17 files changed, 8738 insertions(+), 7450 deletions(-) delete mode 100644 examples/scope.ds create mode 100644 tree-sitter-dust/corpus/reduce.txt diff --git a/Cargo.lock b/Cargo.lock index 7bfc5bb..640bfe9 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -459,7 +459,7 @@ dependencies = [ [[package]] name = "dust-lang" -version = "0.3.4" +version = "0.3.5" dependencies = [ "ansi_term", "async-std", diff --git a/examples/clue_solver.ds b/examples/clue_solver.ds index dffafb0..d777a69 100644 --- a/examples/clue_solver.ds +++ b/examples/clue_solver.ds @@ -10,7 +10,7 @@ take_turn = function { remove_card = function { for card_list in cards { - removed = remove card in card_list { + removed = remove card from card_list { card == opponent_card } } @@ -21,16 +21,16 @@ remove_card = function { } make_guess = function { - if ((length suspects) == 1) - && ((length rooms) == 1) - && ((length weapons) == 1) + if (length suspects) == 1 + && (length rooms) == 1 + && (length weapons) == 1 { (output 'It was ' - + suspects.{0} + + suspects:0 + ' in the ' - + rooms.{0} + + rooms:0 + ' with the ' - + weapons.{0} + + weapons:0 + '!') } else { (output 'I accuse ' @@ -42,3 +42,5 @@ make_guess = function { + '!') } } + +(make_guess 'Library') diff --git a/examples/for_loop.ds b/examples/for_loop.ds index a42caa8..12fb1b1 100644 --- a/examples/for_loop.ds +++ b/examples/for_loop.ds @@ -1,6 +1,6 @@ list = [1 2 3] -async for i in list { +for i in list { i += 1 (output i) } diff --git a/examples/scope.ds b/examples/scope.ds deleted file mode 100644 index 602c8af..0000000 --- a/examples/scope.ds +++ /dev/null @@ -1,60 +0,0 @@ -# Function -x = "bar" - -func = function <> { - x = "foo" - x -} - -assert_equal("foo", (func)) -assert_equal("bar", x) - -# For Loop -x = 42 - -for number in [1 2 3] { - x += number -} - -assert_equal(48, x) - -# Async Loops - -## Transform Loop - -x = 42 -y = [1 2 3] - -transform number in y { - number += x - x = 1000 -} - -assert_equal([43, 44, 45], y) -assert_equal(42, x) - -## Filter Loop - -x = 42 -y = [1 2 3] - -transform number in y { - number += x - x = 1000 -} - -assert_equal([43, 44, 45], y) -assert_equal(42, x) - -## Filter Loop - -x = 42 -y = [1 2 3] - -filter number in y { - number += x - x = 1000 -} - -assert_equal([43, 44, 45], y) -assert_equal(42, x) diff --git a/examples/transform_loop.ds b/examples/transform_loop.ds index b36b42c..00cdfa9 100644 --- a/examples/transform_loop.ds +++ b/examples/transform_loop.ds @@ -1,5 +1,5 @@ data = (from_json (read "examples/assets/jq_data.json")) transform item in data { - item.{commit}.{committer}.{name} + item:commit:committer:name } diff --git a/src/abstract_tree/filter.rs b/src/abstract_tree/filter.rs index 8b69894..de5f167 100644 --- a/src/abstract_tree/filter.rs +++ b/src/abstract_tree/filter.rs @@ -6,41 +6,58 @@ use crate::{AbstractTree, Error, Expression, Identifier, Item, List, Map, Result #[derive(Debug, Clone, Serialize, Deserialize, Eq, PartialEq, PartialOrd, Ord)] pub struct Filter { - identifier: Identifier, - expression: Expression, - item: Item, + count: Option, + item_id: Identifier, + collection: Expression, + predicate: Item, } impl AbstractTree for Filter { fn from_syntax_node(source: &str, node: Node) -> Result { - let identifier_node = node.child(1).unwrap(); - let identifier = Identifier::from_syntax_node(source, identifier_node)?; + let count = match node.child_by_field_name("count") { + Some(node) => Some(Expression::from_syntax_node(source, node)?), + None => None, + }; - let expression_node = node.child(3).unwrap(); - let expression = Expression::from_syntax_node(source, expression_node)?; + let item_id_node = node.child(1).unwrap(); + let item_id = Identifier::from_syntax_node(source, item_id_node)?; - let item_node = node.child(5).unwrap(); - let item = Item::from_syntax_node(source, item_node)?; + let collection_node = node.child(3).unwrap(); + let collection = Expression::from_syntax_node(source, collection_node)?; + + let predicate_node = node.child(5).unwrap(); + let predicate = Item::from_syntax_node(source, predicate_node)?; Ok(Filter { - identifier, - expression, - item, + count, + item_id, + collection, + predicate, }) } fn run(&self, source: &str, context: &mut Map) -> Result { - let value = self.expression.run(source, context)?; + let value = self.collection.run(source, context)?; let values = value.as_list()?.items(); - let key = self.identifier.inner(); + let key = self.item_id.inner(); let new_values = List::new(); + let count = match &self.count { + Some(expression) => Some(expression.run(source, context)?.as_integer()? as usize), + None => None, + }; values.par_iter().try_for_each(|value| { + if let Some(max) = count { + if new_values.items().len() == max { + return Ok(()); + } + } + let mut context = Map::new(); context.variables_mut().insert(key.clone(), value.clone()); - let should_include = self.item.run(source, &mut context)?.as_boolean()?; + let should_include = self.predicate.run(source, &mut context)?.as_boolean()?; if should_include { new_values.items_mut().push(value.clone()); diff --git a/src/abstract_tree/for.rs b/src/abstract_tree/for.rs index 9efe4c0..8d8d87a 100644 --- a/src/abstract_tree/for.rs +++ b/src/abstract_tree/for.rs @@ -17,10 +17,9 @@ impl AbstractTree for For { let for_node = node.child(0).unwrap(); let is_async = match for_node.kind() { "for" => false, - "async for" => true, _ => { return Err(Error::UnexpectedSyntaxNode { - expected: "\"for\" or \"async for\"", + expected: "for", actual: for_node.kind(), location: for_node.start_position(), relevant_source: source[for_node.byte_range()].to_string(), diff --git a/tests/dust_examples.rs b/tests/dust_examples.rs index 2e70b1f..80079e2 100644 --- a/tests/dust_examples.rs +++ b/tests/dust_examples.rs @@ -59,12 +59,6 @@ fn remove_loop() { evaluate(&file_contents).unwrap(); } -#[test] -fn scope() { - let file_contents = read_to_string("examples/scope.ds").unwrap(); - - evaluate(&file_contents).unwrap(); -} #[test] fn table() { let file_contents = read_to_string("examples/table.ds").unwrap(); diff --git a/tree-sitter-dust/corpus/async.txt b/tree-sitter-dust/corpus/async.txt index 9f0bba5..6a42887 100644 --- a/tree-sitter-dust/corpus/async.txt +++ b/tree-sitter-dust/corpus/async.txt @@ -10,12 +10,13 @@ async { (output 'Whaddup') } (item (statement (async - (statement - (expression - (tool - (expression - (value - (string)))))))))) + (item + (statement + (expression + (tool + (expression + (value + (string))))))))))) ================== Complex Async Statements @@ -23,12 +24,12 @@ Complex Async Statements async { if 1 % 2 == 0 { - (output 'true') + true } else { - (output 'false') + false } - (output 'foobar') + 'foobar' } --- @@ -37,106 +38,21 @@ async { (item (statement (async - (statement - (if_else - (if - (expression - (logic - (expression - (math - (expression - (value - (integer))) - (math_operator) - (expression - (value - (integer))))) - (logic_operator) - (expression - (value - (integer))))) - (statement - (expression - (tool - (expression - (value - (string))))))) - (else - (statement - (expression - (tool - (expression - (value - (string))))))))) - (statement - (expression - (tool - (expression - (value - (string)))))))))) - -================== -Simple Async Await Statements -================== - -x = async { - 1 -} - - ---- - -(root - (item - (statement - (assignment - (identifier) - (assignment_operator) - (statement - (async - (statement - (expression - (value - (integer)))))))))) - -================== -Complex Async Await Statements -================== - -x = async { - i = 0 - while i < 5 { - (output i) - i += 1 - } - (read "examples/assets/faithful.csv") -} - - ---- - -(root - (item - (statement - (assignment - (identifier) - (assignment_operator) - (statement - (async - (statement - (assignment - (identifier) - (assignment_operator) - (statement - (expression - (value - (integer)))))) - (statement - (while + (item + (statement + (if_else + (if (expression (logic (expression - (identifier)) + (math + (expression + (value + (integer))) + (math_operator) + (expression + (value + (integer))))) (logic_operator) (expression (value @@ -144,20 +60,15 @@ x = async { (item (statement (expression - (tool - (expression - (identifier))))) + (value + (boolean)))))) + (else + (item (statement - (assignment - (identifier) - (assignment_operator) - (statement - (expression - (value - (integer))))))))) - (statement - (expression - (tool - (expression - (value - (string)))))))))))) + (expression + (value + (boolean)))))))) + (statement + (expression + (value + (string))))))))) diff --git a/tree-sitter-dust/corpus/control_flow.txt b/tree-sitter-dust/corpus/control_flow.txt index bd76994..50463e1 100644 --- a/tree-sitter-dust/corpus/control_flow.txt +++ b/tree-sitter-dust/corpus/control_flow.txt @@ -14,10 +14,11 @@ if true { "True" } (expression (value (boolean))) - (statement - (expression - (value - (string))))))))) + (item + (statement + (expression + (value + (string)))))))))) ================== Complex If @@ -65,10 +66,11 @@ if (1 == 1) && (2 == 2) && (3 == 3) { "True" } (expression (value (integer))))))))) + (item (statement (expression (value - (string))))))))) + (string)))))))))) ================== If Assignment @@ -90,10 +92,11 @@ x = if true { 1 } (expression (value (boolean))) - (statement - (expression - (value - (integer))))))))))) + (item + (statement + (expression + (value + (integer)))))))))))) ================== If Else @@ -111,15 +114,17 @@ if false { "True" } else { "False" } (expression (value (boolean))) - (statement - (expression - (value - (string))))) + (item + (statement + (expression + (value + (string)))))) (else - (statement - (expression - (value - (string))))))))) + (item + (statement + (expression + (value + (string)))))))))) ================== If Else If @@ -147,10 +152,11 @@ if 1 == 1 { (expression (value (integer))))) - (statement - (expression - (value - (string))))) + (item + (statement + (expression + (value + (string)))))) (else_if (expression (logic @@ -161,10 +167,11 @@ if 1 == 1 { (expression (value (integer))))) - (statement - (expression - (value - (string))))))))) + (item + (statement + (expression + (value + (string)))))))))) ================== If Else Else If Else @@ -190,18 +197,20 @@ if false { (expression (value (boolean))) - (statement - (expression - (value - (string))))) + (item + (statement + (expression + (value + (string)))))) (else_if (expression (value (boolean))) - (statement - (expression - (value - (string))))) + (item + (statement + (expression + (value + (string)))))) (else_if (expression (logic @@ -218,12 +227,14 @@ if false { (expression (value (integer))))) - (statement - (expression - (value - (string))))) + (item + (statement + (expression + (value + (string)))))) (else - (statement - (expression - (value - (string))))))))) + (item + (statement + (expression + (value + (string)))))))))) diff --git a/tree-sitter-dust/corpus/for.txt b/tree-sitter-dust/corpus/for.txt index ed0fb22..757be35 100644 --- a/tree-sitter-dust/corpus/for.txt +++ b/tree-sitter-dust/corpus/for.txt @@ -33,17 +33,13 @@ for i in [1, 2, 3] { (identifier)))))))))) ================== -Complex For Loop +Nested For Loop ================== for list in list_of_lists { for item in list { (output item) } - - if (length list) > 1 { - (output "List is long...") - } } --- @@ -66,23 +62,4 @@ for list in list_of_lists { (expression (tool (expression - (identifier)))))))) - (statement - (if_else - (if - (expression - (logic - (expression - (tool - (expression - (identifier)))) - (logic_operator) - (expression - (value - (integer))))) - (statement - (expression - (tool - (expression - (value - (string)))))))))))))) + (identifier))))))))))))) diff --git a/tree-sitter-dust/corpus/reduce.txt b/tree-sitter-dust/corpus/reduce.txt new file mode 100644 index 0000000..146663e --- /dev/null +++ b/tree-sitter-dust/corpus/reduce.txt @@ -0,0 +1,77 @@ +================== +Reduce Loop +================== + +reduce i to acc in [1, 2, 3] { + acc += i +} + +--- + +(root + (item + (statement + (reduce + (identifier) + (identifier) + (expression + (value + (list + (expression + (value + (integer))) + (expression + (value + (integer))) + (expression + (value + (integer)))))) + (item + (statement + (assignment + (identifier) + (assignment_operator) + (statement + (expression + (identifier)))))))))) + +================== +Reduce Loop Assignment +================== + +together = reduce i to acc in ["one", "two", "three"] { + acc += i +} + +--- + +(root + (item + (statement + (assignment + (identifier) + (assignment_operator) + (statement + (reduce + (identifier) + (identifier) + (expression + (value + (list + (expression + (value + (string))) + (expression + (value + (string))) + (expression + (value + (string)))))) + (item + (statement + (assignment + (identifier) + (assignment_operator) + (statement + (expression + (identifier)))))))))))) \ No newline at end of file diff --git a/tree-sitter-dust/corpus/remove.txt b/tree-sitter-dust/corpus/remove.txt index e7fc895..84b3ce9 100644 --- a/tree-sitter-dust/corpus/remove.txt +++ b/tree-sitter-dust/corpus/remove.txt @@ -2,7 +2,7 @@ Remove Loop ================== -remove i in [1, 2, 3] { +remove i from [1, 2, 3] { i <= 2 } @@ -40,7 +40,7 @@ remove i in [1, 2, 3] { Remove Loop Assignment ================== -removed = remove i in ["one", "two", "three"] { +removed = remove i from ["one", "two", "three"] { i == "two" } diff --git a/tree-sitter-dust/grammar.js b/tree-sitter-dust/grammar.js index 42431b4..9ab9fbf 100644 --- a/tree-sitter-dust/grammar.js +++ b/tree-sitter-dust/grammar.js @@ -4,24 +4,29 @@ module.exports = grammar({ word: $ => $.identifier, rules: { - root: $ => repeat1($.item), - - item: $ => prec.left(repeat1($.statement)), + root: $ => repeat1($.statement), statement: $ => prec.left(choice( - $.comment, + repeat1($._statement_kind), + seq('{', $._statement_kind, '}'), + // )) + + _statement_kind: $ => prec.left(choice( $.assignment, - $.expression, - $.if_else, - $.insert, - $.select, - $.while, $.async, - $.for, - $.transform, + $.comment, + $.expression, $.filter, $.find, + $.for, + $.if_else, + $.insert, + $.match, + $.reduce, $.remove, + $.select, + $.transform, + $.while, )), comment: $ => seq(/[#]+.*/), @@ -32,13 +37,13 @@ module.exports = grammar({ ), _expression_kind: $ => choice( - $.value, + $.function_call, $.identifier, $.index, - $.math, $.logic, - $.function_call, + $.math, $.tool, + $.value, ), identifier: $ => /[_a-zA-Z]+[_a-zA-Z0-9]?/, @@ -54,21 +59,19 @@ module.exports = grammar({ $.map, ), - _numeric: $ => token(repeat1( - choice('1', '2', '3', '4', '5', '6', '7', '8', '9', '0') - )), + integer: $ => prec.left(token(seq( + optional('-'), + repeat1( + choice('1', '2', '3', '4', '5', '6', '7', '8', '9', '0') + ), + ))), - integer: $ => prec.left(seq( - optional(token.immediate('-')), - $._numeric, - )), - - float: $ => prec.left(seq( - optional(token.immediate('-')), - $._numeric, - token.immediate('.'), - $._numeric, - )), + float: $ => prec.left(token(seq( + optional('-'), + repeat1(choice('1', '2', '3', '4', '5', '6', '7', '8', '9', '0')), + '.', + repeat1(choice('1', '2', '3', '4', '5', '6', '7', '8', '9', '0')), + ))), string: $ => /("[^"]*?")|('[^']*?')|(`[^`]*?`)/, @@ -85,7 +88,7 @@ module.exports = grammar({ map: $ => seq( '{', - repeat(seq($.identifier, "=", $.expression)), + $.assignment, '}', ), @@ -103,7 +106,7 @@ module.exports = grammar({ 'function', optional(seq('<', repeat(seq($.identifier, optional(','))), '>')), '{', - $.item, + $.statement, '}', ), @@ -192,11 +195,23 @@ module.exports = grammar({ ')', )), + match: $ => seq( + 'match', + $.expression, + '{', + repeat1(seq( + $.expression, + '=>', + $.statement, + )), + '}', + ), + while: $ => seq( 'while', $.expression, '{', - $.item, + $.statement, '}', ), @@ -206,7 +221,7 @@ module.exports = grammar({ 'in', $.expression, '{', - $.item, + $.statement, '}', ), @@ -216,17 +231,18 @@ module.exports = grammar({ 'in', $.expression, '{', - $.item, + $.statement, '}', ), filter: $ => seq( 'filter', - $.identifier, + field('count', optional($.expression)), + field('statement_id', $.identifier), 'in', - $.expression, + field('collection', $.expression), '{', - $.item, + field('predicate', $.statement), '}', ), @@ -236,17 +252,29 @@ module.exports = grammar({ 'in', $.expression, '{', - $.item, + $.statement, '}', ), remove: $ => seq( 'remove', $.identifier, + 'from', + $.expression, + '{', + $.statement, + '}', + ), + + reduce: $ => seq( + 'reduce', + $.identifier, + 'to', + $.identifier, 'in', $.expression, '{', - $.item, + $.statement, '}', ), @@ -257,7 +285,7 @@ module.exports = grammar({ '>', 'from', $.expression, - optional(seq('{', $.item, '}')), + optional(seq('{', $.statement, '}')), )), insert: $ => prec.right(seq( diff --git a/tree-sitter-dust/src/grammar.json b/tree-sitter-dust/src/grammar.json index e356331..4abe730 100644 --- a/tree-sitter-dust/src/grammar.json +++ b/tree-sitter-dust/src/grammar.json @@ -6,18 +6,7 @@ "type": "REPEAT1", "content": { "type": "SYMBOL", - "name": "item" - } - }, - "item": { - "type": "PREC_LEFT", - "value": 0, - "content": { - "type": "REPEAT1", - "content": { - "type": "SYMBOL", - "name": "statement" - } + "name": "statement" } }, "statement": { @@ -27,44 +16,53 @@ "type": "CHOICE", "members": [ { - "type": "SYMBOL", - "name": "comment" + "type": "REPEAT1", + "content": { + "type": "SYMBOL", + "name": "_statement_kind" + } }, + { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "{" + }, + { + "type": "SYMBOL", + "name": "_statement_kind" + }, + { + "type": "STRING", + "value": "}" + } + ] + } + ] + } + }, + "_statement_kind": { + "type": "PREC_LEFT", + "value": 0, + "content": { + "type": "CHOICE", + "members": [ { "type": "SYMBOL", "name": "assignment" }, - { - "type": "SYMBOL", - "name": "expression" - }, - { - "type": "SYMBOL", - "name": "if_else" - }, - { - "type": "SYMBOL", - "name": "insert" - }, - { - "type": "SYMBOL", - "name": "select" - }, - { - "type": "SYMBOL", - "name": "while" - }, { "type": "SYMBOL", "name": "async" }, { "type": "SYMBOL", - "name": "for" + "name": "comment" }, { "type": "SYMBOL", - "name": "transform" + "name": "expression" }, { "type": "SYMBOL", @@ -74,9 +72,41 @@ "type": "SYMBOL", "name": "find" }, + { + "type": "SYMBOL", + "name": "for" + }, + { + "type": "SYMBOL", + "name": "if_else" + }, + { + "type": "SYMBOL", + "name": "insert" + }, + { + "type": "SYMBOL", + "name": "match" + }, + { + "type": "SYMBOL", + "name": "reduce" + }, { "type": "SYMBOL", "name": "remove" + }, + { + "type": "SYMBOL", + "name": "select" + }, + { + "type": "SYMBOL", + "name": "transform" + }, + { + "type": "SYMBOL", + "name": "while" } ] } @@ -121,7 +151,7 @@ "members": [ { "type": "SYMBOL", - "name": "value" + "name": "function_call" }, { "type": "SYMBOL", @@ -131,21 +161,21 @@ "type": "SYMBOL", "name": "index" }, - { - "type": "SYMBOL", - "name": "math" - }, { "type": "SYMBOL", "name": "logic" }, { "type": "SYMBOL", - "name": "function_call" + "name": "math" }, { "type": "SYMBOL", "name": "tool" + }, + { + "type": "SYMBOL", + "name": "value" } ] }, @@ -190,122 +220,200 @@ } ] }, - "_numeric": { - "type": "TOKEN", - "content": { - "type": "REPEAT1", - "content": { - "type": "CHOICE", - "members": [ - { - "type": "STRING", - "value": "1" - }, - { - "type": "STRING", - "value": "2" - }, - { - "type": "STRING", - "value": "3" - }, - { - "type": "STRING", - "value": "4" - }, - { - "type": "STRING", - "value": "5" - }, - { - "type": "STRING", - "value": "6" - }, - { - "type": "STRING", - "value": "7" - }, - { - "type": "STRING", - "value": "8" - }, - { - "type": "STRING", - "value": "9" - }, - { - "type": "STRING", - "value": "0" - } - ] - } - } - }, "integer": { "type": "PREC_LEFT", "value": 0, "content": { - "type": "SEQ", - "members": [ - { - "type": "CHOICE", - "members": [ - { - "type": "IMMEDIATE_TOKEN", - "content": { + "type": "TOKEN", + "content": { + "type": "SEQ", + "members": [ + { + "type": "CHOICE", + "members": [ + { "type": "STRING", "value": "-" + }, + { + "type": "BLANK" } - }, - { - "type": "BLANK" + ] + }, + { + "type": "REPEAT1", + "content": { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "1" + }, + { + "type": "STRING", + "value": "2" + }, + { + "type": "STRING", + "value": "3" + }, + { + "type": "STRING", + "value": "4" + }, + { + "type": "STRING", + "value": "5" + }, + { + "type": "STRING", + "value": "6" + }, + { + "type": "STRING", + "value": "7" + }, + { + "type": "STRING", + "value": "8" + }, + { + "type": "STRING", + "value": "9" + }, + { + "type": "STRING", + "value": "0" + } + ] } - ] - }, - { - "type": "SYMBOL", - "name": "_numeric" - } - ] + } + ] + } } }, "float": { "type": "PREC_LEFT", "value": 0, "content": { - "type": "SEQ", - "members": [ - { - "type": "CHOICE", - "members": [ - { - "type": "IMMEDIATE_TOKEN", - "content": { + "type": "TOKEN", + "content": { + "type": "SEQ", + "members": [ + { + "type": "CHOICE", + "members": [ + { "type": "STRING", "value": "-" + }, + { + "type": "BLANK" } - }, - { - "type": "BLANK" + ] + }, + { + "type": "REPEAT1", + "content": { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "1" + }, + { + "type": "STRING", + "value": "2" + }, + { + "type": "STRING", + "value": "3" + }, + { + "type": "STRING", + "value": "4" + }, + { + "type": "STRING", + "value": "5" + }, + { + "type": "STRING", + "value": "6" + }, + { + "type": "STRING", + "value": "7" + }, + { + "type": "STRING", + "value": "8" + }, + { + "type": "STRING", + "value": "9" + }, + { + "type": "STRING", + "value": "0" + } + ] } - ] - }, - { - "type": "SYMBOL", - "name": "_numeric" - }, - { - "type": "IMMEDIATE_TOKEN", - "content": { + }, + { "type": "STRING", "value": "." + }, + { + "type": "REPEAT1", + "content": { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "1" + }, + { + "type": "STRING", + "value": "2" + }, + { + "type": "STRING", + "value": "3" + }, + { + "type": "STRING", + "value": "4" + }, + { + "type": "STRING", + "value": "5" + }, + { + "type": "STRING", + "value": "6" + }, + { + "type": "STRING", + "value": "7" + }, + { + "type": "STRING", + "value": "8" + }, + { + "type": "STRING", + "value": "9" + }, + { + "type": "STRING", + "value": "0" + } + ] + } } - }, - { - "type": "SYMBOL", - "name": "_numeric" - } - ] + ] + } } }, "string": { @@ -370,24 +478,8 @@ "value": "{" }, { - "type": "REPEAT", - "content": { - "type": "SEQ", - "members": [ - { - "type": "SYMBOL", - "name": "identifier" - }, - { - "type": "STRING", - "value": "=" - }, - { - "type": "SYMBOL", - "name": "expression" - } - ] - } + "type": "SYMBOL", + "name": "assignment" }, { "type": "STRING", @@ -495,7 +587,7 @@ }, { "type": "SYMBOL", - "name": "item" + "name": "statement" }, { "type": "STRING", @@ -852,6 +944,47 @@ ] } }, + "match": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "match" + }, + { + "type": "SYMBOL", + "name": "expression" + }, + { + "type": "STRING", + "value": "{" + }, + { + "type": "REPEAT1", + "content": { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "expression" + }, + { + "type": "STRING", + "value": "=>" + }, + { + "type": "SYMBOL", + "name": "statement" + } + ] + } + }, + { + "type": "STRING", + "value": "}" + } + ] + }, "while": { "type": "SEQ", "members": [ @@ -869,7 +1002,7 @@ }, { "type": "SYMBOL", - "name": "item" + "name": "statement" }, { "type": "STRING", @@ -902,7 +1035,7 @@ }, { "type": "SYMBOL", - "name": "item" + "name": "statement" }, { "type": "STRING", @@ -935,7 +1068,7 @@ }, { "type": "SYMBOL", - "name": "item" + "name": "statement" }, { "type": "STRING", @@ -951,24 +1084,52 @@ "value": "filter" }, { - "type": "SYMBOL", - "name": "identifier" + "type": "FIELD", + "name": "count", + "content": { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "expression" + }, + { + "type": "BLANK" + } + ] + } + }, + { + "type": "FIELD", + "name": "statement_id", + "content": { + "type": "SYMBOL", + "name": "identifier" + } }, { "type": "STRING", "value": "in" }, { - "type": "SYMBOL", - "name": "expression" + "type": "FIELD", + "name": "collection", + "content": { + "type": "SYMBOL", + "name": "expression" + } }, { "type": "STRING", "value": "{" }, { - "type": "SYMBOL", - "name": "item" + "type": "FIELD", + "name": "predicate", + "content": { + "type": "SYMBOL", + "name": "statement" + } }, { "type": "STRING", @@ -1001,7 +1162,7 @@ }, { "type": "SYMBOL", - "name": "item" + "name": "statement" }, { "type": "STRING", @@ -1020,6 +1181,47 @@ "type": "SYMBOL", "name": "identifier" }, + { + "type": "STRING", + "value": "from" + }, + { + "type": "SYMBOL", + "name": "expression" + }, + { + "type": "STRING", + "value": "{" + }, + { + "type": "SYMBOL", + "name": "statement" + }, + { + "type": "STRING", + "value": "}" + } + ] + }, + "reduce": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "reduce" + }, + { + "type": "SYMBOL", + "name": "identifier" + }, + { + "type": "STRING", + "value": "to" + }, + { + "type": "SYMBOL", + "name": "identifier" + }, { "type": "STRING", "value": "in" @@ -1034,7 +1236,7 @@ }, { "type": "SYMBOL", - "name": "item" + "name": "statement" }, { "type": "STRING", @@ -1104,7 +1306,7 @@ }, { "type": "SYMBOL", - "name": "item" + "name": "statement" }, { "type": "STRING", diff --git a/tree-sitter-dust/src/node-types.json b/tree-sitter-dust/src/node-types.json index 52e2e61..d32d3ac 100644 --- a/tree-sitter-dust/src/node-types.json +++ b/tree-sitter-dust/src/node-types.json @@ -128,24 +128,47 @@ { "type": "filter", "named": true, - "fields": {}, - "children": { - "multiple": true, - "required": true, - "types": [ - { - "type": "expression", - "named": true - }, - { - "type": "identifier", - "named": true - }, - { - "type": "item", - "named": true - } - ] + "fields": { + "collection": { + "multiple": false, + "required": true, + "types": [ + { + "type": "expression", + "named": true + } + ] + }, + "count": { + "multiple": false, + "required": false, + "types": [ + { + "type": "expression", + "named": true + } + ] + }, + "predicate": { + "multiple": false, + "required": true, + "types": [ + { + "type": "statement", + "named": true + } + ] + }, + "statement_id": { + "multiple": false, + "required": true, + "types": [ + { + "type": "identifier", + "named": true + } + ] + } } }, { @@ -165,7 +188,7 @@ "named": true }, { - "type": "item", + "type": "statement", "named": true } ] @@ -193,7 +216,7 @@ "named": true }, { - "type": "item", + "type": "statement", "named": true } ] @@ -212,7 +235,7 @@ "named": true }, { - "type": "item", + "type": "statement", "named": true } ] @@ -318,21 +341,6 @@ "named": true, "fields": {} }, - { - "type": "item", - "named": true, - "fields": {}, - "children": { - "multiple": true, - "required": true, - "types": [ - { - "type": "statement", - "named": true - } - ] - } - }, { "type": "list", "named": true, @@ -376,16 +384,31 @@ "type": "map", "named": true, "fields": {}, + "children": { + "multiple": false, + "required": true, + "types": [ + { + "type": "assignment", + "named": true + } + ] + } + }, + { + "type": "match", + "named": true, + "fields": {}, "children": { "multiple": true, - "required": false, + "required": true, "types": [ { "type": "expression", "named": true }, { - "type": "identifier", + "type": "statement", "named": true } ] @@ -415,6 +438,29 @@ "named": true, "fields": {} }, + { + "type": "reduce", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": true, + "types": [ + { + "type": "expression", + "named": true + }, + { + "type": "identifier", + "named": true + }, + { + "type": "statement", + "named": true + } + ] + } + }, { "type": "remove", "named": true, @@ -432,7 +478,7 @@ "named": true }, { - "type": "item", + "type": "statement", "named": true } ] @@ -447,7 +493,7 @@ "required": true, "types": [ { - "type": "item", + "type": "statement", "named": true } ] @@ -470,7 +516,7 @@ "named": true }, { - "type": "item", + "type": "statement", "named": true } ] @@ -481,7 +527,7 @@ "named": true, "fields": {}, "children": { - "multiple": false, + "multiple": true, "required": true, "types": [ { @@ -520,6 +566,14 @@ "type": "insert", "named": true }, + { + "type": "match", + "named": true + }, + { + "type": "reduce", + "named": true + }, { "type": "remove", "named": true @@ -590,7 +644,7 @@ "named": true }, { - "type": "item", + "type": "statement", "named": true } ] @@ -652,7 +706,7 @@ "named": true }, { - "type": "item", + "type": "statement", "named": true } ] @@ -702,10 +756,6 @@ "type": "-=", "named": false }, - { - "type": ".", - "named": false - }, { "type": "..", "named": false @@ -734,6 +784,10 @@ "type": "==", "named": false }, + { + "type": "=>", + "named": false + }, { "type": ">", "named": false @@ -846,6 +900,10 @@ "type": "length", "named": false }, + { + "type": "match", + "named": false + }, { "type": "metadata", "named": false @@ -886,6 +944,10 @@ "type": "read", "named": false }, + { + "type": "reduce", + "named": false + }, { "type": "remove", "named": false @@ -914,6 +976,10 @@ "type": "table", "named": false }, + { + "type": "to", + "named": false + }, { "type": "to_float", "named": false diff --git a/tree-sitter-dust/src/parser.c b/tree-sitter-dust/src/parser.c index 9d5a43e..455db00 100644 --- a/tree-sitter-dust/src/parser.c +++ b/tree-sitter-dust/src/parser.c @@ -6,160 +6,163 @@ #endif #define LANGUAGE_VERSION 14 -#define STATE_COUNT 263 +#define STATE_COUNT 276 #define LARGE_STATE_COUNT 2 -#define SYMBOL_COUNT 124 +#define SYMBOL_COUNT 129 #define ALIAS_COUNT 0 -#define TOKEN_COUNT 81 +#define TOKEN_COUNT 84 #define EXTERNAL_TOKEN_COUNT 0 -#define FIELD_COUNT 0 +#define FIELD_COUNT 4 #define MAX_ALIAS_SEQUENCE_LENGTH 9 -#define PRODUCTION_ID_COUNT 1 +#define PRODUCTION_ID_COUNT 3 enum { sym_identifier = 1, - aux_sym_comment_token1 = 2, - anon_sym_LPAREN = 3, - anon_sym_RPAREN = 4, - sym__numeric = 5, - anon_sym_DASH = 6, - anon_sym_DOT = 7, - sym_string = 8, - anon_sym_true = 9, - anon_sym_false = 10, - anon_sym_LBRACK = 11, - anon_sym_COMMA = 12, - anon_sym_RBRACK = 13, - anon_sym_LBRACE = 14, - anon_sym_EQ = 15, - anon_sym_RBRACE = 16, - anon_sym_COLON = 17, - anon_sym_DOT_DOT = 18, - anon_sym_function = 19, - anon_sym_LT = 20, - anon_sym_GT = 21, - anon_sym_table = 22, - anon_sym_PLUS = 23, - anon_sym_DASH2 = 24, - anon_sym_STAR = 25, - anon_sym_SLASH = 26, - anon_sym_PERCENT = 27, - anon_sym_EQ_EQ = 28, - anon_sym_BANG_EQ = 29, - anon_sym_AMP_AMP = 30, - anon_sym_PIPE_PIPE = 31, - anon_sym_GT_EQ = 32, - anon_sym_LT_EQ = 33, - anon_sym_PLUS_EQ = 34, - anon_sym_DASH_EQ = 35, - anon_sym_if = 36, - anon_sym_elseif = 37, - anon_sym_else = 38, - anon_sym_while = 39, - anon_sym_for = 40, - anon_sym_in = 41, - anon_sym_transform = 42, - anon_sym_filter = 43, - anon_sym_find = 44, - anon_sym_remove = 45, - anon_sym_select = 46, + anon_sym_LBRACE = 2, + anon_sym_RBRACE = 3, + aux_sym_comment_token1 = 4, + anon_sym_LPAREN = 5, + anon_sym_RPAREN = 6, + aux_sym_integer_token1 = 7, + aux_sym_float_token1 = 8, + sym_string = 9, + anon_sym_true = 10, + anon_sym_false = 11, + anon_sym_LBRACK = 12, + anon_sym_COMMA = 13, + anon_sym_RBRACK = 14, + anon_sym_COLON = 15, + anon_sym_DOT_DOT = 16, + anon_sym_function = 17, + anon_sym_LT = 18, + anon_sym_GT = 19, + anon_sym_table = 20, + anon_sym_PLUS = 21, + anon_sym_DASH = 22, + anon_sym_STAR = 23, + anon_sym_SLASH = 24, + anon_sym_PERCENT = 25, + anon_sym_EQ_EQ = 26, + anon_sym_BANG_EQ = 27, + anon_sym_AMP_AMP = 28, + anon_sym_PIPE_PIPE = 29, + anon_sym_GT_EQ = 30, + anon_sym_LT_EQ = 31, + anon_sym_EQ = 32, + anon_sym_PLUS_EQ = 33, + anon_sym_DASH_EQ = 34, + anon_sym_if = 35, + anon_sym_elseif = 36, + anon_sym_else = 37, + anon_sym_match = 38, + anon_sym_EQ_GT = 39, + anon_sym_while = 40, + anon_sym_for = 41, + anon_sym_in = 42, + anon_sym_transform = 43, + anon_sym_filter = 44, + anon_sym_find = 45, + anon_sym_remove = 46, anon_sym_from = 47, - anon_sym_insert = 48, - anon_sym_into = 49, - anon_sym_async = 50, - anon_sym_assert = 51, - anon_sym_assert_equal = 52, - anon_sym_download = 53, - anon_sym_help = 54, - anon_sym_length = 55, - anon_sym_output = 56, - anon_sym_output_error = 57, - anon_sym_type = 58, - anon_sym_workdir = 59, - anon_sym_append = 60, - anon_sym_metadata = 61, - anon_sym_move = 62, - anon_sym_read = 63, - anon_sym_write = 64, - anon_sym_from_json = 65, - anon_sym_to_json = 66, - anon_sym_to_string = 67, - anon_sym_to_float = 68, - anon_sym_bash = 69, - anon_sym_fish = 70, - anon_sym_raw = 71, - anon_sym_sh = 72, - anon_sym_zsh = 73, - anon_sym_random = 74, - anon_sym_random_boolean = 75, - anon_sym_random_float = 76, - anon_sym_random_integer = 77, - anon_sym_columns = 78, - anon_sym_rows = 79, - anon_sym_reverse = 80, - sym_root = 81, - sym_item = 82, - sym_statement = 83, - sym_comment = 84, - sym_expression = 85, - sym__expression_kind = 86, - sym_value = 87, - sym_integer = 88, - sym_float = 89, - sym_boolean = 90, - sym_list = 91, - sym_map = 92, - sym_index = 93, - sym_function = 94, - sym_table = 95, - sym_math = 96, - sym_math_operator = 97, - sym_logic = 98, - sym_logic_operator = 99, - sym_assignment = 100, - sym_assignment_operator = 101, - sym_if_else = 102, - sym_if = 103, - sym_else_if = 104, - sym_else = 105, - sym_function_call = 106, - sym_while = 107, - sym_for = 108, - sym_transform = 109, - sym_filter = 110, - sym_find = 111, - sym_remove = 112, - sym_select = 113, - sym_insert = 114, - sym_async = 115, - sym_tool = 116, - sym__tool_kind = 117, - aux_sym_root_repeat1 = 118, - aux_sym_item_repeat1 = 119, - aux_sym_list_repeat1 = 120, - aux_sym_map_repeat1 = 121, - aux_sym_function_repeat1 = 122, - aux_sym_if_else_repeat1 = 123, + anon_sym_reduce = 48, + anon_sym_to = 49, + anon_sym_select = 50, + anon_sym_insert = 51, + anon_sym_into = 52, + anon_sym_async = 53, + anon_sym_assert = 54, + anon_sym_assert_equal = 55, + anon_sym_download = 56, + anon_sym_help = 57, + anon_sym_length = 58, + anon_sym_output = 59, + anon_sym_output_error = 60, + anon_sym_type = 61, + anon_sym_workdir = 62, + anon_sym_append = 63, + anon_sym_metadata = 64, + anon_sym_move = 65, + anon_sym_read = 66, + anon_sym_write = 67, + anon_sym_from_json = 68, + anon_sym_to_json = 69, + anon_sym_to_string = 70, + anon_sym_to_float = 71, + anon_sym_bash = 72, + anon_sym_fish = 73, + anon_sym_raw = 74, + anon_sym_sh = 75, + anon_sym_zsh = 76, + anon_sym_random = 77, + anon_sym_random_boolean = 78, + anon_sym_random_float = 79, + anon_sym_random_integer = 80, + anon_sym_columns = 81, + anon_sym_rows = 82, + anon_sym_reverse = 83, + sym_root = 84, + sym_statement = 85, + sym__statement_kind = 86, + sym_comment = 87, + sym_expression = 88, + sym__expression_kind = 89, + sym_value = 90, + sym_integer = 91, + sym_float = 92, + sym_boolean = 93, + sym_list = 94, + sym_map = 95, + sym_index = 96, + sym_function = 97, + sym_table = 98, + sym_math = 99, + sym_math_operator = 100, + sym_logic = 101, + sym_logic_operator = 102, + sym_assignment = 103, + sym_assignment_operator = 104, + sym_if_else = 105, + sym_if = 106, + sym_else_if = 107, + sym_else = 108, + sym_function_call = 109, + sym_match = 110, + sym_while = 111, + sym_for = 112, + sym_transform = 113, + sym_filter = 114, + sym_find = 115, + sym_remove = 116, + sym_reduce = 117, + sym_select = 118, + sym_insert = 119, + sym_async = 120, + sym_tool = 121, + sym__tool_kind = 122, + aux_sym_root_repeat1 = 123, + aux_sym_statement_repeat1 = 124, + aux_sym_list_repeat1 = 125, + aux_sym_function_repeat1 = 126, + aux_sym_if_else_repeat1 = 127, + aux_sym_match_repeat1 = 128, }; static const char * const ts_symbol_names[] = { [ts_builtin_sym_end] = "end", [sym_identifier] = "identifier", + [anon_sym_LBRACE] = "{", + [anon_sym_RBRACE] = "}", [aux_sym_comment_token1] = "comment_token1", [anon_sym_LPAREN] = "(", [anon_sym_RPAREN] = ")", - [sym__numeric] = "_numeric", - [anon_sym_DASH] = "-", - [anon_sym_DOT] = ".", + [aux_sym_integer_token1] = "integer_token1", + [aux_sym_float_token1] = "float_token1", [sym_string] = "string", [anon_sym_true] = "true", [anon_sym_false] = "false", [anon_sym_LBRACK] = "[", [anon_sym_COMMA] = ",", [anon_sym_RBRACK] = "]", - [anon_sym_LBRACE] = "{", - [anon_sym_EQ] = "=", - [anon_sym_RBRACE] = "}", [anon_sym_COLON] = ":", [anon_sym_DOT_DOT] = "..", [anon_sym_function] = "function", @@ -167,7 +170,7 @@ static const char * const ts_symbol_names[] = { [anon_sym_GT] = ">", [anon_sym_table] = "table", [anon_sym_PLUS] = "+", - [anon_sym_DASH2] = "-", + [anon_sym_DASH] = "-", [anon_sym_STAR] = "*", [anon_sym_SLASH] = "/", [anon_sym_PERCENT] = "%", @@ -177,11 +180,14 @@ static const char * const ts_symbol_names[] = { [anon_sym_PIPE_PIPE] = "||", [anon_sym_GT_EQ] = ">=", [anon_sym_LT_EQ] = "<=", + [anon_sym_EQ] = "=", [anon_sym_PLUS_EQ] = "+=", [anon_sym_DASH_EQ] = "-=", [anon_sym_if] = "if", [anon_sym_elseif] = "else if", [anon_sym_else] = "else", + [anon_sym_match] = "match", + [anon_sym_EQ_GT] = "=>", [anon_sym_while] = "while", [anon_sym_for] = "for", [anon_sym_in] = "in", @@ -189,8 +195,10 @@ static const char * const ts_symbol_names[] = { [anon_sym_filter] = "filter", [anon_sym_find] = "find", [anon_sym_remove] = "remove", - [anon_sym_select] = "select", [anon_sym_from] = "from", + [anon_sym_reduce] = "reduce", + [anon_sym_to] = "to", + [anon_sym_select] = "select", [anon_sym_insert] = "insert", [anon_sym_into] = "into", [anon_sym_async] = "async", @@ -225,8 +233,8 @@ static const char * const ts_symbol_names[] = { [anon_sym_rows] = "rows", [anon_sym_reverse] = "reverse", [sym_root] = "root", - [sym_item] = "item", [sym_statement] = "statement", + [sym__statement_kind] = "_statement_kind", [sym_comment] = "comment", [sym_expression] = "expression", [sym__expression_kind] = "_expression_kind", @@ -250,43 +258,43 @@ static const char * const ts_symbol_names[] = { [sym_else_if] = "else_if", [sym_else] = "else", [sym_function_call] = "function_call", + [sym_match] = "match", [sym_while] = "while", [sym_for] = "for", [sym_transform] = "transform", [sym_filter] = "filter", [sym_find] = "find", [sym_remove] = "remove", + [sym_reduce] = "reduce", [sym_select] = "select", [sym_insert] = "insert", [sym_async] = "async", [sym_tool] = "tool", [sym__tool_kind] = "_tool_kind", [aux_sym_root_repeat1] = "root_repeat1", - [aux_sym_item_repeat1] = "item_repeat1", + [aux_sym_statement_repeat1] = "statement_repeat1", [aux_sym_list_repeat1] = "list_repeat1", - [aux_sym_map_repeat1] = "map_repeat1", [aux_sym_function_repeat1] = "function_repeat1", [aux_sym_if_else_repeat1] = "if_else_repeat1", + [aux_sym_match_repeat1] = "match_repeat1", }; static const TSSymbol ts_symbol_map[] = { [ts_builtin_sym_end] = ts_builtin_sym_end, [sym_identifier] = sym_identifier, + [anon_sym_LBRACE] = anon_sym_LBRACE, + [anon_sym_RBRACE] = anon_sym_RBRACE, [aux_sym_comment_token1] = aux_sym_comment_token1, [anon_sym_LPAREN] = anon_sym_LPAREN, [anon_sym_RPAREN] = anon_sym_RPAREN, - [sym__numeric] = sym__numeric, - [anon_sym_DASH] = anon_sym_DASH, - [anon_sym_DOT] = anon_sym_DOT, + [aux_sym_integer_token1] = aux_sym_integer_token1, + [aux_sym_float_token1] = aux_sym_float_token1, [sym_string] = sym_string, [anon_sym_true] = anon_sym_true, [anon_sym_false] = anon_sym_false, [anon_sym_LBRACK] = anon_sym_LBRACK, [anon_sym_COMMA] = anon_sym_COMMA, [anon_sym_RBRACK] = anon_sym_RBRACK, - [anon_sym_LBRACE] = anon_sym_LBRACE, - [anon_sym_EQ] = anon_sym_EQ, - [anon_sym_RBRACE] = anon_sym_RBRACE, [anon_sym_COLON] = anon_sym_COLON, [anon_sym_DOT_DOT] = anon_sym_DOT_DOT, [anon_sym_function] = anon_sym_function, @@ -294,7 +302,7 @@ static const TSSymbol ts_symbol_map[] = { [anon_sym_GT] = anon_sym_GT, [anon_sym_table] = anon_sym_table, [anon_sym_PLUS] = anon_sym_PLUS, - [anon_sym_DASH2] = anon_sym_DASH, + [anon_sym_DASH] = anon_sym_DASH, [anon_sym_STAR] = anon_sym_STAR, [anon_sym_SLASH] = anon_sym_SLASH, [anon_sym_PERCENT] = anon_sym_PERCENT, @@ -304,11 +312,14 @@ static const TSSymbol ts_symbol_map[] = { [anon_sym_PIPE_PIPE] = anon_sym_PIPE_PIPE, [anon_sym_GT_EQ] = anon_sym_GT_EQ, [anon_sym_LT_EQ] = anon_sym_LT_EQ, + [anon_sym_EQ] = anon_sym_EQ, [anon_sym_PLUS_EQ] = anon_sym_PLUS_EQ, [anon_sym_DASH_EQ] = anon_sym_DASH_EQ, [anon_sym_if] = anon_sym_if, [anon_sym_elseif] = anon_sym_elseif, [anon_sym_else] = anon_sym_else, + [anon_sym_match] = anon_sym_match, + [anon_sym_EQ_GT] = anon_sym_EQ_GT, [anon_sym_while] = anon_sym_while, [anon_sym_for] = anon_sym_for, [anon_sym_in] = anon_sym_in, @@ -316,8 +327,10 @@ static const TSSymbol ts_symbol_map[] = { [anon_sym_filter] = anon_sym_filter, [anon_sym_find] = anon_sym_find, [anon_sym_remove] = anon_sym_remove, - [anon_sym_select] = anon_sym_select, [anon_sym_from] = anon_sym_from, + [anon_sym_reduce] = anon_sym_reduce, + [anon_sym_to] = anon_sym_to, + [anon_sym_select] = anon_sym_select, [anon_sym_insert] = anon_sym_insert, [anon_sym_into] = anon_sym_into, [anon_sym_async] = anon_sym_async, @@ -352,8 +365,8 @@ static const TSSymbol ts_symbol_map[] = { [anon_sym_rows] = anon_sym_rows, [anon_sym_reverse] = anon_sym_reverse, [sym_root] = sym_root, - [sym_item] = sym_item, [sym_statement] = sym_statement, + [sym__statement_kind] = sym__statement_kind, [sym_comment] = sym_comment, [sym_expression] = sym_expression, [sym__expression_kind] = sym__expression_kind, @@ -377,23 +390,25 @@ static const TSSymbol ts_symbol_map[] = { [sym_else_if] = sym_else_if, [sym_else] = sym_else, [sym_function_call] = sym_function_call, + [sym_match] = sym_match, [sym_while] = sym_while, [sym_for] = sym_for, [sym_transform] = sym_transform, [sym_filter] = sym_filter, [sym_find] = sym_find, [sym_remove] = sym_remove, + [sym_reduce] = sym_reduce, [sym_select] = sym_select, [sym_insert] = sym_insert, [sym_async] = sym_async, [sym_tool] = sym_tool, [sym__tool_kind] = sym__tool_kind, [aux_sym_root_repeat1] = aux_sym_root_repeat1, - [aux_sym_item_repeat1] = aux_sym_item_repeat1, + [aux_sym_statement_repeat1] = aux_sym_statement_repeat1, [aux_sym_list_repeat1] = aux_sym_list_repeat1, - [aux_sym_map_repeat1] = aux_sym_map_repeat1, [aux_sym_function_repeat1] = aux_sym_function_repeat1, [aux_sym_if_else_repeat1] = aux_sym_if_else_repeat1, + [aux_sym_match_repeat1] = aux_sym_match_repeat1, }; static const TSSymbolMetadata ts_symbol_metadata[] = { @@ -405,6 +420,14 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = true, }, + [anon_sym_LBRACE] = { + .visible = true, + .named = false, + }, + [anon_sym_RBRACE] = { + .visible = true, + .named = false, + }, [aux_sym_comment_token1] = { .visible = false, .named = false, @@ -417,16 +440,12 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = false, }, - [sym__numeric] = { + [aux_sym_integer_token1] = { .visible = false, - .named = true, - }, - [anon_sym_DASH] = { - .visible = true, .named = false, }, - [anon_sym_DOT] = { - .visible = true, + [aux_sym_float_token1] = { + .visible = false, .named = false, }, [sym_string] = { @@ -453,18 +472,6 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = false, }, - [anon_sym_LBRACE] = { - .visible = true, - .named = false, - }, - [anon_sym_EQ] = { - .visible = true, - .named = false, - }, - [anon_sym_RBRACE] = { - .visible = true, - .named = false, - }, [anon_sym_COLON] = { .visible = true, .named = false, @@ -493,7 +500,7 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = false, }, - [anon_sym_DASH2] = { + [anon_sym_DASH] = { .visible = true, .named = false, }, @@ -533,6 +540,10 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = false, }, + [anon_sym_EQ] = { + .visible = true, + .named = false, + }, [anon_sym_PLUS_EQ] = { .visible = true, .named = false, @@ -553,6 +564,14 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = false, }, + [anon_sym_match] = { + .visible = true, + .named = false, + }, + [anon_sym_EQ_GT] = { + .visible = true, + .named = false, + }, [anon_sym_while] = { .visible = true, .named = false, @@ -581,11 +600,19 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = false, }, - [anon_sym_select] = { + [anon_sym_from] = { .visible = true, .named = false, }, - [anon_sym_from] = { + [anon_sym_reduce] = { + .visible = true, + .named = false, + }, + [anon_sym_to] = { + .visible = true, + .named = false, + }, + [anon_sym_select] = { .visible = true, .named = false, }, @@ -725,12 +752,12 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = true, }, - [sym_item] = { + [sym_statement] = { .visible = true, .named = true, }, - [sym_statement] = { - .visible = true, + [sym__statement_kind] = { + .visible = false, .named = true, }, [sym_comment] = { @@ -825,6 +852,10 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = true, }, + [sym_match] = { + .visible = true, + .named = true, + }, [sym_while] = { .visible = true, .named = true, @@ -849,6 +880,10 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = true, }, + [sym_reduce] = { + .visible = true, + .named = true, + }, [sym_select] = { .visible = true, .named = true, @@ -873,7 +908,7 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = false, .named = false, }, - [aux_sym_item_repeat1] = { + [aux_sym_statement_repeat1] = { .visible = false, .named = false, }, @@ -881,10 +916,6 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = false, .named = false, }, - [aux_sym_map_repeat1] = { - .visible = false, - .named = false, - }, [aux_sym_function_repeat1] = { .visible = false, .named = false, @@ -893,6 +924,42 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = false, .named = false, }, + [aux_sym_match_repeat1] = { + .visible = false, + .named = false, + }, +}; + +enum { + field_collection = 1, + field_count = 2, + field_predicate = 3, + field_statement_id = 4, +}; + +static const char * const ts_field_names[] = { + [0] = NULL, + [field_collection] = "collection", + [field_count] = "count", + [field_predicate] = "predicate", + [field_statement_id] = "statement_id", +}; + +static const TSFieldMapSlice ts_field_map_slices[PRODUCTION_ID_COUNT] = { + [1] = {.index = 0, .length = 3}, + [2] = {.index = 3, .length = 4}, +}; + +static const TSFieldMapEntry ts_field_map_entries[] = { + [0] = + {field_collection, 3}, + {field_predicate, 5}, + {field_statement_id, 1}, + [3] = + {field_collection, 4}, + {field_count, 1}, + {field_predicate, 6}, + {field_statement_id, 2}, }; static const TSSymbol ts_alias_sequences[PRODUCTION_ID_COUNT][MAX_ALIAS_SEQUENCE_LENGTH] = { @@ -907,48 +974,48 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [0] = 0, [1] = 1, [2] = 2, - [3] = 2, + [3] = 3, [4] = 4, [5] = 5, [6] = 6, [7] = 7, - [8] = 8, + [8] = 6, [9] = 9, [10] = 10, [11] = 11, [12] = 12, - [13] = 12, + [13] = 13, [14] = 14, [15] = 15, [16] = 16, - [17] = 16, + [17] = 17, [18] = 18, - [19] = 19, + [19] = 9, [20] = 20, - [21] = 14, - [22] = 22, + [21] = 16, + [22] = 9, [23] = 23, - [24] = 23, + [24] = 12, [25] = 25, [26] = 26, [27] = 27, [28] = 28, - [29] = 28, - [30] = 30, + [29] = 29, + [30] = 17, [31] = 31, - [32] = 31, + [32] = 20, [33] = 33, [34] = 34, [35] = 35, - [36] = 34, + [36] = 36, [37] = 37, - [38] = 33, + [38] = 38, [39] = 35, - [40] = 30, - [41] = 41, - [42] = 42, - [43] = 43, - [44] = 44, + [40] = 40, + [41] = 40, + [42] = 38, + [43] = 37, + [44] = 36, [45] = 45, [46] = 46, [47] = 47, @@ -965,10 +1032,10 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [58] = 58, [59] = 59, [60] = 60, - [61] = 42, + [61] = 61, [62] = 62, [63] = 63, - [64] = 64, + [64] = 63, [65] = 65, [66] = 66, [67] = 67, @@ -979,52 +1046,52 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [72] = 72, [73] = 73, [74] = 74, - [75] = 75, - [76] = 70, - [77] = 75, - [78] = 72, - [79] = 71, - [80] = 74, + [75] = 73, + [76] = 76, + [77] = 76, + [78] = 74, + [79] = 79, + [80] = 79, [81] = 81, [82] = 82, [83] = 83, - [84] = 84, - [85] = 84, + [84] = 82, + [85] = 85, [86] = 86, [87] = 87, - [88] = 83, + [88] = 88, [89] = 89, - [90] = 84, - [91] = 84, - [92] = 86, - [93] = 93, + [90] = 90, + [91] = 91, + [92] = 92, + [93] = 88, [94] = 94, [95] = 95, - [96] = 86, - [97] = 97, - [98] = 86, - [99] = 99, + [96] = 96, + [97] = 89, + [98] = 98, + [99] = 96, [100] = 100, [101] = 101, - [102] = 102, - [103] = 103, + [102] = 98, + [103] = 96, [104] = 104, - [105] = 82, - [106] = 89, - [107] = 95, - [108] = 83, + [105] = 98, + [106] = 106, + [107] = 107, + [108] = 98, [109] = 109, [110] = 110, - [111] = 89, - [112] = 89, - [113] = 110, - [114] = 81, - [115] = 83, - [116] = 116, + [111] = 111, + [112] = 112, + [113] = 113, + [114] = 114, + [115] = 115, + [116] = 110, [117] = 117, - [118] = 118, + [118] = 89, [119] = 119, - [120] = 120, + [120] = 110, [121] = 121, [122] = 122, [123] = 123, @@ -1032,98 +1099,98 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [125] = 125, [126] = 126, [127] = 127, - [128] = 128, + [128] = 111, [129] = 129, - [130] = 130, + [130] = 89, [131] = 131, - [132] = 132, - [133] = 34, - [134] = 35, - [135] = 30, - [136] = 33, - [137] = 31, - [138] = 31, - [139] = 30, - [140] = 35, - [141] = 37, - [142] = 41, - [143] = 34, - [144] = 33, - [145] = 53, - [146] = 43, - [147] = 45, - [148] = 58, - [149] = 59, - [150] = 51, - [151] = 54, - [152] = 50, - [153] = 55, - [154] = 44, - [155] = 52, - [156] = 47, - [157] = 48, - [158] = 56, - [159] = 60, - [160] = 57, - [161] = 49, - [162] = 46, - [163] = 163, - [164] = 65, - [165] = 63, - [166] = 166, - [167] = 167, - [168] = 168, - [169] = 169, - [170] = 170, - [171] = 64, - [172] = 172, + [132] = 129, + [133] = 133, + [134] = 134, + [135] = 135, + [136] = 136, + [137] = 96, + [138] = 104, + [139] = 110, + [140] = 140, + [141] = 141, + [142] = 142, + [143] = 143, + [144] = 35, + [145] = 35, + [146] = 40, + [147] = 36, + [148] = 38, + [149] = 37, + [150] = 36, + [151] = 40, + [152] = 37, + [153] = 38, + [154] = 53, + [155] = 48, + [156] = 51, + [157] = 45, + [158] = 49, + [159] = 46, + [160] = 47, + [161] = 59, + [162] = 60, + [163] = 61, + [164] = 56, + [165] = 57, + [166] = 55, + [167] = 50, + [168] = 58, + [169] = 54, + [170] = 52, + [171] = 62, + [172] = 66, [173] = 173, - [174] = 62, + [174] = 174, [175] = 175, [176] = 176, [177] = 177, - [178] = 177, - [179] = 179, + [178] = 178, + [179] = 67, [180] = 180, [181] = 181, [182] = 182, [183] = 183, [184] = 184, - [185] = 185, - [186] = 185, + [185] = 65, + [186] = 186, [187] = 187, [188] = 188, [189] = 189, - [190] = 184, - [191] = 191, + [190] = 190, + [191] = 190, [192] = 192, - [193] = 192, - [194] = 187, - [195] = 183, + [193] = 193, + [194] = 194, + [195] = 195, [196] = 196, - [197] = 196, - [198] = 187, - [199] = 187, - [200] = 182, + [197] = 197, + [198] = 198, + [199] = 199, + [200] = 200, [201] = 201, - [202] = 201, - [203] = 203, - [204] = 204, - [205] = 201, - [206] = 204, - [207] = 201, - [208] = 208, - [209] = 209, - [210] = 210, + [202] = 202, + [203] = 201, + [204] = 201, + [205] = 205, + [206] = 201, + [207] = 198, + [208] = 200, + [209] = 202, + [210] = 199, [211] = 211, [212] = 212, - [213] = 213, + [213] = 212, [214] = 214, [215] = 215, - [216] = 216, - [217] = 217, - [218] = 218, - [219] = 219, + [216] = 211, + [217] = 214, + [218] = 214, + [219] = 214, [220] = 220, [221] = 221, [222] = 222, @@ -1134,39 +1201,52 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [227] = 227, [228] = 228, [229] = 229, - [230] = 230, - [231] = 212, - [232] = 223, - [233] = 225, - [234] = 216, + [230] = 224, + [231] = 231, + [232] = 232, + [233] = 233, + [234] = 234, [235] = 235, - [236] = 226, - [237] = 237, - [238] = 238, + [236] = 236, + [237] = 223, + [238] = 229, [239] = 239, [240] = 240, - [241] = 210, - [242] = 242, + [241] = 241, + [242] = 220, [243] = 243, - [244] = 221, + [244] = 244, [245] = 245, - [246] = 227, - [247] = 238, - [248] = 213, + [246] = 246, + [247] = 247, + [248] = 248, [249] = 249, - [250] = 242, - [251] = 217, - [252] = 220, + [250] = 250, + [251] = 251, + [252] = 231, [253] = 253, [254] = 254, - [255] = 255, + [255] = 243, [256] = 256, - [257] = 238, + [257] = 257, [258] = 258, [259] = 259, - [260] = 214, - [261] = 261, - [262] = 238, + [260] = 260, + [261] = 256, + [262] = 262, + [263] = 263, + [264] = 235, + [265] = 265, + [266] = 266, + [267] = 260, + [268] = 268, + [269] = 234, + [270] = 260, + [271] = 263, + [272] = 239, + [273] = 273, + [274] = 274, + [275] = 260, }; static bool ts_lex(TSLexer *lexer, TSStateId state) { @@ -1177,373 +1257,321 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { if (eof) ADVANCE(15); if (lookahead == '!') ADVANCE(7); if (lookahead == '"') ADVANCE(3); - if (lookahead == '#') ADVANCE(16); - if (lookahead == '%') ADVANCE(43); + if (lookahead == '#') ADVANCE(18); + if (lookahead == '%') ADVANCE(44); if (lookahead == '&') ADVANCE(4); if (lookahead == '\'') ADVANCE(5); - if (lookahead == '(') ADVANCE(18); - if (lookahead == ')') ADVANCE(19); - if (lookahead == '*') ADVANCE(41); - if (lookahead == '+') ADVANCE(39); - if (lookahead == ',') ADVANCE(30); - if (lookahead == '-') ADVANCE(26); - if (lookahead == '.') ADVANCE(27); - if (lookahead == '/') ADVANCE(42); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(25); - if (lookahead == ':') ADVANCE(35); - if (lookahead == '<') ADVANCE(37); - if (lookahead == '=') ADVANCE(33); - if (lookahead == '>') ADVANCE(38); - if (lookahead == '[') ADVANCE(29); - if (lookahead == ']') ADVANCE(31); - if (lookahead == '`') ADVANCE(8); - if (lookahead == 'e') ADVANCE(22); - if (lookahead == '{') ADVANCE(32); - if (lookahead == '|') ADVANCE(11); - if (lookahead == '}') ADVANCE(34); + if (lookahead == '(') ADVANCE(20); + if (lookahead == ')') ADVANCE(21); + if (lookahead == '*') ADVANCE(42); + if (lookahead == '+') ADVANCE(38); + if (lookahead == ',') ADVANCE(31); + if (lookahead == '-') ADVANCE(41); + if (lookahead == '.') ADVANCE(6); + if (lookahead == '/') ADVANCE(43); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(27); + if (lookahead == ':') ADVANCE(33); + if (lookahead == '<') ADVANCE(35); + if (lookahead == '=') ADVANCE(52); + if (lookahead == '>') ADVANCE(36); + if (lookahead == '[') ADVANCE(30); + if (lookahead == ']') ADVANCE(32); + if (lookahead == '`') ADVANCE(9); + if (lookahead == 'e') ADVANCE(24); + if (lookahead == '{') ADVANCE(16); + if (lookahead == '|') ADVANCE(12); + if (lookahead == '}') ADVANCE(17); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || - lookahead == ' ') SKIP(13) + lookahead == ' ') SKIP(0) if (('A' <= lookahead && lookahead <= 'Z') || - ('_' <= lookahead && lookahead <= 'z')) ADVANCE(24); + ('_' <= lookahead && lookahead <= 'z')) ADVANCE(26); END_STATE(); case 1: if (lookahead == '!') ADVANCE(7); - if (lookahead == '%') ADVANCE(43); + if (lookahead == '%') ADVANCE(44); if (lookahead == '&') ADVANCE(4); - if (lookahead == ')') ADVANCE(19); - if (lookahead == '*') ADVANCE(41); - if (lookahead == '+') ADVANCE(39); - if (lookahead == '-') ADVANCE(40); - if (lookahead == '.') ADVANCE(27); - if (lookahead == '/') ADVANCE(42); - if (lookahead == ':') ADVANCE(35); - if (lookahead == '<') ADVANCE(37); - if (lookahead == '=') ADVANCE(33); - if (lookahead == '>') ADVANCE(38); - if (lookahead == '{') ADVANCE(32); - if (lookahead == '|') ADVANCE(11); - if (lookahead == '}') ADVANCE(34); + if (lookahead == ')') ADVANCE(21); + if (lookahead == '*') ADVANCE(42); + if (lookahead == '+') ADVANCE(37); + if (lookahead == '-') ADVANCE(39); + if (lookahead == '.') ADVANCE(6); + if (lookahead == '/') ADVANCE(43); + if (lookahead == ':') ADVANCE(33); + if (lookahead == '<') ADVANCE(35); + if (lookahead == '=') ADVANCE(8); + if (lookahead == '>') ADVANCE(36); + if (lookahead == '{') ADVANCE(16); + if (lookahead == '|') ADVANCE(12); + if (lookahead == '}') ADVANCE(17); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || - lookahead == ' ') SKIP(2) + lookahead == ' ') SKIP(1) if (('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(24); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(26); END_STATE(); case 2: if (lookahead == '!') ADVANCE(7); - if (lookahead == '%') ADVANCE(43); + if (lookahead == '%') ADVANCE(44); if (lookahead == '&') ADVANCE(4); - if (lookahead == ')') ADVANCE(19); - if (lookahead == '*') ADVANCE(41); - if (lookahead == '+') ADVANCE(39); + if (lookahead == '*') ADVANCE(42); + if (lookahead == '+') ADVANCE(38); if (lookahead == '-') ADVANCE(40); - if (lookahead == '.') ADVANCE(6); - if (lookahead == '/') ADVANCE(42); - if (lookahead == ':') ADVANCE(35); - if (lookahead == '<') ADVANCE(37); - if (lookahead == '=') ADVANCE(33); - if (lookahead == '>') ADVANCE(38); - if (lookahead == '{') ADVANCE(32); - if (lookahead == '|') ADVANCE(11); - if (lookahead == '}') ADVANCE(34); + if (lookahead == '/') ADVANCE(43); + if (lookahead == ':') ADVANCE(33); + if (lookahead == '<') ADVANCE(35); + if (lookahead == '=') ADVANCE(51); + if (lookahead == '>') ADVANCE(36); + if (lookahead == '|') ADVANCE(12); + if (lookahead == '}') ADVANCE(17); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(2) - if (('A' <= lookahead && lookahead <= 'Z') || - lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(24); END_STATE(); case 3: - if (lookahead == '"') ADVANCE(28); + if (lookahead == '"') ADVANCE(29); if (lookahead != 0) ADVANCE(3); END_STATE(); case 4: - if (lookahead == '&') ADVANCE(46); + if (lookahead == '&') ADVANCE(47); END_STATE(); case 5: - if (lookahead == '\'') ADVANCE(28); + if (lookahead == '\'') ADVANCE(29); if (lookahead != 0) ADVANCE(5); END_STATE(); case 6: - if (lookahead == '.') ADVANCE(36); + if (lookahead == '.') ADVANCE(34); END_STATE(); case 7: - if (lookahead == '=') ADVANCE(45); + if (lookahead == '=') ADVANCE(46); END_STATE(); case 8: - if (lookahead == '`') ADVANCE(28); - if (lookahead != 0) ADVANCE(8); + if (lookahead == '=') ADVANCE(45); + if (lookahead == '>') ADVANCE(57); END_STATE(); case 9: - if (lookahead == 'f') ADVANCE(52); + if (lookahead == '`') ADVANCE(29); + if (lookahead != 0) ADVANCE(9); END_STATE(); case 10: - if (lookahead == 'i') ADVANCE(9); + if (lookahead == 'f') ADVANCE(55); END_STATE(); case 11: - if (lookahead == '|') ADVANCE(47); + if (lookahead == 'i') ADVANCE(10); END_STATE(); case 12: - if (eof) ADVANCE(15); - if (lookahead == '!') ADVANCE(7); - if (lookahead == '"') ADVANCE(3); - if (lookahead == '#') ADVANCE(16); - if (lookahead == '%') ADVANCE(43); - if (lookahead == '&') ADVANCE(4); - if (lookahead == '\'') ADVANCE(5); - if (lookahead == '(') ADVANCE(18); - if (lookahead == ')') ADVANCE(19); - if (lookahead == '*') ADVANCE(41); - if (lookahead == '+') ADVANCE(39); - if (lookahead == ',') ADVANCE(30); - if (lookahead == '-') ADVANCE(26); - if (lookahead == '.') ADVANCE(27); - if (lookahead == '/') ADVANCE(42); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(25); - if (lookahead == ':') ADVANCE(35); - if (lookahead == '<') ADVANCE(37); - if (lookahead == '=') ADVANCE(33); - if (lookahead == '>') ADVANCE(38); - if (lookahead == '[') ADVANCE(29); - if (lookahead == ']') ADVANCE(31); - if (lookahead == '`') ADVANCE(8); - if (lookahead == '{') ADVANCE(32); - if (lookahead == '|') ADVANCE(11); - if (lookahead == '}') ADVANCE(34); - if (lookahead == '\t' || - lookahead == '\n' || - lookahead == '\r' || - lookahead == ' ') SKIP(14) - if (('A' <= lookahead && lookahead <= 'Z') || - ('_' <= lookahead && lookahead <= 'z')) ADVANCE(24); + if (lookahead == '|') ADVANCE(48); END_STATE(); case 13: - if (eof) ADVANCE(15); - if (lookahead == '!') ADVANCE(7); - if (lookahead == '"') ADVANCE(3); - if (lookahead == '#') ADVANCE(16); - if (lookahead == '%') ADVANCE(43); - if (lookahead == '&') ADVANCE(4); - if (lookahead == '\'') ADVANCE(5); - if (lookahead == '(') ADVANCE(18); - if (lookahead == ')') ADVANCE(19); - if (lookahead == '*') ADVANCE(41); - if (lookahead == '+') ADVANCE(39); - if (lookahead == ',') ADVANCE(30); - if (lookahead == '-') ADVANCE(40); - if (lookahead == '.') ADVANCE(6); - if (lookahead == '/') ADVANCE(42); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(25); - if (lookahead == ':') ADVANCE(35); - if (lookahead == '<') ADVANCE(37); - if (lookahead == '=') ADVANCE(33); - if (lookahead == '>') ADVANCE(38); - if (lookahead == '[') ADVANCE(29); - if (lookahead == ']') ADVANCE(31); - if (lookahead == '`') ADVANCE(8); - if (lookahead == 'e') ADVANCE(22); - if (lookahead == '{') ADVANCE(32); - if (lookahead == '|') ADVANCE(11); - if (lookahead == '}') ADVANCE(34); - if (lookahead == '\t' || - lookahead == '\n' || - lookahead == '\r' || - lookahead == ' ') SKIP(13) - if (('A' <= lookahead && lookahead <= 'Z') || - ('_' <= lookahead && lookahead <= 'z')) ADVANCE(24); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(28); END_STATE(); case 14: if (eof) ADVANCE(15); if (lookahead == '!') ADVANCE(7); if (lookahead == '"') ADVANCE(3); - if (lookahead == '#') ADVANCE(16); - if (lookahead == '%') ADVANCE(43); + if (lookahead == '#') ADVANCE(18); + if (lookahead == '%') ADVANCE(44); if (lookahead == '&') ADVANCE(4); if (lookahead == '\'') ADVANCE(5); - if (lookahead == '(') ADVANCE(18); - if (lookahead == ')') ADVANCE(19); - if (lookahead == '*') ADVANCE(41); - if (lookahead == '+') ADVANCE(39); - if (lookahead == ',') ADVANCE(30); - if (lookahead == '-') ADVANCE(40); + if (lookahead == '(') ADVANCE(20); + if (lookahead == ')') ADVANCE(21); + if (lookahead == '*') ADVANCE(42); + if (lookahead == '+') ADVANCE(38); + if (lookahead == ',') ADVANCE(31); + if (lookahead == '-') ADVANCE(41); if (lookahead == '.') ADVANCE(6); - if (lookahead == '/') ADVANCE(42); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(25); - if (lookahead == ':') ADVANCE(35); - if (lookahead == '<') ADVANCE(37); - if (lookahead == '=') ADVANCE(33); - if (lookahead == '>') ADVANCE(38); - if (lookahead == '[') ADVANCE(29); - if (lookahead == ']') ADVANCE(31); - if (lookahead == '`') ADVANCE(8); - if (lookahead == '{') ADVANCE(32); - if (lookahead == '|') ADVANCE(11); - if (lookahead == '}') ADVANCE(34); + if (lookahead == '/') ADVANCE(43); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(27); + if (lookahead == ':') ADVANCE(33); + if (lookahead == '<') ADVANCE(35); + if (lookahead == '=') ADVANCE(51); + if (lookahead == '>') ADVANCE(36); + if (lookahead == '[') ADVANCE(30); + if (lookahead == ']') ADVANCE(32); + if (lookahead == '`') ADVANCE(9); + if (lookahead == '{') ADVANCE(16); + if (lookahead == '|') ADVANCE(12); + if (lookahead == '}') ADVANCE(17); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(14) if (('A' <= lookahead && lookahead <= 'Z') || - ('_' <= lookahead && lookahead <= 'z')) ADVANCE(24); + ('_' <= lookahead && lookahead <= 'z')) ADVANCE(26); END_STATE(); case 15: ACCEPT_TOKEN(ts_builtin_sym_end); END_STATE(); case 16: - ACCEPT_TOKEN(aux_sym_comment_token1); - if (lookahead == '#') ADVANCE(16); - if (lookahead != 0 && - lookahead != '\n') ADVANCE(17); + ACCEPT_TOKEN(anon_sym_LBRACE); END_STATE(); case 17: - ACCEPT_TOKEN(aux_sym_comment_token1); - if (lookahead != 0 && - lookahead != '\n') ADVANCE(17); + ACCEPT_TOKEN(anon_sym_RBRACE); END_STATE(); case 18: - ACCEPT_TOKEN(anon_sym_LPAREN); + ACCEPT_TOKEN(aux_sym_comment_token1); + if (lookahead == '#') ADVANCE(18); + if (lookahead != 0 && + lookahead != '\n') ADVANCE(19); END_STATE(); case 19: - ACCEPT_TOKEN(anon_sym_RPAREN); + ACCEPT_TOKEN(aux_sym_comment_token1); + if (lookahead != 0 && + lookahead != '\n') ADVANCE(19); END_STATE(); case 20: - ACCEPT_TOKEN(sym_identifier); + ACCEPT_TOKEN(anon_sym_LPAREN); END_STATE(); case 21: - ACCEPT_TOKEN(sym_identifier); - if (lookahead == 'e') ADVANCE(53); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(20); - if (('A' <= lookahead && lookahead <= 'Z') || - lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(24); + ACCEPT_TOKEN(anon_sym_RPAREN); END_STATE(); case 22: ACCEPT_TOKEN(sym_identifier); - if (lookahead == 'l') ADVANCE(23); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(20); - if (('A' <= lookahead && lookahead <= 'Z') || - lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(24); END_STATE(); case 23: ACCEPT_TOKEN(sym_identifier); - if (lookahead == 's') ADVANCE(21); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(20); + if (lookahead == 'e') ADVANCE(56); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(22); if (('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(24); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(26); END_STATE(); case 24: ACCEPT_TOKEN(sym_identifier); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(20); + if (lookahead == 'l') ADVANCE(25); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(22); if (('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(24); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(26); END_STATE(); case 25: - ACCEPT_TOKEN(sym__numeric); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(25); - END_STATE(); - case 26: - ACCEPT_TOKEN(anon_sym_DASH); - if (lookahead == '=') ADVANCE(51); - END_STATE(); - case 27: - ACCEPT_TOKEN(anon_sym_DOT); - if (lookahead == '.') ADVANCE(36); - END_STATE(); - case 28: - ACCEPT_TOKEN(sym_string); - END_STATE(); - case 29: - ACCEPT_TOKEN(anon_sym_LBRACK); - END_STATE(); - case 30: - ACCEPT_TOKEN(anon_sym_COMMA); - END_STATE(); - case 31: - ACCEPT_TOKEN(anon_sym_RBRACK); - END_STATE(); - case 32: - ACCEPT_TOKEN(anon_sym_LBRACE); - END_STATE(); - case 33: - ACCEPT_TOKEN(anon_sym_EQ); - if (lookahead == '=') ADVANCE(44); - END_STATE(); - case 34: - ACCEPT_TOKEN(anon_sym_RBRACE); - END_STATE(); - case 35: - ACCEPT_TOKEN(anon_sym_COLON); - END_STATE(); - case 36: - ACCEPT_TOKEN(anon_sym_DOT_DOT); - END_STATE(); - case 37: - ACCEPT_TOKEN(anon_sym_LT); - if (lookahead == '=') ADVANCE(49); - END_STATE(); - case 38: - ACCEPT_TOKEN(anon_sym_GT); - if (lookahead == '=') ADVANCE(48); - END_STATE(); - case 39: - ACCEPT_TOKEN(anon_sym_PLUS); - if (lookahead == '=') ADVANCE(50); - END_STATE(); - case 40: - ACCEPT_TOKEN(anon_sym_DASH2); - if (lookahead == '=') ADVANCE(51); - END_STATE(); - case 41: - ACCEPT_TOKEN(anon_sym_STAR); - END_STATE(); - case 42: - ACCEPT_TOKEN(anon_sym_SLASH); - END_STATE(); - case 43: - ACCEPT_TOKEN(anon_sym_PERCENT); - END_STATE(); - case 44: - ACCEPT_TOKEN(anon_sym_EQ_EQ); - END_STATE(); - case 45: - ACCEPT_TOKEN(anon_sym_BANG_EQ); - END_STATE(); - case 46: - ACCEPT_TOKEN(anon_sym_AMP_AMP); - END_STATE(); - case 47: - ACCEPT_TOKEN(anon_sym_PIPE_PIPE); - END_STATE(); - case 48: - ACCEPT_TOKEN(anon_sym_GT_EQ); - END_STATE(); - case 49: - ACCEPT_TOKEN(anon_sym_LT_EQ); - END_STATE(); - case 50: - ACCEPT_TOKEN(anon_sym_PLUS_EQ); - END_STATE(); - case 51: - ACCEPT_TOKEN(anon_sym_DASH_EQ); - END_STATE(); - case 52: - ACCEPT_TOKEN(anon_sym_elseif); - END_STATE(); - case 53: - ACCEPT_TOKEN(anon_sym_else); - if (lookahead == ' ') ADVANCE(10); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(20); + ACCEPT_TOKEN(sym_identifier); + if (lookahead == 's') ADVANCE(23); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(22); if (('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(24); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(26); + END_STATE(); + case 26: + ACCEPT_TOKEN(sym_identifier); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(22); + if (('A' <= lookahead && lookahead <= 'Z') || + lookahead == '_' || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(26); + END_STATE(); + case 27: + ACCEPT_TOKEN(aux_sym_integer_token1); + if (lookahead == '.') ADVANCE(13); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(27); + END_STATE(); + case 28: + ACCEPT_TOKEN(aux_sym_float_token1); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(28); + END_STATE(); + case 29: + ACCEPT_TOKEN(sym_string); + END_STATE(); + case 30: + ACCEPT_TOKEN(anon_sym_LBRACK); + END_STATE(); + case 31: + ACCEPT_TOKEN(anon_sym_COMMA); + END_STATE(); + case 32: + ACCEPT_TOKEN(anon_sym_RBRACK); + END_STATE(); + case 33: + ACCEPT_TOKEN(anon_sym_COLON); + END_STATE(); + case 34: + ACCEPT_TOKEN(anon_sym_DOT_DOT); + END_STATE(); + case 35: + ACCEPT_TOKEN(anon_sym_LT); + if (lookahead == '=') ADVANCE(50); + END_STATE(); + case 36: + ACCEPT_TOKEN(anon_sym_GT); + if (lookahead == '=') ADVANCE(49); + END_STATE(); + case 37: + ACCEPT_TOKEN(anon_sym_PLUS); + END_STATE(); + case 38: + ACCEPT_TOKEN(anon_sym_PLUS); + if (lookahead == '=') ADVANCE(53); + END_STATE(); + case 39: + ACCEPT_TOKEN(anon_sym_DASH); + END_STATE(); + case 40: + ACCEPT_TOKEN(anon_sym_DASH); + if (lookahead == '=') ADVANCE(54); + END_STATE(); + case 41: + ACCEPT_TOKEN(anon_sym_DASH); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(27); + if (lookahead == '=') ADVANCE(54); + END_STATE(); + case 42: + ACCEPT_TOKEN(anon_sym_STAR); + END_STATE(); + case 43: + ACCEPT_TOKEN(anon_sym_SLASH); + END_STATE(); + case 44: + ACCEPT_TOKEN(anon_sym_PERCENT); + END_STATE(); + case 45: + ACCEPT_TOKEN(anon_sym_EQ_EQ); + END_STATE(); + case 46: + ACCEPT_TOKEN(anon_sym_BANG_EQ); + END_STATE(); + case 47: + ACCEPT_TOKEN(anon_sym_AMP_AMP); + END_STATE(); + case 48: + ACCEPT_TOKEN(anon_sym_PIPE_PIPE); + END_STATE(); + case 49: + ACCEPT_TOKEN(anon_sym_GT_EQ); + END_STATE(); + case 50: + ACCEPT_TOKEN(anon_sym_LT_EQ); + END_STATE(); + case 51: + ACCEPT_TOKEN(anon_sym_EQ); + if (lookahead == '=') ADVANCE(45); + END_STATE(); + case 52: + ACCEPT_TOKEN(anon_sym_EQ); + if (lookahead == '=') ADVANCE(45); + if (lookahead == '>') ADVANCE(57); + END_STATE(); + case 53: + ACCEPT_TOKEN(anon_sym_PLUS_EQ); + END_STATE(); + case 54: + ACCEPT_TOKEN(anon_sym_DASH_EQ); + END_STATE(); + case 55: + ACCEPT_TOKEN(anon_sym_elseif); + END_STATE(); + case 56: + ACCEPT_TOKEN(anon_sym_else); + if (lookahead == ' ') ADVANCE(11); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(22); + if (('A' <= lookahead && lookahead <= 'Z') || + lookahead == '_' || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(26); + END_STATE(); + case 57: + ACCEPT_TOKEN(anon_sym_EQ_GT); END_STATE(); default: return false; @@ -1606,647 +1634,674 @@ static bool ts_lex_keywords(TSLexer *lexer, TSStateId state) { if (lookahead == 'e') ADVANCE(29); END_STATE(); case 9: - if (lookahead == 'e') ADVANCE(30); - if (lookahead == 'o') ADVANCE(31); + if (lookahead == 'a') ADVANCE(30); + if (lookahead == 'e') ADVANCE(31); + if (lookahead == 'o') ADVANCE(32); END_STATE(); case 10: - if (lookahead == 'u') ADVANCE(32); + if (lookahead == 'u') ADVANCE(33); END_STATE(); case 11: - if (lookahead == 'a') ADVANCE(33); - if (lookahead == 'e') ADVANCE(34); - if (lookahead == 'o') ADVANCE(35); + if (lookahead == 'a') ADVANCE(34); + if (lookahead == 'e') ADVANCE(35); + if (lookahead == 'o') ADVANCE(36); END_STATE(); case 12: - if (lookahead == 'e') ADVANCE(36); - if (lookahead == 'h') ADVANCE(37); + if (lookahead == 'e') ADVANCE(37); + if (lookahead == 'h') ADVANCE(38); END_STATE(); case 13: - if (lookahead == 'a') ADVANCE(38); - if (lookahead == 'o') ADVANCE(39); - if (lookahead == 'r') ADVANCE(40); - if (lookahead == 'y') ADVANCE(41); + if (lookahead == 'a') ADVANCE(39); + if (lookahead == 'o') ADVANCE(40); + if (lookahead == 'r') ADVANCE(41); + if (lookahead == 'y') ADVANCE(42); END_STATE(); case 14: - if (lookahead == 'h') ADVANCE(42); - if (lookahead == 'o') ADVANCE(43); - if (lookahead == 'r') ADVANCE(44); + if (lookahead == 'h') ADVANCE(43); + if (lookahead == 'o') ADVANCE(44); + if (lookahead == 'r') ADVANCE(45); END_STATE(); case 15: - if (lookahead == 's') ADVANCE(45); + if (lookahead == 's') ADVANCE(46); END_STATE(); case 16: - if (lookahead == 'p') ADVANCE(46); + if (lookahead == 'p') ADVANCE(47); END_STATE(); case 17: - if (lookahead == 's') ADVANCE(47); - if (lookahead == 'y') ADVANCE(48); + if (lookahead == 's') ADVANCE(48); + if (lookahead == 'y') ADVANCE(49); END_STATE(); case 18: - if (lookahead == 's') ADVANCE(49); + if (lookahead == 's') ADVANCE(50); END_STATE(); case 19: - if (lookahead == 'l') ADVANCE(50); + if (lookahead == 'l') ADVANCE(51); END_STATE(); case 20: - if (lookahead == 'w') ADVANCE(51); + if (lookahead == 'w') ADVANCE(52); END_STATE(); case 21: - if (lookahead == 'l') ADVANCE(52); + if (lookahead == 'l') ADVANCE(53); END_STATE(); case 22: - if (lookahead == 'l') ADVANCE(53); - if (lookahead == 'n') ADVANCE(54); - if (lookahead == 's') ADVANCE(55); + if (lookahead == 'l') ADVANCE(54); + if (lookahead == 'n') ADVANCE(55); + if (lookahead == 's') ADVANCE(56); END_STATE(); case 23: - if (lookahead == 'r') ADVANCE(56); + if (lookahead == 'r') ADVANCE(57); END_STATE(); case 24: - if (lookahead == 'o') ADVANCE(57); + if (lookahead == 'o') ADVANCE(58); END_STATE(); case 25: - if (lookahead == 'n') ADVANCE(58); + if (lookahead == 'n') ADVANCE(59); END_STATE(); case 26: - if (lookahead == 'l') ADVANCE(59); + if (lookahead == 'l') ADVANCE(60); END_STATE(); case 27: ACCEPT_TOKEN(anon_sym_if); END_STATE(); case 28: ACCEPT_TOKEN(anon_sym_in); - if (lookahead == 's') ADVANCE(60); - if (lookahead == 't') ADVANCE(61); + if (lookahead == 's') ADVANCE(61); + if (lookahead == 't') ADVANCE(62); END_STATE(); case 29: - if (lookahead == 'n') ADVANCE(62); + if (lookahead == 'n') ADVANCE(63); END_STATE(); case 30: - if (lookahead == 't') ADVANCE(63); + if (lookahead == 't') ADVANCE(64); END_STATE(); case 31: - if (lookahead == 'v') ADVANCE(64); - END_STATE(); - case 32: if (lookahead == 't') ADVANCE(65); END_STATE(); + case 32: + if (lookahead == 'v') ADVANCE(66); + END_STATE(); case 33: - if (lookahead == 'n') ADVANCE(66); - if (lookahead == 'w') ADVANCE(67); + if (lookahead == 't') ADVANCE(67); END_STATE(); case 34: - if (lookahead == 'a') ADVANCE(68); - if (lookahead == 'm') ADVANCE(69); - if (lookahead == 'v') ADVANCE(70); + if (lookahead == 'n') ADVANCE(68); + if (lookahead == 'w') ADVANCE(69); END_STATE(); case 35: - if (lookahead == 'w') ADVANCE(71); + if (lookahead == 'a') ADVANCE(70); + if (lookahead == 'd') ADVANCE(71); + if (lookahead == 'm') ADVANCE(72); + if (lookahead == 'v') ADVANCE(73); END_STATE(); case 36: - if (lookahead == 'l') ADVANCE(72); + if (lookahead == 'w') ADVANCE(74); END_STATE(); case 37: - ACCEPT_TOKEN(anon_sym_sh); + if (lookahead == 'l') ADVANCE(75); END_STATE(); case 38: - if (lookahead == 'b') ADVANCE(73); + ACCEPT_TOKEN(anon_sym_sh); END_STATE(); case 39: - if (lookahead == '_') ADVANCE(74); + if (lookahead == 'b') ADVANCE(76); END_STATE(); case 40: - if (lookahead == 'a') ADVANCE(75); - if (lookahead == 'u') ADVANCE(76); + ACCEPT_TOKEN(anon_sym_to); + if (lookahead == '_') ADVANCE(77); END_STATE(); case 41: - if (lookahead == 'p') ADVANCE(77); + if (lookahead == 'a') ADVANCE(78); + if (lookahead == 'u') ADVANCE(79); END_STATE(); case 42: - if (lookahead == 'i') ADVANCE(78); + if (lookahead == 'p') ADVANCE(80); END_STATE(); case 43: - if (lookahead == 'r') ADVANCE(79); + if (lookahead == 'i') ADVANCE(81); END_STATE(); case 44: - if (lookahead == 'i') ADVANCE(80); + if (lookahead == 'r') ADVANCE(82); END_STATE(); case 45: - if (lookahead == 'h') ADVANCE(81); + if (lookahead == 'i') ADVANCE(83); END_STATE(); case 46: - if (lookahead == 'e') ADVANCE(82); + if (lookahead == 'h') ADVANCE(84); END_STATE(); case 47: - if (lookahead == 'e') ADVANCE(83); + if (lookahead == 'e') ADVANCE(85); END_STATE(); case 48: - if (lookahead == 'n') ADVANCE(84); + if (lookahead == 'e') ADVANCE(86); END_STATE(); case 49: - if (lookahead == 'h') ADVANCE(85); - END_STATE(); - case 50: - if (lookahead == 'u') ADVANCE(86); - END_STATE(); - case 51: if (lookahead == 'n') ADVANCE(87); END_STATE(); + case 50: + if (lookahead == 'h') ADVANCE(88); + END_STATE(); + case 51: + if (lookahead == 'u') ADVANCE(89); + END_STATE(); case 52: - if (lookahead == 's') ADVANCE(88); + if (lookahead == 'n') ADVANCE(90); END_STATE(); case 53: - if (lookahead == 't') ADVANCE(89); + if (lookahead == 's') ADVANCE(91); END_STATE(); case 54: - if (lookahead == 'd') ADVANCE(90); + if (lookahead == 't') ADVANCE(92); END_STATE(); case 55: - if (lookahead == 'h') ADVANCE(91); + if (lookahead == 'd') ADVANCE(93); END_STATE(); case 56: - ACCEPT_TOKEN(anon_sym_for); + if (lookahead == 'h') ADVANCE(94); END_STATE(); case 57: - if (lookahead == 'm') ADVANCE(92); + ACCEPT_TOKEN(anon_sym_for); END_STATE(); case 58: - if (lookahead == 'c') ADVANCE(93); + if (lookahead == 'm') ADVANCE(95); END_STATE(); case 59: - if (lookahead == 'p') ADVANCE(94); + if (lookahead == 'c') ADVANCE(96); END_STATE(); case 60: - if (lookahead == 'e') ADVANCE(95); + if (lookahead == 'p') ADVANCE(97); END_STATE(); case 61: - if (lookahead == 'o') ADVANCE(96); + if (lookahead == 'e') ADVANCE(98); END_STATE(); case 62: - if (lookahead == 'g') ADVANCE(97); + if (lookahead == 'o') ADVANCE(99); END_STATE(); case 63: - if (lookahead == 'a') ADVANCE(98); + if (lookahead == 'g') ADVANCE(100); END_STATE(); case 64: - if (lookahead == 'e') ADVANCE(99); + if (lookahead == 'c') ADVANCE(101); END_STATE(); case 65: - if (lookahead == 'p') ADVANCE(100); + if (lookahead == 'a') ADVANCE(102); END_STATE(); case 66: - if (lookahead == 'd') ADVANCE(101); + if (lookahead == 'e') ADVANCE(103); END_STATE(); case 67: - ACCEPT_TOKEN(anon_sym_raw); + if (lookahead == 'p') ADVANCE(104); END_STATE(); case 68: - if (lookahead == 'd') ADVANCE(102); + if (lookahead == 'd') ADVANCE(105); END_STATE(); case 69: - if (lookahead == 'o') ADVANCE(103); + ACCEPT_TOKEN(anon_sym_raw); END_STATE(); case 70: - if (lookahead == 'e') ADVANCE(104); + if (lookahead == 'd') ADVANCE(106); END_STATE(); case 71: - if (lookahead == 's') ADVANCE(105); + if (lookahead == 'u') ADVANCE(107); END_STATE(); case 72: - if (lookahead == 'e') ADVANCE(106); + if (lookahead == 'o') ADVANCE(108); END_STATE(); case 73: - if (lookahead == 'l') ADVANCE(107); + if (lookahead == 'e') ADVANCE(109); END_STATE(); case 74: - if (lookahead == 'f') ADVANCE(108); - if (lookahead == 'j') ADVANCE(109); if (lookahead == 's') ADVANCE(110); END_STATE(); case 75: - if (lookahead == 'n') ADVANCE(111); + if (lookahead == 'e') ADVANCE(111); END_STATE(); case 76: - if (lookahead == 'e') ADVANCE(112); + if (lookahead == 'l') ADVANCE(112); END_STATE(); case 77: - if (lookahead == 'e') ADVANCE(113); + if (lookahead == 'f') ADVANCE(113); + if (lookahead == 'j') ADVANCE(114); + if (lookahead == 's') ADVANCE(115); END_STATE(); case 78: - if (lookahead == 'l') ADVANCE(114); + if (lookahead == 'n') ADVANCE(116); END_STATE(); case 79: - if (lookahead == 'k') ADVANCE(115); + if (lookahead == 'e') ADVANCE(117); END_STATE(); case 80: - if (lookahead == 't') ADVANCE(116); + if (lookahead == 'e') ADVANCE(118); END_STATE(); case 81: - ACCEPT_TOKEN(anon_sym_zsh); + if (lookahead == 'l') ADVANCE(119); END_STATE(); case 82: - if (lookahead == 'n') ADVANCE(117); + if (lookahead == 'k') ADVANCE(120); END_STATE(); case 83: - if (lookahead == 'r') ADVANCE(118); + if (lookahead == 't') ADVANCE(121); END_STATE(); case 84: - if (lookahead == 'c') ADVANCE(119); + ACCEPT_TOKEN(anon_sym_zsh); END_STATE(); case 85: - ACCEPT_TOKEN(anon_sym_bash); + if (lookahead == 'n') ADVANCE(122); END_STATE(); case 86: - if (lookahead == 'm') ADVANCE(120); + if (lookahead == 'r') ADVANCE(123); END_STATE(); case 87: - if (lookahead == 'l') ADVANCE(121); + if (lookahead == 'c') ADVANCE(124); END_STATE(); case 88: - if (lookahead == 'e') ADVANCE(122); + ACCEPT_TOKEN(anon_sym_bash); END_STATE(); case 89: - if (lookahead == 'e') ADVANCE(123); + if (lookahead == 'm') ADVANCE(125); END_STATE(); case 90: - ACCEPT_TOKEN(anon_sym_find); + if (lookahead == 'l') ADVANCE(126); END_STATE(); case 91: - ACCEPT_TOKEN(anon_sym_fish); + if (lookahead == 'e') ADVANCE(127); END_STATE(); case 92: - ACCEPT_TOKEN(anon_sym_from); - if (lookahead == '_') ADVANCE(124); + if (lookahead == 'e') ADVANCE(128); END_STATE(); case 93: - if (lookahead == 't') ADVANCE(125); + ACCEPT_TOKEN(anon_sym_find); END_STATE(); case 94: - ACCEPT_TOKEN(anon_sym_help); + ACCEPT_TOKEN(anon_sym_fish); END_STATE(); case 95: - if (lookahead == 'r') ADVANCE(126); + ACCEPT_TOKEN(anon_sym_from); + if (lookahead == '_') ADVANCE(129); END_STATE(); case 96: - ACCEPT_TOKEN(anon_sym_into); + if (lookahead == 't') ADVANCE(130); END_STATE(); case 97: - if (lookahead == 't') ADVANCE(127); + ACCEPT_TOKEN(anon_sym_help); END_STATE(); case 98: - if (lookahead == 'd') ADVANCE(128); + if (lookahead == 'r') ADVANCE(131); END_STATE(); case 99: - ACCEPT_TOKEN(anon_sym_move); + ACCEPT_TOKEN(anon_sym_into); END_STATE(); case 100: - if (lookahead == 'u') ADVANCE(129); + if (lookahead == 't') ADVANCE(132); END_STATE(); case 101: - if (lookahead == 'o') ADVANCE(130); + if (lookahead == 'h') ADVANCE(133); END_STATE(); case 102: - ACCEPT_TOKEN(anon_sym_read); + if (lookahead == 'd') ADVANCE(134); END_STATE(); case 103: - if (lookahead == 'v') ADVANCE(131); + ACCEPT_TOKEN(anon_sym_move); END_STATE(); case 104: - if (lookahead == 'r') ADVANCE(132); + if (lookahead == 'u') ADVANCE(135); END_STATE(); case 105: - ACCEPT_TOKEN(anon_sym_rows); + if (lookahead == 'o') ADVANCE(136); END_STATE(); case 106: - if (lookahead == 'c') ADVANCE(133); + ACCEPT_TOKEN(anon_sym_read); END_STATE(); case 107: - if (lookahead == 'e') ADVANCE(134); + if (lookahead == 'c') ADVANCE(137); END_STATE(); case 108: - if (lookahead == 'l') ADVANCE(135); + if (lookahead == 'v') ADVANCE(138); END_STATE(); case 109: - if (lookahead == 's') ADVANCE(136); + if (lookahead == 'r') ADVANCE(139); END_STATE(); case 110: - if (lookahead == 't') ADVANCE(137); + ACCEPT_TOKEN(anon_sym_rows); END_STATE(); case 111: - if (lookahead == 's') ADVANCE(138); + if (lookahead == 'c') ADVANCE(140); END_STATE(); case 112: - ACCEPT_TOKEN(anon_sym_true); - END_STATE(); - case 113: - ACCEPT_TOKEN(anon_sym_type); - END_STATE(); - case 114: - if (lookahead == 'e') ADVANCE(139); - END_STATE(); - case 115: - if (lookahead == 'd') ADVANCE(140); - END_STATE(); - case 116: if (lookahead == 'e') ADVANCE(141); END_STATE(); + case 113: + if (lookahead == 'l') ADVANCE(142); + END_STATE(); + case 114: + if (lookahead == 's') ADVANCE(143); + END_STATE(); + case 115: + if (lookahead == 't') ADVANCE(144); + END_STATE(); + case 116: + if (lookahead == 's') ADVANCE(145); + END_STATE(); case 117: - if (lookahead == 'd') ADVANCE(142); + ACCEPT_TOKEN(anon_sym_true); END_STATE(); case 118: - if (lookahead == 't') ADVANCE(143); + ACCEPT_TOKEN(anon_sym_type); END_STATE(); case 119: - ACCEPT_TOKEN(anon_sym_async); + if (lookahead == 'e') ADVANCE(146); END_STATE(); case 120: - if (lookahead == 'n') ADVANCE(144); + if (lookahead == 'd') ADVANCE(147); END_STATE(); case 121: - if (lookahead == 'o') ADVANCE(145); + if (lookahead == 'e') ADVANCE(148); END_STATE(); case 122: - ACCEPT_TOKEN(anon_sym_false); + if (lookahead == 'd') ADVANCE(149); END_STATE(); case 123: - if (lookahead == 'r') ADVANCE(146); + if (lookahead == 't') ADVANCE(150); END_STATE(); case 124: - if (lookahead == 'j') ADVANCE(147); + ACCEPT_TOKEN(anon_sym_async); END_STATE(); case 125: - if (lookahead == 'i') ADVANCE(148); + if (lookahead == 'n') ADVANCE(151); END_STATE(); case 126: - if (lookahead == 't') ADVANCE(149); + if (lookahead == 'o') ADVANCE(152); END_STATE(); case 127: - if (lookahead == 'h') ADVANCE(150); + ACCEPT_TOKEN(anon_sym_false); END_STATE(); case 128: - if (lookahead == 'a') ADVANCE(151); + if (lookahead == 'r') ADVANCE(153); END_STATE(); case 129: - if (lookahead == 't') ADVANCE(152); + if (lookahead == 'j') ADVANCE(154); END_STATE(); case 130: - if (lookahead == 'm') ADVANCE(153); + if (lookahead == 'i') ADVANCE(155); END_STATE(); case 131: - if (lookahead == 'e') ADVANCE(154); - END_STATE(); - case 132: - if (lookahead == 's') ADVANCE(155); - END_STATE(); - case 133: if (lookahead == 't') ADVANCE(156); END_STATE(); + case 132: + if (lookahead == 'h') ADVANCE(157); + END_STATE(); + case 133: + ACCEPT_TOKEN(anon_sym_match); + END_STATE(); case 134: - ACCEPT_TOKEN(anon_sym_table); + if (lookahead == 'a') ADVANCE(158); END_STATE(); case 135: - if (lookahead == 'o') ADVANCE(157); + if (lookahead == 't') ADVANCE(159); END_STATE(); case 136: - if (lookahead == 'o') ADVANCE(158); + if (lookahead == 'm') ADVANCE(160); END_STATE(); case 137: - if (lookahead == 'r') ADVANCE(159); + if (lookahead == 'e') ADVANCE(161); END_STATE(); case 138: - if (lookahead == 'f') ADVANCE(160); + if (lookahead == 'e') ADVANCE(162); END_STATE(); case 139: - ACCEPT_TOKEN(anon_sym_while); - END_STATE(); - case 140: - if (lookahead == 'i') ADVANCE(161); - END_STATE(); - case 141: - ACCEPT_TOKEN(anon_sym_write); - END_STATE(); - case 142: - ACCEPT_TOKEN(anon_sym_append); - END_STATE(); - case 143: - ACCEPT_TOKEN(anon_sym_assert); - if (lookahead == '_') ADVANCE(162); - END_STATE(); - case 144: if (lookahead == 's') ADVANCE(163); END_STATE(); - case 145: - if (lookahead == 'a') ADVANCE(164); + case 140: + if (lookahead == 't') ADVANCE(164); END_STATE(); - case 146: - ACCEPT_TOKEN(anon_sym_filter); + case 141: + ACCEPT_TOKEN(anon_sym_table); END_STATE(); - case 147: - if (lookahead == 's') ADVANCE(165); + case 142: + if (lookahead == 'o') ADVANCE(165); END_STATE(); - case 148: + case 143: if (lookahead == 'o') ADVANCE(166); END_STATE(); + case 144: + if (lookahead == 'r') ADVANCE(167); + END_STATE(); + case 145: + if (lookahead == 'f') ADVANCE(168); + END_STATE(); + case 146: + ACCEPT_TOKEN(anon_sym_while); + END_STATE(); + case 147: + if (lookahead == 'i') ADVANCE(169); + END_STATE(); + case 148: + ACCEPT_TOKEN(anon_sym_write); + END_STATE(); case 149: - ACCEPT_TOKEN(anon_sym_insert); + ACCEPT_TOKEN(anon_sym_append); END_STATE(); case 150: - ACCEPT_TOKEN(anon_sym_length); + ACCEPT_TOKEN(anon_sym_assert); + if (lookahead == '_') ADVANCE(170); END_STATE(); case 151: - if (lookahead == 't') ADVANCE(167); + if (lookahead == 's') ADVANCE(171); END_STATE(); case 152: - ACCEPT_TOKEN(anon_sym_output); - if (lookahead == '_') ADVANCE(168); + if (lookahead == 'a') ADVANCE(172); END_STATE(); case 153: - ACCEPT_TOKEN(anon_sym_random); - if (lookahead == '_') ADVANCE(169); + ACCEPT_TOKEN(anon_sym_filter); END_STATE(); case 154: - ACCEPT_TOKEN(anon_sym_remove); + if (lookahead == 's') ADVANCE(173); END_STATE(); case 155: - if (lookahead == 'e') ADVANCE(170); - END_STATE(); - case 156: - ACCEPT_TOKEN(anon_sym_select); - END_STATE(); - case 157: - if (lookahead == 'a') ADVANCE(171); - END_STATE(); - case 158: - if (lookahead == 'n') ADVANCE(172); - END_STATE(); - case 159: - if (lookahead == 'i') ADVANCE(173); - END_STATE(); - case 160: if (lookahead == 'o') ADVANCE(174); END_STATE(); + case 156: + ACCEPT_TOKEN(anon_sym_insert); + END_STATE(); + case 157: + ACCEPT_TOKEN(anon_sym_length); + END_STATE(); + case 158: + if (lookahead == 't') ADVANCE(175); + END_STATE(); + case 159: + ACCEPT_TOKEN(anon_sym_output); + if (lookahead == '_') ADVANCE(176); + END_STATE(); + case 160: + ACCEPT_TOKEN(anon_sym_random); + if (lookahead == '_') ADVANCE(177); + END_STATE(); case 161: - if (lookahead == 'r') ADVANCE(175); + ACCEPT_TOKEN(anon_sym_reduce); END_STATE(); case 162: - if (lookahead == 'e') ADVANCE(176); + ACCEPT_TOKEN(anon_sym_remove); END_STATE(); case 163: - ACCEPT_TOKEN(anon_sym_columns); + if (lookahead == 'e') ADVANCE(178); END_STATE(); case 164: - if (lookahead == 'd') ADVANCE(177); + ACCEPT_TOKEN(anon_sym_select); END_STATE(); case 165: - if (lookahead == 'o') ADVANCE(178); + if (lookahead == 'a') ADVANCE(179); END_STATE(); case 166: - if (lookahead == 'n') ADVANCE(179); + if (lookahead == 'n') ADVANCE(180); END_STATE(); case 167: - if (lookahead == 'a') ADVANCE(180); + if (lookahead == 'i') ADVANCE(181); END_STATE(); case 168: - if (lookahead == 'e') ADVANCE(181); + if (lookahead == 'o') ADVANCE(182); END_STATE(); case 169: - if (lookahead == 'b') ADVANCE(182); - if (lookahead == 'f') ADVANCE(183); - if (lookahead == 'i') ADVANCE(184); + if (lookahead == 'r') ADVANCE(183); END_STATE(); case 170: - ACCEPT_TOKEN(anon_sym_reverse); + if (lookahead == 'e') ADVANCE(184); END_STATE(); case 171: - if (lookahead == 't') ADVANCE(185); + ACCEPT_TOKEN(anon_sym_columns); END_STATE(); case 172: - ACCEPT_TOKEN(anon_sym_to_json); + if (lookahead == 'd') ADVANCE(185); END_STATE(); case 173: - if (lookahead == 'n') ADVANCE(186); + if (lookahead == 'o') ADVANCE(186); END_STATE(); case 174: - if (lookahead == 'r') ADVANCE(187); + if (lookahead == 'n') ADVANCE(187); END_STATE(); case 175: - ACCEPT_TOKEN(anon_sym_workdir); + if (lookahead == 'a') ADVANCE(188); END_STATE(); case 176: - if (lookahead == 'q') ADVANCE(188); + if (lookahead == 'e') ADVANCE(189); END_STATE(); case 177: - ACCEPT_TOKEN(anon_sym_download); + if (lookahead == 'b') ADVANCE(190); + if (lookahead == 'f') ADVANCE(191); + if (lookahead == 'i') ADVANCE(192); END_STATE(); case 178: - if (lookahead == 'n') ADVANCE(189); + ACCEPT_TOKEN(anon_sym_reverse); END_STATE(); case 179: - ACCEPT_TOKEN(anon_sym_function); + if (lookahead == 't') ADVANCE(193); END_STATE(); case 180: - ACCEPT_TOKEN(anon_sym_metadata); + ACCEPT_TOKEN(anon_sym_to_json); END_STATE(); case 181: - if (lookahead == 'r') ADVANCE(190); + if (lookahead == 'n') ADVANCE(194); END_STATE(); case 182: - if (lookahead == 'o') ADVANCE(191); + if (lookahead == 'r') ADVANCE(195); END_STATE(); case 183: - if (lookahead == 'l') ADVANCE(192); + ACCEPT_TOKEN(anon_sym_workdir); END_STATE(); case 184: - if (lookahead == 'n') ADVANCE(193); + if (lookahead == 'q') ADVANCE(196); END_STATE(); case 185: - ACCEPT_TOKEN(anon_sym_to_float); + ACCEPT_TOKEN(anon_sym_download); END_STATE(); case 186: - if (lookahead == 'g') ADVANCE(194); + if (lookahead == 'n') ADVANCE(197); END_STATE(); case 187: - if (lookahead == 'm') ADVANCE(195); + ACCEPT_TOKEN(anon_sym_function); END_STATE(); case 188: - if (lookahead == 'u') ADVANCE(196); + ACCEPT_TOKEN(anon_sym_metadata); END_STATE(); case 189: - ACCEPT_TOKEN(anon_sym_from_json); + if (lookahead == 'r') ADVANCE(198); END_STATE(); case 190: - if (lookahead == 'r') ADVANCE(197); - END_STATE(); - case 191: - if (lookahead == 'o') ADVANCE(198); - END_STATE(); - case 192: if (lookahead == 'o') ADVANCE(199); END_STATE(); + case 191: + if (lookahead == 'l') ADVANCE(200); + END_STATE(); + case 192: + if (lookahead == 'n') ADVANCE(201); + END_STATE(); case 193: - if (lookahead == 't') ADVANCE(200); + ACCEPT_TOKEN(anon_sym_to_float); END_STATE(); case 194: - ACCEPT_TOKEN(anon_sym_to_string); + if (lookahead == 'g') ADVANCE(202); END_STATE(); case 195: - ACCEPT_TOKEN(anon_sym_transform); + if (lookahead == 'm') ADVANCE(203); END_STATE(); case 196: - if (lookahead == 'a') ADVANCE(201); + if (lookahead == 'u') ADVANCE(204); END_STATE(); case 197: - if (lookahead == 'o') ADVANCE(202); + ACCEPT_TOKEN(anon_sym_from_json); END_STATE(); case 198: - if (lookahead == 'l') ADVANCE(203); + if (lookahead == 'r') ADVANCE(205); END_STATE(); case 199: - if (lookahead == 'a') ADVANCE(204); + if (lookahead == 'o') ADVANCE(206); END_STATE(); case 200: - if (lookahead == 'e') ADVANCE(205); + if (lookahead == 'o') ADVANCE(207); END_STATE(); case 201: - if (lookahead == 'l') ADVANCE(206); + if (lookahead == 't') ADVANCE(208); END_STATE(); case 202: - if (lookahead == 'r') ADVANCE(207); + ACCEPT_TOKEN(anon_sym_to_string); END_STATE(); case 203: - if (lookahead == 'e') ADVANCE(208); + ACCEPT_TOKEN(anon_sym_transform); END_STATE(); case 204: - if (lookahead == 't') ADVANCE(209); + if (lookahead == 'a') ADVANCE(209); END_STATE(); case 205: - if (lookahead == 'g') ADVANCE(210); + if (lookahead == 'o') ADVANCE(210); END_STATE(); case 206: - ACCEPT_TOKEN(anon_sym_assert_equal); + if (lookahead == 'l') ADVANCE(211); END_STATE(); case 207: - ACCEPT_TOKEN(anon_sym_output_error); + if (lookahead == 'a') ADVANCE(212); END_STATE(); case 208: - if (lookahead == 'a') ADVANCE(211); + if (lookahead == 'e') ADVANCE(213); END_STATE(); case 209: - ACCEPT_TOKEN(anon_sym_random_float); + if (lookahead == 'l') ADVANCE(214); END_STATE(); case 210: - if (lookahead == 'e') ADVANCE(212); + if (lookahead == 'r') ADVANCE(215); END_STATE(); case 211: - if (lookahead == 'n') ADVANCE(213); + if (lookahead == 'e') ADVANCE(216); END_STATE(); case 212: - if (lookahead == 'r') ADVANCE(214); + if (lookahead == 't') ADVANCE(217); END_STATE(); case 213: - ACCEPT_TOKEN(anon_sym_random_boolean); + if (lookahead == 'g') ADVANCE(218); END_STATE(); case 214: + ACCEPT_TOKEN(anon_sym_assert_equal); + END_STATE(); + case 215: + ACCEPT_TOKEN(anon_sym_output_error); + END_STATE(); + case 216: + if (lookahead == 'a') ADVANCE(219); + END_STATE(); + case 217: + ACCEPT_TOKEN(anon_sym_random_float); + END_STATE(); + case 218: + if (lookahead == 'e') ADVANCE(220); + END_STATE(); + case 219: + if (lookahead == 'n') ADVANCE(221); + END_STATE(); + case 220: + if (lookahead == 'r') ADVANCE(222); + END_STATE(); + case 221: + ACCEPT_TOKEN(anon_sym_random_boolean); + END_STATE(); + case 222: ACCEPT_TOKEN(anon_sym_random_integer); END_STATE(); default: @@ -2256,149 +2311,149 @@ static bool ts_lex_keywords(TSLexer *lexer, TSStateId state) { static const TSLexMode ts_lex_modes[STATE_COUNT] = { [0] = {.lex_state = 0}, - [1] = {.lex_state = 12}, - [2] = {.lex_state = 12}, - [3] = {.lex_state = 12}, - [4] = {.lex_state = 12}, - [5] = {.lex_state = 12}, - [6] = {.lex_state = 12}, - [7] = {.lex_state = 12}, - [8] = {.lex_state = 12}, - [9] = {.lex_state = 12}, - [10] = {.lex_state = 12}, - [11] = {.lex_state = 12}, - [12] = {.lex_state = 12}, - [13] = {.lex_state = 12}, - [14] = {.lex_state = 12}, - [15] = {.lex_state = 12}, - [16] = {.lex_state = 12}, - [17] = {.lex_state = 12}, - [18] = {.lex_state = 12}, - [19] = {.lex_state = 12}, - [20] = {.lex_state = 12}, - [21] = {.lex_state = 12}, - [22] = {.lex_state = 12}, - [23] = {.lex_state = 12}, - [24] = {.lex_state = 12}, - [25] = {.lex_state = 12}, - [26] = {.lex_state = 12}, - [27] = {.lex_state = 12}, - [28] = {.lex_state = 12}, - [29] = {.lex_state = 12}, - [30] = {.lex_state = 12}, - [31] = {.lex_state = 12}, - [32] = {.lex_state = 12}, - [33] = {.lex_state = 12}, - [34] = {.lex_state = 12}, - [35] = {.lex_state = 12}, - [36] = {.lex_state = 12}, - [37] = {.lex_state = 12}, - [38] = {.lex_state = 12}, - [39] = {.lex_state = 12}, - [40] = {.lex_state = 12}, - [41] = {.lex_state = 12}, - [42] = {.lex_state = 12}, - [43] = {.lex_state = 12}, - [44] = {.lex_state = 12}, - [45] = {.lex_state = 12}, - [46] = {.lex_state = 12}, - [47] = {.lex_state = 12}, - [48] = {.lex_state = 12}, - [49] = {.lex_state = 12}, - [50] = {.lex_state = 12}, - [51] = {.lex_state = 12}, - [52] = {.lex_state = 12}, - [53] = {.lex_state = 12}, - [54] = {.lex_state = 12}, - [55] = {.lex_state = 12}, - [56] = {.lex_state = 12}, - [57] = {.lex_state = 12}, - [58] = {.lex_state = 12}, - [59] = {.lex_state = 12}, - [60] = {.lex_state = 12}, - [61] = {.lex_state = 12}, - [62] = {.lex_state = 12}, - [63] = {.lex_state = 12}, - [64] = {.lex_state = 12}, - [65] = {.lex_state = 12}, - [66] = {.lex_state = 12}, - [67] = {.lex_state = 0}, + [1] = {.lex_state = 14}, + [2] = {.lex_state = 14}, + [3] = {.lex_state = 14}, + [4] = {.lex_state = 14}, + [5] = {.lex_state = 14}, + [6] = {.lex_state = 14}, + [7] = {.lex_state = 14}, + [8] = {.lex_state = 14}, + [9] = {.lex_state = 14}, + [10] = {.lex_state = 14}, + [11] = {.lex_state = 14}, + [12] = {.lex_state = 14}, + [13] = {.lex_state = 14}, + [14] = {.lex_state = 14}, + [15] = {.lex_state = 14}, + [16] = {.lex_state = 14}, + [17] = {.lex_state = 14}, + [18] = {.lex_state = 14}, + [19] = {.lex_state = 14}, + [20] = {.lex_state = 14}, + [21] = {.lex_state = 14}, + [22] = {.lex_state = 14}, + [23] = {.lex_state = 14}, + [24] = {.lex_state = 14}, + [25] = {.lex_state = 14}, + [26] = {.lex_state = 14}, + [27] = {.lex_state = 14}, + [28] = {.lex_state = 14}, + [29] = {.lex_state = 14}, + [30] = {.lex_state = 14}, + [31] = {.lex_state = 14}, + [32] = {.lex_state = 14}, + [33] = {.lex_state = 14}, + [34] = {.lex_state = 14}, + [35] = {.lex_state = 14}, + [36] = {.lex_state = 14}, + [37] = {.lex_state = 14}, + [38] = {.lex_state = 14}, + [39] = {.lex_state = 14}, + [40] = {.lex_state = 14}, + [41] = {.lex_state = 14}, + [42] = {.lex_state = 14}, + [43] = {.lex_state = 14}, + [44] = {.lex_state = 14}, + [45] = {.lex_state = 14}, + [46] = {.lex_state = 14}, + [47] = {.lex_state = 14}, + [48] = {.lex_state = 14}, + [49] = {.lex_state = 14}, + [50] = {.lex_state = 14}, + [51] = {.lex_state = 14}, + [52] = {.lex_state = 14}, + [53] = {.lex_state = 14}, + [54] = {.lex_state = 14}, + [55] = {.lex_state = 14}, + [56] = {.lex_state = 14}, + [57] = {.lex_state = 14}, + [58] = {.lex_state = 14}, + [59] = {.lex_state = 14}, + [60] = {.lex_state = 14}, + [61] = {.lex_state = 14}, + [62] = {.lex_state = 14}, + [63] = {.lex_state = 14}, + [64] = {.lex_state = 14}, + [65] = {.lex_state = 14}, + [66] = {.lex_state = 14}, + [67] = {.lex_state = 14}, [68] = {.lex_state = 0}, - [69] = {.lex_state = 12}, - [70] = {.lex_state = 12}, - [71] = {.lex_state = 12}, - [72] = {.lex_state = 12}, - [73] = {.lex_state = 0}, - [74] = {.lex_state = 12}, - [75] = {.lex_state = 12}, - [76] = {.lex_state = 12}, - [77] = {.lex_state = 12}, - [78] = {.lex_state = 12}, - [79] = {.lex_state = 12}, - [80] = {.lex_state = 12}, - [81] = {.lex_state = 12}, - [82] = {.lex_state = 12}, - [83] = {.lex_state = 12}, - [84] = {.lex_state = 12}, - [85] = {.lex_state = 12}, - [86] = {.lex_state = 12}, - [87] = {.lex_state = 12}, - [88] = {.lex_state = 12}, - [89] = {.lex_state = 12}, - [90] = {.lex_state = 12}, - [91] = {.lex_state = 12}, - [92] = {.lex_state = 12}, - [93] = {.lex_state = 12}, - [94] = {.lex_state = 0}, - [95] = {.lex_state = 12}, - [96] = {.lex_state = 12}, - [97] = {.lex_state = 12}, - [98] = {.lex_state = 12}, - [99] = {.lex_state = 12}, - [100] = {.lex_state = 12}, - [101] = {.lex_state = 12}, - [102] = {.lex_state = 12}, - [103] = {.lex_state = 12}, - [104] = {.lex_state = 12}, - [105] = {.lex_state = 12}, - [106] = {.lex_state = 12}, - [107] = {.lex_state = 12}, - [108] = {.lex_state = 12}, - [109] = {.lex_state = 0}, - [110] = {.lex_state = 12}, - [111] = {.lex_state = 12}, - [112] = {.lex_state = 12}, - [113] = {.lex_state = 12}, - [114] = {.lex_state = 12}, - [115] = {.lex_state = 12}, - [116] = {.lex_state = 12}, - [117] = {.lex_state = 12}, - [118] = {.lex_state = 12}, - [119] = {.lex_state = 12}, - [120] = {.lex_state = 12}, - [121] = {.lex_state = 12}, - [122] = {.lex_state = 12}, - [123] = {.lex_state = 12}, - [124] = {.lex_state = 12}, - [125] = {.lex_state = 12}, - [126] = {.lex_state = 12}, - [127] = {.lex_state = 12}, - [128] = {.lex_state = 12}, - [129] = {.lex_state = 12}, - [130] = {.lex_state = 12}, - [131] = {.lex_state = 12}, - [132] = {.lex_state = 12}, - [133] = {.lex_state = 1}, - [134] = {.lex_state = 1}, - [135] = {.lex_state = 1}, - [136] = {.lex_state = 1}, - [137] = {.lex_state = 1}, - [138] = {.lex_state = 1}, - [139] = {.lex_state = 1}, - [140] = {.lex_state = 1}, - [141] = {.lex_state = 1}, - [142] = {.lex_state = 1}, - [143] = {.lex_state = 1}, + [69] = {.lex_state = 0}, + [70] = {.lex_state = 0}, + [71] = {.lex_state = 14}, + [72] = {.lex_state = 14}, + [73] = {.lex_state = 14}, + [74] = {.lex_state = 14}, + [75] = {.lex_state = 14}, + [76] = {.lex_state = 14}, + [77] = {.lex_state = 14}, + [78] = {.lex_state = 14}, + [79] = {.lex_state = 14}, + [80] = {.lex_state = 14}, + [81] = {.lex_state = 14}, + [82] = {.lex_state = 14}, + [83] = {.lex_state = 0}, + [84] = {.lex_state = 14}, + [85] = {.lex_state = 0}, + [86] = {.lex_state = 14}, + [87] = {.lex_state = 14}, + [88] = {.lex_state = 14}, + [89] = {.lex_state = 14}, + [90] = {.lex_state = 14}, + [91] = {.lex_state = 14}, + [92] = {.lex_state = 14}, + [93] = {.lex_state = 14}, + [94] = {.lex_state = 14}, + [95] = {.lex_state = 14}, + [96] = {.lex_state = 14}, + [97] = {.lex_state = 14}, + [98] = {.lex_state = 14}, + [99] = {.lex_state = 14}, + [100] = {.lex_state = 14}, + [101] = {.lex_state = 14}, + [102] = {.lex_state = 14}, + [103] = {.lex_state = 14}, + [104] = {.lex_state = 14}, + [105] = {.lex_state = 14}, + [106] = {.lex_state = 14}, + [107] = {.lex_state = 14}, + [108] = {.lex_state = 14}, + [109] = {.lex_state = 14}, + [110] = {.lex_state = 14}, + [111] = {.lex_state = 14}, + [112] = {.lex_state = 14}, + [113] = {.lex_state = 14}, + [114] = {.lex_state = 14}, + [115] = {.lex_state = 14}, + [116] = {.lex_state = 14}, + [117] = {.lex_state = 14}, + [118] = {.lex_state = 14}, + [119] = {.lex_state = 14}, + [120] = {.lex_state = 14}, + [121] = {.lex_state = 14}, + [122] = {.lex_state = 14}, + [123] = {.lex_state = 14}, + [124] = {.lex_state = 14}, + [125] = {.lex_state = 14}, + [126] = {.lex_state = 14}, + [127] = {.lex_state = 14}, + [128] = {.lex_state = 14}, + [129] = {.lex_state = 14}, + [130] = {.lex_state = 14}, + [131] = {.lex_state = 14}, + [132] = {.lex_state = 14}, + [133] = {.lex_state = 14}, + [134] = {.lex_state = 14}, + [135] = {.lex_state = 14}, + [136] = {.lex_state = 14}, + [137] = {.lex_state = 14}, + [138] = {.lex_state = 14}, + [139] = {.lex_state = 14}, + [140] = {.lex_state = 14}, + [141] = {.lex_state = 14}, + [142] = {.lex_state = 14}, + [143] = {.lex_state = 14}, [144] = {.lex_state = 1}, [145] = {.lex_state = 1}, [146] = {.lex_state = 1}, @@ -2425,7 +2480,7 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [167] = {.lex_state = 1}, [168] = {.lex_state = 1}, [169] = {.lex_state = 1}, - [170] = {.lex_state = 1}, + [170] = {.lex_state = 2}, [171] = {.lex_state = 1}, [172] = {.lex_state = 1}, [173] = {.lex_state = 1}, @@ -2434,71 +2489,71 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [176] = {.lex_state = 1}, [177] = {.lex_state = 1}, [178] = {.lex_state = 1}, - [179] = {.lex_state = 12}, - [180] = {.lex_state = 12}, - [181] = {.lex_state = 12}, - [182] = {.lex_state = 12}, - [183] = {.lex_state = 12}, - [184] = {.lex_state = 12}, - [185] = {.lex_state = 12}, - [186] = {.lex_state = 12}, - [187] = {.lex_state = 12}, - [188] = {.lex_state = 12}, - [189] = {.lex_state = 12}, - [190] = {.lex_state = 12}, - [191] = {.lex_state = 12}, - [192] = {.lex_state = 12}, - [193] = {.lex_state = 12}, - [194] = {.lex_state = 12}, - [195] = {.lex_state = 12}, - [196] = {.lex_state = 12}, - [197] = {.lex_state = 12}, - [198] = {.lex_state = 12}, - [199] = {.lex_state = 12}, - [200] = {.lex_state = 12}, - [201] = {.lex_state = 12}, - [202] = {.lex_state = 12}, - [203] = {.lex_state = 12}, - [204] = {.lex_state = 0}, - [205] = {.lex_state = 12}, - [206] = {.lex_state = 0}, - [207] = {.lex_state = 12}, - [208] = {.lex_state = 12}, - [209] = {.lex_state = 0}, - [210] = {.lex_state = 0}, - [211] = {.lex_state = 0}, - [212] = {.lex_state = 12}, + [179] = {.lex_state = 1}, + [180] = {.lex_state = 1}, + [181] = {.lex_state = 1}, + [182] = {.lex_state = 1}, + [183] = {.lex_state = 1}, + [184] = {.lex_state = 1}, + [185] = {.lex_state = 1}, + [186] = {.lex_state = 1}, + [187] = {.lex_state = 1}, + [188] = {.lex_state = 1}, + [189] = {.lex_state = 1}, + [190] = {.lex_state = 1}, + [191] = {.lex_state = 1}, + [192] = {.lex_state = 14}, + [193] = {.lex_state = 14}, + [194] = {.lex_state = 14}, + [195] = {.lex_state = 14}, + [196] = {.lex_state = 14}, + [197] = {.lex_state = 14}, + [198] = {.lex_state = 14}, + [199] = {.lex_state = 14}, + [200] = {.lex_state = 14}, + [201] = {.lex_state = 14}, + [202] = {.lex_state = 14}, + [203] = {.lex_state = 14}, + [204] = {.lex_state = 14}, + [205] = {.lex_state = 14}, + [206] = {.lex_state = 14}, + [207] = {.lex_state = 14}, + [208] = {.lex_state = 14}, + [209] = {.lex_state = 14}, + [210] = {.lex_state = 14}, + [211] = {.lex_state = 14}, + [212] = {.lex_state = 0}, [213] = {.lex_state = 0}, - [214] = {.lex_state = 0}, - [215] = {.lex_state = 12}, - [216] = {.lex_state = 12}, - [217] = {.lex_state = 0}, - [218] = {.lex_state = 12}, - [219] = {.lex_state = 12}, - [220] = {.lex_state = 0}, + [214] = {.lex_state = 14}, + [215] = {.lex_state = 14}, + [216] = {.lex_state = 14}, + [217] = {.lex_state = 14}, + [218] = {.lex_state = 14}, + [219] = {.lex_state = 14}, + [220] = {.lex_state = 14}, [221] = {.lex_state = 0}, - [222] = {.lex_state = 0}, - [223] = {.lex_state = 12}, - [224] = {.lex_state = 12}, - [225] = {.lex_state = 12}, + [222] = {.lex_state = 14}, + [223] = {.lex_state = 14}, + [224] = {.lex_state = 14}, + [225] = {.lex_state = 14}, [226] = {.lex_state = 0}, - [227] = {.lex_state = 0}, - [228] = {.lex_state = 0}, + [227] = {.lex_state = 14}, + [228] = {.lex_state = 14}, [229] = {.lex_state = 0}, - [230] = {.lex_state = 12}, - [231] = {.lex_state = 12}, - [232] = {.lex_state = 12}, - [233] = {.lex_state = 12}, - [234] = {.lex_state = 12}, + [230] = {.lex_state = 14}, + [231] = {.lex_state = 0}, + [232] = {.lex_state = 14}, + [233] = {.lex_state = 14}, + [234] = {.lex_state = 0}, [235] = {.lex_state = 0}, [236] = {.lex_state = 0}, - [237] = {.lex_state = 12}, + [237] = {.lex_state = 14}, [238] = {.lex_state = 0}, - [239] = {.lex_state = 12}, - [240] = {.lex_state = 12}, + [239] = {.lex_state = 0}, + [240] = {.lex_state = 0}, [241] = {.lex_state = 0}, - [242] = {.lex_state = 0}, - [243] = {.lex_state = 12}, + [242] = {.lex_state = 14}, + [243] = {.lex_state = 14}, [244] = {.lex_state = 0}, [245] = {.lex_state = 0}, [246] = {.lex_state = 0}, @@ -2510,35 +2565,46 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [252] = {.lex_state = 0}, [253] = {.lex_state = 0}, [254] = {.lex_state = 0}, - [255] = {.lex_state = 0}, + [255] = {.lex_state = 14}, [256] = {.lex_state = 0}, - [257] = {.lex_state = 0}, - [258] = {.lex_state = 0}, + [257] = {.lex_state = 14}, + [258] = {.lex_state = 14}, [259] = {.lex_state = 0}, [260] = {.lex_state = 0}, [261] = {.lex_state = 0}, - [262] = {.lex_state = 0}, + [262] = {.lex_state = 14}, + [263] = {.lex_state = 0}, + [264] = {.lex_state = 0}, + [265] = {.lex_state = 14}, + [266] = {.lex_state = 14}, + [267] = {.lex_state = 0}, + [268] = {.lex_state = 0}, + [269] = {.lex_state = 0}, + [270] = {.lex_state = 0}, + [271] = {.lex_state = 0}, + [272] = {.lex_state = 0}, + [273] = {.lex_state = 14}, + [274] = {.lex_state = 14}, + [275] = {.lex_state = 0}, }; static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [0] = { [ts_builtin_sym_end] = ACTIONS(1), [sym_identifier] = ACTIONS(1), + [anon_sym_LBRACE] = ACTIONS(1), + [anon_sym_RBRACE] = ACTIONS(1), [aux_sym_comment_token1] = ACTIONS(1), [anon_sym_LPAREN] = ACTIONS(1), [anon_sym_RPAREN] = ACTIONS(1), - [sym__numeric] = ACTIONS(1), - [anon_sym_DASH] = ACTIONS(1), - [anon_sym_DOT] = ACTIONS(1), + [aux_sym_integer_token1] = ACTIONS(1), + [aux_sym_float_token1] = ACTIONS(1), [sym_string] = ACTIONS(1), [anon_sym_true] = ACTIONS(1), [anon_sym_false] = ACTIONS(1), [anon_sym_LBRACK] = ACTIONS(1), [anon_sym_COMMA] = ACTIONS(1), [anon_sym_RBRACK] = ACTIONS(1), - [anon_sym_LBRACE] = ACTIONS(1), - [anon_sym_EQ] = ACTIONS(1), - [anon_sym_RBRACE] = ACTIONS(1), [anon_sym_COLON] = ACTIONS(1), [anon_sym_DOT_DOT] = ACTIONS(1), [anon_sym_function] = ACTIONS(1), @@ -2546,7 +2612,7 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_GT] = ACTIONS(1), [anon_sym_table] = ACTIONS(1), [anon_sym_PLUS] = ACTIONS(1), - [anon_sym_DASH2] = ACTIONS(1), + [anon_sym_DASH] = ACTIONS(1), [anon_sym_STAR] = ACTIONS(1), [anon_sym_SLASH] = ACTIONS(1), [anon_sym_PERCENT] = ACTIONS(1), @@ -2556,11 +2622,14 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_PIPE_PIPE] = ACTIONS(1), [anon_sym_GT_EQ] = ACTIONS(1), [anon_sym_LT_EQ] = ACTIONS(1), + [anon_sym_EQ] = ACTIONS(1), [anon_sym_PLUS_EQ] = ACTIONS(1), [anon_sym_DASH_EQ] = ACTIONS(1), [anon_sym_if] = ACTIONS(1), [anon_sym_elseif] = ACTIONS(1), [anon_sym_else] = ACTIONS(1), + [anon_sym_match] = ACTIONS(1), + [anon_sym_EQ_GT] = ACTIONS(1), [anon_sym_while] = ACTIONS(1), [anon_sym_for] = ACTIONS(1), [anon_sym_in] = ACTIONS(1), @@ -2568,8 +2637,10 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_filter] = ACTIONS(1), [anon_sym_find] = ACTIONS(1), [anon_sym_remove] = ACTIONS(1), - [anon_sym_select] = ACTIONS(1), [anon_sym_from] = ACTIONS(1), + [anon_sym_reduce] = ACTIONS(1), + [anon_sym_to] = ACTIONS(1), + [anon_sym_select] = ACTIONS(1), [anon_sym_insert] = ACTIONS(1), [anon_sym_into] = ACTIONS(1), [anon_sym_async] = ACTIONS(1), @@ -2605,438 +2676,128 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_reverse] = ACTIONS(1), }, [1] = { - [sym_root] = STATE(235), - [sym_item] = STATE(4), - [sym_statement] = STATE(24), - [sym_comment] = STATE(131), - [sym_expression] = STATE(64), - [sym__expression_kind] = STATE(48), - [sym_value] = STATE(48), + [sym_root] = STATE(253), + [sym_statement] = STATE(3), + [sym__statement_kind] = STATE(9), + [sym_comment] = STATE(9), + [sym_expression] = STATE(65), + [sym__expression_kind] = STATE(47), + [sym_value] = STATE(47), [sym_integer] = STATE(60), [sym_float] = STATE(60), [sym_boolean] = STATE(60), [sym_list] = STATE(60), [sym_map] = STATE(60), - [sym_index] = STATE(48), + [sym_index] = STATE(47), [sym_function] = STATE(60), [sym_table] = STATE(60), - [sym_math] = STATE(48), - [sym_logic] = STATE(48), - [sym_assignment] = STATE(131), - [sym_if_else] = STATE(131), + [sym_math] = STATE(47), + [sym_logic] = STATE(47), + [sym_assignment] = STATE(9), + [sym_if_else] = STATE(9), [sym_if] = STATE(68), - [sym_function_call] = STATE(48), - [sym_while] = STATE(131), - [sym_for] = STATE(131), - [sym_transform] = STATE(131), - [sym_filter] = STATE(131), - [sym_find] = STATE(131), - [sym_remove] = STATE(131), - [sym_select] = STATE(131), - [sym_insert] = STATE(131), - [sym_async] = STATE(131), - [sym_tool] = STATE(48), - [aux_sym_root_repeat1] = STATE(4), - [aux_sym_item_repeat1] = STATE(24), + [sym_function_call] = STATE(47), + [sym_match] = STATE(9), + [sym_while] = STATE(9), + [sym_for] = STATE(9), + [sym_transform] = STATE(9), + [sym_filter] = STATE(9), + [sym_find] = STATE(9), + [sym_remove] = STATE(9), + [sym_reduce] = STATE(9), + [sym_select] = STATE(9), + [sym_insert] = STATE(9), + [sym_async] = STATE(9), + [sym_tool] = STATE(47), + [aux_sym_root_repeat1] = STATE(3), + [aux_sym_statement_repeat1] = STATE(9), [sym_identifier] = ACTIONS(3), - [aux_sym_comment_token1] = ACTIONS(5), - [anon_sym_LPAREN] = ACTIONS(7), - [sym__numeric] = ACTIONS(9), - [anon_sym_DASH] = ACTIONS(11), - [sym_string] = ACTIONS(13), - [anon_sym_true] = ACTIONS(15), - [anon_sym_false] = ACTIONS(15), - [anon_sym_LBRACK] = ACTIONS(17), - [anon_sym_LBRACE] = ACTIONS(19), + [anon_sym_LBRACE] = ACTIONS(5), + [aux_sym_comment_token1] = ACTIONS(7), + [anon_sym_LPAREN] = ACTIONS(9), + [aux_sym_integer_token1] = ACTIONS(11), + [aux_sym_float_token1] = ACTIONS(13), + [sym_string] = ACTIONS(15), + [anon_sym_true] = ACTIONS(17), + [anon_sym_false] = ACTIONS(17), + [anon_sym_LBRACK] = ACTIONS(19), [anon_sym_function] = ACTIONS(21), [anon_sym_table] = ACTIONS(23), [anon_sym_if] = ACTIONS(25), - [anon_sym_while] = ACTIONS(27), - [anon_sym_for] = ACTIONS(29), - [anon_sym_transform] = ACTIONS(31), - [anon_sym_filter] = ACTIONS(33), - [anon_sym_find] = ACTIONS(35), - [anon_sym_remove] = ACTIONS(37), - [anon_sym_select] = ACTIONS(39), - [anon_sym_insert] = ACTIONS(41), - [anon_sym_async] = ACTIONS(43), + [anon_sym_match] = ACTIONS(27), + [anon_sym_while] = ACTIONS(29), + [anon_sym_for] = ACTIONS(31), + [anon_sym_transform] = ACTIONS(33), + [anon_sym_filter] = ACTIONS(35), + [anon_sym_find] = ACTIONS(37), + [anon_sym_remove] = ACTIONS(39), + [anon_sym_reduce] = ACTIONS(41), + [anon_sym_select] = ACTIONS(43), + [anon_sym_insert] = ACTIONS(45), + [anon_sym_async] = ACTIONS(47), }, }; static const uint16_t ts_small_parse_table[] = { - [0] = 15, - ACTIONS(45), 1, - sym_identifier, - ACTIONS(47), 1, - anon_sym_LPAREN, - ACTIONS(49), 1, - sym__numeric, + [0] = 30, ACTIONS(51), 1, - anon_sym_DASH, - ACTIONS(53), 1, - sym_string, - ACTIONS(57), 1, - anon_sym_LBRACK, - ACTIONS(59), 1, - anon_sym_LBRACE, - ACTIONS(61), 1, - anon_sym_function, - ACTIONS(63), 1, - anon_sym_table, - STATE(75), 1, - sym__tool_kind, - STATE(176), 1, - sym_expression, - ACTIONS(55), 2, - anon_sym_true, - anon_sym_false, - STATE(159), 7, - sym_integer, - sym_float, - sym_boolean, - sym_list, - sym_map, - sym_function, - sym_table, - STATE(178), 7, - sym__expression_kind, - sym_value, - sym_index, - sym_math, - sym_logic, - sym_function_call, - sym_tool, - ACTIONS(65), 31, - anon_sym_remove, - anon_sym_assert, - anon_sym_assert_equal, - anon_sym_download, - anon_sym_help, - anon_sym_length, - anon_sym_output, - anon_sym_output_error, - anon_sym_type, - anon_sym_workdir, - anon_sym_append, - anon_sym_metadata, - anon_sym_move, - anon_sym_read, - anon_sym_write, - anon_sym_from_json, - anon_sym_to_json, - anon_sym_to_string, - anon_sym_to_float, - anon_sym_bash, - anon_sym_fish, - anon_sym_raw, - anon_sym_sh, - anon_sym_zsh, - anon_sym_random, - anon_sym_random_boolean, - anon_sym_random_float, - anon_sym_random_integer, - anon_sym_columns, - anon_sym_rows, - anon_sym_reverse, - [89] = 15, - ACTIONS(47), 1, - anon_sym_LPAREN, - ACTIONS(49), 1, - sym__numeric, - ACTIONS(51), 1, - anon_sym_DASH, - ACTIONS(53), 1, - sym_string, - ACTIONS(57), 1, - anon_sym_LBRACK, - ACTIONS(59), 1, - anon_sym_LBRACE, - ACTIONS(61), 1, - anon_sym_function, - ACTIONS(63), 1, - anon_sym_table, - ACTIONS(67), 1, sym_identifier, - STATE(77), 1, - sym__tool_kind, - STATE(176), 1, - sym_expression, - ACTIONS(55), 2, - anon_sym_true, - anon_sym_false, - STATE(159), 7, - sym_integer, - sym_float, - sym_boolean, - sym_list, - sym_map, - sym_function, - sym_table, - STATE(177), 7, - sym__expression_kind, - sym_value, - sym_index, - sym_math, - sym_logic, - sym_function_call, - sym_tool, - ACTIONS(69), 31, - anon_sym_remove, - anon_sym_assert, - anon_sym_assert_equal, - anon_sym_download, - anon_sym_help, - anon_sym_length, - anon_sym_output, - anon_sym_output_error, - anon_sym_type, - anon_sym_workdir, - anon_sym_append, - anon_sym_metadata, - anon_sym_move, - anon_sym_read, - anon_sym_write, - anon_sym_from_json, - anon_sym_to_json, - anon_sym_to_string, - anon_sym_to_float, - anon_sym_bash, - anon_sym_fish, - anon_sym_raw, - anon_sym_sh, - anon_sym_zsh, - anon_sym_random, - anon_sym_random_boolean, - anon_sym_random_float, - anon_sym_random_integer, - anon_sym_columns, - anon_sym_rows, - anon_sym_reverse, - [178] = 29, - ACTIONS(3), 1, - sym_identifier, - ACTIONS(5), 1, + ACTIONS(54), 1, + anon_sym_LBRACE, + ACTIONS(57), 1, aux_sym_comment_token1, - ACTIONS(7), 1, + ACTIONS(60), 1, anon_sym_LPAREN, - ACTIONS(9), 1, - sym__numeric, - ACTIONS(11), 1, - anon_sym_DASH, - ACTIONS(13), 1, + ACTIONS(63), 1, + aux_sym_integer_token1, + ACTIONS(66), 1, + aux_sym_float_token1, + ACTIONS(69), 1, sym_string, - ACTIONS(17), 1, - anon_sym_LBRACK, - ACTIONS(19), 1, - anon_sym_LBRACE, - ACTIONS(21), 1, - anon_sym_function, - ACTIONS(23), 1, - anon_sym_table, - ACTIONS(25), 1, - anon_sym_if, - ACTIONS(27), 1, - anon_sym_while, - ACTIONS(29), 1, - anon_sym_for, - ACTIONS(31), 1, - anon_sym_transform, - ACTIONS(33), 1, - anon_sym_filter, - ACTIONS(35), 1, - anon_sym_find, - ACTIONS(37), 1, - anon_sym_remove, - ACTIONS(39), 1, - anon_sym_select, - ACTIONS(41), 1, - anon_sym_insert, - ACTIONS(43), 1, - anon_sym_async, - ACTIONS(71), 1, - ts_builtin_sym_end, - STATE(64), 1, - sym_expression, - STATE(68), 1, - sym_if, - ACTIONS(15), 2, - anon_sym_true, - anon_sym_false, - STATE(5), 2, - sym_item, - aux_sym_root_repeat1, - STATE(24), 2, - sym_statement, - aux_sym_item_repeat1, - STATE(48), 7, - sym__expression_kind, - sym_value, - sym_index, - sym_math, - sym_logic, - sym_function_call, - sym_tool, - STATE(60), 7, - sym_integer, - sym_float, - sym_boolean, - sym_list, - sym_map, - sym_function, - sym_table, - STATE(131), 12, - sym_comment, - sym_assignment, - sym_if_else, - sym_while, - sym_for, - sym_transform, - sym_filter, - sym_find, - sym_remove, - sym_select, - sym_insert, - sym_async, - [292] = 29, - ACTIONS(73), 1, - ts_builtin_sym_end, ACTIONS(75), 1, - sym_identifier, + anon_sym_LBRACK, ACTIONS(78), 1, - aux_sym_comment_token1, + anon_sym_function, ACTIONS(81), 1, - anon_sym_LPAREN, + anon_sym_table, ACTIONS(84), 1, - sym__numeric, + anon_sym_if, ACTIONS(87), 1, - anon_sym_DASH, + anon_sym_match, ACTIONS(90), 1, - sym_string, + anon_sym_while, + ACTIONS(93), 1, + anon_sym_for, ACTIONS(96), 1, - anon_sym_LBRACK, + anon_sym_transform, ACTIONS(99), 1, - anon_sym_LBRACE, + anon_sym_filter, ACTIONS(102), 1, - anon_sym_function, + anon_sym_find, ACTIONS(105), 1, - anon_sym_table, + anon_sym_remove, ACTIONS(108), 1, - anon_sym_if, + anon_sym_reduce, ACTIONS(111), 1, - anon_sym_while, + anon_sym_select, ACTIONS(114), 1, - anon_sym_for, + anon_sym_insert, ACTIONS(117), 1, - anon_sym_transform, - ACTIONS(120), 1, - anon_sym_filter, - ACTIONS(123), 1, - anon_sym_find, - ACTIONS(126), 1, - anon_sym_remove, - ACTIONS(129), 1, - anon_sym_select, - ACTIONS(132), 1, - anon_sym_insert, - ACTIONS(135), 1, anon_sym_async, - STATE(64), 1, + STATE(65), 1, sym_expression, STATE(68), 1, sym_if, - ACTIONS(93), 2, - anon_sym_true, - anon_sym_false, - STATE(5), 2, - sym_item, - aux_sym_root_repeat1, - STATE(24), 2, - sym_statement, - aux_sym_item_repeat1, - STATE(48), 7, - sym__expression_kind, - sym_value, - sym_index, - sym_math, - sym_logic, - sym_function_call, - sym_tool, - STATE(60), 7, - sym_integer, - sym_float, - sym_boolean, - sym_list, - sym_map, - sym_function, - sym_table, - STATE(131), 12, - sym_comment, - sym_assignment, - sym_if_else, - sym_while, - sym_for, - sym_transform, - sym_filter, - sym_find, - sym_remove, - sym_select, - sym_insert, - sym_async, - [406] = 28, - ACTIONS(140), 1, - sym_identifier, - ACTIONS(143), 1, - aux_sym_comment_token1, - ACTIONS(146), 1, - anon_sym_LPAREN, - ACTIONS(149), 1, - sym__numeric, - ACTIONS(152), 1, - anon_sym_DASH, - ACTIONS(155), 1, - sym_string, - ACTIONS(161), 1, - anon_sym_LBRACK, - ACTIONS(164), 1, - anon_sym_LBRACE, - ACTIONS(167), 1, - anon_sym_function, - ACTIONS(170), 1, - anon_sym_table, - ACTIONS(173), 1, - anon_sym_if, - ACTIONS(176), 1, - anon_sym_while, - ACTIONS(179), 1, - anon_sym_for, - ACTIONS(182), 1, - anon_sym_transform, - ACTIONS(185), 1, - anon_sym_filter, - ACTIONS(188), 1, - anon_sym_find, - ACTIONS(191), 1, - anon_sym_remove, - ACTIONS(194), 1, - anon_sym_select, - ACTIONS(197), 1, - anon_sym_insert, - ACTIONS(200), 1, - anon_sym_async, - STATE(64), 1, - sym_expression, - STATE(68), 1, - sym_if, - ACTIONS(138), 2, + ACTIONS(49), 2, ts_builtin_sym_end, anon_sym_RBRACE, - ACTIONS(158), 2, + ACTIONS(72), 2, anon_sym_true, anon_sym_false, - STATE(6), 2, + STATE(2), 2, sym_statement, - aux_sym_item_repeat1, - STATE(48), 7, + aux_sym_root_repeat1, + STATE(47), 7, sym__expression_kind, sym_value, sym_index, @@ -3052,36 +2813,40 @@ static const uint16_t ts_small_parse_table[] = { sym_map, sym_function, sym_table, - STATE(131), 12, + STATE(9), 16, + sym__statement_kind, sym_comment, sym_assignment, sym_if_else, + sym_match, sym_while, sym_for, sym_transform, sym_filter, sym_find, sym_remove, + sym_reduce, sym_select, sym_insert, sym_async, - [517] = 28, + aux_sym_statement_repeat1, + [121] = 30, ACTIONS(3), 1, sym_identifier, ACTIONS(5), 1, - aux_sym_comment_token1, - ACTIONS(7), 1, - anon_sym_LPAREN, - ACTIONS(9), 1, - sym__numeric, - ACTIONS(11), 1, - anon_sym_DASH, - ACTIONS(13), 1, - sym_string, - ACTIONS(17), 1, - anon_sym_LBRACK, - ACTIONS(19), 1, anon_sym_LBRACE, + ACTIONS(7), 1, + aux_sym_comment_token1, + ACTIONS(9), 1, + anon_sym_LPAREN, + ACTIONS(11), 1, + aux_sym_integer_token1, + ACTIONS(13), 1, + aux_sym_float_token1, + ACTIONS(15), 1, + sym_string, + ACTIONS(19), 1, + anon_sym_LBRACK, ACTIONS(21), 1, anon_sym_function, ACTIONS(23), 1, @@ -3089,36 +2854,40 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(25), 1, anon_sym_if, ACTIONS(27), 1, - anon_sym_while, + anon_sym_match, ACTIONS(29), 1, - anon_sym_for, + anon_sym_while, ACTIONS(31), 1, - anon_sym_transform, + anon_sym_for, ACTIONS(33), 1, - anon_sym_filter, + anon_sym_transform, ACTIONS(35), 1, - anon_sym_find, + anon_sym_filter, ACTIONS(37), 1, - anon_sym_remove, + anon_sym_find, ACTIONS(39), 1, - anon_sym_select, + anon_sym_remove, ACTIONS(41), 1, - anon_sym_insert, + anon_sym_reduce, ACTIONS(43), 1, + anon_sym_select, + ACTIONS(45), 1, + anon_sym_insert, + ACTIONS(47), 1, anon_sym_async, - STATE(64), 1, + ACTIONS(120), 1, + ts_builtin_sym_end, + STATE(65), 1, sym_expression, STATE(68), 1, sym_if, - STATE(256), 1, - sym_item, - ACTIONS(15), 2, + ACTIONS(17), 2, anon_sym_true, anon_sym_false, - STATE(23), 2, + STATE(2), 2, sym_statement, - aux_sym_item_repeat1, - STATE(48), 7, + aux_sym_root_repeat1, + STATE(47), 7, sym__expression_kind, sym_value, sym_index, @@ -3134,36 +2903,40 @@ static const uint16_t ts_small_parse_table[] = { sym_map, sym_function, sym_table, - STATE(131), 12, + STATE(9), 16, + sym__statement_kind, sym_comment, sym_assignment, sym_if_else, + sym_match, sym_while, sym_for, sym_transform, sym_filter, sym_find, sym_remove, + sym_reduce, sym_select, sym_insert, sym_async, - [627] = 28, + aux_sym_statement_repeat1, + [241] = 30, ACTIONS(3), 1, sym_identifier, ACTIONS(5), 1, - aux_sym_comment_token1, - ACTIONS(7), 1, - anon_sym_LPAREN, - ACTIONS(9), 1, - sym__numeric, - ACTIONS(11), 1, - anon_sym_DASH, - ACTIONS(13), 1, - sym_string, - ACTIONS(17), 1, - anon_sym_LBRACK, - ACTIONS(19), 1, anon_sym_LBRACE, + ACTIONS(7), 1, + aux_sym_comment_token1, + ACTIONS(9), 1, + anon_sym_LPAREN, + ACTIONS(11), 1, + aux_sym_integer_token1, + ACTIONS(13), 1, + aux_sym_float_token1, + ACTIONS(15), 1, + sym_string, + ACTIONS(19), 1, + anon_sym_LBRACK, ACTIONS(21), 1, anon_sym_function, ACTIONS(23), 1, @@ -3171,200 +2944,40 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(25), 1, anon_sym_if, ACTIONS(27), 1, - anon_sym_while, + anon_sym_match, ACTIONS(29), 1, - anon_sym_for, - ACTIONS(31), 1, - anon_sym_transform, - ACTIONS(33), 1, - anon_sym_filter, - ACTIONS(35), 1, - anon_sym_find, - ACTIONS(37), 1, - anon_sym_remove, - ACTIONS(39), 1, - anon_sym_select, - ACTIONS(41), 1, - anon_sym_insert, - ACTIONS(43), 1, - anon_sym_async, - STATE(64), 1, - sym_expression, - STATE(68), 1, - sym_if, - STATE(249), 1, - sym_item, - ACTIONS(15), 2, - anon_sym_true, - anon_sym_false, - STATE(23), 2, - sym_statement, - aux_sym_item_repeat1, - STATE(48), 7, - sym__expression_kind, - sym_value, - sym_index, - sym_math, - sym_logic, - sym_function_call, - sym_tool, - STATE(60), 7, - sym_integer, - sym_float, - sym_boolean, - sym_list, - sym_map, - sym_function, - sym_table, - STATE(131), 12, - sym_comment, - sym_assignment, - sym_if_else, - sym_while, - sym_for, - sym_transform, - sym_filter, - sym_find, - sym_remove, - sym_select, - sym_insert, - sym_async, - [737] = 28, - ACTIONS(3), 1, - sym_identifier, - ACTIONS(5), 1, - aux_sym_comment_token1, - ACTIONS(7), 1, - anon_sym_LPAREN, - ACTIONS(9), 1, - sym__numeric, - ACTIONS(11), 1, - anon_sym_DASH, - ACTIONS(13), 1, - sym_string, - ACTIONS(17), 1, - anon_sym_LBRACK, - ACTIONS(19), 1, - anon_sym_LBRACE, - ACTIONS(21), 1, - anon_sym_function, - ACTIONS(23), 1, - anon_sym_table, - ACTIONS(25), 1, - anon_sym_if, - ACTIONS(27), 1, anon_sym_while, - ACTIONS(29), 1, - anon_sym_for, ACTIONS(31), 1, - anon_sym_transform, - ACTIONS(33), 1, - anon_sym_filter, - ACTIONS(35), 1, - anon_sym_find, - ACTIONS(37), 1, - anon_sym_remove, - ACTIONS(39), 1, - anon_sym_select, - ACTIONS(41), 1, - anon_sym_insert, - ACTIONS(43), 1, - anon_sym_async, - STATE(64), 1, - sym_expression, - STATE(68), 1, - sym_if, - STATE(229), 1, - sym_item, - ACTIONS(15), 2, - anon_sym_true, - anon_sym_false, - STATE(23), 2, - sym_statement, - aux_sym_item_repeat1, - STATE(48), 7, - sym__expression_kind, - sym_value, - sym_index, - sym_math, - sym_logic, - sym_function_call, - sym_tool, - STATE(60), 7, - sym_integer, - sym_float, - sym_boolean, - sym_list, - sym_map, - sym_function, - sym_table, - STATE(131), 12, - sym_comment, - sym_assignment, - sym_if_else, - sym_while, - sym_for, - sym_transform, - sym_filter, - sym_find, - sym_remove, - sym_select, - sym_insert, - sym_async, - [847] = 28, - ACTIONS(3), 1, - sym_identifier, - ACTIONS(5), 1, - aux_sym_comment_token1, - ACTIONS(7), 1, - anon_sym_LPAREN, - ACTIONS(9), 1, - sym__numeric, - ACTIONS(11), 1, - anon_sym_DASH, - ACTIONS(13), 1, - sym_string, - ACTIONS(17), 1, - anon_sym_LBRACK, - ACTIONS(19), 1, - anon_sym_LBRACE, - ACTIONS(21), 1, - anon_sym_function, - ACTIONS(23), 1, - anon_sym_table, - ACTIONS(25), 1, - anon_sym_if, - ACTIONS(27), 1, - anon_sym_while, - ACTIONS(29), 1, anon_sym_for, - ACTIONS(31), 1, - anon_sym_transform, ACTIONS(33), 1, - anon_sym_filter, + anon_sym_transform, ACTIONS(35), 1, - anon_sym_find, + anon_sym_filter, ACTIONS(37), 1, - anon_sym_remove, + anon_sym_find, ACTIONS(39), 1, - anon_sym_select, + anon_sym_remove, ACTIONS(41), 1, - anon_sym_insert, + anon_sym_reduce, ACTIONS(43), 1, + anon_sym_select, + ACTIONS(45), 1, + anon_sym_insert, + ACTIONS(47), 1, anon_sym_async, - ACTIONS(203), 1, + ACTIONS(122), 1, anon_sym_RBRACE, - STATE(64), 1, + STATE(65), 1, sym_expression, STATE(68), 1, sym_if, - ACTIONS(15), 2, + ACTIONS(17), 2, anon_sym_true, anon_sym_false, - STATE(6), 2, + STATE(2), 2, sym_statement, - aux_sym_item_repeat1, - STATE(48), 7, + aux_sym_root_repeat1, + STATE(47), 7, sym__expression_kind, sym_value, sym_index, @@ -3380,36 +2993,40 @@ static const uint16_t ts_small_parse_table[] = { sym_map, sym_function, sym_table, - STATE(131), 12, + STATE(9), 16, + sym__statement_kind, sym_comment, sym_assignment, sym_if_else, + sym_match, sym_while, sym_for, sym_transform, sym_filter, sym_find, sym_remove, + sym_reduce, sym_select, sym_insert, sym_async, - [957] = 28, + aux_sym_statement_repeat1, + [361] = 30, ACTIONS(3), 1, sym_identifier, ACTIONS(5), 1, - aux_sym_comment_token1, - ACTIONS(7), 1, - anon_sym_LPAREN, - ACTIONS(9), 1, - sym__numeric, - ACTIONS(11), 1, - anon_sym_DASH, - ACTIONS(13), 1, - sym_string, - ACTIONS(17), 1, - anon_sym_LBRACK, - ACTIONS(19), 1, anon_sym_LBRACE, + ACTIONS(7), 1, + aux_sym_comment_token1, + ACTIONS(9), 1, + anon_sym_LPAREN, + ACTIONS(11), 1, + aux_sym_integer_token1, + ACTIONS(13), 1, + aux_sym_float_token1, + ACTIONS(15), 1, + sym_string, + ACTIONS(19), 1, + anon_sym_LBRACK, ACTIONS(21), 1, anon_sym_function, ACTIONS(23), 1, @@ -3417,36 +3034,40 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(25), 1, anon_sym_if, ACTIONS(27), 1, - anon_sym_while, + anon_sym_match, ACTIONS(29), 1, - anon_sym_for, + anon_sym_while, ACTIONS(31), 1, - anon_sym_transform, + anon_sym_for, ACTIONS(33), 1, - anon_sym_filter, + anon_sym_transform, ACTIONS(35), 1, - anon_sym_find, + anon_sym_filter, ACTIONS(37), 1, - anon_sym_remove, + anon_sym_find, ACTIONS(39), 1, - anon_sym_select, + anon_sym_remove, ACTIONS(41), 1, - anon_sym_insert, + anon_sym_reduce, ACTIONS(43), 1, + anon_sym_select, + ACTIONS(45), 1, + anon_sym_insert, + ACTIONS(47), 1, anon_sym_async, - ACTIONS(205), 1, + ACTIONS(124), 1, anon_sym_RBRACE, - STATE(64), 1, + STATE(65), 1, sym_expression, STATE(68), 1, sym_if, - ACTIONS(15), 2, + ACTIONS(17), 2, anon_sym_true, anon_sym_false, - STATE(10), 2, + STATE(4), 2, sym_statement, - aux_sym_item_repeat1, - STATE(48), 7, + aux_sym_root_repeat1, + STATE(47), 7, sym__expression_kind, sym_value, sym_index, @@ -3462,73 +3083,153 @@ static const uint16_t ts_small_parse_table[] = { sym_map, sym_function, sym_table, - STATE(131), 12, + STATE(9), 16, + sym__statement_kind, sym_comment, sym_assignment, sym_if_else, + sym_match, sym_while, sym_for, sym_transform, sym_filter, sym_find, sym_remove, + sym_reduce, sym_select, sym_insert, sym_async, - [1067] = 28, - ACTIONS(3), 1, + aux_sym_statement_repeat1, + [481] = 15, + ACTIONS(126), 1, sym_identifier, - ACTIONS(5), 1, - aux_sym_comment_token1, - ACTIONS(7), 1, - anon_sym_LPAREN, - ACTIONS(9), 1, - sym__numeric, - ACTIONS(11), 1, - anon_sym_DASH, - ACTIONS(13), 1, - sym_string, - ACTIONS(17), 1, - anon_sym_LBRACK, - ACTIONS(19), 1, + ACTIONS(128), 1, anon_sym_LBRACE, - ACTIONS(21), 1, + ACTIONS(130), 1, + anon_sym_LPAREN, + ACTIONS(132), 1, + aux_sym_integer_token1, + ACTIONS(134), 1, + aux_sym_float_token1, + ACTIONS(136), 1, + sym_string, + ACTIONS(140), 1, + anon_sym_LBRACK, + ACTIONS(142), 1, anon_sym_function, - ACTIONS(23), 1, + ACTIONS(144), 1, anon_sym_table, - ACTIONS(25), 1, - anon_sym_if, - ACTIONS(27), 1, - anon_sym_while, - ACTIONS(29), 1, - anon_sym_for, - ACTIONS(31), 1, - anon_sym_transform, - ACTIONS(33), 1, - anon_sym_filter, - ACTIONS(35), 1, - anon_sym_find, - ACTIONS(37), 1, + STATE(82), 1, + sym__tool_kind, + STATE(188), 1, + sym_expression, + ACTIONS(138), 2, + anon_sym_true, + anon_sym_false, + STATE(162), 7, + sym_integer, + sym_float, + sym_boolean, + sym_list, + sym_map, + sym_function, + sym_table, + STATE(191), 7, + sym__expression_kind, + sym_value, + sym_index, + sym_math, + sym_logic, + sym_function_call, + sym_tool, + ACTIONS(146), 31, anon_sym_remove, - ACTIONS(39), 1, + anon_sym_assert, + anon_sym_assert_equal, + anon_sym_download, + anon_sym_help, + anon_sym_length, + anon_sym_output, + anon_sym_output_error, + anon_sym_type, + anon_sym_workdir, + anon_sym_append, + anon_sym_metadata, + anon_sym_move, + anon_sym_read, + anon_sym_write, + anon_sym_from_json, + anon_sym_to_json, + anon_sym_to_string, + anon_sym_to_float, + anon_sym_bash, + anon_sym_fish, + anon_sym_raw, + anon_sym_sh, + anon_sym_zsh, + anon_sym_random, + anon_sym_random_boolean, + anon_sym_random_float, + anon_sym_random_integer, + anon_sym_columns, + anon_sym_rows, + anon_sym_reverse, + [570] = 29, + ACTIONS(150), 1, + sym_identifier, + ACTIONS(153), 1, + anon_sym_LBRACE, + ACTIONS(156), 1, + aux_sym_comment_token1, + ACTIONS(159), 1, + anon_sym_LPAREN, + ACTIONS(162), 1, + aux_sym_integer_token1, + ACTIONS(165), 1, + aux_sym_float_token1, + ACTIONS(168), 1, + sym_string, + ACTIONS(174), 1, + anon_sym_LBRACK, + ACTIONS(177), 1, + anon_sym_function, + ACTIONS(180), 1, + anon_sym_table, + ACTIONS(183), 1, + anon_sym_if, + ACTIONS(186), 1, + anon_sym_match, + ACTIONS(189), 1, + anon_sym_while, + ACTIONS(192), 1, + anon_sym_for, + ACTIONS(195), 1, + anon_sym_transform, + ACTIONS(198), 1, + anon_sym_filter, + ACTIONS(201), 1, + anon_sym_find, + ACTIONS(204), 1, + anon_sym_remove, + ACTIONS(207), 1, + anon_sym_reduce, + ACTIONS(210), 1, anon_sym_select, - ACTIONS(41), 1, + ACTIONS(213), 1, anon_sym_insert, - ACTIONS(43), 1, + ACTIONS(216), 1, anon_sym_async, - STATE(64), 1, + STATE(65), 1, sym_expression, STATE(68), 1, sym_if, - STATE(246), 1, - sym_item, - ACTIONS(15), 2, + ACTIONS(148), 2, + ts_builtin_sym_end, + anon_sym_RBRACE, + ACTIONS(171), 2, anon_sym_true, anon_sym_false, - STATE(23), 2, - sym_statement, - aux_sym_item_repeat1, - STATE(48), 7, + STATE(47), 7, sym__expression_kind, sym_value, sym_index, @@ -3544,73 +3245,103 @@ static const uint16_t ts_small_parse_table[] = { sym_map, sym_function, sym_table, - STATE(131), 12, + STATE(7), 16, + sym__statement_kind, sym_comment, sym_assignment, sym_if_else, + sym_match, sym_while, sym_for, sym_transform, sym_filter, sym_find, sym_remove, + sym_reduce, sym_select, sym_insert, sym_async, - [1177] = 28, - ACTIONS(3), 1, - sym_identifier, - ACTIONS(5), 1, - aux_sym_comment_token1, - ACTIONS(7), 1, - anon_sym_LPAREN, - ACTIONS(9), 1, - sym__numeric, - ACTIONS(11), 1, - anon_sym_DASH, - ACTIONS(13), 1, - sym_string, - ACTIONS(17), 1, - anon_sym_LBRACK, - ACTIONS(19), 1, + aux_sym_statement_repeat1, + [687] = 15, + ACTIONS(128), 1, anon_sym_LBRACE, - ACTIONS(21), 1, + ACTIONS(130), 1, + anon_sym_LPAREN, + ACTIONS(132), 1, + aux_sym_integer_token1, + ACTIONS(134), 1, + aux_sym_float_token1, + ACTIONS(136), 1, + sym_string, + ACTIONS(140), 1, + anon_sym_LBRACK, + ACTIONS(142), 1, anon_sym_function, - ACTIONS(23), 1, + ACTIONS(144), 1, anon_sym_table, - ACTIONS(25), 1, - anon_sym_if, - ACTIONS(27), 1, - anon_sym_while, - ACTIONS(29), 1, - anon_sym_for, - ACTIONS(31), 1, - anon_sym_transform, - ACTIONS(33), 1, - anon_sym_filter, - ACTIONS(35), 1, - anon_sym_find, - ACTIONS(37), 1, + ACTIONS(219), 1, + sym_identifier, + STATE(84), 1, + sym__tool_kind, + STATE(188), 1, + sym_expression, + ACTIONS(138), 2, + anon_sym_true, + anon_sym_false, + STATE(162), 7, + sym_integer, + sym_float, + sym_boolean, + sym_list, + sym_map, + sym_function, + sym_table, + STATE(190), 7, + sym__expression_kind, + sym_value, + sym_index, + sym_math, + sym_logic, + sym_function_call, + sym_tool, + ACTIONS(221), 31, anon_sym_remove, - ACTIONS(39), 1, - anon_sym_select, - ACTIONS(41), 1, - anon_sym_insert, - ACTIONS(43), 1, - anon_sym_async, - STATE(64), 1, + anon_sym_assert, + anon_sym_assert_equal, + anon_sym_download, + anon_sym_help, + anon_sym_length, + anon_sym_output, + anon_sym_output_error, + anon_sym_type, + anon_sym_workdir, + anon_sym_append, + anon_sym_metadata, + anon_sym_move, + anon_sym_read, + anon_sym_write, + anon_sym_from_json, + anon_sym_to_json, + anon_sym_to_string, + anon_sym_to_float, + anon_sym_bash, + anon_sym_fish, + anon_sym_raw, + anon_sym_sh, + anon_sym_zsh, + anon_sym_random, + anon_sym_random_boolean, + anon_sym_random_float, + anon_sym_random_integer, + anon_sym_columns, + anon_sym_rows, + anon_sym_reverse, + [776] = 7, + STATE(65), 1, sym_expression, STATE(68), 1, sym_if, - STATE(227), 1, - sym_item, - ACTIONS(15), 2, - anon_sym_true, - anon_sym_false, - STATE(23), 2, - sym_statement, - aux_sym_item_repeat1, - STATE(48), 7, + STATE(47), 7, sym__expression_kind, sym_value, sym_index, @@ -3626,36 +3357,68 @@ static const uint16_t ts_small_parse_table[] = { sym_map, sym_function, sym_table, - STATE(131), 12, + ACTIONS(223), 8, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_RBRACE, + aux_sym_comment_token1, + anon_sym_LPAREN, + aux_sym_float_token1, + sym_string, + anon_sym_LBRACK, + STATE(7), 16, + sym__statement_kind, sym_comment, sym_assignment, sym_if_else, + sym_match, sym_while, sym_for, sym_transform, sym_filter, sym_find, sym_remove, + sym_reduce, sym_select, sym_insert, sym_async, - [1287] = 28, + aux_sym_statement_repeat1, + ACTIONS(225), 18, + sym_identifier, + aux_sym_integer_token1, + anon_sym_true, + anon_sym_false, + anon_sym_function, + anon_sym_table, + anon_sym_if, + anon_sym_match, + anon_sym_while, + anon_sym_for, + anon_sym_transform, + anon_sym_filter, + anon_sym_find, + anon_sym_remove, + anon_sym_reduce, + anon_sym_select, + anon_sym_insert, + anon_sym_async, + [849] = 29, ACTIONS(3), 1, sym_identifier, ACTIONS(5), 1, - aux_sym_comment_token1, - ACTIONS(7), 1, - anon_sym_LPAREN, - ACTIONS(9), 1, - sym__numeric, - ACTIONS(11), 1, - anon_sym_DASH, - ACTIONS(13), 1, - sym_string, - ACTIONS(17), 1, - anon_sym_LBRACK, - ACTIONS(19), 1, anon_sym_LBRACE, + ACTIONS(7), 1, + aux_sym_comment_token1, + ACTIONS(9), 1, + anon_sym_LPAREN, + ACTIONS(11), 1, + aux_sym_integer_token1, + ACTIONS(13), 1, + aux_sym_float_token1, + ACTIONS(15), 1, + sym_string, + ACTIONS(19), 1, + anon_sym_LBRACK, ACTIONS(21), 1, anon_sym_function, ACTIONS(23), 1, @@ -3663,36 +3426,37 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(25), 1, anon_sym_if, ACTIONS(27), 1, - anon_sym_while, + anon_sym_match, ACTIONS(29), 1, - anon_sym_for, + anon_sym_while, ACTIONS(31), 1, - anon_sym_transform, + anon_sym_for, ACTIONS(33), 1, - anon_sym_filter, + anon_sym_transform, ACTIONS(35), 1, - anon_sym_find, + anon_sym_filter, ACTIONS(37), 1, - anon_sym_remove, + anon_sym_find, ACTIONS(39), 1, - anon_sym_select, + anon_sym_remove, ACTIONS(41), 1, - anon_sym_insert, + anon_sym_reduce, ACTIONS(43), 1, + anon_sym_select, + ACTIONS(45), 1, + anon_sym_insert, + ACTIONS(47), 1, anon_sym_async, - STATE(64), 1, + STATE(65), 1, sym_expression, STATE(68), 1, sym_if, - STATE(226), 1, - sym_item, - ACTIONS(15), 2, + STATE(268), 1, + sym_statement, + ACTIONS(17), 2, anon_sym_true, anon_sym_false, - STATE(23), 2, - sym_statement, - aux_sym_item_repeat1, - STATE(48), 7, + STATE(47), 7, sym__expression_kind, sym_value, sym_index, @@ -3708,36 +3472,40 @@ static const uint16_t ts_small_parse_table[] = { sym_map, sym_function, sym_table, - STATE(131), 12, + STATE(19), 16, + sym__statement_kind, sym_comment, sym_assignment, sym_if_else, + sym_match, sym_while, sym_for, sym_transform, sym_filter, sym_find, sym_remove, + sym_reduce, sym_select, sym_insert, sym_async, - [1397] = 28, + aux_sym_statement_repeat1, + [965] = 29, ACTIONS(3), 1, sym_identifier, ACTIONS(5), 1, - aux_sym_comment_token1, - ACTIONS(7), 1, - anon_sym_LPAREN, - ACTIONS(9), 1, - sym__numeric, - ACTIONS(11), 1, - anon_sym_DASH, - ACTIONS(13), 1, - sym_string, - ACTIONS(17), 1, - anon_sym_LBRACK, - ACTIONS(19), 1, anon_sym_LBRACE, + ACTIONS(7), 1, + aux_sym_comment_token1, + ACTIONS(9), 1, + anon_sym_LPAREN, + ACTIONS(11), 1, + aux_sym_integer_token1, + ACTIONS(13), 1, + aux_sym_float_token1, + ACTIONS(15), 1, + sym_string, + ACTIONS(19), 1, + anon_sym_LBRACK, ACTIONS(21), 1, anon_sym_function, ACTIONS(23), 1, @@ -3745,36 +3513,37 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(25), 1, anon_sym_if, ACTIONS(27), 1, - anon_sym_while, + anon_sym_match, ACTIONS(29), 1, - anon_sym_for, + anon_sym_while, ACTIONS(31), 1, - anon_sym_transform, + anon_sym_for, ACTIONS(33), 1, - anon_sym_filter, + anon_sym_transform, ACTIONS(35), 1, - anon_sym_find, + anon_sym_filter, ACTIONS(37), 1, - anon_sym_remove, + anon_sym_find, ACTIONS(39), 1, - anon_sym_select, + anon_sym_remove, ACTIONS(41), 1, - anon_sym_insert, + anon_sym_reduce, ACTIONS(43), 1, + anon_sym_select, + ACTIONS(45), 1, + anon_sym_insert, + ACTIONS(47), 1, anon_sym_async, - STATE(64), 1, + STATE(65), 1, sym_expression, STATE(68), 1, sym_if, - STATE(255), 1, - sym_item, - ACTIONS(15), 2, + STATE(241), 1, + sym_statement, + ACTIONS(17), 2, anon_sym_true, anon_sym_false, - STATE(23), 2, - sym_statement, - aux_sym_item_repeat1, - STATE(48), 7, + STATE(47), 7, sym__expression_kind, sym_value, sym_index, @@ -3790,36 +3559,40 @@ static const uint16_t ts_small_parse_table[] = { sym_map, sym_function, sym_table, - STATE(131), 12, + STATE(19), 16, + sym__statement_kind, sym_comment, sym_assignment, sym_if_else, + sym_match, sym_while, sym_for, sym_transform, sym_filter, sym_find, sym_remove, + sym_reduce, sym_select, sym_insert, sym_async, - [1507] = 28, + aux_sym_statement_repeat1, + [1081] = 29, ACTIONS(3), 1, sym_identifier, ACTIONS(5), 1, - aux_sym_comment_token1, - ACTIONS(7), 1, - anon_sym_LPAREN, - ACTIONS(9), 1, - sym__numeric, - ACTIONS(11), 1, - anon_sym_DASH, - ACTIONS(13), 1, - sym_string, - ACTIONS(17), 1, - anon_sym_LBRACK, - ACTIONS(19), 1, anon_sym_LBRACE, + ACTIONS(7), 1, + aux_sym_comment_token1, + ACTIONS(9), 1, + anon_sym_LPAREN, + ACTIONS(11), 1, + aux_sym_integer_token1, + ACTIONS(13), 1, + aux_sym_float_token1, + ACTIONS(15), 1, + sym_string, + ACTIONS(19), 1, + anon_sym_LBRACK, ACTIONS(21), 1, anon_sym_function, ACTIONS(23), 1, @@ -3827,36 +3600,37 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(25), 1, anon_sym_if, ACTIONS(27), 1, - anon_sym_while, + anon_sym_match, ACTIONS(29), 1, - anon_sym_for, + anon_sym_while, ACTIONS(31), 1, - anon_sym_transform, + anon_sym_for, ACTIONS(33), 1, - anon_sym_filter, + anon_sym_transform, ACTIONS(35), 1, - anon_sym_find, + anon_sym_filter, ACTIONS(37), 1, - anon_sym_remove, + anon_sym_find, ACTIONS(39), 1, - anon_sym_select, + anon_sym_remove, ACTIONS(41), 1, - anon_sym_insert, + anon_sym_reduce, ACTIONS(43), 1, + anon_sym_select, + ACTIONS(45), 1, + anon_sym_insert, + ACTIONS(47), 1, anon_sym_async, - STATE(64), 1, + STATE(65), 1, sym_expression, STATE(68), 1, sym_if, - STATE(221), 1, - sym_item, - ACTIONS(15), 2, + STATE(272), 1, + sym_statement, + ACTIONS(17), 2, anon_sym_true, anon_sym_false, - STATE(23), 2, - sym_statement, - aux_sym_item_repeat1, - STATE(48), 7, + STATE(47), 7, sym__expression_kind, sym_value, sym_index, @@ -3872,36 +3646,40 @@ static const uint16_t ts_small_parse_table[] = { sym_map, sym_function, sym_table, - STATE(131), 12, + STATE(19), 16, + sym__statement_kind, sym_comment, sym_assignment, sym_if_else, + sym_match, sym_while, sym_for, sym_transform, sym_filter, sym_find, sym_remove, + sym_reduce, sym_select, sym_insert, sym_async, - [1617] = 28, + aux_sym_statement_repeat1, + [1197] = 29, ACTIONS(3), 1, sym_identifier, ACTIONS(5), 1, - aux_sym_comment_token1, - ACTIONS(7), 1, - anon_sym_LPAREN, - ACTIONS(9), 1, - sym__numeric, - ACTIONS(11), 1, - anon_sym_DASH, - ACTIONS(13), 1, - sym_string, - ACTIONS(17), 1, - anon_sym_LBRACK, - ACTIONS(19), 1, anon_sym_LBRACE, + ACTIONS(7), 1, + aux_sym_comment_token1, + ACTIONS(9), 1, + anon_sym_LPAREN, + ACTIONS(11), 1, + aux_sym_integer_token1, + ACTIONS(13), 1, + aux_sym_float_token1, + ACTIONS(15), 1, + sym_string, + ACTIONS(19), 1, + anon_sym_LBRACK, ACTIONS(21), 1, anon_sym_function, ACTIONS(23), 1, @@ -3909,36 +3687,37 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(25), 1, anon_sym_if, ACTIONS(27), 1, - anon_sym_while, + anon_sym_match, ACTIONS(29), 1, - anon_sym_for, + anon_sym_while, ACTIONS(31), 1, - anon_sym_transform, + anon_sym_for, ACTIONS(33), 1, - anon_sym_filter, + anon_sym_transform, ACTIONS(35), 1, - anon_sym_find, + anon_sym_filter, ACTIONS(37), 1, - anon_sym_remove, + anon_sym_find, ACTIONS(39), 1, - anon_sym_select, + anon_sym_remove, ACTIONS(41), 1, - anon_sym_insert, + anon_sym_reduce, ACTIONS(43), 1, + anon_sym_select, + ACTIONS(45), 1, + anon_sym_insert, + ACTIONS(47), 1, anon_sym_async, - STATE(64), 1, + STATE(65), 1, sym_expression, STATE(68), 1, sym_if, STATE(244), 1, - sym_item, - ACTIONS(15), 2, + sym_statement, + ACTIONS(17), 2, anon_sym_true, anon_sym_false, - STATE(23), 2, - sym_statement, - aux_sym_item_repeat1, - STATE(48), 7, + STATE(47), 7, sym__expression_kind, sym_value, sym_index, @@ -3954,36 +3733,40 @@ static const uint16_t ts_small_parse_table[] = { sym_map, sym_function, sym_table, - STATE(131), 12, + STATE(19), 16, + sym__statement_kind, sym_comment, sym_assignment, sym_if_else, + sym_match, sym_while, sym_for, sym_transform, sym_filter, sym_find, sym_remove, + sym_reduce, sym_select, sym_insert, sym_async, - [1727] = 28, + aux_sym_statement_repeat1, + [1313] = 29, ACTIONS(3), 1, sym_identifier, ACTIONS(5), 1, - aux_sym_comment_token1, - ACTIONS(7), 1, - anon_sym_LPAREN, - ACTIONS(9), 1, - sym__numeric, - ACTIONS(11), 1, - anon_sym_DASH, - ACTIONS(13), 1, - sym_string, - ACTIONS(17), 1, - anon_sym_LBRACK, - ACTIONS(19), 1, anon_sym_LBRACE, + ACTIONS(7), 1, + aux_sym_comment_token1, + ACTIONS(9), 1, + anon_sym_LPAREN, + ACTIONS(11), 1, + aux_sym_integer_token1, + ACTIONS(13), 1, + aux_sym_float_token1, + ACTIONS(15), 1, + sym_string, + ACTIONS(19), 1, + anon_sym_LBRACK, ACTIONS(21), 1, anon_sym_function, ACTIONS(23), 1, @@ -3991,36 +3774,37 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(25), 1, anon_sym_if, ACTIONS(27), 1, - anon_sym_while, + anon_sym_match, ACTIONS(29), 1, - anon_sym_for, + anon_sym_while, ACTIONS(31), 1, - anon_sym_transform, + anon_sym_for, ACTIONS(33), 1, - anon_sym_filter, + anon_sym_transform, ACTIONS(35), 1, - anon_sym_find, + anon_sym_filter, ACTIONS(37), 1, - anon_sym_remove, + anon_sym_find, ACTIONS(39), 1, - anon_sym_select, + anon_sym_remove, ACTIONS(41), 1, - anon_sym_insert, + anon_sym_reduce, ACTIONS(43), 1, + anon_sym_select, + ACTIONS(45), 1, + anon_sym_insert, + ACTIONS(47), 1, anon_sym_async, - STATE(64), 1, + STATE(65), 1, sym_expression, STATE(68), 1, sym_if, - STATE(261), 1, - sym_item, - ACTIONS(15), 2, + STATE(221), 1, + sym_statement, + ACTIONS(17), 2, anon_sym_true, anon_sym_false, - STATE(23), 2, - sym_statement, - aux_sym_item_repeat1, - STATE(48), 7, + STATE(47), 7, sym__expression_kind, sym_value, sym_index, @@ -4036,36 +3820,40 @@ static const uint16_t ts_small_parse_table[] = { sym_map, sym_function, sym_table, - STATE(131), 12, + STATE(19), 16, + sym__statement_kind, sym_comment, sym_assignment, sym_if_else, + sym_match, sym_while, sym_for, sym_transform, sym_filter, sym_find, sym_remove, + sym_reduce, sym_select, sym_insert, sym_async, - [1837] = 28, + aux_sym_statement_repeat1, + [1429] = 29, ACTIONS(3), 1, sym_identifier, ACTIONS(5), 1, - aux_sym_comment_token1, - ACTIONS(7), 1, - anon_sym_LPAREN, - ACTIONS(9), 1, - sym__numeric, - ACTIONS(11), 1, - anon_sym_DASH, - ACTIONS(13), 1, - sym_string, - ACTIONS(17), 1, - anon_sym_LBRACK, - ACTIONS(19), 1, anon_sym_LBRACE, + ACTIONS(7), 1, + aux_sym_comment_token1, + ACTIONS(9), 1, + anon_sym_LPAREN, + ACTIONS(11), 1, + aux_sym_integer_token1, + ACTIONS(13), 1, + aux_sym_float_token1, + ACTIONS(15), 1, + sym_string, + ACTIONS(19), 1, + anon_sym_LBRACK, ACTIONS(21), 1, anon_sym_function, ACTIONS(23), 1, @@ -4073,36 +3861,37 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(25), 1, anon_sym_if, ACTIONS(27), 1, - anon_sym_while, + anon_sym_match, ACTIONS(29), 1, - anon_sym_for, + anon_sym_while, ACTIONS(31), 1, - anon_sym_transform, + anon_sym_for, ACTIONS(33), 1, - anon_sym_filter, + anon_sym_transform, ACTIONS(35), 1, - anon_sym_find, + anon_sym_filter, ACTIONS(37), 1, - anon_sym_remove, + anon_sym_find, ACTIONS(39), 1, - anon_sym_select, + anon_sym_remove, ACTIONS(41), 1, - anon_sym_insert, + anon_sym_reduce, ACTIONS(43), 1, + anon_sym_select, + ACTIONS(45), 1, + anon_sym_insert, + ACTIONS(47), 1, anon_sym_async, - STATE(64), 1, + STATE(65), 1, sym_expression, STATE(68), 1, sym_if, - STATE(254), 1, - sym_item, - ACTIONS(15), 2, + STATE(249), 1, + sym_statement, + ACTIONS(17), 2, anon_sym_true, anon_sym_false, - STATE(23), 2, - sym_statement, - aux_sym_item_repeat1, - STATE(48), 7, + STATE(47), 7, sym__expression_kind, sym_value, sym_index, @@ -4118,36 +3907,40 @@ static const uint16_t ts_small_parse_table[] = { sym_map, sym_function, sym_table, - STATE(131), 12, + STATE(19), 16, + sym__statement_kind, sym_comment, sym_assignment, sym_if_else, + sym_match, sym_while, sym_for, sym_transform, sym_filter, sym_find, sym_remove, + sym_reduce, sym_select, sym_insert, sym_async, - [1947] = 28, + aux_sym_statement_repeat1, + [1545] = 29, ACTIONS(3), 1, sym_identifier, ACTIONS(5), 1, - aux_sym_comment_token1, - ACTIONS(7), 1, - anon_sym_LPAREN, - ACTIONS(9), 1, - sym__numeric, - ACTIONS(11), 1, - anon_sym_DASH, - ACTIONS(13), 1, - sym_string, - ACTIONS(17), 1, - anon_sym_LBRACK, - ACTIONS(19), 1, anon_sym_LBRACE, + ACTIONS(7), 1, + aux_sym_comment_token1, + ACTIONS(9), 1, + anon_sym_LPAREN, + ACTIONS(11), 1, + aux_sym_integer_token1, + ACTIONS(13), 1, + aux_sym_float_token1, + ACTIONS(15), 1, + sym_string, + ACTIONS(19), 1, + anon_sym_LBRACK, ACTIONS(21), 1, anon_sym_function, ACTIONS(23), 1, @@ -4155,36 +3948,37 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(25), 1, anon_sym_if, ACTIONS(27), 1, - anon_sym_while, + anon_sym_match, ACTIONS(29), 1, - anon_sym_for, + anon_sym_while, ACTIONS(31), 1, - anon_sym_transform, + anon_sym_for, ACTIONS(33), 1, - anon_sym_filter, + anon_sym_transform, ACTIONS(35), 1, - anon_sym_find, + anon_sym_filter, ACTIONS(37), 1, - anon_sym_remove, + anon_sym_find, ACTIONS(39), 1, - anon_sym_select, + anon_sym_remove, ACTIONS(41), 1, - anon_sym_insert, + anon_sym_reduce, ACTIONS(43), 1, + anon_sym_select, + ACTIONS(45), 1, + anon_sym_insert, + ACTIONS(47), 1, anon_sym_async, - STATE(64), 1, + STATE(65), 1, sym_expression, STATE(68), 1, sym_if, - STATE(258), 1, - sym_item, - ACTIONS(15), 2, + STATE(119), 1, + sym_statement, + ACTIONS(17), 2, anon_sym_true, anon_sym_false, - STATE(23), 2, - sym_statement, - aux_sym_item_repeat1, - STATE(48), 7, + STATE(47), 7, sym__expression_kind, sym_value, sym_index, @@ -4200,36 +3994,40 @@ static const uint16_t ts_small_parse_table[] = { sym_map, sym_function, sym_table, - STATE(131), 12, + STATE(9), 16, + sym__statement_kind, sym_comment, sym_assignment, sym_if_else, + sym_match, sym_while, sym_for, sym_transform, sym_filter, sym_find, sym_remove, + sym_reduce, sym_select, sym_insert, sym_async, - [2057] = 28, + aux_sym_statement_repeat1, + [1661] = 29, ACTIONS(3), 1, sym_identifier, ACTIONS(5), 1, - aux_sym_comment_token1, - ACTIONS(7), 1, - anon_sym_LPAREN, - ACTIONS(9), 1, - sym__numeric, - ACTIONS(11), 1, - anon_sym_DASH, - ACTIONS(13), 1, - sym_string, - ACTIONS(17), 1, - anon_sym_LBRACK, - ACTIONS(19), 1, anon_sym_LBRACE, + ACTIONS(7), 1, + aux_sym_comment_token1, + ACTIONS(9), 1, + anon_sym_LPAREN, + ACTIONS(11), 1, + aux_sym_integer_token1, + ACTIONS(13), 1, + aux_sym_float_token1, + ACTIONS(15), 1, + sym_string, + ACTIONS(19), 1, + anon_sym_LBRACK, ACTIONS(21), 1, anon_sym_function, ACTIONS(23), 1, @@ -4237,36 +4035,550 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(25), 1, anon_sym_if, ACTIONS(27), 1, - anon_sym_while, + anon_sym_match, ACTIONS(29), 1, - anon_sym_for, + anon_sym_while, ACTIONS(31), 1, - anon_sym_transform, + anon_sym_for, ACTIONS(33), 1, - anon_sym_filter, + anon_sym_transform, ACTIONS(35), 1, - anon_sym_find, + anon_sym_filter, ACTIONS(37), 1, - anon_sym_remove, + anon_sym_find, ACTIONS(39), 1, - anon_sym_select, + anon_sym_remove, ACTIONS(41), 1, - anon_sym_insert, + anon_sym_reduce, ACTIONS(43), 1, + anon_sym_select, + ACTIONS(45), 1, + anon_sym_insert, + ACTIONS(47), 1, anon_sym_async, - STATE(64), 1, + STATE(65), 1, + sym_expression, + STATE(68), 1, + sym_if, + STATE(229), 1, + sym_statement, + ACTIONS(17), 2, + anon_sym_true, + anon_sym_false, + STATE(47), 7, + sym__expression_kind, + sym_value, + sym_index, + sym_math, + sym_logic, + sym_function_call, + sym_tool, + STATE(60), 7, + sym_integer, + sym_float, + sym_boolean, + sym_list, + sym_map, + sym_function, + sym_table, + STATE(19), 16, + sym__statement_kind, + sym_comment, + sym_assignment, + sym_if_else, + sym_match, + sym_while, + sym_for, + sym_transform, + sym_filter, + sym_find, + sym_remove, + sym_reduce, + sym_select, + sym_insert, + sym_async, + aux_sym_statement_repeat1, + [1777] = 29, + ACTIONS(3), 1, + sym_identifier, + ACTIONS(5), 1, + anon_sym_LBRACE, + ACTIONS(7), 1, + aux_sym_comment_token1, + ACTIONS(9), 1, + anon_sym_LPAREN, + ACTIONS(11), 1, + aux_sym_integer_token1, + ACTIONS(13), 1, + aux_sym_float_token1, + ACTIONS(15), 1, + sym_string, + ACTIONS(19), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_function, + ACTIONS(23), 1, + anon_sym_table, + ACTIONS(25), 1, + anon_sym_if, + ACTIONS(27), 1, + anon_sym_match, + ACTIONS(29), 1, + anon_sym_while, + ACTIONS(31), 1, + anon_sym_for, + ACTIONS(33), 1, + anon_sym_transform, + ACTIONS(35), 1, + anon_sym_filter, + ACTIONS(37), 1, + anon_sym_find, + ACTIONS(39), 1, + anon_sym_remove, + ACTIONS(41), 1, + anon_sym_reduce, + ACTIONS(43), 1, + anon_sym_select, + ACTIONS(45), 1, + anon_sym_insert, + ACTIONS(47), 1, + anon_sym_async, + STATE(65), 1, + sym_expression, + STATE(68), 1, + sym_if, + STATE(226), 1, + sym_statement, + ACTIONS(17), 2, + anon_sym_true, + anon_sym_false, + STATE(47), 7, + sym__expression_kind, + sym_value, + sym_index, + sym_math, + sym_logic, + sym_function_call, + sym_tool, + STATE(60), 7, + sym_integer, + sym_float, + sym_boolean, + sym_list, + sym_map, + sym_function, + sym_table, + STATE(19), 16, + sym__statement_kind, + sym_comment, + sym_assignment, + sym_if_else, + sym_match, + sym_while, + sym_for, + sym_transform, + sym_filter, + sym_find, + sym_remove, + sym_reduce, + sym_select, + sym_insert, + sym_async, + aux_sym_statement_repeat1, + [1893] = 29, + ACTIONS(3), 1, + sym_identifier, + ACTIONS(7), 1, + aux_sym_comment_token1, + ACTIONS(9), 1, + anon_sym_LPAREN, + ACTIONS(11), 1, + aux_sym_integer_token1, + ACTIONS(13), 1, + aux_sym_float_token1, + ACTIONS(15), 1, + sym_string, + ACTIONS(19), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_function, + ACTIONS(23), 1, + anon_sym_table, + ACTIONS(25), 1, + anon_sym_if, + ACTIONS(27), 1, + anon_sym_match, + ACTIONS(29), 1, + anon_sym_while, + ACTIONS(31), 1, + anon_sym_for, + ACTIONS(33), 1, + anon_sym_transform, + ACTIONS(35), 1, + anon_sym_filter, + ACTIONS(37), 1, + anon_sym_find, + ACTIONS(39), 1, + anon_sym_remove, + ACTIONS(41), 1, + anon_sym_reduce, + ACTIONS(43), 1, + anon_sym_select, + ACTIONS(45), 1, + anon_sym_insert, + ACTIONS(47), 1, + anon_sym_async, + ACTIONS(223), 1, + anon_sym_RBRACE, + ACTIONS(227), 1, + anon_sym_LBRACE, + STATE(65), 1, + sym_expression, + STATE(68), 1, + sym_if, + ACTIONS(17), 2, + anon_sym_true, + anon_sym_false, + STATE(47), 7, + sym__expression_kind, + sym_value, + sym_index, + sym_math, + sym_logic, + sym_function_call, + sym_tool, + STATE(60), 7, + sym_integer, + sym_float, + sym_boolean, + sym_list, + sym_map, + sym_function, + sym_table, + STATE(7), 16, + sym__statement_kind, + sym_comment, + sym_assignment, + sym_if_else, + sym_match, + sym_while, + sym_for, + sym_transform, + sym_filter, + sym_find, + sym_remove, + sym_reduce, + sym_select, + sym_insert, + sym_async, + aux_sym_statement_repeat1, + [2009] = 29, + ACTIONS(3), 1, + sym_identifier, + ACTIONS(5), 1, + anon_sym_LBRACE, + ACTIONS(7), 1, + aux_sym_comment_token1, + ACTIONS(9), 1, + anon_sym_LPAREN, + ACTIONS(11), 1, + aux_sym_integer_token1, + ACTIONS(13), 1, + aux_sym_float_token1, + ACTIONS(15), 1, + sym_string, + ACTIONS(19), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_function, + ACTIONS(23), 1, + anon_sym_table, + ACTIONS(25), 1, + anon_sym_if, + ACTIONS(27), 1, + anon_sym_match, + ACTIONS(29), 1, + anon_sym_while, + ACTIONS(31), 1, + anon_sym_for, + ACTIONS(33), 1, + anon_sym_transform, + ACTIONS(35), 1, + anon_sym_filter, + ACTIONS(37), 1, + anon_sym_find, + ACTIONS(39), 1, + anon_sym_remove, + ACTIONS(41), 1, + anon_sym_reduce, + ACTIONS(43), 1, + anon_sym_select, + ACTIONS(45), 1, + anon_sym_insert, + ACTIONS(47), 1, + anon_sym_async, + STATE(65), 1, + sym_expression, + STATE(68), 1, + sym_if, + STATE(269), 1, + sym_statement, + ACTIONS(17), 2, + anon_sym_true, + anon_sym_false, + STATE(47), 7, + sym__expression_kind, + sym_value, + sym_index, + sym_math, + sym_logic, + sym_function_call, + sym_tool, + STATE(60), 7, + sym_integer, + sym_float, + sym_boolean, + sym_list, + sym_map, + sym_function, + sym_table, + STATE(19), 16, + sym__statement_kind, + sym_comment, + sym_assignment, + sym_if_else, + sym_match, + sym_while, + sym_for, + sym_transform, + sym_filter, + sym_find, + sym_remove, + sym_reduce, + sym_select, + sym_insert, + sym_async, + aux_sym_statement_repeat1, + [2125] = 29, + ACTIONS(3), 1, + sym_identifier, + ACTIONS(5), 1, + anon_sym_LBRACE, + ACTIONS(7), 1, + aux_sym_comment_token1, + ACTIONS(9), 1, + anon_sym_LPAREN, + ACTIONS(11), 1, + aux_sym_integer_token1, + ACTIONS(13), 1, + aux_sym_float_token1, + ACTIONS(15), 1, + sym_string, + ACTIONS(19), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_function, + ACTIONS(23), 1, + anon_sym_table, + ACTIONS(25), 1, + anon_sym_if, + ACTIONS(27), 1, + anon_sym_match, + ACTIONS(29), 1, + anon_sym_while, + ACTIONS(31), 1, + anon_sym_for, + ACTIONS(33), 1, + anon_sym_transform, + ACTIONS(35), 1, + anon_sym_filter, + ACTIONS(37), 1, + anon_sym_find, + ACTIONS(39), 1, + anon_sym_remove, + ACTIONS(41), 1, + anon_sym_reduce, + ACTIONS(43), 1, + anon_sym_select, + ACTIONS(45), 1, + anon_sym_insert, + ACTIONS(47), 1, + anon_sym_async, + STATE(65), 1, + sym_expression, + STATE(68), 1, + sym_if, + STATE(119), 1, + sym_statement, + ACTIONS(17), 2, + anon_sym_true, + anon_sym_false, + STATE(47), 7, + sym__expression_kind, + sym_value, + sym_index, + sym_math, + sym_logic, + sym_function_call, + sym_tool, + STATE(60), 7, + sym_integer, + sym_float, + sym_boolean, + sym_list, + sym_map, + sym_function, + sym_table, + STATE(19), 16, + sym__statement_kind, + sym_comment, + sym_assignment, + sym_if_else, + sym_match, + sym_while, + sym_for, + sym_transform, + sym_filter, + sym_find, + sym_remove, + sym_reduce, + sym_select, + sym_insert, + sym_async, + aux_sym_statement_repeat1, + [2241] = 20, + ACTIONS(7), 1, + aux_sym_comment_token1, + ACTIONS(25), 1, + anon_sym_if, + ACTIONS(27), 1, + anon_sym_match, + ACTIONS(29), 1, + anon_sym_while, + ACTIONS(31), 1, + anon_sym_for, + ACTIONS(33), 1, + anon_sym_transform, + ACTIONS(35), 1, + anon_sym_filter, + ACTIONS(37), 1, + anon_sym_find, + ACTIONS(39), 1, + anon_sym_remove, + ACTIONS(41), 1, + anon_sym_reduce, + ACTIONS(43), 1, + anon_sym_select, + ACTIONS(45), 1, + anon_sym_insert, + ACTIONS(47), 1, + anon_sym_async, + STATE(65), 1, + sym_expression, + STATE(68), 1, + sym_if, + ACTIONS(223), 6, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_LPAREN, + aux_sym_float_token1, + sym_string, + anon_sym_LBRACK, + ACTIONS(225), 6, + sym_identifier, + aux_sym_integer_token1, + anon_sym_true, + anon_sym_false, + anon_sym_function, + anon_sym_table, + STATE(47), 7, + sym__expression_kind, + sym_value, + sym_index, + sym_math, + sym_logic, + sym_function_call, + sym_tool, + STATE(60), 7, + sym_integer, + sym_float, + sym_boolean, + sym_list, + sym_map, + sym_function, + sym_table, + STATE(7), 16, + sym__statement_kind, + sym_comment, + sym_assignment, + sym_if_else, + sym_match, + sym_while, + sym_for, + sym_transform, + sym_filter, + sym_find, + sym_remove, + sym_reduce, + sym_select, + sym_insert, + sym_async, + aux_sym_statement_repeat1, + [2339] = 29, + ACTIONS(3), 1, + sym_identifier, + ACTIONS(5), 1, + anon_sym_LBRACE, + ACTIONS(7), 1, + aux_sym_comment_token1, + ACTIONS(9), 1, + anon_sym_LPAREN, + ACTIONS(11), 1, + aux_sym_integer_token1, + ACTIONS(13), 1, + aux_sym_float_token1, + ACTIONS(15), 1, + sym_string, + ACTIONS(19), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_function, + ACTIONS(23), 1, + anon_sym_table, + ACTIONS(25), 1, + anon_sym_if, + ACTIONS(27), 1, + anon_sym_match, + ACTIONS(29), 1, + anon_sym_while, + ACTIONS(31), 1, + anon_sym_for, + ACTIONS(33), 1, + anon_sym_transform, + ACTIONS(35), 1, + anon_sym_filter, + ACTIONS(37), 1, + anon_sym_find, + ACTIONS(39), 1, + anon_sym_remove, + ACTIONS(41), 1, + anon_sym_reduce, + ACTIONS(43), 1, + anon_sym_select, + ACTIONS(45), 1, + anon_sym_insert, + ACTIONS(47), 1, + anon_sym_async, + STATE(65), 1, sym_expression, STATE(68), 1, sym_if, STATE(236), 1, - sym_item, - ACTIONS(15), 2, + sym_statement, + ACTIONS(17), 2, anon_sym_true, anon_sym_false, - STATE(23), 2, - sym_statement, - aux_sym_item_repeat1, - STATE(48), 7, + STATE(47), 7, sym__expression_kind, sym_value, sym_index, @@ -4282,36 +4594,40 @@ static const uint16_t ts_small_parse_table[] = { sym_map, sym_function, sym_table, - STATE(131), 12, + STATE(19), 16, + sym__statement_kind, sym_comment, sym_assignment, sym_if_else, + sym_match, sym_while, sym_for, sym_transform, sym_filter, sym_find, sym_remove, + sym_reduce, sym_select, sym_insert, sym_async, - [2167] = 28, + aux_sym_statement_repeat1, + [2455] = 29, ACTIONS(3), 1, sym_identifier, ACTIONS(5), 1, - aux_sym_comment_token1, - ACTIONS(7), 1, - anon_sym_LPAREN, - ACTIONS(9), 1, - sym__numeric, - ACTIONS(11), 1, - anon_sym_DASH, - ACTIONS(13), 1, - sym_string, - ACTIONS(17), 1, - anon_sym_LBRACK, - ACTIONS(19), 1, anon_sym_LBRACE, + ACTIONS(7), 1, + aux_sym_comment_token1, + ACTIONS(9), 1, + anon_sym_LPAREN, + ACTIONS(11), 1, + aux_sym_integer_token1, + ACTIONS(13), 1, + aux_sym_float_token1, + ACTIONS(15), 1, + sym_string, + ACTIONS(19), 1, + anon_sym_LBRACK, ACTIONS(21), 1, anon_sym_function, ACTIONS(23), 1, @@ -4319,36 +4635,37 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(25), 1, anon_sym_if, ACTIONS(27), 1, - anon_sym_while, + anon_sym_match, ACTIONS(29), 1, - anon_sym_for, + anon_sym_while, ACTIONS(31), 1, - anon_sym_transform, + anon_sym_for, ACTIONS(33), 1, - anon_sym_filter, + anon_sym_transform, ACTIONS(35), 1, - anon_sym_find, + anon_sym_filter, ACTIONS(37), 1, - anon_sym_remove, + anon_sym_find, ACTIONS(39), 1, - anon_sym_select, + anon_sym_remove, ACTIONS(41), 1, - anon_sym_insert, + anon_sym_reduce, ACTIONS(43), 1, + anon_sym_select, + ACTIONS(45), 1, + anon_sym_insert, + ACTIONS(47), 1, anon_sym_async, - STATE(64), 1, + STATE(65), 1, sym_expression, STATE(68), 1, sym_if, - STATE(222), 1, - sym_item, - ACTIONS(15), 2, + STATE(239), 1, + sym_statement, + ACTIONS(17), 2, anon_sym_true, anon_sym_false, - STATE(23), 2, - sym_statement, - aux_sym_item_repeat1, - STATE(48), 7, + STATE(47), 7, sym__expression_kind, sym_value, sym_index, @@ -4364,36 +4681,40 @@ static const uint16_t ts_small_parse_table[] = { sym_map, sym_function, sym_table, - STATE(131), 12, + STATE(19), 16, + sym__statement_kind, sym_comment, sym_assignment, sym_if_else, + sym_match, sym_while, sym_for, sym_transform, sym_filter, sym_find, sym_remove, + sym_reduce, sym_select, sym_insert, sym_async, - [2277] = 28, + aux_sym_statement_repeat1, + [2571] = 29, ACTIONS(3), 1, sym_identifier, ACTIONS(5), 1, - aux_sym_comment_token1, - ACTIONS(7), 1, - anon_sym_LPAREN, - ACTIONS(9), 1, - sym__numeric, - ACTIONS(11), 1, - anon_sym_DASH, - ACTIONS(13), 1, - sym_string, - ACTIONS(17), 1, - anon_sym_LBRACK, - ACTIONS(19), 1, anon_sym_LBRACE, + ACTIONS(7), 1, + aux_sym_comment_token1, + ACTIONS(9), 1, + anon_sym_LPAREN, + ACTIONS(11), 1, + aux_sym_integer_token1, + ACTIONS(13), 1, + aux_sym_float_token1, + ACTIONS(15), 1, + sym_string, + ACTIONS(19), 1, + anon_sym_LBRACK, ACTIONS(21), 1, anon_sym_function, ACTIONS(23), 1, @@ -4401,36 +4722,37 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(25), 1, anon_sym_if, ACTIONS(27), 1, - anon_sym_while, + anon_sym_match, ACTIONS(29), 1, - anon_sym_for, + anon_sym_while, ACTIONS(31), 1, - anon_sym_transform, + anon_sym_for, ACTIONS(33), 1, - anon_sym_filter, + anon_sym_transform, ACTIONS(35), 1, - anon_sym_find, + anon_sym_filter, ACTIONS(37), 1, - anon_sym_remove, + anon_sym_find, ACTIONS(39), 1, - anon_sym_select, + anon_sym_remove, ACTIONS(41), 1, - anon_sym_insert, + anon_sym_reduce, ACTIONS(43), 1, + anon_sym_select, + ACTIONS(45), 1, + anon_sym_insert, + ACTIONS(47), 1, anon_sym_async, - ACTIONS(207), 1, - anon_sym_RBRACE, - STATE(64), 1, + STATE(65), 1, sym_expression, STATE(68), 1, sym_if, - ACTIONS(15), 2, + STATE(250), 1, + sym_statement, + ACTIONS(17), 2, anon_sym_true, anon_sym_false, - STATE(6), 2, - sym_statement, - aux_sym_item_repeat1, - STATE(48), 7, + STATE(47), 7, sym__expression_kind, sym_value, sym_index, @@ -4446,290 +4768,78 @@ static const uint16_t ts_small_parse_table[] = { sym_map, sym_function, sym_table, - STATE(131), 12, + STATE(19), 16, + sym__statement_kind, sym_comment, sym_assignment, sym_if_else, + sym_match, sym_while, sym_for, sym_transform, sym_filter, sym_find, sym_remove, + sym_reduce, sym_select, sym_insert, sym_async, - [2387] = 8, - STATE(64), 1, - sym_expression, - STATE(68), 1, - sym_if, - STATE(6), 2, - sym_statement, - aux_sym_item_repeat1, - STATE(48), 7, - sym__expression_kind, - sym_value, - sym_index, - sym_math, - sym_logic, - sym_function_call, - sym_tool, - STATE(60), 7, - sym_integer, - sym_float, - sym_boolean, - sym_list, - sym_map, - sym_function, - sym_table, - ACTIONS(207), 8, - ts_builtin_sym_end, - aux_sym_comment_token1, - anon_sym_LPAREN, - sym__numeric, - anon_sym_DASH, - sym_string, - anon_sym_LBRACK, - anon_sym_LBRACE, - STATE(131), 12, - sym_comment, - sym_assignment, - sym_if_else, - sym_while, - sym_for, - sym_transform, - sym_filter, - sym_find, - sym_remove, - sym_select, - sym_insert, - sym_async, - ACTIONS(209), 15, + aux_sym_statement_repeat1, + [2687] = 29, + ACTIONS(3), 1, sym_identifier, - anon_sym_true, - anon_sym_false, - anon_sym_function, - anon_sym_table, - anon_sym_if, - anon_sym_while, - anon_sym_for, - anon_sym_transform, - anon_sym_filter, - anon_sym_find, - anon_sym_remove, - anon_sym_select, - anon_sym_insert, - anon_sym_async, - [2457] = 27, ACTIONS(5), 1, + anon_sym_LBRACE, + ACTIONS(7), 1, aux_sym_comment_token1, + ACTIONS(9), 1, + anon_sym_LPAREN, + ACTIONS(11), 1, + aux_sym_integer_token1, + ACTIONS(13), 1, + aux_sym_float_token1, + ACTIONS(15), 1, + sym_string, + ACTIONS(19), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_function, + ACTIONS(23), 1, + anon_sym_table, ACTIONS(25), 1, anon_sym_if, ACTIONS(27), 1, - anon_sym_while, + anon_sym_match, ACTIONS(29), 1, - anon_sym_for, + anon_sym_while, ACTIONS(31), 1, - anon_sym_transform, + anon_sym_for, ACTIONS(33), 1, - anon_sym_filter, + anon_sym_transform, ACTIONS(35), 1, - anon_sym_find, + anon_sym_filter, ACTIONS(37), 1, + anon_sym_find, + ACTIONS(39), 1, anon_sym_remove, + ACTIONS(41), 1, + anon_sym_reduce, ACTIONS(43), 1, - anon_sym_async, - ACTIONS(47), 1, - anon_sym_LPAREN, - ACTIONS(49), 1, - sym__numeric, - ACTIONS(51), 1, - anon_sym_DASH, - ACTIONS(53), 1, - sym_string, - ACTIONS(57), 1, - anon_sym_LBRACK, - ACTIONS(59), 1, - anon_sym_LBRACE, - ACTIONS(61), 1, - anon_sym_function, - ACTIONS(63), 1, - anon_sym_table, - ACTIONS(211), 1, - sym_identifier, - ACTIONS(213), 1, anon_sym_select, - ACTIONS(215), 1, + ACTIONS(45), 1, anon_sym_insert, + ACTIONS(47), 1, + anon_sym_async, + STATE(65), 1, + sym_expression, STATE(68), 1, sym_if, - STATE(171), 1, - sym_expression, - STATE(209), 1, - sym_statement, - ACTIONS(55), 2, - anon_sym_true, - anon_sym_false, - STATE(157), 7, - sym__expression_kind, - sym_value, - sym_index, - sym_math, - sym_logic, - sym_function_call, - sym_tool, - STATE(159), 7, - sym_integer, - sym_float, - sym_boolean, - sym_list, - sym_map, - sym_function, - sym_table, - STATE(131), 12, - sym_comment, - sym_assignment, - sym_if_else, - sym_while, - sym_for, - sym_transform, - sym_filter, - sym_find, - sym_remove, - sym_select, - sym_insert, - sym_async, - [2563] = 27, - ACTIONS(5), 1, - aux_sym_comment_token1, - ACTIONS(25), 1, - anon_sym_if, - ACTIONS(27), 1, - anon_sym_while, - ACTIONS(29), 1, - anon_sym_for, - ACTIONS(31), 1, - anon_sym_transform, - ACTIONS(33), 1, - anon_sym_filter, - ACTIONS(35), 1, - anon_sym_find, - ACTIONS(37), 1, - anon_sym_remove, - ACTIONS(43), 1, - anon_sym_async, - ACTIONS(47), 1, - anon_sym_LPAREN, - ACTIONS(49), 1, - sym__numeric, - ACTIONS(51), 1, - anon_sym_DASH, - ACTIONS(53), 1, - sym_string, - ACTIONS(57), 1, - anon_sym_LBRACK, - ACTIONS(59), 1, - anon_sym_LBRACE, - ACTIONS(61), 1, - anon_sym_function, - ACTIONS(63), 1, - anon_sym_table, - ACTIONS(211), 1, - sym_identifier, - ACTIONS(213), 1, - anon_sym_select, - ACTIONS(215), 1, - anon_sym_insert, - STATE(68), 1, - sym_if, - STATE(171), 1, - sym_expression, - STATE(228), 1, - sym_statement, - ACTIONS(55), 2, - anon_sym_true, - anon_sym_false, - STATE(157), 7, - sym__expression_kind, - sym_value, - sym_index, - sym_math, - sym_logic, - sym_function_call, - sym_tool, - STATE(159), 7, - sym_integer, - sym_float, - sym_boolean, - sym_list, - sym_map, - sym_function, - sym_table, - STATE(131), 12, - sym_comment, - sym_assignment, - sym_if_else, - sym_while, - sym_for, - sym_transform, - sym_filter, - sym_find, - sym_remove, - sym_select, - sym_insert, - sym_async, - [2669] = 27, - ACTIONS(5), 1, - aux_sym_comment_token1, - ACTIONS(25), 1, - anon_sym_if, - ACTIONS(27), 1, - anon_sym_while, - ACTIONS(29), 1, - anon_sym_for, - ACTIONS(31), 1, - anon_sym_transform, - ACTIONS(33), 1, - anon_sym_filter, - ACTIONS(35), 1, - anon_sym_find, - ACTIONS(37), 1, - anon_sym_remove, - ACTIONS(43), 1, - anon_sym_async, - ACTIONS(47), 1, - anon_sym_LPAREN, - ACTIONS(49), 1, - sym__numeric, - ACTIONS(51), 1, - anon_sym_DASH, - ACTIONS(53), 1, - sym_string, - ACTIONS(57), 1, - anon_sym_LBRACK, - ACTIONS(59), 1, - anon_sym_LBRACE, - ACTIONS(61), 1, - anon_sym_function, - ACTIONS(63), 1, - anon_sym_table, - ACTIONS(211), 1, - sym_identifier, - ACTIONS(213), 1, - anon_sym_select, - ACTIONS(215), 1, - anon_sym_insert, - STATE(68), 1, - sym_if, - STATE(171), 1, - sym_expression, STATE(245), 1, sym_statement, - ACTIONS(55), 2, + ACTIONS(17), 2, anon_sym_true, anon_sym_false, - STATE(157), 7, + STATE(47), 7, sym__expression_kind, sym_value, sym_index, @@ -4737,7 +4847,7 @@ static const uint16_t ts_small_parse_table[] = { sym_logic, sym_function_call, sym_tool, - STATE(159), 7, + STATE(60), 7, sym_integer, sym_float, sym_boolean, @@ -4745,36 +4855,40 @@ static const uint16_t ts_small_parse_table[] = { sym_map, sym_function, sym_table, - STATE(131), 12, + STATE(19), 16, + sym__statement_kind, sym_comment, sym_assignment, sym_if_else, + sym_match, sym_while, sym_for, sym_transform, sym_filter, sym_find, sym_remove, + sym_reduce, sym_select, sym_insert, sym_async, - [2775] = 27, + aux_sym_statement_repeat1, + [2803] = 29, ACTIONS(3), 1, sym_identifier, ACTIONS(5), 1, - aux_sym_comment_token1, - ACTIONS(7), 1, - anon_sym_LPAREN, - ACTIONS(9), 1, - sym__numeric, - ACTIONS(11), 1, - anon_sym_DASH, - ACTIONS(13), 1, - sym_string, - ACTIONS(17), 1, - anon_sym_LBRACK, - ACTIONS(19), 1, anon_sym_LBRACE, + ACTIONS(7), 1, + aux_sym_comment_token1, + ACTIONS(9), 1, + anon_sym_LPAREN, + ACTIONS(11), 1, + aux_sym_integer_token1, + ACTIONS(13), 1, + aux_sym_float_token1, + ACTIONS(15), 1, + sym_string, + ACTIONS(19), 1, + anon_sym_LBRACK, ACTIONS(21), 1, anon_sym_function, ACTIONS(23), 1, @@ -4782,33 +4896,37 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(25), 1, anon_sym_if, ACTIONS(27), 1, - anon_sym_while, + anon_sym_match, ACTIONS(29), 1, - anon_sym_for, + anon_sym_while, ACTIONS(31), 1, - anon_sym_transform, + anon_sym_for, ACTIONS(33), 1, - anon_sym_filter, + anon_sym_transform, ACTIONS(35), 1, - anon_sym_find, + anon_sym_filter, ACTIONS(37), 1, - anon_sym_remove, + anon_sym_find, ACTIONS(39), 1, - anon_sym_select, + anon_sym_remove, ACTIONS(41), 1, - anon_sym_insert, + anon_sym_reduce, ACTIONS(43), 1, + anon_sym_select, + ACTIONS(45), 1, + anon_sym_insert, + ACTIONS(47), 1, anon_sym_async, - STATE(64), 1, + STATE(65), 1, sym_expression, STATE(68), 1, sym_if, - STATE(119), 1, + STATE(259), 1, sym_statement, - ACTIONS(15), 2, + ACTIONS(17), 2, anon_sym_true, anon_sym_false, - STATE(48), 7, + STATE(47), 7, sym__expression_kind, sym_value, sym_index, @@ -4824,722 +4942,78 @@ static const uint16_t ts_small_parse_table[] = { sym_map, sym_function, sym_table, - STATE(131), 12, + STATE(19), 16, + sym__statement_kind, sym_comment, sym_assignment, sym_if_else, + sym_match, sym_while, sym_for, sym_transform, sym_filter, sym_find, sym_remove, + sym_reduce, sym_select, sym_insert, sym_async, - [2881] = 27, + aux_sym_statement_repeat1, + [2919] = 29, + ACTIONS(3), 1, + sym_identifier, ACTIONS(5), 1, - aux_sym_comment_token1, - ACTIONS(25), 1, - anon_sym_if, - ACTIONS(27), 1, - anon_sym_while, - ACTIONS(29), 1, - anon_sym_for, - ACTIONS(31), 1, - anon_sym_transform, - ACTIONS(33), 1, - anon_sym_filter, - ACTIONS(35), 1, - anon_sym_find, - ACTIONS(37), 1, - anon_sym_remove, - ACTIONS(43), 1, - anon_sym_async, - ACTIONS(47), 1, - anon_sym_LPAREN, - ACTIONS(49), 1, - sym__numeric, - ACTIONS(51), 1, - anon_sym_DASH, - ACTIONS(53), 1, - sym_string, - ACTIONS(57), 1, - anon_sym_LBRACK, - ACTIONS(59), 1, anon_sym_LBRACE, - ACTIONS(61), 1, - anon_sym_function, - ACTIONS(63), 1, - anon_sym_table, - ACTIONS(211), 1, - sym_identifier, - ACTIONS(213), 1, - anon_sym_select, - ACTIONS(215), 1, - anon_sym_insert, - STATE(68), 1, - sym_if, - STATE(119), 1, - sym_statement, - STATE(171), 1, - sym_expression, - ACTIONS(55), 2, - anon_sym_true, - anon_sym_false, - STATE(157), 7, - sym__expression_kind, - sym_value, - sym_index, - sym_math, - sym_logic, - sym_function_call, - sym_tool, - STATE(159), 7, - sym_integer, - sym_float, - sym_boolean, - sym_list, - sym_map, - sym_function, - sym_table, - STATE(131), 12, - sym_comment, - sym_assignment, - sym_if_else, - sym_while, - sym_for, - sym_transform, - sym_filter, - sym_find, - sym_remove, - sym_select, - sym_insert, - sym_async, - [2987] = 4, - STATE(91), 1, - sym_math_operator, - STATE(98), 1, - sym_logic_operator, - ACTIONS(219), 18, - sym_identifier, - anon_sym_true, - anon_sym_false, - anon_sym_function, - anon_sym_LT, - anon_sym_GT, - anon_sym_table, - anon_sym_DASH2, - anon_sym_if, - anon_sym_while, - anon_sym_for, - anon_sym_transform, - anon_sym_filter, - anon_sym_find, - anon_sym_remove, - anon_sym_select, - anon_sym_insert, - anon_sym_async, - ACTIONS(217), 24, - ts_builtin_sym_end, - aux_sym_comment_token1, - anon_sym_LPAREN, - anon_sym_RPAREN, - sym__numeric, - anon_sym_DASH, - sym_string, - anon_sym_LBRACK, - anon_sym_COMMA, - anon_sym_RBRACK, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_COLON, - anon_sym_DOT_DOT, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - [3040] = 5, - ACTIONS(225), 1, - anon_sym_DOT_DOT, - STATE(91), 1, - sym_math_operator, - STATE(98), 1, - sym_logic_operator, - ACTIONS(223), 18, - sym_identifier, - anon_sym_true, - anon_sym_false, - anon_sym_function, - anon_sym_LT, - anon_sym_GT, - anon_sym_table, - anon_sym_DASH2, - anon_sym_if, - anon_sym_while, - anon_sym_for, - anon_sym_transform, - anon_sym_filter, - anon_sym_find, - anon_sym_remove, - anon_sym_select, - anon_sym_insert, - anon_sym_async, - ACTIONS(221), 23, - ts_builtin_sym_end, - aux_sym_comment_token1, - anon_sym_LPAREN, - anon_sym_RPAREN, - sym__numeric, - anon_sym_DASH, - sym_string, - anon_sym_LBRACK, - anon_sym_COMMA, - anon_sym_RBRACK, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_COLON, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - [3095] = 4, - STATE(91), 1, - sym_math_operator, - STATE(98), 1, - sym_logic_operator, - ACTIONS(223), 18, - sym_identifier, - anon_sym_true, - anon_sym_false, - anon_sym_function, - anon_sym_LT, - anon_sym_GT, - anon_sym_table, - anon_sym_DASH2, - anon_sym_if, - anon_sym_while, - anon_sym_for, - anon_sym_transform, - anon_sym_filter, - anon_sym_find, - anon_sym_remove, - anon_sym_select, - anon_sym_insert, - anon_sym_async, - ACTIONS(221), 24, - ts_builtin_sym_end, - aux_sym_comment_token1, - anon_sym_LPAREN, - anon_sym_RPAREN, - sym__numeric, - anon_sym_DASH, - sym_string, - anon_sym_LBRACK, - anon_sym_COMMA, - anon_sym_RBRACK, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_COLON, - anon_sym_DOT_DOT, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - [3148] = 4, - STATE(91), 1, - sym_math_operator, - STATE(98), 1, - sym_logic_operator, - ACTIONS(229), 18, - sym_identifier, - anon_sym_true, - anon_sym_false, - anon_sym_function, - anon_sym_LT, - anon_sym_GT, - anon_sym_table, - anon_sym_DASH2, - anon_sym_if, - anon_sym_while, - anon_sym_for, - anon_sym_transform, - anon_sym_filter, - anon_sym_find, - anon_sym_remove, - anon_sym_select, - anon_sym_insert, - anon_sym_async, - ACTIONS(227), 24, - ts_builtin_sym_end, - aux_sym_comment_token1, - anon_sym_LPAREN, - anon_sym_RPAREN, - sym__numeric, - anon_sym_DASH, - sym_string, - anon_sym_LBRACK, - anon_sym_COMMA, - anon_sym_RBRACK, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_COLON, - anon_sym_DOT_DOT, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - [3201] = 4, - STATE(91), 1, - sym_math_operator, - STATE(98), 1, - sym_logic_operator, - ACTIONS(233), 18, - sym_identifier, - anon_sym_true, - anon_sym_false, - anon_sym_function, - anon_sym_LT, - anon_sym_GT, - anon_sym_table, - anon_sym_DASH2, - anon_sym_if, - anon_sym_while, - anon_sym_for, - anon_sym_transform, - anon_sym_filter, - anon_sym_find, - anon_sym_remove, - anon_sym_select, - anon_sym_insert, - anon_sym_async, - ACTIONS(231), 24, - ts_builtin_sym_end, - aux_sym_comment_token1, - anon_sym_LPAREN, - anon_sym_RPAREN, - sym__numeric, - anon_sym_DASH, - sym_string, - anon_sym_LBRACK, - anon_sym_COMMA, - anon_sym_RBRACK, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_COLON, - anon_sym_DOT_DOT, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - [3254] = 9, - ACTIONS(239), 1, - anon_sym_COLON, - ACTIONS(245), 1, - anon_sym_DASH2, - STATE(91), 1, - sym_math_operator, - STATE(98), 1, - sym_logic_operator, - ACTIONS(241), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(243), 4, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(247), 6, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - ACTIONS(235), 13, - ts_builtin_sym_end, - aux_sym_comment_token1, - anon_sym_LPAREN, - anon_sym_RPAREN, - sym__numeric, - anon_sym_DASH, - sym_string, - anon_sym_LBRACK, - anon_sym_COMMA, - anon_sym_RBRACK, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_DOT_DOT, - ACTIONS(237), 15, - sym_identifier, - anon_sym_true, - anon_sym_false, - anon_sym_function, - anon_sym_table, - anon_sym_if, - anon_sym_while, - anon_sym_for, - anon_sym_transform, - anon_sym_filter, - anon_sym_find, - anon_sym_remove, - anon_sym_select, - anon_sym_insert, - anon_sym_async, - [3317] = 4, - STATE(85), 1, - sym_math_operator, - STATE(86), 1, - sym_logic_operator, - ACTIONS(233), 18, - sym_identifier, - anon_sym_true, - anon_sym_false, - anon_sym_function, - anon_sym_LT, - anon_sym_GT, - anon_sym_table, - anon_sym_DASH2, - anon_sym_if, - anon_sym_while, - anon_sym_for, - anon_sym_transform, - anon_sym_filter, - anon_sym_find, - anon_sym_remove, - anon_sym_select, - anon_sym_insert, - anon_sym_async, - ACTIONS(231), 23, - ts_builtin_sym_end, - aux_sym_comment_token1, - anon_sym_LPAREN, - anon_sym_RPAREN, - sym__numeric, - anon_sym_DASH, - sym_string, - anon_sym_LBRACK, - anon_sym_COMMA, - anon_sym_RBRACK, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_COLON, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - [3369] = 3, - ACTIONS(253), 1, - anon_sym_DOT, - ACTIONS(251), 18, - sym_identifier, - anon_sym_true, - anon_sym_false, - anon_sym_function, - anon_sym_LT, - anon_sym_GT, - anon_sym_table, - anon_sym_DASH2, - anon_sym_if, - anon_sym_while, - anon_sym_for, - anon_sym_transform, - anon_sym_filter, - anon_sym_find, - anon_sym_remove, - anon_sym_select, - anon_sym_insert, - anon_sym_async, - ACTIONS(249), 24, - ts_builtin_sym_end, - aux_sym_comment_token1, - anon_sym_LPAREN, - anon_sym_RPAREN, - sym__numeric, - anon_sym_DASH, - sym_string, - anon_sym_LBRACK, - anon_sym_COMMA, - anon_sym_RBRACK, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_COLON, - anon_sym_DOT_DOT, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - [3419] = 4, - STATE(85), 1, - sym_math_operator, - STATE(86), 1, - sym_logic_operator, - ACTIONS(229), 18, - sym_identifier, - anon_sym_true, - anon_sym_false, - anon_sym_function, - anon_sym_LT, - anon_sym_GT, - anon_sym_table, - anon_sym_DASH2, - anon_sym_if, - anon_sym_while, - anon_sym_for, - anon_sym_transform, - anon_sym_filter, - anon_sym_find, - anon_sym_remove, - anon_sym_select, - anon_sym_insert, - anon_sym_async, - ACTIONS(227), 23, - ts_builtin_sym_end, - aux_sym_comment_token1, - anon_sym_LPAREN, - anon_sym_RPAREN, - sym__numeric, - anon_sym_DASH, - sym_string, - anon_sym_LBRACK, - anon_sym_COMMA, - anon_sym_RBRACK, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_COLON, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - [3471] = 9, - ACTIONS(245), 1, - anon_sym_DASH2, - ACTIONS(255), 1, - anon_sym_COLON, - STATE(85), 1, - sym_math_operator, - STATE(86), 1, - sym_logic_operator, - ACTIONS(241), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(243), 4, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(247), 6, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - ACTIONS(235), 12, - ts_builtin_sym_end, - aux_sym_comment_token1, - anon_sym_LPAREN, - anon_sym_RPAREN, - sym__numeric, - anon_sym_DASH, - sym_string, - anon_sym_LBRACK, - anon_sym_COMMA, - anon_sym_RBRACK, - anon_sym_LBRACE, - anon_sym_RBRACE, - ACTIONS(237), 15, - sym_identifier, - anon_sym_true, - anon_sym_false, - anon_sym_function, - anon_sym_table, - anon_sym_if, - anon_sym_while, - anon_sym_for, - anon_sym_transform, - anon_sym_filter, - anon_sym_find, - anon_sym_remove, - anon_sym_select, - anon_sym_insert, - anon_sym_async, - [3533] = 4, - STATE(85), 1, - sym_math_operator, - STATE(86), 1, - sym_logic_operator, - ACTIONS(219), 18, - sym_identifier, - anon_sym_true, - anon_sym_false, - anon_sym_function, - anon_sym_LT, - anon_sym_GT, - anon_sym_table, - anon_sym_DASH2, - anon_sym_if, - anon_sym_while, - anon_sym_for, - anon_sym_transform, - anon_sym_filter, - anon_sym_find, - anon_sym_remove, - anon_sym_select, - anon_sym_insert, - anon_sym_async, - ACTIONS(217), 23, - ts_builtin_sym_end, - aux_sym_comment_token1, - anon_sym_LPAREN, - anon_sym_RPAREN, - sym__numeric, - anon_sym_DASH, - sym_string, - anon_sym_LBRACK, - anon_sym_COMMA, - anon_sym_RBRACK, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_COLON, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - [3585] = 3, - ACTIONS(261), 1, - anon_sym_DOT, - ACTIONS(259), 18, - sym_identifier, - anon_sym_true, - anon_sym_false, - anon_sym_function, - anon_sym_LT, - anon_sym_GT, - anon_sym_table, - anon_sym_DASH2, - anon_sym_if, - anon_sym_while, - anon_sym_for, - anon_sym_transform, - anon_sym_filter, - anon_sym_find, - anon_sym_remove, - anon_sym_select, - anon_sym_insert, - anon_sym_async, - ACTIONS(257), 24, - ts_builtin_sym_end, - aux_sym_comment_token1, - anon_sym_LPAREN, - anon_sym_RPAREN, - sym__numeric, - anon_sym_DASH, - sym_string, - anon_sym_LBRACK, - anon_sym_COMMA, - anon_sym_RBRACK, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_COLON, - anon_sym_DOT_DOT, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - [3635] = 17, ACTIONS(7), 1, - anon_sym_LPAREN, + aux_sym_comment_token1, ACTIONS(9), 1, - sym__numeric, + anon_sym_LPAREN, ACTIONS(11), 1, - anon_sym_DASH, + aux_sym_integer_token1, ACTIONS(13), 1, + aux_sym_float_token1, + ACTIONS(15), 1, sym_string, - ACTIONS(17), 1, - anon_sym_LBRACK, ACTIONS(19), 1, - anon_sym_LBRACE, + anon_sym_LBRACK, ACTIONS(21), 1, anon_sym_function, ACTIONS(23), 1, anon_sym_table, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(265), 1, - anon_sym_RPAREN, - STATE(66), 1, + ACTIONS(25), 1, + anon_sym_if, + ACTIONS(27), 1, + anon_sym_match, + ACTIONS(29), 1, + anon_sym_while, + ACTIONS(31), 1, + anon_sym_for, + ACTIONS(33), 1, + anon_sym_transform, + ACTIONS(35), 1, + anon_sym_filter, + ACTIONS(37), 1, + anon_sym_find, + ACTIONS(39), 1, + anon_sym_remove, + ACTIONS(41), 1, + anon_sym_reduce, + ACTIONS(43), 1, + anon_sym_select, + ACTIONS(45), 1, + anon_sym_insert, + ACTIONS(47), 1, + anon_sym_async, + STATE(65), 1, sym_expression, - STATE(79), 1, - aux_sym_list_repeat1, - ACTIONS(15), 2, + STATE(68), 1, + sym_if, + STATE(248), 1, + sym_statement, + ACTIONS(17), 2, anon_sym_true, anon_sym_false, - ACTIONS(269), 3, - anon_sym_LT, - anon_sym_GT, - anon_sym_DASH2, - STATE(48), 7, + STATE(47), 7, sym__expression_kind, sym_value, sym_index, @@ -5555,7 +5029,583 @@ static const uint16_t ts_small_parse_table[] = { sym_map, sym_function, sym_table, - ACTIONS(267), 11, + STATE(19), 16, + sym__statement_kind, + sym_comment, + sym_assignment, + sym_if_else, + sym_match, + sym_while, + sym_for, + sym_transform, + sym_filter, + sym_find, + sym_remove, + sym_reduce, + sym_select, + sym_insert, + sym_async, + aux_sym_statement_repeat1, + [3035] = 29, + ACTIONS(3), 1, + sym_identifier, + ACTIONS(5), 1, + anon_sym_LBRACE, + ACTIONS(7), 1, + aux_sym_comment_token1, + ACTIONS(9), 1, + anon_sym_LPAREN, + ACTIONS(11), 1, + aux_sym_integer_token1, + ACTIONS(13), 1, + aux_sym_float_token1, + ACTIONS(15), 1, + sym_string, + ACTIONS(19), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_function, + ACTIONS(23), 1, + anon_sym_table, + ACTIONS(25), 1, + anon_sym_if, + ACTIONS(27), 1, + anon_sym_match, + ACTIONS(29), 1, + anon_sym_while, + ACTIONS(31), 1, + anon_sym_for, + ACTIONS(33), 1, + anon_sym_transform, + ACTIONS(35), 1, + anon_sym_filter, + ACTIONS(37), 1, + anon_sym_find, + ACTIONS(39), 1, + anon_sym_remove, + ACTIONS(41), 1, + anon_sym_reduce, + ACTIONS(43), 1, + anon_sym_select, + ACTIONS(45), 1, + anon_sym_insert, + ACTIONS(47), 1, + anon_sym_async, + STATE(65), 1, + sym_expression, + STATE(68), 1, + sym_if, + STATE(193), 1, + sym_statement, + ACTIONS(17), 2, + anon_sym_true, + anon_sym_false, + STATE(47), 7, + sym__expression_kind, + sym_value, + sym_index, + sym_math, + sym_logic, + sym_function_call, + sym_tool, + STATE(60), 7, + sym_integer, + sym_float, + sym_boolean, + sym_list, + sym_map, + sym_function, + sym_table, + STATE(22), 16, + sym__statement_kind, + sym_comment, + sym_assignment, + sym_if_else, + sym_match, + sym_while, + sym_for, + sym_transform, + sym_filter, + sym_find, + sym_remove, + sym_reduce, + sym_select, + sym_insert, + sym_async, + aux_sym_statement_repeat1, + [3151] = 29, + ACTIONS(3), 1, + sym_identifier, + ACTIONS(5), 1, + anon_sym_LBRACE, + ACTIONS(7), 1, + aux_sym_comment_token1, + ACTIONS(9), 1, + anon_sym_LPAREN, + ACTIONS(11), 1, + aux_sym_integer_token1, + ACTIONS(13), 1, + aux_sym_float_token1, + ACTIONS(15), 1, + sym_string, + ACTIONS(19), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_function, + ACTIONS(23), 1, + anon_sym_table, + ACTIONS(25), 1, + anon_sym_if, + ACTIONS(27), 1, + anon_sym_match, + ACTIONS(29), 1, + anon_sym_while, + ACTIONS(31), 1, + anon_sym_for, + ACTIONS(33), 1, + anon_sym_transform, + ACTIONS(35), 1, + anon_sym_filter, + ACTIONS(37), 1, + anon_sym_find, + ACTIONS(39), 1, + anon_sym_remove, + ACTIONS(41), 1, + anon_sym_reduce, + ACTIONS(43), 1, + anon_sym_select, + ACTIONS(45), 1, + anon_sym_insert, + ACTIONS(47), 1, + anon_sym_async, + STATE(65), 1, + sym_expression, + STATE(68), 1, + sym_if, + STATE(238), 1, + sym_statement, + ACTIONS(17), 2, + anon_sym_true, + anon_sym_false, + STATE(47), 7, + sym__expression_kind, + sym_value, + sym_index, + sym_math, + sym_logic, + sym_function_call, + sym_tool, + STATE(60), 7, + sym_integer, + sym_float, + sym_boolean, + sym_list, + sym_map, + sym_function, + sym_table, + STATE(19), 16, + sym__statement_kind, + sym_comment, + sym_assignment, + sym_if_else, + sym_match, + sym_while, + sym_for, + sym_transform, + sym_filter, + sym_find, + sym_remove, + sym_reduce, + sym_select, + sym_insert, + sym_async, + aux_sym_statement_repeat1, + [3267] = 29, + ACTIONS(3), 1, + sym_identifier, + ACTIONS(5), 1, + anon_sym_LBRACE, + ACTIONS(7), 1, + aux_sym_comment_token1, + ACTIONS(9), 1, + anon_sym_LPAREN, + ACTIONS(11), 1, + aux_sym_integer_token1, + ACTIONS(13), 1, + aux_sym_float_token1, + ACTIONS(15), 1, + sym_string, + ACTIONS(19), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_function, + ACTIONS(23), 1, + anon_sym_table, + ACTIONS(25), 1, + anon_sym_if, + ACTIONS(27), 1, + anon_sym_match, + ACTIONS(29), 1, + anon_sym_while, + ACTIONS(31), 1, + anon_sym_for, + ACTIONS(33), 1, + anon_sym_transform, + ACTIONS(35), 1, + anon_sym_filter, + ACTIONS(37), 1, + anon_sym_find, + ACTIONS(39), 1, + anon_sym_remove, + ACTIONS(41), 1, + anon_sym_reduce, + ACTIONS(43), 1, + anon_sym_select, + ACTIONS(45), 1, + anon_sym_insert, + ACTIONS(47), 1, + anon_sym_async, + STATE(65), 1, + sym_expression, + STATE(68), 1, + sym_if, + STATE(240), 1, + sym_statement, + ACTIONS(17), 2, + anon_sym_true, + anon_sym_false, + STATE(47), 7, + sym__expression_kind, + sym_value, + sym_index, + sym_math, + sym_logic, + sym_function_call, + sym_tool, + STATE(60), 7, + sym_integer, + sym_float, + sym_boolean, + sym_list, + sym_map, + sym_function, + sym_table, + STATE(19), 16, + sym__statement_kind, + sym_comment, + sym_assignment, + sym_if_else, + sym_match, + sym_while, + sym_for, + sym_transform, + sym_filter, + sym_find, + sym_remove, + sym_reduce, + sym_select, + sym_insert, + sym_async, + aux_sym_statement_repeat1, + [3383] = 29, + ACTIONS(3), 1, + sym_identifier, + ACTIONS(5), 1, + anon_sym_LBRACE, + ACTIONS(7), 1, + aux_sym_comment_token1, + ACTIONS(9), 1, + anon_sym_LPAREN, + ACTIONS(11), 1, + aux_sym_integer_token1, + ACTIONS(13), 1, + aux_sym_float_token1, + ACTIONS(15), 1, + sym_string, + ACTIONS(19), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_function, + ACTIONS(23), 1, + anon_sym_table, + ACTIONS(25), 1, + anon_sym_if, + ACTIONS(27), 1, + anon_sym_match, + ACTIONS(29), 1, + anon_sym_while, + ACTIONS(31), 1, + anon_sym_for, + ACTIONS(33), 1, + anon_sym_transform, + ACTIONS(35), 1, + anon_sym_filter, + ACTIONS(37), 1, + anon_sym_find, + ACTIONS(39), 1, + anon_sym_remove, + ACTIONS(41), 1, + anon_sym_reduce, + ACTIONS(43), 1, + anon_sym_select, + ACTIONS(45), 1, + anon_sym_insert, + ACTIONS(47), 1, + anon_sym_async, + STATE(65), 1, + sym_expression, + STATE(68), 1, + sym_if, + STATE(234), 1, + sym_statement, + ACTIONS(17), 2, + anon_sym_true, + anon_sym_false, + STATE(47), 7, + sym__expression_kind, + sym_value, + sym_index, + sym_math, + sym_logic, + sym_function_call, + sym_tool, + STATE(60), 7, + sym_integer, + sym_float, + sym_boolean, + sym_list, + sym_map, + sym_function, + sym_table, + STATE(19), 16, + sym__statement_kind, + sym_comment, + sym_assignment, + sym_if_else, + sym_match, + sym_while, + sym_for, + sym_transform, + sym_filter, + sym_find, + sym_remove, + sym_reduce, + sym_select, + sym_insert, + sym_async, + aux_sym_statement_repeat1, + [3499] = 29, + ACTIONS(3), 1, + sym_identifier, + ACTIONS(5), 1, + anon_sym_LBRACE, + ACTIONS(7), 1, + aux_sym_comment_token1, + ACTIONS(9), 1, + anon_sym_LPAREN, + ACTIONS(11), 1, + aux_sym_integer_token1, + ACTIONS(13), 1, + aux_sym_float_token1, + ACTIONS(15), 1, + sym_string, + ACTIONS(19), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_function, + ACTIONS(23), 1, + anon_sym_table, + ACTIONS(25), 1, + anon_sym_if, + ACTIONS(27), 1, + anon_sym_match, + ACTIONS(29), 1, + anon_sym_while, + ACTIONS(31), 1, + anon_sym_for, + ACTIONS(33), 1, + anon_sym_transform, + ACTIONS(35), 1, + anon_sym_filter, + ACTIONS(37), 1, + anon_sym_find, + ACTIONS(39), 1, + anon_sym_remove, + ACTIONS(41), 1, + anon_sym_reduce, + ACTIONS(43), 1, + anon_sym_select, + ACTIONS(45), 1, + anon_sym_insert, + ACTIONS(47), 1, + anon_sym_async, + STATE(65), 1, + sym_expression, + STATE(68), 1, + sym_if, + STATE(247), 1, + sym_statement, + ACTIONS(17), 2, + anon_sym_true, + anon_sym_false, + STATE(47), 7, + sym__expression_kind, + sym_value, + sym_index, + sym_math, + sym_logic, + sym_function_call, + sym_tool, + STATE(60), 7, + sym_integer, + sym_float, + sym_boolean, + sym_list, + sym_map, + sym_function, + sym_table, + STATE(19), 16, + sym__statement_kind, + sym_comment, + sym_assignment, + sym_if_else, + sym_match, + sym_while, + sym_for, + sym_transform, + sym_filter, + sym_find, + sym_remove, + sym_reduce, + sym_select, + sym_insert, + sym_async, + aux_sym_statement_repeat1, + [3615] = 28, + ACTIONS(7), 1, + aux_sym_comment_token1, + ACTIONS(25), 1, + anon_sym_if, + ACTIONS(27), 1, + anon_sym_match, + ACTIONS(29), 1, + anon_sym_while, + ACTIONS(31), 1, + anon_sym_for, + ACTIONS(33), 1, + anon_sym_transform, + ACTIONS(35), 1, + anon_sym_filter, + ACTIONS(37), 1, + anon_sym_find, + ACTIONS(39), 1, + anon_sym_remove, + ACTIONS(41), 1, + anon_sym_reduce, + ACTIONS(47), 1, + anon_sym_async, + ACTIONS(128), 1, + anon_sym_LBRACE, + ACTIONS(130), 1, + anon_sym_LPAREN, + ACTIONS(132), 1, + aux_sym_integer_token1, + ACTIONS(134), 1, + aux_sym_float_token1, + ACTIONS(136), 1, + sym_string, + ACTIONS(140), 1, + anon_sym_LBRACK, + ACTIONS(142), 1, + anon_sym_function, + ACTIONS(144), 1, + anon_sym_table, + ACTIONS(229), 1, + sym_identifier, + ACTIONS(231), 1, + anon_sym_select, + ACTIONS(233), 1, + anon_sym_insert, + STATE(68), 1, + sym_if, + STATE(185), 1, + sym_expression, + ACTIONS(138), 2, + anon_sym_true, + anon_sym_false, + STATE(160), 7, + sym__expression_kind, + sym_value, + sym_index, + sym_math, + sym_logic, + sym_function_call, + sym_tool, + STATE(162), 7, + sym_integer, + sym_float, + sym_boolean, + sym_list, + sym_map, + sym_function, + sym_table, + STATE(251), 15, + sym__statement_kind, + sym_comment, + sym_assignment, + sym_if_else, + sym_match, + sym_while, + sym_for, + sym_transform, + sym_filter, + sym_find, + sym_remove, + sym_reduce, + sym_select, + sym_insert, + sym_async, + [3727] = 5, + ACTIONS(239), 1, + anon_sym_DOT_DOT, + STATE(99), 1, + sym_logic_operator, + STATE(118), 1, + sym_math_operator, + ACTIONS(237), 21, + sym_identifier, + aux_sym_integer_token1, + anon_sym_true, + anon_sym_false, + anon_sym_function, + anon_sym_LT, + anon_sym_GT, + anon_sym_table, + anon_sym_DASH, + anon_sym_if, + anon_sym_match, + anon_sym_while, + anon_sym_for, + anon_sym_transform, + anon_sym_filter, + anon_sym_find, + anon_sym_remove, + anon_sym_reduce, + anon_sym_select, + anon_sym_insert, + anon_sym_async, + ACTIONS(235), 22, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_RBRACE, + aux_sym_comment_token1, + anon_sym_LPAREN, + anon_sym_RPAREN, + aux_sym_float_token1, + sym_string, + anon_sym_LBRACK, + anon_sym_COMMA, + anon_sym_RBRACK, anon_sym_COLON, anon_sym_PLUS, anon_sym_STAR, @@ -5567,39 +5617,45 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - [3712] = 2, - ACTIONS(273), 18, + [3784] = 4, + STATE(99), 1, + sym_logic_operator, + STATE(118), 1, + sym_math_operator, + ACTIONS(243), 21, sym_identifier, + aux_sym_integer_token1, anon_sym_true, anon_sym_false, anon_sym_function, anon_sym_LT, anon_sym_GT, anon_sym_table, - anon_sym_DASH2, + anon_sym_DASH, anon_sym_if, + anon_sym_match, anon_sym_while, anon_sym_for, anon_sym_transform, anon_sym_filter, anon_sym_find, anon_sym_remove, + anon_sym_reduce, anon_sym_select, anon_sym_insert, anon_sym_async, - ACTIONS(271), 24, + ACTIONS(241), 23, ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_RBRACE, aux_sym_comment_token1, anon_sym_LPAREN, anon_sym_RPAREN, - sym__numeric, - anon_sym_DASH, + aux_sym_float_token1, sym_string, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_RBRACK, - anon_sym_LBRACE, - anon_sym_RBRACE, anon_sym_COLON, anon_sym_DOT_DOT, anon_sym_PLUS, @@ -5612,39 +5668,101 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - [3759] = 2, - ACTIONS(277), 18, + [3839] = 9, + ACTIONS(249), 1, + anon_sym_COLON, + ACTIONS(255), 1, + anon_sym_DASH, + STATE(99), 1, + sym_logic_operator, + STATE(118), 1, + sym_math_operator, + ACTIONS(251), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(253), 4, + anon_sym_PLUS, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(257), 6, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + ACTIONS(245), 12, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_RBRACE, + aux_sym_comment_token1, + anon_sym_LPAREN, + anon_sym_RPAREN, + aux_sym_float_token1, + sym_string, + anon_sym_LBRACK, + anon_sym_COMMA, + anon_sym_RBRACK, + anon_sym_DOT_DOT, + ACTIONS(247), 18, sym_identifier, + aux_sym_integer_token1, anon_sym_true, anon_sym_false, anon_sym_function, - anon_sym_LT, - anon_sym_GT, anon_sym_table, - anon_sym_DASH2, anon_sym_if, + anon_sym_match, anon_sym_while, anon_sym_for, anon_sym_transform, anon_sym_filter, anon_sym_find, anon_sym_remove, + anon_sym_reduce, anon_sym_select, anon_sym_insert, anon_sym_async, - ACTIONS(275), 24, + [3904] = 4, + STATE(99), 1, + sym_logic_operator, + STATE(118), 1, + sym_math_operator, + ACTIONS(261), 21, + sym_identifier, + aux_sym_integer_token1, + anon_sym_true, + anon_sym_false, + anon_sym_function, + anon_sym_LT, + anon_sym_GT, + anon_sym_table, + anon_sym_DASH, + anon_sym_if, + anon_sym_match, + anon_sym_while, + anon_sym_for, + anon_sym_transform, + anon_sym_filter, + anon_sym_find, + anon_sym_remove, + anon_sym_reduce, + anon_sym_select, + anon_sym_insert, + anon_sym_async, + ACTIONS(259), 23, ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_RBRACE, aux_sym_comment_token1, anon_sym_LPAREN, anon_sym_RPAREN, - sym__numeric, - anon_sym_DASH, + aux_sym_float_token1, sym_string, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_RBRACK, - anon_sym_LBRACE, - anon_sym_RBRACE, anon_sym_COLON, anon_sym_DOT_DOT, anon_sym_PLUS, @@ -5657,39 +5775,45 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - [3806] = 2, - ACTIONS(281), 18, + [3959] = 4, + STATE(99), 1, + sym_logic_operator, + STATE(118), 1, + sym_math_operator, + ACTIONS(237), 21, sym_identifier, + aux_sym_integer_token1, anon_sym_true, anon_sym_false, anon_sym_function, anon_sym_LT, anon_sym_GT, anon_sym_table, - anon_sym_DASH2, + anon_sym_DASH, anon_sym_if, + anon_sym_match, anon_sym_while, anon_sym_for, anon_sym_transform, anon_sym_filter, anon_sym_find, anon_sym_remove, + anon_sym_reduce, anon_sym_select, anon_sym_insert, anon_sym_async, - ACTIONS(279), 24, + ACTIONS(235), 23, ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_RBRACE, aux_sym_comment_token1, anon_sym_LPAREN, anon_sym_RPAREN, - sym__numeric, - anon_sym_DASH, + aux_sym_float_token1, sym_string, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_RBRACK, - anon_sym_LBRACE, - anon_sym_RBRACE, anon_sym_COLON, anon_sym_DOT_DOT, anon_sym_PLUS, @@ -5702,177 +5826,676 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - [3853] = 5, - ACTIONS(283), 1, + [4014] = 4, + STATE(99), 1, + sym_logic_operator, + STATE(118), 1, + sym_math_operator, + ACTIONS(265), 21, + sym_identifier, + aux_sym_integer_token1, + anon_sym_true, + anon_sym_false, + anon_sym_function, + anon_sym_LT, + anon_sym_GT, + anon_sym_table, + anon_sym_DASH, + anon_sym_if, + anon_sym_match, + anon_sym_while, + anon_sym_for, + anon_sym_transform, + anon_sym_filter, + anon_sym_find, + anon_sym_remove, + anon_sym_reduce, + anon_sym_select, + anon_sym_insert, + anon_sym_async, + ACTIONS(263), 23, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_RBRACE, + aux_sym_comment_token1, + anon_sym_LPAREN, + anon_sym_RPAREN, + aux_sym_float_token1, + sym_string, + anon_sym_LBRACK, + anon_sym_COMMA, + anon_sym_RBRACK, + anon_sym_COLON, + anon_sym_DOT_DOT, + anon_sym_PLUS, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + [4069] = 4, + STATE(130), 1, + sym_math_operator, + STATE(137), 1, + sym_logic_operator, + ACTIONS(265), 21, + sym_identifier, + aux_sym_integer_token1, + anon_sym_true, + anon_sym_false, + anon_sym_function, + anon_sym_LT, + anon_sym_GT, + anon_sym_table, + anon_sym_DASH, + anon_sym_if, + anon_sym_match, + anon_sym_while, + anon_sym_for, + anon_sym_transform, + anon_sym_filter, + anon_sym_find, + anon_sym_remove, + anon_sym_reduce, + anon_sym_select, + anon_sym_insert, + anon_sym_async, + ACTIONS(263), 22, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_RBRACE, + aux_sym_comment_token1, + anon_sym_LPAREN, + anon_sym_RPAREN, + aux_sym_float_token1, + sym_string, + anon_sym_LBRACK, + anon_sym_COMMA, + anon_sym_RBRACK, + anon_sym_COLON, + anon_sym_PLUS, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + [4123] = 4, + STATE(130), 1, + sym_math_operator, + STATE(137), 1, + sym_logic_operator, + ACTIONS(261), 21, + sym_identifier, + aux_sym_integer_token1, + anon_sym_true, + anon_sym_false, + anon_sym_function, + anon_sym_LT, + anon_sym_GT, + anon_sym_table, + anon_sym_DASH, + anon_sym_if, + anon_sym_match, + anon_sym_while, + anon_sym_for, + anon_sym_transform, + anon_sym_filter, + anon_sym_find, + anon_sym_remove, + anon_sym_reduce, + anon_sym_select, + anon_sym_insert, + anon_sym_async, + ACTIONS(259), 22, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_RBRACE, + aux_sym_comment_token1, + anon_sym_LPAREN, + anon_sym_RPAREN, + aux_sym_float_token1, + sym_string, + anon_sym_LBRACK, + anon_sym_COMMA, + anon_sym_RBRACK, + anon_sym_COLON, + anon_sym_PLUS, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + [4177] = 9, + ACTIONS(255), 1, + anon_sym_DASH, + ACTIONS(267), 1, + anon_sym_COLON, + STATE(130), 1, + sym_math_operator, + STATE(137), 1, + sym_logic_operator, + ACTIONS(251), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(253), 4, + anon_sym_PLUS, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(257), 6, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + ACTIONS(245), 11, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_RBRACE, + aux_sym_comment_token1, + anon_sym_LPAREN, + anon_sym_RPAREN, + aux_sym_float_token1, + sym_string, + anon_sym_LBRACK, + anon_sym_COMMA, + anon_sym_RBRACK, + ACTIONS(247), 18, + sym_identifier, + aux_sym_integer_token1, + anon_sym_true, + anon_sym_false, + anon_sym_function, + anon_sym_table, + anon_sym_if, + anon_sym_match, + anon_sym_while, + anon_sym_for, + anon_sym_transform, + anon_sym_filter, + anon_sym_find, + anon_sym_remove, + anon_sym_reduce, + anon_sym_select, + anon_sym_insert, + anon_sym_async, + [4241] = 4, + STATE(130), 1, + sym_math_operator, + STATE(137), 1, + sym_logic_operator, + ACTIONS(243), 21, + sym_identifier, + aux_sym_integer_token1, + anon_sym_true, + anon_sym_false, + anon_sym_function, + anon_sym_LT, + anon_sym_GT, + anon_sym_table, + anon_sym_DASH, + anon_sym_if, + anon_sym_match, + anon_sym_while, + anon_sym_for, + anon_sym_transform, + anon_sym_filter, + anon_sym_find, + anon_sym_remove, + anon_sym_reduce, + anon_sym_select, + anon_sym_insert, + anon_sym_async, + ACTIONS(241), 22, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_RBRACE, + aux_sym_comment_token1, + anon_sym_LPAREN, + anon_sym_RPAREN, + aux_sym_float_token1, + sym_string, + anon_sym_LBRACK, + anon_sym_COMMA, + anon_sym_RBRACK, + anon_sym_COLON, + anon_sym_PLUS, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + [4295] = 2, + ACTIONS(271), 21, + sym_identifier, + aux_sym_integer_token1, + anon_sym_true, + anon_sym_false, + anon_sym_function, + anon_sym_LT, + anon_sym_GT, + anon_sym_table, + anon_sym_DASH, + anon_sym_if, + anon_sym_match, + anon_sym_while, + anon_sym_for, + anon_sym_transform, + anon_sym_filter, + anon_sym_find, + anon_sym_remove, + anon_sym_reduce, + anon_sym_select, + anon_sym_insert, + anon_sym_async, + ACTIONS(269), 23, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_RBRACE, + aux_sym_comment_token1, + anon_sym_LPAREN, + anon_sym_RPAREN, + aux_sym_float_token1, + sym_string, + anon_sym_LBRACK, + anon_sym_COMMA, + anon_sym_RBRACK, + anon_sym_COLON, + anon_sym_DOT_DOT, + anon_sym_PLUS, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + [4344] = 2, + ACTIONS(275), 21, + sym_identifier, + aux_sym_integer_token1, + anon_sym_true, + anon_sym_false, + anon_sym_function, + anon_sym_LT, + anon_sym_GT, + anon_sym_table, + anon_sym_DASH, + anon_sym_if, + anon_sym_match, + anon_sym_while, + anon_sym_for, + anon_sym_transform, + anon_sym_filter, + anon_sym_find, + anon_sym_remove, + anon_sym_reduce, + anon_sym_select, + anon_sym_insert, + anon_sym_async, + ACTIONS(273), 23, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_RBRACE, + aux_sym_comment_token1, + anon_sym_LPAREN, + anon_sym_RPAREN, + aux_sym_float_token1, + sym_string, + anon_sym_LBRACK, + anon_sym_COMMA, + anon_sym_RBRACK, + anon_sym_COLON, + anon_sym_DOT_DOT, + anon_sym_PLUS, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + [4393] = 2, + ACTIONS(279), 21, + sym_identifier, + aux_sym_integer_token1, + anon_sym_true, + anon_sym_false, + anon_sym_function, + anon_sym_LT, + anon_sym_GT, + anon_sym_table, + anon_sym_DASH, + anon_sym_if, + anon_sym_match, + anon_sym_while, + anon_sym_for, + anon_sym_transform, + anon_sym_filter, + anon_sym_find, + anon_sym_remove, + anon_sym_reduce, + anon_sym_select, + anon_sym_insert, + anon_sym_async, + ACTIONS(277), 23, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_RBRACE, + aux_sym_comment_token1, + anon_sym_LPAREN, + anon_sym_RPAREN, + aux_sym_float_token1, + sym_string, + anon_sym_LBRACK, + anon_sym_COMMA, + anon_sym_RBRACK, + anon_sym_COLON, + anon_sym_DOT_DOT, + anon_sym_PLUS, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + [4442] = 2, + ACTIONS(283), 21, + sym_identifier, + aux_sym_integer_token1, + anon_sym_true, + anon_sym_false, + anon_sym_function, + anon_sym_LT, + anon_sym_GT, + anon_sym_table, + anon_sym_DASH, + anon_sym_if, + anon_sym_match, + anon_sym_while, + anon_sym_for, + anon_sym_transform, + anon_sym_filter, + anon_sym_find, + anon_sym_remove, + anon_sym_reduce, + anon_sym_select, + anon_sym_insert, + anon_sym_async, + ACTIONS(281), 23, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_RBRACE, + aux_sym_comment_token1, + anon_sym_LPAREN, + anon_sym_RPAREN, + aux_sym_float_token1, + sym_string, + anon_sym_LBRACK, + anon_sym_COMMA, + anon_sym_RBRACK, + anon_sym_COLON, + anon_sym_DOT_DOT, + anon_sym_PLUS, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + [4491] = 2, + ACTIONS(287), 21, + sym_identifier, + aux_sym_integer_token1, + anon_sym_true, + anon_sym_false, + anon_sym_function, + anon_sym_LT, + anon_sym_GT, + anon_sym_table, + anon_sym_DASH, + anon_sym_if, + anon_sym_match, + anon_sym_while, + anon_sym_for, + anon_sym_transform, + anon_sym_filter, + anon_sym_find, + anon_sym_remove, + anon_sym_reduce, + anon_sym_select, + anon_sym_insert, + anon_sym_async, + ACTIONS(285), 23, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_RBRACE, + aux_sym_comment_token1, + anon_sym_LPAREN, + anon_sym_RPAREN, + aux_sym_float_token1, + sym_string, + anon_sym_LBRACK, + anon_sym_COMMA, + anon_sym_RBRACK, + anon_sym_COLON, + anon_sym_DOT_DOT, + anon_sym_PLUS, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + [4540] = 2, + ACTIONS(291), 21, + sym_identifier, + aux_sym_integer_token1, + anon_sym_true, + anon_sym_false, + anon_sym_function, + anon_sym_LT, + anon_sym_GT, + anon_sym_table, + anon_sym_DASH, + anon_sym_if, + anon_sym_match, + anon_sym_while, + anon_sym_for, + anon_sym_transform, + anon_sym_filter, + anon_sym_find, + anon_sym_remove, + anon_sym_reduce, + anon_sym_select, + anon_sym_insert, + anon_sym_async, + ACTIONS(289), 23, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_RBRACE, + aux_sym_comment_token1, + anon_sym_LPAREN, + anon_sym_RPAREN, + aux_sym_float_token1, + sym_string, + anon_sym_LBRACK, + anon_sym_COMMA, + anon_sym_RBRACK, + anon_sym_COLON, + anon_sym_DOT_DOT, + anon_sym_PLUS, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + [4589] = 2, + ACTIONS(295), 21, + sym_identifier, + aux_sym_integer_token1, + anon_sym_true, + anon_sym_false, + anon_sym_function, + anon_sym_LT, + anon_sym_GT, + anon_sym_table, + anon_sym_DASH, + anon_sym_if, + anon_sym_match, + anon_sym_while, + anon_sym_for, + anon_sym_transform, + anon_sym_filter, + anon_sym_find, + anon_sym_remove, + anon_sym_reduce, + anon_sym_select, + anon_sym_insert, + anon_sym_async, + ACTIONS(293), 23, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_RBRACE, + aux_sym_comment_token1, + anon_sym_LPAREN, + anon_sym_RPAREN, + aux_sym_float_token1, + sym_string, + anon_sym_LBRACK, + anon_sym_COMMA, + anon_sym_RBRACK, + anon_sym_COLON, + anon_sym_DOT_DOT, + anon_sym_PLUS, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + [4638] = 5, + ACTIONS(301), 1, anon_sym_EQ, - STATE(28), 1, + STATE(16), 1, sym_assignment_operator, - ACTIONS(285), 2, + ACTIONS(303), 2, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, - ACTIONS(267), 18, - ts_builtin_sym_end, - aux_sym_comment_token1, - anon_sym_LPAREN, - sym__numeric, - sym_string, - anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_COLON, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - ACTIONS(269), 20, - sym_identifier, - anon_sym_DASH, - anon_sym_true, - anon_sym_false, - anon_sym_function, - anon_sym_LT, - anon_sym_GT, - anon_sym_table, - anon_sym_PLUS, - anon_sym_DASH2, - anon_sym_if, - anon_sym_while, - anon_sym_for, - anon_sym_transform, - anon_sym_filter, - anon_sym_find, - anon_sym_remove, - anon_sym_select, - anon_sym_insert, - anon_sym_async, - [3906] = 2, - ACTIONS(289), 18, - sym_identifier, - anon_sym_true, - anon_sym_false, - anon_sym_function, - anon_sym_LT, - anon_sym_GT, - anon_sym_table, - anon_sym_DASH2, - anon_sym_if, - anon_sym_while, - anon_sym_for, - anon_sym_transform, - anon_sym_filter, - anon_sym_find, - anon_sym_remove, - anon_sym_select, - anon_sym_insert, - anon_sym_async, - ACTIONS(287), 24, - ts_builtin_sym_end, - aux_sym_comment_token1, - anon_sym_LPAREN, - anon_sym_RPAREN, - sym__numeric, - anon_sym_DASH, - sym_string, - anon_sym_LBRACK, - anon_sym_COMMA, - anon_sym_RBRACK, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_COLON, - anon_sym_DOT_DOT, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - [3953] = 2, - ACTIONS(293), 18, - sym_identifier, - anon_sym_true, - anon_sym_false, - anon_sym_function, - anon_sym_LT, - anon_sym_GT, - anon_sym_table, - anon_sym_DASH2, - anon_sym_if, - anon_sym_while, - anon_sym_for, - anon_sym_transform, - anon_sym_filter, - anon_sym_find, - anon_sym_remove, - anon_sym_select, - anon_sym_insert, - anon_sym_async, - ACTIONS(291), 24, - ts_builtin_sym_end, - aux_sym_comment_token1, - anon_sym_LPAREN, - anon_sym_RPAREN, - sym__numeric, - anon_sym_DASH, - sym_string, - anon_sym_LBRACK, - anon_sym_COMMA, - anon_sym_RBRACK, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_COLON, - anon_sym_DOT_DOT, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - [4000] = 2, ACTIONS(297), 18, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_RBRACE, + aux_sym_comment_token1, + anon_sym_LPAREN, + aux_sym_float_token1, + sym_string, + anon_sym_LBRACK, + anon_sym_COLON, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + ACTIONS(299), 22, sym_identifier, + aux_sym_integer_token1, anon_sym_true, anon_sym_false, anon_sym_function, anon_sym_LT, anon_sym_GT, anon_sym_table, - anon_sym_DASH2, + anon_sym_PLUS, + anon_sym_DASH, anon_sym_if, + anon_sym_match, anon_sym_while, anon_sym_for, anon_sym_transform, anon_sym_filter, anon_sym_find, anon_sym_remove, + anon_sym_reduce, anon_sym_select, anon_sym_insert, anon_sym_async, - ACTIONS(295), 24, + [4693] = 2, + ACTIONS(307), 21, + sym_identifier, + aux_sym_integer_token1, + anon_sym_true, + anon_sym_false, + anon_sym_function, + anon_sym_LT, + anon_sym_GT, + anon_sym_table, + anon_sym_DASH, + anon_sym_if, + anon_sym_match, + anon_sym_while, + anon_sym_for, + anon_sym_transform, + anon_sym_filter, + anon_sym_find, + anon_sym_remove, + anon_sym_reduce, + anon_sym_select, + anon_sym_insert, + anon_sym_async, + ACTIONS(305), 23, ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_RBRACE, aux_sym_comment_token1, anon_sym_LPAREN, anon_sym_RPAREN, - sym__numeric, - anon_sym_DASH, + aux_sym_float_token1, sym_string, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_RBRACK, - anon_sym_LBRACE, - anon_sym_RBRACE, anon_sym_COLON, anon_sym_DOT_DOT, anon_sym_PLUS, @@ -5885,39 +6508,41 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - [4047] = 2, - ACTIONS(301), 18, + [4742] = 2, + ACTIONS(311), 21, sym_identifier, + aux_sym_integer_token1, anon_sym_true, anon_sym_false, anon_sym_function, anon_sym_LT, anon_sym_GT, anon_sym_table, - anon_sym_DASH2, + anon_sym_DASH, anon_sym_if, + anon_sym_match, anon_sym_while, anon_sym_for, anon_sym_transform, anon_sym_filter, anon_sym_find, anon_sym_remove, + anon_sym_reduce, anon_sym_select, anon_sym_insert, anon_sym_async, - ACTIONS(299), 24, + ACTIONS(309), 23, ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_RBRACE, aux_sym_comment_token1, anon_sym_LPAREN, anon_sym_RPAREN, - sym__numeric, - anon_sym_DASH, + aux_sym_float_token1, sym_string, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_RBRACK, - anon_sym_LBRACE, - anon_sym_RBRACE, anon_sym_COLON, anon_sym_DOT_DOT, anon_sym_PLUS, @@ -5930,39 +6555,41 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - [4094] = 2, - ACTIONS(305), 18, + [4791] = 2, + ACTIONS(315), 21, sym_identifier, + aux_sym_integer_token1, anon_sym_true, anon_sym_false, anon_sym_function, anon_sym_LT, anon_sym_GT, anon_sym_table, - anon_sym_DASH2, + anon_sym_DASH, anon_sym_if, + anon_sym_match, anon_sym_while, anon_sym_for, anon_sym_transform, anon_sym_filter, anon_sym_find, anon_sym_remove, + anon_sym_reduce, anon_sym_select, anon_sym_insert, anon_sym_async, - ACTIONS(303), 24, + ACTIONS(313), 23, ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_RBRACE, aux_sym_comment_token1, anon_sym_LPAREN, anon_sym_RPAREN, - sym__numeric, - anon_sym_DASH, + aux_sym_float_token1, sym_string, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_RBRACK, - anon_sym_LBRACE, - anon_sym_RBRACE, anon_sym_COLON, anon_sym_DOT_DOT, anon_sym_PLUS, @@ -5975,39 +6602,41 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - [4141] = 2, - ACTIONS(309), 18, + [4840] = 2, + ACTIONS(319), 21, sym_identifier, + aux_sym_integer_token1, anon_sym_true, anon_sym_false, anon_sym_function, anon_sym_LT, anon_sym_GT, anon_sym_table, - anon_sym_DASH2, + anon_sym_DASH, anon_sym_if, + anon_sym_match, anon_sym_while, anon_sym_for, anon_sym_transform, anon_sym_filter, anon_sym_find, anon_sym_remove, + anon_sym_reduce, anon_sym_select, anon_sym_insert, anon_sym_async, - ACTIONS(307), 24, + ACTIONS(317), 23, ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_RBRACE, aux_sym_comment_token1, anon_sym_LPAREN, anon_sym_RPAREN, - sym__numeric, - anon_sym_DASH, + aux_sym_float_token1, sym_string, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_RBRACK, - anon_sym_LBRACE, - anon_sym_RBRACE, anon_sym_COLON, anon_sym_DOT_DOT, anon_sym_PLUS, @@ -6020,39 +6649,41 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - [4188] = 2, - ACTIONS(313), 18, + [4889] = 2, + ACTIONS(323), 21, sym_identifier, + aux_sym_integer_token1, anon_sym_true, anon_sym_false, anon_sym_function, anon_sym_LT, anon_sym_GT, anon_sym_table, - anon_sym_DASH2, + anon_sym_DASH, anon_sym_if, + anon_sym_match, anon_sym_while, anon_sym_for, anon_sym_transform, anon_sym_filter, anon_sym_find, anon_sym_remove, + anon_sym_reduce, anon_sym_select, anon_sym_insert, anon_sym_async, - ACTIONS(311), 24, + ACTIONS(321), 23, ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_RBRACE, aux_sym_comment_token1, anon_sym_LPAREN, anon_sym_RPAREN, - sym__numeric, - anon_sym_DASH, + aux_sym_float_token1, sym_string, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_RBRACK, - anon_sym_LBRACE, - anon_sym_RBRACE, anon_sym_COLON, anon_sym_DOT_DOT, anon_sym_PLUS, @@ -6065,39 +6696,41 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - [4235] = 2, - ACTIONS(317), 18, + [4938] = 2, + ACTIONS(327), 21, sym_identifier, + aux_sym_integer_token1, anon_sym_true, anon_sym_false, anon_sym_function, anon_sym_LT, anon_sym_GT, anon_sym_table, - anon_sym_DASH2, + anon_sym_DASH, anon_sym_if, + anon_sym_match, anon_sym_while, anon_sym_for, anon_sym_transform, anon_sym_filter, anon_sym_find, anon_sym_remove, + anon_sym_reduce, anon_sym_select, anon_sym_insert, anon_sym_async, - ACTIONS(315), 24, + ACTIONS(325), 23, ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_RBRACE, aux_sym_comment_token1, anon_sym_LPAREN, anon_sym_RPAREN, - sym__numeric, - anon_sym_DASH, + aux_sym_float_token1, sym_string, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_RBRACK, - anon_sym_LBRACE, - anon_sym_RBRACE, anon_sym_COLON, anon_sym_DOT_DOT, anon_sym_PLUS, @@ -6110,39 +6743,41 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - [4282] = 2, - ACTIONS(321), 18, + [4987] = 2, + ACTIONS(331), 21, sym_identifier, + aux_sym_integer_token1, anon_sym_true, anon_sym_false, anon_sym_function, anon_sym_LT, anon_sym_GT, anon_sym_table, - anon_sym_DASH2, + anon_sym_DASH, anon_sym_if, + anon_sym_match, anon_sym_while, anon_sym_for, anon_sym_transform, anon_sym_filter, anon_sym_find, anon_sym_remove, + anon_sym_reduce, anon_sym_select, anon_sym_insert, anon_sym_async, - ACTIONS(319), 24, + ACTIONS(329), 23, ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_RBRACE, aux_sym_comment_token1, anon_sym_LPAREN, anon_sym_RPAREN, - sym__numeric, - anon_sym_DASH, + aux_sym_float_token1, sym_string, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_RBRACK, - anon_sym_LBRACE, - anon_sym_RBRACE, anon_sym_COLON, anon_sym_DOT_DOT, anon_sym_PLUS, @@ -6155,39 +6790,41 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - [4329] = 2, - ACTIONS(325), 18, + [5036] = 2, + ACTIONS(335), 21, sym_identifier, + aux_sym_integer_token1, anon_sym_true, anon_sym_false, anon_sym_function, anon_sym_LT, anon_sym_GT, anon_sym_table, - anon_sym_DASH2, + anon_sym_DASH, anon_sym_if, + anon_sym_match, anon_sym_while, anon_sym_for, anon_sym_transform, anon_sym_filter, anon_sym_find, anon_sym_remove, + anon_sym_reduce, anon_sym_select, anon_sym_insert, anon_sym_async, - ACTIONS(323), 24, + ACTIONS(333), 23, ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_RBRACE, aux_sym_comment_token1, anon_sym_LPAREN, anon_sym_RPAREN, - sym__numeric, - anon_sym_DASH, + aux_sym_float_token1, sym_string, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_RBRACK, - anon_sym_LBRACE, - anon_sym_RBRACE, anon_sym_COLON, anon_sym_DOT_DOT, anon_sym_PLUS, @@ -6200,39 +6837,41 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - [4376] = 2, - ACTIONS(329), 18, + [5085] = 2, + ACTIONS(339), 21, sym_identifier, + aux_sym_integer_token1, anon_sym_true, anon_sym_false, anon_sym_function, anon_sym_LT, anon_sym_GT, anon_sym_table, - anon_sym_DASH2, + anon_sym_DASH, anon_sym_if, + anon_sym_match, anon_sym_while, anon_sym_for, anon_sym_transform, anon_sym_filter, anon_sym_find, anon_sym_remove, + anon_sym_reduce, anon_sym_select, anon_sym_insert, anon_sym_async, - ACTIONS(327), 24, + ACTIONS(337), 23, ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_RBRACE, aux_sym_comment_token1, anon_sym_LPAREN, anon_sym_RPAREN, - sym__numeric, - anon_sym_DASH, + aux_sym_float_token1, sym_string, anon_sym_LBRACK, anon_sym_COMMA, anon_sym_RBRACK, - anon_sym_LBRACE, - anon_sym_RBRACE, anon_sym_COLON, anon_sym_DOT_DOT, anon_sym_PLUS, @@ -6245,546 +6884,92 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - [4423] = 2, - ACTIONS(333), 18, - sym_identifier, - anon_sym_true, - anon_sym_false, - anon_sym_function, + [5134] = 10, + ACTIONS(255), 1, + anon_sym_DASH, + ACTIONS(267), 1, + anon_sym_COLON, + ACTIONS(345), 1, + anon_sym_LBRACE, + STATE(130), 1, + sym_math_operator, + STATE(137), 1, + sym_logic_operator, + ACTIONS(251), 2, anon_sym_LT, anon_sym_GT, - anon_sym_table, - anon_sym_DASH2, - anon_sym_if, - anon_sym_while, - anon_sym_for, - anon_sym_transform, - anon_sym_filter, - anon_sym_find, - anon_sym_remove, - anon_sym_select, - anon_sym_insert, - anon_sym_async, - ACTIONS(331), 24, - ts_builtin_sym_end, - aux_sym_comment_token1, - anon_sym_LPAREN, - anon_sym_RPAREN, - sym__numeric, - anon_sym_DASH, - sym_string, - anon_sym_LBRACK, - anon_sym_COMMA, - anon_sym_RBRACK, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_COLON, - anon_sym_DOT_DOT, + ACTIONS(253), 4, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, + ACTIONS(257), 6, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - [4470] = 2, - ACTIONS(337), 18, + ACTIONS(341), 7, + ts_builtin_sym_end, + anon_sym_RBRACE, + aux_sym_comment_token1, + anon_sym_LPAREN, + aux_sym_float_token1, + sym_string, + anon_sym_LBRACK, + ACTIONS(343), 18, sym_identifier, + aux_sym_integer_token1, anon_sym_true, anon_sym_false, anon_sym_function, - anon_sym_LT, - anon_sym_GT, anon_sym_table, - anon_sym_DASH2, anon_sym_if, + anon_sym_match, anon_sym_while, anon_sym_for, anon_sym_transform, anon_sym_filter, anon_sym_find, anon_sym_remove, + anon_sym_reduce, anon_sym_select, anon_sym_insert, anon_sym_async, - ACTIONS(335), 24, - ts_builtin_sym_end, - aux_sym_comment_token1, - anon_sym_LPAREN, - anon_sym_RPAREN, - sym__numeric, - anon_sym_DASH, - sym_string, - anon_sym_LBRACK, - anon_sym_COMMA, - anon_sym_RBRACK, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_COLON, - anon_sym_DOT_DOT, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - [4517] = 2, - ACTIONS(341), 18, - sym_identifier, - anon_sym_true, - anon_sym_false, - anon_sym_function, - anon_sym_LT, - anon_sym_GT, - anon_sym_table, - anon_sym_DASH2, - anon_sym_if, - anon_sym_while, - anon_sym_for, - anon_sym_transform, - anon_sym_filter, - anon_sym_find, - anon_sym_remove, - anon_sym_select, - anon_sym_insert, - anon_sym_async, - ACTIONS(339), 24, - ts_builtin_sym_end, - aux_sym_comment_token1, - anon_sym_LPAREN, - anon_sym_RPAREN, - sym__numeric, - anon_sym_DASH, - sym_string, - anon_sym_LBRACK, - anon_sym_COMMA, - anon_sym_RBRACK, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_COLON, - anon_sym_DOT_DOT, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - [4564] = 17, - ACTIONS(7), 1, - anon_sym_LPAREN, + [5197] = 17, ACTIONS(9), 1, - sym__numeric, + anon_sym_LPAREN, ACTIONS(11), 1, - anon_sym_DASH, + aux_sym_integer_token1, ACTIONS(13), 1, + aux_sym_float_token1, + ACTIONS(15), 1, sym_string, - ACTIONS(17), 1, - anon_sym_LBRACK, ACTIONS(19), 1, - anon_sym_LBRACE, + anon_sym_LBRACK, ACTIONS(21), 1, anon_sym_function, ACTIONS(23), 1, anon_sym_table, - ACTIONS(263), 1, + ACTIONS(227), 1, + anon_sym_LBRACE, + ACTIONS(347), 1, sym_identifier, - ACTIONS(343), 1, + ACTIONS(349), 1, anon_sym_RPAREN, - STATE(66), 1, - sym_expression, STATE(71), 1, - aux_sym_list_repeat1, - ACTIONS(15), 2, - anon_sym_true, - anon_sym_false, - ACTIONS(269), 3, - anon_sym_LT, - anon_sym_GT, - anon_sym_DASH2, - STATE(48), 7, - sym__expression_kind, - sym_value, - sym_index, - sym_math, - sym_logic, - sym_function_call, - sym_tool, - STATE(60), 7, - sym_integer, - sym_float, - sym_boolean, - sym_list, - sym_map, - sym_function, - sym_table, - ACTIONS(267), 11, - anon_sym_COLON, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - [4641] = 9, - ACTIONS(245), 1, - anon_sym_DASH2, - ACTIONS(255), 1, - anon_sym_COLON, - STATE(85), 1, - sym_math_operator, - STATE(86), 1, - sym_logic_operator, - ACTIONS(241), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(243), 4, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(247), 6, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - ACTIONS(345), 9, - ts_builtin_sym_end, - aux_sym_comment_token1, - anon_sym_LPAREN, - sym__numeric, - anon_sym_DASH, - sym_string, - anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_RBRACE, - ACTIONS(347), 15, - sym_identifier, - anon_sym_true, - anon_sym_false, - anon_sym_function, - anon_sym_table, - anon_sym_if, - anon_sym_while, - anon_sym_for, - anon_sym_transform, - anon_sym_filter, - anon_sym_find, - anon_sym_remove, - anon_sym_select, - anon_sym_insert, - anon_sym_async, - [4700] = 10, - ACTIONS(245), 1, - anon_sym_DASH2, - ACTIONS(255), 1, - anon_sym_COLON, - ACTIONS(353), 1, - anon_sym_LBRACE, - STATE(85), 1, - sym_math_operator, - STATE(86), 1, - sym_logic_operator, - ACTIONS(241), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(243), 4, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(247), 6, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - ACTIONS(349), 8, - ts_builtin_sym_end, - aux_sym_comment_token1, - anon_sym_LPAREN, - sym__numeric, - anon_sym_DASH, - sym_string, - anon_sym_LBRACK, - anon_sym_RBRACE, - ACTIONS(351), 15, - sym_identifier, - anon_sym_true, - anon_sym_false, - anon_sym_function, - anon_sym_table, - anon_sym_if, - anon_sym_while, - anon_sym_for, - anon_sym_transform, - anon_sym_filter, - anon_sym_find, - anon_sym_remove, - anon_sym_select, - anon_sym_insert, - anon_sym_async, - [4761] = 9, - ACTIONS(245), 1, - anon_sym_DASH2, - ACTIONS(255), 1, - anon_sym_COLON, - STATE(85), 1, - sym_math_operator, - STATE(86), 1, - sym_logic_operator, - ACTIONS(241), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(243), 4, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(247), 6, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - ACTIONS(355), 9, - ts_builtin_sym_end, - aux_sym_comment_token1, - anon_sym_LPAREN, - sym__numeric, - anon_sym_DASH, - sym_string, - anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_RBRACE, - ACTIONS(357), 15, - sym_identifier, - anon_sym_true, - anon_sym_false, - anon_sym_function, - anon_sym_table, - anon_sym_if, - anon_sym_while, - anon_sym_for, - anon_sym_transform, - anon_sym_filter, - anon_sym_find, - anon_sym_remove, - anon_sym_select, - anon_sym_insert, - anon_sym_async, - [4820] = 10, - ACTIONS(245), 1, - anon_sym_DASH2, - ACTIONS(255), 1, - anon_sym_COLON, - ACTIONS(363), 1, - anon_sym_LBRACE, - STATE(85), 1, - sym_math_operator, - STATE(86), 1, - sym_logic_operator, - ACTIONS(241), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(243), 4, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(247), 6, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - ACTIONS(359), 8, - ts_builtin_sym_end, - aux_sym_comment_token1, - anon_sym_LPAREN, - sym__numeric, - anon_sym_DASH, - sym_string, - anon_sym_LBRACK, - anon_sym_RBRACE, - ACTIONS(361), 15, - sym_identifier, - anon_sym_true, - anon_sym_false, - anon_sym_function, - anon_sym_table, - anon_sym_if, - anon_sym_while, - anon_sym_for, - anon_sym_transform, - anon_sym_filter, - anon_sym_find, - anon_sym_remove, - anon_sym_select, - anon_sym_insert, - anon_sym_async, - [4881] = 10, - ACTIONS(245), 1, - anon_sym_DASH2, - ACTIONS(255), 1, - anon_sym_COLON, - ACTIONS(369), 1, - anon_sym_COMMA, - STATE(85), 1, - sym_math_operator, - STATE(86), 1, - sym_logic_operator, - ACTIONS(241), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(243), 4, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(365), 5, - sym_identifier, - anon_sym_true, - anon_sym_false, - anon_sym_function, - anon_sym_table, - ACTIONS(247), 6, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - ACTIONS(367), 8, - anon_sym_LPAREN, - anon_sym_RPAREN, - sym__numeric, - anon_sym_DASH, - sym_string, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_LBRACE, - [4932] = 6, - ACTIONS(375), 1, - anon_sym_elseif, - ACTIONS(377), 1, - anon_sym_else, - STATE(116), 1, - sym_else, - STATE(73), 2, - sym_else_if, - aux_sym_if_else_repeat1, - ACTIONS(371), 9, - ts_builtin_sym_end, - aux_sym_comment_token1, - anon_sym_LPAREN, - sym__numeric, - anon_sym_DASH, - sym_string, - anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_RBRACE, - ACTIONS(373), 15, - sym_identifier, - anon_sym_true, - anon_sym_false, - anon_sym_function, - anon_sym_table, - anon_sym_if, - anon_sym_while, - anon_sym_for, - anon_sym_transform, - anon_sym_filter, - anon_sym_find, - anon_sym_remove, - anon_sym_select, - anon_sym_insert, - anon_sym_async, - [4974] = 6, - ACTIONS(375), 1, - anon_sym_elseif, - ACTIONS(377), 1, - anon_sym_else, - STATE(125), 1, - sym_else, - STATE(67), 2, - sym_else_if, - aux_sym_if_else_repeat1, - ACTIONS(379), 9, - ts_builtin_sym_end, - aux_sym_comment_token1, - anon_sym_LPAREN, - sym__numeric, - anon_sym_DASH, - sym_string, - anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_RBRACE, - ACTIONS(381), 15, - sym_identifier, - anon_sym_true, - anon_sym_false, - anon_sym_function, - anon_sym_table, - anon_sym_if, - anon_sym_while, - anon_sym_for, - anon_sym_transform, - anon_sym_filter, - anon_sym_find, - anon_sym_remove, - anon_sym_select, - anon_sym_insert, - anon_sym_async, - [5016] = 15, - ACTIONS(383), 1, - sym_identifier, - ACTIONS(386), 1, - anon_sym_LPAREN, - ACTIONS(391), 1, - sym__numeric, - ACTIONS(394), 1, - anon_sym_DASH, - ACTIONS(397), 1, - sym_string, - ACTIONS(403), 1, - anon_sym_LBRACK, - ACTIONS(406), 1, - anon_sym_LBRACE, - ACTIONS(409), 1, - anon_sym_function, - ACTIONS(412), 1, - anon_sym_table, - STATE(66), 1, sym_expression, - STATE(69), 1, + STATE(73), 1, aux_sym_list_repeat1, - ACTIONS(389), 2, - anon_sym_RPAREN, - anon_sym_RBRACK, - ACTIONS(400), 2, + ACTIONS(17), 2, anon_sym_true, anon_sym_false, - STATE(48), 7, + ACTIONS(299), 3, + anon_sym_LT, + anon_sym_GT, + anon_sym_DASH, + STATE(47), 7, sym__expression_kind, sym_value, sym_index, @@ -6800,123 +6985,417 @@ static const uint16_t ts_small_parse_table[] = { sym_map, sym_function, sym_table, - [5076] = 15, - ACTIONS(7), 1, - anon_sym_LPAREN, + ACTIONS(297), 11, + anon_sym_COLON, + anon_sym_PLUS, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + [5274] = 17, ACTIONS(9), 1, - sym__numeric, + anon_sym_LPAREN, ACTIONS(11), 1, - anon_sym_DASH, + aux_sym_integer_token1, ACTIONS(13), 1, + aux_sym_float_token1, + ACTIONS(15), 1, sym_string, - ACTIONS(17), 1, - anon_sym_LBRACK, ACTIONS(19), 1, - anon_sym_LBRACE, + anon_sym_LBRACK, ACTIONS(21), 1, anon_sym_function, ACTIONS(23), 1, anon_sym_table, - ACTIONS(263), 1, + ACTIONS(227), 1, + anon_sym_LBRACE, + ACTIONS(347), 1, sym_identifier, - ACTIONS(415), 1, + ACTIONS(351), 1, + anon_sym_RPAREN, + STATE(71), 1, + sym_expression, + STATE(75), 1, + aux_sym_list_repeat1, + ACTIONS(17), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(299), 3, + anon_sym_LT, + anon_sym_GT, + anon_sym_DASH, + STATE(47), 7, + sym__expression_kind, + sym_value, + sym_index, + sym_math, + sym_logic, + sym_function_call, + sym_tool, + STATE(60), 7, + sym_integer, + sym_float, + sym_boolean, + sym_list, + sym_map, + sym_function, + sym_table, + ACTIONS(297), 11, + anon_sym_COLON, + anon_sym_PLUS, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + [5351] = 9, + ACTIONS(255), 1, + anon_sym_DASH, + ACTIONS(267), 1, + anon_sym_COLON, + STATE(130), 1, + sym_math_operator, + STATE(137), 1, + sym_logic_operator, + ACTIONS(251), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(253), 4, + anon_sym_PLUS, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(257), 6, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + ACTIONS(353), 8, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_RBRACE, + aux_sym_comment_token1, + anon_sym_LPAREN, + aux_sym_float_token1, + sym_string, + anon_sym_LBRACK, + ACTIONS(355), 18, + sym_identifier, + aux_sym_integer_token1, + anon_sym_true, + anon_sym_false, + anon_sym_function, + anon_sym_table, + anon_sym_if, + anon_sym_match, + anon_sym_while, + anon_sym_for, + anon_sym_transform, + anon_sym_filter, + anon_sym_find, + anon_sym_remove, + anon_sym_reduce, + anon_sym_select, + anon_sym_insert, + anon_sym_async, + [5412] = 10, + ACTIONS(255), 1, + anon_sym_DASH, + ACTIONS(267), 1, + anon_sym_COLON, + ACTIONS(361), 1, + anon_sym_LBRACE, + STATE(130), 1, + sym_math_operator, + STATE(137), 1, + sym_logic_operator, + ACTIONS(251), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(253), 4, + anon_sym_PLUS, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(257), 6, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + ACTIONS(357), 7, + ts_builtin_sym_end, + anon_sym_RBRACE, + aux_sym_comment_token1, + anon_sym_LPAREN, + aux_sym_float_token1, + sym_string, + anon_sym_LBRACK, + ACTIONS(359), 18, + sym_identifier, + aux_sym_integer_token1, + anon_sym_true, + anon_sym_false, + anon_sym_function, + anon_sym_table, + anon_sym_if, + anon_sym_match, + anon_sym_while, + anon_sym_for, + anon_sym_transform, + anon_sym_filter, + anon_sym_find, + anon_sym_remove, + anon_sym_reduce, + anon_sym_select, + anon_sym_insert, + anon_sym_async, + [5475] = 9, + ACTIONS(255), 1, + anon_sym_DASH, + ACTIONS(267), 1, + anon_sym_COLON, + STATE(130), 1, + sym_math_operator, + STATE(137), 1, + sym_logic_operator, + ACTIONS(251), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(253), 4, + anon_sym_PLUS, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(257), 6, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + ACTIONS(363), 8, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_RBRACE, + aux_sym_comment_token1, + anon_sym_LPAREN, + aux_sym_float_token1, + sym_string, + anon_sym_LBRACK, + ACTIONS(365), 18, + sym_identifier, + aux_sym_integer_token1, + anon_sym_true, + anon_sym_false, + anon_sym_function, + anon_sym_table, + anon_sym_if, + anon_sym_match, + anon_sym_while, + anon_sym_for, + anon_sym_transform, + anon_sym_filter, + anon_sym_find, + anon_sym_remove, + anon_sym_reduce, + anon_sym_select, + anon_sym_insert, + anon_sym_async, + [5536] = 6, + ACTIONS(371), 1, + anon_sym_elseif, + ACTIONS(373), 1, + anon_sym_else, + STATE(134), 1, + sym_else, + STATE(69), 2, + sym_else_if, + aux_sym_if_else_repeat1, + ACTIONS(367), 8, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_RBRACE, + aux_sym_comment_token1, + anon_sym_LPAREN, + aux_sym_float_token1, + sym_string, + anon_sym_LBRACK, + ACTIONS(369), 18, + sym_identifier, + aux_sym_integer_token1, + anon_sym_true, + anon_sym_false, + anon_sym_function, + anon_sym_table, + anon_sym_if, + anon_sym_match, + anon_sym_while, + anon_sym_for, + anon_sym_transform, + anon_sym_filter, + anon_sym_find, + anon_sym_remove, + anon_sym_reduce, + anon_sym_select, + anon_sym_insert, + anon_sym_async, + [5580] = 6, + ACTIONS(371), 1, + anon_sym_elseif, + ACTIONS(373), 1, + anon_sym_else, + STATE(107), 1, + sym_else, + STATE(70), 2, + sym_else_if, + aux_sym_if_else_repeat1, + ACTIONS(375), 8, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_RBRACE, + aux_sym_comment_token1, + anon_sym_LPAREN, + aux_sym_float_token1, + sym_string, + anon_sym_LBRACK, + ACTIONS(377), 18, + sym_identifier, + aux_sym_integer_token1, + anon_sym_true, + anon_sym_false, + anon_sym_function, + anon_sym_table, + anon_sym_if, + anon_sym_match, + anon_sym_while, + anon_sym_for, + anon_sym_transform, + anon_sym_filter, + anon_sym_find, + anon_sym_remove, + anon_sym_reduce, + anon_sym_select, + anon_sym_insert, + anon_sym_async, + [5624] = 4, + ACTIONS(383), 1, + anon_sym_elseif, + STATE(70), 2, + sym_else_if, + aux_sym_if_else_repeat1, + ACTIONS(379), 8, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_RBRACE, + aux_sym_comment_token1, + anon_sym_LPAREN, + aux_sym_float_token1, + sym_string, + anon_sym_LBRACK, + ACTIONS(381), 19, + sym_identifier, + aux_sym_integer_token1, + anon_sym_true, + anon_sym_false, + anon_sym_function, + anon_sym_table, + anon_sym_if, + anon_sym_else, + anon_sym_match, + anon_sym_while, + anon_sym_for, + anon_sym_transform, + anon_sym_filter, + anon_sym_find, + anon_sym_remove, + anon_sym_reduce, + anon_sym_select, + anon_sym_insert, + anon_sym_async, + [5663] = 10, + ACTIONS(255), 1, + anon_sym_DASH, + ACTIONS(267), 1, + anon_sym_COLON, + ACTIONS(390), 1, + anon_sym_COMMA, + STATE(130), 1, + sym_math_operator, + STATE(137), 1, + sym_logic_operator, + ACTIONS(251), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(253), 4, + anon_sym_PLUS, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(257), 6, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + ACTIONS(386), 6, + sym_identifier, + aux_sym_integer_token1, + anon_sym_true, + anon_sym_false, + anon_sym_function, + anon_sym_table, + ACTIONS(388), 7, + anon_sym_LBRACE, + anon_sym_LPAREN, + anon_sym_RPAREN, + aux_sym_float_token1, + sym_string, + anon_sym_LBRACK, anon_sym_RBRACK, - STATE(66), 1, + [5714] = 15, + ACTIONS(392), 1, + sym_identifier, + ACTIONS(395), 1, + anon_sym_LBRACE, + ACTIONS(398), 1, + anon_sym_LPAREN, + ACTIONS(403), 1, + aux_sym_integer_token1, + ACTIONS(406), 1, + aux_sym_float_token1, + ACTIONS(409), 1, + sym_string, + ACTIONS(415), 1, + anon_sym_LBRACK, + ACTIONS(418), 1, + anon_sym_function, + ACTIONS(421), 1, + anon_sym_table, + STATE(71), 1, sym_expression, STATE(72), 1, aux_sym_list_repeat1, - ACTIONS(15), 2, - anon_sym_true, - anon_sym_false, - STATE(48), 7, - sym__expression_kind, - sym_value, - sym_index, - sym_math, - sym_logic, - sym_function_call, - sym_tool, - STATE(60), 7, - sym_integer, - sym_float, - sym_boolean, - sym_list, - sym_map, - sym_function, - sym_table, - [5135] = 15, - ACTIONS(7), 1, - anon_sym_LPAREN, - ACTIONS(9), 1, - sym__numeric, - ACTIONS(11), 1, - anon_sym_DASH, - ACTIONS(13), 1, - sym_string, - ACTIONS(17), 1, - anon_sym_LBRACK, - ACTIONS(19), 1, - anon_sym_LBRACE, - ACTIONS(21), 1, - anon_sym_function, - ACTIONS(23), 1, - anon_sym_table, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(417), 1, + ACTIONS(401), 2, anon_sym_RPAREN, - STATE(66), 1, - sym_expression, - STATE(69), 1, - aux_sym_list_repeat1, - ACTIONS(15), 2, - anon_sym_true, - anon_sym_false, - STATE(48), 7, - sym__expression_kind, - sym_value, - sym_index, - sym_math, - sym_logic, - sym_function_call, - sym_tool, - STATE(60), 7, - sym_integer, - sym_float, - sym_boolean, - sym_list, - sym_map, - sym_function, - sym_table, - [5194] = 15, - ACTIONS(7), 1, - anon_sym_LPAREN, - ACTIONS(9), 1, - sym__numeric, - ACTIONS(11), 1, - anon_sym_DASH, - ACTIONS(13), 1, - sym_string, - ACTIONS(17), 1, - anon_sym_LBRACK, - ACTIONS(19), 1, - anon_sym_LBRACE, - ACTIONS(21), 1, - anon_sym_function, - ACTIONS(23), 1, - anon_sym_table, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(419), 1, anon_sym_RBRACK, - STATE(66), 1, - sym_expression, - STATE(69), 1, - aux_sym_list_repeat1, - ACTIONS(15), 2, + ACTIONS(412), 2, anon_sym_true, anon_sym_false, - STATE(48), 7, + STATE(47), 7, sym__expression_kind, sym_value, sym_index, @@ -6932,68 +7411,35 @@ static const uint16_t ts_small_parse_table[] = { sym_map, sym_function, sym_table, - [5253] = 4, - ACTIONS(425), 1, - anon_sym_elseif, - STATE(73), 2, - sym_else_if, - aux_sym_if_else_repeat1, - ACTIONS(421), 9, - ts_builtin_sym_end, - aux_sym_comment_token1, - anon_sym_LPAREN, - sym__numeric, - anon_sym_DASH, - sym_string, - anon_sym_LBRACK, - anon_sym_LBRACE, - anon_sym_RBRACE, - ACTIONS(423), 16, - sym_identifier, - anon_sym_true, - anon_sym_false, - anon_sym_function, - anon_sym_table, - anon_sym_if, - anon_sym_else, - anon_sym_while, - anon_sym_for, - anon_sym_transform, - anon_sym_filter, - anon_sym_find, - anon_sym_remove, - anon_sym_select, - anon_sym_insert, - anon_sym_async, - [5290] = 15, - ACTIONS(7), 1, - anon_sym_LPAREN, + [5774] = 15, ACTIONS(9), 1, - sym__numeric, + anon_sym_LPAREN, ACTIONS(11), 1, - anon_sym_DASH, + aux_sym_integer_token1, ACTIONS(13), 1, + aux_sym_float_token1, + ACTIONS(15), 1, sym_string, - ACTIONS(17), 1, - anon_sym_LBRACK, ACTIONS(19), 1, - anon_sym_LBRACE, + anon_sym_LBRACK, ACTIONS(21), 1, anon_sym_function, ACTIONS(23), 1, anon_sym_table, - ACTIONS(263), 1, + ACTIONS(227), 1, + anon_sym_LBRACE, + ACTIONS(347), 1, sym_identifier, - ACTIONS(428), 1, + ACTIONS(424), 1, anon_sym_RPAREN, - STATE(66), 1, + STATE(71), 1, sym_expression, - STATE(69), 1, + STATE(72), 1, aux_sym_list_repeat1, - ACTIONS(15), 2, + ACTIONS(17), 2, anon_sym_true, anon_sym_false, - STATE(48), 7, + STATE(47), 7, sym__expression_kind, sym_value, sym_index, @@ -7009,123 +7455,35 @@ static const uint16_t ts_small_parse_table[] = { sym_map, sym_function, sym_table, - [5349] = 15, - ACTIONS(7), 1, - anon_sym_LPAREN, + [5833] = 15, ACTIONS(9), 1, - sym__numeric, + anon_sym_LPAREN, ACTIONS(11), 1, - anon_sym_DASH, + aux_sym_integer_token1, ACTIONS(13), 1, + aux_sym_float_token1, + ACTIONS(15), 1, sym_string, - ACTIONS(17), 1, - anon_sym_LBRACK, ACTIONS(19), 1, - anon_sym_LBRACE, + anon_sym_LBRACK, ACTIONS(21), 1, anon_sym_function, ACTIONS(23), 1, anon_sym_table, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(430), 1, - anon_sym_RPAREN, - STATE(66), 1, - sym_expression, - STATE(74), 1, - aux_sym_list_repeat1, - ACTIONS(15), 2, - anon_sym_true, - anon_sym_false, - STATE(48), 7, - sym__expression_kind, - sym_value, - sym_index, - sym_math, - sym_logic, - sym_function_call, - sym_tool, - STATE(60), 7, - sym_integer, - sym_float, - sym_boolean, - sym_list, - sym_map, - sym_function, - sym_table, - [5408] = 15, - ACTIONS(7), 1, - anon_sym_LPAREN, - ACTIONS(9), 1, - sym__numeric, - ACTIONS(11), 1, - anon_sym_DASH, - ACTIONS(13), 1, - sym_string, - ACTIONS(17), 1, - anon_sym_LBRACK, - ACTIONS(19), 1, + ACTIONS(227), 1, anon_sym_LBRACE, - ACTIONS(21), 1, - anon_sym_function, - ACTIONS(23), 1, - anon_sym_table, - ACTIONS(263), 1, + ACTIONS(347), 1, sym_identifier, - ACTIONS(432), 1, + ACTIONS(426), 1, anon_sym_RBRACK, - STATE(66), 1, - sym_expression, - STATE(78), 1, - aux_sym_list_repeat1, - ACTIONS(15), 2, - anon_sym_true, - anon_sym_false, - STATE(48), 7, - sym__expression_kind, - sym_value, - sym_index, - sym_math, - sym_logic, - sym_function_call, - sym_tool, - STATE(60), 7, - sym_integer, - sym_float, - sym_boolean, - sym_list, - sym_map, - sym_function, - sym_table, - [5467] = 15, - ACTIONS(7), 1, - anon_sym_LPAREN, - ACTIONS(9), 1, - sym__numeric, - ACTIONS(11), 1, - anon_sym_DASH, - ACTIONS(13), 1, - sym_string, - ACTIONS(17), 1, - anon_sym_LBRACK, - ACTIONS(19), 1, - anon_sym_LBRACE, - ACTIONS(21), 1, - anon_sym_function, - ACTIONS(23), 1, - anon_sym_table, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(434), 1, - anon_sym_RPAREN, - STATE(66), 1, + STATE(71), 1, sym_expression, STATE(80), 1, aux_sym_list_repeat1, - ACTIONS(15), 2, + ACTIONS(17), 2, anon_sym_true, anon_sym_false, - STATE(48), 7, + STATE(47), 7, sym__expression_kind, sym_value, sym_index, @@ -7141,35 +7499,211 @@ static const uint16_t ts_small_parse_table[] = { sym_map, sym_function, sym_table, - [5526] = 15, - ACTIONS(7), 1, - anon_sym_LPAREN, + [5892] = 15, ACTIONS(9), 1, - sym__numeric, + anon_sym_LPAREN, ACTIONS(11), 1, - anon_sym_DASH, + aux_sym_integer_token1, ACTIONS(13), 1, + aux_sym_float_token1, + ACTIONS(15), 1, sym_string, - ACTIONS(17), 1, - anon_sym_LBRACK, ACTIONS(19), 1, - anon_sym_LBRACE, + anon_sym_LBRACK, ACTIONS(21), 1, anon_sym_function, ACTIONS(23), 1, anon_sym_table, - ACTIONS(263), 1, + ACTIONS(227), 1, + anon_sym_LBRACE, + ACTIONS(347), 1, + sym_identifier, + ACTIONS(428), 1, + anon_sym_RPAREN, + STATE(71), 1, + sym_expression, + STATE(72), 1, + aux_sym_list_repeat1, + ACTIONS(17), 2, + anon_sym_true, + anon_sym_false, + STATE(47), 7, + sym__expression_kind, + sym_value, + sym_index, + sym_math, + sym_logic, + sym_function_call, + sym_tool, + STATE(60), 7, + sym_integer, + sym_float, + sym_boolean, + sym_list, + sym_map, + sym_function, + sym_table, + [5951] = 15, + ACTIONS(9), 1, + anon_sym_LPAREN, + ACTIONS(11), 1, + aux_sym_integer_token1, + ACTIONS(13), 1, + aux_sym_float_token1, + ACTIONS(15), 1, + sym_string, + ACTIONS(19), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_function, + ACTIONS(23), 1, + anon_sym_table, + ACTIONS(227), 1, + anon_sym_LBRACE, + ACTIONS(347), 1, + sym_identifier, + ACTIONS(430), 1, + anon_sym_RPAREN, + STATE(71), 1, + sym_expression, + STATE(72), 1, + aux_sym_list_repeat1, + ACTIONS(17), 2, + anon_sym_true, + anon_sym_false, + STATE(47), 7, + sym__expression_kind, + sym_value, + sym_index, + sym_math, + sym_logic, + sym_function_call, + sym_tool, + STATE(60), 7, + sym_integer, + sym_float, + sym_boolean, + sym_list, + sym_map, + sym_function, + sym_table, + [6010] = 15, + ACTIONS(9), 1, + anon_sym_LPAREN, + ACTIONS(11), 1, + aux_sym_integer_token1, + ACTIONS(13), 1, + aux_sym_float_token1, + ACTIONS(15), 1, + sym_string, + ACTIONS(19), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_function, + ACTIONS(23), 1, + anon_sym_table, + ACTIONS(227), 1, + anon_sym_LBRACE, + ACTIONS(347), 1, + sym_identifier, + ACTIONS(432), 1, + anon_sym_RPAREN, + STATE(71), 1, + sym_expression, + STATE(72), 1, + aux_sym_list_repeat1, + ACTIONS(17), 2, + anon_sym_true, + anon_sym_false, + STATE(47), 7, + sym__expression_kind, + sym_value, + sym_index, + sym_math, + sym_logic, + sym_function_call, + sym_tool, + STATE(60), 7, + sym_integer, + sym_float, + sym_boolean, + sym_list, + sym_map, + sym_function, + sym_table, + [6069] = 15, + ACTIONS(9), 1, + anon_sym_LPAREN, + ACTIONS(11), 1, + aux_sym_integer_token1, + ACTIONS(13), 1, + aux_sym_float_token1, + ACTIONS(15), 1, + sym_string, + ACTIONS(19), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_function, + ACTIONS(23), 1, + anon_sym_table, + ACTIONS(227), 1, + anon_sym_LBRACE, + ACTIONS(347), 1, + sym_identifier, + ACTIONS(434), 1, + anon_sym_RBRACK, + STATE(71), 1, + sym_expression, + STATE(79), 1, + aux_sym_list_repeat1, + ACTIONS(17), 2, + anon_sym_true, + anon_sym_false, + STATE(47), 7, + sym__expression_kind, + sym_value, + sym_index, + sym_math, + sym_logic, + sym_function_call, + sym_tool, + STATE(60), 7, + sym_integer, + sym_float, + sym_boolean, + sym_list, + sym_map, + sym_function, + sym_table, + [6128] = 15, + ACTIONS(9), 1, + anon_sym_LPAREN, + ACTIONS(11), 1, + aux_sym_integer_token1, + ACTIONS(13), 1, + aux_sym_float_token1, + ACTIONS(15), 1, + sym_string, + ACTIONS(19), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_function, + ACTIONS(23), 1, + anon_sym_table, + ACTIONS(227), 1, + anon_sym_LBRACE, + ACTIONS(347), 1, sym_identifier, ACTIONS(436), 1, anon_sym_RBRACK, - STATE(66), 1, + STATE(71), 1, sym_expression, - STATE(69), 1, + STATE(72), 1, aux_sym_list_repeat1, - ACTIONS(15), 2, + ACTIONS(17), 2, anon_sym_true, anon_sym_false, - STATE(48), 7, + STATE(47), 7, sym__expression_kind, sym_value, sym_index, @@ -7185,35 +7719,35 @@ static const uint16_t ts_small_parse_table[] = { sym_map, sym_function, sym_table, - [5585] = 15, - ACTIONS(7), 1, - anon_sym_LPAREN, + [6187] = 15, ACTIONS(9), 1, - sym__numeric, + anon_sym_LPAREN, ACTIONS(11), 1, - anon_sym_DASH, + aux_sym_integer_token1, ACTIONS(13), 1, + aux_sym_float_token1, + ACTIONS(15), 1, sym_string, - ACTIONS(17), 1, - anon_sym_LBRACK, ACTIONS(19), 1, - anon_sym_LBRACE, + anon_sym_LBRACK, ACTIONS(21), 1, anon_sym_function, ACTIONS(23), 1, anon_sym_table, - ACTIONS(263), 1, + ACTIONS(227), 1, + anon_sym_LBRACE, + ACTIONS(347), 1, sym_identifier, ACTIONS(438), 1, - anon_sym_RPAREN, - STATE(66), 1, + anon_sym_RBRACK, + STATE(71), 1, sym_expression, - STATE(69), 1, + STATE(72), 1, aux_sym_list_repeat1, - ACTIONS(15), 2, + ACTIONS(17), 2, anon_sym_true, anon_sym_false, - STATE(48), 7, + STATE(47), 7, sym__expression_kind, sym_value, sym_index, @@ -7229,35 +7763,79 @@ static const uint16_t ts_small_parse_table[] = { sym_map, sym_function, sym_table, - [5644] = 15, - ACTIONS(7), 1, - anon_sym_LPAREN, - ACTIONS(9), 1, - sym__numeric, - ACTIONS(11), 1, - anon_sym_DASH, - ACTIONS(13), 1, - sym_string, - ACTIONS(17), 1, - anon_sym_LBRACK, - ACTIONS(19), 1, + [6246] = 15, + ACTIONS(128), 1, anon_sym_LBRACE, - ACTIONS(21), 1, + ACTIONS(130), 1, + anon_sym_LPAREN, + ACTIONS(132), 1, + aux_sym_integer_token1, + ACTIONS(134), 1, + aux_sym_float_token1, + ACTIONS(136), 1, + sym_string, + ACTIONS(140), 1, + anon_sym_LBRACK, + ACTIONS(142), 1, anon_sym_function, - ACTIONS(23), 1, + ACTIONS(144), 1, anon_sym_table, - ACTIONS(263), 1, - sym_identifier, ACTIONS(440), 1, + sym_identifier, + ACTIONS(442), 1, + anon_sym_RBRACE, + STATE(86), 1, + aux_sym_match_repeat1, + STATE(177), 1, + sym_expression, + ACTIONS(138), 2, + anon_sym_true, + anon_sym_false, + STATE(160), 7, + sym__expression_kind, + sym_value, + sym_index, + sym_math, + sym_logic, + sym_function_call, + sym_tool, + STATE(162), 7, + sym_integer, + sym_float, + sym_boolean, + sym_list, + sym_map, + sym_function, + sym_table, + [6305] = 15, + ACTIONS(9), 1, + anon_sym_LPAREN, + ACTIONS(11), 1, + aux_sym_integer_token1, + ACTIONS(13), 1, + aux_sym_float_token1, + ACTIONS(15), 1, + sym_string, + ACTIONS(19), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_function, + ACTIONS(23), 1, + anon_sym_table, + ACTIONS(227), 1, + anon_sym_LBRACE, + ACTIONS(347), 1, + sym_identifier, + ACTIONS(444), 1, anon_sym_RPAREN, - STATE(66), 1, + STATE(71), 1, sym_expression, - STATE(69), 1, + STATE(77), 1, aux_sym_list_repeat1, - ACTIONS(15), 2, + ACTIONS(17), 2, anon_sym_true, anon_sym_false, - STATE(48), 7, + STATE(47), 7, sym__expression_kind, sym_value, sym_index, @@ -7273,191 +7851,66 @@ static const uint16_t ts_small_parse_table[] = { sym_map, sym_function, sym_table, - [5703] = 13, - ACTIONS(47), 1, - anon_sym_LPAREN, - ACTIONS(49), 1, - sym__numeric, - ACTIONS(51), 1, - anon_sym_DASH, - ACTIONS(53), 1, - sym_string, - ACTIONS(57), 1, - anon_sym_LBRACK, - ACTIONS(59), 1, + [6364] = 2, + ACTIONS(446), 9, + ts_builtin_sym_end, anon_sym_LBRACE, - ACTIONS(61), 1, - anon_sym_function, - ACTIONS(63), 1, - anon_sym_table, - ACTIONS(442), 1, + anon_sym_RBRACE, + aux_sym_comment_token1, + anon_sym_LPAREN, + aux_sym_float_token1, + sym_string, + anon_sym_LBRACK, + anon_sym_elseif, + ACTIONS(448), 19, sym_identifier, - STATE(164), 1, - sym_expression, - ACTIONS(55), 2, + aux_sym_integer_token1, anon_sym_true, anon_sym_false, - STATE(157), 7, - sym__expression_kind, - sym_value, - sym_index, - sym_math, - sym_logic, - sym_function_call, - sym_tool, - STATE(159), 7, - sym_integer, - sym_float, - sym_boolean, - sym_list, - sym_map, - sym_function, - sym_table, - [5756] = 13, - ACTIONS(47), 1, - anon_sym_LPAREN, - ACTIONS(49), 1, - sym__numeric, - ACTIONS(51), 1, - anon_sym_DASH, - ACTIONS(53), 1, - sym_string, - ACTIONS(57), 1, - anon_sym_LBRACK, - ACTIONS(59), 1, - anon_sym_LBRACE, - ACTIONS(61), 1, anon_sym_function, - ACTIONS(63), 1, anon_sym_table, - ACTIONS(442), 1, - sym_identifier, - STATE(165), 1, - sym_expression, - ACTIONS(55), 2, - anon_sym_true, - anon_sym_false, - STATE(157), 7, - sym__expression_kind, - sym_value, - sym_index, - sym_math, - sym_logic, - sym_function_call, - sym_tool, - STATE(159), 7, - sym_integer, - sym_float, - sym_boolean, - sym_list, - sym_map, - sym_function, - sym_table, - [5809] = 13, - ACTIONS(47), 1, - anon_sym_LPAREN, - ACTIONS(49), 1, - sym__numeric, - ACTIONS(51), 1, - anon_sym_DASH, - ACTIONS(53), 1, - sym_string, - ACTIONS(57), 1, - anon_sym_LBRACK, - ACTIONS(59), 1, - anon_sym_LBRACE, - ACTIONS(61), 1, - anon_sym_function, - ACTIONS(442), 1, - sym_identifier, - ACTIONS(444), 1, - anon_sym_table, - STATE(135), 1, - sym_expression, - ACTIONS(55), 2, - anon_sym_true, - anon_sym_false, - STATE(157), 7, - sym__expression_kind, - sym_value, - sym_index, - sym_math, - sym_logic, - sym_function_call, - sym_tool, - STATE(159), 7, - sym_integer, - sym_float, - sym_boolean, - sym_list, - sym_map, - sym_function, - sym_table, - [5862] = 13, - ACTIONS(47), 1, - anon_sym_LPAREN, - ACTIONS(49), 1, - sym__numeric, - ACTIONS(51), 1, - anon_sym_DASH, - ACTIONS(53), 1, - sym_string, - ACTIONS(57), 1, - anon_sym_LBRACK, - ACTIONS(59), 1, - anon_sym_LBRACE, - ACTIONS(61), 1, - anon_sym_function, - ACTIONS(442), 1, - sym_identifier, - ACTIONS(444), 1, - anon_sym_table, - STATE(136), 1, - sym_expression, - ACTIONS(55), 2, - anon_sym_true, - anon_sym_false, - STATE(157), 7, - sym__expression_kind, - sym_value, - sym_index, - sym_math, - sym_logic, - sym_function_call, - sym_tool, - STATE(159), 7, - sym_integer, - sym_float, - sym_boolean, - sym_list, - sym_map, - sym_function, - sym_table, - [5915] = 13, - ACTIONS(7), 1, - anon_sym_LPAREN, + anon_sym_if, + anon_sym_else, + anon_sym_match, + anon_sym_while, + anon_sym_for, + anon_sym_transform, + anon_sym_filter, + anon_sym_find, + anon_sym_remove, + anon_sym_reduce, + anon_sym_select, + anon_sym_insert, + anon_sym_async, + [6397] = 15, ACTIONS(9), 1, - sym__numeric, + anon_sym_LPAREN, ACTIONS(11), 1, - anon_sym_DASH, + aux_sym_integer_token1, ACTIONS(13), 1, + aux_sym_float_token1, + ACTIONS(15), 1, sym_string, - ACTIONS(17), 1, - anon_sym_LBRACK, ACTIONS(19), 1, - anon_sym_LBRACE, + anon_sym_LBRACK, ACTIONS(21), 1, anon_sym_function, ACTIONS(23), 1, anon_sym_table, - ACTIONS(263), 1, + ACTIONS(227), 1, + anon_sym_LBRACE, + ACTIONS(347), 1, sym_identifier, - STATE(38), 1, + ACTIONS(450), 1, + anon_sym_RPAREN, + STATE(71), 1, sym_expression, - ACTIONS(15), 2, + STATE(76), 1, + aux_sym_list_repeat1, + ACTIONS(17), 2, anon_sym_true, anon_sym_false, - STATE(48), 7, + STATE(47), 7, sym__expression_kind, sym_value, sym_index, @@ -7473,31 +7926,148 @@ static const uint16_t ts_small_parse_table[] = { sym_map, sym_function, sym_table, - [5968] = 13, - ACTIONS(7), 1, - anon_sym_LPAREN, - ACTIONS(9), 1, - sym__numeric, - ACTIONS(11), 1, - anon_sym_DASH, - ACTIONS(13), 1, - sym_string, - ACTIONS(17), 1, - anon_sym_LBRACK, - ACTIONS(19), 1, + [6456] = 2, + ACTIONS(452), 9, + ts_builtin_sym_end, anon_sym_LBRACE, + anon_sym_RBRACE, + aux_sym_comment_token1, + anon_sym_LPAREN, + aux_sym_float_token1, + sym_string, + anon_sym_LBRACK, + anon_sym_elseif, + ACTIONS(454), 19, + sym_identifier, + aux_sym_integer_token1, + anon_sym_true, + anon_sym_false, + anon_sym_function, + anon_sym_table, + anon_sym_if, + anon_sym_else, + anon_sym_match, + anon_sym_while, + anon_sym_for, + anon_sym_transform, + anon_sym_filter, + anon_sym_find, + anon_sym_remove, + anon_sym_reduce, + anon_sym_select, + anon_sym_insert, + anon_sym_async, + [6489] = 15, + ACTIONS(456), 1, + sym_identifier, + ACTIONS(459), 1, + anon_sym_LBRACE, + ACTIONS(462), 1, + anon_sym_RBRACE, + ACTIONS(464), 1, + anon_sym_LPAREN, + ACTIONS(467), 1, + aux_sym_integer_token1, + ACTIONS(470), 1, + aux_sym_float_token1, + ACTIONS(473), 1, + sym_string, + ACTIONS(479), 1, + anon_sym_LBRACK, + ACTIONS(482), 1, + anon_sym_function, + ACTIONS(485), 1, + anon_sym_table, + STATE(86), 1, + aux_sym_match_repeat1, + STATE(177), 1, + sym_expression, + ACTIONS(476), 2, + anon_sym_true, + anon_sym_false, + STATE(160), 7, + sym__expression_kind, + sym_value, + sym_index, + sym_math, + sym_logic, + sym_function_call, + sym_tool, + STATE(162), 7, + sym_integer, + sym_float, + sym_boolean, + sym_list, + sym_map, + sym_function, + sym_table, + [6548] = 14, + ACTIONS(128), 1, + anon_sym_LBRACE, + ACTIONS(130), 1, + anon_sym_LPAREN, + ACTIONS(132), 1, + aux_sym_integer_token1, + ACTIONS(134), 1, + aux_sym_float_token1, + ACTIONS(136), 1, + sym_string, + ACTIONS(140), 1, + anon_sym_LBRACK, + ACTIONS(142), 1, + anon_sym_function, + ACTIONS(144), 1, + anon_sym_table, + ACTIONS(440), 1, + sym_identifier, + STATE(81), 1, + aux_sym_match_repeat1, + STATE(177), 1, + sym_expression, + ACTIONS(138), 2, + anon_sym_true, + anon_sym_false, + STATE(160), 7, + sym__expression_kind, + sym_value, + sym_index, + sym_math, + sym_logic, + sym_function_call, + sym_tool, + STATE(162), 7, + sym_integer, + sym_float, + sym_boolean, + sym_list, + sym_map, + sym_function, + sym_table, + [6604] = 13, + ACTIONS(9), 1, + anon_sym_LPAREN, + ACTIONS(11), 1, + aux_sym_integer_token1, + ACTIONS(13), 1, + aux_sym_float_token1, + ACTIONS(15), 1, + sym_string, + ACTIONS(19), 1, + anon_sym_LBRACK, ACTIONS(21), 1, anon_sym_function, ACTIONS(23), 1, anon_sym_table, - ACTIONS(263), 1, + ACTIONS(227), 1, + anon_sym_LBRACE, + ACTIONS(347), 1, sym_identifier, - STATE(39), 1, + STATE(67), 1, sym_expression, - ACTIONS(15), 2, + ACTIONS(17), 2, anon_sym_true, anon_sym_false, - STATE(48), 7, + STATE(47), 7, sym__expression_kind, sym_value, sym_index, @@ -7513,31 +8083,71 @@ static const uint16_t ts_small_parse_table[] = { sym_map, sym_function, sym_table, - [6021] = 13, - ACTIONS(47), 1, - anon_sym_LPAREN, - ACTIONS(49), 1, - sym__numeric, - ACTIONS(51), 1, - anon_sym_DASH, - ACTIONS(53), 1, - sym_string, - ACTIONS(57), 1, - anon_sym_LBRACK, - ACTIONS(59), 1, + [6657] = 13, + ACTIONS(128), 1, anon_sym_LBRACE, - ACTIONS(61), 1, + ACTIONS(130), 1, + anon_sym_LPAREN, + ACTIONS(132), 1, + aux_sym_integer_token1, + ACTIONS(134), 1, + aux_sym_float_token1, + ACTIONS(136), 1, + sym_string, + ACTIONS(140), 1, + anon_sym_LBRACK, + ACTIONS(142), 1, anon_sym_function, - ACTIONS(63), 1, + ACTIONS(440), 1, + sym_identifier, + ACTIONS(488), 1, anon_sym_table, - ACTIONS(442), 1, + STATE(148), 1, + sym_expression, + ACTIONS(138), 2, + anon_sym_true, + anon_sym_false, + STATE(160), 7, + sym__expression_kind, + sym_value, + sym_index, + sym_math, + sym_logic, + sym_function_call, + sym_tool, + STATE(162), 7, + sym_integer, + sym_float, + sym_boolean, + sym_list, + sym_map, + sym_function, + sym_table, + [6710] = 13, + ACTIONS(128), 1, + anon_sym_LBRACE, + ACTIONS(130), 1, + anon_sym_LPAREN, + ACTIONS(132), 1, + aux_sym_integer_token1, + ACTIONS(134), 1, + aux_sym_float_token1, + ACTIONS(136), 1, + sym_string, + ACTIONS(140), 1, + anon_sym_LBRACK, + ACTIONS(142), 1, + anon_sym_function, + ACTIONS(144), 1, + anon_sym_table, + ACTIONS(440), 1, sym_identifier, STATE(175), 1, sym_expression, - ACTIONS(55), 2, + ACTIONS(138), 2, anon_sym_true, anon_sym_false, - STATE(157), 7, + STATE(160), 7, sym__expression_kind, sym_value, sym_index, @@ -7545,7 +8155,7 @@ static const uint16_t ts_small_parse_table[] = { sym_logic, sym_function_call, sym_tool, - STATE(159), 7, + STATE(162), 7, sym_integer, sym_float, sym_boolean, @@ -7553,31 +8163,31 @@ static const uint16_t ts_small_parse_table[] = { sym_map, sym_function, sym_table, - [6074] = 13, - ACTIONS(7), 1, - anon_sym_LPAREN, - ACTIONS(9), 1, - sym__numeric, - ACTIONS(11), 1, - anon_sym_DASH, - ACTIONS(13), 1, - sym_string, - ACTIONS(17), 1, - anon_sym_LBRACK, - ACTIONS(19), 1, + [6763] = 13, + ACTIONS(128), 1, anon_sym_LBRACE, - ACTIONS(21), 1, + ACTIONS(130), 1, + anon_sym_LPAREN, + ACTIONS(132), 1, + aux_sym_integer_token1, + ACTIONS(134), 1, + aux_sym_float_token1, + ACTIONS(136), 1, + sym_string, + ACTIONS(140), 1, + anon_sym_LBRACK, + ACTIONS(142), 1, anon_sym_function, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(446), 1, + ACTIONS(144), 1, anon_sym_table, - STATE(30), 1, + ACTIONS(440), 1, + sym_identifier, + STATE(178), 1, sym_expression, - ACTIONS(15), 2, + ACTIONS(138), 2, anon_sym_true, anon_sym_false, - STATE(48), 7, + STATE(160), 7, sym__expression_kind, sym_value, sym_index, @@ -7585,7 +8195,7 @@ static const uint16_t ts_small_parse_table[] = { sym_logic, sym_function_call, sym_tool, - STATE(60), 7, + STATE(162), 7, sym_integer, sym_float, sym_boolean, @@ -7593,31 +8203,31 @@ static const uint16_t ts_small_parse_table[] = { sym_map, sym_function, sym_table, - [6127] = 13, - ACTIONS(7), 1, - anon_sym_LPAREN, - ACTIONS(9), 1, - sym__numeric, - ACTIONS(11), 1, - anon_sym_DASH, - ACTIONS(13), 1, - sym_string, - ACTIONS(17), 1, - anon_sym_LBRACK, - ACTIONS(19), 1, + [6816] = 13, + ACTIONS(128), 1, anon_sym_LBRACE, - ACTIONS(21), 1, + ACTIONS(130), 1, + anon_sym_LPAREN, + ACTIONS(132), 1, + aux_sym_integer_token1, + ACTIONS(134), 1, + aux_sym_float_token1, + ACTIONS(136), 1, + sym_string, + ACTIONS(140), 1, + anon_sym_LBRACK, + ACTIONS(142), 1, anon_sym_function, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(446), 1, + ACTIONS(144), 1, anon_sym_table, - STATE(31), 1, + ACTIONS(440), 1, + sym_identifier, + STATE(176), 1, sym_expression, - ACTIONS(15), 2, + ACTIONS(138), 2, anon_sym_true, anon_sym_false, - STATE(48), 7, + STATE(160), 7, sym__expression_kind, sym_value, sym_index, @@ -7625,7 +8235,7 @@ static const uint16_t ts_small_parse_table[] = { sym_logic, sym_function_call, sym_tool, - STATE(60), 7, + STATE(162), 7, sym_integer, sym_float, sym_boolean, @@ -7633,31 +8243,231 @@ static const uint16_t ts_small_parse_table[] = { sym_map, sym_function, sym_table, - [6180] = 13, - ACTIONS(47), 1, - anon_sym_LPAREN, - ACTIONS(49), 1, - sym__numeric, - ACTIONS(51), 1, - anon_sym_DASH, - ACTIONS(53), 1, - sym_string, - ACTIONS(57), 1, - anon_sym_LBRACK, - ACTIONS(59), 1, + [6869] = 13, + ACTIONS(128), 1, anon_sym_LBRACE, - ACTIONS(61), 1, + ACTIONS(130), 1, + anon_sym_LPAREN, + ACTIONS(132), 1, + aux_sym_integer_token1, + ACTIONS(134), 1, + aux_sym_float_token1, + ACTIONS(136), 1, + sym_string, + ACTIONS(140), 1, + anon_sym_LBRACK, + ACTIONS(142), 1, anon_sym_function, - ACTIONS(63), 1, + ACTIONS(144), 1, anon_sym_table, - ACTIONS(442), 1, + ACTIONS(440), 1, sym_identifier, + STATE(179), 1, + sym_expression, + ACTIONS(138), 2, + anon_sym_true, + anon_sym_false, + STATE(160), 7, + sym__expression_kind, + sym_value, + sym_index, + sym_math, + sym_logic, + sym_function_call, + sym_tool, + STATE(162), 7, + sym_integer, + sym_float, + sym_boolean, + sym_list, + sym_map, + sym_function, + sym_table, + [6922] = 13, + ACTIONS(128), 1, + anon_sym_LBRACE, + ACTIONS(130), 1, + anon_sym_LPAREN, + ACTIONS(132), 1, + aux_sym_integer_token1, + ACTIONS(134), 1, + aux_sym_float_token1, + ACTIONS(136), 1, + sym_string, + ACTIONS(140), 1, + anon_sym_LBRACK, + ACTIONS(142), 1, + anon_sym_function, + ACTIONS(144), 1, + anon_sym_table, + ACTIONS(440), 1, + sym_identifier, + STATE(180), 1, + sym_expression, + ACTIONS(138), 2, + anon_sym_true, + anon_sym_false, + STATE(160), 7, + sym__expression_kind, + sym_value, + sym_index, + sym_math, + sym_logic, + sym_function_call, + sym_tool, + STATE(162), 7, + sym_integer, + sym_float, + sym_boolean, + sym_list, + sym_map, + sym_function, + sym_table, + [6975] = 13, + ACTIONS(128), 1, + anon_sym_LBRACE, + ACTIONS(130), 1, + anon_sym_LPAREN, + ACTIONS(132), 1, + aux_sym_integer_token1, + ACTIONS(134), 1, + aux_sym_float_token1, + ACTIONS(136), 1, + sym_string, + ACTIONS(140), 1, + anon_sym_LBRACK, + ACTIONS(142), 1, + anon_sym_function, + ACTIONS(144), 1, + anon_sym_table, + ACTIONS(440), 1, + sym_identifier, + STATE(181), 1, + sym_expression, + ACTIONS(138), 2, + anon_sym_true, + anon_sym_false, + STATE(160), 7, + sym__expression_kind, + sym_value, + sym_index, + sym_math, + sym_logic, + sym_function_call, + sym_tool, + STATE(162), 7, + sym_integer, + sym_float, + sym_boolean, + sym_list, + sym_map, + sym_function, + sym_table, + [7028] = 13, + ACTIONS(128), 1, + anon_sym_LBRACE, + ACTIONS(130), 1, + anon_sym_LPAREN, + ACTIONS(132), 1, + aux_sym_integer_token1, + ACTIONS(134), 1, + aux_sym_float_token1, + ACTIONS(136), 1, + sym_string, + ACTIONS(140), 1, + anon_sym_LBRACK, + ACTIONS(142), 1, + anon_sym_function, + ACTIONS(144), 1, + anon_sym_table, + ACTIONS(440), 1, + sym_identifier, + STATE(152), 1, + sym_expression, + ACTIONS(138), 2, + anon_sym_true, + anon_sym_false, + STATE(160), 7, + sym__expression_kind, + sym_value, + sym_index, + sym_math, + sym_logic, + sym_function_call, + sym_tool, + STATE(162), 7, + sym_integer, + sym_float, + sym_boolean, + sym_list, + sym_map, + sym_function, + sym_table, + [7081] = 13, + ACTIONS(128), 1, + anon_sym_LBRACE, + ACTIONS(130), 1, + anon_sym_LPAREN, + ACTIONS(132), 1, + aux_sym_integer_token1, + ACTIONS(134), 1, + aux_sym_float_token1, + ACTIONS(136), 1, + sym_string, + ACTIONS(140), 1, + anon_sym_LBRACK, + ACTIONS(142), 1, + anon_sym_function, + ACTIONS(144), 1, + anon_sym_table, + ACTIONS(440), 1, + sym_identifier, + STATE(153), 1, + sym_expression, + ACTIONS(138), 2, + anon_sym_true, + anon_sym_false, + STATE(160), 7, + sym__expression_kind, + sym_value, + sym_index, + sym_math, + sym_logic, + sym_function_call, + sym_tool, + STATE(162), 7, + sym_integer, + sym_float, + sym_boolean, + sym_list, + sym_map, + sym_function, + sym_table, + [7134] = 13, + ACTIONS(128), 1, + anon_sym_LBRACE, + ACTIONS(130), 1, + anon_sym_LPAREN, + ACTIONS(132), 1, + aux_sym_integer_token1, + ACTIONS(134), 1, + aux_sym_float_token1, + ACTIONS(136), 1, + sym_string, + ACTIONS(140), 1, + anon_sym_LBRACK, + ACTIONS(142), 1, + anon_sym_function, + ACTIONS(440), 1, + sym_identifier, + ACTIONS(488), 1, + anon_sym_table, STATE(144), 1, sym_expression, - ACTIONS(55), 2, + ACTIONS(138), 2, anon_sym_true, anon_sym_false, - STATE(157), 7, + STATE(160), 7, sym__expression_kind, sym_value, sym_index, @@ -7665,7 +8475,7 @@ static const uint16_t ts_small_parse_table[] = { sym_logic, sym_function_call, sym_tool, - STATE(159), 7, + STATE(162), 7, sym_integer, sym_float, sym_boolean, @@ -7673,31 +8483,31 @@ static const uint16_t ts_small_parse_table[] = { sym_map, sym_function, sym_table, - [6233] = 13, - ACTIONS(7), 1, - anon_sym_LPAREN, + [7187] = 13, ACTIONS(9), 1, - sym__numeric, + anon_sym_LPAREN, ACTIONS(11), 1, - anon_sym_DASH, + aux_sym_integer_token1, ACTIONS(13), 1, + aux_sym_float_token1, + ACTIONS(15), 1, sym_string, - ACTIONS(17), 1, - anon_sym_LBRACK, ACTIONS(19), 1, - anon_sym_LBRACE, + anon_sym_LBRACK, ACTIONS(21), 1, anon_sym_function, - ACTIONS(263), 1, + ACTIONS(227), 1, + anon_sym_LBRACE, + ACTIONS(347), 1, sym_identifier, - ACTIONS(446), 1, + ACTIONS(490), 1, anon_sym_table, - STATE(33), 1, + STATE(37), 1, sym_expression, - ACTIONS(15), 2, + ACTIONS(17), 2, anon_sym_true, anon_sym_false, - STATE(48), 7, + STATE(47), 7, sym__expression_kind, sym_value, sym_index, @@ -7713,809 +8523,89 @@ static const uint16_t ts_small_parse_table[] = { sym_map, sym_function, sym_table, - [6286] = 13, - ACTIONS(47), 1, - anon_sym_LPAREN, - ACTIONS(49), 1, - sym__numeric, - ACTIONS(51), 1, - anon_sym_DASH, - ACTIONS(53), 1, - sym_string, - ACTIONS(57), 1, - anon_sym_LBRACK, - ACTIONS(59), 1, - anon_sym_LBRACE, - ACTIONS(61), 1, - anon_sym_function, - ACTIONS(63), 1, - anon_sym_table, - ACTIONS(442), 1, - sym_identifier, - STATE(140), 1, - sym_expression, - ACTIONS(55), 2, - anon_sym_true, - anon_sym_false, - STATE(157), 7, - sym__expression_kind, - sym_value, - sym_index, - sym_math, - sym_logic, - sym_function_call, - sym_tool, - STATE(159), 7, - sym_integer, - sym_float, - sym_boolean, - sym_list, - sym_map, - sym_function, - sym_table, - [6339] = 13, - ACTIONS(47), 1, - anon_sym_LPAREN, - ACTIONS(49), 1, - sym__numeric, - ACTIONS(51), 1, - anon_sym_DASH, - ACTIONS(53), 1, - sym_string, - ACTIONS(57), 1, - anon_sym_LBRACK, - ACTIONS(59), 1, - anon_sym_LBRACE, - ACTIONS(61), 1, - anon_sym_function, - ACTIONS(63), 1, - anon_sym_table, - ACTIONS(442), 1, - sym_identifier, - STATE(163), 1, - sym_expression, - ACTIONS(55), 2, - anon_sym_true, - anon_sym_false, - STATE(157), 7, - sym__expression_kind, - sym_value, - sym_index, - sym_math, - sym_logic, - sym_function_call, - sym_tool, - STATE(159), 7, - sym_integer, - sym_float, - sym_boolean, - sym_list, - sym_map, - sym_function, - sym_table, - [6392] = 2, - ACTIONS(448), 10, + [7240] = 2, + ACTIONS(492), 8, ts_builtin_sym_end, - aux_sym_comment_token1, - anon_sym_LPAREN, - sym__numeric, - anon_sym_DASH, - sym_string, - anon_sym_LBRACK, anon_sym_LBRACE, anon_sym_RBRACE, - anon_sym_elseif, - ACTIONS(450), 16, + aux_sym_comment_token1, + anon_sym_LPAREN, + aux_sym_float_token1, + sym_string, + anon_sym_LBRACK, + ACTIONS(494), 18, sym_identifier, + aux_sym_integer_token1, anon_sym_true, anon_sym_false, anon_sym_function, anon_sym_table, anon_sym_if, - anon_sym_else, + anon_sym_match, anon_sym_while, anon_sym_for, anon_sym_transform, anon_sym_filter, anon_sym_find, anon_sym_remove, + anon_sym_reduce, anon_sym_select, anon_sym_insert, anon_sym_async, - [6423] = 13, - ACTIONS(47), 1, - anon_sym_LPAREN, - ACTIONS(49), 1, - sym__numeric, - ACTIONS(51), 1, - anon_sym_DASH, - ACTIONS(53), 1, - sym_string, - ACTIONS(57), 1, - anon_sym_LBRACK, - ACTIONS(59), 1, - anon_sym_LBRACE, - ACTIONS(61), 1, - anon_sym_function, - ACTIONS(63), 1, - anon_sym_table, - ACTIONS(442), 1, - sym_identifier, - STATE(174), 1, - sym_expression, - ACTIONS(55), 2, - anon_sym_true, - anon_sym_false, - STATE(157), 7, - sym__expression_kind, - sym_value, - sym_index, - sym_math, - sym_logic, - sym_function_call, - sym_tool, - STATE(159), 7, - sym_integer, - sym_float, - sym_boolean, - sym_list, - sym_map, - sym_function, - sym_table, - [6476] = 13, - ACTIONS(47), 1, - anon_sym_LPAREN, - ACTIONS(49), 1, - sym__numeric, - ACTIONS(51), 1, - anon_sym_DASH, - ACTIONS(53), 1, - sym_string, - ACTIONS(57), 1, - anon_sym_LBRACK, - ACTIONS(59), 1, - anon_sym_LBRACE, - ACTIONS(61), 1, - anon_sym_function, - ACTIONS(442), 1, - sym_identifier, - ACTIONS(444), 1, - anon_sym_table, - STATE(134), 1, - sym_expression, - ACTIONS(55), 2, - anon_sym_true, - anon_sym_false, - STATE(157), 7, - sym__expression_kind, - sym_value, - sym_index, - sym_math, - sym_logic, - sym_function_call, - sym_tool, - STATE(159), 7, - sym_integer, - sym_float, - sym_boolean, - sym_list, - sym_map, - sym_function, - sym_table, - [6529] = 13, - ACTIONS(47), 1, - anon_sym_LPAREN, - ACTIONS(49), 1, - sym__numeric, - ACTIONS(51), 1, - anon_sym_DASH, - ACTIONS(53), 1, - sym_string, - ACTIONS(57), 1, - anon_sym_LBRACK, - ACTIONS(59), 1, - anon_sym_LBRACE, - ACTIONS(61), 1, - anon_sym_function, - ACTIONS(63), 1, - anon_sym_table, - ACTIONS(442), 1, - sym_identifier, - STATE(173), 1, - sym_expression, - ACTIONS(55), 2, - anon_sym_true, - anon_sym_false, - STATE(157), 7, - sym__expression_kind, - sym_value, - sym_index, - sym_math, - sym_logic, - sym_function_call, - sym_tool, - STATE(159), 7, - sym_integer, - sym_float, - sym_boolean, - sym_list, - sym_map, - sym_function, - sym_table, - [6582] = 13, - ACTIONS(7), 1, - anon_sym_LPAREN, - ACTIONS(9), 1, - sym__numeric, - ACTIONS(11), 1, - anon_sym_DASH, - ACTIONS(13), 1, - sym_string, - ACTIONS(17), 1, - anon_sym_LBRACK, - ACTIONS(19), 1, - anon_sym_LBRACE, - ACTIONS(21), 1, - anon_sym_function, - ACTIONS(263), 1, - sym_identifier, - ACTIONS(446), 1, - anon_sym_table, - STATE(35), 1, - sym_expression, - ACTIONS(15), 2, - anon_sym_true, - anon_sym_false, - STATE(48), 7, - sym__expression_kind, - sym_value, - sym_index, - sym_math, - sym_logic, - sym_function_call, - sym_tool, - STATE(60), 7, - sym_integer, - sym_float, - sym_boolean, - sym_list, - sym_map, - sym_function, - sym_table, - [6635] = 13, - ACTIONS(47), 1, - anon_sym_LPAREN, - ACTIONS(49), 1, - sym__numeric, - ACTIONS(51), 1, - anon_sym_DASH, - ACTIONS(53), 1, - sym_string, - ACTIONS(57), 1, - anon_sym_LBRACK, - ACTIONS(59), 1, - anon_sym_LBRACE, - ACTIONS(61), 1, - anon_sym_function, - ACTIONS(63), 1, - anon_sym_table, - ACTIONS(442), 1, - sym_identifier, - STATE(170), 1, - sym_expression, - ACTIONS(55), 2, - anon_sym_true, - anon_sym_false, - STATE(157), 7, - sym__expression_kind, - sym_value, - sym_index, - sym_math, - sym_logic, - sym_function_call, - sym_tool, - STATE(159), 7, - sym_integer, - sym_float, - sym_boolean, - sym_list, - sym_map, - sym_function, - sym_table, - [6688] = 13, - ACTIONS(47), 1, - anon_sym_LPAREN, - ACTIONS(49), 1, - sym__numeric, - ACTIONS(51), 1, - anon_sym_DASH, - ACTIONS(53), 1, - sym_string, - ACTIONS(57), 1, - anon_sym_LBRACK, - ACTIONS(59), 1, - anon_sym_LBRACE, - ACTIONS(61), 1, - anon_sym_function, - ACTIONS(63), 1, - anon_sym_table, - ACTIONS(442), 1, - sym_identifier, - STATE(172), 1, - sym_expression, - ACTIONS(55), 2, - anon_sym_true, - anon_sym_false, - STATE(157), 7, - sym__expression_kind, - sym_value, - sym_index, - sym_math, - sym_logic, - sym_function_call, - sym_tool, - STATE(159), 7, - sym_integer, - sym_float, - sym_boolean, - sym_list, - sym_map, - sym_function, - sym_table, - [6741] = 13, - ACTIONS(47), 1, - anon_sym_LPAREN, - ACTIONS(49), 1, - sym__numeric, - ACTIONS(51), 1, - anon_sym_DASH, - ACTIONS(53), 1, - sym_string, - ACTIONS(57), 1, - anon_sym_LBRACK, - ACTIONS(59), 1, - anon_sym_LBRACE, - ACTIONS(61), 1, - anon_sym_function, - ACTIONS(63), 1, - anon_sym_table, - ACTIONS(442), 1, - sym_identifier, - STATE(168), 1, - sym_expression, - ACTIONS(55), 2, - anon_sym_true, - anon_sym_false, - STATE(157), 7, - sym__expression_kind, - sym_value, - sym_index, - sym_math, - sym_logic, - sym_function_call, - sym_tool, - STATE(159), 7, - sym_integer, - sym_float, - sym_boolean, - sym_list, - sym_map, - sym_function, - sym_table, - [6794] = 13, - ACTIONS(47), 1, - anon_sym_LPAREN, - ACTIONS(49), 1, - sym__numeric, - ACTIONS(51), 1, - anon_sym_DASH, - ACTIONS(53), 1, - sym_string, - ACTIONS(57), 1, - anon_sym_LBRACK, - ACTIONS(59), 1, - anon_sym_LBRACE, - ACTIONS(61), 1, - anon_sym_function, - ACTIONS(63), 1, - anon_sym_table, - ACTIONS(442), 1, - sym_identifier, - STATE(167), 1, - sym_expression, - ACTIONS(55), 2, - anon_sym_true, - anon_sym_false, - STATE(157), 7, - sym__expression_kind, - sym_value, - sym_index, - sym_math, - sym_logic, - sym_function_call, - sym_tool, - STATE(159), 7, - sym_integer, - sym_float, - sym_boolean, - sym_list, - sym_map, - sym_function, - sym_table, - [6847] = 13, - ACTIONS(47), 1, - anon_sym_LPAREN, - ACTIONS(49), 1, - sym__numeric, - ACTIONS(51), 1, - anon_sym_DASH, - ACTIONS(53), 1, - sym_string, - ACTIONS(57), 1, - anon_sym_LBRACK, - ACTIONS(59), 1, - anon_sym_LBRACE, - ACTIONS(61), 1, - anon_sym_function, - ACTIONS(63), 1, - anon_sym_table, - ACTIONS(442), 1, - sym_identifier, - STATE(166), 1, - sym_expression, - ACTIONS(55), 2, - anon_sym_true, - anon_sym_false, - STATE(157), 7, - sym__expression_kind, - sym_value, - sym_index, - sym_math, - sym_logic, - sym_function_call, - sym_tool, - STATE(159), 7, - sym_integer, - sym_float, - sym_boolean, - sym_list, - sym_map, - sym_function, - sym_table, - [6900] = 13, - ACTIONS(47), 1, - anon_sym_LPAREN, - ACTIONS(49), 1, - sym__numeric, - ACTIONS(51), 1, - anon_sym_DASH, - ACTIONS(53), 1, - sym_string, - ACTIONS(57), 1, - anon_sym_LBRACK, - ACTIONS(59), 1, - anon_sym_LBRACE, - ACTIONS(61), 1, - anon_sym_function, - ACTIONS(63), 1, - anon_sym_table, - ACTIONS(442), 1, - sym_identifier, - STATE(169), 1, - sym_expression, - ACTIONS(55), 2, - anon_sym_true, - anon_sym_false, - STATE(157), 7, - sym__expression_kind, - sym_value, - sym_index, - sym_math, - sym_logic, - sym_function_call, - sym_tool, - STATE(159), 7, - sym_integer, - sym_float, - sym_boolean, - sym_list, - sym_map, - sym_function, - sym_table, - [6953] = 13, - ACTIONS(7), 1, - anon_sym_LPAREN, - ACTIONS(9), 1, - sym__numeric, - ACTIONS(11), 1, - anon_sym_DASH, - ACTIONS(13), 1, - sym_string, - ACTIONS(17), 1, - anon_sym_LBRACK, - ACTIONS(19), 1, - anon_sym_LBRACE, - ACTIONS(21), 1, - anon_sym_function, - ACTIONS(23), 1, - anon_sym_table, - ACTIONS(263), 1, - sym_identifier, - STATE(63), 1, - sym_expression, - ACTIONS(15), 2, - anon_sym_true, - anon_sym_false, - STATE(48), 7, - sym__expression_kind, - sym_value, - sym_index, - sym_math, - sym_logic, - sym_function_call, - sym_tool, - STATE(60), 7, - sym_integer, - sym_float, - sym_boolean, - sym_list, - sym_map, - sym_function, - sym_table, - [7006] = 13, - ACTIONS(47), 1, - anon_sym_LPAREN, - ACTIONS(49), 1, - sym__numeric, - ACTIONS(51), 1, - anon_sym_DASH, - ACTIONS(53), 1, - sym_string, - ACTIONS(57), 1, - anon_sym_LBRACK, - ACTIONS(59), 1, - anon_sym_LBRACE, - ACTIONS(61), 1, - anon_sym_function, - ACTIONS(442), 1, - sym_identifier, - ACTIONS(444), 1, - anon_sym_table, - STATE(138), 1, - sym_expression, - ACTIONS(55), 2, - anon_sym_true, - anon_sym_false, - STATE(157), 7, - sym__expression_kind, - sym_value, - sym_index, - sym_math, - sym_logic, - sym_function_call, - sym_tool, - STATE(159), 7, - sym_integer, - sym_float, - sym_boolean, - sym_list, - sym_map, - sym_function, - sym_table, - [7059] = 13, - ACTIONS(7), 1, - anon_sym_LPAREN, - ACTIONS(9), 1, - sym__numeric, - ACTIONS(11), 1, - anon_sym_DASH, - ACTIONS(13), 1, - sym_string, - ACTIONS(17), 1, - anon_sym_LBRACK, - ACTIONS(19), 1, - anon_sym_LBRACE, - ACTIONS(21), 1, - anon_sym_function, - ACTIONS(23), 1, - anon_sym_table, - ACTIONS(263), 1, - sym_identifier, - STATE(62), 1, - sym_expression, - ACTIONS(15), 2, - anon_sym_true, - anon_sym_false, - STATE(48), 7, - sym__expression_kind, - sym_value, - sym_index, - sym_math, - sym_logic, - sym_function_call, - sym_tool, - STATE(60), 7, - sym_integer, - sym_float, - sym_boolean, - sym_list, - sym_map, - sym_function, - sym_table, - [7112] = 13, - ACTIONS(47), 1, - anon_sym_LPAREN, - ACTIONS(49), 1, - sym__numeric, - ACTIONS(51), 1, - anon_sym_DASH, - ACTIONS(53), 1, - sym_string, - ACTIONS(57), 1, - anon_sym_LBRACK, - ACTIONS(59), 1, - anon_sym_LBRACE, - ACTIONS(61), 1, - anon_sym_function, - ACTIONS(63), 1, - anon_sym_table, - ACTIONS(442), 1, - sym_identifier, - STATE(139), 1, - sym_expression, - ACTIONS(55), 2, - anon_sym_true, - anon_sym_false, - STATE(157), 7, - sym__expression_kind, - sym_value, - sym_index, - sym_math, - sym_logic, - sym_function_call, - sym_tool, - STATE(159), 7, - sym_integer, - sym_float, - sym_boolean, - sym_list, - sym_map, - sym_function, - sym_table, - [7165] = 2, - ACTIONS(452), 10, + [7271] = 2, + ACTIONS(496), 8, ts_builtin_sym_end, - aux_sym_comment_token1, - anon_sym_LPAREN, - sym__numeric, - anon_sym_DASH, - sym_string, - anon_sym_LBRACK, anon_sym_LBRACE, anon_sym_RBRACE, - anon_sym_elseif, - ACTIONS(454), 16, + aux_sym_comment_token1, + anon_sym_LPAREN, + aux_sym_float_token1, + sym_string, + anon_sym_LBRACK, + ACTIONS(498), 18, sym_identifier, + aux_sym_integer_token1, anon_sym_true, anon_sym_false, anon_sym_function, anon_sym_table, anon_sym_if, - anon_sym_else, + anon_sym_match, anon_sym_while, anon_sym_for, anon_sym_transform, anon_sym_filter, anon_sym_find, anon_sym_remove, + anon_sym_reduce, anon_sym_select, anon_sym_insert, anon_sym_async, - [7196] = 13, - ACTIONS(47), 1, - anon_sym_LPAREN, - ACTIONS(49), 1, - sym__numeric, - ACTIONS(51), 1, - anon_sym_DASH, - ACTIONS(53), 1, - sym_string, - ACTIONS(57), 1, - anon_sym_LBRACK, - ACTIONS(59), 1, - anon_sym_LBRACE, - ACTIONS(61), 1, - anon_sym_function, - ACTIONS(63), 1, - anon_sym_table, - ACTIONS(442), 1, - sym_identifier, - STATE(143), 1, - sym_expression, - ACTIONS(55), 2, - anon_sym_true, - anon_sym_false, - STATE(157), 7, - sym__expression_kind, - sym_value, - sym_index, - sym_math, - sym_logic, - sym_function_call, - sym_tool, - STATE(159), 7, - sym_integer, - sym_float, - sym_boolean, - sym_list, - sym_map, - sym_function, - sym_table, - [7249] = 13, - ACTIONS(47), 1, - anon_sym_LPAREN, - ACTIONS(49), 1, - sym__numeric, - ACTIONS(51), 1, - anon_sym_DASH, - ACTIONS(53), 1, - sym_string, - ACTIONS(57), 1, - anon_sym_LBRACK, - ACTIONS(59), 1, - anon_sym_LBRACE, - ACTIONS(61), 1, - anon_sym_function, - ACTIONS(442), 1, - sym_identifier, - ACTIONS(444), 1, - anon_sym_table, - STATE(137), 1, - sym_expression, - ACTIONS(55), 2, - anon_sym_true, - anon_sym_false, - STATE(157), 7, - sym__expression_kind, - sym_value, - sym_index, - sym_math, - sym_logic, - sym_function_call, - sym_tool, - STATE(159), 7, - sym_integer, - sym_float, - sym_boolean, - sym_list, - sym_map, - sym_function, - sym_table, [7302] = 13, - ACTIONS(7), 1, - anon_sym_LPAREN, - ACTIONS(9), 1, - sym__numeric, - ACTIONS(11), 1, - anon_sym_DASH, - ACTIONS(13), 1, - sym_string, - ACTIONS(17), 1, - anon_sym_LBRACK, - ACTIONS(19), 1, + ACTIONS(128), 1, anon_sym_LBRACE, - ACTIONS(21), 1, + ACTIONS(130), 1, + anon_sym_LPAREN, + ACTIONS(132), 1, + aux_sym_integer_token1, + ACTIONS(134), 1, + aux_sym_float_token1, + ACTIONS(136), 1, + sym_string, + ACTIONS(140), 1, + anon_sym_LBRACK, + ACTIONS(142), 1, anon_sym_function, - ACTIONS(263), 1, + ACTIONS(440), 1, sym_identifier, - ACTIONS(446), 1, + ACTIONS(488), 1, anon_sym_table, - STATE(32), 1, + STATE(145), 1, sym_expression, - ACTIONS(15), 2, + ACTIONS(138), 2, anon_sym_true, anon_sym_false, - STATE(48), 7, + STATE(160), 7, sym__expression_kind, sym_value, sym_index, @@ -8523,7 +8613,7 @@ static const uint16_t ts_small_parse_table[] = { sym_logic, sym_function_call, sym_tool, - STATE(60), 7, + STATE(162), 7, sym_integer, sym_float, sym_boolean, @@ -8532,30 +8622,30 @@ static const uint16_t ts_small_parse_table[] = { sym_function, sym_table, [7355] = 13, - ACTIONS(7), 1, - anon_sym_LPAREN, - ACTIONS(9), 1, - sym__numeric, - ACTIONS(11), 1, - anon_sym_DASH, - ACTIONS(13), 1, - sym_string, - ACTIONS(17), 1, - anon_sym_LBRACK, - ACTIONS(19), 1, + ACTIONS(128), 1, anon_sym_LBRACE, - ACTIONS(21), 1, + ACTIONS(130), 1, + anon_sym_LPAREN, + ACTIONS(132), 1, + aux_sym_integer_token1, + ACTIONS(134), 1, + aux_sym_float_token1, + ACTIONS(136), 1, + sym_string, + ACTIONS(140), 1, + anon_sym_LBRACK, + ACTIONS(142), 1, anon_sym_function, - ACTIONS(23), 1, - anon_sym_table, - ACTIONS(263), 1, + ACTIONS(440), 1, sym_identifier, - STATE(36), 1, + ACTIONS(488), 1, + anon_sym_table, + STATE(149), 1, sym_expression, - ACTIONS(15), 2, + ACTIONS(138), 2, anon_sym_true, anon_sym_false, - STATE(48), 7, + STATE(160), 7, sym__expression_kind, sym_value, sym_index, @@ -8563,7 +8653,7 @@ static const uint16_t ts_small_parse_table[] = { sym_logic, sym_function_call, sym_tool, - STATE(60), 7, + STATE(162), 7, sym_integer, sym_float, sym_boolean, @@ -8572,30 +8662,30 @@ static const uint16_t ts_small_parse_table[] = { sym_function, sym_table, [7408] = 13, - ACTIONS(7), 1, - anon_sym_LPAREN, ACTIONS(9), 1, - sym__numeric, + anon_sym_LPAREN, ACTIONS(11), 1, - anon_sym_DASH, + aux_sym_integer_token1, ACTIONS(13), 1, + aux_sym_float_token1, + ACTIONS(15), 1, sym_string, - ACTIONS(17), 1, - anon_sym_LBRACK, ACTIONS(19), 1, - anon_sym_LBRACE, + anon_sym_LBRACK, ACTIONS(21), 1, anon_sym_function, ACTIONS(23), 1, anon_sym_table, - ACTIONS(263), 1, + ACTIONS(227), 1, + anon_sym_LBRACE, + ACTIONS(347), 1, sym_identifier, - STATE(65), 1, + STATE(66), 1, sym_expression, - ACTIONS(15), 2, + ACTIONS(17), 2, anon_sym_true, anon_sym_false, - STATE(48), 7, + STATE(47), 7, sym__expression_kind, sym_value, sym_index, @@ -8612,30 +8702,30 @@ static const uint16_t ts_small_parse_table[] = { sym_function, sym_table, [7461] = 13, - ACTIONS(7), 1, - anon_sym_LPAREN, ACTIONS(9), 1, - sym__numeric, + anon_sym_LPAREN, ACTIONS(11), 1, - anon_sym_DASH, + aux_sym_integer_token1, ACTIONS(13), 1, + aux_sym_float_token1, + ACTIONS(15), 1, sym_string, - ACTIONS(17), 1, - anon_sym_LBRACK, ACTIONS(19), 1, - anon_sym_LBRACE, + anon_sym_LBRACK, ACTIONS(21), 1, anon_sym_function, - ACTIONS(23), 1, - anon_sym_table, - ACTIONS(263), 1, + ACTIONS(227), 1, + anon_sym_LBRACE, + ACTIONS(347), 1, sym_identifier, - STATE(40), 1, + ACTIONS(490), 1, + anon_sym_table, + STATE(39), 1, sym_expression, - ACTIONS(15), 2, + ACTIONS(17), 2, anon_sym_true, anon_sym_false, - STATE(48), 7, + STATE(47), 7, sym__expression_kind, sym_value, sym_index, @@ -8651,480 +8741,1371 @@ static const uint16_t ts_small_parse_table[] = { sym_map, sym_function, sym_table, - [7514] = 2, - ACTIONS(456), 9, - ts_builtin_sym_end, - aux_sym_comment_token1, + [7514] = 13, + ACTIONS(128), 1, + anon_sym_LBRACE, + ACTIONS(130), 1, anon_sym_LPAREN, - sym__numeric, - anon_sym_DASH, + ACTIONS(132), 1, + aux_sym_integer_token1, + ACTIONS(134), 1, + aux_sym_float_token1, + ACTIONS(136), 1, sym_string, + ACTIONS(140), 1, anon_sym_LBRACK, + ACTIONS(142), 1, + anon_sym_function, + ACTIONS(144), 1, + anon_sym_table, + ACTIONS(440), 1, + sym_identifier, + STATE(183), 1, + sym_expression, + ACTIONS(138), 2, + anon_sym_true, + anon_sym_false, + STATE(160), 7, + sym__expression_kind, + sym_value, + sym_index, + sym_math, + sym_logic, + sym_function_call, + sym_tool, + STATE(162), 7, + sym_integer, + sym_float, + sym_boolean, + sym_list, + sym_map, + sym_function, + sym_table, + [7567] = 2, + ACTIONS(500), 8, + ts_builtin_sym_end, anon_sym_LBRACE, anon_sym_RBRACE, - ACTIONS(458), 15, + aux_sym_comment_token1, + anon_sym_LPAREN, + aux_sym_float_token1, + sym_string, + anon_sym_LBRACK, + ACTIONS(502), 18, sym_identifier, + aux_sym_integer_token1, anon_sym_true, anon_sym_false, anon_sym_function, anon_sym_table, anon_sym_if, + anon_sym_match, anon_sym_while, anon_sym_for, anon_sym_transform, anon_sym_filter, anon_sym_find, anon_sym_remove, + anon_sym_reduce, anon_sym_select, anon_sym_insert, anon_sym_async, - [7543] = 2, - ACTIONS(460), 9, - ts_builtin_sym_end, - aux_sym_comment_token1, + [7598] = 13, + ACTIONS(9), 1, anon_sym_LPAREN, - sym__numeric, - anon_sym_DASH, + ACTIONS(11), 1, + aux_sym_integer_token1, + ACTIONS(13), 1, + aux_sym_float_token1, + ACTIONS(15), 1, sym_string, + ACTIONS(19), 1, anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_function, + ACTIONS(227), 1, + anon_sym_LBRACE, + ACTIONS(347), 1, + sym_identifier, + ACTIONS(490), 1, + anon_sym_table, + STATE(35), 1, + sym_expression, + ACTIONS(17), 2, + anon_sym_true, + anon_sym_false, + STATE(47), 7, + sym__expression_kind, + sym_value, + sym_index, + sym_math, + sym_logic, + sym_function_call, + sym_tool, + STATE(60), 7, + sym_integer, + sym_float, + sym_boolean, + sym_list, + sym_map, + sym_function, + sym_table, + [7651] = 2, + ACTIONS(504), 8, + ts_builtin_sym_end, anon_sym_LBRACE, anon_sym_RBRACE, - ACTIONS(462), 15, + aux_sym_comment_token1, + anon_sym_LPAREN, + aux_sym_float_token1, + sym_string, + anon_sym_LBRACK, + ACTIONS(506), 18, sym_identifier, + aux_sym_integer_token1, anon_sym_true, anon_sym_false, anon_sym_function, anon_sym_table, anon_sym_if, + anon_sym_match, anon_sym_while, anon_sym_for, anon_sym_transform, anon_sym_filter, anon_sym_find, anon_sym_remove, + anon_sym_reduce, anon_sym_select, anon_sym_insert, anon_sym_async, - [7572] = 2, - ACTIONS(464), 9, - ts_builtin_sym_end, - aux_sym_comment_token1, + [7682] = 13, + ACTIONS(128), 1, + anon_sym_LBRACE, + ACTIONS(130), 1, anon_sym_LPAREN, - sym__numeric, - anon_sym_DASH, + ACTIONS(132), 1, + aux_sym_integer_token1, + ACTIONS(134), 1, + aux_sym_float_token1, + ACTIONS(136), 1, sym_string, + ACTIONS(140), 1, anon_sym_LBRACK, + ACTIONS(142), 1, + anon_sym_function, + ACTIONS(144), 1, + anon_sym_table, + ACTIONS(440), 1, + sym_identifier, + STATE(150), 1, + sym_expression, + ACTIONS(138), 2, + anon_sym_true, + anon_sym_false, + STATE(160), 7, + sym__expression_kind, + sym_value, + sym_index, + sym_math, + sym_logic, + sym_function_call, + sym_tool, + STATE(162), 7, + sym_integer, + sym_float, + sym_boolean, + sym_list, + sym_map, + sym_function, + sym_table, + [7735] = 13, + ACTIONS(128), 1, + anon_sym_LBRACE, + ACTIONS(130), 1, + anon_sym_LPAREN, + ACTIONS(132), 1, + aux_sym_integer_token1, + ACTIONS(134), 1, + aux_sym_float_token1, + ACTIONS(136), 1, + sym_string, + ACTIONS(140), 1, + anon_sym_LBRACK, + ACTIONS(142), 1, + anon_sym_function, + ACTIONS(144), 1, + anon_sym_table, + ACTIONS(440), 1, + sym_identifier, + STATE(171), 1, + sym_expression, + ACTIONS(138), 2, + anon_sym_true, + anon_sym_false, + STATE(160), 7, + sym__expression_kind, + sym_value, + sym_index, + sym_math, + sym_logic, + sym_function_call, + sym_tool, + STATE(162), 7, + sym_integer, + sym_float, + sym_boolean, + sym_list, + sym_map, + sym_function, + sym_table, + [7788] = 2, + ACTIONS(508), 8, + ts_builtin_sym_end, anon_sym_LBRACE, anon_sym_RBRACE, - ACTIONS(466), 15, + aux_sym_comment_token1, + anon_sym_LPAREN, + aux_sym_float_token1, + sym_string, + anon_sym_LBRACK, + ACTIONS(510), 18, sym_identifier, + aux_sym_integer_token1, anon_sym_true, anon_sym_false, anon_sym_function, anon_sym_table, anon_sym_if, + anon_sym_match, anon_sym_while, anon_sym_for, anon_sym_transform, anon_sym_filter, anon_sym_find, anon_sym_remove, + anon_sym_reduce, anon_sym_select, anon_sym_insert, anon_sym_async, - [7601] = 2, - ACTIONS(468), 9, - ts_builtin_sym_end, - aux_sym_comment_token1, + [7819] = 13, + ACTIONS(128), 1, + anon_sym_LBRACE, + ACTIONS(130), 1, anon_sym_LPAREN, - sym__numeric, - anon_sym_DASH, + ACTIONS(132), 1, + aux_sym_integer_token1, + ACTIONS(134), 1, + aux_sym_float_token1, + ACTIONS(136), 1, sym_string, + ACTIONS(140), 1, anon_sym_LBRACK, + ACTIONS(142), 1, + anon_sym_function, + ACTIONS(144), 1, + anon_sym_table, + ACTIONS(512), 1, + sym_identifier, + STATE(173), 1, + sym_expression, + ACTIONS(138), 2, + anon_sym_true, + anon_sym_false, + STATE(160), 7, + sym__expression_kind, + sym_value, + sym_index, + sym_math, + sym_logic, + sym_function_call, + sym_tool, + STATE(162), 7, + sym_integer, + sym_float, + sym_boolean, + sym_list, + sym_map, + sym_function, + sym_table, + [7872] = 2, + ACTIONS(514), 8, + ts_builtin_sym_end, anon_sym_LBRACE, anon_sym_RBRACE, - ACTIONS(470), 15, + aux_sym_comment_token1, + anon_sym_LPAREN, + aux_sym_float_token1, + sym_string, + anon_sym_LBRACK, + ACTIONS(516), 18, sym_identifier, + aux_sym_integer_token1, anon_sym_true, anon_sym_false, anon_sym_function, anon_sym_table, anon_sym_if, + anon_sym_match, anon_sym_while, anon_sym_for, anon_sym_transform, anon_sym_filter, anon_sym_find, anon_sym_remove, + anon_sym_reduce, anon_sym_select, anon_sym_insert, anon_sym_async, - [7630] = 2, - ACTIONS(472), 9, + [7903] = 2, + ACTIONS(518), 8, ts_builtin_sym_end, - aux_sym_comment_token1, - anon_sym_LPAREN, - sym__numeric, - anon_sym_DASH, - sym_string, - anon_sym_LBRACK, anon_sym_LBRACE, anon_sym_RBRACE, - ACTIONS(474), 15, + aux_sym_comment_token1, + anon_sym_LPAREN, + aux_sym_float_token1, + sym_string, + anon_sym_LBRACK, + ACTIONS(520), 18, sym_identifier, + aux_sym_integer_token1, anon_sym_true, anon_sym_false, anon_sym_function, anon_sym_table, anon_sym_if, + anon_sym_match, anon_sym_while, anon_sym_for, anon_sym_transform, anon_sym_filter, anon_sym_find, anon_sym_remove, + anon_sym_reduce, anon_sym_select, anon_sym_insert, anon_sym_async, - [7659] = 2, - ACTIONS(476), 9, - ts_builtin_sym_end, - aux_sym_comment_token1, + [7934] = 13, + ACTIONS(9), 1, anon_sym_LPAREN, - sym__numeric, - anon_sym_DASH, + ACTIONS(11), 1, + aux_sym_integer_token1, + ACTIONS(13), 1, + aux_sym_float_token1, + ACTIONS(15), 1, sym_string, + ACTIONS(19), 1, anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_function, + ACTIONS(23), 1, + anon_sym_table, + ACTIONS(227), 1, + anon_sym_LBRACE, + ACTIONS(347), 1, + sym_identifier, + STATE(44), 1, + sym_expression, + ACTIONS(17), 2, + anon_sym_true, + anon_sym_false, + STATE(47), 7, + sym__expression_kind, + sym_value, + sym_index, + sym_math, + sym_logic, + sym_function_call, + sym_tool, + STATE(60), 7, + sym_integer, + sym_float, + sym_boolean, + sym_list, + sym_map, + sym_function, + sym_table, + [7987] = 2, + ACTIONS(522), 8, + ts_builtin_sym_end, anon_sym_LBRACE, anon_sym_RBRACE, - ACTIONS(478), 15, + aux_sym_comment_token1, + anon_sym_LPAREN, + aux_sym_float_token1, + sym_string, + anon_sym_LBRACK, + ACTIONS(524), 18, sym_identifier, + aux_sym_integer_token1, anon_sym_true, anon_sym_false, anon_sym_function, anon_sym_table, anon_sym_if, + anon_sym_match, anon_sym_while, anon_sym_for, anon_sym_transform, anon_sym_filter, anon_sym_find, anon_sym_remove, + anon_sym_reduce, anon_sym_select, anon_sym_insert, anon_sym_async, - [7688] = 2, - ACTIONS(480), 9, - ts_builtin_sym_end, - aux_sym_comment_token1, + [8018] = 13, + ACTIONS(9), 1, anon_sym_LPAREN, - sym__numeric, - anon_sym_DASH, + ACTIONS(11), 1, + aux_sym_integer_token1, + ACTIONS(13), 1, + aux_sym_float_token1, + ACTIONS(15), 1, sym_string, + ACTIONS(19), 1, anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_function, + ACTIONS(227), 1, + anon_sym_LBRACE, + ACTIONS(347), 1, + sym_identifier, + ACTIONS(490), 1, + anon_sym_table, + STATE(38), 1, + sym_expression, + ACTIONS(17), 2, + anon_sym_true, + anon_sym_false, + STATE(47), 7, + sym__expression_kind, + sym_value, + sym_index, + sym_math, + sym_logic, + sym_function_call, + sym_tool, + STATE(60), 7, + sym_integer, + sym_float, + sym_boolean, + sym_list, + sym_map, + sym_function, + sym_table, + [8071] = 2, + ACTIONS(526), 8, + ts_builtin_sym_end, anon_sym_LBRACE, anon_sym_RBRACE, - ACTIONS(482), 15, + aux_sym_comment_token1, + anon_sym_LPAREN, + aux_sym_float_token1, + sym_string, + anon_sym_LBRACK, + ACTIONS(528), 18, sym_identifier, + aux_sym_integer_token1, anon_sym_true, anon_sym_false, anon_sym_function, anon_sym_table, anon_sym_if, + anon_sym_match, anon_sym_while, anon_sym_for, anon_sym_transform, anon_sym_filter, anon_sym_find, anon_sym_remove, + anon_sym_reduce, anon_sym_select, anon_sym_insert, anon_sym_async, - [7717] = 2, - ACTIONS(484), 9, - ts_builtin_sym_end, - aux_sym_comment_token1, + [8102] = 13, + ACTIONS(9), 1, anon_sym_LPAREN, - sym__numeric, - anon_sym_DASH, + ACTIONS(11), 1, + aux_sym_integer_token1, + ACTIONS(13), 1, + aux_sym_float_token1, + ACTIONS(15), 1, sym_string, + ACTIONS(19), 1, anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_function, + ACTIONS(227), 1, + anon_sym_LBRACE, + ACTIONS(347), 1, + sym_identifier, + ACTIONS(490), 1, + anon_sym_table, + STATE(36), 1, + sym_expression, + ACTIONS(17), 2, + anon_sym_true, + anon_sym_false, + STATE(47), 7, + sym__expression_kind, + sym_value, + sym_index, + sym_math, + sym_logic, + sym_function_call, + sym_tool, + STATE(60), 7, + sym_integer, + sym_float, + sym_boolean, + sym_list, + sym_map, + sym_function, + sym_table, + [8155] = 2, + ACTIONS(530), 8, + ts_builtin_sym_end, anon_sym_LBRACE, anon_sym_RBRACE, - ACTIONS(486), 15, + aux_sym_comment_token1, + anon_sym_LPAREN, + aux_sym_float_token1, + sym_string, + anon_sym_LBRACK, + ACTIONS(532), 18, sym_identifier, + aux_sym_integer_token1, anon_sym_true, anon_sym_false, anon_sym_function, anon_sym_table, anon_sym_if, + anon_sym_match, anon_sym_while, anon_sym_for, anon_sym_transform, anon_sym_filter, anon_sym_find, anon_sym_remove, + anon_sym_reduce, anon_sym_select, anon_sym_insert, anon_sym_async, - [7746] = 2, - ACTIONS(488), 9, + [8186] = 2, + ACTIONS(534), 8, ts_builtin_sym_end, - aux_sym_comment_token1, - anon_sym_LPAREN, - sym__numeric, - anon_sym_DASH, - sym_string, - anon_sym_LBRACK, anon_sym_LBRACE, anon_sym_RBRACE, - ACTIONS(490), 15, + aux_sym_comment_token1, + anon_sym_LPAREN, + aux_sym_float_token1, + sym_string, + anon_sym_LBRACK, + ACTIONS(536), 18, sym_identifier, + aux_sym_integer_token1, anon_sym_true, anon_sym_false, anon_sym_function, anon_sym_table, anon_sym_if, + anon_sym_match, anon_sym_while, anon_sym_for, anon_sym_transform, anon_sym_filter, anon_sym_find, anon_sym_remove, + anon_sym_reduce, anon_sym_select, anon_sym_insert, anon_sym_async, - [7775] = 2, - ACTIONS(371), 9, + [8217] = 2, + ACTIONS(538), 8, ts_builtin_sym_end, - aux_sym_comment_token1, - anon_sym_LPAREN, - sym__numeric, - anon_sym_DASH, - sym_string, - anon_sym_LBRACK, anon_sym_LBRACE, anon_sym_RBRACE, - ACTIONS(373), 15, + aux_sym_comment_token1, + anon_sym_LPAREN, + aux_sym_float_token1, + sym_string, + anon_sym_LBRACK, + ACTIONS(540), 18, sym_identifier, + aux_sym_integer_token1, anon_sym_true, anon_sym_false, anon_sym_function, anon_sym_table, anon_sym_if, + anon_sym_match, anon_sym_while, anon_sym_for, anon_sym_transform, anon_sym_filter, anon_sym_find, anon_sym_remove, + anon_sym_reduce, anon_sym_select, anon_sym_insert, anon_sym_async, - [7804] = 2, - ACTIONS(492), 9, - ts_builtin_sym_end, - aux_sym_comment_token1, + [8248] = 13, + ACTIONS(128), 1, + anon_sym_LBRACE, + ACTIONS(130), 1, anon_sym_LPAREN, - sym__numeric, - anon_sym_DASH, + ACTIONS(132), 1, + aux_sym_integer_token1, + ACTIONS(134), 1, + aux_sym_float_token1, + ACTIONS(136), 1, sym_string, + ACTIONS(140), 1, anon_sym_LBRACK, + ACTIONS(142), 1, + anon_sym_function, + ACTIONS(144), 1, + anon_sym_table, + ACTIONS(440), 1, + sym_identifier, + STATE(186), 1, + sym_expression, + ACTIONS(138), 2, + anon_sym_true, + anon_sym_false, + STATE(160), 7, + sym__expression_kind, + sym_value, + sym_index, + sym_math, + sym_logic, + sym_function_call, + sym_tool, + STATE(162), 7, + sym_integer, + sym_float, + sym_boolean, + sym_list, + sym_map, + sym_function, + sym_table, + [8301] = 2, + ACTIONS(542), 8, + ts_builtin_sym_end, anon_sym_LBRACE, anon_sym_RBRACE, - ACTIONS(494), 15, + aux_sym_comment_token1, + anon_sym_LPAREN, + aux_sym_float_token1, + sym_string, + anon_sym_LBRACK, + ACTIONS(544), 18, sym_identifier, + aux_sym_integer_token1, anon_sym_true, anon_sym_false, anon_sym_function, anon_sym_table, anon_sym_if, + anon_sym_match, anon_sym_while, anon_sym_for, anon_sym_transform, anon_sym_filter, anon_sym_find, anon_sym_remove, + anon_sym_reduce, anon_sym_select, anon_sym_insert, anon_sym_async, - [7833] = 2, - ACTIONS(496), 9, + [8332] = 2, + ACTIONS(546), 8, ts_builtin_sym_end, - aux_sym_comment_token1, - anon_sym_LPAREN, - sym__numeric, - anon_sym_DASH, - sym_string, - anon_sym_LBRACK, anon_sym_LBRACE, anon_sym_RBRACE, - ACTIONS(498), 15, + aux_sym_comment_token1, + anon_sym_LPAREN, + aux_sym_float_token1, + sym_string, + anon_sym_LBRACK, + ACTIONS(548), 18, sym_identifier, + aux_sym_integer_token1, anon_sym_true, anon_sym_false, anon_sym_function, anon_sym_table, anon_sym_if, + anon_sym_match, anon_sym_while, anon_sym_for, anon_sym_transform, anon_sym_filter, anon_sym_find, anon_sym_remove, + anon_sym_reduce, anon_sym_select, anon_sym_insert, anon_sym_async, - [7862] = 2, - ACTIONS(500), 9, + [8363] = 2, + ACTIONS(550), 8, ts_builtin_sym_end, - aux_sym_comment_token1, - anon_sym_LPAREN, - sym__numeric, - anon_sym_DASH, - sym_string, - anon_sym_LBRACK, anon_sym_LBRACE, anon_sym_RBRACE, - ACTIONS(502), 15, + aux_sym_comment_token1, + anon_sym_LPAREN, + aux_sym_float_token1, + sym_string, + anon_sym_LBRACK, + ACTIONS(552), 18, sym_identifier, + aux_sym_integer_token1, anon_sym_true, anon_sym_false, anon_sym_function, anon_sym_table, anon_sym_if, + anon_sym_match, anon_sym_while, anon_sym_for, anon_sym_transform, anon_sym_filter, anon_sym_find, anon_sym_remove, + anon_sym_reduce, anon_sym_select, anon_sym_insert, anon_sym_async, - [7891] = 2, - ACTIONS(504), 9, - ts_builtin_sym_end, - aux_sym_comment_token1, + [8394] = 13, + ACTIONS(9), 1, anon_sym_LPAREN, - sym__numeric, - anon_sym_DASH, + ACTIONS(11), 1, + aux_sym_integer_token1, + ACTIONS(13), 1, + aux_sym_float_token1, + ACTIONS(15), 1, sym_string, + ACTIONS(19), 1, anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_function, + ACTIONS(23), 1, + anon_sym_table, + ACTIONS(227), 1, + anon_sym_LBRACE, + ACTIONS(347), 1, + sym_identifier, + STATE(62), 1, + sym_expression, + ACTIONS(17), 2, + anon_sym_true, + anon_sym_false, + STATE(47), 7, + sym__expression_kind, + sym_value, + sym_index, + sym_math, + sym_logic, + sym_function_call, + sym_tool, + STATE(60), 7, + sym_integer, + sym_float, + sym_boolean, + sym_list, + sym_map, + sym_function, + sym_table, + [8447] = 13, + ACTIONS(128), 1, + anon_sym_LBRACE, + ACTIONS(130), 1, + anon_sym_LPAREN, + ACTIONS(132), 1, + aux_sym_integer_token1, + ACTIONS(134), 1, + aux_sym_float_token1, + ACTIONS(136), 1, + sym_string, + ACTIONS(140), 1, + anon_sym_LBRACK, + ACTIONS(142), 1, + anon_sym_function, + ACTIONS(144), 1, + anon_sym_table, + ACTIONS(440), 1, + sym_identifier, + STATE(151), 1, + sym_expression, + ACTIONS(138), 2, + anon_sym_true, + anon_sym_false, + STATE(160), 7, + sym__expression_kind, + sym_value, + sym_index, + sym_math, + sym_logic, + sym_function_call, + sym_tool, + STATE(162), 7, + sym_integer, + sym_float, + sym_boolean, + sym_list, + sym_map, + sym_function, + sym_table, + [8500] = 13, + ACTIONS(9), 1, + anon_sym_LPAREN, + ACTIONS(11), 1, + aux_sym_integer_token1, + ACTIONS(13), 1, + aux_sym_float_token1, + ACTIONS(15), 1, + sym_string, + ACTIONS(19), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_function, + ACTIONS(23), 1, + anon_sym_table, + ACTIONS(227), 1, + anon_sym_LBRACE, + ACTIONS(347), 1, + sym_identifier, + STATE(42), 1, + sym_expression, + ACTIONS(17), 2, + anon_sym_true, + anon_sym_false, + STATE(47), 7, + sym__expression_kind, + sym_value, + sym_index, + sym_math, + sym_logic, + sym_function_call, + sym_tool, + STATE(60), 7, + sym_integer, + sym_float, + sym_boolean, + sym_list, + sym_map, + sym_function, + sym_table, + [8553] = 2, + ACTIONS(554), 8, + ts_builtin_sym_end, anon_sym_LBRACE, anon_sym_RBRACE, - ACTIONS(506), 15, + aux_sym_comment_token1, + anon_sym_LPAREN, + aux_sym_float_token1, + sym_string, + anon_sym_LBRACK, + ACTIONS(556), 18, sym_identifier, + aux_sym_integer_token1, anon_sym_true, anon_sym_false, anon_sym_function, anon_sym_table, anon_sym_if, + anon_sym_match, anon_sym_while, anon_sym_for, anon_sym_transform, anon_sym_filter, anon_sym_find, anon_sym_remove, + anon_sym_reduce, anon_sym_select, anon_sym_insert, anon_sym_async, - [7920] = 2, - ACTIONS(508), 9, - ts_builtin_sym_end, - aux_sym_comment_token1, + [8584] = 13, + ACTIONS(9), 1, anon_sym_LPAREN, - sym__numeric, - anon_sym_DASH, + ACTIONS(11), 1, + aux_sym_integer_token1, + ACTIONS(13), 1, + aux_sym_float_token1, + ACTIONS(15), 1, sym_string, + ACTIONS(19), 1, anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_function, + ACTIONS(23), 1, + anon_sym_table, + ACTIONS(227), 1, + anon_sym_LBRACE, + ACTIONS(347), 1, + sym_identifier, + STATE(41), 1, + sym_expression, + ACTIONS(17), 2, + anon_sym_true, + anon_sym_false, + STATE(47), 7, + sym__expression_kind, + sym_value, + sym_index, + sym_math, + sym_logic, + sym_function_call, + sym_tool, + STATE(60), 7, + sym_integer, + sym_float, + sym_boolean, + sym_list, + sym_map, + sym_function, + sym_table, + [8637] = 13, + ACTIONS(128), 1, + anon_sym_LBRACE, + ACTIONS(130), 1, + anon_sym_LPAREN, + ACTIONS(132), 1, + aux_sym_integer_token1, + ACTIONS(134), 1, + aux_sym_float_token1, + ACTIONS(136), 1, + sym_string, + ACTIONS(140), 1, + anon_sym_LBRACK, + ACTIONS(142), 1, + anon_sym_function, + ACTIONS(144), 1, + anon_sym_table, + ACTIONS(440), 1, + sym_identifier, + STATE(184), 1, + sym_expression, + ACTIONS(138), 2, + anon_sym_true, + anon_sym_false, + STATE(160), 7, + sym__expression_kind, + sym_value, + sym_index, + sym_math, + sym_logic, + sym_function_call, + sym_tool, + STATE(162), 7, + sym_integer, + sym_float, + sym_boolean, + sym_list, + sym_map, + sym_function, + sym_table, + [8690] = 2, + ACTIONS(375), 8, + ts_builtin_sym_end, anon_sym_LBRACE, anon_sym_RBRACE, - ACTIONS(510), 15, + aux_sym_comment_token1, + anon_sym_LPAREN, + aux_sym_float_token1, + sym_string, + anon_sym_LBRACK, + ACTIONS(377), 18, sym_identifier, + aux_sym_integer_token1, anon_sym_true, anon_sym_false, anon_sym_function, anon_sym_table, anon_sym_if, + anon_sym_match, anon_sym_while, anon_sym_for, anon_sym_transform, anon_sym_filter, anon_sym_find, anon_sym_remove, + anon_sym_reduce, anon_sym_select, anon_sym_insert, anon_sym_async, - [7949] = 2, - ACTIONS(355), 9, - ts_builtin_sym_end, - aux_sym_comment_token1, + [8721] = 13, + ACTIONS(128), 1, + anon_sym_LBRACE, + ACTIONS(130), 1, anon_sym_LPAREN, - sym__numeric, - anon_sym_DASH, + ACTIONS(132), 1, + aux_sym_integer_token1, + ACTIONS(134), 1, + aux_sym_float_token1, + ACTIONS(136), 1, sym_string, + ACTIONS(140), 1, anon_sym_LBRACK, + ACTIONS(142), 1, + anon_sym_function, + ACTIONS(144), 1, + anon_sym_table, + ACTIONS(440), 1, + sym_identifier, + STATE(187), 1, + sym_expression, + ACTIONS(138), 2, + anon_sym_true, + anon_sym_false, + STATE(160), 7, + sym__expression_kind, + sym_value, + sym_index, + sym_math, + sym_logic, + sym_function_call, + sym_tool, + STATE(162), 7, + sym_integer, + sym_float, + sym_boolean, + sym_list, + sym_map, + sym_function, + sym_table, + [8774] = 13, + ACTIONS(128), 1, + anon_sym_LBRACE, + ACTIONS(130), 1, + anon_sym_LPAREN, + ACTIONS(132), 1, + aux_sym_integer_token1, + ACTIONS(134), 1, + aux_sym_float_token1, + ACTIONS(136), 1, + sym_string, + ACTIONS(140), 1, + anon_sym_LBRACK, + ACTIONS(142), 1, + anon_sym_function, + ACTIONS(144), 1, + anon_sym_table, + ACTIONS(440), 1, + sym_identifier, + STATE(174), 1, + sym_expression, + ACTIONS(138), 2, + anon_sym_true, + anon_sym_false, + STATE(160), 7, + sym__expression_kind, + sym_value, + sym_index, + sym_math, + sym_logic, + sym_function_call, + sym_tool, + STATE(162), 7, + sym_integer, + sym_float, + sym_boolean, + sym_list, + sym_map, + sym_function, + sym_table, + [8827] = 13, + ACTIONS(9), 1, + anon_sym_LPAREN, + ACTIONS(11), 1, + aux_sym_integer_token1, + ACTIONS(13), 1, + aux_sym_float_token1, + ACTIONS(15), 1, + sym_string, + ACTIONS(19), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_function, + ACTIONS(23), 1, + anon_sym_table, + ACTIONS(227), 1, + anon_sym_LBRACE, + ACTIONS(347), 1, + sym_identifier, + STATE(43), 1, + sym_expression, + ACTIONS(17), 2, + anon_sym_true, + anon_sym_false, + STATE(47), 7, + sym__expression_kind, + sym_value, + sym_index, + sym_math, + sym_logic, + sym_function_call, + sym_tool, + STATE(60), 7, + sym_integer, + sym_float, + sym_boolean, + sym_list, + sym_map, + sym_function, + sym_table, + [8880] = 13, + ACTIONS(128), 1, + anon_sym_LBRACE, + ACTIONS(130), 1, + anon_sym_LPAREN, + ACTIONS(132), 1, + aux_sym_integer_token1, + ACTIONS(134), 1, + aux_sym_float_token1, + ACTIONS(136), 1, + sym_string, + ACTIONS(140), 1, + anon_sym_LBRACK, + ACTIONS(142), 1, + anon_sym_function, + ACTIONS(144), 1, + anon_sym_table, + ACTIONS(440), 1, + sym_identifier, + STATE(172), 1, + sym_expression, + ACTIONS(138), 2, + anon_sym_true, + anon_sym_false, + STATE(160), 7, + sym__expression_kind, + sym_value, + sym_index, + sym_math, + sym_logic, + sym_function_call, + sym_tool, + STATE(162), 7, + sym_integer, + sym_float, + sym_boolean, + sym_list, + sym_map, + sym_function, + sym_table, + [8933] = 13, + ACTIONS(128), 1, + anon_sym_LBRACE, + ACTIONS(130), 1, + anon_sym_LPAREN, + ACTIONS(132), 1, + aux_sym_integer_token1, + ACTIONS(134), 1, + aux_sym_float_token1, + ACTIONS(136), 1, + sym_string, + ACTIONS(140), 1, + anon_sym_LBRACK, + ACTIONS(142), 1, + anon_sym_function, + ACTIONS(440), 1, + sym_identifier, + ACTIONS(488), 1, + anon_sym_table, + STATE(147), 1, + sym_expression, + ACTIONS(138), 2, + anon_sym_true, + anon_sym_false, + STATE(160), 7, + sym__expression_kind, + sym_value, + sym_index, + sym_math, + sym_logic, + sym_function_call, + sym_tool, + STATE(162), 7, + sym_integer, + sym_float, + sym_boolean, + sym_list, + sym_map, + sym_function, + sym_table, + [8986] = 2, + ACTIONS(558), 8, + ts_builtin_sym_end, anon_sym_LBRACE, anon_sym_RBRACE, - ACTIONS(357), 15, - sym_identifier, - anon_sym_true, - anon_sym_false, - anon_sym_function, - anon_sym_table, - anon_sym_if, - anon_sym_while, - anon_sym_for, - anon_sym_transform, - anon_sym_filter, - anon_sym_find, - anon_sym_remove, - anon_sym_select, - anon_sym_insert, - anon_sym_async, - [7978] = 2, - ACTIONS(514), 7, aux_sym_comment_token1, anon_sym_LPAREN, - sym__numeric, - anon_sym_DASH, + aux_sym_float_token1, sym_string, anon_sym_LBRACK, - anon_sym_LBRACE, - ACTIONS(512), 15, + ACTIONS(560), 18, sym_identifier, + aux_sym_integer_token1, anon_sym_true, anon_sym_false, anon_sym_function, anon_sym_table, anon_sym_if, + anon_sym_match, anon_sym_while, anon_sym_for, anon_sym_transform, anon_sym_filter, anon_sym_find, anon_sym_remove, + anon_sym_reduce, anon_sym_select, anon_sym_insert, anon_sym_async, - [8005] = 4, - STATE(84), 1, + [9017] = 13, + ACTIONS(128), 1, + anon_sym_LBRACE, + ACTIONS(130), 1, + anon_sym_LPAREN, + ACTIONS(132), 1, + aux_sym_integer_token1, + ACTIONS(134), 1, + aux_sym_float_token1, + ACTIONS(136), 1, + sym_string, + ACTIONS(140), 1, + anon_sym_LBRACK, + ACTIONS(142), 1, + anon_sym_function, + ACTIONS(144), 1, + anon_sym_table, + ACTIONS(440), 1, + sym_identifier, + STATE(182), 1, + sym_expression, + ACTIONS(138), 2, + anon_sym_true, + anon_sym_false, + STATE(160), 7, + sym__expression_kind, + sym_value, + sym_index, + sym_math, + sym_logic, + sym_function_call, + sym_tool, + STATE(162), 7, + sym_integer, + sym_float, + sym_boolean, + sym_list, + sym_map, + sym_function, + sym_table, + [9070] = 2, + ACTIONS(562), 8, + ts_builtin_sym_end, + anon_sym_LBRACE, + anon_sym_RBRACE, + aux_sym_comment_token1, + anon_sym_LPAREN, + aux_sym_float_token1, + sym_string, + anon_sym_LBRACK, + ACTIONS(564), 18, + sym_identifier, + aux_sym_integer_token1, + anon_sym_true, + anon_sym_false, + anon_sym_function, + anon_sym_table, + anon_sym_if, + anon_sym_match, + anon_sym_while, + anon_sym_for, + anon_sym_transform, + anon_sym_filter, + anon_sym_find, + anon_sym_remove, + anon_sym_reduce, + anon_sym_select, + anon_sym_insert, + anon_sym_async, + [9101] = 2, + ACTIONS(568), 6, + anon_sym_LBRACE, + aux_sym_comment_token1, + anon_sym_LPAREN, + aux_sym_float_token1, + sym_string, + anon_sym_LBRACK, + ACTIONS(566), 18, + sym_identifier, + aux_sym_integer_token1, + anon_sym_true, + anon_sym_false, + anon_sym_function, + anon_sym_table, + anon_sym_if, + anon_sym_match, + anon_sym_while, + anon_sym_for, + anon_sym_transform, + anon_sym_filter, + anon_sym_find, + anon_sym_remove, + anon_sym_reduce, + anon_sym_select, + anon_sym_insert, + anon_sym_async, + [9130] = 5, + ACTIONS(570), 1, + anon_sym_DOT_DOT, + STATE(89), 1, sym_math_operator, - STATE(96), 1, + STATE(103), 1, sym_logic_operator, - ACTIONS(233), 2, + ACTIONS(237), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(231), 17, - anon_sym_RPAREN, - sym_identifier, + ACTIONS(235), 17, anon_sym_LBRACE, anon_sym_RBRACE, + anon_sym_RPAREN, + sym_identifier, + anon_sym_COLON, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_EQ_GT, + [9163] = 4, + STATE(89), 1, + sym_math_operator, + STATE(103), 1, + sym_logic_operator, + ACTIONS(237), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(235), 18, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_RPAREN, + sym_identifier, anon_sym_COLON, anon_sym_DOT_DOT, anon_sym_PLUS, - anon_sym_DASH2, + anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, @@ -9134,52 +10115,24 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - [8035] = 7, - ACTIONS(516), 1, - anon_sym_COLON, - STATE(84), 1, + anon_sym_EQ_GT, + [9194] = 4, + STATE(89), 1, sym_math_operator, - STATE(96), 1, + STATE(103), 1, sym_logic_operator, - ACTIONS(241), 2, + ACTIONS(265), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(235), 5, - anon_sym_RPAREN, - sym_identifier, + ACTIONS(263), 18, anon_sym_LBRACE, anon_sym_RBRACE, - anon_sym_DOT_DOT, - ACTIONS(243), 5, - anon_sym_PLUS, - anon_sym_DASH2, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(247), 6, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - [8071] = 4, - STATE(84), 1, - sym_math_operator, - STATE(96), 1, - sym_logic_operator, - ACTIONS(219), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(217), 17, anon_sym_RPAREN, sym_identifier, - anon_sym_LBRACE, - anon_sym_RBRACE, anon_sym_COLON, anon_sym_DOT_DOT, anon_sym_PLUS, - anon_sym_DASH2, + anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, @@ -9189,23 +10142,24 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - [8101] = 4, - STATE(84), 1, + anon_sym_EQ_GT, + [9225] = 4, + STATE(89), 1, sym_math_operator, - STATE(96), 1, + STATE(103), 1, sym_logic_operator, - ACTIONS(229), 2, + ACTIONS(243), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(227), 17, - anon_sym_RPAREN, - sym_identifier, + ACTIONS(241), 18, anon_sym_LBRACE, anon_sym_RBRACE, + anon_sym_RPAREN, + sym_identifier, anon_sym_COLON, anon_sym_DOT_DOT, anon_sym_PLUS, - anon_sym_DASH2, + anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, @@ -9215,50 +10169,24 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - [8131] = 5, - ACTIONS(518), 1, - anon_sym_DOT_DOT, - STATE(84), 1, + anon_sym_EQ_GT, + [9256] = 4, + STATE(89), 1, sym_math_operator, - STATE(96), 1, + STATE(103), 1, sym_logic_operator, - ACTIONS(223), 2, + ACTIONS(261), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(221), 16, - anon_sym_RPAREN, - sym_identifier, + ACTIONS(259), 18, anon_sym_LBRACE, anon_sym_RBRACE, - anon_sym_COLON, - anon_sym_PLUS, - anon_sym_DASH2, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - [8163] = 4, - STATE(84), 1, - sym_math_operator, - STATE(96), 1, - sym_logic_operator, - ACTIONS(223), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(221), 17, anon_sym_RPAREN, sym_identifier, - anon_sym_LBRACE, - anon_sym_RBRACE, anon_sym_COLON, anon_sym_DOT_DOT, anon_sym_PLUS, - anon_sym_DASH2, + anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, @@ -9268,148 +10196,79 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - [8193] = 4, - STATE(90), 1, - sym_math_operator, - STATE(92), 1, - sym_logic_operator, - ACTIONS(219), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(217), 16, - anon_sym_RPAREN, - sym_identifier, - anon_sym_LBRACE, - anon_sym_RBRACE, + anon_sym_EQ_GT, + [9287] = 7, + ACTIONS(572), 1, anon_sym_COLON, - anon_sym_PLUS, - anon_sym_DASH2, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - [8222] = 7, - ACTIONS(520), 1, - anon_sym_COLON, - STATE(90), 1, + STATE(89), 1, sym_math_operator, - STATE(92), 1, + STATE(103), 1, sym_logic_operator, - ACTIONS(241), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(235), 4, - anon_sym_RPAREN, - sym_identifier, - anon_sym_LBRACE, - anon_sym_RBRACE, - ACTIONS(243), 5, - anon_sym_PLUS, - anon_sym_DASH2, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(247), 6, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - [8257] = 3, - ACTIONS(522), 1, - anon_sym_DOT, ACTIONS(251), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(249), 17, - anon_sym_RPAREN, - sym_identifier, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_COLON, - anon_sym_DOT_DOT, + ACTIONS(253), 5, anon_sym_PLUS, - anon_sym_DASH2, + anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, + ACTIONS(245), 6, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_RPAREN, + sym_identifier, + anon_sym_DOT_DOT, + anon_sym_EQ_GT, + ACTIONS(257), 6, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - [8284] = 3, - ACTIONS(524), 1, - anon_sym_DOT, - ACTIONS(259), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(257), 17, - anon_sym_RPAREN, - sym_identifier, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_COLON, - anon_sym_DOT_DOT, - anon_sym_PLUS, - anon_sym_DASH2, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - [8311] = 4, - STATE(90), 1, - sym_math_operator, - STATE(92), 1, + [9324] = 4, + STATE(96), 1, sym_logic_operator, - ACTIONS(233), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(231), 16, - anon_sym_RPAREN, - sym_identifier, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_COLON, - anon_sym_PLUS, - anon_sym_DASH2, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - [8340] = 4, - STATE(90), 1, + STATE(97), 1, sym_math_operator, - STATE(92), 1, + ACTIONS(243), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(241), 17, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_RPAREN, + sym_identifier, + anon_sym_COLON, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_EQ_GT, + [9354] = 4, + STATE(96), 1, sym_logic_operator, - ACTIONS(229), 2, + STATE(97), 1, + sym_math_operator, + ACTIONS(265), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(227), 16, - anon_sym_RPAREN, - sym_identifier, + ACTIONS(263), 17, anon_sym_LBRACE, anon_sym_RBRACE, + anon_sym_RPAREN, + sym_identifier, anon_sym_COLON, anon_sym_PLUS, - anon_sym_DASH2, + anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, @@ -9419,19 +10278,75 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - [8369] = 2, - ACTIONS(313), 2, + anon_sym_EQ_GT, + [9384] = 7, + ACTIONS(574), 1, + anon_sym_COLON, + STATE(96), 1, + sym_logic_operator, + STATE(97), 1, + sym_math_operator, + ACTIONS(251), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(311), 17, - anon_sym_RPAREN, - sym_identifier, + ACTIONS(245), 5, anon_sym_LBRACE, anon_sym_RBRACE, + anon_sym_RPAREN, + sym_identifier, + anon_sym_EQ_GT, + ACTIONS(253), 5, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(257), 6, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + [9420] = 4, + STATE(96), 1, + sym_logic_operator, + STATE(97), 1, + sym_math_operator, + ACTIONS(261), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(259), 17, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_RPAREN, + sym_identifier, + anon_sym_COLON, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_EQ_GT, + [9450] = 2, + ACTIONS(307), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(305), 18, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_RPAREN, + sym_identifier, anon_sym_COLON, anon_sym_DOT_DOT, anon_sym_PLUS, - anon_sym_DASH2, + anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, @@ -9441,19 +10356,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - [8393] = 2, - ACTIONS(273), 2, + anon_sym_EQ_GT, + [9475] = 2, + ACTIONS(283), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(271), 17, - anon_sym_RPAREN, - sym_identifier, + ACTIONS(281), 18, anon_sym_LBRACE, anon_sym_RBRACE, + anon_sym_RPAREN, + sym_identifier, anon_sym_COLON, anon_sym_DOT_DOT, anon_sym_PLUS, - anon_sym_DASH2, + anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, @@ -9463,19 +10379,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - [8417] = 2, - ACTIONS(281), 2, + anon_sym_EQ_GT, + [9500] = 2, + ACTIONS(295), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(279), 17, - anon_sym_RPAREN, - sym_identifier, + ACTIONS(293), 18, anon_sym_LBRACE, anon_sym_RBRACE, + anon_sym_RPAREN, + sym_identifier, anon_sym_COLON, anon_sym_DOT_DOT, anon_sym_PLUS, - anon_sym_DASH2, + anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, @@ -9485,19 +10402,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - [8441] = 2, - ACTIONS(333), 2, + anon_sym_EQ_GT, + [9525] = 2, + ACTIONS(271), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(331), 17, - anon_sym_RPAREN, - sym_identifier, + ACTIONS(269), 18, anon_sym_LBRACE, anon_sym_RBRACE, + anon_sym_RPAREN, + sym_identifier, anon_sym_COLON, anon_sym_DOT_DOT, anon_sym_PLUS, - anon_sym_DASH2, + anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, @@ -9507,19 +10425,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - [8465] = 2, - ACTIONS(337), 2, + anon_sym_EQ_GT, + [9550] = 2, + ACTIONS(287), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(335), 17, - anon_sym_RPAREN, - sym_identifier, + ACTIONS(285), 18, anon_sym_LBRACE, anon_sym_RBRACE, + anon_sym_RPAREN, + sym_identifier, anon_sym_COLON, anon_sym_DOT_DOT, anon_sym_PLUS, - anon_sym_DASH2, + anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, @@ -9529,19 +10448,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - [8489] = 2, - ACTIONS(305), 2, + anon_sym_EQ_GT, + [9575] = 2, + ACTIONS(275), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(303), 17, - anon_sym_RPAREN, - sym_identifier, + ACTIONS(273), 18, anon_sym_LBRACE, anon_sym_RBRACE, + anon_sym_RPAREN, + sym_identifier, anon_sym_COLON, anon_sym_DOT_DOT, anon_sym_PLUS, - anon_sym_DASH2, + anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, @@ -9551,19 +10471,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - [8513] = 2, - ACTIONS(317), 2, + anon_sym_EQ_GT, + [9600] = 2, + ACTIONS(279), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(315), 17, - anon_sym_RPAREN, - sym_identifier, + ACTIONS(277), 18, anon_sym_LBRACE, anon_sym_RBRACE, + anon_sym_RPAREN, + sym_identifier, anon_sym_COLON, anon_sym_DOT_DOT, anon_sym_PLUS, - anon_sym_DASH2, + anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, @@ -9573,19 +10494,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - [8537] = 2, - ACTIONS(301), 2, + anon_sym_EQ_GT, + [9625] = 2, + ACTIONS(331), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(299), 17, - anon_sym_RPAREN, - sym_identifier, + ACTIONS(329), 18, anon_sym_LBRACE, anon_sym_RBRACE, + anon_sym_RPAREN, + sym_identifier, anon_sym_COLON, anon_sym_DOT_DOT, anon_sym_PLUS, - anon_sym_DASH2, + anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, @@ -9595,19 +10517,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - [8561] = 2, - ACTIONS(321), 2, + anon_sym_EQ_GT, + [9650] = 2, + ACTIONS(335), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(319), 17, - anon_sym_RPAREN, - sym_identifier, + ACTIONS(333), 18, anon_sym_LBRACE, anon_sym_RBRACE, + anon_sym_RPAREN, + sym_identifier, anon_sym_COLON, anon_sym_DOT_DOT, anon_sym_PLUS, - anon_sym_DASH2, + anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, @@ -9617,19 +10540,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - [8585] = 2, - ACTIONS(277), 2, + anon_sym_EQ_GT, + [9675] = 2, + ACTIONS(339), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(275), 17, - anon_sym_RPAREN, - sym_identifier, + ACTIONS(337), 18, anon_sym_LBRACE, anon_sym_RBRACE, + anon_sym_RPAREN, + sym_identifier, anon_sym_COLON, anon_sym_DOT_DOT, anon_sym_PLUS, - anon_sym_DASH2, + anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, @@ -9639,19 +10563,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - [8609] = 2, - ACTIONS(309), 2, + anon_sym_EQ_GT, + [9700] = 2, + ACTIONS(319), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(307), 17, - anon_sym_RPAREN, - sym_identifier, + ACTIONS(317), 18, anon_sym_LBRACE, anon_sym_RBRACE, + anon_sym_RPAREN, + sym_identifier, anon_sym_COLON, anon_sym_DOT_DOT, anon_sym_PLUS, - anon_sym_DASH2, + anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, @@ -9661,19 +10586,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - [8633] = 2, - ACTIONS(289), 2, + anon_sym_EQ_GT, + [9725] = 2, + ACTIONS(323), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(287), 17, - anon_sym_RPAREN, - sym_identifier, + ACTIONS(321), 18, anon_sym_LBRACE, anon_sym_RBRACE, + anon_sym_RPAREN, + sym_identifier, anon_sym_COLON, anon_sym_DOT_DOT, anon_sym_PLUS, - anon_sym_DASH2, + anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, @@ -9683,19 +10609,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - [8657] = 2, - ACTIONS(293), 2, + anon_sym_EQ_GT, + [9750] = 2, + ACTIONS(315), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(291), 17, - anon_sym_RPAREN, - sym_identifier, + ACTIONS(313), 18, anon_sym_LBRACE, anon_sym_RBRACE, + anon_sym_RPAREN, + sym_identifier, anon_sym_COLON, anon_sym_DOT_DOT, anon_sym_PLUS, - anon_sym_DASH2, + anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, @@ -9705,19 +10632,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - [8681] = 2, - ACTIONS(325), 2, + anon_sym_EQ_GT, + [9775] = 2, + ACTIONS(291), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(323), 17, - anon_sym_RPAREN, - sym_identifier, + ACTIONS(289), 18, anon_sym_LBRACE, anon_sym_RBRACE, + anon_sym_RPAREN, + sym_identifier, anon_sym_COLON, anon_sym_DOT_DOT, anon_sym_PLUS, - anon_sym_DASH2, + anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, @@ -9727,19 +10655,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - [8705] = 2, - ACTIONS(341), 2, + anon_sym_EQ_GT, + [9800] = 2, + ACTIONS(327), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(339), 17, - anon_sym_RPAREN, - sym_identifier, + ACTIONS(325), 18, anon_sym_LBRACE, anon_sym_RBRACE, + anon_sym_RPAREN, + sym_identifier, anon_sym_COLON, anon_sym_DOT_DOT, anon_sym_PLUS, - anon_sym_DASH2, + anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, @@ -9749,19 +10678,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - [8729] = 2, - ACTIONS(329), 2, + anon_sym_EQ_GT, + [9825] = 2, + ACTIONS(311), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(327), 17, - anon_sym_RPAREN, - sym_identifier, + ACTIONS(309), 18, anon_sym_LBRACE, anon_sym_RBRACE, + anon_sym_RPAREN, + sym_identifier, anon_sym_COLON, anon_sym_DOT_DOT, anon_sym_PLUS, - anon_sym_DASH2, + anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, @@ -9771,42 +10701,21 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - [8753] = 2, - ACTIONS(297), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(295), 17, - anon_sym_RPAREN, - sym_identifier, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_COLON, - anon_sym_DOT_DOT, - anon_sym_PLUS, - anon_sym_DASH2, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - [8777] = 5, - ACTIONS(283), 1, + anon_sym_EQ_GT, + [9850] = 5, + ACTIONS(301), 1, anon_sym_EQ, - STATE(29), 1, + STATE(21), 1, sym_assignment_operator, - ACTIONS(285), 2, + ACTIONS(303), 2, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, - ACTIONS(269), 4, + ACTIONS(299), 4, anon_sym_LT, anon_sym_GT, anon_sym_PLUS, - anon_sym_DASH2, - ACTIONS(267), 11, + anon_sym_DASH, + ACTIONS(297), 11, anon_sym_RBRACE, anon_sym_COLON, anon_sym_STAR, @@ -9818,1375 +10727,1527 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - [8807] = 7, - ACTIONS(520), 1, - anon_sym_COLON, - STATE(90), 1, - sym_math_operator, - STATE(92), 1, - sym_logic_operator, - ACTIONS(241), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(526), 2, - sym_identifier, + [9880] = 8, + ACTIONS(341), 1, anon_sym_RBRACE, - ACTIONS(243), 5, - anon_sym_PLUS, - anon_sym_DASH2, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(247), 6, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - [8840] = 8, - ACTIONS(359), 1, - anon_sym_RBRACE, - ACTIONS(363), 1, - anon_sym_LBRACE, - ACTIONS(520), 1, - anon_sym_COLON, - STATE(90), 1, - sym_math_operator, - STATE(92), 1, - sym_logic_operator, - ACTIONS(241), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(243), 5, - anon_sym_PLUS, - anon_sym_DASH2, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(247), 6, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - [8875] = 8, - ACTIONS(349), 1, - anon_sym_RBRACE, - ACTIONS(353), 1, - anon_sym_LBRACE, - ACTIONS(520), 1, - anon_sym_COLON, - STATE(90), 1, - sym_math_operator, - STATE(92), 1, - sym_logic_operator, - ACTIONS(241), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(243), 5, - anon_sym_PLUS, - anon_sym_DASH2, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(247), 6, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - [8910] = 7, - ACTIONS(520), 1, - anon_sym_COLON, - ACTIONS(528), 1, - anon_sym_LBRACE, - STATE(90), 1, - sym_math_operator, - STATE(92), 1, - sym_logic_operator, - ACTIONS(241), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(243), 5, - anon_sym_PLUS, - anon_sym_DASH2, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(247), 6, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - [8942] = 7, - ACTIONS(520), 1, - anon_sym_COLON, - ACTIONS(530), 1, - anon_sym_LBRACE, - STATE(90), 1, - sym_math_operator, - STATE(92), 1, - sym_logic_operator, - ACTIONS(241), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(243), 5, - anon_sym_PLUS, - anon_sym_DASH2, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(247), 6, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - [8974] = 7, - ACTIONS(520), 1, - anon_sym_COLON, - ACTIONS(532), 1, - anon_sym_LBRACE, - STATE(90), 1, - sym_math_operator, - STATE(92), 1, - sym_logic_operator, - ACTIONS(241), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(243), 5, - anon_sym_PLUS, - anon_sym_DASH2, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(247), 6, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - [9006] = 7, - ACTIONS(520), 1, - anon_sym_COLON, - ACTIONS(534), 1, - anon_sym_LBRACE, - STATE(90), 1, - sym_math_operator, - STATE(92), 1, - sym_logic_operator, - ACTIONS(241), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(243), 5, - anon_sym_PLUS, - anon_sym_DASH2, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(247), 6, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - [9038] = 7, - ACTIONS(520), 1, - anon_sym_COLON, - ACTIONS(536), 1, - anon_sym_LBRACE, - STATE(90), 1, - sym_math_operator, - STATE(92), 1, - sym_logic_operator, - ACTIONS(241), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(243), 5, - anon_sym_PLUS, - anon_sym_DASH2, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(247), 6, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - [9070] = 7, - ACTIONS(355), 1, - anon_sym_RBRACE, - ACTIONS(520), 1, - anon_sym_COLON, - STATE(90), 1, - sym_math_operator, - STATE(92), 1, - sym_logic_operator, - ACTIONS(241), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(243), 5, - anon_sym_PLUS, - anon_sym_DASH2, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(247), 6, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - [9102] = 7, - ACTIONS(520), 1, - anon_sym_COLON, - ACTIONS(538), 1, - anon_sym_LBRACE, - STATE(90), 1, - sym_math_operator, - STATE(92), 1, - sym_logic_operator, - ACTIONS(241), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(243), 5, - anon_sym_PLUS, - anon_sym_DASH2, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(247), 6, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - [9134] = 7, - ACTIONS(520), 1, - anon_sym_COLON, - ACTIONS(540), 1, - anon_sym_LBRACE, - STATE(90), 1, - sym_math_operator, - STATE(92), 1, - sym_logic_operator, - ACTIONS(241), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(243), 5, - anon_sym_PLUS, - anon_sym_DASH2, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(247), 6, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - [9166] = 7, ACTIONS(345), 1, - anon_sym_RBRACE, - ACTIONS(520), 1, - anon_sym_COLON, - STATE(90), 1, - sym_math_operator, - STATE(92), 1, - sym_logic_operator, - ACTIONS(241), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(243), 5, - anon_sym_PLUS, - anon_sym_DASH2, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(247), 6, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - [9198] = 7, - ACTIONS(520), 1, - anon_sym_COLON, - ACTIONS(542), 1, anon_sym_LBRACE, - STATE(90), 1, - sym_math_operator, - STATE(92), 1, + ACTIONS(574), 1, + anon_sym_COLON, + STATE(96), 1, sym_logic_operator, - ACTIONS(241), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(243), 5, - anon_sym_PLUS, - anon_sym_DASH2, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(247), 6, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - [9230] = 6, - ACTIONS(520), 1, - anon_sym_COLON, - STATE(90), 1, + STATE(97), 1, sym_math_operator, - STATE(92), 1, + ACTIONS(251), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(253), 5, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(257), 6, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + [9915] = 8, + ACTIONS(357), 1, + anon_sym_RBRACE, + ACTIONS(361), 1, + anon_sym_LBRACE, + ACTIONS(574), 1, + anon_sym_COLON, + STATE(96), 1, sym_logic_operator, - ACTIONS(241), 2, + STATE(97), 1, + sym_math_operator, + ACTIONS(251), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(243), 5, + ACTIONS(253), 5, anon_sym_PLUS, - anon_sym_DASH2, + anon_sym_DASH, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, - ACTIONS(247), 6, + ACTIONS(257), 6, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - [9259] = 3, - ACTIONS(544), 1, - anon_sym_RPAREN, - ACTIONS(293), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(291), 12, + [9950] = 7, + ACTIONS(574), 1, anon_sym_COLON, - anon_sym_PLUS, - anon_sym_DASH2, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - [9281] = 3, - ACTIONS(546), 1, - anon_sym_RPAREN, - ACTIONS(293), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(291), 12, - anon_sym_COLON, - anon_sym_PLUS, - anon_sym_DASH2, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - [9303] = 2, - ACTIONS(548), 5, + ACTIONS(576), 1, sym_identifier, + STATE(96), 1, + sym_logic_operator, + STATE(97), 1, + sym_math_operator, + ACTIONS(251), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(253), 5, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(257), 6, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + [9982] = 7, + ACTIONS(574), 1, + anon_sym_COLON, + ACTIONS(578), 1, + anon_sym_LBRACE, + STATE(96), 1, + sym_logic_operator, + STATE(97), 1, + sym_math_operator, + ACTIONS(251), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(253), 5, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(257), 6, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + [10014] = 7, + ACTIONS(574), 1, + anon_sym_COLON, + ACTIONS(580), 1, + anon_sym_LBRACE, + STATE(96), 1, + sym_logic_operator, + STATE(97), 1, + sym_math_operator, + ACTIONS(251), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(253), 5, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(257), 6, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + [10046] = 7, + ACTIONS(574), 1, + anon_sym_COLON, + ACTIONS(582), 1, + anon_sym_LBRACE, + STATE(96), 1, + sym_logic_operator, + STATE(97), 1, + sym_math_operator, + ACTIONS(251), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(253), 5, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(257), 6, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + [10078] = 7, + ACTIONS(574), 1, + anon_sym_COLON, + ACTIONS(584), 1, + anon_sym_EQ_GT, + STATE(96), 1, + sym_logic_operator, + STATE(97), 1, + sym_math_operator, + ACTIONS(251), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(253), 5, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(257), 6, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + [10110] = 7, + ACTIONS(574), 1, + anon_sym_COLON, + ACTIONS(586), 1, + anon_sym_LBRACE, + STATE(96), 1, + sym_logic_operator, + STATE(97), 1, + sym_math_operator, + ACTIONS(251), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(253), 5, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(257), 6, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + [10142] = 7, + ACTIONS(363), 1, + anon_sym_RBRACE, + ACTIONS(574), 1, + anon_sym_COLON, + STATE(96), 1, + sym_logic_operator, + STATE(97), 1, + sym_math_operator, + ACTIONS(251), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(253), 5, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(257), 6, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + [10174] = 7, + ACTIONS(574), 1, + anon_sym_COLON, + ACTIONS(588), 1, + anon_sym_LBRACE, + STATE(96), 1, + sym_logic_operator, + STATE(97), 1, + sym_math_operator, + ACTIONS(251), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(253), 5, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(257), 6, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + [10206] = 7, + ACTIONS(574), 1, + anon_sym_COLON, + ACTIONS(590), 1, + anon_sym_LBRACE, + STATE(96), 1, + sym_logic_operator, + STATE(97), 1, + sym_math_operator, + ACTIONS(251), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(253), 5, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(257), 6, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + [10238] = 7, + ACTIONS(574), 1, + anon_sym_COLON, + ACTIONS(592), 1, + anon_sym_LBRACE, + STATE(96), 1, + sym_logic_operator, + STATE(97), 1, + sym_math_operator, + ACTIONS(251), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(253), 5, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(257), 6, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + [10270] = 7, + ACTIONS(574), 1, + anon_sym_COLON, + ACTIONS(594), 1, + anon_sym_LBRACE, + STATE(96), 1, + sym_logic_operator, + STATE(97), 1, + sym_math_operator, + ACTIONS(251), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(253), 5, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(257), 6, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + [10302] = 7, + ACTIONS(574), 1, + anon_sym_COLON, + ACTIONS(596), 1, + anon_sym_LBRACE, + STATE(96), 1, + sym_logic_operator, + STATE(97), 1, + sym_math_operator, + ACTIONS(251), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(253), 5, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(257), 6, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + [10334] = 7, + ACTIONS(353), 1, + anon_sym_RBRACE, + ACTIONS(574), 1, + anon_sym_COLON, + STATE(96), 1, + sym_logic_operator, + STATE(97), 1, + sym_math_operator, + ACTIONS(251), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(253), 5, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(257), 6, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + [10366] = 7, + ACTIONS(574), 1, + anon_sym_COLON, + ACTIONS(598), 1, + anon_sym_LBRACE, + STATE(96), 1, + sym_logic_operator, + STATE(97), 1, + sym_math_operator, + ACTIONS(251), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(253), 5, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(257), 6, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + [10398] = 7, + ACTIONS(574), 1, + anon_sym_COLON, + ACTIONS(600), 1, + anon_sym_LBRACE, + STATE(96), 1, + sym_logic_operator, + STATE(97), 1, + sym_math_operator, + ACTIONS(251), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(253), 5, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(257), 6, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + [10430] = 6, + ACTIONS(574), 1, + anon_sym_COLON, + STATE(96), 1, + sym_logic_operator, + STATE(97), 1, + sym_math_operator, + ACTIONS(251), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(253), 5, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(257), 6, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + [10459] = 3, + ACTIONS(602), 1, + anon_sym_in, + ACTIONS(299), 3, + sym_identifier, + anon_sym_LT, + anon_sym_GT, + ACTIONS(297), 12, + anon_sym_COLON, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + [10482] = 3, + ACTIONS(604), 1, + anon_sym_RPAREN, + ACTIONS(279), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(277), 12, + anon_sym_COLON, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + [10504] = 3, + ACTIONS(606), 1, + anon_sym_RPAREN, + ACTIONS(279), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(277), 12, + anon_sym_COLON, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + [10526] = 2, + ACTIONS(608), 6, + sym_identifier, + aux_sym_integer_token1, anon_sym_true, anon_sym_false, anon_sym_function, anon_sym_table, - ACTIONS(389), 8, + ACTIONS(401), 7, + anon_sym_LBRACE, anon_sym_LPAREN, anon_sym_RPAREN, - sym__numeric, - anon_sym_DASH, + aux_sym_float_token1, sym_string, anon_sym_LBRACK, anon_sym_RBRACK, - anon_sym_LBRACE, - [9321] = 2, - ACTIONS(550), 5, + [10544] = 2, + ACTIONS(610), 6, sym_identifier, + aux_sym_integer_token1, anon_sym_true, anon_sym_false, anon_sym_function, anon_sym_table, - ACTIONS(552), 6, + ACTIONS(612), 6, + anon_sym_LBRACE, + anon_sym_RBRACE, anon_sym_LPAREN, - sym__numeric, - anon_sym_DASH, + aux_sym_float_token1, sym_string, anon_sym_LBRACK, + [10561] = 2, + ACTIONS(616), 5, anon_sym_LBRACE, - [9337] = 2, - ACTIONS(554), 5, + anon_sym_LPAREN, + aux_sym_float_token1, + sym_string, + anon_sym_LBRACK, + ACTIONS(614), 6, sym_identifier, + aux_sym_integer_token1, anon_sym_true, anon_sym_false, anon_sym_function, anon_sym_table, - ACTIONS(556), 6, + [10577] = 2, + ACTIONS(620), 5, + anon_sym_LBRACE, anon_sym_LPAREN, - sym__numeric, - anon_sym_DASH, + aux_sym_float_token1, sym_string, anon_sym_LBRACK, - anon_sym_LBRACE, - [9353] = 3, - ACTIONS(558), 1, + ACTIONS(618), 6, sym_identifier, - ACTIONS(560), 1, + aux_sym_integer_token1, + anon_sym_true, + anon_sym_false, + anon_sym_function, + anon_sym_table, + [10593] = 2, + STATE(21), 1, + sym_assignment_operator, + ACTIONS(303), 3, + anon_sym_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + [10602] = 3, + ACTIONS(622), 1, + sym_identifier, + ACTIONS(625), 1, anon_sym_GT, STATE(197), 1, aux_sym_function_repeat1, - [9363] = 3, - ACTIONS(558), 1, + [10612] = 3, + ACTIONS(627), 1, sym_identifier, - ACTIONS(562), 1, + ACTIONS(629), 1, anon_sym_GT, - STATE(188), 1, + STATE(202), 1, aux_sym_function_repeat1, - [9373] = 3, - ACTIONS(558), 1, + [10622] = 3, + ACTIONS(627), 1, sym_identifier, - ACTIONS(564), 1, + ACTIONS(631), 1, anon_sym_GT, - STATE(195), 1, + STATE(197), 1, aux_sym_function_repeat1, - [9383] = 3, - ACTIONS(566), 1, + [10632] = 3, + ACTIONS(627), 1, sym_identifier, - ACTIONS(568), 1, - anon_sym_RBRACE, - STATE(189), 1, - aux_sym_map_repeat1, - [9393] = 3, - ACTIONS(566), 1, - sym_identifier, - ACTIONS(570), 1, - anon_sym_RBRACE, - STATE(189), 1, - aux_sym_map_repeat1, - [9403] = 3, - ACTIONS(558), 1, - sym_identifier, - ACTIONS(572), 1, + ACTIONS(633), 1, anon_sym_GT, - STATE(188), 1, - aux_sym_function_repeat1, - [9413] = 3, - ACTIONS(574), 1, - sym_identifier, - ACTIONS(577), 1, - anon_sym_GT, - STATE(188), 1, - aux_sym_function_repeat1, - [9423] = 3, - ACTIONS(579), 1, - sym_identifier, - ACTIONS(582), 1, - anon_sym_RBRACE, - STATE(189), 1, - aux_sym_map_repeat1, - [9433] = 3, - ACTIONS(558), 1, - sym_identifier, - ACTIONS(584), 1, - anon_sym_GT, - STATE(183), 1, - aux_sym_function_repeat1, - [9443] = 2, - ACTIONS(588), 1, - anon_sym_COMMA, - ACTIONS(586), 2, - sym_identifier, - anon_sym_GT, - [9451] = 3, - ACTIONS(566), 1, - sym_identifier, - ACTIONS(590), 1, - anon_sym_RBRACE, - STATE(186), 1, - aux_sym_map_repeat1, - [9461] = 3, - ACTIONS(566), 1, - sym_identifier, - ACTIONS(592), 1, - anon_sym_RBRACE, - STATE(185), 1, - aux_sym_map_repeat1, - [9471] = 3, - ACTIONS(558), 1, - sym_identifier, - ACTIONS(594), 1, - anon_sym_GT, - STATE(188), 1, - aux_sym_function_repeat1, - [9481] = 3, - ACTIONS(558), 1, - sym_identifier, - ACTIONS(596), 1, - anon_sym_GT, - STATE(188), 1, - aux_sym_function_repeat1, - [9491] = 3, - ACTIONS(558), 1, - sym_identifier, - ACTIONS(598), 1, - anon_sym_GT, - STATE(188), 1, - aux_sym_function_repeat1, - [9501] = 3, - ACTIONS(558), 1, - sym_identifier, - ACTIONS(600), 1, - anon_sym_GT, - STATE(188), 1, - aux_sym_function_repeat1, - [9511] = 3, - ACTIONS(558), 1, - sym_identifier, - ACTIONS(602), 1, - anon_sym_GT, - STATE(188), 1, - aux_sym_function_repeat1, - [9521] = 3, - ACTIONS(558), 1, - sym_identifier, - ACTIONS(604), 1, - anon_sym_GT, - STATE(188), 1, - aux_sym_function_repeat1, - [9531] = 3, - ACTIONS(558), 1, - sym_identifier, - ACTIONS(606), 1, - anon_sym_GT, - STATE(196), 1, - aux_sym_function_repeat1, - [9541] = 2, - ACTIONS(558), 1, - sym_identifier, - STATE(194), 1, - aux_sym_function_repeat1, - [9548] = 2, - ACTIONS(558), 1, - sym_identifier, - STATE(198), 1, - aux_sym_function_repeat1, - [9555] = 1, - ACTIONS(577), 2, - sym_identifier, - anon_sym_GT, - [9560] = 2, - ACTIONS(608), 1, - anon_sym_LBRACE, - ACTIONS(610), 1, - anon_sym_LT, - [9567] = 2, - ACTIONS(558), 1, - sym_identifier, STATE(199), 1, aux_sym_function_repeat1, - [9574] = 2, - ACTIONS(612), 1, - anon_sym_LBRACE, - ACTIONS(614), 1, - anon_sym_LT, - [9581] = 2, - ACTIONS(558), 1, + [10642] = 3, + ACTIONS(627), 1, sym_identifier, - STATE(187), 1, + ACTIONS(635), 1, + anon_sym_GT, + STATE(197), 1, aux_sym_function_repeat1, - [9588] = 1, - ACTIONS(616), 1, - anon_sym_in, - [9592] = 1, - ACTIONS(618), 1, - anon_sym_RBRACE, - [9596] = 1, - ACTIONS(620), 1, - sym__numeric, - [9600] = 1, - ACTIONS(622), 1, + [10652] = 3, + ACTIONS(627), 1, + sym_identifier, + ACTIONS(637), 1, + anon_sym_GT, + STATE(197), 1, + aux_sym_function_repeat1, + [10662] = 3, + ACTIONS(627), 1, + sym_identifier, + ACTIONS(639), 1, + anon_sym_GT, + STATE(197), 1, + aux_sym_function_repeat1, + [10672] = 3, + ACTIONS(627), 1, + sym_identifier, + ACTIONS(641), 1, + anon_sym_GT, + STATE(197), 1, + aux_sym_function_repeat1, + [10682] = 2, + ACTIONS(645), 1, + anon_sym_COMMA, + ACTIONS(643), 2, + sym_identifier, + anon_sym_GT, + [10690] = 3, + ACTIONS(627), 1, + sym_identifier, + ACTIONS(647), 1, + anon_sym_GT, + STATE(197), 1, + aux_sym_function_repeat1, + [10700] = 3, + ACTIONS(627), 1, + sym_identifier, + ACTIONS(649), 1, + anon_sym_GT, + STATE(209), 1, + aux_sym_function_repeat1, + [10710] = 3, + ACTIONS(627), 1, + sym_identifier, + ACTIONS(651), 1, + anon_sym_GT, + STATE(210), 1, + aux_sym_function_repeat1, + [10720] = 3, + ACTIONS(627), 1, + sym_identifier, + ACTIONS(653), 1, + anon_sym_GT, + STATE(197), 1, + aux_sym_function_repeat1, + [10730] = 3, + ACTIONS(627), 1, + sym_identifier, + ACTIONS(655), 1, + anon_sym_GT, + STATE(197), 1, + aux_sym_function_repeat1, + [10740] = 2, + ACTIONS(657), 1, + sym_identifier, + STATE(252), 1, + sym_assignment, + [10747] = 2, + ACTIONS(659), 1, anon_sym_LBRACE, - [9604] = 1, - ACTIONS(624), 1, - anon_sym_into, - [9608] = 1, - ACTIONS(626), 1, + ACTIONS(661), 1, anon_sym_LT, - [9612] = 1, - ACTIONS(628), 1, - sym__numeric, - [9616] = 1, - ACTIONS(630), 1, - sym_identifier, - [9620] = 1, - ACTIONS(632), 1, - sym_identifier, - [9624] = 1, - ACTIONS(634), 1, + [10754] = 2, + ACTIONS(663), 1, anon_sym_LBRACE, - [9628] = 1, - ACTIONS(636), 1, + ACTIONS(665), 1, + anon_sym_LT, + [10761] = 2, + ACTIONS(627), 1, sym_identifier, - [9632] = 1, - ACTIONS(638), 1, + STATE(206), 1, + aux_sym_function_repeat1, + [10768] = 1, + ACTIONS(625), 2, sym_identifier, - [9636] = 1, - ACTIONS(640), 1, - sym__numeric, - [9640] = 1, - ACTIONS(642), 1, - anon_sym_RBRACE, - [9644] = 1, - ACTIONS(644), 1, - anon_sym_RBRACE, - [9648] = 1, - ACTIONS(646), 1, + anon_sym_GT, + [10773] = 2, + ACTIONS(657), 1, + sym_identifier, + STATE(231), 1, + sym_assignment, + [10780] = 2, + ACTIONS(627), 1, + sym_identifier, + STATE(203), 1, + aux_sym_function_repeat1, + [10787] = 2, + ACTIONS(627), 1, + sym_identifier, + STATE(204), 1, + aux_sym_function_repeat1, + [10794] = 2, + ACTIONS(627), 1, + sym_identifier, + STATE(201), 1, + aux_sym_function_repeat1, + [10801] = 1, + ACTIONS(667), 1, anon_sym_from, - [9652] = 1, - ACTIONS(648), 1, - sym_identifier, - [9656] = 1, - ACTIONS(650), 1, + [10805] = 1, + ACTIONS(669), 1, + anon_sym_RBRACE, + [10809] = 1, + ACTIONS(671), 1, + anon_sym_in, + [10813] = 1, + ACTIONS(673), 1, anon_sym_from, - [9660] = 1, - ACTIONS(652), 1, - anon_sym_RBRACE, - [9664] = 1, - ACTIONS(654), 1, - anon_sym_RBRACE, - [9668] = 1, - ACTIONS(656), 1, - anon_sym_RBRACE, - [9672] = 1, - ACTIONS(658), 1, - anon_sym_RBRACE, - [9676] = 1, - ACTIONS(660), 1, + [10817] = 1, + ACTIONS(675), 1, sym_identifier, - [9680] = 1, - ACTIONS(662), 1, + [10821] = 1, + ACTIONS(677), 1, + anon_sym_to, + [10825] = 1, + ACTIONS(679), 1, + anon_sym_RBRACE, + [10829] = 1, + ACTIONS(681), 1, + anon_sym_from, + [10833] = 1, + ACTIONS(683), 1, + anon_sym_in, + [10837] = 1, + ACTIONS(685), 1, + anon_sym_RBRACE, + [10841] = 1, + ACTIONS(687), 1, + sym_identifier, + [10845] = 1, + ACTIONS(689), 1, + anon_sym_RBRACE, + [10849] = 1, + ACTIONS(691), 1, + anon_sym_in, + [10853] = 1, + ACTIONS(693), 1, + anon_sym_in, + [10857] = 1, + ACTIONS(695), 1, + anon_sym_RBRACE, + [10861] = 1, + ACTIONS(697), 1, + anon_sym_LBRACE, + [10865] = 1, + ACTIONS(699), 1, + anon_sym_RBRACE, + [10869] = 1, + ACTIONS(701), 1, + anon_sym_from, + [10873] = 1, + ACTIONS(703), 1, + anon_sym_RBRACE, + [10877] = 1, + ACTIONS(705), 1, + anon_sym_RBRACE, + [10881] = 1, + ACTIONS(707), 1, + anon_sym_RBRACE, + [10885] = 1, + ACTIONS(709), 1, + anon_sym_RBRACE, + [10889] = 1, + ACTIONS(711), 1, + anon_sym_from, + [10893] = 1, + ACTIONS(713), 1, anon_sym_into, - [9684] = 1, - ACTIONS(664), 1, - anon_sym_from, - [9688] = 1, - ACTIONS(666), 1, - anon_sym_from, - [9692] = 1, - ACTIONS(668), 1, - sym_identifier, - [9696] = 1, - ACTIONS(670), 1, + [10897] = 1, + ACTIONS(715), 1, + anon_sym_RBRACE, + [10901] = 1, + ACTIONS(717), 1, + anon_sym_RBRACE, + [10905] = 1, + ACTIONS(719), 1, + anon_sym_LBRACE, + [10909] = 1, + ACTIONS(721), 1, + anon_sym_RBRACE, + [10913] = 1, + ACTIONS(723), 1, + anon_sym_RBRACE, + [10917] = 1, + ACTIONS(725), 1, + anon_sym_RBRACE, + [10921] = 1, + ACTIONS(727), 1, + anon_sym_RBRACE, + [10925] = 1, + ACTIONS(729), 1, + anon_sym_RBRACE, + [10929] = 1, + ACTIONS(731), 1, + anon_sym_RBRACE, + [10933] = 1, + ACTIONS(733), 1, ts_builtin_sym_end, - [9700] = 1, - ACTIONS(672), 1, - anon_sym_RBRACE, - [9704] = 1, - ACTIONS(674), 1, - anon_sym_in, - [9708] = 1, - ACTIONS(676), 1, - anon_sym_LT, - [9712] = 1, - ACTIONS(678), 1, - anon_sym_in, - [9716] = 1, - ACTIONS(680), 1, - anon_sym_in, - [9720] = 1, - ACTIONS(682), 1, - sym__numeric, - [9724] = 1, - ACTIONS(684), 1, + [10937] = 1, + ACTIONS(735), 1, anon_sym_LBRACE, - [9728] = 1, - ACTIONS(686), 1, + [10941] = 1, + ACTIONS(737), 1, + anon_sym_into, + [10945] = 1, + ACTIONS(739), 1, + anon_sym_LT, + [10949] = 1, + ACTIONS(741), 1, + sym_identifier, + [10953] = 1, + ACTIONS(743), 1, + sym_identifier, + [10957] = 1, + ACTIONS(745), 1, + anon_sym_RBRACE, + [10961] = 1, + ACTIONS(747), 1, + anon_sym_LT, + [10965] = 1, + ACTIONS(749), 1, + anon_sym_LT, + [10969] = 1, + ACTIONS(751), 1, + sym_identifier, + [10973] = 1, + ACTIONS(753), 1, + anon_sym_LBRACE, + [10977] = 1, + ACTIONS(755), 1, + anon_sym_LBRACE, + [10981] = 1, + ACTIONS(757), 1, + sym_identifier, + [10985] = 1, + ACTIONS(759), 1, + sym_identifier, + [10989] = 1, + ACTIONS(761), 1, + anon_sym_LT, + [10993] = 1, + ACTIONS(763), 1, + anon_sym_RBRACE, + [10997] = 1, + ACTIONS(765), 1, + anon_sym_RBRACE, + [11001] = 1, + ACTIONS(767), 1, + anon_sym_LT, + [11005] = 1, + ACTIONS(769), 1, + anon_sym_LBRACE, + [11009] = 1, + ACTIONS(771), 1, + anon_sym_RBRACE, + [11013] = 1, + ACTIONS(773), 1, anon_sym_in, - [9732] = 1, - ACTIONS(688), 1, - anon_sym_RBRACE, - [9736] = 1, - ACTIONS(690), 1, - anon_sym_RBRACE, - [9740] = 1, - ACTIONS(692), 1, - anon_sym_RBRACE, - [9744] = 1, - ACTIONS(694), 1, - anon_sym_LT, - [9748] = 1, - ACTIONS(696), 1, - anon_sym_LT, - [9752] = 1, - ACTIONS(698), 1, - anon_sym_RBRACE, - [9756] = 1, - ACTIONS(700), 1, - anon_sym_LBRACE, - [9760] = 1, - ACTIONS(702), 1, - anon_sym_LBRACE, - [9764] = 1, - ACTIONS(704), 1, - sym__numeric, - [9768] = 1, - ACTIONS(706), 1, - anon_sym_LBRACE, - [9772] = 1, - ACTIONS(708), 1, - anon_sym_RBRACE, - [9776] = 1, - ACTIONS(710), 1, - anon_sym_RBRACE, - [9780] = 1, - ACTIONS(712), 1, - anon_sym_RBRACE, - [9784] = 1, - ACTIONS(714), 1, - anon_sym_LT, - [9788] = 1, - ACTIONS(716), 1, - anon_sym_RBRACE, - [9792] = 1, - ACTIONS(718), 1, - anon_sym_EQ, - [9796] = 1, - ACTIONS(720), 1, - sym__numeric, - [9800] = 1, - ACTIONS(722), 1, - anon_sym_RBRACE, - [9804] = 1, - ACTIONS(724), 1, + [11017] = 1, + ACTIONS(775), 1, + sym_identifier, + [11021] = 1, + ACTIONS(777), 1, anon_sym_LT, }; static const uint32_t ts_small_parse_table_map[] = { [SMALL_STATE(2)] = 0, - [SMALL_STATE(3)] = 89, - [SMALL_STATE(4)] = 178, - [SMALL_STATE(5)] = 292, - [SMALL_STATE(6)] = 406, - [SMALL_STATE(7)] = 517, - [SMALL_STATE(8)] = 627, - [SMALL_STATE(9)] = 737, - [SMALL_STATE(10)] = 847, - [SMALL_STATE(11)] = 957, - [SMALL_STATE(12)] = 1067, - [SMALL_STATE(13)] = 1177, - [SMALL_STATE(14)] = 1287, - [SMALL_STATE(15)] = 1397, - [SMALL_STATE(16)] = 1507, - [SMALL_STATE(17)] = 1617, - [SMALL_STATE(18)] = 1727, - [SMALL_STATE(19)] = 1837, - [SMALL_STATE(20)] = 1947, - [SMALL_STATE(21)] = 2057, - [SMALL_STATE(22)] = 2167, - [SMALL_STATE(23)] = 2277, - [SMALL_STATE(24)] = 2387, - [SMALL_STATE(25)] = 2457, - [SMALL_STATE(26)] = 2563, - [SMALL_STATE(27)] = 2669, - [SMALL_STATE(28)] = 2775, - [SMALL_STATE(29)] = 2881, - [SMALL_STATE(30)] = 2987, - [SMALL_STATE(31)] = 3040, - [SMALL_STATE(32)] = 3095, - [SMALL_STATE(33)] = 3148, - [SMALL_STATE(34)] = 3201, - [SMALL_STATE(35)] = 3254, - [SMALL_STATE(36)] = 3317, - [SMALL_STATE(37)] = 3369, - [SMALL_STATE(38)] = 3419, - [SMALL_STATE(39)] = 3471, - [SMALL_STATE(40)] = 3533, - [SMALL_STATE(41)] = 3585, - [SMALL_STATE(42)] = 3635, - [SMALL_STATE(43)] = 3712, - [SMALL_STATE(44)] = 3759, - [SMALL_STATE(45)] = 3806, - [SMALL_STATE(46)] = 3853, - [SMALL_STATE(47)] = 3906, - [SMALL_STATE(48)] = 3953, - [SMALL_STATE(49)] = 4000, - [SMALL_STATE(50)] = 4047, - [SMALL_STATE(51)] = 4094, - [SMALL_STATE(52)] = 4141, - [SMALL_STATE(53)] = 4188, - [SMALL_STATE(54)] = 4235, - [SMALL_STATE(55)] = 4282, - [SMALL_STATE(56)] = 4329, - [SMALL_STATE(57)] = 4376, - [SMALL_STATE(58)] = 4423, - [SMALL_STATE(59)] = 4470, - [SMALL_STATE(60)] = 4517, - [SMALL_STATE(61)] = 4564, - [SMALL_STATE(62)] = 4641, - [SMALL_STATE(63)] = 4700, - [SMALL_STATE(64)] = 4761, - [SMALL_STATE(65)] = 4820, - [SMALL_STATE(66)] = 4881, - [SMALL_STATE(67)] = 4932, - [SMALL_STATE(68)] = 4974, - [SMALL_STATE(69)] = 5016, - [SMALL_STATE(70)] = 5076, - [SMALL_STATE(71)] = 5135, - [SMALL_STATE(72)] = 5194, - [SMALL_STATE(73)] = 5253, - [SMALL_STATE(74)] = 5290, - [SMALL_STATE(75)] = 5349, - [SMALL_STATE(76)] = 5408, - [SMALL_STATE(77)] = 5467, - [SMALL_STATE(78)] = 5526, - [SMALL_STATE(79)] = 5585, - [SMALL_STATE(80)] = 5644, - [SMALL_STATE(81)] = 5703, - [SMALL_STATE(82)] = 5756, - [SMALL_STATE(83)] = 5809, - [SMALL_STATE(84)] = 5862, - [SMALL_STATE(85)] = 5915, - [SMALL_STATE(86)] = 5968, - [SMALL_STATE(87)] = 6021, - [SMALL_STATE(88)] = 6074, - [SMALL_STATE(89)] = 6127, - [SMALL_STATE(90)] = 6180, - [SMALL_STATE(91)] = 6233, - [SMALL_STATE(92)] = 6286, - [SMALL_STATE(93)] = 6339, - [SMALL_STATE(94)] = 6392, - [SMALL_STATE(95)] = 6423, - [SMALL_STATE(96)] = 6476, - [SMALL_STATE(97)] = 6529, - [SMALL_STATE(98)] = 6582, - [SMALL_STATE(99)] = 6635, - [SMALL_STATE(100)] = 6688, - [SMALL_STATE(101)] = 6741, - [SMALL_STATE(102)] = 6794, - [SMALL_STATE(103)] = 6847, - [SMALL_STATE(104)] = 6900, - [SMALL_STATE(105)] = 6953, - [SMALL_STATE(106)] = 7006, - [SMALL_STATE(107)] = 7059, - [SMALL_STATE(108)] = 7112, - [SMALL_STATE(109)] = 7165, - [SMALL_STATE(110)] = 7196, - [SMALL_STATE(111)] = 7249, - [SMALL_STATE(112)] = 7302, - [SMALL_STATE(113)] = 7355, - [SMALL_STATE(114)] = 7408, - [SMALL_STATE(115)] = 7461, - [SMALL_STATE(116)] = 7514, - [SMALL_STATE(117)] = 7543, - [SMALL_STATE(118)] = 7572, - [SMALL_STATE(119)] = 7601, - [SMALL_STATE(120)] = 7630, - [SMALL_STATE(121)] = 7659, - [SMALL_STATE(122)] = 7688, - [SMALL_STATE(123)] = 7717, - [SMALL_STATE(124)] = 7746, - [SMALL_STATE(125)] = 7775, - [SMALL_STATE(126)] = 7804, - [SMALL_STATE(127)] = 7833, - [SMALL_STATE(128)] = 7862, - [SMALL_STATE(129)] = 7891, - [SMALL_STATE(130)] = 7920, - [SMALL_STATE(131)] = 7949, - [SMALL_STATE(132)] = 7978, - [SMALL_STATE(133)] = 8005, - [SMALL_STATE(134)] = 8035, - [SMALL_STATE(135)] = 8071, - [SMALL_STATE(136)] = 8101, - [SMALL_STATE(137)] = 8131, - [SMALL_STATE(138)] = 8163, - [SMALL_STATE(139)] = 8193, - [SMALL_STATE(140)] = 8222, - [SMALL_STATE(141)] = 8257, - [SMALL_STATE(142)] = 8284, - [SMALL_STATE(143)] = 8311, - [SMALL_STATE(144)] = 8340, - [SMALL_STATE(145)] = 8369, - [SMALL_STATE(146)] = 8393, - [SMALL_STATE(147)] = 8417, - [SMALL_STATE(148)] = 8441, - [SMALL_STATE(149)] = 8465, - [SMALL_STATE(150)] = 8489, - [SMALL_STATE(151)] = 8513, - [SMALL_STATE(152)] = 8537, - [SMALL_STATE(153)] = 8561, - [SMALL_STATE(154)] = 8585, - [SMALL_STATE(155)] = 8609, - [SMALL_STATE(156)] = 8633, - [SMALL_STATE(157)] = 8657, - [SMALL_STATE(158)] = 8681, - [SMALL_STATE(159)] = 8705, - [SMALL_STATE(160)] = 8729, - [SMALL_STATE(161)] = 8753, - [SMALL_STATE(162)] = 8777, - [SMALL_STATE(163)] = 8807, - [SMALL_STATE(164)] = 8840, - [SMALL_STATE(165)] = 8875, - [SMALL_STATE(166)] = 8910, - [SMALL_STATE(167)] = 8942, - [SMALL_STATE(168)] = 8974, - [SMALL_STATE(169)] = 9006, - [SMALL_STATE(170)] = 9038, - [SMALL_STATE(171)] = 9070, - [SMALL_STATE(172)] = 9102, - [SMALL_STATE(173)] = 9134, - [SMALL_STATE(174)] = 9166, - [SMALL_STATE(175)] = 9198, - [SMALL_STATE(176)] = 9230, - [SMALL_STATE(177)] = 9259, - [SMALL_STATE(178)] = 9281, - [SMALL_STATE(179)] = 9303, - [SMALL_STATE(180)] = 9321, - [SMALL_STATE(181)] = 9337, - [SMALL_STATE(182)] = 9353, - [SMALL_STATE(183)] = 9363, - [SMALL_STATE(184)] = 9373, - [SMALL_STATE(185)] = 9383, - [SMALL_STATE(186)] = 9393, - [SMALL_STATE(187)] = 9403, - [SMALL_STATE(188)] = 9413, - [SMALL_STATE(189)] = 9423, - [SMALL_STATE(190)] = 9433, - [SMALL_STATE(191)] = 9443, - [SMALL_STATE(192)] = 9451, - [SMALL_STATE(193)] = 9461, - [SMALL_STATE(194)] = 9471, - [SMALL_STATE(195)] = 9481, - [SMALL_STATE(196)] = 9491, - [SMALL_STATE(197)] = 9501, - [SMALL_STATE(198)] = 9511, - [SMALL_STATE(199)] = 9521, - [SMALL_STATE(200)] = 9531, - [SMALL_STATE(201)] = 9541, - [SMALL_STATE(202)] = 9548, - [SMALL_STATE(203)] = 9555, - [SMALL_STATE(204)] = 9560, - [SMALL_STATE(205)] = 9567, - [SMALL_STATE(206)] = 9574, - [SMALL_STATE(207)] = 9581, - [SMALL_STATE(208)] = 9588, - [SMALL_STATE(209)] = 9592, - [SMALL_STATE(210)] = 9596, - [SMALL_STATE(211)] = 9600, - [SMALL_STATE(212)] = 9604, - [SMALL_STATE(213)] = 9608, - [SMALL_STATE(214)] = 9612, - [SMALL_STATE(215)] = 9616, - [SMALL_STATE(216)] = 9620, - [SMALL_STATE(217)] = 9624, - [SMALL_STATE(218)] = 9628, - [SMALL_STATE(219)] = 9632, - [SMALL_STATE(220)] = 9636, - [SMALL_STATE(221)] = 9640, - [SMALL_STATE(222)] = 9644, - [SMALL_STATE(223)] = 9648, - [SMALL_STATE(224)] = 9652, - [SMALL_STATE(225)] = 9656, - [SMALL_STATE(226)] = 9660, - [SMALL_STATE(227)] = 9664, - [SMALL_STATE(228)] = 9668, - [SMALL_STATE(229)] = 9672, - [SMALL_STATE(230)] = 9676, - [SMALL_STATE(231)] = 9680, - [SMALL_STATE(232)] = 9684, - [SMALL_STATE(233)] = 9688, - [SMALL_STATE(234)] = 9692, - [SMALL_STATE(235)] = 9696, - [SMALL_STATE(236)] = 9700, - [SMALL_STATE(237)] = 9704, - [SMALL_STATE(238)] = 9708, - [SMALL_STATE(239)] = 9712, - [SMALL_STATE(240)] = 9716, - [SMALL_STATE(241)] = 9720, - [SMALL_STATE(242)] = 9724, - [SMALL_STATE(243)] = 9728, - [SMALL_STATE(244)] = 9732, - [SMALL_STATE(245)] = 9736, - [SMALL_STATE(246)] = 9740, - [SMALL_STATE(247)] = 9744, - [SMALL_STATE(248)] = 9748, - [SMALL_STATE(249)] = 9752, - [SMALL_STATE(250)] = 9756, - [SMALL_STATE(251)] = 9760, - [SMALL_STATE(252)] = 9764, - [SMALL_STATE(253)] = 9768, - [SMALL_STATE(254)] = 9772, - [SMALL_STATE(255)] = 9776, - [SMALL_STATE(256)] = 9780, - [SMALL_STATE(257)] = 9784, - [SMALL_STATE(258)] = 9788, - [SMALL_STATE(259)] = 9792, - [SMALL_STATE(260)] = 9796, - [SMALL_STATE(261)] = 9800, - [SMALL_STATE(262)] = 9804, + [SMALL_STATE(3)] = 121, + [SMALL_STATE(4)] = 241, + [SMALL_STATE(5)] = 361, + [SMALL_STATE(6)] = 481, + [SMALL_STATE(7)] = 570, + [SMALL_STATE(8)] = 687, + [SMALL_STATE(9)] = 776, + [SMALL_STATE(10)] = 849, + [SMALL_STATE(11)] = 965, + [SMALL_STATE(12)] = 1081, + [SMALL_STATE(13)] = 1197, + [SMALL_STATE(14)] = 1313, + [SMALL_STATE(15)] = 1429, + [SMALL_STATE(16)] = 1545, + [SMALL_STATE(17)] = 1661, + [SMALL_STATE(18)] = 1777, + [SMALL_STATE(19)] = 1893, + [SMALL_STATE(20)] = 2009, + [SMALL_STATE(21)] = 2125, + [SMALL_STATE(22)] = 2241, + [SMALL_STATE(23)] = 2339, + [SMALL_STATE(24)] = 2455, + [SMALL_STATE(25)] = 2571, + [SMALL_STATE(26)] = 2687, + [SMALL_STATE(27)] = 2803, + [SMALL_STATE(28)] = 2919, + [SMALL_STATE(29)] = 3035, + [SMALL_STATE(30)] = 3151, + [SMALL_STATE(31)] = 3267, + [SMALL_STATE(32)] = 3383, + [SMALL_STATE(33)] = 3499, + [SMALL_STATE(34)] = 3615, + [SMALL_STATE(35)] = 3727, + [SMALL_STATE(36)] = 3784, + [SMALL_STATE(37)] = 3839, + [SMALL_STATE(38)] = 3904, + [SMALL_STATE(39)] = 3959, + [SMALL_STATE(40)] = 4014, + [SMALL_STATE(41)] = 4069, + [SMALL_STATE(42)] = 4123, + [SMALL_STATE(43)] = 4177, + [SMALL_STATE(44)] = 4241, + [SMALL_STATE(45)] = 4295, + [SMALL_STATE(46)] = 4344, + [SMALL_STATE(47)] = 4393, + [SMALL_STATE(48)] = 4442, + [SMALL_STATE(49)] = 4491, + [SMALL_STATE(50)] = 4540, + [SMALL_STATE(51)] = 4589, + [SMALL_STATE(52)] = 4638, + [SMALL_STATE(53)] = 4693, + [SMALL_STATE(54)] = 4742, + [SMALL_STATE(55)] = 4791, + [SMALL_STATE(56)] = 4840, + [SMALL_STATE(57)] = 4889, + [SMALL_STATE(58)] = 4938, + [SMALL_STATE(59)] = 4987, + [SMALL_STATE(60)] = 5036, + [SMALL_STATE(61)] = 5085, + [SMALL_STATE(62)] = 5134, + [SMALL_STATE(63)] = 5197, + [SMALL_STATE(64)] = 5274, + [SMALL_STATE(65)] = 5351, + [SMALL_STATE(66)] = 5412, + [SMALL_STATE(67)] = 5475, + [SMALL_STATE(68)] = 5536, + [SMALL_STATE(69)] = 5580, + [SMALL_STATE(70)] = 5624, + [SMALL_STATE(71)] = 5663, + [SMALL_STATE(72)] = 5714, + [SMALL_STATE(73)] = 5774, + [SMALL_STATE(74)] = 5833, + [SMALL_STATE(75)] = 5892, + [SMALL_STATE(76)] = 5951, + [SMALL_STATE(77)] = 6010, + [SMALL_STATE(78)] = 6069, + [SMALL_STATE(79)] = 6128, + [SMALL_STATE(80)] = 6187, + [SMALL_STATE(81)] = 6246, + [SMALL_STATE(82)] = 6305, + [SMALL_STATE(83)] = 6364, + [SMALL_STATE(84)] = 6397, + [SMALL_STATE(85)] = 6456, + [SMALL_STATE(86)] = 6489, + [SMALL_STATE(87)] = 6548, + [SMALL_STATE(88)] = 6604, + [SMALL_STATE(89)] = 6657, + [SMALL_STATE(90)] = 6710, + [SMALL_STATE(91)] = 6763, + [SMALL_STATE(92)] = 6816, + [SMALL_STATE(93)] = 6869, + [SMALL_STATE(94)] = 6922, + [SMALL_STATE(95)] = 6975, + [SMALL_STATE(96)] = 7028, + [SMALL_STATE(97)] = 7081, + [SMALL_STATE(98)] = 7134, + [SMALL_STATE(99)] = 7187, + [SMALL_STATE(100)] = 7240, + [SMALL_STATE(101)] = 7271, + [SMALL_STATE(102)] = 7302, + [SMALL_STATE(103)] = 7355, + [SMALL_STATE(104)] = 7408, + [SMALL_STATE(105)] = 7461, + [SMALL_STATE(106)] = 7514, + [SMALL_STATE(107)] = 7567, + [SMALL_STATE(108)] = 7598, + [SMALL_STATE(109)] = 7651, + [SMALL_STATE(110)] = 7682, + [SMALL_STATE(111)] = 7735, + [SMALL_STATE(112)] = 7788, + [SMALL_STATE(113)] = 7819, + [SMALL_STATE(114)] = 7872, + [SMALL_STATE(115)] = 7903, + [SMALL_STATE(116)] = 7934, + [SMALL_STATE(117)] = 7987, + [SMALL_STATE(118)] = 8018, + [SMALL_STATE(119)] = 8071, + [SMALL_STATE(120)] = 8102, + [SMALL_STATE(121)] = 8155, + [SMALL_STATE(122)] = 8186, + [SMALL_STATE(123)] = 8217, + [SMALL_STATE(124)] = 8248, + [SMALL_STATE(125)] = 8301, + [SMALL_STATE(126)] = 8332, + [SMALL_STATE(127)] = 8363, + [SMALL_STATE(128)] = 8394, + [SMALL_STATE(129)] = 8447, + [SMALL_STATE(130)] = 8500, + [SMALL_STATE(131)] = 8553, + [SMALL_STATE(132)] = 8584, + [SMALL_STATE(133)] = 8637, + [SMALL_STATE(134)] = 8690, + [SMALL_STATE(135)] = 8721, + [SMALL_STATE(136)] = 8774, + [SMALL_STATE(137)] = 8827, + [SMALL_STATE(138)] = 8880, + [SMALL_STATE(139)] = 8933, + [SMALL_STATE(140)] = 8986, + [SMALL_STATE(141)] = 9017, + [SMALL_STATE(142)] = 9070, + [SMALL_STATE(143)] = 9101, + [SMALL_STATE(144)] = 9130, + [SMALL_STATE(145)] = 9163, + [SMALL_STATE(146)] = 9194, + [SMALL_STATE(147)] = 9225, + [SMALL_STATE(148)] = 9256, + [SMALL_STATE(149)] = 9287, + [SMALL_STATE(150)] = 9324, + [SMALL_STATE(151)] = 9354, + [SMALL_STATE(152)] = 9384, + [SMALL_STATE(153)] = 9420, + [SMALL_STATE(154)] = 9450, + [SMALL_STATE(155)] = 9475, + [SMALL_STATE(156)] = 9500, + [SMALL_STATE(157)] = 9525, + [SMALL_STATE(158)] = 9550, + [SMALL_STATE(159)] = 9575, + [SMALL_STATE(160)] = 9600, + [SMALL_STATE(161)] = 9625, + [SMALL_STATE(162)] = 9650, + [SMALL_STATE(163)] = 9675, + [SMALL_STATE(164)] = 9700, + [SMALL_STATE(165)] = 9725, + [SMALL_STATE(166)] = 9750, + [SMALL_STATE(167)] = 9775, + [SMALL_STATE(168)] = 9800, + [SMALL_STATE(169)] = 9825, + [SMALL_STATE(170)] = 9850, + [SMALL_STATE(171)] = 9880, + [SMALL_STATE(172)] = 9915, + [SMALL_STATE(173)] = 9950, + [SMALL_STATE(174)] = 9982, + [SMALL_STATE(175)] = 10014, + [SMALL_STATE(176)] = 10046, + [SMALL_STATE(177)] = 10078, + [SMALL_STATE(178)] = 10110, + [SMALL_STATE(179)] = 10142, + [SMALL_STATE(180)] = 10174, + [SMALL_STATE(181)] = 10206, + [SMALL_STATE(182)] = 10238, + [SMALL_STATE(183)] = 10270, + [SMALL_STATE(184)] = 10302, + [SMALL_STATE(185)] = 10334, + [SMALL_STATE(186)] = 10366, + [SMALL_STATE(187)] = 10398, + [SMALL_STATE(188)] = 10430, + [SMALL_STATE(189)] = 10459, + [SMALL_STATE(190)] = 10482, + [SMALL_STATE(191)] = 10504, + [SMALL_STATE(192)] = 10526, + [SMALL_STATE(193)] = 10544, + [SMALL_STATE(194)] = 10561, + [SMALL_STATE(195)] = 10577, + [SMALL_STATE(196)] = 10593, + [SMALL_STATE(197)] = 10602, + [SMALL_STATE(198)] = 10612, + [SMALL_STATE(199)] = 10622, + [SMALL_STATE(200)] = 10632, + [SMALL_STATE(201)] = 10642, + [SMALL_STATE(202)] = 10652, + [SMALL_STATE(203)] = 10662, + [SMALL_STATE(204)] = 10672, + [SMALL_STATE(205)] = 10682, + [SMALL_STATE(206)] = 10690, + [SMALL_STATE(207)] = 10700, + [SMALL_STATE(208)] = 10710, + [SMALL_STATE(209)] = 10720, + [SMALL_STATE(210)] = 10730, + [SMALL_STATE(211)] = 10740, + [SMALL_STATE(212)] = 10747, + [SMALL_STATE(213)] = 10754, + [SMALL_STATE(214)] = 10761, + [SMALL_STATE(215)] = 10768, + [SMALL_STATE(216)] = 10773, + [SMALL_STATE(217)] = 10780, + [SMALL_STATE(218)] = 10787, + [SMALL_STATE(219)] = 10794, + [SMALL_STATE(220)] = 10801, + [SMALL_STATE(221)] = 10805, + [SMALL_STATE(222)] = 10809, + [SMALL_STATE(223)] = 10813, + [SMALL_STATE(224)] = 10817, + [SMALL_STATE(225)] = 10821, + [SMALL_STATE(226)] = 10825, + [SMALL_STATE(227)] = 10829, + [SMALL_STATE(228)] = 10833, + [SMALL_STATE(229)] = 10837, + [SMALL_STATE(230)] = 10841, + [SMALL_STATE(231)] = 10845, + [SMALL_STATE(232)] = 10849, + [SMALL_STATE(233)] = 10853, + [SMALL_STATE(234)] = 10857, + [SMALL_STATE(235)] = 10861, + [SMALL_STATE(236)] = 10865, + [SMALL_STATE(237)] = 10869, + [SMALL_STATE(238)] = 10873, + [SMALL_STATE(239)] = 10877, + [SMALL_STATE(240)] = 10881, + [SMALL_STATE(241)] = 10885, + [SMALL_STATE(242)] = 10889, + [SMALL_STATE(243)] = 10893, + [SMALL_STATE(244)] = 10897, + [SMALL_STATE(245)] = 10901, + [SMALL_STATE(246)] = 10905, + [SMALL_STATE(247)] = 10909, + [SMALL_STATE(248)] = 10913, + [SMALL_STATE(249)] = 10917, + [SMALL_STATE(250)] = 10921, + [SMALL_STATE(251)] = 10925, + [SMALL_STATE(252)] = 10929, + [SMALL_STATE(253)] = 10933, + [SMALL_STATE(254)] = 10937, + [SMALL_STATE(255)] = 10941, + [SMALL_STATE(256)] = 10945, + [SMALL_STATE(257)] = 10949, + [SMALL_STATE(258)] = 10953, + [SMALL_STATE(259)] = 10957, + [SMALL_STATE(260)] = 10961, + [SMALL_STATE(261)] = 10965, + [SMALL_STATE(262)] = 10969, + [SMALL_STATE(263)] = 10973, + [SMALL_STATE(264)] = 10977, + [SMALL_STATE(265)] = 10981, + [SMALL_STATE(266)] = 10985, + [SMALL_STATE(267)] = 10989, + [SMALL_STATE(268)] = 10993, + [SMALL_STATE(269)] = 10997, + [SMALL_STATE(270)] = 11001, + [SMALL_STATE(271)] = 11005, + [SMALL_STATE(272)] = 11009, + [SMALL_STATE(273)] = 11013, + [SMALL_STATE(274)] = 11017, + [SMALL_STATE(275)] = 11021, }; static const TSParseActionEntry ts_parse_actions[] = { [0] = {.entry = {.count = 0, .reusable = false}}, [1] = {.entry = {.count = 1, .reusable = false}}, RECOVER(), - [3] = {.entry = {.count = 1, .reusable = false}}, SHIFT(46), - [5] = {.entry = {.count = 1, .reusable = true}}, SHIFT(124), - [7] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2), - [9] = {.entry = {.count = 1, .reusable = true}}, SHIFT(41), - [11] = {.entry = {.count = 1, .reusable = true}}, SHIFT(241), - [13] = {.entry = {.count = 1, .reusable = true}}, SHIFT(60), - [15] = {.entry = {.count = 1, .reusable = false}}, SHIFT(56), - [17] = {.entry = {.count = 1, .reusable = true}}, SHIFT(70), - [19] = {.entry = {.count = 1, .reusable = true}}, SHIFT(193), - [21] = {.entry = {.count = 1, .reusable = false}}, SHIFT(204), - [23] = {.entry = {.count = 1, .reusable = false}}, SHIFT(238), - [25] = {.entry = {.count = 1, .reusable = false}}, SHIFT(97), - [27] = {.entry = {.count = 1, .reusable = false}}, SHIFT(99), - [29] = {.entry = {.count = 1, .reusable = false}}, SHIFT(230), - [31] = {.entry = {.count = 1, .reusable = false}}, SHIFT(224), - [33] = {.entry = {.count = 1, .reusable = false}}, SHIFT(219), - [35] = {.entry = {.count = 1, .reusable = false}}, SHIFT(218), - [37] = {.entry = {.count = 1, .reusable = false}}, SHIFT(215), - [39] = {.entry = {.count = 1, .reusable = false}}, SHIFT(213), - [41] = {.entry = {.count = 1, .reusable = false}}, SHIFT(212), - [43] = {.entry = {.count = 1, .reusable = false}}, SHIFT(211), - [45] = {.entry = {.count = 1, .reusable = false}}, SHIFT(61), - [47] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3), - [49] = {.entry = {.count = 1, .reusable = true}}, SHIFT(142), - [51] = {.entry = {.count = 1, .reusable = true}}, SHIFT(210), - [53] = {.entry = {.count = 1, .reusable = true}}, SHIFT(159), - [55] = {.entry = {.count = 1, .reusable = false}}, SHIFT(158), - [57] = {.entry = {.count = 1, .reusable = true}}, SHIFT(76), - [59] = {.entry = {.count = 1, .reusable = true}}, SHIFT(192), - [61] = {.entry = {.count = 1, .reusable = false}}, SHIFT(206), - [63] = {.entry = {.count = 1, .reusable = false}}, SHIFT(247), - [65] = {.entry = {.count = 1, .reusable = false}}, SHIFT(75), - [67] = {.entry = {.count = 1, .reusable = false}}, SHIFT(42), - [69] = {.entry = {.count = 1, .reusable = false}}, SHIFT(77), - [71] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_root, 1), - [73] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_root_repeat1, 2), - [75] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(46), - [78] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(124), - [81] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(2), - [84] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(41), - [87] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(241), - [90] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(60), - [93] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(56), - [96] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(70), - [99] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(193), - [102] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(204), - [105] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(238), - [108] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(97), - [111] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(99), - [114] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(230), - [117] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(224), - [120] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(219), - [123] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(218), - [126] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(215), - [129] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(213), - [132] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(212), - [135] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(211), - [138] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_item_repeat1, 2), - [140] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_item_repeat1, 2), SHIFT_REPEAT(46), - [143] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_item_repeat1, 2), SHIFT_REPEAT(124), - [146] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_item_repeat1, 2), SHIFT_REPEAT(2), - [149] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_item_repeat1, 2), SHIFT_REPEAT(41), - [152] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_item_repeat1, 2), SHIFT_REPEAT(241), - [155] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_item_repeat1, 2), SHIFT_REPEAT(60), - [158] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_item_repeat1, 2), SHIFT_REPEAT(56), - [161] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_item_repeat1, 2), SHIFT_REPEAT(70), - [164] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_item_repeat1, 2), SHIFT_REPEAT(193), - [167] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_item_repeat1, 2), SHIFT_REPEAT(204), - [170] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_item_repeat1, 2), SHIFT_REPEAT(238), - [173] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_item_repeat1, 2), SHIFT_REPEAT(97), - [176] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_item_repeat1, 2), SHIFT_REPEAT(99), - [179] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_item_repeat1, 2), SHIFT_REPEAT(230), - [182] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_item_repeat1, 2), SHIFT_REPEAT(224), - [185] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_item_repeat1, 2), SHIFT_REPEAT(219), - [188] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_item_repeat1, 2), SHIFT_REPEAT(218), - [191] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_item_repeat1, 2), SHIFT_REPEAT(215), - [194] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_item_repeat1, 2), SHIFT_REPEAT(213), - [197] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_item_repeat1, 2), SHIFT_REPEAT(212), - [200] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_item_repeat1, 2), SHIFT_REPEAT(211), - [203] = {.entry = {.count = 1, .reusable = true}}, SHIFT(121), - [205] = {.entry = {.count = 1, .reusable = true}}, SHIFT(117), - [207] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_item, 1), - [209] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_item, 1), - [211] = {.entry = {.count = 1, .reusable = false}}, SHIFT(162), - [213] = {.entry = {.count = 1, .reusable = false}}, SHIFT(248), - [215] = {.entry = {.count = 1, .reusable = false}}, SHIFT(231), - [217] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_table, 5), - [219] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_table, 5), - [221] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_index, 3), - [223] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_index, 3), - [225] = {.entry = {.count = 1, .reusable = true}}, SHIFT(113), - [227] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_math, 3), - [229] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_math, 3), - [231] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_index, 5), - [233] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_index, 5), - [235] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_logic, 3), - [237] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_logic, 3), - [239] = {.entry = {.count = 1, .reusable = true}}, SHIFT(112), - [241] = {.entry = {.count = 1, .reusable = false}}, SHIFT(181), - [243] = {.entry = {.count = 1, .reusable = true}}, SHIFT(180), - [245] = {.entry = {.count = 1, .reusable = false}}, SHIFT(180), - [247] = {.entry = {.count = 1, .reusable = true}}, SHIFT(181), - [249] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_integer, 2), - [251] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_integer, 2), - [253] = {.entry = {.count = 1, .reusable = false}}, SHIFT(252), - [255] = {.entry = {.count = 1, .reusable = true}}, SHIFT(89), - [257] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_integer, 1), - [259] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_integer, 1), - [261] = {.entry = {.count = 1, .reusable = false}}, SHIFT(260), - [263] = {.entry = {.count = 1, .reusable = false}}, SHIFT(48), - [265] = {.entry = {.count = 1, .reusable = true}}, SHIFT(155), - [267] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__expression_kind, 1), - [269] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__expression_kind, 1), - [271] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tool, 4), - [273] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tool, 4), - [275] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_map, 2), - [277] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_map, 2), - [279] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function, 6), - [281] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function, 6), - [283] = {.entry = {.count = 1, .reusable = false}}, SHIFT(132), - [285] = {.entry = {.count = 1, .reusable = true}}, SHIFT(132), - [287] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list, 2), - [289] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list, 2), - [291] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression, 1), - [293] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression, 1), - [295] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function, 7), - [297] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function, 7), - [299] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tool, 3), - [301] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tool, 3), - [303] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list, 3), - [305] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list, 3), - [307] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_call, 3), - [309] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_call, 3), - [311] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_map, 3), - [313] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_map, 3), - [315] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_float, 3), - [317] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_float, 3), - [319] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression, 3), - [321] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression, 3), - [323] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_boolean, 1), - [325] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_boolean, 1), - [327] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_call, 4), - [329] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_call, 4), - [331] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function, 4), - [333] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function, 4), - [335] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_float, 4), - [337] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_float, 4), - [339] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_value, 1), - [341] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_value, 1), - [343] = {.entry = {.count = 1, .reusable = true}}, SHIFT(52), - [345] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_insert, 4), - [347] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_insert, 4), - [349] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_select, 6), - [351] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_select, 6), - [353] = {.entry = {.count = 1, .reusable = true}}, SHIFT(22), - [355] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_statement, 1), - [357] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_statement, 1), - [359] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_select, 5), - [361] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_select, 5), - [363] = {.entry = {.count = 1, .reusable = true}}, SHIFT(18), - [365] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_list_repeat1, 1), - [367] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_list_repeat1, 1), - [369] = {.entry = {.count = 1, .reusable = true}}, SHIFT(179), - [371] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_else, 2), - [373] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_else, 2), - [375] = {.entry = {.count = 1, .reusable = true}}, SHIFT(87), - [377] = {.entry = {.count = 1, .reusable = false}}, SHIFT(253), - [379] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_else, 1), - [381] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_else, 1), - [383] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(48), - [386] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(2), - [389] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_list_repeat1, 2), - [391] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(41), - [394] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(241), - [397] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(60), - [400] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(56), - [403] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(70), - [406] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(193), - [409] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(204), - [412] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(238), - [415] = {.entry = {.count = 1, .reusable = true}}, SHIFT(47), - [417] = {.entry = {.count = 1, .reusable = true}}, SHIFT(57), - [419] = {.entry = {.count = 1, .reusable = true}}, SHIFT(51), - [421] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_if_else_repeat1, 2), - [423] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_if_else_repeat1, 2), - [425] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_if_else_repeat1, 2), SHIFT_REPEAT(87), - [428] = {.entry = {.count = 1, .reusable = true}}, SHIFT(43), - [430] = {.entry = {.count = 1, .reusable = true}}, SHIFT(50), - [432] = {.entry = {.count = 1, .reusable = true}}, SHIFT(156), - [434] = {.entry = {.count = 1, .reusable = true}}, SHIFT(152), - [436] = {.entry = {.count = 1, .reusable = true}}, SHIFT(150), - [438] = {.entry = {.count = 1, .reusable = true}}, SHIFT(160), - [440] = {.entry = {.count = 1, .reusable = true}}, SHIFT(146), - [442] = {.entry = {.count = 1, .reusable = false}}, SHIFT(157), - [444] = {.entry = {.count = 1, .reusable = false}}, SHIFT(257), - [446] = {.entry = {.count = 1, .reusable = false}}, SHIFT(262), - [448] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_else_if, 5), - [450] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_else_if, 5), + [3] = {.entry = {.count = 1, .reusable = false}}, SHIFT(52), + [5] = {.entry = {.count = 1, .reusable = true}}, SHIFT(34), + [7] = {.entry = {.count = 1, .reusable = true}}, SHIFT(109), + [9] = {.entry = {.count = 1, .reusable = true}}, SHIFT(8), + [11] = {.entry = {.count = 1, .reusable = false}}, SHIFT(56), + [13] = {.entry = {.count = 1, .reusable = true}}, SHIFT(61), + [15] = {.entry = {.count = 1, .reusable = true}}, SHIFT(60), + [17] = {.entry = {.count = 1, .reusable = false}}, SHIFT(59), + [19] = {.entry = {.count = 1, .reusable = true}}, SHIFT(78), + [21] = {.entry = {.count = 1, .reusable = false}}, SHIFT(213), + [23] = {.entry = {.count = 1, .reusable = false}}, SHIFT(267), + [25] = {.entry = {.count = 1, .reusable = false}}, SHIFT(136), + [27] = {.entry = {.count = 1, .reusable = false}}, SHIFT(135), + [29] = {.entry = {.count = 1, .reusable = false}}, SHIFT(133), + [31] = {.entry = {.count = 1, .reusable = false}}, SHIFT(266), + [33] = {.entry = {.count = 1, .reusable = false}}, SHIFT(265), + [35] = {.entry = {.count = 1, .reusable = false}}, SHIFT(113), + [37] = {.entry = {.count = 1, .reusable = false}}, SHIFT(262), + [39] = {.entry = {.count = 1, .reusable = false}}, SHIFT(258), + [41] = {.entry = {.count = 1, .reusable = false}}, SHIFT(257), + [43] = {.entry = {.count = 1, .reusable = false}}, SHIFT(256), + [45] = {.entry = {.count = 1, .reusable = false}}, SHIFT(255), + [47] = {.entry = {.count = 1, .reusable = false}}, SHIFT(254), + [49] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_root_repeat1, 2), + [51] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(52), + [54] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(34), + [57] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(109), + [60] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(8), + [63] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(56), + [66] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(61), + [69] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(60), + [72] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(59), + [75] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(78), + [78] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(213), + [81] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(267), + [84] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(136), + [87] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(135), + [90] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(133), + [93] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(266), + [96] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(265), + [99] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(113), + [102] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(262), + [105] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(258), + [108] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(257), + [111] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(256), + [114] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(255), + [117] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(254), + [120] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_root, 1), + [122] = {.entry = {.count = 1, .reusable = true}}, SHIFT(131), + [124] = {.entry = {.count = 1, .reusable = true}}, SHIFT(100), + [126] = {.entry = {.count = 1, .reusable = false}}, SHIFT(63), + [128] = {.entry = {.count = 1, .reusable = true}}, SHIFT(211), + [130] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6), + [132] = {.entry = {.count = 1, .reusable = false}}, SHIFT(164), + [134] = {.entry = {.count = 1, .reusable = true}}, SHIFT(163), + [136] = {.entry = {.count = 1, .reusable = true}}, SHIFT(162), + [138] = {.entry = {.count = 1, .reusable = false}}, SHIFT(161), + [140] = {.entry = {.count = 1, .reusable = true}}, SHIFT(74), + [142] = {.entry = {.count = 1, .reusable = false}}, SHIFT(212), + [144] = {.entry = {.count = 1, .reusable = false}}, SHIFT(260), + [146] = {.entry = {.count = 1, .reusable = false}}, SHIFT(82), + [148] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_statement_repeat1, 2), + [150] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_statement_repeat1, 2), SHIFT_REPEAT(52), + [153] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_statement_repeat1, 2), SHIFT_REPEAT(216), + [156] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_statement_repeat1, 2), SHIFT_REPEAT(109), + [159] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_statement_repeat1, 2), SHIFT_REPEAT(8), + [162] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_statement_repeat1, 2), SHIFT_REPEAT(56), + [165] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_statement_repeat1, 2), SHIFT_REPEAT(61), + [168] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_statement_repeat1, 2), SHIFT_REPEAT(60), + [171] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_statement_repeat1, 2), SHIFT_REPEAT(59), + [174] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_statement_repeat1, 2), SHIFT_REPEAT(78), + [177] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_statement_repeat1, 2), SHIFT_REPEAT(213), + [180] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_statement_repeat1, 2), SHIFT_REPEAT(267), + [183] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_statement_repeat1, 2), SHIFT_REPEAT(136), + [186] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_statement_repeat1, 2), SHIFT_REPEAT(135), + [189] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_statement_repeat1, 2), SHIFT_REPEAT(133), + [192] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_statement_repeat1, 2), SHIFT_REPEAT(266), + [195] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_statement_repeat1, 2), SHIFT_REPEAT(265), + [198] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_statement_repeat1, 2), SHIFT_REPEAT(113), + [201] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_statement_repeat1, 2), SHIFT_REPEAT(262), + [204] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_statement_repeat1, 2), SHIFT_REPEAT(258), + [207] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_statement_repeat1, 2), SHIFT_REPEAT(257), + [210] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_statement_repeat1, 2), SHIFT_REPEAT(256), + [213] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_statement_repeat1, 2), SHIFT_REPEAT(255), + [216] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_statement_repeat1, 2), SHIFT_REPEAT(254), + [219] = {.entry = {.count = 1, .reusable = false}}, SHIFT(64), + [221] = {.entry = {.count = 1, .reusable = false}}, SHIFT(84), + [223] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_statement, 1), + [225] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_statement, 1), + [227] = {.entry = {.count = 1, .reusable = true}}, SHIFT(216), + [229] = {.entry = {.count = 1, .reusable = false}}, SHIFT(170), + [231] = {.entry = {.count = 1, .reusable = false}}, SHIFT(261), + [233] = {.entry = {.count = 1, .reusable = false}}, SHIFT(243), + [235] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_index, 3), + [237] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_index, 3), + [239] = {.entry = {.count = 1, .reusable = true}}, SHIFT(132), + [241] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_table, 5), + [243] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_table, 5), + [245] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_logic, 3), + [247] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_logic, 3), + [249] = {.entry = {.count = 1, .reusable = true}}, SHIFT(105), + [251] = {.entry = {.count = 1, .reusable = false}}, SHIFT(195), + [253] = {.entry = {.count = 1, .reusable = true}}, SHIFT(194), + [255] = {.entry = {.count = 1, .reusable = false}}, SHIFT(194), + [257] = {.entry = {.count = 1, .reusable = true}}, SHIFT(195), + [259] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_math, 3), + [261] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_math, 3), + [263] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_index, 5), + [265] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_index, 5), + [267] = {.entry = {.count = 1, .reusable = true}}, SHIFT(108), + [269] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tool, 3), + [271] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tool, 3), + [273] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression, 3), + [275] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression, 3), + [277] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression, 1), + [279] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression, 1), + [281] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function, 6), + [283] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function, 6), + [285] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list, 2), + [287] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list, 2), + [289] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_call, 4), + [291] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_call, 4), + [293] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list, 3), + [295] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list, 3), + [297] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__expression_kind, 1), + [299] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__expression_kind, 1), + [301] = {.entry = {.count = 1, .reusable = false}}, SHIFT(143), + [303] = {.entry = {.count = 1, .reusable = true}}, SHIFT(143), + [305] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tool, 4), + [307] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tool, 4), + [309] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function, 4), + [311] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function, 4), + [313] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_call, 3), + [315] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_call, 3), + [317] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_integer, 1), + [319] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_integer, 1), + [321] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_map, 3), + [323] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_map, 3), + [325] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function, 7), + [327] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function, 7), + [329] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_boolean, 1), + [331] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_boolean, 1), + [333] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_value, 1), + [335] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_value, 1), + [337] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_float, 1), + [339] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_float, 1), + [341] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_select, 5), + [343] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_select, 5), + [345] = {.entry = {.count = 1, .reusable = true}}, SHIFT(13), + [347] = {.entry = {.count = 1, .reusable = false}}, SHIFT(47), + [349] = {.entry = {.count = 1, .reusable = true}}, SHIFT(166), + [351] = {.entry = {.count = 1, .reusable = true}}, SHIFT(55), + [353] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__statement_kind, 1), + [355] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__statement_kind, 1), + [357] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_select, 6), + [359] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_select, 6), + [361] = {.entry = {.count = 1, .reusable = true}}, SHIFT(10), + [363] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_insert, 4), + [365] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_insert, 4), + [367] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_else, 1), + [369] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_else, 1), + [371] = {.entry = {.count = 1, .reusable = true}}, SHIFT(141), + [373] = {.entry = {.count = 1, .reusable = false}}, SHIFT(246), + [375] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_else, 2), + [377] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_else, 2), + [379] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_if_else_repeat1, 2), + [381] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_if_else_repeat1, 2), + [383] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_if_else_repeat1, 2), SHIFT_REPEAT(141), + [386] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_list_repeat1, 1), + [388] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_list_repeat1, 1), + [390] = {.entry = {.count = 1, .reusable = true}}, SHIFT(192), + [392] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(47), + [395] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(216), + [398] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(8), + [401] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_list_repeat1, 2), + [403] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(56), + [406] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(61), + [409] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(60), + [412] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(59), + [415] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(78), + [418] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(213), + [421] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(267), + [424] = {.entry = {.count = 1, .reusable = true}}, SHIFT(167), + [426] = {.entry = {.count = 1, .reusable = true}}, SHIFT(158), + [428] = {.entry = {.count = 1, .reusable = true}}, SHIFT(50), + [430] = {.entry = {.count = 1, .reusable = true}}, SHIFT(53), + [432] = {.entry = {.count = 1, .reusable = true}}, SHIFT(154), + [434] = {.entry = {.count = 1, .reusable = true}}, SHIFT(49), + [436] = {.entry = {.count = 1, .reusable = true}}, SHIFT(51), + [438] = {.entry = {.count = 1, .reusable = true}}, SHIFT(156), + [440] = {.entry = {.count = 1, .reusable = false}}, SHIFT(160), + [442] = {.entry = {.count = 1, .reusable = true}}, SHIFT(140), + [444] = {.entry = {.count = 1, .reusable = true}}, SHIFT(157), + [446] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_else_if, 5), + [448] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_else_if, 5), + [450] = {.entry = {.count = 1, .reusable = true}}, SHIFT(45), [452] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if, 5), [454] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if, 5), - [456] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_else, 3), - [458] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_else, 3), - [460] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_async, 3), - [462] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_async, 3), - [464] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_select, 9), - [466] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_select, 9), - [468] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment, 3), - [470] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_assignment, 3), - [472] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_select, 8), - [474] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_select, 8), - [476] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_async, 4), - [478] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_async, 4), - [480] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_filter, 7), - [482] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_filter, 7), - [484] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_else, 4), - [486] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_else, 4), - [488] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_comment, 1), - [490] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_comment, 1), - [492] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_find, 7), - [494] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_find, 7), - [496] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_remove, 7), - [498] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_remove, 7), - [500] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_transform, 7), - [502] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_transform, 7), - [504] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for, 7), - [506] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for, 7), - [508] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while, 5), - [510] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_while, 5), - [512] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_assignment_operator, 1), - [514] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment_operator, 1), - [516] = {.entry = {.count = 1, .reusable = true}}, SHIFT(106), - [518] = {.entry = {.count = 1, .reusable = true}}, SHIFT(110), - [520] = {.entry = {.count = 1, .reusable = true}}, SHIFT(111), - [522] = {.entry = {.count = 1, .reusable = false}}, SHIFT(220), - [524] = {.entry = {.count = 1, .reusable = false}}, SHIFT(214), - [526] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_map_repeat1, 3), - [528] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7), - [530] = {.entry = {.count = 1, .reusable = true}}, SHIFT(15), - [532] = {.entry = {.count = 1, .reusable = true}}, SHIFT(19), - [534] = {.entry = {.count = 1, .reusable = true}}, SHIFT(20), - [536] = {.entry = {.count = 1, .reusable = true}}, SHIFT(9), - [538] = {.entry = {.count = 1, .reusable = true}}, SHIFT(8), - [540] = {.entry = {.count = 1, .reusable = true}}, SHIFT(26), - [542] = {.entry = {.count = 1, .reusable = true}}, SHIFT(27), - [544] = {.entry = {.count = 1, .reusable = true}}, SHIFT(153), - [546] = {.entry = {.count = 1, .reusable = true}}, SHIFT(55), - [548] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_list_repeat1, 2), - [550] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_math_operator, 1), - [552] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_math_operator, 1), - [554] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_logic_operator, 1), - [556] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_logic_operator, 1), - [558] = {.entry = {.count = 1, .reusable = true}}, SHIFT(191), - [560] = {.entry = {.count = 1, .reusable = true}}, SHIFT(232), - [562] = {.entry = {.count = 1, .reusable = true}}, SHIFT(217), - [564] = {.entry = {.count = 1, .reusable = true}}, SHIFT(250), - [566] = {.entry = {.count = 1, .reusable = true}}, SHIFT(259), - [568] = {.entry = {.count = 1, .reusable = true}}, SHIFT(53), - [570] = {.entry = {.count = 1, .reusable = true}}, SHIFT(145), - [572] = {.entry = {.count = 1, .reusable = true}}, SHIFT(83), - [574] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_function_repeat1, 2), SHIFT_REPEAT(191), - [577] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_function_repeat1, 2), - [579] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_map_repeat1, 2), SHIFT_REPEAT(259), - [582] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_map_repeat1, 2), - [584] = {.entry = {.count = 1, .reusable = true}}, SHIFT(242), - [586] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_function_repeat1, 1), - [588] = {.entry = {.count = 1, .reusable = true}}, SHIFT(203), - [590] = {.entry = {.count = 1, .reusable = true}}, SHIFT(154), - [592] = {.entry = {.count = 1, .reusable = true}}, SHIFT(44), - [594] = {.entry = {.count = 1, .reusable = true}}, SHIFT(108), - [596] = {.entry = {.count = 1, .reusable = true}}, SHIFT(251), - [598] = {.entry = {.count = 1, .reusable = true}}, SHIFT(225), - [600] = {.entry = {.count = 1, .reusable = true}}, SHIFT(233), - [602] = {.entry = {.count = 1, .reusable = true}}, SHIFT(88), - [604] = {.entry = {.count = 1, .reusable = true}}, SHIFT(115), - [606] = {.entry = {.count = 1, .reusable = true}}, SHIFT(223), - [608] = {.entry = {.count = 1, .reusable = true}}, SHIFT(17), - [610] = {.entry = {.count = 1, .reusable = true}}, SHIFT(190), - [612] = {.entry = {.count = 1, .reusable = true}}, SHIFT(16), - [614] = {.entry = {.count = 1, .reusable = true}}, SHIFT(184), - [616] = {.entry = {.count = 1, .reusable = true}}, SHIFT(104), - [618] = {.entry = {.count = 1, .reusable = true}}, SHIFT(123), - [620] = {.entry = {.count = 1, .reusable = true}}, SHIFT(141), - [622] = {.entry = {.count = 1, .reusable = true}}, SHIFT(11), - [624] = {.entry = {.count = 1, .reusable = true}}, SHIFT(234), - [626] = {.entry = {.count = 1, .reusable = true}}, SHIFT(182), - [628] = {.entry = {.count = 1, .reusable = true}}, SHIFT(151), - [630] = {.entry = {.count = 1, .reusable = true}}, SHIFT(208), - [632] = {.entry = {.count = 1, .reusable = true}}, SHIFT(95), - [634] = {.entry = {.count = 1, .reusable = true}}, SHIFT(12), - [636] = {.entry = {.count = 1, .reusable = true}}, SHIFT(237), - [638] = {.entry = {.count = 1, .reusable = true}}, SHIFT(239), - [640] = {.entry = {.count = 1, .reusable = true}}, SHIFT(149), - [642] = {.entry = {.count = 1, .reusable = true}}, SHIFT(148), - [644] = {.entry = {.count = 1, .reusable = true}}, SHIFT(118), - [646] = {.entry = {.count = 1, .reusable = true}}, SHIFT(81), - [648] = {.entry = {.count = 1, .reusable = true}}, SHIFT(240), - [650] = {.entry = {.count = 1, .reusable = true}}, SHIFT(82), - [652] = {.entry = {.count = 1, .reusable = true}}, SHIFT(147), - [654] = {.entry = {.count = 1, .reusable = true}}, SHIFT(161), - [656] = {.entry = {.count = 1, .reusable = true}}, SHIFT(109), - [658] = {.entry = {.count = 1, .reusable = true}}, SHIFT(130), - [660] = {.entry = {.count = 1, .reusable = true}}, SHIFT(243), - [662] = {.entry = {.count = 1, .reusable = true}}, SHIFT(216), - [664] = {.entry = {.count = 1, .reusable = true}}, SHIFT(114), - [666] = {.entry = {.count = 1, .reusable = true}}, SHIFT(105), - [668] = {.entry = {.count = 1, .reusable = true}}, SHIFT(107), - [670] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), - [672] = {.entry = {.count = 1, .reusable = true}}, SHIFT(45), - [674] = {.entry = {.count = 1, .reusable = true}}, SHIFT(103), - [676] = {.entry = {.count = 1, .reusable = true}}, SHIFT(205), - [678] = {.entry = {.count = 1, .reusable = true}}, SHIFT(102), - [680] = {.entry = {.count = 1, .reusable = true}}, SHIFT(101), - [682] = {.entry = {.count = 1, .reusable = true}}, SHIFT(37), - [684] = {.entry = {.count = 1, .reusable = true}}, SHIFT(21), - [686] = {.entry = {.count = 1, .reusable = true}}, SHIFT(100), - [688] = {.entry = {.count = 1, .reusable = true}}, SHIFT(58), - [690] = {.entry = {.count = 1, .reusable = true}}, SHIFT(94), - [692] = {.entry = {.count = 1, .reusable = true}}, SHIFT(49), - [694] = {.entry = {.count = 1, .reusable = true}}, SHIFT(201), - [696] = {.entry = {.count = 1, .reusable = true}}, SHIFT(200), - [698] = {.entry = {.count = 1, .reusable = true}}, SHIFT(129), - [700] = {.entry = {.count = 1, .reusable = true}}, SHIFT(14), - [702] = {.entry = {.count = 1, .reusable = true}}, SHIFT(13), - [704] = {.entry = {.count = 1, .reusable = true}}, SHIFT(59), - [706] = {.entry = {.count = 1, .reusable = true}}, SHIFT(25), - [708] = {.entry = {.count = 1, .reusable = true}}, SHIFT(128), - [710] = {.entry = {.count = 1, .reusable = true}}, SHIFT(122), - [712] = {.entry = {.count = 1, .reusable = true}}, SHIFT(126), - [714] = {.entry = {.count = 1, .reusable = true}}, SHIFT(207), - [716] = {.entry = {.count = 1, .reusable = true}}, SHIFT(127), - [718] = {.entry = {.count = 1, .reusable = true}}, SHIFT(93), - [720] = {.entry = {.count = 1, .reusable = true}}, SHIFT(54), - [722] = {.entry = {.count = 1, .reusable = true}}, SHIFT(120), - [724] = {.entry = {.count = 1, .reusable = true}}, SHIFT(202), + [456] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_match_repeat1, 2), SHIFT_REPEAT(160), + [459] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_repeat1, 2), SHIFT_REPEAT(211), + [462] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_match_repeat1, 2), + [464] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_repeat1, 2), SHIFT_REPEAT(6), + [467] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_match_repeat1, 2), SHIFT_REPEAT(164), + [470] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_repeat1, 2), SHIFT_REPEAT(163), + [473] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_repeat1, 2), SHIFT_REPEAT(162), + [476] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_match_repeat1, 2), SHIFT_REPEAT(161), + [479] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_repeat1, 2), SHIFT_REPEAT(74), + [482] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_match_repeat1, 2), SHIFT_REPEAT(212), + [485] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_match_repeat1, 2), SHIFT_REPEAT(260), + [488] = {.entry = {.count = 1, .reusable = false}}, SHIFT(270), + [490] = {.entry = {.count = 1, .reusable = false}}, SHIFT(275), + [492] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_async, 3), + [494] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_async, 3), + [496] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_else, 4), + [498] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_else, 4), + [500] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_else, 3), + [502] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_else, 3), + [504] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_comment, 1), + [506] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_comment, 1), + [508] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_select, 9), + [510] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_select, 9), + [512] = {.entry = {.count = 1, .reusable = false}}, SHIFT(189), + [514] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_reduce, 9), + [516] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_reduce, 9), + [518] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_select, 8), + [520] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_select, 8), + [522] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_filter, 8, .production_id = 2), + [524] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_filter, 8, .production_id = 2), + [526] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment, 3), + [528] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_assignment, 3), + [530] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_remove, 7), + [532] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_remove, 7), + [534] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_find, 7), + [536] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_find, 7), + [538] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_filter, 7, .production_id = 1), + [540] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_filter, 7, .production_id = 1), + [542] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_transform, 7), + [544] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_transform, 7), + [546] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for, 7), + [548] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for, 7), + [550] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_statement, 3), + [552] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_statement, 3), + [554] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_async, 4), + [556] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_async, 4), + [558] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match, 5), + [560] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_match, 5), + [562] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while, 5), + [564] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_while, 5), + [566] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_assignment_operator, 1), + [568] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment_operator, 1), + [570] = {.entry = {.count = 1, .reusable = true}}, SHIFT(129), + [572] = {.entry = {.count = 1, .reusable = true}}, SHIFT(102), + [574] = {.entry = {.count = 1, .reusable = true}}, SHIFT(98), + [576] = {.entry = {.count = 1, .reusable = true}}, SHIFT(273), + [578] = {.entry = {.count = 1, .reusable = true}}, SHIFT(27), + [580] = {.entry = {.count = 1, .reusable = true}}, SHIFT(25), + [582] = {.entry = {.count = 1, .reusable = true}}, SHIFT(11), + [584] = {.entry = {.count = 1, .reusable = true}}, SHIFT(29), + [586] = {.entry = {.count = 1, .reusable = true}}, SHIFT(28), + [588] = {.entry = {.count = 1, .reusable = true}}, SHIFT(31), + [590] = {.entry = {.count = 1, .reusable = true}}, SHIFT(23), + [592] = {.entry = {.count = 1, .reusable = true}}, SHIFT(14), + [594] = {.entry = {.count = 1, .reusable = true}}, SHIFT(15), + [596] = {.entry = {.count = 1, .reusable = true}}, SHIFT(26), + [598] = {.entry = {.count = 1, .reusable = true}}, SHIFT(33), + [600] = {.entry = {.count = 1, .reusable = true}}, SHIFT(87), + [602] = {.entry = {.count = 1, .reusable = false}}, SHIFT(92), + [604] = {.entry = {.count = 1, .reusable = true}}, SHIFT(46), + [606] = {.entry = {.count = 1, .reusable = true}}, SHIFT(159), + [608] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_list_repeat1, 2), + [610] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_match_repeat1, 3), + [612] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_match_repeat1, 3), + [614] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_math_operator, 1), + [616] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_math_operator, 1), + [618] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_logic_operator, 1), + [620] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_logic_operator, 1), + [622] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_function_repeat1, 2), SHIFT_REPEAT(205), + [625] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_function_repeat1, 2), + [627] = {.entry = {.count = 1, .reusable = true}}, SHIFT(205), + [629] = {.entry = {.count = 1, .reusable = true}}, SHIFT(263), + [631] = {.entry = {.count = 1, .reusable = true}}, SHIFT(223), + [633] = {.entry = {.count = 1, .reusable = true}}, SHIFT(242), + [635] = {.entry = {.count = 1, .reusable = true}}, SHIFT(120), + [637] = {.entry = {.count = 1, .reusable = true}}, SHIFT(264), + [639] = {.entry = {.count = 1, .reusable = true}}, SHIFT(116), + [641] = {.entry = {.count = 1, .reusable = true}}, SHIFT(139), + [643] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_function_repeat1, 1), + [645] = {.entry = {.count = 1, .reusable = true}}, SHIFT(215), + [647] = {.entry = {.count = 1, .reusable = true}}, SHIFT(110), + [649] = {.entry = {.count = 1, .reusable = true}}, SHIFT(271), + [651] = {.entry = {.count = 1, .reusable = true}}, SHIFT(220), + [653] = {.entry = {.count = 1, .reusable = true}}, SHIFT(235), + [655] = {.entry = {.count = 1, .reusable = true}}, SHIFT(237), + [657] = {.entry = {.count = 1, .reusable = true}}, SHIFT(196), + [659] = {.entry = {.count = 1, .reusable = true}}, SHIFT(32), + [661] = {.entry = {.count = 1, .reusable = true}}, SHIFT(198), + [663] = {.entry = {.count = 1, .reusable = true}}, SHIFT(20), + [665] = {.entry = {.count = 1, .reusable = true}}, SHIFT(207), + [667] = {.entry = {.count = 1, .reusable = true}}, SHIFT(111), + [669] = {.entry = {.count = 1, .reusable = true}}, SHIFT(83), + [671] = {.entry = {.count = 1, .reusable = true}}, SHIFT(106), + [673] = {.entry = {.count = 1, .reusable = true}}, SHIFT(104), + [675] = {.entry = {.count = 1, .reusable = true}}, SHIFT(88), + [677] = {.entry = {.count = 1, .reusable = true}}, SHIFT(274), + [679] = {.entry = {.count = 1, .reusable = true}}, SHIFT(101), + [681] = {.entry = {.count = 1, .reusable = true}}, SHIFT(95), + [683] = {.entry = {.count = 1, .reusable = true}}, SHIFT(94), + [685] = {.entry = {.count = 1, .reusable = true}}, SHIFT(48), + [687] = {.entry = {.count = 1, .reusable = true}}, SHIFT(93), + [689] = {.entry = {.count = 1, .reusable = true}}, SHIFT(57), + [691] = {.entry = {.count = 1, .reusable = true}}, SHIFT(91), + [693] = {.entry = {.count = 1, .reusable = true}}, SHIFT(90), + [695] = {.entry = {.count = 1, .reusable = true}}, SHIFT(169), + [697] = {.entry = {.count = 1, .reusable = true}}, SHIFT(12), + [699] = {.entry = {.count = 1, .reusable = true}}, SHIFT(121), + [701] = {.entry = {.count = 1, .reusable = true}}, SHIFT(138), + [703] = {.entry = {.count = 1, .reusable = true}}, SHIFT(155), + [705] = {.entry = {.count = 1, .reusable = true}}, SHIFT(168), + [707] = {.entry = {.count = 1, .reusable = true}}, SHIFT(122), + [709] = {.entry = {.count = 1, .reusable = true}}, SHIFT(123), + [711] = {.entry = {.count = 1, .reusable = true}}, SHIFT(128), + [713] = {.entry = {.count = 1, .reusable = true}}, SHIFT(230), + [715] = {.entry = {.count = 1, .reusable = true}}, SHIFT(115), + [717] = {.entry = {.count = 1, .reusable = true}}, SHIFT(142), + [719] = {.entry = {.count = 1, .reusable = true}}, SHIFT(18), + [721] = {.entry = {.count = 1, .reusable = true}}, SHIFT(117), + [723] = {.entry = {.count = 1, .reusable = true}}, SHIFT(125), + [725] = {.entry = {.count = 1, .reusable = true}}, SHIFT(114), + [727] = {.entry = {.count = 1, .reusable = true}}, SHIFT(126), + [729] = {.entry = {.count = 1, .reusable = true}}, SHIFT(127), + [731] = {.entry = {.count = 1, .reusable = true}}, SHIFT(165), + [733] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), + [735] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5), + [737] = {.entry = {.count = 1, .reusable = true}}, SHIFT(224), + [739] = {.entry = {.count = 1, .reusable = true}}, SHIFT(200), + [741] = {.entry = {.count = 1, .reusable = true}}, SHIFT(225), + [743] = {.entry = {.count = 1, .reusable = true}}, SHIFT(227), + [745] = {.entry = {.count = 1, .reusable = true}}, SHIFT(85), + [747] = {.entry = {.count = 1, .reusable = true}}, SHIFT(214), + [749] = {.entry = {.count = 1, .reusable = true}}, SHIFT(208), + [751] = {.entry = {.count = 1, .reusable = true}}, SHIFT(228), + [753] = {.entry = {.count = 1, .reusable = true}}, SHIFT(30), + [755] = {.entry = {.count = 1, .reusable = true}}, SHIFT(24), + [757] = {.entry = {.count = 1, .reusable = true}}, SHIFT(232), + [759] = {.entry = {.count = 1, .reusable = true}}, SHIFT(233), + [761] = {.entry = {.count = 1, .reusable = true}}, SHIFT(217), + [763] = {.entry = {.count = 1, .reusable = true}}, SHIFT(112), + [765] = {.entry = {.count = 1, .reusable = true}}, SHIFT(54), + [767] = {.entry = {.count = 1, .reusable = true}}, SHIFT(218), + [769] = {.entry = {.count = 1, .reusable = true}}, SHIFT(17), + [771] = {.entry = {.count = 1, .reusable = true}}, SHIFT(58), + [773] = {.entry = {.count = 1, .reusable = true}}, SHIFT(124), + [775] = {.entry = {.count = 1, .reusable = true}}, SHIFT(222), + [777] = {.entry = {.count = 1, .reusable = true}}, SHIFT(219), }; #ifdef __cplusplus @@ -11213,6 +12274,9 @@ extern const TSLanguage *tree_sitter_dust(void) { .small_parse_table_map = ts_small_parse_table_map, .parse_actions = ts_parse_actions, .symbol_names = ts_symbol_names, + .field_names = ts_field_names, + .field_map_slices = ts_field_map_slices, + .field_map_entries = ts_field_map_entries, .symbol_metadata = ts_symbol_metadata, .public_symbol_map = ts_symbol_map, .alias_map = ts_non_terminal_alias_map,