diff --git a/grammar.js b/grammar.js index e9bad38..bd702d7 100644 --- a/grammar.js +++ b/grammar.js @@ -5,8 +5,6 @@ const PREC = { CONTAINER: 2, CONNECTION: 2, SHAPE: 3, - CONTAINER_BLOCK: 4, - SHAPE_BLOCK: 4, IDENTIFIER: 0, ARROW: 0, ATTRIBUTE: 0, @@ -23,10 +21,7 @@ module.exports = grammar({ word: ($) => $._identifier, - conflicts: ($) => [ - [$._connection_path, $.container], - [$._container_block_definition, $._shape_block_definition], - ], + conflicts: ($) => [[$._connection_path, $.container]], rules: { source_file: ($) => repeat($._root_definition), @@ -82,15 +77,15 @@ module.exports = grammar({ ), _container_block: ($) => - prec( - PREC.CONTAINER, - seq("{", repeat($._container_block_definition), "}") - ), + seq("{", repeat($._container_block_definition), "}"), _container_block_definition: ($) => - prec( - PREC.CONTAINER_BLOCK, - choice($._eol, seq(choice($.shape, $.container, $.connection), $._end)) + choice( + $._eol, + seq( + choice($.shape, $.container, $.connection, $._shape_attribute), + $._end + ) ), // shapes @@ -103,10 +98,7 @@ module.exports = grammar({ optional( choice( seq($.dot, alias($._style_attribute, $.attribute)), - seq( - optional(seq($._colon, optional($.label))), - optional(seq(alias($._shape_block, $.block))) - ) + seq(optional(seq($._colon, optional($.label)))) ) ) ) @@ -117,11 +109,6 @@ module.exports = grammar({ _identifier: ($) => token(prec(PREC.IDENTIFIER, /\-?([\w\d]+|([\w\d]+( +|\-)[\w\d]+)+)/)), - _shape_block: ($) => - prec(PREC.SHAPE, seq("{", repeat($._shape_block_definition), "}")), - - _shape_block_definition: ($) => prec(PREC.SHAPE_BLOCK, choice($._eol)), - // attributes _root_attribute: ($) => @@ -145,6 +132,15 @@ module.exports = grammar({ ) ), + _shape_attribute: ($) => + choice( + alias($._base_shape_attribute, $.attribute), + alias($._style_attribute, $.attribute) + ), + + _base_shape_attribute: ($) => + seq(alias($._shape_attr_key, $.attr_key), $._colon, $.attr_value), + _shape_attr_key: ($) => prec( PREC.ATTRIBUTE_KEY, diff --git a/src/grammar.json b/src/grammar.json index 6e0a6fd..45a4ba0 100644 --- a/src/grammar.json +++ b/src/grammar.json @@ -240,67 +240,63 @@ } }, "_container_block": { - "type": "PREC", - "value": 2, - "content": { - "type": "SEQ", - "members": [ - { - "type": "STRING", - "value": "{" - }, - { - "type": "REPEAT", - "content": { - "type": "SYMBOL", - "name": "_container_block_definition" - } - }, - { - "type": "STRING", - "value": "}" + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "{" + }, + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "_container_block_definition" } - ] - } + }, + { + "type": "STRING", + "value": "}" + } + ] }, "_container_block_definition": { - "type": "PREC", - "value": 4, - "content": { - "type": "CHOICE", - "members": [ - { - "type": "SYMBOL", - "name": "_eol" - }, - { - "type": "SEQ", - "members": [ - { - "type": "CHOICE", - "members": [ - { - "type": "SYMBOL", - "name": "shape" - }, - { - "type": "SYMBOL", - "name": "container" - }, - { - "type": "SYMBOL", - "name": "connection" - } - ] - }, - { - "type": "SYMBOL", - "name": "_end" - } - ] - } - ] - } + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "_eol" + }, + { + "type": "SEQ", + "members": [ + { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "shape" + }, + { + "type": "SYMBOL", + "name": "container" + }, + { + "type": "SYMBOL", + "name": "connection" + }, + { + "type": "SYMBOL", + "name": "_shape_attribute" + } + ] + }, + { + "type": "SYMBOL", + "name": "_end" + } + ] + } + ] }, "shape": { "type": "PREC", @@ -367,28 +363,6 @@ "type": "BLANK" } ] - }, - { - "type": "CHOICE", - "members": [ - { - "type": "SEQ", - "members": [ - { - "type": "ALIAS", - "content": { - "type": "SYMBOL", - "name": "_shape_block" - }, - "named": true, - "value": "block" - } - ] - }, - { - "type": "BLANK" - } - ] } ] } @@ -443,43 +417,6 @@ } } }, - "_shape_block": { - "type": "PREC", - "value": 3, - "content": { - "type": "SEQ", - "members": [ - { - "type": "STRING", - "value": "{" - }, - { - "type": "REPEAT", - "content": { - "type": "SYMBOL", - "name": "_shape_block_definition" - } - }, - { - "type": "STRING", - "value": "}" - } - ] - } - }, - "_shape_block_definition": { - "type": "PREC", - "value": 4, - "content": { - "type": "CHOICE", - "members": [ - { - "type": "SYMBOL", - "name": "_eol" - } - ] - } - }, "_root_attribute": { "type": "SEQ", "members": [ @@ -549,6 +486,51 @@ } ] }, + "_shape_attribute": { + "type": "CHOICE", + "members": [ + { + "type": "ALIAS", + "content": { + "type": "SYMBOL", + "name": "_base_shape_attribute" + }, + "named": true, + "value": "attribute" + }, + { + "type": "ALIAS", + "content": { + "type": "SYMBOL", + "name": "_style_attribute" + }, + "named": true, + "value": "attribute" + } + ] + }, + "_base_shape_attribute": { + "type": "SEQ", + "members": [ + { + "type": "ALIAS", + "content": { + "type": "SYMBOL", + "name": "_shape_attr_key" + }, + "named": true, + "value": "attr_key" + }, + { + "type": "SYMBOL", + "name": "_colon" + }, + { + "type": "SYMBOL", + "name": "attr_value" + } + ] + }, "_shape_attr_key": { "type": "PREC", "value": 0, @@ -982,17 +964,8 @@ "type": "PREC", "value": -1, "content": { - "type": "CHOICE", - "members": [ - { - "type": "STRING", - "value": "\n" - }, - { - "type": "STRING", - "value": "\u0000" - } - ] + "type": "STRING", + "value": "\n" } } }, @@ -1029,10 +1002,6 @@ [ "_connection_path", "container" - ], - [ - "_container_block_definition", - "_shape_block_definition" ] ], "precedences": [], diff --git a/src/node-types.json b/src/node-types.json index 3a738c0..810cf29 100644 --- a/src/node-types.json +++ b/src/node-types.json @@ -200,10 +200,6 @@ "type": "attribute", "named": true }, - { - "type": "block", - "named": true - }, { "type": "dot", "named": true diff --git a/src/parser.c b/src/parser.c index c72ab26..ab92f90 100644 --- a/src/parser.c +++ b/src/parser.c @@ -6,7 +6,7 @@ #endif #define LANGUAGE_VERSION 14 -#define STATE_COUNT 81 +#define STATE_COUNT 79 #define LARGE_STATE_COUNT 4 #define SYMBOL_COUNT 73 #define ALIAS_COUNT 1 @@ -66,25 +66,25 @@ enum { sym__container_block_definition = 47, sym_shape = 48, sym_shape_key = 49, - sym__shape_block = 50, - sym__shape_block_definition = 51, - sym__root_attribute = 52, - sym__root_attr_key = 53, - sym__style_attribute = 54, - sym__style_attribute_block = 55, - sym__inner_style_attribute = 56, - sym__style_attr_key = 57, - sym__common_style_attr_key = 58, - sym_label = 59, - sym_attr_value = 60, - sym__colon = 61, - sym_string = 62, - sym__end = 63, - aux_sym_source_file_repeat1 = 64, - aux_sym_connection_repeat1 = 65, - aux_sym__connection_path_repeat1 = 66, - aux_sym__container_block_repeat1 = 67, - aux_sym__shape_block_repeat1 = 68, + sym__root_attribute = 50, + sym__root_attr_key = 51, + sym__shape_attribute = 52, + sym__base_shape_attribute = 53, + sym__shape_attr_key = 54, + sym__style_attribute = 55, + sym__style_attribute_block = 56, + sym__inner_style_attribute = 57, + sym__style_attr_key = 58, + sym__common_style_attr_key = 59, + sym_label = 60, + sym_attr_value = 61, + sym__colon = 62, + sym_string = 63, + sym__end = 64, + aux_sym_source_file_repeat1 = 65, + aux_sym_connection_repeat1 = 66, + aux_sym__connection_path_repeat1 = 67, + aux_sym__container_block_repeat1 = 68, aux_sym__style_attribute_block_repeat1 = 69, aux_sym_string_repeat1 = 70, aux_sym_string_repeat2 = 71, @@ -143,10 +143,11 @@ static const char * const ts_symbol_names[] = { [sym__container_block_definition] = "_container_block_definition", [sym_shape] = "shape", [sym_shape_key] = "shape_key", - [sym__shape_block] = "block", - [sym__shape_block_definition] = "_shape_block_definition", [sym__root_attribute] = "attribute", [sym__root_attr_key] = "attr_key", + [sym__shape_attribute] = "_shape_attribute", + [sym__base_shape_attribute] = "attribute", + [sym__shape_attr_key] = "attr_key", [sym__style_attribute] = "attribute", [sym__style_attribute_block] = "block", [sym__inner_style_attribute] = "attribute", @@ -161,7 +162,6 @@ static const char * const ts_symbol_names[] = { [aux_sym_connection_repeat1] = "connection_repeat1", [aux_sym__connection_path_repeat1] = "_connection_path_repeat1", [aux_sym__container_block_repeat1] = "_container_block_repeat1", - [aux_sym__shape_block_repeat1] = "_shape_block_repeat1", [aux_sym__style_attribute_block_repeat1] = "_style_attribute_block_repeat1", [aux_sym_string_repeat1] = "string_repeat1", [aux_sym_string_repeat2] = "string_repeat2", @@ -220,10 +220,11 @@ static const TSSymbol ts_symbol_map[] = { [sym__container_block_definition] = sym__container_block_definition, [sym_shape] = sym_shape, [sym_shape_key] = sym_shape_key, - [sym__shape_block] = sym__container_block, - [sym__shape_block_definition] = sym__shape_block_definition, [sym__root_attribute] = sym__root_attribute, [sym__root_attr_key] = anon_sym_style, + [sym__shape_attribute] = sym__shape_attribute, + [sym__base_shape_attribute] = sym__root_attribute, + [sym__shape_attr_key] = anon_sym_style, [sym__style_attribute] = sym__root_attribute, [sym__style_attribute_block] = sym__container_block, [sym__inner_style_attribute] = sym__root_attribute, @@ -238,7 +239,6 @@ static const TSSymbol ts_symbol_map[] = { [aux_sym_connection_repeat1] = aux_sym_connection_repeat1, [aux_sym__connection_path_repeat1] = aux_sym__connection_path_repeat1, [aux_sym__container_block_repeat1] = aux_sym__container_block_repeat1, - [aux_sym__shape_block_repeat1] = aux_sym__shape_block_repeat1, [aux_sym__style_attribute_block_repeat1] = aux_sym__style_attribute_block_repeat1, [aux_sym_string_repeat1] = aux_sym_string_repeat1, [aux_sym_string_repeat2] = aux_sym_string_repeat2, @@ -447,14 +447,6 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = true, }, - [sym__shape_block] = { - .visible = true, - .named = true, - }, - [sym__shape_block_definition] = { - .visible = false, - .named = true, - }, [sym__root_attribute] = { .visible = true, .named = true, @@ -463,6 +455,18 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = true, }, + [sym__shape_attribute] = { + .visible = false, + .named = true, + }, + [sym__base_shape_attribute] = { + .visible = true, + .named = true, + }, + [sym__shape_attr_key] = { + .visible = true, + .named = true, + }, [sym__style_attribute] = { .visible = true, .named = true, @@ -519,10 +523,6 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = false, .named = false, }, - [aux_sym__shape_block_repeat1] = { - .visible = false, - .named = false, - }, [aux_sym__style_attribute_block_repeat1] = { .visible = false, .named = false, @@ -591,10 +591,10 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [22] = 22, [23] = 23, [24] = 24, - [25] = 25, + [25] = 21, [26] = 26, [27] = 27, - [28] = 21, + [28] = 28, [29] = 29, [30] = 30, [31] = 31, @@ -645,8 +645,6 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [76] = 76, [77] = 77, [78] = 78, - [79] = 79, - [80] = 80, }; static inline bool aux_sym_string_token2_character_set_1(int32_t c) { @@ -689,8 +687,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { switch (state) { case 0: if (eof) ADVANCE(86); - if (lookahead == 0 || - lookahead == '\n') ADVANCE(194); + if (lookahead == '\n') ADVANCE(194); if (lookahead == '"') ADVANCE(187); if (lookahead == '#') ADVANCE(193); if (lookahead == '\'') ADVANCE(184); @@ -699,7 +696,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { if (lookahead == '3') ADVANCE(93); if (lookahead == ':') ADVANCE(179); if (lookahead == ';') ADVANCE(195); - if (lookahead == '<') ADVANCE(5); + if (lookahead == '<') ADVANCE(11); if (lookahead == '`') ADVANCE(190); if (lookahead == 'a') ADVANCE(122); if (lookahead == 'b') ADVANCE(123); @@ -716,289 +713,27 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { ('_' <= lookahead && lookahead <= 'z')) ADVANCE(144); END_STATE(); case 1: - if (lookahead == ' ') ADVANCE(1); - if (('0' <= lookahead && lookahead <= '9') || - ('A' <= lookahead && lookahead <= 'Z') || - lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(151); - END_STATE(); - case 2: - if (lookahead == '"') ADVANCE(187); - if (lookahead == '#') ADVANCE(189); - if (aux_sym_string_token2_character_set_1(lookahead)) ADVANCE(188); - if (lookahead != 0 && - lookahead != '\n') ADVANCE(189); - END_STATE(); - case 3: - if (lookahead == '#') ADVANCE(186); - if (lookahead == '\'') ADVANCE(184); - if (aux_sym_string_token2_character_set_1(lookahead)) ADVANCE(185); - if (lookahead != 0 && - lookahead != '\n') ADVANCE(186); - END_STATE(); - case 4: - if (lookahead == '#') ADVANCE(192); - if (lookahead == '`') ADVANCE(190); - if (aux_sym_string_token2_character_set_1(lookahead)) ADVANCE(191); - if (lookahead != 0 && - lookahead != '\n') ADVANCE(192); - END_STATE(); - case 5: - if (lookahead == '-') ADVANCE(181); - END_STATE(); - case 6: - if (lookahead == '-') ADVANCE(181); - if (lookahead == '>') ADVANCE(180); - END_STATE(); - case 7: - if (lookahead == '-') ADVANCE(181); - if (lookahead == '>') ADVANCE(180); - if (('0' <= lookahead && lookahead <= '9') || - ('A' <= lookahead && lookahead <= 'Z') || - lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(144); - END_STATE(); - case 8: - if (lookahead == '-') ADVANCE(16); - END_STATE(); - case 9: - if (lookahead == '-') ADVANCE(63); - END_STATE(); - case 10: - if (lookahead == 'a') ADVANCE(17); - END_STATE(); - case 11: - if (lookahead == 'a') ADVANCE(64); - END_STATE(); - case 12: - if (lookahead == 'a') ADVANCE(22); - END_STATE(); - case 13: - if (lookahead == 'a') ADVANCE(70); - END_STATE(); - case 14: - if (lookahead == 'a') ADVANCE(25); - END_STATE(); - case 15: - if (lookahead == 'c') ADVANCE(150); - if (('0' <= lookahead && lookahead <= '9') || - ('A' <= lookahead && lookahead <= 'Z') || - lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(151); - END_STATE(); - case 16: - if (lookahead == 'c') ADVANCE(55); - END_STATE(); - case 17: - if (lookahead == 'c') ADVANCE(38); - END_STATE(); - case 18: - if (lookahead == 'd') ADVANCE(152); - END_STATE(); - case 19: - if (lookahead == 'd') ADVANCE(28); - END_STATE(); - case 20: - if (lookahead == 'd') ADVANCE(172); - END_STATE(); - case 21: - if (lookahead == 'd') ADVANCE(147); - if (lookahead == 'w') ADVANCE(149); - if (('0' <= lookahead && lookahead <= '9') || - ('A' <= lookahead && lookahead <= 'Z') || - lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(151); - END_STATE(); - case 22: - if (lookahead == 'd') ADVANCE(52); - END_STATE(); - case 23: - if (lookahead == 'd') ADVANCE(11); - if (lookahead == 'w') ADVANCE(39); - END_STATE(); - case 24: - if (lookahead == 'd') ADVANCE(68); - END_STATE(); - case 25: - if (lookahead == 'd') ADVANCE(35); - END_STATE(); - case 26: - if (lookahead == 'e') ADVANCE(159); - END_STATE(); - case 27: - if (lookahead == 'e') ADVANCE(170); - END_STATE(); - case 28: - if (lookahead == 'e') ADVANCE(62); - END_STATE(); - case 29: - if (lookahead == 'e') ADVANCE(20); - END_STATE(); - case 30: - if (lookahead == 'h') ADVANCE(162); - END_STATE(); - case 31: - if (lookahead == 'h') ADVANCE(160); - END_STATE(); - case 32: - if (lookahead == 'h') ADVANCE(12); - if (lookahead == 't') ADVANCE(61); - END_STATE(); - case 33: - if (lookahead == 'i') ADVANCE(44); - if (lookahead == 'o') ADVANCE(48); - END_STATE(); - case 34: - if (lookahead == 'i') ADVANCE(47); - END_STATE(); - case 35: - if (lookahead == 'i') ADVANCE(72); - END_STATE(); - case 36: - if (lookahead == 'i') ADVANCE(57); - END_STATE(); - case 37: - if (lookahead == 'i') ADVANCE(49); - END_STATE(); - case 38: - if (lookahead == 'i') ADVANCE(66); - END_STATE(); - case 39: - if (lookahead == 'i') ADVANCE(24); - END_STATE(); - case 40: - if (lookahead == 'k') ADVANCE(174); - END_STATE(); - case 41: - if (lookahead == 'k') ADVANCE(26); - END_STATE(); - case 42: - if (lookahead == 'l') ADVANCE(156); - END_STATE(); - case 43: - if (lookahead == 'l') ADVANCE(69); - END_STATE(); - case 44: - if (lookahead == 'l') ADVANCE(42); - END_STATE(); - case 45: - if (lookahead == 'l') ADVANCE(27); - END_STATE(); - case 46: - if (lookahead == 'l') ADVANCE(54); - END_STATE(); - case 47: - if (lookahead == 'm') ADVANCE(13); - END_STATE(); - case 48: - if (lookahead == 'n') ADVANCE(67); - END_STATE(); - case 49: - if (lookahead == 'n') ADVANCE(40); - END_STATE(); - case 50: - if (lookahead == 'n') ADVANCE(34); - END_STATE(); - case 51: - if (lookahead == 'o') ADVANCE(60); - END_STATE(); - case 52: - if (lookahead == 'o') ADVANCE(73); - END_STATE(); - case 53: - if (lookahead == 'o') ADVANCE(41); - END_STATE(); - case 54: - if (lookahead == 'o') ADVANCE(59); - END_STATE(); - case 55: - if (lookahead == 'o') ADVANCE(46); - END_STATE(); - case 56: - if (lookahead == 'p') ADVANCE(10); - END_STATE(); - case 57: - if (lookahead == 'p') ADVANCE(45); - END_STATE(); - case 58: - if (lookahead == 'r') ADVANCE(148); - if (('0' <= lookahead && lookahead <= '9') || - ('A' <= lookahead && lookahead <= 'Z') || - lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(151); - END_STATE(); - case 59: - if (lookahead == 'r') ADVANCE(166); - END_STATE(); - case 60: - if (lookahead == 'r') ADVANCE(19); - END_STATE(); - case 61: - if (lookahead == 'r') ADVANCE(53); - END_STATE(); - case 62: - if (lookahead == 'r') ADVANCE(9); - END_STATE(); - case 63: - if (lookahead == 'r') ADVANCE(14); - END_STATE(); - case 64: - if (lookahead == 's') ADVANCE(30); - END_STATE(); - case 65: - if (lookahead == 's') ADVANCE(164); - END_STATE(); - case 66: - if (lookahead == 't') ADVANCE(74); - END_STATE(); - case 67: - if (lookahead == 't') ADVANCE(8); - END_STATE(); - case 68: - if (lookahead == 't') ADVANCE(31); - END_STATE(); - case 69: - if (lookahead == 't') ADVANCE(36); - END_STATE(); - case 70: - if (lookahead == 't') ADVANCE(29); - END_STATE(); - case 71: - if (lookahead == 'u') ADVANCE(43); - END_STATE(); - case 72: - if (lookahead == 'u') ADVANCE(65); - END_STATE(); - case 73: - if (lookahead == 'w') ADVANCE(168); - END_STATE(); - case 74: - if (lookahead == 'y') ADVANCE(154); - END_STATE(); - case 75: - if (lookahead == 0 || - lookahead == '\n') ADVANCE(194); + if (lookahead == '\n') ADVANCE(194); if (lookahead == '"') ADVANCE(187); if (lookahead == '#') ADVANCE(193); if (lookahead == '\'') ADVANCE(184); if (lookahead == '-') ADVANCE(81); if (lookahead == '`') ADVANCE(190); if (lookahead == '}') ADVANCE(88); - if (sym__eol_character_set_1(lookahead)) SKIP(75) + if (sym__eol_character_set_1(lookahead)) SKIP(1) if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || ('_' <= lookahead && lookahead <= 'z')) ADVANCE(144); END_STATE(); - case 76: - if (lookahead == 0 || - lookahead == '\n') ADVANCE(194); + case 2: + if (lookahead == '\n') ADVANCE(194); if (lookahead == '"') ADVANCE(187); if (lookahead == '#') ADVANCE(193); if (lookahead == '\'') ADVANCE(184); if (lookahead == ';') ADVANCE(195); if (lookahead == '`') ADVANCE(190); if (lookahead == '{') ADVANCE(87); - if (sym__eol_character_set_1(lookahead)) SKIP(76) + if (sym__eol_character_set_1(lookahead)) SKIP(2) if (lookahead == '!' || lookahead == '-' || ('0' <= lookahead && lookahead <= '9') || @@ -1006,68 +741,324 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { ('A' <= lookahead && lookahead <= 'Z') || ('_' <= lookahead && lookahead <= 'z')) ADVANCE(183); END_STATE(); - case 77: - if (lookahead == 0 || - lookahead == '\n') ADVANCE(194); + case 3: + if (lookahead == '\n') ADVANCE(194); if (lookahead == '#') ADVANCE(193); if (lookahead == '-') ADVANCE(177); if (lookahead == '.') ADVANCE(182); - if (lookahead == '3') ADVANCE(18); + if (lookahead == '3') ADVANCE(24); if (lookahead == ':') ADVANCE(179); if (lookahead == ';') ADVANCE(195); - if (lookahead == '<') ADVANCE(5); - if (lookahead == 'a') ADVANCE(50); - if (lookahead == 'b') ADVANCE(51); - if (lookahead == 'f') ADVANCE(33); - if (lookahead == 'l') ADVANCE(37); - if (lookahead == 'm') ADVANCE(71); - if (lookahead == 'o') ADVANCE(56); - if (lookahead == 's') ADVANCE(32); + if (lookahead == '<') ADVANCE(11); + if (lookahead == 'a') ADVANCE(56); + if (lookahead == 'b') ADVANCE(57); + if (lookahead == 'f') ADVANCE(39); + if (lookahead == 'l') ADVANCE(43); + if (lookahead == 'm') ADVANCE(77); + if (lookahead == 'o') ADVANCE(62); + if (lookahead == 's') ADVANCE(38); if (lookahead == '{') ADVANCE(87); if (lookahead == '}') ADVANCE(88); - if (sym__eol_character_set_1(lookahead)) SKIP(78) + if (sym__eol_character_set_1(lookahead)) SKIP(4) END_STATE(); - case 78: - if (lookahead == 0 || - lookahead == '\n') ADVANCE(194); + case 4: + if (lookahead == '\n') ADVANCE(194); if (lookahead == '#') ADVANCE(193); - if (lookahead == '-') ADVANCE(6); + if (lookahead == '-') ADVANCE(12); if (lookahead == '.') ADVANCE(182); - if (lookahead == '3') ADVANCE(18); + if (lookahead == '3') ADVANCE(24); if (lookahead == ':') ADVANCE(179); if (lookahead == ';') ADVANCE(195); - if (lookahead == '<') ADVANCE(5); - if (lookahead == 'a') ADVANCE(50); - if (lookahead == 'b') ADVANCE(51); - if (lookahead == 'f') ADVANCE(33); - if (lookahead == 'l') ADVANCE(37); - if (lookahead == 'm') ADVANCE(71); - if (lookahead == 'o') ADVANCE(56); - if (lookahead == 's') ADVANCE(32); + if (lookahead == '<') ADVANCE(11); + if (lookahead == 'a') ADVANCE(56); + if (lookahead == 'b') ADVANCE(57); + if (lookahead == 'f') ADVANCE(39); + if (lookahead == 'l') ADVANCE(43); + if (lookahead == 'm') ADVANCE(77); + if (lookahead == 'o') ADVANCE(62); + if (lookahead == 's') ADVANCE(38); if (lookahead == '{') ADVANCE(87); if (lookahead == '}') ADVANCE(88); - if (sym__eol_character_set_1(lookahead)) SKIP(78) + if (sym__eol_character_set_1(lookahead)) SKIP(4) END_STATE(); - case 79: - if (lookahead == 0 || - lookahead == '\n') ADVANCE(194); + case 5: + if (lookahead == '\n') ADVANCE(194); if (lookahead == '#') ADVANCE(193); if (lookahead == '-') ADVANCE(176); if (lookahead == '.') ADVANCE(182); if (lookahead == ':') ADVANCE(179); if (lookahead == ';') ADVANCE(195); if (lookahead == '{') ADVANCE(87); - if (sym__eol_character_set_1(lookahead)) SKIP(80) + if (sym__eol_character_set_1(lookahead)) SKIP(6) END_STATE(); - case 80: - if (lookahead == 0 || - lookahead == '\n') ADVANCE(194); + case 6: + if (lookahead == '\n') ADVANCE(194); if (lookahead == '#') ADVANCE(193); if (lookahead == '.') ADVANCE(182); if (lookahead == ':') ADVANCE(179); if (lookahead == ';') ADVANCE(195); if (lookahead == '{') ADVANCE(87); - if (sym__eol_character_set_1(lookahead)) SKIP(80) + if (sym__eol_character_set_1(lookahead)) SKIP(6) + END_STATE(); + case 7: + if (lookahead == ' ') ADVANCE(7); + if (('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'Z') || + lookahead == '_' || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(151); + END_STATE(); + case 8: + if (lookahead == '"') ADVANCE(187); + if (lookahead == '#') ADVANCE(189); + if (aux_sym_string_token2_character_set_1(lookahead)) ADVANCE(188); + if (lookahead != 0 && + lookahead != '\n') ADVANCE(189); + END_STATE(); + case 9: + if (lookahead == '#') ADVANCE(186); + if (lookahead == '\'') ADVANCE(184); + if (aux_sym_string_token2_character_set_1(lookahead)) ADVANCE(185); + if (lookahead != 0 && + lookahead != '\n') ADVANCE(186); + END_STATE(); + case 10: + if (lookahead == '#') ADVANCE(192); + if (lookahead == '`') ADVANCE(190); + if (aux_sym_string_token2_character_set_1(lookahead)) ADVANCE(191); + if (lookahead != 0 && + lookahead != '\n') ADVANCE(192); + END_STATE(); + case 11: + if (lookahead == '-') ADVANCE(181); + END_STATE(); + case 12: + if (lookahead == '-') ADVANCE(181); + if (lookahead == '>') ADVANCE(180); + END_STATE(); + case 13: + if (lookahead == '-') ADVANCE(181); + if (lookahead == '>') ADVANCE(180); + if (('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'Z') || + lookahead == '_' || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(144); + END_STATE(); + case 14: + if (lookahead == '-') ADVANCE(22); + END_STATE(); + case 15: + if (lookahead == '-') ADVANCE(69); + END_STATE(); + case 16: + if (lookahead == 'a') ADVANCE(23); + END_STATE(); + case 17: + if (lookahead == 'a') ADVANCE(70); + END_STATE(); + case 18: + if (lookahead == 'a') ADVANCE(28); + END_STATE(); + case 19: + if (lookahead == 'a') ADVANCE(76); + END_STATE(); + case 20: + if (lookahead == 'a') ADVANCE(31); + END_STATE(); + case 21: + if (lookahead == 'c') ADVANCE(150); + if (('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'Z') || + lookahead == '_' || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(151); + END_STATE(); + case 22: + if (lookahead == 'c') ADVANCE(61); + END_STATE(); + case 23: + if (lookahead == 'c') ADVANCE(44); + END_STATE(); + case 24: + if (lookahead == 'd') ADVANCE(152); + END_STATE(); + case 25: + if (lookahead == 'd') ADVANCE(34); + END_STATE(); + case 26: + if (lookahead == 'd') ADVANCE(172); + END_STATE(); + case 27: + if (lookahead == 'd') ADVANCE(147); + if (lookahead == 'w') ADVANCE(149); + if (('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'Z') || + lookahead == '_' || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(151); + END_STATE(); + case 28: + if (lookahead == 'd') ADVANCE(58); + END_STATE(); + case 29: + if (lookahead == 'd') ADVANCE(17); + if (lookahead == 'w') ADVANCE(45); + END_STATE(); + case 30: + if (lookahead == 'd') ADVANCE(74); + END_STATE(); + case 31: + if (lookahead == 'd') ADVANCE(41); + END_STATE(); + case 32: + if (lookahead == 'e') ADVANCE(159); + END_STATE(); + case 33: + if (lookahead == 'e') ADVANCE(170); + END_STATE(); + case 34: + if (lookahead == 'e') ADVANCE(68); + END_STATE(); + case 35: + if (lookahead == 'e') ADVANCE(26); + END_STATE(); + case 36: + if (lookahead == 'h') ADVANCE(162); + END_STATE(); + case 37: + if (lookahead == 'h') ADVANCE(160); + END_STATE(); + case 38: + if (lookahead == 'h') ADVANCE(18); + if (lookahead == 't') ADVANCE(67); + END_STATE(); + case 39: + if (lookahead == 'i') ADVANCE(50); + if (lookahead == 'o') ADVANCE(54); + END_STATE(); + case 40: + if (lookahead == 'i') ADVANCE(53); + END_STATE(); + case 41: + if (lookahead == 'i') ADVANCE(78); + END_STATE(); + case 42: + if (lookahead == 'i') ADVANCE(63); + END_STATE(); + case 43: + if (lookahead == 'i') ADVANCE(55); + END_STATE(); + case 44: + if (lookahead == 'i') ADVANCE(72); + END_STATE(); + case 45: + if (lookahead == 'i') ADVANCE(30); + END_STATE(); + case 46: + if (lookahead == 'k') ADVANCE(174); + END_STATE(); + case 47: + if (lookahead == 'k') ADVANCE(32); + END_STATE(); + case 48: + if (lookahead == 'l') ADVANCE(156); + END_STATE(); + case 49: + if (lookahead == 'l') ADVANCE(75); + END_STATE(); + case 50: + if (lookahead == 'l') ADVANCE(48); + END_STATE(); + case 51: + if (lookahead == 'l') ADVANCE(33); + END_STATE(); + case 52: + if (lookahead == 'l') ADVANCE(60); + END_STATE(); + case 53: + if (lookahead == 'm') ADVANCE(19); + END_STATE(); + case 54: + if (lookahead == 'n') ADVANCE(73); + END_STATE(); + case 55: + if (lookahead == 'n') ADVANCE(46); + END_STATE(); + case 56: + if (lookahead == 'n') ADVANCE(40); + END_STATE(); + case 57: + if (lookahead == 'o') ADVANCE(66); + END_STATE(); + case 58: + if (lookahead == 'o') ADVANCE(79); + END_STATE(); + case 59: + if (lookahead == 'o') ADVANCE(47); + END_STATE(); + case 60: + if (lookahead == 'o') ADVANCE(65); + END_STATE(); + case 61: + if (lookahead == 'o') ADVANCE(52); + END_STATE(); + case 62: + if (lookahead == 'p') ADVANCE(16); + END_STATE(); + case 63: + if (lookahead == 'p') ADVANCE(51); + END_STATE(); + case 64: + if (lookahead == 'r') ADVANCE(148); + if (('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'Z') || + lookahead == '_' || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(151); + END_STATE(); + case 65: + if (lookahead == 'r') ADVANCE(166); + END_STATE(); + case 66: + if (lookahead == 'r') ADVANCE(25); + END_STATE(); + case 67: + if (lookahead == 'r') ADVANCE(59); + END_STATE(); + case 68: + if (lookahead == 'r') ADVANCE(15); + END_STATE(); + case 69: + if (lookahead == 'r') ADVANCE(20); + END_STATE(); + case 70: + if (lookahead == 's') ADVANCE(36); + END_STATE(); + case 71: + if (lookahead == 's') ADVANCE(164); + END_STATE(); + case 72: + if (lookahead == 't') ADVANCE(80); + END_STATE(); + case 73: + if (lookahead == 't') ADVANCE(14); + END_STATE(); + case 74: + if (lookahead == 't') ADVANCE(37); + END_STATE(); + case 75: + if (lookahead == 't') ADVANCE(42); + END_STATE(); + case 76: + if (lookahead == 't') ADVANCE(35); + END_STATE(); + case 77: + if (lookahead == 'u') ADVANCE(49); + END_STATE(); + case 78: + if (lookahead == 'u') ADVANCE(71); + END_STATE(); + case 79: + if (lookahead == 'w') ADVANCE(168); + END_STATE(); + case 80: + if (lookahead == 'y') ADVANCE(154); END_STATE(); case 81: if (('0' <= lookahead && lookahead <= '9') || @@ -1099,17 +1090,16 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 84: if (eof) ADVANCE(86); - if (lookahead == 0 || - lookahead == '\n') ADVANCE(194); + if (lookahead == '\n') ADVANCE(194); if (lookahead == '"') ADVANCE(187); if (lookahead == '#') ADVANCE(193); if (lookahead == '\'') ADVANCE(184); - if (lookahead == '-') ADVANCE(7); + if (lookahead == '-') ADVANCE(13); if (lookahead == '.') ADVANCE(182); if (lookahead == '3') ADVANCE(93); if (lookahead == ':') ADVANCE(179); if (lookahead == ';') ADVANCE(195); - if (lookahead == '<') ADVANCE(5); + if (lookahead == '<') ADVANCE(11); if (lookahead == '`') ADVANCE(190); if (lookahead == 'a') ADVANCE(122); if (lookahead == 'b') ADVANCE(123); @@ -1127,8 +1117,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 85: if (eof) ADVANCE(86); - if (lookahead == 0 || - lookahead == '\n') ADVANCE(194); + if (lookahead == '\n') ADVANCE(194); if (lookahead == '"') ADVANCE(187); if (lookahead == '#') ADVANCE(193); if (lookahead == '\'') ADVANCE(184); @@ -1157,7 +1146,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 89: ACCEPT_TOKEN(sym__identifier); - if (lookahead == ' ') ADVANCE(1); + if (lookahead == ' ') ADVANCE(7); if (lookahead == '-') ADVANCE(82); if (lookahead == 'a') ADVANCE(92); if (('0' <= lookahead && lookahead <= '9') || @@ -1167,7 +1156,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 90: ACCEPT_TOKEN(sym__identifier); - if (lookahead == ' ') ADVANCE(1); + if (lookahead == ' ') ADVANCE(7); if (lookahead == '-') ADVANCE(82); if (lookahead == 'a') ADVANCE(96); if (('0' <= lookahead && lookahead <= '9') || @@ -1177,7 +1166,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 91: ACCEPT_TOKEN(sym__identifier); - if (lookahead == ' ') ADVANCE(1); + if (lookahead == ' ') ADVANCE(7); if (lookahead == '-') ADVANCE(82); if (lookahead == 'a') ADVANCE(139); if (('0' <= lookahead && lookahead <= '9') || @@ -1187,7 +1176,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 92: ACCEPT_TOKEN(sym__identifier); - if (lookahead == ' ') ADVANCE(1); + if (lookahead == ' ') ADVANCE(7); if (lookahead == '-') ADVANCE(82); if (lookahead == 'c') ADVANCE(111); if (('0' <= lookahead && lookahead <= '9') || @@ -1197,7 +1186,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 93: ACCEPT_TOKEN(sym__identifier); - if (lookahead == ' ') ADVANCE(1); + if (lookahead == ' ') ADVANCE(7); if (lookahead == '-') ADVANCE(82); if (lookahead == 'd') ADVANCE(153); if (('0' <= lookahead && lookahead <= '9') || @@ -1207,7 +1196,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 94: ACCEPT_TOKEN(sym__identifier); - if (lookahead == ' ') ADVANCE(1); + if (lookahead == ' ') ADVANCE(7); if (lookahead == '-') ADVANCE(82); if (lookahead == 'd') ADVANCE(101); if (('0' <= lookahead && lookahead <= '9') || @@ -1217,7 +1206,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 95: ACCEPT_TOKEN(sym__identifier); - if (lookahead == ' ') ADVANCE(1); + if (lookahead == ' ') ADVANCE(7); if (lookahead == '-') ADVANCE(82); if (lookahead == 'd') ADVANCE(173); if (('0' <= lookahead && lookahead <= '9') || @@ -1227,7 +1216,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 96: ACCEPT_TOKEN(sym__identifier); - if (lookahead == ' ') ADVANCE(1); + if (lookahead == ' ') ADVANCE(7); if (lookahead == '-') ADVANCE(82); if (lookahead == 'd') ADVANCE(124); if (('0' <= lookahead && lookahead <= '9') || @@ -1237,7 +1226,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 97: ACCEPT_TOKEN(sym__identifier); - if (lookahead == ' ') ADVANCE(1); + if (lookahead == ' ') ADVANCE(7); if (lookahead == '-') ADVANCE(82); if (lookahead == 'd') ADVANCE(108); if (('0' <= lookahead && lookahead <= '9') || @@ -1247,7 +1236,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 98: ACCEPT_TOKEN(sym__identifier); - if (lookahead == ' ') ADVANCE(1); + if (lookahead == ' ') ADVANCE(7); if (lookahead == '-') ADVANCE(82); if (lookahead == 'd') ADVANCE(137); if (('0' <= lookahead && lookahead <= '9') || @@ -1257,7 +1246,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 99: ACCEPT_TOKEN(sym__identifier); - if (lookahead == ' ') ADVANCE(1); + if (lookahead == ' ') ADVANCE(7); if (lookahead == '-') ADVANCE(82); if (lookahead == 'e') ADVANCE(158); if (('0' <= lookahead && lookahead <= '9') || @@ -1267,7 +1256,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 100: ACCEPT_TOKEN(sym__identifier); - if (lookahead == ' ') ADVANCE(1); + if (lookahead == ' ') ADVANCE(7); if (lookahead == '-') ADVANCE(82); if (lookahead == 'e') ADVANCE(171); if (('0' <= lookahead && lookahead <= '9') || @@ -1277,7 +1266,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 101: ACCEPT_TOKEN(sym__identifier); - if (lookahead == ' ') ADVANCE(1); + if (lookahead == ' ') ADVANCE(7); if (lookahead == '-') ADVANCE(82); if (lookahead == 'e') ADVANCE(132); if (('0' <= lookahead && lookahead <= '9') || @@ -1287,7 +1276,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 102: ACCEPT_TOKEN(sym__identifier); - if (lookahead == ' ') ADVANCE(1); + if (lookahead == ' ') ADVANCE(7); if (lookahead == '-') ADVANCE(82); if (lookahead == 'e') ADVANCE(95); if (('0' <= lookahead && lookahead <= '9') || @@ -1297,7 +1286,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 103: ACCEPT_TOKEN(sym__identifier); - if (lookahead == ' ') ADVANCE(1); + if (lookahead == ' ') ADVANCE(7); if (lookahead == '-') ADVANCE(82); if (lookahead == 'h') ADVANCE(163); if (('0' <= lookahead && lookahead <= '9') || @@ -1307,7 +1296,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 104: ACCEPT_TOKEN(sym__identifier); - if (lookahead == ' ') ADVANCE(1); + if (lookahead == ' ') ADVANCE(7); if (lookahead == '-') ADVANCE(82); if (lookahead == 'h') ADVANCE(161); if (('0' <= lookahead && lookahead <= '9') || @@ -1317,7 +1306,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 105: ACCEPT_TOKEN(sym__identifier); - if (lookahead == ' ') ADVANCE(1); + if (lookahead == ' ') ADVANCE(7); if (lookahead == '-') ADVANCE(82); if (lookahead == 'h') ADVANCE(90); if (lookahead == 't') ADVANCE(131); @@ -1328,7 +1317,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 106: ACCEPT_TOKEN(sym__identifier); - if (lookahead == ' ') ADVANCE(1); + if (lookahead == ' ') ADVANCE(7); if (lookahead == '-') ADVANCE(82); if (lookahead == 'i') ADVANCE(116); if (lookahead == 'o') ADVANCE(120); @@ -1339,7 +1328,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 107: ACCEPT_TOKEN(sym__identifier); - if (lookahead == ' ') ADVANCE(1); + if (lookahead == ' ') ADVANCE(7); if (lookahead == '-') ADVANCE(82); if (lookahead == 'i') ADVANCE(119); if (('0' <= lookahead && lookahead <= '9') || @@ -1349,7 +1338,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 108: ACCEPT_TOKEN(sym__identifier); - if (lookahead == ' ') ADVANCE(1); + if (lookahead == ' ') ADVANCE(7); if (lookahead == '-') ADVANCE(82); if (lookahead == 'i') ADVANCE(141); if (('0' <= lookahead && lookahead <= '9') || @@ -1359,7 +1348,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 109: ACCEPT_TOKEN(sym__identifier); - if (lookahead == ' ') ADVANCE(1); + if (lookahead == ' ') ADVANCE(7); if (lookahead == '-') ADVANCE(82); if (lookahead == 'i') ADVANCE(128); if (('0' <= lookahead && lookahead <= '9') || @@ -1369,7 +1358,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 110: ACCEPT_TOKEN(sym__identifier); - if (lookahead == ' ') ADVANCE(1); + if (lookahead == ' ') ADVANCE(7); if (lookahead == '-') ADVANCE(82); if (lookahead == 'i') ADVANCE(121); if (('0' <= lookahead && lookahead <= '9') || @@ -1379,7 +1368,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 111: ACCEPT_TOKEN(sym__identifier); - if (lookahead == ' ') ADVANCE(1); + if (lookahead == ' ') ADVANCE(7); if (lookahead == '-') ADVANCE(82); if (lookahead == 'i') ADVANCE(135); if (('0' <= lookahead && lookahead <= '9') || @@ -1389,7 +1378,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 112: ACCEPT_TOKEN(sym__identifier); - if (lookahead == ' ') ADVANCE(1); + if (lookahead == ' ') ADVANCE(7); if (lookahead == '-') ADVANCE(82); if (lookahead == 'k') ADVANCE(175); if (('0' <= lookahead && lookahead <= '9') || @@ -1399,7 +1388,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 113: ACCEPT_TOKEN(sym__identifier); - if (lookahead == ' ') ADVANCE(1); + if (lookahead == ' ') ADVANCE(7); if (lookahead == '-') ADVANCE(82); if (lookahead == 'k') ADVANCE(99); if (('0' <= lookahead && lookahead <= '9') || @@ -1409,7 +1398,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 114: ACCEPT_TOKEN(sym__identifier); - if (lookahead == ' ') ADVANCE(1); + if (lookahead == ' ') ADVANCE(7); if (lookahead == '-') ADVANCE(82); if (lookahead == 'l') ADVANCE(157); if (('0' <= lookahead && lookahead <= '9') || @@ -1419,7 +1408,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 115: ACCEPT_TOKEN(sym__identifier); - if (lookahead == ' ') ADVANCE(1); + if (lookahead == ' ') ADVANCE(7); if (lookahead == '-') ADVANCE(82); if (lookahead == 'l') ADVANCE(138); if (('0' <= lookahead && lookahead <= '9') || @@ -1429,7 +1418,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 116: ACCEPT_TOKEN(sym__identifier); - if (lookahead == ' ') ADVANCE(1); + if (lookahead == ' ') ADVANCE(7); if (lookahead == '-') ADVANCE(82); if (lookahead == 'l') ADVANCE(114); if (('0' <= lookahead && lookahead <= '9') || @@ -1439,7 +1428,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 117: ACCEPT_TOKEN(sym__identifier); - if (lookahead == ' ') ADVANCE(1); + if (lookahead == ' ') ADVANCE(7); if (lookahead == '-') ADVANCE(82); if (lookahead == 'l') ADVANCE(100); if (('0' <= lookahead && lookahead <= '9') || @@ -1449,7 +1438,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 118: ACCEPT_TOKEN(sym__identifier); - if (lookahead == ' ') ADVANCE(1); + if (lookahead == ' ') ADVANCE(7); if (lookahead == '-') ADVANCE(82); if (lookahead == 'l') ADVANCE(126); if (('0' <= lookahead && lookahead <= '9') || @@ -1459,7 +1448,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 119: ACCEPT_TOKEN(sym__identifier); - if (lookahead == ' ') ADVANCE(1); + if (lookahead == ' ') ADVANCE(7); if (lookahead == '-') ADVANCE(82); if (lookahead == 'm') ADVANCE(91); if (('0' <= lookahead && lookahead <= '9') || @@ -1469,7 +1458,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 120: ACCEPT_TOKEN(sym__identifier); - if (lookahead == ' ') ADVANCE(1); + if (lookahead == ' ') ADVANCE(7); if (lookahead == '-') ADVANCE(82); if (lookahead == 'n') ADVANCE(136); if (('0' <= lookahead && lookahead <= '9') || @@ -1479,7 +1468,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 121: ACCEPT_TOKEN(sym__identifier); - if (lookahead == ' ') ADVANCE(1); + if (lookahead == ' ') ADVANCE(7); if (lookahead == '-') ADVANCE(82); if (lookahead == 'n') ADVANCE(112); if (('0' <= lookahead && lookahead <= '9') || @@ -1489,7 +1478,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 122: ACCEPT_TOKEN(sym__identifier); - if (lookahead == ' ') ADVANCE(1); + if (lookahead == ' ') ADVANCE(7); if (lookahead == '-') ADVANCE(82); if (lookahead == 'n') ADVANCE(107); if (('0' <= lookahead && lookahead <= '9') || @@ -1499,7 +1488,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 123: ACCEPT_TOKEN(sym__identifier); - if (lookahead == ' ') ADVANCE(1); + if (lookahead == ' ') ADVANCE(7); if (lookahead == '-') ADVANCE(82); if (lookahead == 'o') ADVANCE(130); if (('0' <= lookahead && lookahead <= '9') || @@ -1509,7 +1498,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 124: ACCEPT_TOKEN(sym__identifier); - if (lookahead == ' ') ADVANCE(1); + if (lookahead == ' ') ADVANCE(7); if (lookahead == '-') ADVANCE(82); if (lookahead == 'o') ADVANCE(142); if (('0' <= lookahead && lookahead <= '9') || @@ -1519,7 +1508,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 125: ACCEPT_TOKEN(sym__identifier); - if (lookahead == ' ') ADVANCE(1); + if (lookahead == ' ') ADVANCE(7); if (lookahead == '-') ADVANCE(82); if (lookahead == 'o') ADVANCE(113); if (('0' <= lookahead && lookahead <= '9') || @@ -1529,7 +1518,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 126: ACCEPT_TOKEN(sym__identifier); - if (lookahead == ' ') ADVANCE(1); + if (lookahead == ' ') ADVANCE(7); if (lookahead == '-') ADVANCE(82); if (lookahead == 'o') ADVANCE(129); if (('0' <= lookahead && lookahead <= '9') || @@ -1539,7 +1528,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 127: ACCEPT_TOKEN(sym__identifier); - if (lookahead == ' ') ADVANCE(1); + if (lookahead == ' ') ADVANCE(7); if (lookahead == '-') ADVANCE(82); if (lookahead == 'p') ADVANCE(89); if (('0' <= lookahead && lookahead <= '9') || @@ -1549,7 +1538,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 128: ACCEPT_TOKEN(sym__identifier); - if (lookahead == ' ') ADVANCE(1); + if (lookahead == ' ') ADVANCE(7); if (lookahead == '-') ADVANCE(82); if (lookahead == 'p') ADVANCE(117); if (('0' <= lookahead && lookahead <= '9') || @@ -1559,7 +1548,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 129: ACCEPT_TOKEN(sym__identifier); - if (lookahead == ' ') ADVANCE(1); + if (lookahead == ' ') ADVANCE(7); if (lookahead == '-') ADVANCE(82); if (lookahead == 'r') ADVANCE(167); if (('0' <= lookahead && lookahead <= '9') || @@ -1569,7 +1558,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 130: ACCEPT_TOKEN(sym__identifier); - if (lookahead == ' ') ADVANCE(1); + if (lookahead == ' ') ADVANCE(7); if (lookahead == '-') ADVANCE(82); if (lookahead == 'r') ADVANCE(94); if (('0' <= lookahead && lookahead <= '9') || @@ -1579,7 +1568,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 131: ACCEPT_TOKEN(sym__identifier); - if (lookahead == ' ') ADVANCE(1); + if (lookahead == ' ') ADVANCE(7); if (lookahead == '-') ADVANCE(82); if (lookahead == 'r') ADVANCE(125); if (('0' <= lookahead && lookahead <= '9') || @@ -1589,7 +1578,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 132: ACCEPT_TOKEN(sym__identifier); - if (lookahead == ' ') ADVANCE(1); + if (lookahead == ' ') ADVANCE(7); if (lookahead == '-') ADVANCE(82); if (lookahead == 'r') ADVANCE(146); if (('0' <= lookahead && lookahead <= '9') || @@ -1599,7 +1588,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 133: ACCEPT_TOKEN(sym__identifier); - if (lookahead == ' ') ADVANCE(1); + if (lookahead == ' ') ADVANCE(7); if (lookahead == '-') ADVANCE(82); if (lookahead == 's') ADVANCE(103); if (('0' <= lookahead && lookahead <= '9') || @@ -1609,7 +1598,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 134: ACCEPT_TOKEN(sym__identifier); - if (lookahead == ' ') ADVANCE(1); + if (lookahead == ' ') ADVANCE(7); if (lookahead == '-') ADVANCE(82); if (lookahead == 's') ADVANCE(165); if (('0' <= lookahead && lookahead <= '9') || @@ -1619,7 +1608,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 135: ACCEPT_TOKEN(sym__identifier); - if (lookahead == ' ') ADVANCE(1); + if (lookahead == ' ') ADVANCE(7); if (lookahead == '-') ADVANCE(82); if (lookahead == 't') ADVANCE(143); if (('0' <= lookahead && lookahead <= '9') || @@ -1629,7 +1618,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 136: ACCEPT_TOKEN(sym__identifier); - if (lookahead == ' ') ADVANCE(1); + if (lookahead == ' ') ADVANCE(7); if (lookahead == '-') ADVANCE(82); if (lookahead == 't') ADVANCE(145); if (('0' <= lookahead && lookahead <= '9') || @@ -1639,7 +1628,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 137: ACCEPT_TOKEN(sym__identifier); - if (lookahead == ' ') ADVANCE(1); + if (lookahead == ' ') ADVANCE(7); if (lookahead == '-') ADVANCE(82); if (lookahead == 't') ADVANCE(104); if (('0' <= lookahead && lookahead <= '9') || @@ -1649,7 +1638,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 138: ACCEPT_TOKEN(sym__identifier); - if (lookahead == ' ') ADVANCE(1); + if (lookahead == ' ') ADVANCE(7); if (lookahead == '-') ADVANCE(82); if (lookahead == 't') ADVANCE(109); if (('0' <= lookahead && lookahead <= '9') || @@ -1659,7 +1648,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 139: ACCEPT_TOKEN(sym__identifier); - if (lookahead == ' ') ADVANCE(1); + if (lookahead == ' ') ADVANCE(7); if (lookahead == '-') ADVANCE(82); if (lookahead == 't') ADVANCE(102); if (('0' <= lookahead && lookahead <= '9') || @@ -1669,7 +1658,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 140: ACCEPT_TOKEN(sym__identifier); - if (lookahead == ' ') ADVANCE(1); + if (lookahead == ' ') ADVANCE(7); if (lookahead == '-') ADVANCE(82); if (lookahead == 'u') ADVANCE(115); if (('0' <= lookahead && lookahead <= '9') || @@ -1679,7 +1668,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 141: ACCEPT_TOKEN(sym__identifier); - if (lookahead == ' ') ADVANCE(1); + if (lookahead == ' ') ADVANCE(7); if (lookahead == '-') ADVANCE(82); if (lookahead == 'u') ADVANCE(134); if (('0' <= lookahead && lookahead <= '9') || @@ -1689,7 +1678,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 142: ACCEPT_TOKEN(sym__identifier); - if (lookahead == ' ') ADVANCE(1); + if (lookahead == ' ') ADVANCE(7); if (lookahead == '-') ADVANCE(82); if (lookahead == 'w') ADVANCE(169); if (('0' <= lookahead && lookahead <= '9') || @@ -1699,7 +1688,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 143: ACCEPT_TOKEN(sym__identifier); - if (lookahead == ' ') ADVANCE(1); + if (lookahead == ' ') ADVANCE(7); if (lookahead == '-') ADVANCE(82); if (lookahead == 'y') ADVANCE(155); if (('0' <= lookahead && lookahead <= '9') || @@ -1709,7 +1698,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 144: ACCEPT_TOKEN(sym__identifier); - if (lookahead == ' ') ADVANCE(1); + if (lookahead == ' ') ADVANCE(7); if (lookahead == '-') ADVANCE(82); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || @@ -1718,8 +1707,8 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 145: ACCEPT_TOKEN(sym__identifier); - if (lookahead == ' ') ADVANCE(1); - if (lookahead == '-') ADVANCE(15); + if (lookahead == ' ') ADVANCE(7); + if (lookahead == '-') ADVANCE(21); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || @@ -1727,8 +1716,8 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 146: ACCEPT_TOKEN(sym__identifier); - if (lookahead == ' ') ADVANCE(1); - if (lookahead == '-') ADVANCE(58); + if (lookahead == ' ') ADVANCE(7); + if (lookahead == '-') ADVANCE(64); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || @@ -1778,7 +1767,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 153: ACCEPT_TOKEN(anon_sym_3d); - if (lookahead == ' ') ADVANCE(1); + if (lookahead == ' ') ADVANCE(7); if (lookahead == '-') ADVANCE(82); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || @@ -1790,7 +1779,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 155: ACCEPT_TOKEN(anon_sym_opacity); - if (lookahead == ' ') ADVANCE(1); + if (lookahead == ' ') ADVANCE(7); if (lookahead == '-') ADVANCE(82); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || @@ -1802,7 +1791,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 157: ACCEPT_TOKEN(anon_sym_fill); - if (lookahead == ' ') ADVANCE(1); + if (lookahead == ' ') ADVANCE(7); if (lookahead == '-') ADVANCE(82); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || @@ -1811,8 +1800,8 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 158: ACCEPT_TOKEN(anon_sym_stroke); - if (lookahead == ' ') ADVANCE(1); - if (lookahead == '-') ADVANCE(21); + if (lookahead == ' ') ADVANCE(7); + if (lookahead == '-') ADVANCE(27); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || @@ -1820,14 +1809,14 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 159: ACCEPT_TOKEN(anon_sym_stroke); - if (lookahead == '-') ADVANCE(23); + if (lookahead == '-') ADVANCE(29); END_STATE(); case 160: ACCEPT_TOKEN(anon_sym_stroke_DASHwidth); END_STATE(); case 161: ACCEPT_TOKEN(anon_sym_stroke_DASHwidth); - if (lookahead == ' ') ADVANCE(1); + if (lookahead == ' ') ADVANCE(7); if (lookahead == '-') ADVANCE(82); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || @@ -1839,7 +1828,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 163: ACCEPT_TOKEN(anon_sym_stroke_DASHdash); - if (lookahead == ' ') ADVANCE(1); + if (lookahead == ' ') ADVANCE(7); if (lookahead == '-') ADVANCE(82); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || @@ -1851,7 +1840,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 165: ACCEPT_TOKEN(anon_sym_border_DASHradius); - if (lookahead == ' ') ADVANCE(1); + if (lookahead == ' ') ADVANCE(7); if (lookahead == '-') ADVANCE(82); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || @@ -1863,7 +1852,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 167: ACCEPT_TOKEN(anon_sym_font_DASHcolor); - if (lookahead == ' ') ADVANCE(1); + if (lookahead == ' ') ADVANCE(7); if (lookahead == '-') ADVANCE(82); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || @@ -1875,7 +1864,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 169: ACCEPT_TOKEN(anon_sym_shadow); - if (lookahead == ' ') ADVANCE(1); + if (lookahead == ' ') ADVANCE(7); if (lookahead == '-') ADVANCE(82); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || @@ -1887,7 +1876,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 171: ACCEPT_TOKEN(anon_sym_multiple); - if (lookahead == ' ') ADVANCE(1); + if (lookahead == ' ') ADVANCE(7); if (lookahead == '-') ADVANCE(82); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || @@ -1899,7 +1888,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 173: ACCEPT_TOKEN(anon_sym_animated); - if (lookahead == ' ') ADVANCE(1); + if (lookahead == ' ') ADVANCE(7); if (lookahead == '-') ADVANCE(82); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || @@ -1911,7 +1900,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 175: ACCEPT_TOKEN(anon_sym_link); - if (lookahead == ' ') ADVANCE(1); + if (lookahead == ' ') ADVANCE(7); if (lookahead == '-') ADVANCE(82); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || @@ -2322,57 +2311,57 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [1] = {.lex_state = 85}, [2] = {.lex_state = 85}, [3] = {.lex_state = 85}, - [4] = {.lex_state = 85}, - [5] = {.lex_state = 77}, - [6] = {.lex_state = 77}, - [7] = {.lex_state = 77}, - [8] = {.lex_state = 75}, - [9] = {.lex_state = 77}, - [10] = {.lex_state = 75}, - [11] = {.lex_state = 75}, - [12] = {.lex_state = 77}, - [13] = {.lex_state = 76}, - [14] = {.lex_state = 75}, - [15] = {.lex_state = 75}, - [16] = {.lex_state = 0}, - [17] = {.lex_state = 75}, - [18] = {.lex_state = 0}, - [19] = {.lex_state = 75}, - [20] = {.lex_state = 75}, - [21] = {.lex_state = 77}, - [22] = {.lex_state = 0}, - [23] = {.lex_state = 76}, - [24] = {.lex_state = 75}, - [25] = {.lex_state = 0}, - [26] = {.lex_state = 0}, - [27] = {.lex_state = 76}, - [28] = {.lex_state = 79}, + [4] = {.lex_state = 1}, + [5] = {.lex_state = 1}, + [6] = {.lex_state = 1}, + [7] = {.lex_state = 85}, + [8] = {.lex_state = 3}, + [9] = {.lex_state = 3}, + [10] = {.lex_state = 3}, + [11] = {.lex_state = 3}, + [12] = {.lex_state = 3}, + [13] = {.lex_state = 1}, + [14] = {.lex_state = 1}, + [15] = {.lex_state = 2}, + [16] = {.lex_state = 1}, + [17] = {.lex_state = 0}, + [18] = {.lex_state = 1}, + [19] = {.lex_state = 0}, + [20] = {.lex_state = 1}, + [21] = {.lex_state = 3}, + [22] = {.lex_state = 1}, + [23] = {.lex_state = 0}, + [24] = {.lex_state = 0}, + [25] = {.lex_state = 5}, + [26] = {.lex_state = 2}, + [27] = {.lex_state = 2}, + [28] = {.lex_state = 0}, [29] = {.lex_state = 0}, [30] = {.lex_state = 0}, - [31] = {.lex_state = 75}, - [32] = {.lex_state = 76}, + [31] = {.lex_state = 2}, + [32] = {.lex_state = 2}, [33] = {.lex_state = 0}, [34] = {.lex_state = 0}, [35] = {.lex_state = 0}, - [36] = {.lex_state = 0}, - [37] = {.lex_state = 75}, + [36] = {.lex_state = 1}, + [37] = {.lex_state = 0}, [38] = {.lex_state = 0}, - [39] = {.lex_state = 0}, - [40] = {.lex_state = 0}, - [41] = {.lex_state = 2}, - [42] = {.lex_state = 3}, - [43] = {.lex_state = 3}, + [39] = {.lex_state = 9}, + [40] = {.lex_state = 10}, + [41] = {.lex_state = 9}, + [42] = {.lex_state = 8}, + [43] = {.lex_state = 0}, [44] = {.lex_state = 0}, - [45] = {.lex_state = 4}, - [46] = {.lex_state = 2}, + [45] = {.lex_state = 0}, + [46] = {.lex_state = 10}, [47] = {.lex_state = 0}, - [48] = {.lex_state = 2}, - [49] = {.lex_state = 3}, + [48] = {.lex_state = 8}, + [49] = {.lex_state = 8}, [50] = {.lex_state = 0}, - [51] = {.lex_state = 0}, - [52] = {.lex_state = 4}, + [51] = {.lex_state = 9}, + [52] = {.lex_state = 10}, [53] = {.lex_state = 0}, - [54] = {.lex_state = 4}, + [54] = {.lex_state = 0}, [55] = {.lex_state = 0}, [56] = {.lex_state = 0}, [57] = {.lex_state = 0}, @@ -2397,8 +2386,6 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [76] = {.lex_state = 0}, [77] = {.lex_state = 0}, [78] = {.lex_state = 0}, - [79] = {.lex_state = 0}, - [80] = {.lex_state = 0}, }; static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { @@ -2442,19 +2429,19 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_SEMI] = ACTIONS(1), }, [1] = { - [sym_source_file] = STATE(80), - [sym__root_definition] = STATE(2), - [sym_connection] = STATE(53), - [sym__connection_path] = STATE(63), - [sym_container] = STATE(53), - [sym_shape] = STATE(53), - [sym_shape_key] = STATE(16), - [sym__root_attribute] = STATE(53), - [sym__root_attr_key] = STATE(62), + [sym_source_file] = STATE(73), + [sym__root_definition] = STATE(3), + [sym_connection] = STATE(47), + [sym__connection_path] = STATE(62), + [sym_container] = STATE(47), + [sym_shape] = STATE(47), + [sym_shape_key] = STATE(17), + [sym__root_attribute] = STATE(47), + [sym__root_attr_key] = STATE(60), [sym__common_style_attr_key] = STATE(78), [sym_string] = STATE(29), - [aux_sym_source_file_repeat1] = STATE(2), - [aux_sym__connection_path_repeat1] = STATE(20), + [aux_sym_source_file_repeat1] = STATE(3), + [aux_sym__connection_path_repeat1] = STATE(22), [ts_builtin_sym_end] = ACTIONS(5), [sym__identifier] = ACTIONS(7), [anon_sym_direction] = ACTIONS(9), @@ -2482,19 +2469,58 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym__eol] = ACTIONS(21), }, [2] = { - [sym__root_definition] = STATE(3), - [sym_connection] = STATE(53), - [sym__connection_path] = STATE(63), - [sym_container] = STATE(53), - [sym_shape] = STATE(53), - [sym_shape_key] = STATE(16), - [sym__root_attribute] = STATE(53), - [sym__root_attr_key] = STATE(62), + [sym__root_definition] = STATE(2), + [sym_connection] = STATE(47), + [sym__connection_path] = STATE(62), + [sym_container] = STATE(47), + [sym_shape] = STATE(47), + [sym_shape_key] = STATE(17), + [sym__root_attribute] = STATE(47), + [sym__root_attr_key] = STATE(60), [sym__common_style_attr_key] = STATE(78), [sym_string] = STATE(29), - [aux_sym_source_file_repeat1] = STATE(3), - [aux_sym__connection_path_repeat1] = STATE(20), + [aux_sym_source_file_repeat1] = STATE(2), + [aux_sym__connection_path_repeat1] = STATE(22), [ts_builtin_sym_end] = ACTIONS(23), + [sym__identifier] = ACTIONS(25), + [anon_sym_direction] = ACTIONS(28), + [anon_sym_shape] = ACTIONS(31), + [anon_sym_label] = ACTIONS(31), + [anon_sym_constraint] = ACTIONS(31), + [anon_sym_icon] = ACTIONS(31), + [anon_sym_style] = ACTIONS(31), + [anon_sym_opacity] = ACTIONS(34), + [anon_sym_fill] = ACTIONS(34), + [anon_sym_stroke] = ACTIONS(34), + [anon_sym_stroke_DASHwidth] = ACTIONS(34), + [anon_sym_stroke_DASHdash] = ACTIONS(34), + [anon_sym_border_DASHradius] = ACTIONS(34), + [anon_sym_font_DASHcolor] = ACTIONS(34), + [anon_sym_shadow] = ACTIONS(34), + [anon_sym_multiple] = ACTIONS(34), + [anon_sym_animated] = ACTIONS(34), + [anon_sym_link] = ACTIONS(34), + [sym__text_attr_key] = ACTIONS(31), + [anon_sym_SQUOTE] = ACTIONS(37), + [anon_sym_DQUOTE] = ACTIONS(40), + [anon_sym_BQUOTE] = ACTIONS(43), + [sym_line_comment] = ACTIONS(3), + [sym__eol] = ACTIONS(46), + }, + [3] = { + [sym__root_definition] = STATE(2), + [sym_connection] = STATE(47), + [sym__connection_path] = STATE(62), + [sym_container] = STATE(47), + [sym_shape] = STATE(47), + [sym_shape_key] = STATE(17), + [sym__root_attribute] = STATE(47), + [sym__root_attr_key] = STATE(60), + [sym__common_style_attr_key] = STATE(78), + [sym_string] = STATE(29), + [aux_sym_source_file_repeat1] = STATE(2), + [aux_sym__connection_path_repeat1] = STATE(22), + [ts_builtin_sym_end] = ACTIONS(49), [sym__identifier] = ACTIONS(7), [anon_sym_direction] = ACTIONS(9), [anon_sym_shape] = ACTIONS(11), @@ -2518,60 +2544,153 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_DQUOTE] = ACTIONS(17), [anon_sym_BQUOTE] = ACTIONS(19), [sym_line_comment] = ACTIONS(3), - [sym__eol] = ACTIONS(25), - }, - [3] = { - [sym__root_definition] = STATE(3), - [sym_connection] = STATE(53), - [sym__connection_path] = STATE(63), - [sym_container] = STATE(53), - [sym_shape] = STATE(53), - [sym_shape_key] = STATE(16), - [sym__root_attribute] = STATE(53), - [sym__root_attr_key] = STATE(62), - [sym__common_style_attr_key] = STATE(78), - [sym_string] = STATE(29), - [aux_sym_source_file_repeat1] = STATE(3), - [aux_sym__connection_path_repeat1] = STATE(20), - [ts_builtin_sym_end] = ACTIONS(27), - [sym__identifier] = ACTIONS(29), - [anon_sym_direction] = ACTIONS(32), - [anon_sym_shape] = ACTIONS(35), - [anon_sym_label] = ACTIONS(35), - [anon_sym_constraint] = ACTIONS(35), - [anon_sym_icon] = ACTIONS(35), - [anon_sym_style] = ACTIONS(35), - [anon_sym_opacity] = ACTIONS(38), - [anon_sym_fill] = ACTIONS(38), - [anon_sym_stroke] = ACTIONS(38), - [anon_sym_stroke_DASHwidth] = ACTIONS(38), - [anon_sym_stroke_DASHdash] = ACTIONS(38), - [anon_sym_border_DASHradius] = ACTIONS(38), - [anon_sym_font_DASHcolor] = ACTIONS(38), - [anon_sym_shadow] = ACTIONS(38), - [anon_sym_multiple] = ACTIONS(38), - [anon_sym_animated] = ACTIONS(38), - [anon_sym_link] = ACTIONS(38), - [sym__text_attr_key] = ACTIONS(35), - [anon_sym_SQUOTE] = ACTIONS(41), - [anon_sym_DQUOTE] = ACTIONS(44), - [anon_sym_BQUOTE] = ACTIONS(47), - [sym_line_comment] = ACTIONS(3), - [sym__eol] = ACTIONS(50), + [sym__eol] = ACTIONS(51), }, }; static const uint16_t ts_small_parse_table[] = { - [0] = 3, + [0] = 16, ACTIONS(3), 1, sym_line_comment, - ACTIONS(53), 5, + ACTIONS(53), 1, + sym__identifier, + ACTIONS(56), 1, + anon_sym_RBRACE, + ACTIONS(61), 1, + anon_sym_style, + ACTIONS(64), 1, + anon_sym_SQUOTE, + ACTIONS(67), 1, + anon_sym_DQUOTE, + ACTIONS(70), 1, + anon_sym_BQUOTE, + ACTIONS(73), 1, + sym__eol, + STATE(17), 1, + sym_shape_key, + STATE(22), 1, + aux_sym__connection_path_repeat1, + STATE(29), 1, + sym_string, + STATE(62), 1, + sym__connection_path, + STATE(68), 1, + sym__shape_attr_key, + STATE(4), 2, + sym__container_block_definition, + aux_sym__container_block_repeat1, + ACTIONS(58), 6, + anon_sym_shape, + anon_sym_label, + anon_sym_constraint, + anon_sym_icon, + anon_sym_width, + anon_sym_height, + STATE(44), 6, + sym_connection, + sym_container, + sym_shape, + sym__shape_attribute, + sym__base_shape_attribute, + sym__style_attribute, + [60] = 16, + ACTIONS(3), 1, + sym_line_comment, + ACTIONS(7), 1, + sym__identifier, + ACTIONS(15), 1, + anon_sym_SQUOTE, + ACTIONS(17), 1, + anon_sym_DQUOTE, + ACTIONS(19), 1, + anon_sym_BQUOTE, + ACTIONS(76), 1, + anon_sym_RBRACE, + ACTIONS(80), 1, + anon_sym_style, + ACTIONS(82), 1, + sym__eol, + STATE(17), 1, + sym_shape_key, + STATE(22), 1, + aux_sym__connection_path_repeat1, + STATE(29), 1, + sym_string, + STATE(62), 1, + sym__connection_path, + STATE(68), 1, + sym__shape_attr_key, + STATE(6), 2, + sym__container_block_definition, + aux_sym__container_block_repeat1, + ACTIONS(78), 6, + anon_sym_shape, + anon_sym_label, + anon_sym_constraint, + anon_sym_icon, + anon_sym_width, + anon_sym_height, + STATE(44), 6, + sym_connection, + sym_container, + sym_shape, + sym__shape_attribute, + sym__base_shape_attribute, + sym__style_attribute, + [120] = 16, + ACTIONS(3), 1, + sym_line_comment, + ACTIONS(7), 1, + sym__identifier, + ACTIONS(15), 1, + anon_sym_SQUOTE, + ACTIONS(17), 1, + anon_sym_DQUOTE, + ACTIONS(19), 1, + anon_sym_BQUOTE, + ACTIONS(80), 1, + anon_sym_style, + ACTIONS(84), 1, + anon_sym_RBRACE, + ACTIONS(86), 1, + sym__eol, + STATE(17), 1, + sym_shape_key, + STATE(22), 1, + aux_sym__connection_path_repeat1, + STATE(29), 1, + sym_string, + STATE(62), 1, + sym__connection_path, + STATE(68), 1, + sym__shape_attr_key, + STATE(4), 2, + sym__container_block_definition, + aux_sym__container_block_repeat1, + ACTIONS(78), 6, + anon_sym_shape, + anon_sym_label, + anon_sym_constraint, + anon_sym_icon, + anon_sym_width, + anon_sym_height, + STATE(44), 6, + sym_connection, + sym_container, + sym_shape, + sym__shape_attribute, + sym__base_shape_attribute, + sym__style_attribute, + [180] = 3, + ACTIONS(3), 1, + sym_line_comment, + ACTIONS(88), 5, ts_builtin_sym_end, anon_sym_SQUOTE, anon_sym_DQUOTE, anon_sym_BQUOTE, sym__eol, - ACTIONS(55), 19, + ACTIONS(90), 19, sym__identifier, anon_sym_direction, anon_sym_shape, @@ -2591,221 +2710,26 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_animated, anon_sym_link, sym__text_attr_key, - [32] = 10, - ACTIONS(3), 1, - sym_line_comment, - ACTIONS(57), 1, - anon_sym_RBRACE, - ACTIONS(59), 1, - anon_sym_3d, - ACTIONS(65), 1, - anon_sym_stroke, - ACTIONS(68), 1, - sym__eol, - STATE(5), 1, - aux_sym__style_attribute_block_repeat1, - STATE(50), 1, - sym__inner_style_attribute, - STATE(70), 1, - sym__style_attr_key, - STATE(76), 1, - sym__common_style_attr_key, - ACTIONS(62), 10, - anon_sym_opacity, - anon_sym_fill, - anon_sym_stroke_DASHwidth, - anon_sym_stroke_DASHdash, - anon_sym_border_DASHradius, - anon_sym_font_DASHcolor, - anon_sym_shadow, - anon_sym_multiple, - anon_sym_animated, - anon_sym_link, - [72] = 10, + [212] = 10, ACTIONS(3), 1, sym_line_comment, ACTIONS(13), 1, anon_sym_stroke, - ACTIONS(71), 1, + ACTIONS(92), 1, anon_sym_RBRACE, - ACTIONS(73), 1, + ACTIONS(94), 1, anon_sym_3d, - ACTIONS(77), 1, - sym__eol, - STATE(5), 1, - aux_sym__style_attribute_block_repeat1, - STATE(50), 1, - sym__inner_style_attribute, - STATE(70), 1, - sym__style_attr_key, - STATE(76), 1, - sym__common_style_attr_key, - ACTIONS(75), 10, - anon_sym_opacity, - anon_sym_fill, - anon_sym_stroke_DASHwidth, - anon_sym_stroke_DASHdash, - anon_sym_border_DASHradius, - anon_sym_font_DASHcolor, - anon_sym_shadow, - anon_sym_multiple, - anon_sym_animated, - anon_sym_link, - [112] = 10, - ACTIONS(3), 1, - sym_line_comment, - ACTIONS(13), 1, - anon_sym_stroke, - ACTIONS(73), 1, - anon_sym_3d, - ACTIONS(79), 1, - anon_sym_RBRACE, - ACTIONS(81), 1, - sym__eol, - STATE(6), 1, - aux_sym__style_attribute_block_repeat1, - STATE(50), 1, - sym__inner_style_attribute, - STATE(70), 1, - sym__style_attr_key, - STATE(76), 1, - sym__common_style_attr_key, - ACTIONS(75), 10, - anon_sym_opacity, - anon_sym_fill, - anon_sym_stroke_DASHwidth, - anon_sym_stroke_DASHdash, - anon_sym_border_DASHradius, - anon_sym_font_DASHcolor, - anon_sym_shadow, - anon_sym_multiple, - anon_sym_animated, - anon_sym_link, - [152] = 14, - ACTIONS(3), 1, - sym_line_comment, - ACTIONS(15), 1, - anon_sym_SQUOTE, - ACTIONS(17), 1, - anon_sym_DQUOTE, - ACTIONS(19), 1, - anon_sym_BQUOTE, - ACTIONS(83), 1, - sym__identifier, - ACTIONS(85), 1, - anon_sym_RBRACE, - ACTIONS(87), 1, - sym__eol, - STATE(16), 1, - sym_shape_key, - STATE(20), 1, - aux_sym__connection_path_repeat1, - STATE(29), 1, - sym_string, - STATE(63), 1, - sym__connection_path, - STATE(10), 2, - sym__container_block_definition, - aux_sym__container_block_repeat1, - STATE(38), 2, - sym__shape_block_definition, - aux_sym__shape_block_repeat1, - STATE(44), 3, - sym_connection, - sym_container, - sym_shape, - [199] = 7, - ACTIONS(3), 1, - sym_line_comment, - ACTIONS(13), 1, - anon_sym_stroke, - ACTIONS(73), 1, - anon_sym_3d, - STATE(68), 1, - sym__inner_style_attribute, - STATE(70), 1, - sym__style_attr_key, - STATE(76), 1, - sym__common_style_attr_key, - ACTIONS(75), 10, - anon_sym_opacity, - anon_sym_fill, - anon_sym_stroke_DASHwidth, - anon_sym_stroke_DASHdash, - anon_sym_border_DASHradius, - anon_sym_font_DASHcolor, - anon_sym_shadow, - anon_sym_multiple, - anon_sym_animated, - anon_sym_link, - [230] = 13, - ACTIONS(3), 1, - sym_line_comment, - ACTIONS(15), 1, - anon_sym_SQUOTE, - ACTIONS(17), 1, - anon_sym_DQUOTE, - ACTIONS(19), 1, - anon_sym_BQUOTE, - ACTIONS(83), 1, - sym__identifier, - ACTIONS(89), 1, - anon_sym_RBRACE, - ACTIONS(91), 1, - sym__eol, - STATE(16), 1, - sym_shape_key, - STATE(20), 1, - aux_sym__connection_path_repeat1, - STATE(29), 1, - sym_string, - STATE(63), 1, - sym__connection_path, - STATE(11), 2, - sym__container_block_definition, - aux_sym__container_block_repeat1, - STATE(44), 3, - sym_connection, - sym_container, - sym_shape, - [273] = 13, - ACTIONS(3), 1, - sym_line_comment, - ACTIONS(93), 1, - sym__identifier, - ACTIONS(96), 1, - anon_sym_RBRACE, ACTIONS(98), 1, - anon_sym_SQUOTE, - ACTIONS(101), 1, - anon_sym_DQUOTE, - ACTIONS(104), 1, - anon_sym_BQUOTE, - ACTIONS(107), 1, sym__eol, - STATE(16), 1, - sym_shape_key, - STATE(20), 1, - aux_sym__connection_path_repeat1, - STATE(29), 1, - sym_string, - STATE(63), 1, - sym__connection_path, - STATE(11), 2, - sym__container_block_definition, - aux_sym__container_block_repeat1, - STATE(44), 3, - sym_connection, - sym_container, - sym_shape, - [316] = 3, - ACTIONS(3), 1, - sym_line_comment, - ACTIONS(110), 1, - anon_sym_stroke, - ACTIONS(57), 13, - anon_sym_RBRACE, - anon_sym_3d, + STATE(10), 1, + aux_sym__style_attribute_block_repeat1, + STATE(45), 1, + sym__inner_style_attribute, + STATE(67), 1, + sym__style_attr_key, + STATE(74), 1, + sym__common_style_attr_key, + ACTIONS(96), 10, anon_sym_opacity, anon_sym_fill, anon_sym_stroke_DASHwidth, @@ -2816,54 +2740,128 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_multiple, anon_sym_animated, anon_sym_link, - sym__eol, - [338] = 11, + [252] = 10, ACTIONS(3), 1, sym_line_comment, - ACTIONS(15), 1, - anon_sym_SQUOTE, - ACTIONS(17), 1, - anon_sym_DQUOTE, - ACTIONS(19), 1, - anon_sym_BQUOTE, - ACTIONS(112), 1, - anon_sym_LBRACE, - ACTIONS(114), 1, - sym__unquoted_string, - STATE(34), 1, - sym_label, - STATE(51), 1, - sym_string, - STATE(56), 1, - sym__shape_block, - STATE(74), 1, - sym__container_block, - ACTIONS(116), 2, + ACTIONS(13), 1, + anon_sym_stroke, + ACTIONS(94), 1, + anon_sym_3d, + ACTIONS(100), 1, + anon_sym_RBRACE, + ACTIONS(102), 1, sym__eol, - anon_sym_SEMI, - [373] = 10, + STATE(8), 1, + aux_sym__style_attribute_block_repeat1, + STATE(45), 1, + sym__inner_style_attribute, + STATE(67), 1, + sym__style_attr_key, + STATE(74), 1, + sym__common_style_attr_key, + ACTIONS(96), 10, + anon_sym_opacity, + anon_sym_fill, + anon_sym_stroke_DASHwidth, + anon_sym_stroke_DASHdash, + anon_sym_border_DASHradius, + anon_sym_font_DASHcolor, + anon_sym_shadow, + anon_sym_multiple, + anon_sym_animated, + anon_sym_link, + [292] = 10, + ACTIONS(3), 1, + sym_line_comment, + ACTIONS(104), 1, + anon_sym_RBRACE, + ACTIONS(106), 1, + anon_sym_3d, + ACTIONS(112), 1, + anon_sym_stroke, + ACTIONS(115), 1, + sym__eol, + STATE(10), 1, + aux_sym__style_attribute_block_repeat1, + STATE(45), 1, + sym__inner_style_attribute, + STATE(67), 1, + sym__style_attr_key, + STATE(74), 1, + sym__common_style_attr_key, + ACTIONS(109), 10, + anon_sym_opacity, + anon_sym_fill, + anon_sym_stroke_DASHwidth, + anon_sym_stroke_DASHdash, + anon_sym_border_DASHradius, + anon_sym_font_DASHcolor, + anon_sym_shadow, + anon_sym_multiple, + anon_sym_animated, + anon_sym_link, + [332] = 7, + ACTIONS(3), 1, + sym_line_comment, + ACTIONS(13), 1, + anon_sym_stroke, + ACTIONS(94), 1, + anon_sym_3d, + STATE(54), 1, + sym__inner_style_attribute, + STATE(67), 1, + sym__style_attr_key, + STATE(74), 1, + sym__common_style_attr_key, + ACTIONS(96), 10, + anon_sym_opacity, + anon_sym_fill, + anon_sym_stroke_DASHwidth, + anon_sym_stroke_DASHdash, + anon_sym_border_DASHradius, + anon_sym_font_DASHcolor, + anon_sym_shadow, + anon_sym_multiple, + anon_sym_animated, + anon_sym_link, + [363] = 3, ACTIONS(3), 1, sym_line_comment, ACTIONS(118), 1, - sym__identifier, - ACTIONS(121), 1, - anon_sym_style, - ACTIONS(123), 1, + anon_sym_stroke, + ACTIONS(104), 13, + anon_sym_RBRACE, + anon_sym_3d, + anon_sym_opacity, + anon_sym_fill, + anon_sym_stroke_DASHwidth, + anon_sym_stroke_DASHdash, + anon_sym_border_DASHradius, + anon_sym_font_DASHcolor, + anon_sym_shadow, + anon_sym_multiple, + anon_sym_animated, + anon_sym_link, + sym__eol, + [385] = 3, + ACTIONS(3), 1, + sym_line_comment, + ACTIONS(122), 5, + anon_sym_RBRACE, anon_sym_SQUOTE, - ACTIONS(126), 1, anon_sym_DQUOTE, - ACTIONS(129), 1, anon_sym_BQUOTE, - STATE(18), 1, - sym_shape_key, - STATE(29), 1, - sym_string, - STATE(56), 1, - sym__style_attribute, - STATE(74), 2, - sym_container, - sym_shape, - [405] = 10, + sym__eol, + ACTIONS(120), 8, + sym__identifier, + anon_sym_shape, + anon_sym_label, + anon_sym_constraint, + anon_sym_icon, + anon_sym_style, + anon_sym_width, + anon_sym_height, + [406] = 10, ACTIONS(3), 1, sym_line_comment, ACTIONS(15), 1, @@ -2872,94 +2870,82 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DQUOTE, ACTIONS(19), 1, anon_sym_BQUOTE, - ACTIONS(121), 1, + ACTIONS(80), 1, + anon_sym_style, + ACTIONS(124), 1, + sym__identifier, + STATE(19), 1, + sym_shape_key, + STATE(29), 1, + sym_string, + STATE(63), 1, + sym__style_attribute, + STATE(70), 2, + sym_container, + sym_shape, + [438] = 10, + ACTIONS(3), 1, + sym_line_comment, + ACTIONS(15), 1, + anon_sym_SQUOTE, + ACTIONS(17), 1, + anon_sym_DQUOTE, + ACTIONS(19), 1, + anon_sym_BQUOTE, + ACTIONS(126), 1, + anon_sym_LBRACE, + ACTIONS(128), 1, + sym__unquoted_string, + STATE(37), 1, + sym_label, + STATE(50), 1, + sym_string, + STATE(70), 1, + sym__container_block, + ACTIONS(130), 2, + sym__eol, + anon_sym_SEMI, + [470] = 10, + ACTIONS(3), 1, + sym_line_comment, + ACTIONS(80), 1, anon_sym_style, ACTIONS(132), 1, sym__identifier, - STATE(18), 1, + ACTIONS(135), 1, + anon_sym_SQUOTE, + ACTIONS(138), 1, + anon_sym_DQUOTE, + ACTIONS(141), 1, + anon_sym_BQUOTE, + STATE(19), 1, sym_shape_key, STATE(29), 1, sym_string, - STATE(56), 1, + STATE(63), 1, sym__style_attribute, - STATE(74), 2, + STATE(70), 2, sym_container, sym_shape, - [437] = 9, + [502] = 8, ACTIONS(3), 1, sym_line_comment, - ACTIONS(112), 1, + ACTIONS(126), 1, anon_sym_LBRACE, - ACTIONS(134), 1, - anon_sym_COLON, - ACTIONS(136), 1, - sym_arrow, - ACTIONS(138), 1, - sym_dot, - STATE(13), 1, - sym__colon, - STATE(57), 1, - sym__container_block, - STATE(72), 1, - sym__shape_block, - ACTIONS(140), 2, - sym__eol, - anon_sym_SEMI, - [466] = 9, - ACTIONS(3), 1, - sym_line_comment, - ACTIONS(15), 1, - anon_sym_SQUOTE, - ACTIONS(17), 1, - anon_sym_DQUOTE, - ACTIONS(19), 1, - anon_sym_BQUOTE, - ACTIONS(83), 1, - sym__identifier, - STATE(20), 1, - aux_sym__connection_path_repeat1, - STATE(29), 1, - sym_string, - STATE(36), 1, - sym_shape_key, - STATE(40), 1, - sym__connection_path, - [494] = 8, - ACTIONS(3), 1, - sym_line_comment, - ACTIONS(112), 1, - anon_sym_LBRACE, - ACTIONS(134), 1, - anon_sym_COLON, - ACTIONS(142), 1, - sym_dot, - STATE(13), 1, - sym__colon, - STATE(57), 1, - sym__container_block, - STATE(72), 1, - sym__shape_block, - ACTIONS(140), 2, - sym__eol, - anon_sym_SEMI, - [520] = 8, - ACTIONS(3), 1, - sym_line_comment, ACTIONS(144), 1, - sym__identifier, - ACTIONS(147), 1, - anon_sym_SQUOTE, - ACTIONS(150), 1, - anon_sym_DQUOTE, - ACTIONS(153), 1, - anon_sym_BQUOTE, - STATE(19), 1, - aux_sym__connection_path_repeat1, - STATE(29), 1, - sym_string, - STATE(75), 1, - sym_shape_key, - [545] = 8, + anon_sym_COLON, + ACTIONS(146), 1, + sym_arrow, + ACTIONS(148), 1, + sym_dot, + STATE(15), 1, + sym__colon, + STATE(55), 1, + sym__container_block, + ACTIONS(150), 2, + sym__eol, + anon_sym_SEMI, + [528] = 9, ACTIONS(3), 1, sym_line_comment, ACTIONS(15), 1, @@ -2968,41 +2954,62 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DQUOTE, ACTIONS(19), 1, anon_sym_BQUOTE, - ACTIONS(83), 1, + ACTIONS(152), 1, sym__identifier, - STATE(19), 1, + STATE(22), 1, aux_sym__connection_path_repeat1, STATE(29), 1, sym_string, STATE(35), 1, sym_shape_key, - [570] = 3, + STATE(38), 1, + sym__connection_path, + [556] = 7, ACTIONS(3), 1, sym_line_comment, - ACTIONS(158), 1, + ACTIONS(126), 1, + anon_sym_LBRACE, + ACTIONS(144), 1, + anon_sym_COLON, + ACTIONS(154), 1, + sym_dot, + STATE(15), 1, + sym__colon, + STATE(55), 1, + sym__container_block, + ACTIONS(150), 2, + sym__eol, + anon_sym_SEMI, + [579] = 8, + ACTIONS(3), 1, + sym_line_comment, + ACTIONS(156), 1, + sym__identifier, + ACTIONS(159), 1, + anon_sym_SQUOTE, + ACTIONS(162), 1, + anon_sym_DQUOTE, + ACTIONS(165), 1, + anon_sym_BQUOTE, + STATE(20), 1, + aux_sym__connection_path_repeat1, + STATE(29), 1, + sym_string, + STATE(76), 1, + sym_shape_key, + [604] = 3, + ACTIONS(3), 1, + sym_line_comment, + ACTIONS(170), 1, sym__dash, - ACTIONS(156), 6, + ACTIONS(168), 6, anon_sym_LBRACE, anon_sym_COLON, sym_arrow, sym_dot, sym__eol, anon_sym_SEMI, - [585] = 6, - ACTIONS(3), 1, - sym_line_comment, - ACTIONS(160), 1, - anon_sym_COLON, - ACTIONS(162), 1, - sym_arrow, - STATE(32), 1, - sym__colon, - STATE(33), 1, - aux_sym_connection_repeat1, - ACTIONS(164), 2, - sym__eol, - anon_sym_SEMI, - [605] = 7, + [619] = 8, ACTIONS(3), 1, sym_line_comment, ACTIONS(15), 1, @@ -3011,33 +3018,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DQUOTE, ACTIONS(19), 1, anon_sym_BQUOTE, - ACTIONS(166), 1, - sym__unquoted_string, - STATE(65), 1, - sym_string, - STATE(71), 1, - sym_attr_value, - [627] = 2, - ACTIONS(3), 1, - sym_line_comment, - ACTIONS(168), 6, - anon_sym_RBRACE, + ACTIONS(152), 1, sym__identifier, - anon_sym_SQUOTE, - anon_sym_DQUOTE, - anon_sym_BQUOTE, - sym__eol, - [639] = 2, - ACTIONS(3), 1, - sym_line_comment, - ACTIONS(170), 6, - anon_sym_LBRACE, - anon_sym_COLON, - sym_arrow, - sym_dot, - sym__eol, - anon_sym_SEMI, - [651] = 2, + STATE(20), 1, + aux_sym__connection_path_repeat1, + STATE(29), 1, + sym_string, + STATE(33), 1, + sym_shape_key, + [644] = 2, ACTIONS(3), 1, sym_line_comment, ACTIONS(172), 6, @@ -3047,64 +3036,32 @@ static const uint16_t ts_small_parse_table[] = { sym_dot, sym__eol, anon_sym_SEMI, - [663] = 7, - ACTIONS(3), 1, - sym_line_comment, - ACTIONS(15), 1, - anon_sym_SQUOTE, - ACTIONS(17), 1, - anon_sym_DQUOTE, - ACTIONS(19), 1, - anon_sym_BQUOTE, - ACTIONS(166), 1, - sym__unquoted_string, - STATE(58), 1, - sym_attr_value, - STATE(65), 1, - sym_string, - [685] = 3, + [656] = 6, ACTIONS(3), 1, sym_line_comment, ACTIONS(174), 1, + anon_sym_COLON, + ACTIONS(176), 1, + sym_arrow, + STATE(26), 1, + sym__colon, + STATE(34), 1, + aux_sym_connection_repeat1, + ACTIONS(178), 2, + sym__eol, + anon_sym_SEMI, + [676] = 3, + ACTIONS(3), 1, + sym_line_comment, + ACTIONS(180), 1, sym__dash, - ACTIONS(156), 5, + ACTIONS(168), 5, anon_sym_LBRACE, anon_sym_COLON, sym_dot, sym__eol, anon_sym_SEMI, - [699] = 2, - ACTIONS(3), 1, - sym_line_comment, - ACTIONS(156), 6, - anon_sym_LBRACE, - anon_sym_COLON, - sym_arrow, - sym_dot, - sym__eol, - anon_sym_SEMI, - [711] = 2, - ACTIONS(3), 1, - sym_line_comment, - ACTIONS(176), 6, - anon_sym_LBRACE, - anon_sym_COLON, - sym_arrow, - sym_dot, - sym__eol, - anon_sym_SEMI, - [723] = 3, - ACTIONS(3), 1, - sym_line_comment, - ACTIONS(180), 2, - anon_sym_RBRACE, - sym__eol, - ACTIONS(178), 4, - sym__identifier, - anon_sym_SQUOTE, - anon_sym_DQUOTE, - anon_sym_BQUOTE, - [737] = 7, + [690] = 7, ACTIONS(3), 1, sym_line_comment, ACTIONS(15), 1, @@ -3113,446 +3070,497 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DQUOTE, ACTIONS(19), 1, anon_sym_BQUOTE, - ACTIONS(114), 1, + ACTIONS(128), 1, sym__unquoted_string, - STATE(51), 1, + STATE(50), 1, sym_string, - STATE(67), 1, + STATE(57), 1, sym_label, - [759] = 4, + [712] = 7, ACTIONS(3), 1, sym_line_comment, - ACTIONS(185), 1, - sym_arrow, - STATE(33), 1, - aux_sym_connection_repeat1, - ACTIONS(183), 3, - anon_sym_COLON, - sym__eol, - anon_sym_SEMI, - [774] = 5, - ACTIONS(3), 1, - sym_line_comment, - ACTIONS(112), 1, - anon_sym_LBRACE, - STATE(55), 1, - sym__shape_block, + ACTIONS(15), 1, + anon_sym_SQUOTE, + ACTIONS(17), 1, + anon_sym_DQUOTE, + ACTIONS(19), 1, + anon_sym_BQUOTE, + ACTIONS(182), 1, + sym__unquoted_string, + STATE(59), 1, + sym_string, STATE(66), 1, - sym__container_block, - ACTIONS(188), 2, - sym__eol, - anon_sym_SEMI, - [791] = 3, + sym_attr_value, + [734] = 2, ACTIONS(3), 1, sym_line_comment, - ACTIONS(192), 1, + ACTIONS(184), 6, + anon_sym_LBRACE, + anon_sym_COLON, + sym_arrow, sym_dot, - ACTIONS(190), 4, + sym__eol, + anon_sym_SEMI, + [746] = 2, + ACTIONS(3), 1, + sym_line_comment, + ACTIONS(168), 6, + anon_sym_LBRACE, + anon_sym_COLON, + sym_arrow, + sym_dot, + sym__eol, + anon_sym_SEMI, + [758] = 2, + ACTIONS(3), 1, + sym_line_comment, + ACTIONS(186), 6, + anon_sym_LBRACE, + anon_sym_COLON, + sym_arrow, + sym_dot, + sym__eol, + anon_sym_SEMI, + [770] = 7, + ACTIONS(3), 1, + sym_line_comment, + ACTIONS(15), 1, + anon_sym_SQUOTE, + ACTIONS(17), 1, + anon_sym_DQUOTE, + ACTIONS(19), 1, + anon_sym_BQUOTE, + ACTIONS(182), 1, + sym__unquoted_string, + STATE(59), 1, + sym_string, + STATE(69), 1, + sym_attr_value, + [792] = 7, + ACTIONS(3), 1, + sym_line_comment, + ACTIONS(15), 1, + anon_sym_SQUOTE, + ACTIONS(17), 1, + anon_sym_DQUOTE, + ACTIONS(19), 1, + anon_sym_BQUOTE, + ACTIONS(182), 1, + sym__unquoted_string, + STATE(59), 1, + sym_string, + STATE(65), 1, + sym_attr_value, + [814] = 3, + ACTIONS(3), 1, + sym_line_comment, + ACTIONS(190), 1, + sym_dot, + ACTIONS(188), 4, anon_sym_COLON, sym_arrow, sym__eol, anon_sym_SEMI, - [804] = 3, + [827] = 4, ACTIONS(3), 1, sym_line_comment, - ACTIONS(192), 1, + ACTIONS(194), 1, + sym_arrow, + STATE(34), 1, + aux_sym_connection_repeat1, + ACTIONS(192), 3, + anon_sym_COLON, + sym__eol, + anon_sym_SEMI, + [842] = 3, + ACTIONS(3), 1, + sym_line_comment, + ACTIONS(190), 1, sym_dot, - ACTIONS(136), 4, + ACTIONS(146), 4, anon_sym_COLON, sym_arrow, sym__eol, anon_sym_SEMI, - [817] = 2, + [855] = 2, ACTIONS(3), 1, sym_line_comment, - ACTIONS(194), 4, + ACTIONS(197), 4, sym__identifier, anon_sym_SQUOTE, anon_sym_DQUOTE, anon_sym_BQUOTE, - [827] = 4, + [865] = 4, ACTIONS(3), 1, sym_line_comment, - ACTIONS(196), 1, - anon_sym_RBRACE, - ACTIONS(198), 1, + ACTIONS(126), 1, + anon_sym_LBRACE, + STATE(64), 1, + sym__container_block, + ACTIONS(199), 2, sym__eol, - STATE(39), 2, - sym__shape_block_definition, - aux_sym__shape_block_repeat1, - [841] = 4, + anon_sym_SEMI, + [879] = 2, ACTIONS(3), 1, sym_line_comment, - ACTIONS(200), 1, - anon_sym_RBRACE, - ACTIONS(202), 1, - sym__eol, - STATE(39), 2, - sym__shape_block_definition, - aux_sym__shape_block_repeat1, - [855] = 2, - ACTIONS(3), 1, - sym_line_comment, - ACTIONS(183), 4, + ACTIONS(192), 4, anon_sym_COLON, sym_arrow, sym__eol, anon_sym_SEMI, - [865] = 4, - ACTIONS(205), 1, - anon_sym_DQUOTE, - ACTIONS(207), 1, - aux_sym_string_token2, - ACTIONS(209), 1, - sym_line_comment, - STATE(46), 1, - aux_sym_string_repeat2, - [878] = 4, - ACTIONS(205), 1, + [889] = 4, + ACTIONS(201), 1, anon_sym_SQUOTE, - ACTIONS(209), 1, + ACTIONS(203), 1, + aux_sym_string_token1, + ACTIONS(205), 1, sym_line_comment, + STATE(51), 1, + aux_sym_string_repeat1, + [902] = 4, + ACTIONS(201), 1, + anon_sym_BQUOTE, + ACTIONS(205), 1, + sym_line_comment, + ACTIONS(207), 1, + aux_sym_string_token3, + STATE(52), 1, + aux_sym_string_repeat3, + [915] = 4, + ACTIONS(205), 1, + sym_line_comment, + ACTIONS(209), 1, + anon_sym_SQUOTE, ACTIONS(211), 1, aux_sym_string_token1, - STATE(49), 1, + STATE(39), 1, aux_sym_string_repeat1, - [891] = 4, - ACTIONS(209), 1, - sym_line_comment, - ACTIONS(213), 1, - anon_sym_SQUOTE, - ACTIONS(215), 1, - aux_sym_string_token1, - STATE(42), 1, - aux_sym_string_repeat1, - [904] = 3, - ACTIONS(3), 1, - sym_line_comment, - STATE(24), 1, - sym__end, - ACTIONS(217), 2, - sym__eol, - anon_sym_SEMI, - [915] = 4, - ACTIONS(209), 1, - sym_line_comment, - ACTIONS(219), 1, - anon_sym_BQUOTE, - ACTIONS(221), 1, - aux_sym_string_token3, - STATE(45), 1, - aux_sym_string_repeat3, [928] = 4, - ACTIONS(209), 1, + ACTIONS(205), 1, sym_line_comment, - ACTIONS(224), 1, + ACTIONS(209), 1, anon_sym_DQUOTE, - ACTIONS(226), 1, + ACTIONS(213), 1, aux_sym_string_token2, - STATE(46), 1, + STATE(49), 1, aux_sym_string_repeat2, [941] = 4, ACTIONS(3), 1, sym_line_comment, - ACTIONS(229), 1, + ACTIONS(215), 1, anon_sym_COLON, - ACTIONS(231), 1, + ACTIONS(217), 1, sym_dot, - STATE(64), 1, + STATE(53), 1, sym__colon, - [954] = 4, - ACTIONS(209), 1, + [954] = 3, + ACTIONS(3), 1, sym_line_comment, - ACTIONS(213), 1, - anon_sym_DQUOTE, - ACTIONS(233), 1, - aux_sym_string_token2, - STATE(41), 1, - aux_sym_string_repeat2, - [967] = 4, - ACTIONS(209), 1, - sym_line_comment, - ACTIONS(235), 1, - anon_sym_SQUOTE, - ACTIONS(237), 1, - aux_sym_string_token1, - STATE(49), 1, - aux_sym_string_repeat1, - [980] = 3, + STATE(13), 1, + sym__end, + ACTIONS(219), 2, + sym__eol, + anon_sym_SEMI, + [965] = 3, ACTIONS(3), 1, sym_line_comment, STATE(12), 1, sym__end, - ACTIONS(240), 2, + ACTIONS(221), 2, sym__eol, anon_sym_SEMI, - [991] = 2, + [976] = 4, + ACTIONS(205), 1, + sym_line_comment, + ACTIONS(209), 1, + anon_sym_BQUOTE, + ACTIONS(223), 1, + aux_sym_string_token3, + STATE(40), 1, + aux_sym_string_repeat3, + [989] = 3, ACTIONS(3), 1, sym_line_comment, - ACTIONS(242), 3, - anon_sym_LBRACE, + STATE(7), 1, + sym__end, + ACTIONS(225), 2, sym__eol, anon_sym_SEMI, [1000] = 4, - ACTIONS(209), 1, + ACTIONS(205), 1, sym_line_comment, - ACTIONS(213), 1, - anon_sym_BQUOTE, - ACTIONS(244), 1, - aux_sym_string_token3, - STATE(54), 1, - aux_sym_string_repeat3, - [1013] = 3, + ACTIONS(227), 1, + anon_sym_DQUOTE, + ACTIONS(229), 1, + aux_sym_string_token2, + STATE(48), 1, + aux_sym_string_repeat2, + [1013] = 4, + ACTIONS(201), 1, + anon_sym_DQUOTE, + ACTIONS(205), 1, + sym_line_comment, + ACTIONS(232), 1, + aux_sym_string_token2, + STATE(48), 1, + aux_sym_string_repeat2, + [1026] = 2, ACTIONS(3), 1, sym_line_comment, - STATE(4), 1, - sym__end, - ACTIONS(246), 2, + ACTIONS(234), 3, + anon_sym_LBRACE, sym__eol, anon_sym_SEMI, - [1024] = 4, + [1035] = 4, ACTIONS(205), 1, - anon_sym_BQUOTE, - ACTIONS(209), 1, sym_line_comment, - ACTIONS(248), 1, + ACTIONS(236), 1, + anon_sym_SQUOTE, + ACTIONS(238), 1, + aux_sym_string_token1, + STATE(51), 1, + aux_sym_string_repeat1, + [1048] = 4, + ACTIONS(205), 1, + sym_line_comment, + ACTIONS(241), 1, + anon_sym_BQUOTE, + ACTIONS(243), 1, aux_sym_string_token3, - STATE(45), 1, + STATE(52), 1, aux_sym_string_repeat3, - [1037] = 2, + [1061] = 3, + ACTIONS(3), 1, + sym_line_comment, + ACTIONS(246), 1, + anon_sym_LBRACE, + STATE(54), 1, + sym__style_attribute_block, + [1071] = 2, + ACTIONS(3), 1, + sym_line_comment, + ACTIONS(248), 2, + sym__eol, + anon_sym_SEMI, + [1079] = 2, ACTIONS(3), 1, sym_line_comment, ACTIONS(250), 2, sym__eol, anon_sym_SEMI, - [1045] = 2, - ACTIONS(3), 1, - sym_line_comment, - ACTIONS(188), 2, - sym__eol, - anon_sym_SEMI, - [1053] = 2, + [1087] = 2, ACTIONS(3), 1, sym_line_comment, ACTIONS(252), 2, sym__eol, anon_sym_SEMI, - [1061] = 2, + [1095] = 2, ACTIONS(3), 1, sym_line_comment, ACTIONS(254), 2, sym__eol, anon_sym_SEMI, - [1069] = 2, + [1103] = 2, ACTIONS(3), 1, sym_line_comment, ACTIONS(256), 2, sym__eol, anon_sym_SEMI, - [1077] = 2, + [1111] = 2, ACTIONS(3), 1, sym_line_comment, ACTIONS(258), 2, sym__eol, anon_sym_SEMI, - [1085] = 2, + [1119] = 3, ACTIONS(3), 1, sym_line_comment, - ACTIONS(260), 2, - sym__eol, - anon_sym_SEMI, - [1093] = 3, - ACTIONS(3), 1, - sym_line_comment, - ACTIONS(262), 1, + ACTIONS(260), 1, anon_sym_COLON, STATE(27), 1, sym__colon, - [1103] = 3, + [1129] = 2, ACTIONS(3), 1, sym_line_comment, - ACTIONS(162), 1, + ACTIONS(262), 2, + sym__eol, + anon_sym_SEMI, + [1137] = 3, + ACTIONS(3), 1, + sym_line_comment, + ACTIONS(176), 1, sym_arrow, - STATE(22), 1, + STATE(24), 1, aux_sym_connection_repeat1, - [1113] = 3, - ACTIONS(3), 1, - sym_line_comment, - ACTIONS(264), 1, - anon_sym_LBRACE, - STATE(68), 1, - sym__style_attribute_block, - [1123] = 2, - ACTIONS(3), 1, - sym_line_comment, - ACTIONS(266), 2, - sym__eol, - anon_sym_SEMI, - [1131] = 2, - ACTIONS(3), 1, - sym_line_comment, - ACTIONS(268), 2, - sym__eol, - anon_sym_SEMI, - [1139] = 2, - ACTIONS(3), 1, - sym_line_comment, - ACTIONS(270), 2, - sym__eol, - anon_sym_SEMI, [1147] = 2, ACTIONS(3), 1, sym_line_comment, - ACTIONS(272), 2, + ACTIONS(199), 2, sym__eol, anon_sym_SEMI, [1155] = 2, + ACTIONS(3), 1, + sym_line_comment, + ACTIONS(264), 2, + sym__eol, + anon_sym_SEMI, + [1163] = 2, + ACTIONS(3), 1, + sym_line_comment, + ACTIONS(266), 2, + sym__eol, + anon_sym_SEMI, + [1171] = 2, + ACTIONS(3), 1, + sym_line_comment, + ACTIONS(268), 2, + sym__eol, + anon_sym_SEMI, + [1179] = 3, + ACTIONS(3), 1, + sym_line_comment, + ACTIONS(270), 1, + anon_sym_COLON, + STATE(32), 1, + sym__colon, + [1189] = 3, + ACTIONS(3), 1, + sym_line_comment, + ACTIONS(272), 1, + anon_sym_COLON, + STATE(31), 1, + sym__colon, + [1199] = 2, ACTIONS(3), 1, sym_line_comment, ACTIONS(274), 2, sym__eol, anon_sym_SEMI, - [1163] = 3, + [1207] = 2, ACTIONS(3), 1, sym_line_comment, - ACTIONS(276), 1, - anon_sym_COLON, - STATE(23), 1, - sym__colon, - [1173] = 2, + ACTIONS(276), 2, + sym__eol, + anon_sym_SEMI, + [1215] = 2, ACTIONS(3), 1, sym_line_comment, ACTIONS(278), 2, sym__eol, anon_sym_SEMI, - [1181] = 2, + [1223] = 2, ACTIONS(3), 1, sym_line_comment, - ACTIONS(116), 2, - sym__eol, - anon_sym_SEMI, - [1189] = 2, + ACTIONS(280), 1, + anon_sym_COLON, + [1230] = 2, ACTIONS(3), 1, sym_line_comment, - ACTIONS(280), 2, - sym__eol, - anon_sym_SEMI, - [1197] = 2, - ACTIONS(3), 1, - sym_line_comment, - ACTIONS(282), 2, - sym__eol, - anon_sym_SEMI, - [1205] = 2, - ACTIONS(3), 1, - sym_line_comment, - ACTIONS(192), 1, - sym_dot, - [1212] = 2, + ACTIONS(282), 1, + ts_builtin_sym_end, + [1237] = 2, ACTIONS(3), 1, sym_line_comment, ACTIONS(284), 1, anon_sym_COLON, - [1219] = 2, + [1244] = 2, ACTIONS(3), 1, sym_line_comment, ACTIONS(286), 1, anon_sym_COLON, - [1226] = 2, + [1251] = 2, + ACTIONS(3), 1, + sym_line_comment, + ACTIONS(190), 1, + sym_dot, + [1258] = 2, ACTIONS(3), 1, sym_line_comment, ACTIONS(288), 1, anon_sym_COLON, - [1233] = 2, + [1265] = 2, ACTIONS(3), 1, sym_line_comment, ACTIONS(290), 1, anon_sym_COLON, - [1240] = 2, - ACTIONS(3), 1, - sym_line_comment, - ACTIONS(292), 1, - ts_builtin_sym_end, }; static const uint32_t ts_small_parse_table_map[] = { [SMALL_STATE(4)] = 0, - [SMALL_STATE(5)] = 32, - [SMALL_STATE(6)] = 72, - [SMALL_STATE(7)] = 112, - [SMALL_STATE(8)] = 152, - [SMALL_STATE(9)] = 199, - [SMALL_STATE(10)] = 230, - [SMALL_STATE(11)] = 273, - [SMALL_STATE(12)] = 316, - [SMALL_STATE(13)] = 338, - [SMALL_STATE(14)] = 373, - [SMALL_STATE(15)] = 405, - [SMALL_STATE(16)] = 437, - [SMALL_STATE(17)] = 466, - [SMALL_STATE(18)] = 494, - [SMALL_STATE(19)] = 520, - [SMALL_STATE(20)] = 545, - [SMALL_STATE(21)] = 570, - [SMALL_STATE(22)] = 585, - [SMALL_STATE(23)] = 605, - [SMALL_STATE(24)] = 627, - [SMALL_STATE(25)] = 639, - [SMALL_STATE(26)] = 651, - [SMALL_STATE(27)] = 663, - [SMALL_STATE(28)] = 685, - [SMALL_STATE(29)] = 699, - [SMALL_STATE(30)] = 711, - [SMALL_STATE(31)] = 723, - [SMALL_STATE(32)] = 737, - [SMALL_STATE(33)] = 759, - [SMALL_STATE(34)] = 774, - [SMALL_STATE(35)] = 791, - [SMALL_STATE(36)] = 804, - [SMALL_STATE(37)] = 817, - [SMALL_STATE(38)] = 827, - [SMALL_STATE(39)] = 841, - [SMALL_STATE(40)] = 855, - [SMALL_STATE(41)] = 865, - [SMALL_STATE(42)] = 878, - [SMALL_STATE(43)] = 891, - [SMALL_STATE(44)] = 904, - [SMALL_STATE(45)] = 915, - [SMALL_STATE(46)] = 928, - [SMALL_STATE(47)] = 941, - [SMALL_STATE(48)] = 954, - [SMALL_STATE(49)] = 967, - [SMALL_STATE(50)] = 980, - [SMALL_STATE(51)] = 991, - [SMALL_STATE(52)] = 1000, - [SMALL_STATE(53)] = 1013, - [SMALL_STATE(54)] = 1024, - [SMALL_STATE(55)] = 1037, - [SMALL_STATE(56)] = 1045, - [SMALL_STATE(57)] = 1053, - [SMALL_STATE(58)] = 1061, - [SMALL_STATE(59)] = 1069, - [SMALL_STATE(60)] = 1077, - [SMALL_STATE(61)] = 1085, - [SMALL_STATE(62)] = 1093, - [SMALL_STATE(63)] = 1103, - [SMALL_STATE(64)] = 1113, - [SMALL_STATE(65)] = 1123, - [SMALL_STATE(66)] = 1131, - [SMALL_STATE(67)] = 1139, - [SMALL_STATE(68)] = 1147, - [SMALL_STATE(69)] = 1155, - [SMALL_STATE(70)] = 1163, - [SMALL_STATE(71)] = 1173, - [SMALL_STATE(72)] = 1181, - [SMALL_STATE(73)] = 1189, - [SMALL_STATE(74)] = 1197, - [SMALL_STATE(75)] = 1205, - [SMALL_STATE(76)] = 1212, - [SMALL_STATE(77)] = 1219, - [SMALL_STATE(78)] = 1226, - [SMALL_STATE(79)] = 1233, - [SMALL_STATE(80)] = 1240, + [SMALL_STATE(5)] = 60, + [SMALL_STATE(6)] = 120, + [SMALL_STATE(7)] = 180, + [SMALL_STATE(8)] = 212, + [SMALL_STATE(9)] = 252, + [SMALL_STATE(10)] = 292, + [SMALL_STATE(11)] = 332, + [SMALL_STATE(12)] = 363, + [SMALL_STATE(13)] = 385, + [SMALL_STATE(14)] = 406, + [SMALL_STATE(15)] = 438, + [SMALL_STATE(16)] = 470, + [SMALL_STATE(17)] = 502, + [SMALL_STATE(18)] = 528, + [SMALL_STATE(19)] = 556, + [SMALL_STATE(20)] = 579, + [SMALL_STATE(21)] = 604, + [SMALL_STATE(22)] = 619, + [SMALL_STATE(23)] = 644, + [SMALL_STATE(24)] = 656, + [SMALL_STATE(25)] = 676, + [SMALL_STATE(26)] = 690, + [SMALL_STATE(27)] = 712, + [SMALL_STATE(28)] = 734, + [SMALL_STATE(29)] = 746, + [SMALL_STATE(30)] = 758, + [SMALL_STATE(31)] = 770, + [SMALL_STATE(32)] = 792, + [SMALL_STATE(33)] = 814, + [SMALL_STATE(34)] = 827, + [SMALL_STATE(35)] = 842, + [SMALL_STATE(36)] = 855, + [SMALL_STATE(37)] = 865, + [SMALL_STATE(38)] = 879, + [SMALL_STATE(39)] = 889, + [SMALL_STATE(40)] = 902, + [SMALL_STATE(41)] = 915, + [SMALL_STATE(42)] = 928, + [SMALL_STATE(43)] = 941, + [SMALL_STATE(44)] = 954, + [SMALL_STATE(45)] = 965, + [SMALL_STATE(46)] = 976, + [SMALL_STATE(47)] = 989, + [SMALL_STATE(48)] = 1000, + [SMALL_STATE(49)] = 1013, + [SMALL_STATE(50)] = 1026, + [SMALL_STATE(51)] = 1035, + [SMALL_STATE(52)] = 1048, + [SMALL_STATE(53)] = 1061, + [SMALL_STATE(54)] = 1071, + [SMALL_STATE(55)] = 1079, + [SMALL_STATE(56)] = 1087, + [SMALL_STATE(57)] = 1095, + [SMALL_STATE(58)] = 1103, + [SMALL_STATE(59)] = 1111, + [SMALL_STATE(60)] = 1119, + [SMALL_STATE(61)] = 1129, + [SMALL_STATE(62)] = 1137, + [SMALL_STATE(63)] = 1147, + [SMALL_STATE(64)] = 1155, + [SMALL_STATE(65)] = 1163, + [SMALL_STATE(66)] = 1171, + [SMALL_STATE(67)] = 1179, + [SMALL_STATE(68)] = 1189, + [SMALL_STATE(69)] = 1199, + [SMALL_STATE(70)] = 1207, + [SMALL_STATE(71)] = 1215, + [SMALL_STATE(72)] = 1223, + [SMALL_STATE(73)] = 1230, + [SMALL_STATE(74)] = 1237, + [SMALL_STATE(75)] = 1244, + [SMALL_STATE(76)] = 1251, + [SMALL_STATE(77)] = 1258, + [SMALL_STATE(78)] = 1265, }; static const TSParseActionEntry ts_parse_actions[] = { @@ -3561,133 +3569,132 @@ static const TSParseActionEntry ts_parse_actions[] = { [3] = {.entry = {.count = 1, .reusable = true}}, SHIFT_EXTRA(), [5] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 0), [7] = {.entry = {.count = 1, .reusable = false}}, SHIFT(21), - [9] = {.entry = {.count = 1, .reusable = false}}, SHIFT(77), + [9] = {.entry = {.count = 1, .reusable = false}}, SHIFT(72), [11] = {.entry = {.count = 1, .reusable = false}}, SHIFT(78), - [13] = {.entry = {.count = 1, .reusable = false}}, SHIFT(79), - [15] = {.entry = {.count = 1, .reusable = true}}, SHIFT(43), - [17] = {.entry = {.count = 1, .reusable = true}}, SHIFT(48), - [19] = {.entry = {.count = 1, .reusable = true}}, SHIFT(52), - [21] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2), - [23] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 1), - [25] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3), - [27] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2), - [29] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(21), - [32] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(77), - [35] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(78), - [38] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(79), - [41] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(43), - [44] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(48), - [47] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(52), - [50] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(3), - [53] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__root_definition, 2), - [55] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__root_definition, 2), - [57] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__style_attribute_block_repeat1, 2), - [59] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__style_attribute_block_repeat1, 2), SHIFT_REPEAT(76), - [62] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__style_attribute_block_repeat1, 2), SHIFT_REPEAT(79), - [65] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__style_attribute_block_repeat1, 2), SHIFT_REPEAT(79), - [68] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__style_attribute_block_repeat1, 2), SHIFT_REPEAT(5), - [71] = {.entry = {.count = 1, .reusable = true}}, SHIFT(69), - [73] = {.entry = {.count = 1, .reusable = true}}, SHIFT(76), - [75] = {.entry = {.count = 1, .reusable = true}}, SHIFT(79), - [77] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5), - [79] = {.entry = {.count = 1, .reusable = true}}, SHIFT(73), - [81] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6), - [83] = {.entry = {.count = 1, .reusable = true}}, SHIFT(21), - [85] = {.entry = {.count = 1, .reusable = true}}, SHIFT(60), - [87] = {.entry = {.count = 1, .reusable = true}}, SHIFT(31), - [89] = {.entry = {.count = 1, .reusable = true}}, SHIFT(59), - [91] = {.entry = {.count = 1, .reusable = true}}, SHIFT(11), - [93] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__container_block_repeat1, 2), SHIFT_REPEAT(21), - [96] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__container_block_repeat1, 2), - [98] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__container_block_repeat1, 2), SHIFT_REPEAT(43), - [101] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__container_block_repeat1, 2), SHIFT_REPEAT(48), - [104] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__container_block_repeat1, 2), SHIFT_REPEAT(52), - [107] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__container_block_repeat1, 2), SHIFT_REPEAT(11), - [110] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym__style_attribute_block_repeat1, 2), - [112] = {.entry = {.count = 1, .reusable = true}}, SHIFT(8), - [114] = {.entry = {.count = 1, .reusable = true}}, SHIFT(51), - [116] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_shape, 2), - [118] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__connection_path_repeat1, 2, .production_id = 2), SHIFT(28), - [121] = {.entry = {.count = 1, .reusable = false}}, SHIFT(47), - [123] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__connection_path_repeat1, 2, .production_id = 2), SHIFT(43), - [126] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__connection_path_repeat1, 2, .production_id = 2), SHIFT(48), - [129] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__connection_path_repeat1, 2, .production_id = 2), SHIFT(52), - [132] = {.entry = {.count = 1, .reusable = false}}, SHIFT(28), - [134] = {.entry = {.count = 1, .reusable = true}}, SHIFT(13), - [136] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__connection_path, 1), - [138] = {.entry = {.count = 1, .reusable = true}}, SHIFT(14), - [140] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_shape, 1), - [142] = {.entry = {.count = 1, .reusable = true}}, SHIFT(15), - [144] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__connection_path_repeat1, 2), SHIFT_REPEAT(28), - [147] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__connection_path_repeat1, 2), SHIFT_REPEAT(43), - [150] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__connection_path_repeat1, 2), SHIFT_REPEAT(48), - [153] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__connection_path_repeat1, 2), SHIFT_REPEAT(52), - [156] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_shape_key, 1), - [158] = {.entry = {.count = 1, .reusable = false}}, SHIFT(26), - [160] = {.entry = {.count = 1, .reusable = true}}, SHIFT(32), - [162] = {.entry = {.count = 1, .reusable = true}}, SHIFT(17), - [164] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_connection, 2), - [166] = {.entry = {.count = 1, .reusable = true}}, SHIFT(65), - [168] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__container_block_definition, 2), - [170] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string, 2), - [172] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_shape_key, 2), + [13] = {.entry = {.count = 1, .reusable = false}}, SHIFT(77), + [15] = {.entry = {.count = 1, .reusable = true}}, SHIFT(41), + [17] = {.entry = {.count = 1, .reusable = true}}, SHIFT(42), + [19] = {.entry = {.count = 1, .reusable = true}}, SHIFT(46), + [21] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3), + [23] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2), + [25] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(21), + [28] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(72), + [31] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(78), + [34] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(77), + [37] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(41), + [40] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(42), + [43] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(46), + [46] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(2), + [49] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 1), + [51] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2), + [53] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__container_block_repeat1, 2), SHIFT_REPEAT(21), + [56] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__container_block_repeat1, 2), + [58] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__container_block_repeat1, 2), SHIFT_REPEAT(75), + [61] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__container_block_repeat1, 2), SHIFT_REPEAT(43), + [64] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__container_block_repeat1, 2), SHIFT_REPEAT(41), + [67] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__container_block_repeat1, 2), SHIFT_REPEAT(42), + [70] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__container_block_repeat1, 2), SHIFT_REPEAT(46), + [73] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__container_block_repeat1, 2), SHIFT_REPEAT(4), + [76] = {.entry = {.count = 1, .reusable = true}}, SHIFT(58), + [78] = {.entry = {.count = 1, .reusable = false}}, SHIFT(75), + [80] = {.entry = {.count = 1, .reusable = false}}, SHIFT(43), + [82] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6), + [84] = {.entry = {.count = 1, .reusable = true}}, SHIFT(61), + [86] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4), + [88] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__root_definition, 2), + [90] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__root_definition, 2), + [92] = {.entry = {.count = 1, .reusable = true}}, SHIFT(56), + [94] = {.entry = {.count = 1, .reusable = true}}, SHIFT(74), + [96] = {.entry = {.count = 1, .reusable = true}}, SHIFT(77), + [98] = {.entry = {.count = 1, .reusable = true}}, SHIFT(10), + [100] = {.entry = {.count = 1, .reusable = true}}, SHIFT(71), + [102] = {.entry = {.count = 1, .reusable = true}}, SHIFT(8), + [104] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__style_attribute_block_repeat1, 2), + [106] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__style_attribute_block_repeat1, 2), SHIFT_REPEAT(74), + [109] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__style_attribute_block_repeat1, 2), SHIFT_REPEAT(77), + [112] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__style_attribute_block_repeat1, 2), SHIFT_REPEAT(77), + [115] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__style_attribute_block_repeat1, 2), SHIFT_REPEAT(10), + [118] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym__style_attribute_block_repeat1, 2), + [120] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__container_block_definition, 2), + [122] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__container_block_definition, 2), + [124] = {.entry = {.count = 1, .reusable = false}}, SHIFT(25), + [126] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5), + [128] = {.entry = {.count = 1, .reusable = true}}, SHIFT(50), + [130] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_shape, 2), + [132] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__connection_path_repeat1, 2, .production_id = 2), SHIFT(25), + [135] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__connection_path_repeat1, 2, .production_id = 2), SHIFT(41), + [138] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__connection_path_repeat1, 2, .production_id = 2), SHIFT(42), + [141] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__connection_path_repeat1, 2, .production_id = 2), SHIFT(46), + [144] = {.entry = {.count = 1, .reusable = true}}, SHIFT(15), + [146] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__connection_path, 1), + [148] = {.entry = {.count = 1, .reusable = true}}, SHIFT(16), + [150] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_shape, 1), + [152] = {.entry = {.count = 1, .reusable = true}}, SHIFT(21), + [154] = {.entry = {.count = 1, .reusable = true}}, SHIFT(14), + [156] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__connection_path_repeat1, 2), SHIFT_REPEAT(25), + [159] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__connection_path_repeat1, 2), SHIFT_REPEAT(41), + [162] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__connection_path_repeat1, 2), SHIFT_REPEAT(42), + [165] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__connection_path_repeat1, 2), SHIFT_REPEAT(46), + [168] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_shape_key, 1), + [170] = {.entry = {.count = 1, .reusable = false}}, SHIFT(28), + [172] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string, 2), [174] = {.entry = {.count = 1, .reusable = true}}, SHIFT(26), - [176] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string, 3), - [178] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__container_block_definition, 1), - [180] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__container_block_definition, 1), REDUCE(sym__shape_block_definition, 1), - [183] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_connection_repeat1, 2), - [185] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_connection_repeat1, 2), SHIFT_REPEAT(17), - [188] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_shape, 3), - [190] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__connection_path, 2), - [192] = {.entry = {.count = 1, .reusable = true}}, SHIFT(37), - [194] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__connection_path_repeat1, 2, .production_id = 2), - [196] = {.entry = {.count = 1, .reusable = true}}, SHIFT(61), - [198] = {.entry = {.count = 1, .reusable = true}}, SHIFT(39), - [200] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__shape_block_repeat1, 2), - [202] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__shape_block_repeat1, 2), SHIFT_REPEAT(39), - [205] = {.entry = {.count = 1, .reusable = false}}, SHIFT(30), - [207] = {.entry = {.count = 1, .reusable = true}}, SHIFT(46), - [209] = {.entry = {.count = 1, .reusable = false}}, SHIFT_EXTRA(), - [211] = {.entry = {.count = 1, .reusable = true}}, SHIFT(49), - [213] = {.entry = {.count = 1, .reusable = false}}, SHIFT(25), - [215] = {.entry = {.count = 1, .reusable = true}}, SHIFT(42), - [217] = {.entry = {.count = 1, .reusable = true}}, SHIFT(24), - [219] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_string_repeat3, 2), - [221] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_string_repeat3, 2), SHIFT_REPEAT(45), - [224] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_string_repeat2, 2), - [226] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_string_repeat2, 2), SHIFT_REPEAT(46), - [229] = {.entry = {.count = 1, .reusable = true}}, SHIFT(64), - [231] = {.entry = {.count = 1, .reusable = true}}, SHIFT(9), - [233] = {.entry = {.count = 1, .reusable = true}}, SHIFT(41), - [235] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_string_repeat1, 2), - [237] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_string_repeat1, 2), SHIFT_REPEAT(49), - [240] = {.entry = {.count = 1, .reusable = true}}, SHIFT(12), - [242] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_label, 1), - [244] = {.entry = {.count = 1, .reusable = true}}, SHIFT(54), - [246] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4), - [248] = {.entry = {.count = 1, .reusable = true}}, SHIFT(45), - [250] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_shape, 4), - [252] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_container, 2, .production_id = 2), - [254] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__root_attribute, 3), - [256] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__container_block, 3), - [258] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__shape_block, 2), - [260] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__shape_block, 3), - [262] = {.entry = {.count = 1, .reusable = true}}, SHIFT(27), - [264] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7), - [266] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attr_value, 1), - [268] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_container, 4, .production_id = 2), - [270] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_connection, 4), - [272] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__style_attribute, 3), - [274] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__style_attribute_block, 3), - [276] = {.entry = {.count = 1, .reusable = true}}, SHIFT(23), - [278] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__inner_style_attribute, 3), - [280] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__style_attribute_block, 2), - [282] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_container, 3, .production_id = 2), + [176] = {.entry = {.count = 1, .reusable = true}}, SHIFT(18), + [178] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_connection, 2), + [180] = {.entry = {.count = 1, .reusable = true}}, SHIFT(28), + [182] = {.entry = {.count = 1, .reusable = true}}, SHIFT(59), + [184] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_shape_key, 2), + [186] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string, 3), + [188] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__connection_path, 2), + [190] = {.entry = {.count = 1, .reusable = true}}, SHIFT(36), + [192] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_connection_repeat1, 2), + [194] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_connection_repeat1, 2), SHIFT_REPEAT(18), + [197] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__connection_path_repeat1, 2, .production_id = 2), + [199] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_shape, 3), + [201] = {.entry = {.count = 1, .reusable = false}}, SHIFT(30), + [203] = {.entry = {.count = 1, .reusable = true}}, SHIFT(51), + [205] = {.entry = {.count = 1, .reusable = false}}, SHIFT_EXTRA(), + [207] = {.entry = {.count = 1, .reusable = true}}, SHIFT(52), + [209] = {.entry = {.count = 1, .reusable = false}}, SHIFT(23), + [211] = {.entry = {.count = 1, .reusable = true}}, SHIFT(39), + [213] = {.entry = {.count = 1, .reusable = true}}, SHIFT(49), + [215] = {.entry = {.count = 1, .reusable = true}}, SHIFT(53), + [217] = {.entry = {.count = 1, .reusable = true}}, SHIFT(11), + [219] = {.entry = {.count = 1, .reusable = true}}, SHIFT(13), + [221] = {.entry = {.count = 1, .reusable = true}}, SHIFT(12), + [223] = {.entry = {.count = 1, .reusable = true}}, SHIFT(40), + [225] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7), + [227] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_string_repeat2, 2), + [229] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_string_repeat2, 2), SHIFT_REPEAT(48), + [232] = {.entry = {.count = 1, .reusable = true}}, SHIFT(48), + [234] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_label, 1), + [236] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_string_repeat1, 2), + [238] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_string_repeat1, 2), SHIFT_REPEAT(51), + [241] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_string_repeat3, 2), + [243] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_string_repeat3, 2), SHIFT_REPEAT(52), + [246] = {.entry = {.count = 1, .reusable = true}}, SHIFT(9), + [248] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__style_attribute, 3), + [250] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_container, 2, .production_id = 2), + [252] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__style_attribute_block, 3), + [254] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_connection, 4), + [256] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__container_block, 2), + [258] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attr_value, 1), + [260] = {.entry = {.count = 1, .reusable = true}}, SHIFT(27), + [262] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__container_block, 3), + [264] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_container, 4, .production_id = 2), + [266] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__inner_style_attribute, 3), + [268] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__root_attribute, 3), + [270] = {.entry = {.count = 1, .reusable = true}}, SHIFT(32), + [272] = {.entry = {.count = 1, .reusable = true}}, SHIFT(31), + [274] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__base_shape_attribute, 3), + [276] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_container, 3, .production_id = 2), + [278] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__style_attribute_block, 2), + [280] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__root_attr_key, 1), + [282] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), [284] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__style_attr_key, 1), - [286] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__root_attr_key, 1), - [288] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__root_attr_key, 1, .production_id = 1), - [290] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__common_style_attr_key, 1), - [292] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), + [286] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__shape_attr_key, 1), + [288] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__common_style_attr_key, 1), + [290] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__root_attr_key, 1, .production_id = 1), }; #ifdef __cplusplus diff --git a/test/corpus/attributes.txt b/test/corpus/attributes.txt index 733a6ec..9017546 100644 --- a/test/corpus/attributes.txt +++ b/test/corpus/attributes.txt @@ -114,3 +114,115 @@ foo.style: { ) ) ) + +================================================================================ +Container attributes +================================================================================ +foo: { + shape: oval + label: Baz + constraint: primary-key + icon: pathto + width: 100 + height: 200 +} + +-------------------------------------------------------------------------------- + +(source_file + (container + (container_key) + (block + (attribute (attr_key) (attr_value)) + (attribute (attr_key) (attr_value)) + (attribute (attr_key) (attr_value)) + (attribute (attr_key) (attr_value)) + (attribute (attr_key) (attr_value)) + (attribute (attr_key) (attr_value)) + ) + ) +) + +================================================================================ +Container style attributes +================================================================================ +foo: { + style.opacity: 5 + style.fill: red + style.stroke: red + style.stroke-width: 5 + style.stroke-dash: 4 + style.border-radius: 1 + style.font-color: red + style.shadow: true + style.multiple: true + style.animated: true + style.link: https://to +} + +-------------------------------------------------------------------------------- + +(source_file + (container + (container_key) + (block + (attribute (attr_key) (dot) (attribute (attr_key) (attr_value))) + (attribute (attr_key) (dot) (attribute (attr_key) (attr_value))) + (attribute (attr_key) (dot) (attribute (attr_key) (attr_value))) + (attribute (attr_key) (dot) (attribute (attr_key) (attr_value))) + (attribute (attr_key) (dot) (attribute (attr_key) (attr_value))) + (attribute (attr_key) (dot) (attribute (attr_key) (attr_value))) + (attribute (attr_key) (dot) (attribute (attr_key) (attr_value))) + (attribute (attr_key) (dot) (attribute (attr_key) (attr_value))) + (attribute (attr_key) (dot) (attribute (attr_key) (attr_value))) + (attribute (attr_key) (dot) (attribute (attr_key) (attr_value))) + (attribute (attr_key) (dot) (attribute (attr_key) (attr_value))) + ) + ) +) + +================================================================================ +Block style attributes inside a container +================================================================================ +foo: { + style: { + opacity: 5 + fill: red + stroke: red + stroke-width: 5 + stroke-dash: 4 + border-radius: 1 + font-color: red + shadow: true + multiple: true + animated: true + link: https://to + } +} + +-------------------------------------------------------------------------------- + +(source_file + (container + (container_key) + (block + (attribute + (attr_key) + (block + (attribute (attr_key) (attr_value)) + (attribute (attr_key) (attr_value)) + (attribute (attr_key) (attr_value)) + (attribute (attr_key) (attr_value)) + (attribute (attr_key) (attr_value)) + (attribute (attr_key) (attr_value)) + (attribute (attr_key) (attr_value)) + (attribute (attr_key) (attr_value)) + (attribute (attr_key) (attr_value)) + (attribute (attr_key) (attr_value)) + (attribute (attr_key) (attr_value)) + ) + ) + ) + ) +) + diff --git a/test/corpus/shape.txt b/test/corpus/shape.txt index 16a0489..cf52896 100644 --- a/test/corpus/shape.txt +++ b/test/corpus/shape.txt @@ -78,32 +78,6 @@ bar : Foo Bar; baz (shape (shape_key)) ) -================================================================================ -Shape block -================================================================================ - -foo: {} -bar {} - --------------------------------------------------------------------------------- - -(source_file - (shape (shape_key) (block)) - (shape (shape_key) (block)) -) - -================================================================================ -Labeled shape block -================================================================================ - -foo: Foo {} - --------------------------------------------------------------------------------- - -(source_file - (shape (shape_key) (label) (block)) -) - ================================================================================ Use quoted string as shape key and label ================================================================================ diff --git a/test/highlight/keyword.d2 b/test/highlight/attribute.d2 similarity index 95% rename from test/highlight/keyword.d2 rename to test/highlight/attribute.d2 index 72044c1..58f878a 100644 --- a/test/highlight/keyword.d2 +++ b/test/highlight/attribute.d2 @@ -6,7 +6,7 @@ direction: right; shape: oval # <- error -# ^ error +# ^ string baaaz.style: { # <- variable diff --git a/tree-sitter-d2.wasm b/tree-sitter-d2.wasm index 07e5474..609a011 100755 Binary files a/tree-sitter-d2.wasm and b/tree-sitter-d2.wasm differ