From f4b4b4f026e5a932d46635bc7de96587b4e1c569 Mon Sep 17 00:00:00 2001 From: mhoffm Date: Fri, 18 Jun 2021 07:17:21 +0200 Subject: [PATCH] add precedence to conditionals; add test for conditional associativity --- grammar.js | 6 +- src/grammar.json | 53 +- src/parser.c | 1290 +++++++++++++++++----------------- test/corpus/conditionals.txt | 34 + 4 files changed, 706 insertions(+), 677 deletions(-) diff --git a/grammar.js b/grammar.js index 4f5fbda..51b1bbb 100644 --- a/grammar.js +++ b/grammar.js @@ -20,7 +20,7 @@ module.exports = grammar({ [$.object_elem, $.variable_expr], [$.attr_splat], [$.full_splat], - [$.conditional], + // string literals are just quoted template without template stuff [$.string_lit, $.quoted_template], ], @@ -215,13 +215,13 @@ module.exports = grammar({ ellipsis: $ => token('...'), - conditional: $ => seq( + conditional: $ => prec.left(seq( $.expression, '?', $.expression, ':', $.expression, - ), + )), operation: $ => choice($.unary_operation, $.binary_operation), diff --git a/src/grammar.json b/src/grammar.json index 0e50ee1..2e74c1d 100644 --- a/src/grammar.json +++ b/src/grammar.json @@ -798,29 +798,33 @@ } }, "conditional": { - "type": "SEQ", - "members": [ - { - "type": "SYMBOL", - "name": "expression" - }, - { - "type": "STRING", - "value": "?" - }, - { - "type": "SYMBOL", - "name": "expression" - }, - { - "type": "STRING", - "value": ":" - }, - { - "type": "SYMBOL", - "name": "expression" - } - ] + "type": "PREC_LEFT", + "value": 0, + "content": { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "expression" + }, + { + "type": "STRING", + "value": "?" + }, + { + "type": "SYMBOL", + "name": "expression" + }, + { + "type": "STRING", + "value": ":" + }, + { + "type": "SYMBOL", + "name": "expression" + } + ] + } }, "operation": { "type": "CHOICE", @@ -1228,9 +1232,6 @@ [ "full_splat" ], - [ - "conditional" - ], [ "string_lit", "quoted_template" diff --git a/src/parser.c b/src/parser.c index 8188114..4a31619 100644 --- a/src/parser.c +++ b/src/parser.c @@ -9579,14 +9579,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_EQ_GT, sym_ellipsis, anon_sym_QMARK, - [8142] = 4, + [8142] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(402), 1, anon_sym_EQ, - ACTIONS(404), 1, - anon_sym_QMARK, - ACTIONS(400), 9, + ACTIONS(400), 10, ts_builtin_sym_end, anon_sym_RBRACE, sym_identifier, @@ -9596,15 +9594,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_COLON, anon_sym_EQ_GT, sym_ellipsis, - [8163] = 3, + anon_sym_QMARK, + [8161] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(409), 4, + ACTIONS(406), 4, sym_identifier, anon_sym_true, anon_sym_false, sym_null_lit, - ACTIONS(407), 7, + ACTIONS(404), 7, sym__quoted_template_start, anon_sym_LBRACE, anon_sym_LPAREN, @@ -9612,7 +9611,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LBRACK, anon_sym_DASH, anon_sym_BANG, - [8182] = 3, + [8180] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(97), 1, @@ -9628,7 +9627,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_EQ_GT, sym_ellipsis, anon_sym_QMARK, - [8201] = 6, + [8199] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(318), 1, @@ -9646,7 +9645,7 @@ static const uint16_t ts_small_parse_table[] = { sym_index, sym_get_attr, sym_splat, - [8225] = 6, + [8223] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(318), 1, @@ -9664,7 +9663,7 @@ static const uint16_t ts_small_parse_table[] = { sym_index, sym_get_attr, sym_splat, - [8249] = 6, + [8247] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(318), 1, @@ -9682,7 +9681,7 @@ static const uint16_t ts_small_parse_table[] = { sym_index, sym_get_attr, sym_splat, - [8273] = 6, + [8271] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(318), 1, @@ -9700,7 +9699,7 @@ static const uint16_t ts_small_parse_table[] = { sym_index, sym_get_attr, sym_splat, - [8297] = 6, + [8295] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(318), 1, @@ -9718,7 +9717,7 @@ static const uint16_t ts_small_parse_table[] = { sym_index, sym_get_attr, sym_splat, - [8321] = 6, + [8319] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(318), 1, @@ -9736,7 +9735,7 @@ static const uint16_t ts_small_parse_table[] = { sym_index, sym_get_attr, sym_splat, - [8345] = 6, + [8343] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(318), 1, @@ -9754,14 +9753,14 @@ static const uint16_t ts_small_parse_table[] = { sym_index, sym_get_attr, sym_splat, - [8369] = 7, + [8367] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(411), 1, + ACTIONS(408), 1, sym__quoted_template_end, - ACTIONS(413), 1, + ACTIONS(410), 1, sym__template_literal_chunk, - ACTIONS(415), 1, + ACTIONS(412), 1, sym__template_interpolation_start, STATE(227), 1, aux_sym_template_literal_repeat1, @@ -9771,14 +9770,14 @@ static const uint16_t ts_small_parse_table[] = { sym_template_interpolation, sym_template_directive, aux_sym_quoted_template_repeat1, - [8393] = 6, + [8391] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(413), 1, + ACTIONS(410), 1, sym__template_literal_chunk, - ACTIONS(415), 1, + ACTIONS(412), 1, sym__template_interpolation_start, - ACTIONS(417), 1, + ACTIONS(414), 1, sym__quoted_template_end, STATE(227), 1, aux_sym_template_literal_repeat1, @@ -9787,14 +9786,14 @@ static const uint16_t ts_small_parse_table[] = { sym_template_interpolation, sym_template_directive, aux_sym_quoted_template_repeat1, - [8415] = 7, + [8413] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(413), 1, + ACTIONS(410), 1, sym__template_literal_chunk, - ACTIONS(415), 1, + ACTIONS(412), 1, sym__template_interpolation_start, - ACTIONS(419), 1, + ACTIONS(416), 1, sym__quoted_template_end, STATE(227), 1, aux_sym_template_literal_repeat1, @@ -9804,14 +9803,14 @@ static const uint16_t ts_small_parse_table[] = { sym_template_interpolation, sym_template_directive, aux_sym_quoted_template_repeat1, - [8439] = 6, + [8437] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(413), 1, + ACTIONS(410), 1, sym__template_literal_chunk, - ACTIONS(415), 1, + ACTIONS(412), 1, sym__template_interpolation_start, - ACTIONS(421), 1, + ACTIONS(418), 1, sym__quoted_template_end, STATE(227), 1, aux_sym_template_literal_repeat1, @@ -9820,14 +9819,14 @@ static const uint16_t ts_small_parse_table[] = { sym_template_interpolation, sym_template_directive, aux_sym_quoted_template_repeat1, - [8461] = 6, + [8459] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(423), 1, + ACTIONS(420), 1, sym__quoted_template_end, + ACTIONS(422), 1, + sym__template_literal_chunk, ACTIONS(425), 1, - sym__template_literal_chunk, - ACTIONS(428), 1, sym__template_interpolation_start, STATE(227), 1, aux_sym_template_literal_repeat1, @@ -9836,14 +9835,14 @@ static const uint16_t ts_small_parse_table[] = { sym_template_interpolation, sym_template_directive, aux_sym_quoted_template_repeat1, - [8483] = 6, + [8481] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(413), 1, + ACTIONS(410), 1, sym__template_literal_chunk, - ACTIONS(415), 1, + ACTIONS(412), 1, sym__template_interpolation_start, - ACTIONS(431), 1, + ACTIONS(428), 1, sym__quoted_template_end, STATE(227), 1, aux_sym_template_literal_repeat1, @@ -9852,14 +9851,14 @@ static const uint16_t ts_small_parse_table[] = { sym_template_interpolation, sym_template_directive, aux_sym_quoted_template_repeat1, - [8505] = 7, + [8503] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(413), 1, + ACTIONS(410), 1, sym__template_literal_chunk, - ACTIONS(415), 1, + ACTIONS(412), 1, sym__template_interpolation_start, - ACTIONS(433), 1, + ACTIONS(430), 1, sym__quoted_template_end, STATE(227), 1, aux_sym_template_literal_repeat1, @@ -9869,28 +9868,28 @@ static const uint16_t ts_small_parse_table[] = { sym_template_interpolation, sym_template_directive, aux_sym_quoted_template_repeat1, - [8529] = 7, + [8527] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(435), 1, + ACTIONS(432), 1, anon_sym_EQ, - ACTIONS(437), 1, + ACTIONS(434), 1, anon_sym_LBRACE, - ACTIONS(439), 1, + ACTIONS(436), 1, sym_identifier, - ACTIONS(441), 1, + ACTIONS(438), 1, sym__quoted_template_start, STATE(205), 1, sym__block_start, STATE(211), 2, sym_string_lit, aux_sym_block_repeat1, - [8552] = 6, + [8550] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, sym_identifier, - ACTIONS(443), 1, + ACTIONS(440), 1, anon_sym_RBRACE, STATE(255), 1, sym__block_end, @@ -9900,12 +9899,12 @@ static const uint16_t ts_small_parse_table[] = { sym_attribute, sym_block, aux_sym_body_repeat1, - [8573] = 6, + [8571] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, sym_identifier, - ACTIONS(445), 1, + ACTIONS(442), 1, anon_sym_RBRACE, STATE(248), 1, sym__block_end, @@ -9915,134 +9914,133 @@ static const uint16_t ts_small_parse_table[] = { sym_attribute, sym_block, aux_sym_body_repeat1, - [8594] = 7, + [8592] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(447), 1, + ACTIONS(444), 1, anon_sym_RBRACE, - ACTIONS(449), 1, + ACTIONS(446), 1, anon_sym_if, - ACTIONS(451), 1, + ACTIONS(448), 1, sym_ellipsis, - ACTIONS(453), 1, + ACTIONS(450), 1, anon_sym_QMARK, STATE(116), 1, sym__object_end, STATE(269), 1, sym_for_cond, - [8616] = 4, + [8614] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(5), 1, sym_identifier, - ACTIONS(455), 2, + ACTIONS(452), 2, ts_builtin_sym_end, anon_sym_RBRACE, STATE(210), 3, sym_attribute, sym_block, aux_sym_body_repeat1, - [8632] = 7, + [8630] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(449), 1, + ACTIONS(446), 1, anon_sym_if, - ACTIONS(453), 1, + ACTIONS(450), 1, anon_sym_QMARK, - ACTIONS(457), 1, + ACTIONS(454), 1, anon_sym_RBRACE, - ACTIONS(459), 1, + ACTIONS(456), 1, sym_ellipsis, STATE(78), 1, sym__object_end, STATE(282), 1, sym_for_cond, - [8654] = 7, + [8652] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(449), 1, + ACTIONS(446), 1, anon_sym_if, - ACTIONS(453), 1, + ACTIONS(450), 1, anon_sym_QMARK, - ACTIONS(461), 1, + ACTIONS(458), 1, anon_sym_RBRACE, - ACTIONS(463), 1, + ACTIONS(460), 1, sym_ellipsis, STATE(161), 1, sym__object_end, STATE(268), 1, sym_for_cond, - [8676] = 4, + [8674] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(467), 1, + ACTIONS(464), 1, sym_identifier, - ACTIONS(465), 2, + ACTIONS(462), 2, ts_builtin_sym_end, anon_sym_RBRACE, STATE(210), 3, sym_attribute, sym_block, aux_sym_body_repeat1, - [8692] = 6, + [8690] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(441), 1, + ACTIONS(438), 1, sym__quoted_template_start, - ACTIONS(470), 1, + ACTIONS(467), 1, anon_sym_LBRACE, - ACTIONS(472), 1, + ACTIONS(469), 1, sym_identifier, STATE(204), 1, sym__block_start, STATE(218), 2, sym_string_lit, aux_sym_block_repeat1, - [8712] = 6, + [8710] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(474), 1, + ACTIONS(471), 1, anon_sym_RPAREN, - ACTIONS(476), 1, + ACTIONS(473), 1, anon_sym_COMMA, - ACTIONS(478), 1, + ACTIONS(475), 1, sym_ellipsis, - ACTIONS(480), 1, + ACTIONS(477), 1, anon_sym_QMARK, STATE(225), 1, aux_sym_tuple_repeat1, - [8731] = 3, + [8729] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(482), 1, - anon_sym_QMARK, - ACTIONS(400), 4, + ACTIONS(400), 5, anon_sym_RBRACE, anon_sym_RBRACK, anon_sym_if, sym_ellipsis, - [8744] = 4, + anon_sym_QMARK, + [8740] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(487), 1, + ACTIONS(481), 1, anon_sym_COMMA, STATE(214), 1, aux_sym_tuple_repeat1, - ACTIONS(485), 3, + ACTIONS(479), 3, anon_sym_RPAREN, anon_sym_RBRACK, sym_ellipsis, - [8759] = 3, + [8755] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(480), 1, + ACTIONS(477), 1, anon_sym_QMARK, - ACTIONS(485), 4, + ACTIONS(479), 4, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_RBRACK, sym_ellipsis, - [8772] = 2, + [8768] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(95), 5, @@ -10051,7 +10049,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_if, sym_ellipsis, anon_sym_QMARK, - [8783] = 2, + [8779] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(396), 5, @@ -10060,726 +10058,725 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_if, sym_ellipsis, anon_sym_QMARK, - [8794] = 5, + [8790] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(490), 1, + ACTIONS(484), 1, anon_sym_LBRACE, - ACTIONS(492), 1, + ACTIONS(486), 1, sym_identifier, - ACTIONS(495), 1, + ACTIONS(489), 1, sym__quoted_template_start, STATE(218), 2, sym_string_lit, aux_sym_block_repeat1, - [8811] = 5, + [8807] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(498), 1, + ACTIONS(492), 1, anon_sym_RBRACE, - ACTIONS(500), 1, + ACTIONS(494), 1, anon_sym_COMMA, STATE(142), 1, sym__object_end, STATE(251), 1, aux_sym_object_repeat1, - [8827] = 5, + [8823] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(449), 1, + ACTIONS(446), 1, anon_sym_if, - ACTIONS(453), 1, + ACTIONS(450), 1, anon_sym_QMARK, - ACTIONS(502), 1, + ACTIONS(496), 1, anon_sym_RBRACK, STATE(299), 1, sym_for_cond, - [8843] = 5, + [8839] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(500), 1, + ACTIONS(494), 1, anon_sym_COMMA, - ACTIONS(504), 1, + ACTIONS(498), 1, anon_sym_RBRACE, STATE(176), 1, sym__object_end, STATE(237), 1, aux_sym_object_repeat1, - [8859] = 3, + [8855] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(480), 1, + ACTIONS(477), 1, anon_sym_QMARK, - ACTIONS(506), 3, + ACTIONS(500), 3, ts_builtin_sym_end, anon_sym_RBRACE, sym_identifier, - [8871] = 5, + [8867] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(449), 1, + ACTIONS(446), 1, anon_sym_if, - ACTIONS(453), 1, + ACTIONS(450), 1, anon_sym_QMARK, - ACTIONS(508), 1, + ACTIONS(502), 1, anon_sym_RBRACK, STATE(297), 1, sym_for_cond, - [8887] = 5, + [8883] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(480), 1, + ACTIONS(477), 1, anon_sym_QMARK, - ACTIONS(510), 1, + ACTIONS(504), 1, anon_sym_COMMA, - ACTIONS(512), 1, + ACTIONS(506), 1, anon_sym_RBRACK, STATE(245), 1, aux_sym_tuple_repeat1, - [8903] = 5, + [8899] = 5, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym_RPAREN, - ACTIONS(514), 1, + ACTIONS(508), 1, anon_sym_COMMA, - ACTIONS(516), 1, + ACTIONS(510), 1, sym_ellipsis, STATE(214), 1, aux_sym_tuple_repeat1, - [8919] = 5, + [8915] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(449), 1, + ACTIONS(446), 1, anon_sym_if, - ACTIONS(518), 1, + ACTIONS(512), 1, anon_sym_RBRACE, STATE(77), 1, sym__object_end, STATE(263), 1, sym_for_cond, - [8935] = 4, + [8931] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(522), 1, + ACTIONS(516), 1, sym__template_literal_chunk, STATE(233), 1, aux_sym_template_literal_repeat1, - ACTIONS(520), 2, + ACTIONS(514), 2, sym__quoted_template_end, sym__template_interpolation_start, - [8949] = 5, + [8945] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(449), 1, + ACTIONS(446), 1, anon_sym_if, - ACTIONS(453), 1, + ACTIONS(450), 1, anon_sym_QMARK, - ACTIONS(524), 1, + ACTIONS(518), 1, anon_sym_RBRACK, STATE(307), 1, sym_for_cond, - [8965] = 5, + [8961] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(480), 1, + ACTIONS(477), 1, anon_sym_QMARK, - ACTIONS(510), 1, + ACTIONS(504), 1, anon_sym_COMMA, - ACTIONS(526), 1, + ACTIONS(520), 1, anon_sym_RBRACK, STATE(253), 1, aux_sym_tuple_repeat1, - [8981] = 5, + [8977] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(449), 1, + ACTIONS(446), 1, anon_sym_if, - ACTIONS(528), 1, + ACTIONS(522), 1, anon_sym_RBRACE, STATE(160), 1, sym__object_end, STATE(267), 1, sym_for_cond, - [8997] = 5, + [8993] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(480), 1, + ACTIONS(477), 1, anon_sym_QMARK, - ACTIONS(510), 1, + ACTIONS(504), 1, anon_sym_COMMA, - ACTIONS(530), 1, + ACTIONS(524), 1, anon_sym_RBRACK, STATE(238), 1, aux_sym_tuple_repeat1, - [9013] = 5, + [9009] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(500), 1, + ACTIONS(494), 1, anon_sym_COMMA, - ACTIONS(532), 1, + ACTIONS(526), 1, anon_sym_RBRACE, STATE(56), 1, sym__object_end, STATE(251), 1, aux_sym_object_repeat1, - [9029] = 4, + [9025] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(536), 1, + ACTIONS(530), 1, sym__template_literal_chunk, STATE(233), 1, aux_sym_template_literal_repeat1, - ACTIONS(534), 2, + ACTIONS(528), 2, sym__quoted_template_end, sym__template_interpolation_start, - [9043] = 5, + [9039] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(449), 1, + ACTIONS(446), 1, anon_sym_if, - ACTIONS(539), 1, + ACTIONS(533), 1, anon_sym_RBRACE, STATE(117), 1, sym__object_end, STATE(271), 1, sym_for_cond, - [9059] = 5, + [9055] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(500), 1, + ACTIONS(494), 1, anon_sym_COMMA, - ACTIONS(541), 1, + ACTIONS(535), 1, anon_sym_RBRACE, STATE(137), 1, sym__object_end, STATE(219), 1, aux_sym_object_repeat1, - [9075] = 5, + [9071] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(500), 1, + ACTIONS(494), 1, anon_sym_COMMA, - ACTIONS(543), 1, + ACTIONS(537), 1, anon_sym_RBRACE, STATE(66), 1, sym__object_end, STATE(232), 1, aux_sym_object_repeat1, - [9091] = 5, + [9087] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(500), 1, + ACTIONS(494), 1, anon_sym_COMMA, - ACTIONS(545), 1, + ACTIONS(539), 1, anon_sym_RBRACE, STATE(163), 1, sym__object_end, STATE(251), 1, aux_sym_object_repeat1, - [9107] = 4, + [9103] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(510), 1, + ACTIONS(504), 1, anon_sym_COMMA, - ACTIONS(547), 1, + ACTIONS(541), 1, anon_sym_RBRACK, STATE(214), 1, aux_sym_tuple_repeat1, - [9120] = 2, + [9116] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(240), 3, sym__quoted_template_start, anon_sym_LBRACE, sym_identifier, - [9129] = 4, + [9125] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(549), 1, + ACTIONS(543), 1, sym__template_literal_chunk, STATE(244), 1, aux_sym_template_literal_repeat1, STATE(302), 1, sym_template_literal, - [9142] = 2, + [9138] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(396), 3, sym__template_interpolation_end, anon_sym_QMARK, sym_strip_marker, - [9151] = 2, + [9147] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(95), 3, sym__template_interpolation_end, anon_sym_QMARK, sym_strip_marker, - [9160] = 3, + [9156] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(480), 1, + ACTIONS(477), 1, anon_sym_QMARK, - ACTIONS(551), 2, + ACTIONS(545), 2, anon_sym_RBRACE, anon_sym_RBRACK, - [9171] = 4, + [9167] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(520), 1, + ACTIONS(514), 1, sym__quoted_template_end, - ACTIONS(553), 1, + ACTIONS(547), 1, sym__template_literal_chunk, STATE(260), 1, aux_sym_template_literal_repeat1, - [9184] = 4, + [9180] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(510), 1, + ACTIONS(504), 1, anon_sym_COMMA, - ACTIONS(555), 1, + ACTIONS(549), 1, anon_sym_RBRACK, STATE(214), 1, aux_sym_tuple_repeat1, - [9197] = 2, + [9193] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(557), 3, + ACTIONS(551), 3, sym__quoted_template_end, sym__template_literal_chunk, sym__template_interpolation_start, - [9206] = 3, + [9202] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(559), 1, + ACTIONS(553), 1, sym__quoted_template_end, - ACTIONS(562), 2, + ACTIONS(556), 2, sym__template_literal_chunk, sym__template_interpolation_start, - [9217] = 2, + [9213] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(564), 3, + ACTIONS(558), 3, ts_builtin_sym_end, anon_sym_RBRACE, sym_identifier, - [9226] = 3, + [9222] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(400), 3, + sym__template_interpolation_end, + anon_sym_QMARK, + sym_strip_marker, + [9231] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(560), 1, + anon_sym_QMARK, + ACTIONS(562), 1, + sym_strip_marker, + ACTIONS(564), 1, + sym__template_interpolation_end, + [9244] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(566), 1, - anon_sym_QMARK, - ACTIONS(400), 2, - sym__template_interpolation_end, - sym_strip_marker, - [9237] = 4, + anon_sym_RBRACE, + ACTIONS(568), 1, + anon_sym_COMMA, + STATE(251), 1, + aux_sym_object_repeat1, + [9257] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(569), 1, + ACTIONS(560), 1, anon_sym_QMARK, ACTIONS(571), 1, sym_strip_marker, ACTIONS(573), 1, sym__template_interpolation_end, - [9250] = 4, + [9270] = 4, ACTIONS(3), 1, sym_comment, + ACTIONS(504), 1, + anon_sym_COMMA, ACTIONS(575), 1, - anon_sym_RBRACE, - ACTIONS(577), 1, - anon_sym_COMMA, - STATE(251), 1, - aux_sym_object_repeat1, - [9263] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(569), 1, - anon_sym_QMARK, - ACTIONS(580), 1, - sym_strip_marker, - ACTIONS(582), 1, - sym__template_interpolation_end, - [9276] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(510), 1, - anon_sym_COMMA, - ACTIONS(584), 1, anon_sym_RBRACK, STATE(214), 1, aux_sym_tuple_repeat1, - [9289] = 2, + [9283] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(586), 3, + ACTIONS(577), 3, ts_builtin_sym_end, anon_sym_RBRACE, sym_identifier, - [9298] = 2, + [9292] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(588), 3, + ACTIONS(579), 3, ts_builtin_sym_end, anon_sym_RBRACE, sym_identifier, - [9307] = 2, + [9301] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(590), 3, + ACTIONS(581), 3, sym__quoted_template_end, sym__template_literal_chunk, sym__template_interpolation_start, - [9316] = 3, + [9310] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(480), 1, + ACTIONS(477), 1, anon_sym_QMARK, - ACTIONS(592), 2, + ACTIONS(583), 2, anon_sym_EQ, anon_sym_COLON, - [9327] = 3, + [9321] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(480), 1, + ACTIONS(477), 1, anon_sym_QMARK, - ACTIONS(594), 2, + ACTIONS(585), 2, anon_sym_RBRACE, anon_sym_COMMA, - [9338] = 3, + [9332] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(596), 1, + ACTIONS(587), 1, sym__quoted_template_end, - ACTIONS(562), 2, + ACTIONS(556), 2, sym__template_literal_chunk, sym__template_interpolation_start, - [9349] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(534), 1, - sym__quoted_template_end, - ACTIONS(599), 1, - sym__template_literal_chunk, - STATE(260), 1, - aux_sym_template_literal_repeat1, - [9362] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(602), 1, - sym__quoted_template_end, - ACTIONS(562), 2, - sym__template_literal_chunk, - sym__template_interpolation_start, - [9373] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(605), 3, - sym__quoted_template_end, - sym__template_literal_chunk, - sym__template_interpolation_start, - [9382] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(607), 1, - anon_sym_RBRACE, - STATE(76), 1, - sym__object_end, - [9392] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(609), 1, - anon_sym_RPAREN, - STATE(138), 1, - sym__function_call_end, - [9402] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(480), 1, - anon_sym_QMARK, - ACTIONS(611), 1, - anon_sym_EQ_GT, - [9412] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(613), 1, - sym_identifier, - ACTIONS(615), 1, - anon_sym_STAR, - [9422] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(617), 1, - anon_sym_RBRACE, - STATE(159), 1, - sym__object_end, - [9432] = 3, + [9343] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(528), 1, + sym__quoted_template_end, + ACTIONS(590), 1, + sym__template_literal_chunk, + STATE(260), 1, + aux_sym_template_literal_repeat1, + [9356] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(593), 1, + sym__quoted_template_end, + ACTIONS(556), 2, + sym__template_literal_chunk, + sym__template_interpolation_start, + [9367] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(596), 3, + sym__quoted_template_end, + sym__template_literal_chunk, + sym__template_interpolation_start, + [9376] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(598), 1, + anon_sym_RBRACE, + STATE(76), 1, + sym__object_end, + [9386] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(600), 1, + anon_sym_RPAREN, + STATE(138), 1, + sym__function_call_end, + [9396] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(477), 1, + anon_sym_QMARK, + ACTIONS(602), 1, + anon_sym_EQ_GT, + [9406] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(604), 1, + sym_identifier, + ACTIONS(606), 1, + anon_sym_STAR, + [9416] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(608), 1, + anon_sym_RBRACE, + STATE(159), 1, + sym__object_end, + [9426] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(522), 1, anon_sym_RBRACE, STATE(160), 1, sym__object_end, - [9442] = 3, + [9436] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(539), 1, + ACTIONS(533), 1, anon_sym_RBRACE, STATE(117), 1, sym__object_end, - [9452] = 3, + [9446] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(480), 1, + ACTIONS(477), 1, anon_sym_QMARK, - ACTIONS(619), 1, + ACTIONS(610), 1, anon_sym_EQ_GT, - [9462] = 3, + [9456] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(621), 1, + ACTIONS(612), 1, anon_sym_RBRACE, STATE(120), 1, sym__object_end, - [9472] = 3, + [9466] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(480), 1, + ACTIONS(477), 1, anon_sym_QMARK, - ACTIONS(623), 1, + ACTIONS(614), 1, anon_sym_RPAREN, - [9482] = 3, + [9476] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(480), 1, + ACTIONS(477), 1, anon_sym_QMARK, - ACTIONS(625), 1, + ACTIONS(616), 1, anon_sym_RPAREN, - [9492] = 3, + [9486] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(627), 1, + ACTIONS(618), 1, sym_identifier, - ACTIONS(629), 1, + ACTIONS(620), 1, anon_sym_STAR, - [9502] = 3, + [9496] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(480), 1, + ACTIONS(477), 1, anon_sym_QMARK, - ACTIONS(631), 1, + ACTIONS(622), 1, anon_sym_COLON, - [9512] = 3, + [9506] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(633), 1, + ACTIONS(624), 1, anon_sym_RPAREN, STATE(175), 1, sym__function_call_end, - [9522] = 3, + [9516] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(480), 1, + ACTIONS(477), 1, anon_sym_QMARK, - ACTIONS(635), 1, + ACTIONS(626), 1, anon_sym_COLON, - [9532] = 3, + [9526] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(480), 1, + ACTIONS(477), 1, anon_sym_QMARK, - ACTIONS(637), 1, + ACTIONS(628), 1, anon_sym_RBRACK, - [9542] = 3, + [9536] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(480), 1, + ACTIONS(477), 1, anon_sym_QMARK, - ACTIONS(639), 1, + ACTIONS(630), 1, anon_sym_RBRACK, - [9552] = 3, + [9546] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(480), 1, + ACTIONS(477), 1, anon_sym_QMARK, - ACTIONS(641), 1, + ACTIONS(632), 1, anon_sym_COLON, - [9562] = 3, + [9556] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(480), 1, + ACTIONS(477), 1, anon_sym_QMARK, - ACTIONS(643), 1, + ACTIONS(634), 1, anon_sym_EQ_GT, - [9572] = 3, + [9566] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(518), 1, + ACTIONS(512), 1, anon_sym_RBRACE, STATE(77), 1, sym__object_end, - [9582] = 3, + [9576] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(645), 1, + ACTIONS(636), 1, anon_sym_RPAREN, STATE(64), 1, sym__function_call_end, - [9592] = 3, + [9586] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(647), 1, + ACTIONS(638), 1, anon_sym_COMMA, - ACTIONS(649), 1, + ACTIONS(640), 1, anon_sym_in, - [9602] = 3, + [9596] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(443), 1, + ACTIONS(440), 1, anon_sym_RBRACE, STATE(255), 1, sym__block_end, - [9612] = 2, + [9606] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(575), 2, + ACTIONS(566), 2, anon_sym_RBRACE, anon_sym_COMMA, - [9620] = 3, + [9614] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(480), 1, + ACTIONS(477), 1, anon_sym_QMARK, - ACTIONS(651), 1, + ACTIONS(642), 1, anon_sym_COLON, - [9630] = 3, + [9624] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(653), 1, + ACTIONS(644), 1, anon_sym_RBRACE, STATE(254), 1, sym__block_end, - [9640] = 3, + [9634] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(480), 1, + ACTIONS(477), 1, anon_sym_QMARK, - ACTIONS(655), 1, + ACTIONS(646), 1, anon_sym_RPAREN, - [9650] = 3, + [9644] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(657), 1, + ACTIONS(648), 1, sym_identifier, - ACTIONS(659), 1, + ACTIONS(650), 1, anon_sym_STAR, - [9660] = 3, + [9654] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(480), 1, + ACTIONS(477), 1, anon_sym_QMARK, - ACTIONS(661), 1, + ACTIONS(652), 1, anon_sym_COLON, - [9670] = 3, + [9664] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(480), 1, + ACTIONS(477), 1, anon_sym_QMARK, - ACTIONS(663), 1, + ACTIONS(654), 1, anon_sym_RBRACK, - [9680] = 2, + [9674] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(573), 1, + ACTIONS(564), 1, sym__template_interpolation_end, - [9687] = 2, + [9681] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(47), 1, anon_sym_RPAREN, - [9694] = 2, + [9688] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(665), 1, + ACTIONS(656), 1, anon_sym_RBRACK, - [9701] = 2, + [9695] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(667), 1, + ACTIONS(658), 1, anon_sym_RBRACK, - [9708] = 2, + [9702] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(669), 1, + ACTIONS(660), 1, anon_sym_RBRACK, - [9715] = 2, + [9709] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(671), 1, + ACTIONS(662), 1, anon_sym_in, - [9722] = 2, + [9716] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(673), 1, + ACTIONS(664), 1, anon_sym_RBRACK, - [9729] = 2, + [9723] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(627), 1, + ACTIONS(618), 1, sym_identifier, - [9736] = 2, + [9730] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(675), 1, + ACTIONS(666), 1, sym_identifier, - [9743] = 2, + [9737] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(677), 1, + ACTIONS(668), 1, sym__quoted_template_end, - [9750] = 2, + [9744] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(679), 1, + ACTIONS(670), 1, sym_identifier, - [9757] = 2, + [9751] = 2, ACTIONS(3), 1, sym_comment, ACTIONS(53), 1, anon_sym_RPAREN, - [9764] = 2, + [9758] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(681), 1, + ACTIONS(672), 1, sym__template_interpolation_end, - [9771] = 2, + [9765] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(613), 1, + ACTIONS(604), 1, sym_identifier, - [9778] = 2, + [9772] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(683), 1, + ACTIONS(674), 1, anon_sym_RBRACK, - [9785] = 2, + [9779] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(685), 1, + ACTIONS(676), 1, anon_sym_RBRACK, - [9792] = 2, + [9786] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(657), 1, + ACTIONS(648), 1, sym_identifier, - [9799] = 2, + [9793] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(687), 1, + ACTIONS(678), 1, ts_builtin_sym_end, - [9806] = 2, + [9800] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(689), 1, + ACTIONS(680), 1, ts_builtin_sym_end, }; @@ -10969,131 +10966,131 @@ static const uint32_t ts_small_parse_table_map[] = { [SMALL_STATE(184)] = 8104, [SMALL_STATE(185)] = 8123, [SMALL_STATE(186)] = 8142, - [SMALL_STATE(187)] = 8163, - [SMALL_STATE(188)] = 8182, - [SMALL_STATE(189)] = 8201, - [SMALL_STATE(190)] = 8225, - [SMALL_STATE(191)] = 8249, - [SMALL_STATE(192)] = 8273, - [SMALL_STATE(193)] = 8297, - [SMALL_STATE(194)] = 8321, - [SMALL_STATE(195)] = 8345, - [SMALL_STATE(196)] = 8369, - [SMALL_STATE(197)] = 8393, - [SMALL_STATE(198)] = 8415, - [SMALL_STATE(199)] = 8439, - [SMALL_STATE(200)] = 8461, - [SMALL_STATE(201)] = 8483, - [SMALL_STATE(202)] = 8505, - [SMALL_STATE(203)] = 8529, - [SMALL_STATE(204)] = 8552, - [SMALL_STATE(205)] = 8573, - [SMALL_STATE(206)] = 8594, - [SMALL_STATE(207)] = 8616, - [SMALL_STATE(208)] = 8632, - [SMALL_STATE(209)] = 8654, - [SMALL_STATE(210)] = 8676, - [SMALL_STATE(211)] = 8692, - [SMALL_STATE(212)] = 8712, - [SMALL_STATE(213)] = 8731, - [SMALL_STATE(214)] = 8744, - [SMALL_STATE(215)] = 8759, - [SMALL_STATE(216)] = 8772, - [SMALL_STATE(217)] = 8783, - [SMALL_STATE(218)] = 8794, - [SMALL_STATE(219)] = 8811, - [SMALL_STATE(220)] = 8827, - [SMALL_STATE(221)] = 8843, - [SMALL_STATE(222)] = 8859, - [SMALL_STATE(223)] = 8871, - [SMALL_STATE(224)] = 8887, - [SMALL_STATE(225)] = 8903, - [SMALL_STATE(226)] = 8919, - [SMALL_STATE(227)] = 8935, - [SMALL_STATE(228)] = 8949, - [SMALL_STATE(229)] = 8965, - [SMALL_STATE(230)] = 8981, - [SMALL_STATE(231)] = 8997, - [SMALL_STATE(232)] = 9013, - [SMALL_STATE(233)] = 9029, - [SMALL_STATE(234)] = 9043, - [SMALL_STATE(235)] = 9059, - [SMALL_STATE(236)] = 9075, - [SMALL_STATE(237)] = 9091, - [SMALL_STATE(238)] = 9107, - [SMALL_STATE(239)] = 9120, - [SMALL_STATE(240)] = 9129, - [SMALL_STATE(241)] = 9142, - [SMALL_STATE(242)] = 9151, - [SMALL_STATE(243)] = 9160, - [SMALL_STATE(244)] = 9171, - [SMALL_STATE(245)] = 9184, - [SMALL_STATE(246)] = 9197, - [SMALL_STATE(247)] = 9206, - [SMALL_STATE(248)] = 9217, - [SMALL_STATE(249)] = 9226, - [SMALL_STATE(250)] = 9237, - [SMALL_STATE(251)] = 9250, - [SMALL_STATE(252)] = 9263, - [SMALL_STATE(253)] = 9276, - [SMALL_STATE(254)] = 9289, - [SMALL_STATE(255)] = 9298, - [SMALL_STATE(256)] = 9307, - [SMALL_STATE(257)] = 9316, - [SMALL_STATE(258)] = 9327, - [SMALL_STATE(259)] = 9338, - [SMALL_STATE(260)] = 9349, - [SMALL_STATE(261)] = 9362, - [SMALL_STATE(262)] = 9373, - [SMALL_STATE(263)] = 9382, - [SMALL_STATE(264)] = 9392, - [SMALL_STATE(265)] = 9402, - [SMALL_STATE(266)] = 9412, - [SMALL_STATE(267)] = 9422, - [SMALL_STATE(268)] = 9432, - [SMALL_STATE(269)] = 9442, - [SMALL_STATE(270)] = 9452, - [SMALL_STATE(271)] = 9462, - [SMALL_STATE(272)] = 9472, - [SMALL_STATE(273)] = 9482, - [SMALL_STATE(274)] = 9492, - [SMALL_STATE(275)] = 9502, - [SMALL_STATE(276)] = 9512, - [SMALL_STATE(277)] = 9522, - [SMALL_STATE(278)] = 9532, - [SMALL_STATE(279)] = 9542, - [SMALL_STATE(280)] = 9552, - [SMALL_STATE(281)] = 9562, - [SMALL_STATE(282)] = 9572, - [SMALL_STATE(283)] = 9582, - [SMALL_STATE(284)] = 9592, - [SMALL_STATE(285)] = 9602, - [SMALL_STATE(286)] = 9612, - [SMALL_STATE(287)] = 9620, - [SMALL_STATE(288)] = 9630, - [SMALL_STATE(289)] = 9640, - [SMALL_STATE(290)] = 9650, - [SMALL_STATE(291)] = 9660, - [SMALL_STATE(292)] = 9670, - [SMALL_STATE(293)] = 9680, - [SMALL_STATE(294)] = 9687, - [SMALL_STATE(295)] = 9694, - [SMALL_STATE(296)] = 9701, - [SMALL_STATE(297)] = 9708, - [SMALL_STATE(298)] = 9715, - [SMALL_STATE(299)] = 9722, - [SMALL_STATE(300)] = 9729, - [SMALL_STATE(301)] = 9736, - [SMALL_STATE(302)] = 9743, - [SMALL_STATE(303)] = 9750, - [SMALL_STATE(304)] = 9757, - [SMALL_STATE(305)] = 9764, - [SMALL_STATE(306)] = 9771, - [SMALL_STATE(307)] = 9778, - [SMALL_STATE(308)] = 9785, - [SMALL_STATE(309)] = 9792, - [SMALL_STATE(310)] = 9799, - [SMALL_STATE(311)] = 9806, + [SMALL_STATE(187)] = 8161, + [SMALL_STATE(188)] = 8180, + [SMALL_STATE(189)] = 8199, + [SMALL_STATE(190)] = 8223, + [SMALL_STATE(191)] = 8247, + [SMALL_STATE(192)] = 8271, + [SMALL_STATE(193)] = 8295, + [SMALL_STATE(194)] = 8319, + [SMALL_STATE(195)] = 8343, + [SMALL_STATE(196)] = 8367, + [SMALL_STATE(197)] = 8391, + [SMALL_STATE(198)] = 8413, + [SMALL_STATE(199)] = 8437, + [SMALL_STATE(200)] = 8459, + [SMALL_STATE(201)] = 8481, + [SMALL_STATE(202)] = 8503, + [SMALL_STATE(203)] = 8527, + [SMALL_STATE(204)] = 8550, + [SMALL_STATE(205)] = 8571, + [SMALL_STATE(206)] = 8592, + [SMALL_STATE(207)] = 8614, + [SMALL_STATE(208)] = 8630, + [SMALL_STATE(209)] = 8652, + [SMALL_STATE(210)] = 8674, + [SMALL_STATE(211)] = 8690, + [SMALL_STATE(212)] = 8710, + [SMALL_STATE(213)] = 8729, + [SMALL_STATE(214)] = 8740, + [SMALL_STATE(215)] = 8755, + [SMALL_STATE(216)] = 8768, + [SMALL_STATE(217)] = 8779, + [SMALL_STATE(218)] = 8790, + [SMALL_STATE(219)] = 8807, + [SMALL_STATE(220)] = 8823, + [SMALL_STATE(221)] = 8839, + [SMALL_STATE(222)] = 8855, + [SMALL_STATE(223)] = 8867, + [SMALL_STATE(224)] = 8883, + [SMALL_STATE(225)] = 8899, + [SMALL_STATE(226)] = 8915, + [SMALL_STATE(227)] = 8931, + [SMALL_STATE(228)] = 8945, + [SMALL_STATE(229)] = 8961, + [SMALL_STATE(230)] = 8977, + [SMALL_STATE(231)] = 8993, + [SMALL_STATE(232)] = 9009, + [SMALL_STATE(233)] = 9025, + [SMALL_STATE(234)] = 9039, + [SMALL_STATE(235)] = 9055, + [SMALL_STATE(236)] = 9071, + [SMALL_STATE(237)] = 9087, + [SMALL_STATE(238)] = 9103, + [SMALL_STATE(239)] = 9116, + [SMALL_STATE(240)] = 9125, + [SMALL_STATE(241)] = 9138, + [SMALL_STATE(242)] = 9147, + [SMALL_STATE(243)] = 9156, + [SMALL_STATE(244)] = 9167, + [SMALL_STATE(245)] = 9180, + [SMALL_STATE(246)] = 9193, + [SMALL_STATE(247)] = 9202, + [SMALL_STATE(248)] = 9213, + [SMALL_STATE(249)] = 9222, + [SMALL_STATE(250)] = 9231, + [SMALL_STATE(251)] = 9244, + [SMALL_STATE(252)] = 9257, + [SMALL_STATE(253)] = 9270, + [SMALL_STATE(254)] = 9283, + [SMALL_STATE(255)] = 9292, + [SMALL_STATE(256)] = 9301, + [SMALL_STATE(257)] = 9310, + [SMALL_STATE(258)] = 9321, + [SMALL_STATE(259)] = 9332, + [SMALL_STATE(260)] = 9343, + [SMALL_STATE(261)] = 9356, + [SMALL_STATE(262)] = 9367, + [SMALL_STATE(263)] = 9376, + [SMALL_STATE(264)] = 9386, + [SMALL_STATE(265)] = 9396, + [SMALL_STATE(266)] = 9406, + [SMALL_STATE(267)] = 9416, + [SMALL_STATE(268)] = 9426, + [SMALL_STATE(269)] = 9436, + [SMALL_STATE(270)] = 9446, + [SMALL_STATE(271)] = 9456, + [SMALL_STATE(272)] = 9466, + [SMALL_STATE(273)] = 9476, + [SMALL_STATE(274)] = 9486, + [SMALL_STATE(275)] = 9496, + [SMALL_STATE(276)] = 9506, + [SMALL_STATE(277)] = 9516, + [SMALL_STATE(278)] = 9526, + [SMALL_STATE(279)] = 9536, + [SMALL_STATE(280)] = 9546, + [SMALL_STATE(281)] = 9556, + [SMALL_STATE(282)] = 9566, + [SMALL_STATE(283)] = 9576, + [SMALL_STATE(284)] = 9586, + [SMALL_STATE(285)] = 9596, + [SMALL_STATE(286)] = 9606, + [SMALL_STATE(287)] = 9614, + [SMALL_STATE(288)] = 9624, + [SMALL_STATE(289)] = 9634, + [SMALL_STATE(290)] = 9644, + [SMALL_STATE(291)] = 9654, + [SMALL_STATE(292)] = 9664, + [SMALL_STATE(293)] = 9674, + [SMALL_STATE(294)] = 9681, + [SMALL_STATE(295)] = 9688, + [SMALL_STATE(296)] = 9695, + [SMALL_STATE(297)] = 9702, + [SMALL_STATE(298)] = 9709, + [SMALL_STATE(299)] = 9716, + [SMALL_STATE(300)] = 9723, + [SMALL_STATE(301)] = 9730, + [SMALL_STATE(302)] = 9737, + [SMALL_STATE(303)] = 9744, + [SMALL_STATE(304)] = 9751, + [SMALL_STATE(305)] = 9758, + [SMALL_STATE(306)] = 9765, + [SMALL_STATE(307)] = 9772, + [SMALL_STATE(308)] = 9779, + [SMALL_STATE(309)] = 9786, + [SMALL_STATE(310)] = 9793, + [SMALL_STATE(311)] = 9800, }; static const TSParseActionEntry ts_parse_actions[] = { @@ -11285,142 +11282,139 @@ static const TSParseActionEntry ts_parse_actions[] = { [398] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_operation, 1), [400] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_conditional, 5), [402] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_conditional, 5), - [404] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_conditional, 5), SHIFT(45), - [407] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_intro, 5), - [409] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_intro, 5), - [411] = {.entry = {.count = 1, .reusable = true}}, SHIFT(126), - [413] = {.entry = {.count = 1, .reusable = true}}, SHIFT(227), - [415] = {.entry = {.count = 1, .reusable = true}}, SHIFT(16), - [417] = {.entry = {.count = 1, .reusable = true}}, SHIFT(131), - [419] = {.entry = {.count = 1, .reusable = true}}, SHIFT(156), - [421] = {.entry = {.count = 1, .reusable = true}}, SHIFT(67), - [423] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_quoted_template_repeat1, 2), - [425] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_quoted_template_repeat1, 2), SHIFT_REPEAT(227), - [428] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_quoted_template_repeat1, 2), SHIFT_REPEAT(16), - [431] = {.entry = {.count = 1, .reusable = true}}, SHIFT(169), - [433] = {.entry = {.count = 1, .reusable = true}}, SHIFT(72), - [435] = {.entry = {.count = 1, .reusable = true}}, SHIFT(38), - [437] = {.entry = {.count = 1, .reusable = true}}, SHIFT(205), - [439] = {.entry = {.count = 1, .reusable = true}}, SHIFT(211), - [441] = {.entry = {.count = 1, .reusable = true}}, SHIFT(240), - [443] = {.entry = {.count = 1, .reusable = true}}, SHIFT(255), - [445] = {.entry = {.count = 1, .reusable = true}}, SHIFT(248), - [447] = {.entry = {.count = 1, .reusable = true}}, SHIFT(116), - [449] = {.entry = {.count = 1, .reusable = true}}, SHIFT(42), - [451] = {.entry = {.count = 1, .reusable = true}}, SHIFT(234), - [453] = {.entry = {.count = 1, .reusable = true}}, SHIFT(40), - [455] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_body, 1), - [457] = {.entry = {.count = 1, .reusable = true}}, SHIFT(78), - [459] = {.entry = {.count = 1, .reusable = true}}, SHIFT(226), - [461] = {.entry = {.count = 1, .reusable = true}}, SHIFT(161), - [463] = {.entry = {.count = 1, .reusable = true}}, SHIFT(230), - [465] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_body_repeat1, 2), - [467] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_body_repeat1, 2), SHIFT_REPEAT(203), - [470] = {.entry = {.count = 1, .reusable = true}}, SHIFT(204), - [472] = {.entry = {.count = 1, .reusable = true}}, SHIFT(218), - [474] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_arguments, 1), - [476] = {.entry = {.count = 1, .reusable = true}}, SHIFT(12), - [478] = {.entry = {.count = 1, .reusable = true}}, SHIFT(294), - [480] = {.entry = {.count = 1, .reusable = true}}, SHIFT(45), - [482] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_conditional, 5), SHIFT(40), - [485] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_tuple_repeat1, 2), - [487] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_tuple_repeat1, 2), SHIFT_REPEAT(31), - [490] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_block_repeat1, 2), - [492] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(218), - [495] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(240), - [498] = {.entry = {.count = 1, .reusable = true}}, SHIFT(142), - [500] = {.entry = {.count = 1, .reusable = true}}, SHIFT(11), - [502] = {.entry = {.count = 1, .reusable = true}}, SHIFT(61), - [504] = {.entry = {.count = 1, .reusable = true}}, SHIFT(176), - [506] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute, 3, .production_id = 1), - [508] = {.entry = {.count = 1, .reusable = true}}, SHIFT(140), - [510] = {.entry = {.count = 1, .reusable = true}}, SHIFT(31), - [512] = {.entry = {.count = 1, .reusable = true}}, SHIFT(134), - [514] = {.entry = {.count = 1, .reusable = true}}, SHIFT(15), - [516] = {.entry = {.count = 1, .reusable = true}}, SHIFT(304), - [518] = {.entry = {.count = 1, .reusable = true}}, SHIFT(77), - [520] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_literal, 1), - [522] = {.entry = {.count = 1, .reusable = true}}, SHIFT(233), - [524] = {.entry = {.count = 1, .reusable = true}}, SHIFT(168), - [526] = {.entry = {.count = 1, .reusable = true}}, SHIFT(173), - [528] = {.entry = {.count = 1, .reusable = true}}, SHIFT(160), - [530] = {.entry = {.count = 1, .reusable = true}}, SHIFT(54), - [532] = {.entry = {.count = 1, .reusable = true}}, SHIFT(56), - [534] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_template_literal_repeat1, 2), - [536] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_template_literal_repeat1, 2), SHIFT_REPEAT(233), - [539] = {.entry = {.count = 1, .reusable = true}}, SHIFT(117), - [541] = {.entry = {.count = 1, .reusable = true}}, SHIFT(137), - [543] = {.entry = {.count = 1, .reusable = true}}, SHIFT(66), - [545] = {.entry = {.count = 1, .reusable = true}}, SHIFT(163), - [547] = {.entry = {.count = 1, .reusable = true}}, SHIFT(63), - [549] = {.entry = {.count = 1, .reusable = true}}, SHIFT(244), - [551] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_cond, 2), - [553] = {.entry = {.count = 1, .reusable = true}}, SHIFT(260), - [555] = {.entry = {.count = 1, .reusable = true}}, SHIFT(139), - [557] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_interpolation, 3), - [559] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_quoted_template_repeat1, 1), SHIFT(123), - [562] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_quoted_template_repeat1, 1), - [564] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 3, .production_id = 1), - [566] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_conditional, 5), SHIFT(19), - [569] = {.entry = {.count = 1, .reusable = true}}, SHIFT(19), - [571] = {.entry = {.count = 1, .reusable = true}}, SHIFT(305), - [573] = {.entry = {.count = 1, .reusable = true}}, SHIFT(262), - [575] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_object_repeat1, 2), - [577] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_object_repeat1, 2), SHIFT_REPEAT(11), - [580] = {.entry = {.count = 1, .reusable = true}}, SHIFT(293), - [582] = {.entry = {.count = 1, .reusable = true}}, SHIFT(246), - [584] = {.entry = {.count = 1, .reusable = true}}, SHIFT(171), - [586] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 5, .production_id = 1), - [588] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 4, .production_id = 1), - [590] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_interpolation, 5), - [592] = {.entry = {.count = 1, .reusable = true}}, SHIFT(35), - [594] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_object_elem, 3), - [596] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_quoted_template_repeat1, 1), SHIFT(70), - [599] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_template_literal_repeat1, 2), SHIFT_REPEAT(260), - [602] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_quoted_template_repeat1, 1), SHIFT(158), - [605] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_interpolation, 4), - [607] = {.entry = {.count = 1, .reusable = true}}, SHIFT(76), - [609] = {.entry = {.count = 1, .reusable = true}}, SHIFT(138), - [611] = {.entry = {.count = 1, .reusable = true}}, SHIFT(37), - [613] = {.entry = {.count = 1, .reusable = true}}, SHIFT(79), - [615] = {.entry = {.count = 1, .reusable = true}}, SHIFT(51), - [617] = {.entry = {.count = 1, .reusable = true}}, SHIFT(159), - [619] = {.entry = {.count = 1, .reusable = true}}, SHIFT(21), - [621] = {.entry = {.count = 1, .reusable = true}}, SHIFT(120), - [623] = {.entry = {.count = 1, .reusable = true}}, SHIFT(71), - [625] = {.entry = {.count = 1, .reusable = true}}, SHIFT(172), - [627] = {.entry = {.count = 1, .reusable = true}}, SHIFT(174), - [629] = {.entry = {.count = 1, .reusable = true}}, SHIFT(124), - [631] = {.entry = {.count = 1, .reusable = true}}, SHIFT(184), - [633] = {.entry = {.count = 1, .reusable = true}}, SHIFT(175), - [635] = {.entry = {.count = 1, .reusable = true}}, SHIFT(34), - [637] = {.entry = {.count = 1, .reusable = true}}, SHIFT(60), - [639] = {.entry = {.count = 1, .reusable = true}}, SHIFT(164), - [641] = {.entry = {.count = 1, .reusable = true}}, SHIFT(187), - [643] = {.entry = {.count = 1, .reusable = true}}, SHIFT(30), - [645] = {.entry = {.count = 1, .reusable = true}}, SHIFT(64), - [647] = {.entry = {.count = 1, .reusable = true}}, SHIFT(301), - [649] = {.entry = {.count = 1, .reusable = true}}, SHIFT(44), - [651] = {.entry = {.count = 1, .reusable = true}}, SHIFT(41), - [653] = {.entry = {.count = 1, .reusable = true}}, SHIFT(254), - [655] = {.entry = {.count = 1, .reusable = true}}, SHIFT(133), - [657] = {.entry = {.count = 1, .reusable = true}}, SHIFT(136), - [659] = {.entry = {.count = 1, .reusable = true}}, SHIFT(109), - [661] = {.entry = {.count = 1, .reusable = true}}, SHIFT(23), - [663] = {.entry = {.count = 1, .reusable = true}}, SHIFT(141), - [665] = {.entry = {.count = 1, .reusable = true}}, SHIFT(104), - [667] = {.entry = {.count = 1, .reusable = true}}, SHIFT(47), - [669] = {.entry = {.count = 1, .reusable = true}}, SHIFT(143), - [671] = {.entry = {.count = 1, .reusable = true}}, SHIFT(20), - [673] = {.entry = {.count = 1, .reusable = true}}, SHIFT(65), - [675] = {.entry = {.count = 1, .reusable = true}}, SHIFT(298), - [677] = {.entry = {.count = 1, .reusable = true}}, SHIFT(239), - [679] = {.entry = {.count = 1, .reusable = true}}, SHIFT(284), - [681] = {.entry = {.count = 1, .reusable = true}}, SHIFT(256), - [683] = {.entry = {.count = 1, .reusable = true}}, SHIFT(162), - [685] = {.entry = {.count = 1, .reusable = true}}, SHIFT(110), - [687] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_config_file, 1), - [689] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), + [404] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_intro, 5), + [406] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_intro, 5), + [408] = {.entry = {.count = 1, .reusable = true}}, SHIFT(126), + [410] = {.entry = {.count = 1, .reusable = true}}, SHIFT(227), + [412] = {.entry = {.count = 1, .reusable = true}}, SHIFT(16), + [414] = {.entry = {.count = 1, .reusable = true}}, SHIFT(131), + [416] = {.entry = {.count = 1, .reusable = true}}, SHIFT(156), + [418] = {.entry = {.count = 1, .reusable = true}}, SHIFT(67), + [420] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_quoted_template_repeat1, 2), + [422] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_quoted_template_repeat1, 2), SHIFT_REPEAT(227), + [425] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_quoted_template_repeat1, 2), SHIFT_REPEAT(16), + [428] = {.entry = {.count = 1, .reusable = true}}, SHIFT(169), + [430] = {.entry = {.count = 1, .reusable = true}}, SHIFT(72), + [432] = {.entry = {.count = 1, .reusable = true}}, SHIFT(38), + [434] = {.entry = {.count = 1, .reusable = true}}, SHIFT(205), + [436] = {.entry = {.count = 1, .reusable = true}}, SHIFT(211), + [438] = {.entry = {.count = 1, .reusable = true}}, SHIFT(240), + [440] = {.entry = {.count = 1, .reusable = true}}, SHIFT(255), + [442] = {.entry = {.count = 1, .reusable = true}}, SHIFT(248), + [444] = {.entry = {.count = 1, .reusable = true}}, SHIFT(116), + [446] = {.entry = {.count = 1, .reusable = true}}, SHIFT(42), + [448] = {.entry = {.count = 1, .reusable = true}}, SHIFT(234), + [450] = {.entry = {.count = 1, .reusable = true}}, SHIFT(40), + [452] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_body, 1), + [454] = {.entry = {.count = 1, .reusable = true}}, SHIFT(78), + [456] = {.entry = {.count = 1, .reusable = true}}, SHIFT(226), + [458] = {.entry = {.count = 1, .reusable = true}}, SHIFT(161), + [460] = {.entry = {.count = 1, .reusable = true}}, SHIFT(230), + [462] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_body_repeat1, 2), + [464] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_body_repeat1, 2), SHIFT_REPEAT(203), + [467] = {.entry = {.count = 1, .reusable = true}}, SHIFT(204), + [469] = {.entry = {.count = 1, .reusable = true}}, SHIFT(218), + [471] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_arguments, 1), + [473] = {.entry = {.count = 1, .reusable = true}}, SHIFT(12), + [475] = {.entry = {.count = 1, .reusable = true}}, SHIFT(294), + [477] = {.entry = {.count = 1, .reusable = true}}, SHIFT(45), + [479] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_tuple_repeat1, 2), + [481] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_tuple_repeat1, 2), SHIFT_REPEAT(31), + [484] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_block_repeat1, 2), + [486] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(218), + [489] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(240), + [492] = {.entry = {.count = 1, .reusable = true}}, SHIFT(142), + [494] = {.entry = {.count = 1, .reusable = true}}, SHIFT(11), + [496] = {.entry = {.count = 1, .reusable = true}}, SHIFT(61), + [498] = {.entry = {.count = 1, .reusable = true}}, SHIFT(176), + [500] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute, 3, .production_id = 1), + [502] = {.entry = {.count = 1, .reusable = true}}, SHIFT(140), + [504] = {.entry = {.count = 1, .reusable = true}}, SHIFT(31), + [506] = {.entry = {.count = 1, .reusable = true}}, SHIFT(134), + [508] = {.entry = {.count = 1, .reusable = true}}, SHIFT(15), + [510] = {.entry = {.count = 1, .reusable = true}}, SHIFT(304), + [512] = {.entry = {.count = 1, .reusable = true}}, SHIFT(77), + [514] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_literal, 1), + [516] = {.entry = {.count = 1, .reusable = true}}, SHIFT(233), + [518] = {.entry = {.count = 1, .reusable = true}}, SHIFT(168), + [520] = {.entry = {.count = 1, .reusable = true}}, SHIFT(173), + [522] = {.entry = {.count = 1, .reusable = true}}, SHIFT(160), + [524] = {.entry = {.count = 1, .reusable = true}}, SHIFT(54), + [526] = {.entry = {.count = 1, .reusable = true}}, SHIFT(56), + [528] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_template_literal_repeat1, 2), + [530] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_template_literal_repeat1, 2), SHIFT_REPEAT(233), + [533] = {.entry = {.count = 1, .reusable = true}}, SHIFT(117), + [535] = {.entry = {.count = 1, .reusable = true}}, SHIFT(137), + [537] = {.entry = {.count = 1, .reusable = true}}, SHIFT(66), + [539] = {.entry = {.count = 1, .reusable = true}}, SHIFT(163), + [541] = {.entry = {.count = 1, .reusable = true}}, SHIFT(63), + [543] = {.entry = {.count = 1, .reusable = true}}, SHIFT(244), + [545] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_cond, 2), + [547] = {.entry = {.count = 1, .reusable = true}}, SHIFT(260), + [549] = {.entry = {.count = 1, .reusable = true}}, SHIFT(139), + [551] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_interpolation, 3), + [553] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_quoted_template_repeat1, 1), SHIFT(123), + [556] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_quoted_template_repeat1, 1), + [558] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 3, .production_id = 1), + [560] = {.entry = {.count = 1, .reusable = true}}, SHIFT(19), + [562] = {.entry = {.count = 1, .reusable = true}}, SHIFT(305), + [564] = {.entry = {.count = 1, .reusable = true}}, SHIFT(262), + [566] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_object_repeat1, 2), + [568] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_object_repeat1, 2), SHIFT_REPEAT(11), + [571] = {.entry = {.count = 1, .reusable = true}}, SHIFT(293), + [573] = {.entry = {.count = 1, .reusable = true}}, SHIFT(246), + [575] = {.entry = {.count = 1, .reusable = true}}, SHIFT(171), + [577] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 5, .production_id = 1), + [579] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 4, .production_id = 1), + [581] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_interpolation, 5), + [583] = {.entry = {.count = 1, .reusable = true}}, SHIFT(35), + [585] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_object_elem, 3), + [587] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_quoted_template_repeat1, 1), SHIFT(70), + [590] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_template_literal_repeat1, 2), SHIFT_REPEAT(260), + [593] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_quoted_template_repeat1, 1), SHIFT(158), + [596] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_template_interpolation, 4), + [598] = {.entry = {.count = 1, .reusable = true}}, SHIFT(76), + [600] = {.entry = {.count = 1, .reusable = true}}, SHIFT(138), + [602] = {.entry = {.count = 1, .reusable = true}}, SHIFT(37), + [604] = {.entry = {.count = 1, .reusable = true}}, SHIFT(79), + [606] = {.entry = {.count = 1, .reusable = true}}, SHIFT(51), + [608] = {.entry = {.count = 1, .reusable = true}}, SHIFT(159), + [610] = {.entry = {.count = 1, .reusable = true}}, SHIFT(21), + [612] = {.entry = {.count = 1, .reusable = true}}, SHIFT(120), + [614] = {.entry = {.count = 1, .reusable = true}}, SHIFT(71), + [616] = {.entry = {.count = 1, .reusable = true}}, SHIFT(172), + [618] = {.entry = {.count = 1, .reusable = true}}, SHIFT(174), + [620] = {.entry = {.count = 1, .reusable = true}}, SHIFT(124), + [622] = {.entry = {.count = 1, .reusable = true}}, SHIFT(184), + [624] = {.entry = {.count = 1, .reusable = true}}, SHIFT(175), + [626] = {.entry = {.count = 1, .reusable = true}}, SHIFT(34), + [628] = {.entry = {.count = 1, .reusable = true}}, SHIFT(60), + [630] = {.entry = {.count = 1, .reusable = true}}, SHIFT(164), + [632] = {.entry = {.count = 1, .reusable = true}}, SHIFT(187), + [634] = {.entry = {.count = 1, .reusable = true}}, SHIFT(30), + [636] = {.entry = {.count = 1, .reusable = true}}, SHIFT(64), + [638] = {.entry = {.count = 1, .reusable = true}}, SHIFT(301), + [640] = {.entry = {.count = 1, .reusable = true}}, SHIFT(44), + [642] = {.entry = {.count = 1, .reusable = true}}, SHIFT(41), + [644] = {.entry = {.count = 1, .reusable = true}}, SHIFT(254), + [646] = {.entry = {.count = 1, .reusable = true}}, SHIFT(133), + [648] = {.entry = {.count = 1, .reusable = true}}, SHIFT(136), + [650] = {.entry = {.count = 1, .reusable = true}}, SHIFT(109), + [652] = {.entry = {.count = 1, .reusable = true}}, SHIFT(23), + [654] = {.entry = {.count = 1, .reusable = true}}, SHIFT(141), + [656] = {.entry = {.count = 1, .reusable = true}}, SHIFT(104), + [658] = {.entry = {.count = 1, .reusable = true}}, SHIFT(47), + [660] = {.entry = {.count = 1, .reusable = true}}, SHIFT(143), + [662] = {.entry = {.count = 1, .reusable = true}}, SHIFT(20), + [664] = {.entry = {.count = 1, .reusable = true}}, SHIFT(65), + [666] = {.entry = {.count = 1, .reusable = true}}, SHIFT(298), + [668] = {.entry = {.count = 1, .reusable = true}}, SHIFT(239), + [670] = {.entry = {.count = 1, .reusable = true}}, SHIFT(284), + [672] = {.entry = {.count = 1, .reusable = true}}, SHIFT(256), + [674] = {.entry = {.count = 1, .reusable = true}}, SHIFT(162), + [676] = {.entry = {.count = 1, .reusable = true}}, SHIFT(110), + [678] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_config_file, 1), + [680] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), }; #ifdef __cplusplus diff --git a/test/corpus/conditionals.txt b/test/corpus/conditionals.txt index 9807474..7702228 100644 --- a/test/corpus/conditionals.txt +++ b/test/corpus/conditionals.txt @@ -56,3 +56,37 @@ foo = ( true ? false : true ) ? "yes" : "no" (literal_value (string_lit (template_literal))))))))) + +================================================================================ +nested conditional expression expression without parentheses +================================================================================ + +foo = true ? false : true ? "yes" : "no" + +-------------------------------------------------------------------------------- + +(config_file + (body + (attribute + (identifier) + (expression + (conditional + (expression + (conditional + (expression + (literal_value + (bool_lit))) + (expression + (literal_value + (bool_lit))) + (expression + (literal_value + (bool_lit))))) + (expression + (literal_value + (string_lit + (template_literal)))) + (expression + (literal_value + (string_lit + (template_literal)))))))))