From 10564a0a6ad350b6246ab467d2d55590a06d8624 Mon Sep 17 00:00:00 2001 From: Jeff Date: Fri, 22 Sep 2023 06:38:25 -0400 Subject: [PATCH] Update grammar and tests --- corpus/tests.txt | 122 ++-- grammar.js | 55 +- src/grammar.json | 145 ++-- src/node-types.json | 108 ++- src/parser.c | 1686 +++++++++++++++++++++++-------------------- 5 files changed, 1069 insertions(+), 1047 deletions(-) diff --git a/corpus/tests.txt b/corpus/tests.txt index 154af2f..c66bcc8 100644 --- a/corpus/tests.txt +++ b/corpus/tests.txt @@ -4,15 +4,13 @@ Comments # x = 1; # unassigned_variable -x # xyz +#xyz --- -(source_file +(source (comment) (comment) - (expression - (identifier)) (comment)) ================== @@ -28,19 +26,13 @@ x.x --- -(source_file - (expression - (identifier)) - (expression - (identifier)) - (expression - (identifier)) - (expression - (identifier)) - (expression - (identifier)) - (expression - (identifier))) +(source + (identifier) + (identifier) + (identifier) + (identifier) + (identifier) + (identifier)) ================== Operators @@ -50,56 +42,58 @@ x = y + y; --- -(source_file - (expression - (identifier) - (operator) - (expression - (identifier) - (operator) - (expression - (identifier)))) - (chain)) +(source + (identifier) + (operator) + (identifier) + (operator) + (identifier) + (operator)) ================== String ================== "string" +'string' --- -(source_file - (expression - (value - (string)))) +(source + (value + (string)) + (value + (string))) ================== Integer ================== 1 +123 --- -(source_file - (expression - (value - (integer)))) +(source + (value + (integer)) + (value + (integer))) ================== Float ================== 1.0 +123.123 --- -(source_file - (expression - (value - (float)))) - +(source + (value + (float)) + (value + (float))) ================== List @@ -109,16 +103,13 @@ List --- -(source_file - (expression - (value - (list - (expression - (value - (integer))) - (expression - (value - (integer))))))) +(source + (value + (list + (value + (integer)) + (value + (integer))))) ================== Empty @@ -128,10 +119,9 @@ Empty --- -(source_file - (expression - (value - (empty)))) +(source + (value + (empty))) ================== Tool @@ -141,13 +131,11 @@ random_boolean(); --- -(source_file - (expression - (tool)) - (expression - (value - (empty))) - (chain)) +(source + (tool) + (value + (empty)) + (operator)) ================== Boolean @@ -157,10 +145,8 @@ true false --- -(source_file - (expression - (value - (boolean))) - (expression - (value - (boolean)))) +(source + (value + (boolean)) + (value + (boolean))) diff --git a/grammar.js b/grammar.js index 027c6f2..b640a28 100644 --- a/grammar.js +++ b/grammar.js @@ -2,19 +2,17 @@ module.exports = grammar({ name: 'dust', rules: { - source_file: $ => repeat(choice( - $.comment, - $.expression, - $.yield, - $.chain + source: $ => repeat(choice( + $.comment, + $.identifier, + $.value, + $.tool, + $.operator, )), - expression: $ => choice( - prec(2, $.value), - prec(1, $.identifier), - $.tool, - seq($.identifier, $.operator, $.expression), - ), + comment: $ => seq('#', /.*/), + + identifier: $ => /[a-zA-Z|_|.]+(_[a-zA-Z]+)*/, value: $ => choice( $.integer, @@ -23,15 +21,16 @@ module.exports = grammar({ $.list, $.empty, $.boolean, + $.function, + ), + + tool: $ => choice( + "random", + "random_boolean", + "random_integer", + "random_string", + "random_float", ), - - comment: $ => /(#)(.+?)([\n\r])/, - - yield: $ => "->", - - chain: $ => ";", - - identifier: $ => /[a-zA-Z|_|.]+(_[a-zA-Z]+)*/, operator: $ => choice( '=', @@ -39,24 +38,18 @@ module.exports = grammar({ '+', '/', '|', - '&' - ), - - tool: $ => choice( - "random", - "random_boolean", - "random_integer", - "random_string", - "random_float" + '&', + ';', + "->", ), float: $ => /\d+\.\d*/, integer: $ => /\d+/, - string: $ => /"(.*?)\"/, + string: $ => /("|')(.*?)("|')/, - function: $ => /'(.*?)\'/, + function: $ => /{(.*?)}/, empty: $ => "()", @@ -67,7 +60,7 @@ module.exports = grammar({ list: $ => seq( '(', - repeat1(seq($.expression, optional(','))), + repeat1(seq($.value, optional(','))), ')' ), } diff --git a/src/grammar.json b/src/grammar.json index 85084c7..e962a31 100644 --- a/src/grammar.json +++ b/src/grammar.json @@ -1,7 +1,7 @@ { "name": "dust", "rules": { - "source_file": { + "source": { "type": "REPEAT", "content": { "type": "CHOICE", @@ -12,61 +12,40 @@ }, { "type": "SYMBOL", - "name": "expression" + "name": "identifier" }, { "type": "SYMBOL", - "name": "yield" + "name": "value" }, { "type": "SYMBOL", - "name": "chain" + "name": "tool" + }, + { + "type": "SYMBOL", + "name": "operator" } ] } }, - "expression": { - "type": "CHOICE", + "comment": { + "type": "SEQ", "members": [ { - "type": "PREC", - "value": 2, - "content": { - "type": "SYMBOL", - "name": "value" - } + "type": "STRING", + "value": "#" }, { - "type": "PREC", - "value": 1, - "content": { - "type": "SYMBOL", - "name": "identifier" - } - }, - { - "type": "SYMBOL", - "name": "tool" - }, - { - "type": "SEQ", - "members": [ - { - "type": "SYMBOL", - "name": "identifier" - }, - { - "type": "SYMBOL", - "name": "operator" - }, - { - "type": "SYMBOL", - "name": "expression" - } - ] + "type": "PATTERN", + "value": ".*" } ] }, + "identifier": { + "type": "PATTERN", + "value": "[a-zA-Z|_|.]+(_[a-zA-Z]+)*" + }, "value": { "type": "CHOICE", "members": [ @@ -93,51 +72,10 @@ { "type": "SYMBOL", "name": "boolean" - } - ] - }, - "comment": { - "type": "PATTERN", - "value": "(#)(.+?)([\\n\\r])" - }, - "yield": { - "type": "STRING", - "value": "->" - }, - "chain": { - "type": "STRING", - "value": ";" - }, - "identifier": { - "type": "PATTERN", - "value": "[a-zA-Z|_|.]+(_[a-zA-Z]+)*" - }, - "operator": { - "type": "CHOICE", - "members": [ - { - "type": "STRING", - "value": "=" }, { - "type": "STRING", - "value": "-" - }, - { - "type": "STRING", - "value": "+" - }, - { - "type": "STRING", - "value": "/" - }, - { - "type": "STRING", - "value": "|" - }, - { - "type": "STRING", - "value": "&" + "type": "SYMBOL", + "name": "function" } ] }, @@ -166,6 +104,43 @@ } ] }, + "operator": { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "=" + }, + { + "type": "STRING", + "value": "-" + }, + { + "type": "STRING", + "value": "+" + }, + { + "type": "STRING", + "value": "/" + }, + { + "type": "STRING", + "value": "|" + }, + { + "type": "STRING", + "value": "&" + }, + { + "type": "STRING", + "value": ";" + }, + { + "type": "STRING", + "value": "->" + } + ] + }, "float": { "type": "PATTERN", "value": "\\d+\\.\\d*" @@ -176,11 +151,11 @@ }, "string": { "type": "PATTERN", - "value": "\"(.*?)\\\"" + "value": "(\"|')(.*?)(\"|')" }, "function": { "type": "PATTERN", - "value": "'(.*?)\\'" + "value": "{(.*?)}" }, "empty": { "type": "STRING", @@ -213,7 +188,7 @@ "members": [ { "type": "SYMBOL", - "name": "expression" + "name": "value" }, { "type": "CHOICE", diff --git a/src/node-types.json b/src/node-types.json index 95bb999..571f1ef 100644 --- a/src/node-types.json +++ b/src/node-types.json @@ -5,7 +5,12 @@ "fields": {} }, { - "type": "expression", + "type": "comment", + "named": true, + "fields": {} + }, + { + "type": "list", "named": true, "fields": {}, "children": { @@ -13,7 +18,27 @@ "required": true, "types": [ { - "type": "expression", + "type": "value", + "named": true + } + ] + } + }, + { + "type": "operator", + "named": true, + "fields": {} + }, + { + "type": "source", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": false, + "types": [ + { + "type": "comment", "named": true }, { @@ -35,53 +60,6 @@ ] } }, - { - "type": "list", - "named": true, - "fields": {}, - "children": { - "multiple": true, - "required": true, - "types": [ - { - "type": "expression", - "named": true - } - ] - } - }, - { - "type": "operator", - "named": true, - "fields": {} - }, - { - "type": "source_file", - "named": true, - "fields": {}, - "children": { - "multiple": true, - "required": false, - "types": [ - { - "type": "chain", - "named": true - }, - { - "type": "comment", - "named": true - }, - { - "type": "expression", - "named": true - }, - { - "type": "yield", - "named": true - } - ] - } - }, { "type": "tool", "named": true, @@ -107,6 +85,10 @@ "type": "float", "named": true }, + { + "type": "function", + "named": true + }, { "type": "integer", "named": true @@ -122,6 +104,10 @@ ] } }, + { + "type": "#", + "named": false + }, { "type": "&", "named": false @@ -146,22 +132,22 @@ "type": "-", "named": false }, + { + "type": "->", + "named": false + }, { "type": "/", "named": false }, + { + "type": ";", + "named": false + }, { "type": "=", "named": false }, - { - "type": "chain", - "named": true - }, - { - "type": "comment", - "named": true - }, { "type": "empty", "named": true @@ -174,6 +160,10 @@ "type": "float", "named": true }, + { + "type": "function", + "named": true + }, { "type": "identifier", "named": true @@ -210,10 +200,6 @@ "type": "true", "named": false }, - { - "type": "yield", - "named": true - }, { "type": "|", "named": false diff --git a/src/parser.c b/src/parser.c index 6311dce..8c45941 100644 --- a/src/parser.c +++ b/src/parser.c @@ -6,70 +6,72 @@ #endif #define LANGUAGE_VERSION 14 -#define STATE_COUNT 20 -#define LARGE_STATE_COUNT 16 -#define SYMBOL_COUNT 35 +#define STATE_COUNT 22 +#define LARGE_STATE_COUNT 10 +#define SYMBOL_COUNT 36 #define ALIAS_COUNT 0 -#define TOKEN_COUNT 26 +#define TOKEN_COUNT 27 #define EXTERNAL_TOKEN_COUNT 0 #define FIELD_COUNT 0 #define MAX_ALIAS_SEQUENCE_LENGTH 3 #define PRODUCTION_ID_COUNT 1 enum { - sym_comment = 1, - sym_yield = 2, - sym_chain = 3, - sym_identifier = 4, - anon_sym_EQ = 5, - anon_sym_DASH = 6, - anon_sym_PLUS = 7, - anon_sym_SLASH = 8, - anon_sym_PIPE = 9, - anon_sym_AMP = 10, - anon_sym_random = 11, - anon_sym_random_boolean = 12, - anon_sym_random_integer = 13, - anon_sym_random_string = 14, - anon_sym_random_float = 15, - sym_float = 16, - sym_integer = 17, - sym_string = 18, - sym_function = 19, - sym_empty = 20, - anon_sym_true = 21, - anon_sym_false = 22, - anon_sym_LPAREN = 23, - anon_sym_COMMA = 24, - anon_sym_RPAREN = 25, - sym_source_file = 26, - sym_expression = 27, - sym_value = 28, - sym_operator = 29, + anon_sym_POUND = 1, + aux_sym_comment_token1 = 2, + sym_identifier = 3, + anon_sym_random = 4, + anon_sym_random_boolean = 5, + anon_sym_random_integer = 6, + anon_sym_random_string = 7, + anon_sym_random_float = 8, + anon_sym_EQ = 9, + anon_sym_DASH = 10, + anon_sym_PLUS = 11, + anon_sym_SLASH = 12, + anon_sym_PIPE = 13, + anon_sym_AMP = 14, + anon_sym_SEMI = 15, + anon_sym_DASH_GT = 16, + sym_float = 17, + sym_integer = 18, + sym_string = 19, + sym_function = 20, + sym_empty = 21, + anon_sym_true = 22, + anon_sym_false = 23, + anon_sym_LPAREN = 24, + anon_sym_COMMA = 25, + anon_sym_RPAREN = 26, + sym_source = 27, + sym_comment = 28, + sym_value = 29, sym_tool = 30, - sym_boolean = 31, - sym_list = 32, - aux_sym_source_file_repeat1 = 33, - aux_sym_list_repeat1 = 34, + sym_operator = 31, + sym_boolean = 32, + sym_list = 33, + aux_sym_source_repeat1 = 34, + aux_sym_list_repeat1 = 35, }; static const char * const ts_symbol_names[] = { [ts_builtin_sym_end] = "end", - [sym_comment] = "comment", - [sym_yield] = "yield", - [sym_chain] = "chain", + [anon_sym_POUND] = "#", + [aux_sym_comment_token1] = "comment_token1", [sym_identifier] = "identifier", + [anon_sym_random] = "random", + [anon_sym_random_boolean] = "random_boolean", + [anon_sym_random_integer] = "random_integer", + [anon_sym_random_string] = "random_string", + [anon_sym_random_float] = "random_float", [anon_sym_EQ] = "=", [anon_sym_DASH] = "-", [anon_sym_PLUS] = "+", [anon_sym_SLASH] = "/", [anon_sym_PIPE] = "|", [anon_sym_AMP] = "&", - [anon_sym_random] = "random", - [anon_sym_random_boolean] = "random_boolean", - [anon_sym_random_integer] = "random_integer", - [anon_sym_random_string] = "random_string", - [anon_sym_random_float] = "random_float", + [anon_sym_SEMI] = ";", + [anon_sym_DASH_GT] = "->", [sym_float] = "float", [sym_integer] = "integer", [sym_string] = "string", @@ -80,34 +82,35 @@ static const char * const ts_symbol_names[] = { [anon_sym_LPAREN] = "(", [anon_sym_COMMA] = ",", [anon_sym_RPAREN] = ")", - [sym_source_file] = "source_file", - [sym_expression] = "expression", + [sym_source] = "source", + [sym_comment] = "comment", [sym_value] = "value", - [sym_operator] = "operator", [sym_tool] = "tool", + [sym_operator] = "operator", [sym_boolean] = "boolean", [sym_list] = "list", - [aux_sym_source_file_repeat1] = "source_file_repeat1", + [aux_sym_source_repeat1] = "source_repeat1", [aux_sym_list_repeat1] = "list_repeat1", }; static const TSSymbol ts_symbol_map[] = { [ts_builtin_sym_end] = ts_builtin_sym_end, - [sym_comment] = sym_comment, - [sym_yield] = sym_yield, - [sym_chain] = sym_chain, + [anon_sym_POUND] = anon_sym_POUND, + [aux_sym_comment_token1] = aux_sym_comment_token1, [sym_identifier] = sym_identifier, + [anon_sym_random] = anon_sym_random, + [anon_sym_random_boolean] = anon_sym_random_boolean, + [anon_sym_random_integer] = anon_sym_random_integer, + [anon_sym_random_string] = anon_sym_random_string, + [anon_sym_random_float] = anon_sym_random_float, [anon_sym_EQ] = anon_sym_EQ, [anon_sym_DASH] = anon_sym_DASH, [anon_sym_PLUS] = anon_sym_PLUS, [anon_sym_SLASH] = anon_sym_SLASH, [anon_sym_PIPE] = anon_sym_PIPE, [anon_sym_AMP] = anon_sym_AMP, - [anon_sym_random] = anon_sym_random, - [anon_sym_random_boolean] = anon_sym_random_boolean, - [anon_sym_random_integer] = anon_sym_random_integer, - [anon_sym_random_string] = anon_sym_random_string, - [anon_sym_random_float] = anon_sym_random_float, + [anon_sym_SEMI] = anon_sym_SEMI, + [anon_sym_DASH_GT] = anon_sym_DASH_GT, [sym_float] = sym_float, [sym_integer] = sym_integer, [sym_string] = sym_string, @@ -118,14 +121,14 @@ static const TSSymbol ts_symbol_map[] = { [anon_sym_LPAREN] = anon_sym_LPAREN, [anon_sym_COMMA] = anon_sym_COMMA, [anon_sym_RPAREN] = anon_sym_RPAREN, - [sym_source_file] = sym_source_file, - [sym_expression] = sym_expression, + [sym_source] = sym_source, + [sym_comment] = sym_comment, [sym_value] = sym_value, - [sym_operator] = sym_operator, [sym_tool] = sym_tool, + [sym_operator] = sym_operator, [sym_boolean] = sym_boolean, [sym_list] = sym_list, - [aux_sym_source_file_repeat1] = aux_sym_source_file_repeat1, + [aux_sym_source_repeat1] = aux_sym_source_repeat1, [aux_sym_list_repeat1] = aux_sym_list_repeat1, }; @@ -134,22 +137,38 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = false, .named = true, }, - [sym_comment] = { + [anon_sym_POUND] = { .visible = true, - .named = true, + .named = false, }, - [sym_yield] = { - .visible = true, - .named = true, - }, - [sym_chain] = { - .visible = true, - .named = true, + [aux_sym_comment_token1] = { + .visible = false, + .named = false, }, [sym_identifier] = { .visible = true, .named = true, }, + [anon_sym_random] = { + .visible = true, + .named = false, + }, + [anon_sym_random_boolean] = { + .visible = true, + .named = false, + }, + [anon_sym_random_integer] = { + .visible = true, + .named = false, + }, + [anon_sym_random_string] = { + .visible = true, + .named = false, + }, + [anon_sym_random_float] = { + .visible = true, + .named = false, + }, [anon_sym_EQ] = { .visible = true, .named = false, @@ -174,23 +193,11 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = false, }, - [anon_sym_random] = { + [anon_sym_SEMI] = { .visible = true, .named = false, }, - [anon_sym_random_boolean] = { - .visible = true, - .named = false, - }, - [anon_sym_random_integer] = { - .visible = true, - .named = false, - }, - [anon_sym_random_string] = { - .visible = true, - .named = false, - }, - [anon_sym_random_float] = { + [anon_sym_DASH_GT] = { .visible = true, .named = false, }, @@ -234,11 +241,11 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = false, }, - [sym_source_file] = { + [sym_source] = { .visible = true, .named = true, }, - [sym_expression] = { + [sym_comment] = { .visible = true, .named = true, }, @@ -246,11 +253,11 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = true, }, - [sym_operator] = { + [sym_tool] = { .visible = true, .named = true, }, - [sym_tool] = { + [sym_operator] = { .visible = true, .named = true, }, @@ -262,7 +269,7 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = true, }, - [aux_sym_source_file_repeat1] = { + [aux_sym_source_repeat1] = { .visible = false, .named = false, }, @@ -293,14 +300,16 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [9] = 9, [10] = 10, [11] = 11, - [12] = 12, + [12] = 10, [13] = 13, - [14] = 14, + [14] = 13, [15] = 15, - [16] = 16, - [17] = 17, - [18] = 18, + [16] = 5, + [17] = 6, + [18] = 9, [19] = 19, + [20] = 20, + [21] = 21, }; static bool ts_lex(TSLexer *lexer, TSStateId state) { @@ -308,533 +317,550 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { eof = lexer->eof(lexer); switch (state) { case 0: - if (eof) ADVANCE(7); - if (lookahead == '"') ADVANCE(2); - if (lookahead == '#') ADVANCE(5); - if (lookahead == '&') ADVANCE(53); - if (lookahead == '\'') ADVANCE(3); - if (lookahead == '(') ADVANCE(66); - if (lookahead == ')') ADVANCE(68); - if (lookahead == '+') ADVANCE(50); - if (lookahead == ',') ADVANCE(67); - if (lookahead == '-') ADVANCE(49); - if (lookahead == '/') ADVANCE(51); - if (lookahead == ';') ADVANCE(11); - if (lookahead == '=') ADVANCE(48); - if (lookahead == 'f') ADVANCE(12); - if (lookahead == 'r') ADVANCE(13); - if (lookahead == 't') ADVANCE(38); - if (lookahead == '|') ADVANCE(52); + if (eof) ADVANCE(11); + if (lookahead == '"' || + lookahead == '\'') ADVANCE(10); + if (lookahead == '#') ADVANCE(12); + if (lookahead == '&') ADVANCE(61); + if (lookahead == '(') ADVANCE(73); + if (lookahead == ')') ADVANCE(75); + if (lookahead == '+') ADVANCE(58); + if (lookahead == ',') ADVANCE(74); + if (lookahead == '-') ADVANCE(57); + if (lookahead == '/') ADVANCE(59); + if (lookahead == ';') ADVANCE(62); + if (lookahead == '=') ADVANCE(56); + if (lookahead == 'f') ADVANCE(15); + if (lookahead == 'r') ADVANCE(16); + if (lookahead == 't') ADVANCE(41); + if (lookahead == '{') ADVANCE(8); + if (lookahead == '|') ADVANCE(60); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(0) - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(60); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(65); if (lookahead == '.' || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(47); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(50); END_STATE(); case 1: - if (lookahead == '\n') ADVANCE(8); - if (lookahead == '\r') ADVANCE(9); - if (lookahead != 0) ADVANCE(1); + if (lookahead == 'a') ADVANCE(4); END_STATE(); case 2: - if (lookahead == '"') ADVANCE(61); - if (lookahead != 0 && - lookahead != '\n') ADVANCE(2); + if (lookahead == 'e') ADVANCE(69); END_STATE(); case 3: - if (lookahead == '\'') ADVANCE(62); - if (lookahead != 0 && - lookahead != '\n') ADVANCE(3); + if (lookahead == 'e') ADVANCE(71); END_STATE(); case 4: - if (lookahead == '>') ADVANCE(10); + if (lookahead == 'l') ADVANCE(6); END_STATE(); case 5: - if (lookahead != 0 && - lookahead != '\n') ADVANCE(1); + if (lookahead == 'r') ADVANCE(7); END_STATE(); case 6: - if (eof) ADVANCE(7); - if (lookahead == '"') ADVANCE(2); - if (lookahead == '#') ADVANCE(5); - if (lookahead == '(') ADVANCE(66); - if (lookahead == ')') ADVANCE(68); - if (lookahead == ',') ADVANCE(67); - if (lookahead == '-') ADVANCE(4); - if (lookahead == ';') ADVANCE(11); - if (lookahead == 'f') ADVANCE(12); - if (lookahead == 'r') ADVANCE(13); - if (lookahead == 't') ADVANCE(38); + if (lookahead == 's') ADVANCE(3); + END_STATE(); + case 7: + if (lookahead == 'u') ADVANCE(2); + END_STATE(); + case 8: + if (lookahead == '}') ADVANCE(67); + if (lookahead != 0 && + lookahead != '\n') ADVANCE(8); + END_STATE(); + case 9: + if (lookahead == '"' || + lookahead == '\'') ADVANCE(10); + if (lookahead == '(') ADVANCE(73); + if (lookahead == ')') ADVANCE(75); + if (lookahead == ',') ADVANCE(74); + if (lookahead == 'f') ADVANCE(1); + if (lookahead == 't') ADVANCE(5); + if (lookahead == '{') ADVANCE(8); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || - lookahead == ' ') SKIP(6) - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(60); - if (lookahead == '.' || - ('A' <= lookahead && lookahead <= 'Z') || - lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z') || - lookahead == '|') ADVANCE(47); - END_STATE(); - case 7: - ACCEPT_TOKEN(ts_builtin_sym_end); - END_STATE(); - case 8: - ACCEPT_TOKEN(sym_comment); - END_STATE(); - case 9: - ACCEPT_TOKEN(sym_comment); - if (lookahead == '\n') ADVANCE(8); - if (lookahead == '\r') ADVANCE(9); - if (lookahead != 0) ADVANCE(1); + lookahead == ' ') SKIP(9) + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(65); END_STATE(); case 10: - ACCEPT_TOKEN(sym_yield); + if (lookahead == '"' || + lookahead == '\'') ADVANCE(66); + if (lookahead != 0 && + lookahead != '\n') ADVANCE(10); END_STATE(); case 11: - ACCEPT_TOKEN(sym_chain); + ACCEPT_TOKEN(ts_builtin_sym_end); END_STATE(); case 12: - ACCEPT_TOKEN(sym_identifier); - if (lookahead == '_') ADVANCE(46); - if (lookahead == 'a') ADVANCE(26); - if (lookahead == '.' || - ('A' <= lookahead && lookahead <= 'Z') || - ('b' <= lookahead && lookahead <= 'z') || - lookahead == '|') ADVANCE(47); + ACCEPT_TOKEN(anon_sym_POUND); END_STATE(); case 13: - ACCEPT_TOKEN(sym_identifier); - if (lookahead == '_') ADVANCE(46); - if (lookahead == 'a') ADVANCE(30); - if (lookahead == '.' || - ('A' <= lookahead && lookahead <= 'Z') || - ('b' <= lookahead && lookahead <= 'z') || - lookahead == '|') ADVANCE(47); + ACCEPT_TOKEN(aux_sym_comment_token1); + if (lookahead == '\t' || + lookahead == '\r' || + lookahead == ' ') ADVANCE(13); + if (lookahead != 0 && + lookahead != '\n') ADVANCE(14); END_STATE(); case 14: - ACCEPT_TOKEN(sym_identifier); - if (lookahead == '_') ADVANCE(46); - if (lookahead == 'a') ADVANCE(31); - if (lookahead == '.' || - lookahead == '|') ADVANCE(47); - if (('A' <= lookahead && lookahead <= 'Z') || - ('b' <= lookahead && lookahead <= 'z')) ADVANCE(46); + ACCEPT_TOKEN(aux_sym_comment_token1); + if (lookahead != 0 && + lookahead != '\n') ADVANCE(14); END_STATE(); case 15: ACCEPT_TOKEN(sym_identifier); - if (lookahead == '_') ADVANCE(46); - if (lookahead == 'a') ADVANCE(44); + if (lookahead == '_') ADVANCE(49); + if (lookahead == 'a') ADVANCE(29); if (lookahead == '.' || - lookahead == '|') ADVANCE(47); - if (('A' <= lookahead && lookahead <= 'Z') || - ('b' <= lookahead && lookahead <= 'z')) ADVANCE(46); + ('A' <= lookahead && lookahead <= 'Z') || + ('b' <= lookahead && lookahead <= 'z') || + lookahead == '|') ADVANCE(50); END_STATE(); case 16: ACCEPT_TOKEN(sym_identifier); - if (lookahead == '_') ADVANCE(46); - if (lookahead == 'b') ADVANCE(36); - if (lookahead == 'f') ADVANCE(28); - if (lookahead == 'i') ADVANCE(32); - if (lookahead == 's') ADVANCE(42); + if (lookahead == '_') ADVANCE(49); + if (lookahead == 'a') ADVANCE(33); if (lookahead == '.' || - lookahead == '|') ADVANCE(47); - if (('A' <= lookahead && lookahead <= 'Z') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(46); + ('A' <= lookahead && lookahead <= 'Z') || + ('b' <= lookahead && lookahead <= 'z') || + lookahead == '|') ADVANCE(50); END_STATE(); case 17: ACCEPT_TOKEN(sym_identifier); - if (lookahead == '_') ADVANCE(46); - if (lookahead == 'd') ADVANCE(34); + if (lookahead == '_') ADVANCE(49); + if (lookahead == 'a') ADVANCE(34); if (lookahead == '.' || - ('A' <= lookahead && lookahead <= 'Z') || - ('a' <= lookahead && lookahead <= 'z') || - lookahead == '|') ADVANCE(47); + lookahead == '|') ADVANCE(50); + if (('A' <= lookahead && lookahead <= 'Z') || + ('b' <= lookahead && lookahead <= 'z')) ADVANCE(49); END_STATE(); case 18: ACCEPT_TOKEN(sym_identifier); - if (lookahead == '_') ADVANCE(46); - if (lookahead == 'e') ADVANCE(64); + if (lookahead == '_') ADVANCE(49); + if (lookahead == 'a') ADVANCE(47); if (lookahead == '.' || - ('A' <= lookahead && lookahead <= 'Z') || - ('a' <= lookahead && lookahead <= 'z') || - lookahead == '|') ADVANCE(47); + lookahead == '|') ADVANCE(50); + if (('A' <= lookahead && lookahead <= 'Z') || + ('b' <= lookahead && lookahead <= 'z')) ADVANCE(49); END_STATE(); case 19: ACCEPT_TOKEN(sym_identifier); - if (lookahead == '_') ADVANCE(46); - if (lookahead == 'e') ADVANCE(65); + if (lookahead == '_') ADVANCE(49); + if (lookahead == 'b') ADVANCE(39); + if (lookahead == 'f') ADVANCE(31); + if (lookahead == 'i') ADVANCE(35); + if (lookahead == 's') ADVANCE(45); if (lookahead == '.' || - ('A' <= lookahead && lookahead <= 'Z') || - ('a' <= lookahead && lookahead <= 'z') || - lookahead == '|') ADVANCE(47); + lookahead == '|') ADVANCE(50); + if (('A' <= lookahead && lookahead <= 'Z') || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(49); END_STATE(); case 20: ACCEPT_TOKEN(sym_identifier); - if (lookahead == '_') ADVANCE(46); - if (lookahead == 'e') ADVANCE(24); + if (lookahead == '_') ADVANCE(49); + if (lookahead == 'd') ADVANCE(37); if (lookahead == '.' || - lookahead == '|') ADVANCE(47); - if (('A' <= lookahead && lookahead <= 'Z') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(46); + ('A' <= lookahead && lookahead <= 'Z') || + ('a' <= lookahead && lookahead <= 'z') || + lookahead == '|') ADVANCE(50); END_STATE(); case 21: ACCEPT_TOKEN(sym_identifier); - if (lookahead == '_') ADVANCE(46); - if (lookahead == 'e') ADVANCE(40); + if (lookahead == '_') ADVANCE(49); + if (lookahead == 'e') ADVANCE(70); if (lookahead == '.' || - lookahead == '|') ADVANCE(47); - if (('A' <= lookahead && lookahead <= 'Z') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(46); + ('A' <= lookahead && lookahead <= 'Z') || + ('a' <= lookahead && lookahead <= 'z') || + lookahead == '|') ADVANCE(50); END_STATE(); case 22: ACCEPT_TOKEN(sym_identifier); - if (lookahead == '_') ADVANCE(46); - if (lookahead == 'e') ADVANCE(14); + if (lookahead == '_') ADVANCE(49); + if (lookahead == 'e') ADVANCE(72); if (lookahead == '.' || - lookahead == '|') ADVANCE(47); - if (('A' <= lookahead && lookahead <= 'Z') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(46); + ('A' <= lookahead && lookahead <= 'Z') || + ('a' <= lookahead && lookahead <= 'z') || + lookahead == '|') ADVANCE(50); END_STATE(); case 23: ACCEPT_TOKEN(sym_identifier); - if (lookahead == '_') ADVANCE(46); - if (lookahead == 'g') ADVANCE(57); + if (lookahead == '_') ADVANCE(49); + if (lookahead == 'e') ADVANCE(27); if (lookahead == '.' || - lookahead == '|') ADVANCE(47); + lookahead == '|') ADVANCE(50); if (('A' <= lookahead && lookahead <= 'Z') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(46); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(49); END_STATE(); case 24: ACCEPT_TOKEN(sym_identifier); - if (lookahead == '_') ADVANCE(46); - if (lookahead == 'g') ADVANCE(21); + if (lookahead == '_') ADVANCE(49); + if (lookahead == 'e') ADVANCE(43); if (lookahead == '.' || - lookahead == '|') ADVANCE(47); + lookahead == '|') ADVANCE(50); if (('A' <= lookahead && lookahead <= 'Z') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(46); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(49); END_STATE(); case 25: ACCEPT_TOKEN(sym_identifier); - if (lookahead == '_') ADVANCE(46); - if (lookahead == 'i') ADVANCE(33); + if (lookahead == '_') ADVANCE(49); + if (lookahead == 'e') ADVANCE(17); if (lookahead == '.' || - lookahead == '|') ADVANCE(47); + lookahead == '|') ADVANCE(50); if (('A' <= lookahead && lookahead <= 'Z') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(46); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(49); END_STATE(); case 26: ACCEPT_TOKEN(sym_identifier); - if (lookahead == '_') ADVANCE(46); - if (lookahead == 'l') ADVANCE(41); + if (lookahead == '_') ADVANCE(49); + if (lookahead == 'g') ADVANCE(54); if (lookahead == '.' || - ('A' <= lookahead && lookahead <= 'Z') || - ('a' <= lookahead && lookahead <= 'z') || - lookahead == '|') ADVANCE(47); + lookahead == '|') ADVANCE(50); + if (('A' <= lookahead && lookahead <= 'Z') || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(49); END_STATE(); case 27: ACCEPT_TOKEN(sym_identifier); - if (lookahead == '_') ADVANCE(46); - if (lookahead == 'l') ADVANCE(22); + if (lookahead == '_') ADVANCE(49); + if (lookahead == 'g') ADVANCE(24); if (lookahead == '.' || - lookahead == '|') ADVANCE(47); + lookahead == '|') ADVANCE(50); if (('A' <= lookahead && lookahead <= 'Z') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(46); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(49); END_STATE(); case 28: ACCEPT_TOKEN(sym_identifier); - if (lookahead == '_') ADVANCE(46); - if (lookahead == 'l') ADVANCE(35); + if (lookahead == '_') ADVANCE(49); + if (lookahead == 'i') ADVANCE(36); if (lookahead == '.' || - lookahead == '|') ADVANCE(47); + lookahead == '|') ADVANCE(50); if (('A' <= lookahead && lookahead <= 'Z') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(46); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(49); END_STATE(); case 29: ACCEPT_TOKEN(sym_identifier); - if (lookahead == '_') ADVANCE(46); - if (lookahead == 'm') ADVANCE(54); + if (lookahead == '_') ADVANCE(49); + if (lookahead == 'l') ADVANCE(44); if (lookahead == '.' || ('A' <= lookahead && lookahead <= 'Z') || ('a' <= lookahead && lookahead <= 'z') || - lookahead == '|') ADVANCE(47); + lookahead == '|') ADVANCE(50); END_STATE(); case 30: ACCEPT_TOKEN(sym_identifier); - if (lookahead == '_') ADVANCE(46); - if (lookahead == 'n') ADVANCE(17); + if (lookahead == '_') ADVANCE(49); + if (lookahead == 'l') ADVANCE(25); if (lookahead == '.' || - ('A' <= lookahead && lookahead <= 'Z') || - ('a' <= lookahead && lookahead <= 'z') || - lookahead == '|') ADVANCE(47); + lookahead == '|') ADVANCE(50); + if (('A' <= lookahead && lookahead <= 'Z') || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(49); END_STATE(); case 31: ACCEPT_TOKEN(sym_identifier); - if (lookahead == '_') ADVANCE(46); - if (lookahead == 'n') ADVANCE(55); + if (lookahead == '_') ADVANCE(49); + if (lookahead == 'l') ADVANCE(38); if (lookahead == '.' || - lookahead == '|') ADVANCE(47); + lookahead == '|') ADVANCE(50); if (('A' <= lookahead && lookahead <= 'Z') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(46); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(49); END_STATE(); case 32: ACCEPT_TOKEN(sym_identifier); - if (lookahead == '_') ADVANCE(46); - if (lookahead == 'n') ADVANCE(43); + if (lookahead == '_') ADVANCE(49); + if (lookahead == 'm') ADVANCE(51); if (lookahead == '.' || - lookahead == '|') ADVANCE(47); - if (('A' <= lookahead && lookahead <= 'Z') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(46); + ('A' <= lookahead && lookahead <= 'Z') || + ('a' <= lookahead && lookahead <= 'z') || + lookahead == '|') ADVANCE(50); END_STATE(); case 33: ACCEPT_TOKEN(sym_identifier); - if (lookahead == '_') ADVANCE(46); - if (lookahead == 'n') ADVANCE(23); + if (lookahead == '_') ADVANCE(49); + if (lookahead == 'n') ADVANCE(20); if (lookahead == '.' || - lookahead == '|') ADVANCE(47); - if (('A' <= lookahead && lookahead <= 'Z') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(46); + ('A' <= lookahead && lookahead <= 'Z') || + ('a' <= lookahead && lookahead <= 'z') || + lookahead == '|') ADVANCE(50); END_STATE(); case 34: ACCEPT_TOKEN(sym_identifier); - if (lookahead == '_') ADVANCE(46); - if (lookahead == 'o') ADVANCE(29); + if (lookahead == '_') ADVANCE(49); + if (lookahead == 'n') ADVANCE(52); if (lookahead == '.' || - ('A' <= lookahead && lookahead <= 'Z') || - ('a' <= lookahead && lookahead <= 'z') || - lookahead == '|') ADVANCE(47); + lookahead == '|') ADVANCE(50); + if (('A' <= lookahead && lookahead <= 'Z') || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(49); END_STATE(); case 35: ACCEPT_TOKEN(sym_identifier); - if (lookahead == '_') ADVANCE(46); - if (lookahead == 'o') ADVANCE(15); + if (lookahead == '_') ADVANCE(49); + if (lookahead == 'n') ADVANCE(46); if (lookahead == '.' || - lookahead == '|') ADVANCE(47); + lookahead == '|') ADVANCE(50); if (('A' <= lookahead && lookahead <= 'Z') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(46); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(49); END_STATE(); case 36: ACCEPT_TOKEN(sym_identifier); - if (lookahead == '_') ADVANCE(46); - if (lookahead == 'o') ADVANCE(37); + if (lookahead == '_') ADVANCE(49); + if (lookahead == 'n') ADVANCE(26); if (lookahead == '.' || - lookahead == '|') ADVANCE(47); + lookahead == '|') ADVANCE(50); if (('A' <= lookahead && lookahead <= 'Z') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(46); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(49); END_STATE(); case 37: ACCEPT_TOKEN(sym_identifier); - if (lookahead == '_') ADVANCE(46); - if (lookahead == 'o') ADVANCE(27); + if (lookahead == '_') ADVANCE(49); + if (lookahead == 'o') ADVANCE(32); if (lookahead == '.' || - lookahead == '|') ADVANCE(47); - if (('A' <= lookahead && lookahead <= 'Z') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(46); + ('A' <= lookahead && lookahead <= 'Z') || + ('a' <= lookahead && lookahead <= 'z') || + lookahead == '|') ADVANCE(50); END_STATE(); case 38: ACCEPT_TOKEN(sym_identifier); - if (lookahead == '_') ADVANCE(46); - if (lookahead == 'r') ADVANCE(45); + if (lookahead == '_') ADVANCE(49); + if (lookahead == 'o') ADVANCE(18); if (lookahead == '.' || - ('A' <= lookahead && lookahead <= 'Z') || - ('a' <= lookahead && lookahead <= 'z') || - lookahead == '|') ADVANCE(47); + lookahead == '|') ADVANCE(50); + if (('A' <= lookahead && lookahead <= 'Z') || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(49); END_STATE(); case 39: ACCEPT_TOKEN(sym_identifier); - if (lookahead == '_') ADVANCE(46); - if (lookahead == 'r') ADVANCE(25); + if (lookahead == '_') ADVANCE(49); + if (lookahead == 'o') ADVANCE(40); if (lookahead == '.' || - lookahead == '|') ADVANCE(47); + lookahead == '|') ADVANCE(50); if (('A' <= lookahead && lookahead <= 'Z') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(46); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(49); END_STATE(); case 40: ACCEPT_TOKEN(sym_identifier); - if (lookahead == '_') ADVANCE(46); - if (lookahead == 'r') ADVANCE(56); + if (lookahead == '_') ADVANCE(49); + if (lookahead == 'o') ADVANCE(30); if (lookahead == '.' || - lookahead == '|') ADVANCE(47); + lookahead == '|') ADVANCE(50); if (('A' <= lookahead && lookahead <= 'Z') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(46); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(49); END_STATE(); case 41: ACCEPT_TOKEN(sym_identifier); - if (lookahead == '_') ADVANCE(46); - if (lookahead == 's') ADVANCE(19); + if (lookahead == '_') ADVANCE(49); + if (lookahead == 'r') ADVANCE(48); if (lookahead == '.' || ('A' <= lookahead && lookahead <= 'Z') || ('a' <= lookahead && lookahead <= 'z') || - lookahead == '|') ADVANCE(47); + lookahead == '|') ADVANCE(50); END_STATE(); case 42: ACCEPT_TOKEN(sym_identifier); - if (lookahead == '_') ADVANCE(46); - if (lookahead == 't') ADVANCE(39); + if (lookahead == '_') ADVANCE(49); + if (lookahead == 'r') ADVANCE(28); if (lookahead == '.' || - lookahead == '|') ADVANCE(47); + lookahead == '|') ADVANCE(50); if (('A' <= lookahead && lookahead <= 'Z') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(46); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(49); END_STATE(); case 43: ACCEPT_TOKEN(sym_identifier); - if (lookahead == '_') ADVANCE(46); - if (lookahead == 't') ADVANCE(20); + if (lookahead == '_') ADVANCE(49); + if (lookahead == 'r') ADVANCE(53); if (lookahead == '.' || - lookahead == '|') ADVANCE(47); + lookahead == '|') ADVANCE(50); if (('A' <= lookahead && lookahead <= 'Z') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(46); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(49); END_STATE(); case 44: ACCEPT_TOKEN(sym_identifier); - if (lookahead == '_') ADVANCE(46); - if (lookahead == 't') ADVANCE(58); + if (lookahead == '_') ADVANCE(49); + if (lookahead == 's') ADVANCE(22); if (lookahead == '.' || - lookahead == '|') ADVANCE(47); - if (('A' <= lookahead && lookahead <= 'Z') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(46); + ('A' <= lookahead && lookahead <= 'Z') || + ('a' <= lookahead && lookahead <= 'z') || + lookahead == '|') ADVANCE(50); END_STATE(); case 45: ACCEPT_TOKEN(sym_identifier); - if (lookahead == '_') ADVANCE(46); - if (lookahead == 'u') ADVANCE(18); + if (lookahead == '_') ADVANCE(49); + if (lookahead == 't') ADVANCE(42); if (lookahead == '.' || - ('A' <= lookahead && lookahead <= 'Z') || - ('a' <= lookahead && lookahead <= 'z') || - lookahead == '|') ADVANCE(47); + lookahead == '|') ADVANCE(50); + if (('A' <= lookahead && lookahead <= 'Z') || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(49); END_STATE(); case 46: ACCEPT_TOKEN(sym_identifier); - if (lookahead == '_') ADVANCE(46); + if (lookahead == '_') ADVANCE(49); + if (lookahead == 't') ADVANCE(23); if (lookahead == '.' || - lookahead == '|') ADVANCE(47); + lookahead == '|') ADVANCE(50); if (('A' <= lookahead && lookahead <= 'Z') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(46); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(49); END_STATE(); case 47: ACCEPT_TOKEN(sym_identifier); - if (lookahead == '_') ADVANCE(46); + if (lookahead == '_') ADVANCE(49); + if (lookahead == 't') ADVANCE(55); if (lookahead == '.' || - ('A' <= lookahead && lookahead <= 'Z') || - ('a' <= lookahead && lookahead <= 'z') || - lookahead == '|') ADVANCE(47); + lookahead == '|') ADVANCE(50); + if (('A' <= lookahead && lookahead <= 'Z') || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(49); END_STATE(); case 48: - ACCEPT_TOKEN(anon_sym_EQ); + ACCEPT_TOKEN(sym_identifier); + if (lookahead == '_') ADVANCE(49); + if (lookahead == 'u') ADVANCE(21); + if (lookahead == '.' || + ('A' <= lookahead && lookahead <= 'Z') || + ('a' <= lookahead && lookahead <= 'z') || + lookahead == '|') ADVANCE(50); END_STATE(); case 49: - ACCEPT_TOKEN(anon_sym_DASH); - if (lookahead == '>') ADVANCE(10); + ACCEPT_TOKEN(sym_identifier); + if (lookahead == '_') ADVANCE(49); + if (lookahead == '.' || + lookahead == '|') ADVANCE(50); + if (('A' <= lookahead && lookahead <= 'Z') || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(49); END_STATE(); case 50: - ACCEPT_TOKEN(anon_sym_PLUS); + ACCEPT_TOKEN(sym_identifier); + if (lookahead == '_') ADVANCE(49); + if (lookahead == '.' || + ('A' <= lookahead && lookahead <= 'Z') || + ('a' <= lookahead && lookahead <= 'z') || + lookahead == '|') ADVANCE(50); END_STATE(); case 51: - ACCEPT_TOKEN(anon_sym_SLASH); + ACCEPT_TOKEN(anon_sym_random); + if (lookahead == '_') ADVANCE(19); + if (lookahead == '.' || + ('A' <= lookahead && lookahead <= 'Z') || + ('a' <= lookahead && lookahead <= 'z') || + lookahead == '|') ADVANCE(50); END_STATE(); case 52: - ACCEPT_TOKEN(anon_sym_PIPE); - if (lookahead == '_') ADVANCE(46); + ACCEPT_TOKEN(anon_sym_random_boolean); + if (lookahead == '_') ADVANCE(49); if (lookahead == '.' || - ('A' <= lookahead && lookahead <= 'Z') || - ('a' <= lookahead && lookahead <= 'z') || - lookahead == '|') ADVANCE(47); + lookahead == '|') ADVANCE(50); + if (('A' <= lookahead && lookahead <= 'Z') || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(49); END_STATE(); case 53: - ACCEPT_TOKEN(anon_sym_AMP); + ACCEPT_TOKEN(anon_sym_random_integer); + if (lookahead == '_') ADVANCE(49); + if (lookahead == '.' || + lookahead == '|') ADVANCE(50); + if (('A' <= lookahead && lookahead <= 'Z') || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(49); END_STATE(); case 54: - ACCEPT_TOKEN(anon_sym_random); - if (lookahead == '_') ADVANCE(16); + ACCEPT_TOKEN(anon_sym_random_string); + if (lookahead == '_') ADVANCE(49); if (lookahead == '.' || - ('A' <= lookahead && lookahead <= 'Z') || - ('a' <= lookahead && lookahead <= 'z') || - lookahead == '|') ADVANCE(47); + lookahead == '|') ADVANCE(50); + if (('A' <= lookahead && lookahead <= 'Z') || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(49); END_STATE(); case 55: - ACCEPT_TOKEN(anon_sym_random_boolean); - if (lookahead == '_') ADVANCE(46); + ACCEPT_TOKEN(anon_sym_random_float); + if (lookahead == '_') ADVANCE(49); if (lookahead == '.' || - lookahead == '|') ADVANCE(47); + lookahead == '|') ADVANCE(50); if (('A' <= lookahead && lookahead <= 'Z') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(46); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(49); END_STATE(); case 56: - ACCEPT_TOKEN(anon_sym_random_integer); - if (lookahead == '_') ADVANCE(46); - if (lookahead == '.' || - lookahead == '|') ADVANCE(47); - if (('A' <= lookahead && lookahead <= 'Z') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(46); + ACCEPT_TOKEN(anon_sym_EQ); END_STATE(); case 57: - ACCEPT_TOKEN(anon_sym_random_string); - if (lookahead == '_') ADVANCE(46); - if (lookahead == '.' || - lookahead == '|') ADVANCE(47); - if (('A' <= lookahead && lookahead <= 'Z') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(46); + ACCEPT_TOKEN(anon_sym_DASH); + if (lookahead == '>') ADVANCE(63); END_STATE(); case 58: - ACCEPT_TOKEN(anon_sym_random_float); - if (lookahead == '_') ADVANCE(46); - if (lookahead == '.' || - lookahead == '|') ADVANCE(47); - if (('A' <= lookahead && lookahead <= 'Z') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(46); + ACCEPT_TOKEN(anon_sym_PLUS); END_STATE(); case 59: - ACCEPT_TOKEN(sym_float); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(59); + ACCEPT_TOKEN(anon_sym_SLASH); END_STATE(); case 60: - ACCEPT_TOKEN(sym_integer); - if (lookahead == '.') ADVANCE(59); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(60); + ACCEPT_TOKEN(anon_sym_PIPE); + if (lookahead == '_') ADVANCE(49); + if (lookahead == '.' || + ('A' <= lookahead && lookahead <= 'Z') || + ('a' <= lookahead && lookahead <= 'z') || + lookahead == '|') ADVANCE(50); END_STATE(); case 61: - ACCEPT_TOKEN(sym_string); - if (lookahead == '"') ADVANCE(61); - if (lookahead != 0 && - lookahead != '\n') ADVANCE(2); + ACCEPT_TOKEN(anon_sym_AMP); END_STATE(); case 62: - ACCEPT_TOKEN(sym_function); - if (lookahead == '\'') ADVANCE(62); - if (lookahead != 0 && - lookahead != '\n') ADVANCE(3); + ACCEPT_TOKEN(anon_sym_SEMI); END_STATE(); case 63: - ACCEPT_TOKEN(sym_empty); + ACCEPT_TOKEN(anon_sym_DASH_GT); END_STATE(); case 64: - ACCEPT_TOKEN(anon_sym_true); - if (lookahead == '_') ADVANCE(46); - if (lookahead == '.' || - ('A' <= lookahead && lookahead <= 'Z') || - ('a' <= lookahead && lookahead <= 'z') || - lookahead == '|') ADVANCE(47); + ACCEPT_TOKEN(sym_float); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(64); END_STATE(); case 65: - ACCEPT_TOKEN(anon_sym_false); - if (lookahead == '_') ADVANCE(46); + ACCEPT_TOKEN(sym_integer); + if (lookahead == '.') ADVANCE(64); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(65); + END_STATE(); + case 66: + ACCEPT_TOKEN(sym_string); + if (lookahead == '"' || + lookahead == '\'') ADVANCE(66); + if (lookahead != 0 && + lookahead != '\n') ADVANCE(10); + END_STATE(); + case 67: + ACCEPT_TOKEN(sym_function); + if (lookahead == '}') ADVANCE(67); + if (lookahead != 0 && + lookahead != '\n') ADVANCE(8); + END_STATE(); + case 68: + ACCEPT_TOKEN(sym_empty); + END_STATE(); + case 69: + ACCEPT_TOKEN(anon_sym_true); + END_STATE(); + case 70: + ACCEPT_TOKEN(anon_sym_true); + if (lookahead == '_') ADVANCE(49); if (lookahead == '.' || ('A' <= lookahead && lookahead <= 'Z') || ('a' <= lookahead && lookahead <= 'z') || - lookahead == '|') ADVANCE(47); + lookahead == '|') ADVANCE(50); END_STATE(); - case 66: + case 71: + ACCEPT_TOKEN(anon_sym_false); + END_STATE(); + case 72: + ACCEPT_TOKEN(anon_sym_false); + if (lookahead == '_') ADVANCE(49); + if (lookahead == '.' || + ('A' <= lookahead && lookahead <= 'Z') || + ('a' <= lookahead && lookahead <= 'z') || + lookahead == '|') ADVANCE(50); + END_STATE(); + case 73: ACCEPT_TOKEN(anon_sym_LPAREN); - if (lookahead == ')') ADVANCE(63); + if (lookahead == ')') ADVANCE(68); END_STATE(); - case 67: + case 74: ACCEPT_TOKEN(anon_sym_COMMA); END_STATE(); - case 68: + case 75: ACCEPT_TOKEN(anon_sym_RPAREN); END_STATE(); default: @@ -844,45 +870,47 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { static const TSLexMode ts_lex_modes[STATE_COUNT] = { [0] = {.lex_state = 0}, - [1] = {.lex_state = 6}, + [1] = {.lex_state = 0}, [2] = {.lex_state = 0}, - [3] = {.lex_state = 6}, - [4] = {.lex_state = 6}, - [5] = {.lex_state = 6}, - [6] = {.lex_state = 6}, - [7] = {.lex_state = 6}, - [8] = {.lex_state = 6}, - [9] = {.lex_state = 6}, - [10] = {.lex_state = 6}, - [11] = {.lex_state = 6}, - [12] = {.lex_state = 6}, - [13] = {.lex_state = 6}, - [14] = {.lex_state = 6}, - [15] = {.lex_state = 6}, - [16] = {.lex_state = 6}, - [17] = {.lex_state = 6}, - [18] = {.lex_state = 6}, - [19] = {.lex_state = 0}, + [3] = {.lex_state = 0}, + [4] = {.lex_state = 0}, + [5] = {.lex_state = 0}, + [6] = {.lex_state = 0}, + [7] = {.lex_state = 0}, + [8] = {.lex_state = 0}, + [9] = {.lex_state = 0}, + [10] = {.lex_state = 9}, + [11] = {.lex_state = 9}, + [12] = {.lex_state = 9}, + [13] = {.lex_state = 9}, + [14] = {.lex_state = 9}, + [15] = {.lex_state = 9}, + [16] = {.lex_state = 9}, + [17] = {.lex_state = 9}, + [18] = {.lex_state = 9}, + [19] = {.lex_state = 9}, + [20] = {.lex_state = 0}, + [21] = {.lex_state = 13}, }; static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [0] = { [ts_builtin_sym_end] = ACTIONS(1), - [sym_comment] = ACTIONS(1), - [sym_yield] = ACTIONS(1), - [sym_chain] = ACTIONS(1), + [anon_sym_POUND] = ACTIONS(1), [sym_identifier] = ACTIONS(1), + [anon_sym_random] = ACTIONS(1), + [anon_sym_random_boolean] = ACTIONS(1), + [anon_sym_random_integer] = ACTIONS(1), + [anon_sym_random_string] = ACTIONS(1), + [anon_sym_random_float] = ACTIONS(1), [anon_sym_EQ] = ACTIONS(1), [anon_sym_DASH] = ACTIONS(1), [anon_sym_PLUS] = ACTIONS(1), [anon_sym_SLASH] = ACTIONS(1), [anon_sym_PIPE] = ACTIONS(1), [anon_sym_AMP] = ACTIONS(1), - [anon_sym_random] = ACTIONS(1), - [anon_sym_random_boolean] = ACTIONS(1), - [anon_sym_random_integer] = ACTIONS(1), - [anon_sym_random_string] = ACTIONS(1), - [anon_sym_random_float] = ACTIONS(1), + [anon_sym_SEMI] = ACTIONS(1), + [anon_sym_DASH_GT] = ACTIONS(1), [sym_float] = ACTIONS(1), [sym_integer] = ACTIONS(1), [sym_string] = ACTIONS(1), @@ -895,458 +923,512 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_RPAREN] = ACTIONS(1), }, [1] = { - [sym_source_file] = STATE(19), - [sym_expression] = STATE(3), - [sym_value] = STATE(11), - [sym_tool] = STATE(12), - [sym_boolean] = STATE(8), - [sym_list] = STATE(8), - [aux_sym_source_file_repeat1] = STATE(3), + [sym_source] = STATE(20), + [sym_comment] = STATE(2), + [sym_value] = STATE(2), + [sym_tool] = STATE(2), + [sym_operator] = STATE(2), + [sym_boolean] = STATE(5), + [sym_list] = STATE(5), + [aux_sym_source_repeat1] = STATE(2), [ts_builtin_sym_end] = ACTIONS(3), - [sym_comment] = ACTIONS(5), - [sym_yield] = ACTIONS(5), - [sym_chain] = ACTIONS(5), + [anon_sym_POUND] = ACTIONS(5), [sym_identifier] = ACTIONS(7), [anon_sym_random] = ACTIONS(9), [anon_sym_random_boolean] = ACTIONS(9), [anon_sym_random_integer] = ACTIONS(9), [anon_sym_random_string] = ACTIONS(9), [anon_sym_random_float] = ACTIONS(9), - [sym_float] = ACTIONS(11), - [sym_integer] = ACTIONS(13), - [sym_string] = ACTIONS(11), - [sym_empty] = ACTIONS(11), - [anon_sym_true] = ACTIONS(15), - [anon_sym_false] = ACTIONS(15), - [anon_sym_LPAREN] = ACTIONS(17), + [anon_sym_EQ] = ACTIONS(11), + [anon_sym_DASH] = ACTIONS(13), + [anon_sym_PLUS] = ACTIONS(11), + [anon_sym_SLASH] = ACTIONS(11), + [anon_sym_PIPE] = ACTIONS(13), + [anon_sym_AMP] = ACTIONS(11), + [anon_sym_SEMI] = ACTIONS(11), + [anon_sym_DASH_GT] = ACTIONS(11), + [sym_float] = ACTIONS(15), + [sym_integer] = ACTIONS(17), + [sym_string] = ACTIONS(15), + [sym_function] = ACTIONS(15), + [sym_empty] = ACTIONS(15), + [anon_sym_true] = ACTIONS(19), + [anon_sym_false] = ACTIONS(19), + [anon_sym_LPAREN] = ACTIONS(21), }, [2] = { - [sym_operator] = STATE(15), - [ts_builtin_sym_end] = ACTIONS(19), - [sym_comment] = ACTIONS(19), - [sym_yield] = ACTIONS(19), - [sym_chain] = ACTIONS(19), - [sym_identifier] = ACTIONS(21), - [anon_sym_EQ] = ACTIONS(23), - [anon_sym_DASH] = ACTIONS(25), - [anon_sym_PLUS] = ACTIONS(23), - [anon_sym_SLASH] = ACTIONS(23), - [anon_sym_PIPE] = ACTIONS(25), - [anon_sym_AMP] = ACTIONS(23), - [anon_sym_random] = ACTIONS(21), - [anon_sym_random_boolean] = ACTIONS(21), - [anon_sym_random_integer] = ACTIONS(21), - [anon_sym_random_string] = ACTIONS(21), - [anon_sym_random_float] = ACTIONS(21), - [sym_float] = ACTIONS(19), - [sym_integer] = ACTIONS(21), - [sym_string] = ACTIONS(19), - [sym_empty] = ACTIONS(19), - [anon_sym_true] = ACTIONS(21), - [anon_sym_false] = ACTIONS(21), + [sym_comment] = STATE(3), + [sym_value] = STATE(3), + [sym_tool] = STATE(3), + [sym_operator] = STATE(3), + [sym_boolean] = STATE(5), + [sym_list] = STATE(5), + [aux_sym_source_repeat1] = STATE(3), + [ts_builtin_sym_end] = ACTIONS(23), + [anon_sym_POUND] = ACTIONS(5), + [sym_identifier] = ACTIONS(25), + [anon_sym_random] = ACTIONS(9), + [anon_sym_random_boolean] = ACTIONS(9), + [anon_sym_random_integer] = ACTIONS(9), + [anon_sym_random_string] = ACTIONS(9), + [anon_sym_random_float] = ACTIONS(9), + [anon_sym_EQ] = ACTIONS(11), + [anon_sym_DASH] = ACTIONS(13), + [anon_sym_PLUS] = ACTIONS(11), + [anon_sym_SLASH] = ACTIONS(11), + [anon_sym_PIPE] = ACTIONS(13), + [anon_sym_AMP] = ACTIONS(11), + [anon_sym_SEMI] = ACTIONS(11), + [anon_sym_DASH_GT] = ACTIONS(11), + [sym_float] = ACTIONS(15), + [sym_integer] = ACTIONS(17), + [sym_string] = ACTIONS(15), + [sym_function] = ACTIONS(15), + [sym_empty] = ACTIONS(15), + [anon_sym_true] = ACTIONS(19), + [anon_sym_false] = ACTIONS(19), [anon_sym_LPAREN] = ACTIONS(21), - [anon_sym_COMMA] = ACTIONS(19), - [anon_sym_RPAREN] = ACTIONS(19), }, [3] = { - [sym_expression] = STATE(4), - [sym_value] = STATE(11), - [sym_tool] = STATE(12), - [sym_boolean] = STATE(8), - [sym_list] = STATE(8), - [aux_sym_source_file_repeat1] = STATE(4), + [sym_comment] = STATE(3), + [sym_value] = STATE(3), + [sym_tool] = STATE(3), + [sym_operator] = STATE(3), + [sym_boolean] = STATE(5), + [sym_list] = STATE(5), + [aux_sym_source_repeat1] = STATE(3), [ts_builtin_sym_end] = ACTIONS(27), - [sym_comment] = ACTIONS(29), - [sym_yield] = ACTIONS(29), - [sym_chain] = ACTIONS(29), - [sym_identifier] = ACTIONS(7), - [anon_sym_random] = ACTIONS(9), - [anon_sym_random_boolean] = ACTIONS(9), - [anon_sym_random_integer] = ACTIONS(9), - [anon_sym_random_string] = ACTIONS(9), - [anon_sym_random_float] = ACTIONS(9), - [sym_float] = ACTIONS(11), - [sym_integer] = ACTIONS(13), - [sym_string] = ACTIONS(11), - [sym_empty] = ACTIONS(11), - [anon_sym_true] = ACTIONS(15), - [anon_sym_false] = ACTIONS(15), - [anon_sym_LPAREN] = ACTIONS(17), + [anon_sym_POUND] = ACTIONS(29), + [sym_identifier] = ACTIONS(32), + [anon_sym_random] = ACTIONS(35), + [anon_sym_random_boolean] = ACTIONS(35), + [anon_sym_random_integer] = ACTIONS(35), + [anon_sym_random_string] = ACTIONS(35), + [anon_sym_random_float] = ACTIONS(35), + [anon_sym_EQ] = ACTIONS(38), + [anon_sym_DASH] = ACTIONS(41), + [anon_sym_PLUS] = ACTIONS(38), + [anon_sym_SLASH] = ACTIONS(38), + [anon_sym_PIPE] = ACTIONS(41), + [anon_sym_AMP] = ACTIONS(38), + [anon_sym_SEMI] = ACTIONS(38), + [anon_sym_DASH_GT] = ACTIONS(38), + [sym_float] = ACTIONS(44), + [sym_integer] = ACTIONS(47), + [sym_string] = ACTIONS(44), + [sym_function] = ACTIONS(44), + [sym_empty] = ACTIONS(44), + [anon_sym_true] = ACTIONS(50), + [anon_sym_false] = ACTIONS(50), + [anon_sym_LPAREN] = ACTIONS(53), }, [4] = { - [sym_expression] = STATE(4), - [sym_value] = STATE(11), - [sym_tool] = STATE(12), - [sym_boolean] = STATE(8), - [sym_list] = STATE(8), - [aux_sym_source_file_repeat1] = STATE(4), - [ts_builtin_sym_end] = ACTIONS(31), - [sym_comment] = ACTIONS(33), - [sym_yield] = ACTIONS(33), - [sym_chain] = ACTIONS(33), - [sym_identifier] = ACTIONS(36), - [anon_sym_random] = ACTIONS(39), - [anon_sym_random_boolean] = ACTIONS(39), - [anon_sym_random_integer] = ACTIONS(39), - [anon_sym_random_string] = ACTIONS(39), - [anon_sym_random_float] = ACTIONS(39), - [sym_float] = ACTIONS(42), - [sym_integer] = ACTIONS(45), - [sym_string] = ACTIONS(42), - [sym_empty] = ACTIONS(42), - [anon_sym_true] = ACTIONS(48), - [anon_sym_false] = ACTIONS(48), - [anon_sym_LPAREN] = ACTIONS(51), + [ts_builtin_sym_end] = ACTIONS(56), + [anon_sym_POUND] = ACTIONS(56), + [sym_identifier] = ACTIONS(58), + [anon_sym_random] = ACTIONS(58), + [anon_sym_random_boolean] = ACTIONS(58), + [anon_sym_random_integer] = ACTIONS(58), + [anon_sym_random_string] = ACTIONS(58), + [anon_sym_random_float] = ACTIONS(58), + [anon_sym_EQ] = ACTIONS(56), + [anon_sym_DASH] = ACTIONS(58), + [anon_sym_PLUS] = ACTIONS(56), + [anon_sym_SLASH] = ACTIONS(56), + [anon_sym_PIPE] = ACTIONS(58), + [anon_sym_AMP] = ACTIONS(56), + [anon_sym_SEMI] = ACTIONS(56), + [anon_sym_DASH_GT] = ACTIONS(56), + [sym_float] = ACTIONS(56), + [sym_integer] = ACTIONS(58), + [sym_string] = ACTIONS(56), + [sym_function] = ACTIONS(56), + [sym_empty] = ACTIONS(56), + [anon_sym_true] = ACTIONS(58), + [anon_sym_false] = ACTIONS(58), + [anon_sym_LPAREN] = ACTIONS(58), }, [5] = { - [sym_expression] = STATE(16), - [sym_value] = STATE(11), - [sym_tool] = STATE(12), - [sym_boolean] = STATE(8), - [sym_list] = STATE(8), - [aux_sym_list_repeat1] = STATE(6), - [sym_identifier] = ACTIONS(7), - [anon_sym_random] = ACTIONS(9), - [anon_sym_random_boolean] = ACTIONS(9), - [anon_sym_random_integer] = ACTIONS(9), - [anon_sym_random_string] = ACTIONS(9), - [anon_sym_random_float] = ACTIONS(9), - [sym_float] = ACTIONS(11), - [sym_integer] = ACTIONS(13), - [sym_string] = ACTIONS(11), - [sym_empty] = ACTIONS(11), - [anon_sym_true] = ACTIONS(15), - [anon_sym_false] = ACTIONS(15), - [anon_sym_LPAREN] = ACTIONS(17), - [anon_sym_RPAREN] = ACTIONS(54), + [ts_builtin_sym_end] = ACTIONS(60), + [anon_sym_POUND] = ACTIONS(60), + [sym_identifier] = ACTIONS(62), + [anon_sym_random] = ACTIONS(62), + [anon_sym_random_boolean] = ACTIONS(62), + [anon_sym_random_integer] = ACTIONS(62), + [anon_sym_random_string] = ACTIONS(62), + [anon_sym_random_float] = ACTIONS(62), + [anon_sym_EQ] = ACTIONS(60), + [anon_sym_DASH] = ACTIONS(62), + [anon_sym_PLUS] = ACTIONS(60), + [anon_sym_SLASH] = ACTIONS(60), + [anon_sym_PIPE] = ACTIONS(62), + [anon_sym_AMP] = ACTIONS(60), + [anon_sym_SEMI] = ACTIONS(60), + [anon_sym_DASH_GT] = ACTIONS(60), + [sym_float] = ACTIONS(60), + [sym_integer] = ACTIONS(62), + [sym_string] = ACTIONS(60), + [sym_function] = ACTIONS(60), + [sym_empty] = ACTIONS(60), + [anon_sym_true] = ACTIONS(62), + [anon_sym_false] = ACTIONS(62), + [anon_sym_LPAREN] = ACTIONS(62), }, [6] = { - [sym_expression] = STATE(16), - [sym_value] = STATE(11), - [sym_tool] = STATE(12), - [sym_boolean] = STATE(8), - [sym_list] = STATE(8), - [aux_sym_list_repeat1] = STATE(6), - [sym_identifier] = ACTIONS(56), - [anon_sym_random] = ACTIONS(59), - [anon_sym_random_boolean] = ACTIONS(59), - [anon_sym_random_integer] = ACTIONS(59), - [anon_sym_random_string] = ACTIONS(59), - [anon_sym_random_float] = ACTIONS(59), - [sym_float] = ACTIONS(62), - [sym_integer] = ACTIONS(65), - [sym_string] = ACTIONS(62), - [sym_empty] = ACTIONS(62), - [anon_sym_true] = ACTIONS(68), - [anon_sym_false] = ACTIONS(68), - [anon_sym_LPAREN] = ACTIONS(71), - [anon_sym_RPAREN] = ACTIONS(74), + [ts_builtin_sym_end] = ACTIONS(64), + [anon_sym_POUND] = ACTIONS(64), + [sym_identifier] = ACTIONS(66), + [anon_sym_random] = ACTIONS(66), + [anon_sym_random_boolean] = ACTIONS(66), + [anon_sym_random_integer] = ACTIONS(66), + [anon_sym_random_string] = ACTIONS(66), + [anon_sym_random_float] = ACTIONS(66), + [anon_sym_EQ] = ACTIONS(64), + [anon_sym_DASH] = ACTIONS(66), + [anon_sym_PLUS] = ACTIONS(64), + [anon_sym_SLASH] = ACTIONS(64), + [anon_sym_PIPE] = ACTIONS(66), + [anon_sym_AMP] = ACTIONS(64), + [anon_sym_SEMI] = ACTIONS(64), + [anon_sym_DASH_GT] = ACTIONS(64), + [sym_float] = ACTIONS(64), + [sym_integer] = ACTIONS(66), + [sym_string] = ACTIONS(64), + [sym_function] = ACTIONS(64), + [sym_empty] = ACTIONS(64), + [anon_sym_true] = ACTIONS(66), + [anon_sym_false] = ACTIONS(66), + [anon_sym_LPAREN] = ACTIONS(66), }, [7] = { + [ts_builtin_sym_end] = ACTIONS(68), + [anon_sym_POUND] = ACTIONS(68), + [sym_identifier] = ACTIONS(70), + [anon_sym_random] = ACTIONS(70), + [anon_sym_random_boolean] = ACTIONS(70), + [anon_sym_random_integer] = ACTIONS(70), + [anon_sym_random_string] = ACTIONS(70), + [anon_sym_random_float] = ACTIONS(70), + [anon_sym_EQ] = ACTIONS(68), + [anon_sym_DASH] = ACTIONS(70), + [anon_sym_PLUS] = ACTIONS(68), + [anon_sym_SLASH] = ACTIONS(68), + [anon_sym_PIPE] = ACTIONS(70), + [anon_sym_AMP] = ACTIONS(68), + [anon_sym_SEMI] = ACTIONS(68), + [anon_sym_DASH_GT] = ACTIONS(68), + [sym_float] = ACTIONS(68), + [sym_integer] = ACTIONS(70), + [sym_string] = ACTIONS(68), + [sym_function] = ACTIONS(68), + [sym_empty] = ACTIONS(68), + [anon_sym_true] = ACTIONS(70), + [anon_sym_false] = ACTIONS(70), + [anon_sym_LPAREN] = ACTIONS(70), + }, + [8] = { + [ts_builtin_sym_end] = ACTIONS(72), + [anon_sym_POUND] = ACTIONS(72), + [sym_identifier] = ACTIONS(74), + [anon_sym_random] = ACTIONS(74), + [anon_sym_random_boolean] = ACTIONS(74), + [anon_sym_random_integer] = ACTIONS(74), + [anon_sym_random_string] = ACTIONS(74), + [anon_sym_random_float] = ACTIONS(74), + [anon_sym_EQ] = ACTIONS(72), + [anon_sym_DASH] = ACTIONS(74), + [anon_sym_PLUS] = ACTIONS(72), + [anon_sym_SLASH] = ACTIONS(72), + [anon_sym_PIPE] = ACTIONS(74), + [anon_sym_AMP] = ACTIONS(72), + [anon_sym_SEMI] = ACTIONS(72), + [anon_sym_DASH_GT] = ACTIONS(72), + [sym_float] = ACTIONS(72), + [sym_integer] = ACTIONS(74), + [sym_string] = ACTIONS(72), + [sym_function] = ACTIONS(72), + [sym_empty] = ACTIONS(72), + [anon_sym_true] = ACTIONS(74), + [anon_sym_false] = ACTIONS(74), + [anon_sym_LPAREN] = ACTIONS(74), + }, + [9] = { [ts_builtin_sym_end] = ACTIONS(76), - [sym_comment] = ACTIONS(76), - [sym_yield] = ACTIONS(76), - [sym_chain] = ACTIONS(76), + [anon_sym_POUND] = ACTIONS(76), [sym_identifier] = ACTIONS(78), [anon_sym_random] = ACTIONS(78), [anon_sym_random_boolean] = ACTIONS(78), [anon_sym_random_integer] = ACTIONS(78), [anon_sym_random_string] = ACTIONS(78), [anon_sym_random_float] = ACTIONS(78), + [anon_sym_EQ] = ACTIONS(76), + [anon_sym_DASH] = ACTIONS(78), + [anon_sym_PLUS] = ACTIONS(76), + [anon_sym_SLASH] = ACTIONS(76), + [anon_sym_PIPE] = ACTIONS(78), + [anon_sym_AMP] = ACTIONS(76), + [anon_sym_SEMI] = ACTIONS(76), + [anon_sym_DASH_GT] = ACTIONS(76), [sym_float] = ACTIONS(76), [sym_integer] = ACTIONS(78), [sym_string] = ACTIONS(76), + [sym_function] = ACTIONS(76), [sym_empty] = ACTIONS(76), [anon_sym_true] = ACTIONS(78), [anon_sym_false] = ACTIONS(78), [anon_sym_LPAREN] = ACTIONS(78), - [anon_sym_COMMA] = ACTIONS(76), - [anon_sym_RPAREN] = ACTIONS(76), - }, - [8] = { - [ts_builtin_sym_end] = ACTIONS(80), - [sym_comment] = ACTIONS(80), - [sym_yield] = ACTIONS(80), - [sym_chain] = ACTIONS(80), - [sym_identifier] = ACTIONS(82), - [anon_sym_random] = ACTIONS(82), - [anon_sym_random_boolean] = ACTIONS(82), - [anon_sym_random_integer] = ACTIONS(82), - [anon_sym_random_string] = ACTIONS(82), - [anon_sym_random_float] = ACTIONS(82), - [sym_float] = ACTIONS(80), - [sym_integer] = ACTIONS(82), - [sym_string] = ACTIONS(80), - [sym_empty] = ACTIONS(80), - [anon_sym_true] = ACTIONS(82), - [anon_sym_false] = ACTIONS(82), - [anon_sym_LPAREN] = ACTIONS(82), - [anon_sym_COMMA] = ACTIONS(80), - [anon_sym_RPAREN] = ACTIONS(80), - }, - [9] = { - [ts_builtin_sym_end] = ACTIONS(84), - [sym_comment] = ACTIONS(84), - [sym_yield] = ACTIONS(84), - [sym_chain] = ACTIONS(84), - [sym_identifier] = ACTIONS(86), - [anon_sym_random] = ACTIONS(86), - [anon_sym_random_boolean] = ACTIONS(86), - [anon_sym_random_integer] = ACTIONS(86), - [anon_sym_random_string] = ACTIONS(86), - [anon_sym_random_float] = ACTIONS(86), - [sym_float] = ACTIONS(84), - [sym_integer] = ACTIONS(86), - [sym_string] = ACTIONS(84), - [sym_empty] = ACTIONS(84), - [anon_sym_true] = ACTIONS(86), - [anon_sym_false] = ACTIONS(86), - [anon_sym_LPAREN] = ACTIONS(86), - [anon_sym_COMMA] = ACTIONS(84), - [anon_sym_RPAREN] = ACTIONS(84), - }, - [10] = { - [sym_expression] = STATE(16), - [sym_value] = STATE(11), - [sym_tool] = STATE(12), - [sym_boolean] = STATE(8), - [sym_list] = STATE(8), - [aux_sym_list_repeat1] = STATE(5), - [sym_identifier] = ACTIONS(7), - [anon_sym_random] = ACTIONS(9), - [anon_sym_random_boolean] = ACTIONS(9), - [anon_sym_random_integer] = ACTIONS(9), - [anon_sym_random_string] = ACTIONS(9), - [anon_sym_random_float] = ACTIONS(9), - [sym_float] = ACTIONS(11), - [sym_integer] = ACTIONS(13), - [sym_string] = ACTIONS(11), - [sym_empty] = ACTIONS(11), - [anon_sym_true] = ACTIONS(15), - [anon_sym_false] = ACTIONS(15), - [anon_sym_LPAREN] = ACTIONS(17), - }, - [11] = { - [ts_builtin_sym_end] = ACTIONS(19), - [sym_comment] = ACTIONS(19), - [sym_yield] = ACTIONS(19), - [sym_chain] = ACTIONS(19), - [sym_identifier] = ACTIONS(21), - [anon_sym_random] = ACTIONS(21), - [anon_sym_random_boolean] = ACTIONS(21), - [anon_sym_random_integer] = ACTIONS(21), - [anon_sym_random_string] = ACTIONS(21), - [anon_sym_random_float] = ACTIONS(21), - [sym_float] = ACTIONS(19), - [sym_integer] = ACTIONS(21), - [sym_string] = ACTIONS(19), - [sym_empty] = ACTIONS(19), - [anon_sym_true] = ACTIONS(21), - [anon_sym_false] = ACTIONS(21), - [anon_sym_LPAREN] = ACTIONS(21), - [anon_sym_COMMA] = ACTIONS(19), - [anon_sym_RPAREN] = ACTIONS(19), - }, - [12] = { - [ts_builtin_sym_end] = ACTIONS(19), - [sym_comment] = ACTIONS(19), - [sym_yield] = ACTIONS(19), - [sym_chain] = ACTIONS(19), - [sym_identifier] = ACTIONS(21), - [anon_sym_random] = ACTIONS(21), - [anon_sym_random_boolean] = ACTIONS(21), - [anon_sym_random_integer] = ACTIONS(21), - [anon_sym_random_string] = ACTIONS(21), - [anon_sym_random_float] = ACTIONS(21), - [sym_float] = ACTIONS(19), - [sym_integer] = ACTIONS(21), - [sym_string] = ACTIONS(19), - [sym_empty] = ACTIONS(19), - [anon_sym_true] = ACTIONS(21), - [anon_sym_false] = ACTIONS(21), - [anon_sym_LPAREN] = ACTIONS(21), - [anon_sym_COMMA] = ACTIONS(19), - [anon_sym_RPAREN] = ACTIONS(19), - }, - [13] = { - [ts_builtin_sym_end] = ACTIONS(88), - [sym_comment] = ACTIONS(88), - [sym_yield] = ACTIONS(88), - [sym_chain] = ACTIONS(88), - [sym_identifier] = ACTIONS(90), - [anon_sym_random] = ACTIONS(90), - [anon_sym_random_boolean] = ACTIONS(90), - [anon_sym_random_integer] = ACTIONS(90), - [anon_sym_random_string] = ACTIONS(90), - [anon_sym_random_float] = ACTIONS(90), - [sym_float] = ACTIONS(88), - [sym_integer] = ACTIONS(90), - [sym_string] = ACTIONS(88), - [sym_empty] = ACTIONS(88), - [anon_sym_true] = ACTIONS(90), - [anon_sym_false] = ACTIONS(90), - [anon_sym_LPAREN] = ACTIONS(90), - [anon_sym_COMMA] = ACTIONS(88), - [anon_sym_RPAREN] = ACTIONS(88), - }, - [14] = { - [ts_builtin_sym_end] = ACTIONS(92), - [sym_comment] = ACTIONS(92), - [sym_yield] = ACTIONS(92), - [sym_chain] = ACTIONS(92), - [sym_identifier] = ACTIONS(94), - [anon_sym_random] = ACTIONS(94), - [anon_sym_random_boolean] = ACTIONS(94), - [anon_sym_random_integer] = ACTIONS(94), - [anon_sym_random_string] = ACTIONS(94), - [anon_sym_random_float] = ACTIONS(94), - [sym_float] = ACTIONS(92), - [sym_integer] = ACTIONS(94), - [sym_string] = ACTIONS(92), - [sym_empty] = ACTIONS(92), - [anon_sym_true] = ACTIONS(94), - [anon_sym_false] = ACTIONS(94), - [anon_sym_LPAREN] = ACTIONS(94), - [anon_sym_COMMA] = ACTIONS(92), - [anon_sym_RPAREN] = ACTIONS(92), - }, - [15] = { - [sym_expression] = STATE(13), - [sym_value] = STATE(11), - [sym_tool] = STATE(12), - [sym_boolean] = STATE(8), - [sym_list] = STATE(8), - [sym_identifier] = ACTIONS(7), - [anon_sym_random] = ACTIONS(9), - [anon_sym_random_boolean] = ACTIONS(9), - [anon_sym_random_integer] = ACTIONS(9), - [anon_sym_random_string] = ACTIONS(9), - [anon_sym_random_float] = ACTIONS(9), - [sym_float] = ACTIONS(11), - [sym_integer] = ACTIONS(13), - [sym_string] = ACTIONS(11), - [sym_empty] = ACTIONS(11), - [anon_sym_true] = ACTIONS(15), - [anon_sym_false] = ACTIONS(15), - [anon_sym_LPAREN] = ACTIONS(17), }, }; static const uint16_t ts_small_parse_table[] = { - [0] = 3, - ACTIONS(100), 1, + [0] = 8, + ACTIONS(82), 1, + sym_integer, + ACTIONS(86), 1, + anon_sym_LPAREN, + ACTIONS(88), 1, + anon_sym_RPAREN, + STATE(11), 1, + aux_sym_list_repeat1, + STATE(15), 1, + sym_value, + ACTIONS(84), 2, + anon_sym_true, + anon_sym_false, + STATE(16), 2, + sym_boolean, + sym_list, + ACTIONS(80), 4, + sym_float, + sym_string, + sym_function, + sym_empty, + [30] = 8, + ACTIONS(93), 1, + sym_integer, + ACTIONS(99), 1, + anon_sym_LPAREN, + ACTIONS(102), 1, + anon_sym_RPAREN, + STATE(11), 1, + aux_sym_list_repeat1, + STATE(15), 1, + sym_value, + ACTIONS(96), 2, + anon_sym_true, + anon_sym_false, + STATE(16), 2, + sym_boolean, + sym_list, + ACTIONS(90), 4, + sym_float, + sym_string, + sym_function, + sym_empty, + [60] = 8, + ACTIONS(82), 1, + sym_integer, + ACTIONS(86), 1, + anon_sym_LPAREN, + ACTIONS(104), 1, + anon_sym_RPAREN, + STATE(11), 1, + aux_sym_list_repeat1, + STATE(15), 1, + sym_value, + ACTIONS(84), 2, + anon_sym_true, + anon_sym_false, + STATE(16), 2, + sym_boolean, + sym_list, + ACTIONS(80), 4, + sym_float, + sym_string, + sym_function, + sym_empty, + [90] = 7, + ACTIONS(82), 1, + sym_integer, + ACTIONS(86), 1, + anon_sym_LPAREN, + STATE(10), 1, + aux_sym_list_repeat1, + STATE(15), 1, + sym_value, + ACTIONS(84), 2, + anon_sym_true, + anon_sym_false, + STATE(16), 2, + sym_boolean, + sym_list, + ACTIONS(80), 4, + sym_float, + sym_string, + sym_function, + sym_empty, + [117] = 7, + ACTIONS(82), 1, + sym_integer, + ACTIONS(86), 1, + anon_sym_LPAREN, + STATE(12), 1, + aux_sym_list_repeat1, + STATE(15), 1, + sym_value, + ACTIONS(84), 2, + anon_sym_true, + anon_sym_false, + STATE(16), 2, + sym_boolean, + sym_list, + ACTIONS(80), 4, + sym_float, + sym_string, + sym_function, + sym_empty, + [144] = 3, + ACTIONS(110), 1, anon_sym_COMMA, - ACTIONS(98), 4, + ACTIONS(108), 2, + sym_integer, + anon_sym_LPAREN, + ACTIONS(106), 7, sym_float, sym_string, + sym_function, sym_empty, + anon_sym_true, + anon_sym_false, anon_sym_RPAREN, - ACTIONS(96), 10, - sym_identifier, - anon_sym_random, - anon_sym_random_boolean, - anon_sym_random_integer, - anon_sym_random_string, - anon_sym_random_float, + [161] = 2, + ACTIONS(62), 2, sym_integer, - anon_sym_true, - anon_sym_false, anon_sym_LPAREN, - [22] = 2, - ACTIONS(74), 4, + ACTIONS(60), 8, sym_float, sym_string, + sym_function, sym_empty, + anon_sym_true, + anon_sym_false, + anon_sym_COMMA, anon_sym_RPAREN, - ACTIONS(102), 10, - sym_identifier, - anon_sym_random, - anon_sym_random_boolean, - anon_sym_random_integer, - anon_sym_random_string, - anon_sym_random_float, + [176] = 2, + ACTIONS(66), 2, sym_integer, - anon_sym_true, - anon_sym_false, anon_sym_LPAREN, - [41] = 2, - ACTIONS(106), 3, + ACTIONS(64), 8, sym_float, sym_string, + sym_function, sym_empty, - ACTIONS(104), 10, - sym_identifier, - anon_sym_random, - anon_sym_random_boolean, - anon_sym_random_integer, - anon_sym_random_string, - anon_sym_random_float, - sym_integer, anon_sym_true, anon_sym_false, + anon_sym_COMMA, + anon_sym_RPAREN, + [191] = 2, + ACTIONS(78), 2, + sym_integer, anon_sym_LPAREN, - [59] = 1, - ACTIONS(108), 1, + ACTIONS(76), 8, + sym_float, + sym_string, + sym_function, + sym_empty, + anon_sym_true, + anon_sym_false, + anon_sym_COMMA, + anon_sym_RPAREN, + [206] = 2, + ACTIONS(112), 2, + sym_integer, + anon_sym_LPAREN, + ACTIONS(102), 7, + sym_float, + sym_string, + sym_function, + sym_empty, + anon_sym_true, + anon_sym_false, + anon_sym_RPAREN, + [220] = 1, + ACTIONS(114), 1, ts_builtin_sym_end, + [224] = 1, + ACTIONS(116), 1, + aux_sym_comment_token1, }; static const uint32_t ts_small_parse_table_map[] = { - [SMALL_STATE(16)] = 0, - [SMALL_STATE(17)] = 22, - [SMALL_STATE(18)] = 41, - [SMALL_STATE(19)] = 59, + [SMALL_STATE(10)] = 0, + [SMALL_STATE(11)] = 30, + [SMALL_STATE(12)] = 60, + [SMALL_STATE(13)] = 90, + [SMALL_STATE(14)] = 117, + [SMALL_STATE(15)] = 144, + [SMALL_STATE(16)] = 161, + [SMALL_STATE(17)] = 176, + [SMALL_STATE(18)] = 191, + [SMALL_STATE(19)] = 206, + [SMALL_STATE(20)] = 220, + [SMALL_STATE(21)] = 224, }; static const TSParseActionEntry ts_parse_actions[] = { [0] = {.entry = {.count = 0, .reusable = false}}, [1] = {.entry = {.count = 1, .reusable = false}}, RECOVER(), - [3] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 0), - [5] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3), + [3] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source, 0), + [5] = {.entry = {.count = 1, .reusable = true}}, SHIFT(21), [7] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2), - [9] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7), - [11] = {.entry = {.count = 1, .reusable = true}}, SHIFT(8), - [13] = {.entry = {.count = 1, .reusable = false}}, SHIFT(8), - [15] = {.entry = {.count = 1, .reusable = false}}, SHIFT(9), - [17] = {.entry = {.count = 1, .reusable = false}}, SHIFT(10), - [19] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression, 1), - [21] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression, 1), - [23] = {.entry = {.count = 1, .reusable = true}}, SHIFT(18), - [25] = {.entry = {.count = 1, .reusable = false}}, SHIFT(18), - [27] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 1), - [29] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4), - [31] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2), - [33] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(4), - [36] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(2), - [39] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(7), - [42] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(8), - [45] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(8), - [48] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(9), - [51] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(10), - [54] = {.entry = {.count = 1, .reusable = true}}, SHIFT(14), - [56] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(2), - [59] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(7), - [62] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(8), - [65] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(8), - [68] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(9), - [71] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(10), - [74] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_list_repeat1, 2), - [76] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tool, 1), - [78] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tool, 1), - [80] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_value, 1), - [82] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_value, 1), - [84] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_boolean, 1), - [86] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_boolean, 1), - [88] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression, 3), - [90] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression, 3), - [92] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list, 3), - [94] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list, 3), - [96] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_list_repeat1, 1), - [98] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_list_repeat1, 1), - [100] = {.entry = {.count = 1, .reusable = true}}, SHIFT(17), - [102] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_list_repeat1, 2), - [104] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_operator, 1), - [106] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_operator, 1), - [108] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), + [9] = {.entry = {.count = 1, .reusable = false}}, SHIFT(8), + [11] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7), + [13] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7), + [15] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5), + [17] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5), + [19] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6), + [21] = {.entry = {.count = 1, .reusable = false}}, SHIFT(13), + [23] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source, 1), + [25] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3), + [27] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_source_repeat1, 2), + [29] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(21), + [32] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(3), + [35] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(8), + [38] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(7), + [41] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(7), + [44] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(5), + [47] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(5), + [50] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(6), + [53] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_repeat1, 2), SHIFT_REPEAT(13), + [56] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_comment, 2), + [58] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_comment, 2), + [60] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_value, 1), + [62] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_value, 1), + [64] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_boolean, 1), + [66] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_boolean, 1), + [68] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_operator, 1), + [70] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_operator, 1), + [72] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tool, 1), + [74] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tool, 1), + [76] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list, 3), + [78] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list, 3), + [80] = {.entry = {.count = 1, .reusable = true}}, SHIFT(16), + [82] = {.entry = {.count = 1, .reusable = false}}, SHIFT(16), + [84] = {.entry = {.count = 1, .reusable = true}}, SHIFT(17), + [86] = {.entry = {.count = 1, .reusable = false}}, SHIFT(14), + [88] = {.entry = {.count = 1, .reusable = true}}, SHIFT(9), + [90] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(16), + [93] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(16), + [96] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(17), + [99] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(14), + [102] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_list_repeat1, 2), + [104] = {.entry = {.count = 1, .reusable = true}}, SHIFT(18), + [106] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_list_repeat1, 1), + [108] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_list_repeat1, 1), + [110] = {.entry = {.count = 1, .reusable = true}}, SHIFT(19), + [112] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_list_repeat1, 2), + [114] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), + [116] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4), }; #ifdef __cplusplus