diff --git a/grammar.js b/grammar.js index 75f7b58..1639bb8 100644 --- a/grammar.js +++ b/grammar.js @@ -166,7 +166,7 @@ module.exports = grammar({ '}', )), - backreference_escape: $ => seq('\\k', $.group_name), + backreference_escape: $ => seq('\\k', '<', $.group_name, '>'), decimal_escape: _ => /\\[1-9][0-9]*/, diff --git a/src/grammar.json b/src/grammar.json index e8312b1..c113673 100644 --- a/src/grammar.json +++ b/src/grammar.json @@ -676,9 +676,17 @@ "type": "STRING", "value": "\\k" }, + { + "type": "STRING", + "value": "<" + }, { "type": "SYMBOL", "name": "group_name" + }, + { + "type": "STRING", + "value": ">" } ] }, diff --git a/src/node-types.json b/src/node-types.json index f4515e2..f19f04d 100644 --- a/src/node-types.json +++ b/src/node-types.json @@ -441,6 +441,10 @@ "type": ":]", "named": false }, + { + "type": "<", + "named": false + }, { "type": "=", "named": false diff --git a/src/parser.c b/src/parser.c index 2bfad34..a84b484 100644 --- a/src/parser.c +++ b/src/parser.c @@ -5,11 +5,11 @@ #endif #define LANGUAGE_VERSION 14 -#define STATE_COUNT 111 +#define STATE_COUNT 113 #define LARGE_STATE_COUNT 10 -#define SYMBOL_COUNT 66 +#define SYMBOL_COUNT 67 #define ALIAS_COUNT 2 -#define TOKEN_COUNT 42 +#define TOKEN_COUNT 43 #define EXTERNAL_TOKEN_COUNT 0 #define FIELD_COUNT 0 #define MAX_ALIAS_SEQUENCE_LENGTH 6 @@ -46,43 +46,44 @@ enum ts_symbol_identifiers { anon_sym_COMMA = 28, anon_sym_RBRACE = 29, anon_sym_BSLASHk = 30, - sym_decimal_escape = 31, - aux_sym_character_class_escape_token1 = 32, - aux_sym_character_class_escape_token2 = 33, - aux_sym_unicode_character_escape_token1 = 34, - aux_sym_unicode_character_escape_token2 = 35, - sym_unicode_property = 36, - sym_control_escape = 37, - sym_control_letter_escape = 38, - sym_identity_escape = 39, - sym_group_name = 40, - sym_decimal_digits = 41, - sym_pattern = 42, - sym_alternation = 43, - sym_term = 44, - sym_start_assertion = 45, - sym_lookaround_assertion = 46, - sym__lookahead_assertion = 47, - sym__lookbehind_assertion = 48, - sym_character_class = 49, - sym_posix_character_class = 50, - sym_class_range = 51, - sym_anonymous_capturing_group = 52, - sym_named_capturing_group = 53, - sym_non_capturing_group = 54, - sym_zero_or_more = 55, - sym_one_or_more = 56, - sym_optional = 57, - sym_count_quantifier = 58, - sym_backreference_escape = 59, - sym_character_class_escape = 60, - sym_unicode_character_escape = 61, - sym_unicode_property_value_expression = 62, - aux_sym_alternation_repeat1 = 63, - aux_sym_term_repeat1 = 64, - aux_sym_character_class_repeat1 = 65, - alias_sym_lazy = 66, - alias_sym_unicode_property_name = 67, + anon_sym_LT = 31, + sym_decimal_escape = 32, + aux_sym_character_class_escape_token1 = 33, + aux_sym_character_class_escape_token2 = 34, + aux_sym_unicode_character_escape_token1 = 35, + aux_sym_unicode_character_escape_token2 = 36, + sym_unicode_property = 37, + sym_control_escape = 38, + sym_control_letter_escape = 39, + sym_identity_escape = 40, + sym_group_name = 41, + sym_decimal_digits = 42, + sym_pattern = 43, + sym_alternation = 44, + sym_term = 45, + sym_start_assertion = 46, + sym_lookaround_assertion = 47, + sym__lookahead_assertion = 48, + sym__lookbehind_assertion = 49, + sym_character_class = 50, + sym_posix_character_class = 51, + sym_class_range = 52, + sym_anonymous_capturing_group = 53, + sym_named_capturing_group = 54, + sym_non_capturing_group = 55, + sym_zero_or_more = 56, + sym_one_or_more = 57, + sym_optional = 58, + sym_count_quantifier = 59, + sym_backreference_escape = 60, + sym_character_class_escape = 61, + sym_unicode_character_escape = 62, + sym_unicode_property_value_expression = 63, + aux_sym_alternation_repeat1 = 64, + aux_sym_term_repeat1 = 65, + aux_sym_character_class_repeat1 = 66, + alias_sym_lazy = 67, + alias_sym_unicode_property_name = 68, }; static const char * const ts_symbol_names[] = { @@ -117,6 +118,7 @@ static const char * const ts_symbol_names[] = { [anon_sym_COMMA] = ",", [anon_sym_RBRACE] = "}", [anon_sym_BSLASHk] = "\\k", + [anon_sym_LT] = "<", [sym_decimal_escape] = "decimal_escape", [aux_sym_character_class_escape_token1] = "character_class_escape_token1", [aux_sym_character_class_escape_token2] = "character_class_escape_token2", @@ -188,6 +190,7 @@ static const TSSymbol ts_symbol_map[] = { [anon_sym_COMMA] = anon_sym_COMMA, [anon_sym_RBRACE] = anon_sym_RBRACE, [anon_sym_BSLASHk] = anon_sym_BSLASHk, + [anon_sym_LT] = anon_sym_LT, [sym_decimal_escape] = sym_decimal_escape, [aux_sym_character_class_escape_token1] = aux_sym_character_class_escape_token1, [aux_sym_character_class_escape_token2] = aux_sym_character_class_escape_token2, @@ -352,6 +355,10 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = false, }, + [anon_sym_LT] = { + .visible = true, + .named = false, + }, [sym_decimal_escape] = { .visible = true, .named = true, @@ -617,14 +624,14 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [56] = 56, [57] = 57, [58] = 58, - [59] = 29, + [59] = 59, [60] = 60, - [61] = 61, + [61] = 14, [62] = 62, - [63] = 14, + [63] = 28, [64] = 64, - [65] = 13, - [66] = 21, + [65] = 12, + [66] = 18, [67] = 67, [68] = 68, [69] = 69, @@ -642,11 +649,11 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [81] = 81, [82] = 82, [83] = 83, - [84] = 84, + [84] = 78, [85] = 85, [86] = 86, [87] = 87, - [88] = 83, + [88] = 88, [89] = 89, [90] = 90, [91] = 91, @@ -664,11 +671,13 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [103] = 103, [104] = 104, [105] = 105, - [106] = 91, - [107] = 104, - [108] = 103, - [109] = 109, - [110] = 95, + [106] = 106, + [107] = 107, + [108] = 104, + [109] = 100, + [110] = 105, + [111] = 111, + [112] = 92, }; static bool ts_lex(TSLexer *lexer, TSStateId state) { @@ -689,6 +698,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { if (lookahead == '-') ADVANCE(46); if (lookahead == '.') ADVANCE(33); if (lookahead == ':') ADVANCE(44); + if (lookahead == '<') ADVANCE(67); if (lookahead == '=') ADVANCE(39); if (lookahead == '>') ADVANCE(58); if (lookahead == '?') ADVANCE(61); @@ -738,14 +748,15 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { if (lookahead == ',') ADVANCE(64); if (lookahead == '-') ADVANCE(46); if (lookahead == ':') ADVANCE(13); + if (lookahead == '<') ADVANCE(67); if (lookahead == '=') ADVANCE(39); if (lookahead == '>') ADVANCE(58); if (lookahead == ']') ADVANCE(47); if (lookahead == '}') ADVANCE(65); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(79); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(80); if (('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(78); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(79); END_STATE(); case 6: if (lookahead == '\n') SKIP(7); @@ -756,7 +767,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(72); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(73); END_STATE(); case 8: if (lookahead == '\n') SKIP(9); @@ -772,76 +783,76 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { '-', 51, 'B', 37, 'b', 36, - 'c', 77, + 'c', 78, 'k', 66, - 'u', 76, - 'P', 69, - 'p', 69, - '0', 73, - 'f', 73, - 'n', 73, - 'r', 73, - 't', 73, - 'v', 73, - 'D', 68, - 'S', 68, - 'W', 68, - 'd', 68, - 's', 68, - 'w', 68, + 'u', 77, + 'P', 70, + 'p', 70, + '0', 74, + 'f', 74, + 'n', 74, + 'r', 74, + 't', 74, + 'v', 74, + 'D', 69, + 'S', 69, + 'W', 69, + 'd', 69, + 's', 69, + 'w', 69, ); - if (('1' <= lookahead && lookahead <= '9')) ADVANCE(67); - if (lookahead != 0) ADVANCE(75); + if (('1' <= lookahead && lookahead <= '9')) ADVANCE(68); + if (lookahead != 0) ADVANCE(76); END_STATE(); case 11: ADVANCE_MAP( '-', 51, - 'c', 77, - 'u', 76, - 'P', 69, - 'p', 69, - 'D', 68, - 'S', 68, - 'W', 68, - 'd', 68, - 's', 68, - 'w', 68, - '0', 73, - 'b', 73, - 'f', 73, - 'n', 73, - 'r', 73, - 't', 73, - 'v', 73, + 'c', 78, + 'u', 77, + 'P', 70, + 'p', 70, + 'D', 69, + 'S', 69, + 'W', 69, + 'd', 69, + 's', 69, + 'w', 69, + '0', 74, + 'b', 74, + 'f', 74, + 'n', 74, + 'r', 74, + 't', 74, + 'v', 74, ); if (lookahead != 0 && (lookahead < '0' || '9' < lookahead) && - lookahead != 'k') ADVANCE(75); + lookahead != 'k') ADVANCE(76); END_STATE(); case 12: ADVANCE_MAP( 'B', 37, 'b', 36, - 'c', 77, + 'c', 78, 'k', 66, - 'u', 76, - 'P', 69, - 'p', 69, - '0', 73, - 'f', 73, - 'n', 73, - 'r', 73, - 't', 73, - 'v', 73, - 'D', 68, - 'S', 68, - 'W', 68, - 'd', 68, - 's', 68, - 'w', 68, + 'u', 77, + 'P', 70, + 'p', 70, + '0', 74, + 'f', 74, + 'n', 74, + 'r', 74, + 't', 74, + 'v', 74, + 'D', 69, + 'S', 69, + 'W', 69, + 'd', 69, + 's', 69, + 'w', 69, ); - if (('1' <= lookahead && lookahead <= '9')) ADVANCE(67); - if (lookahead != 0) ADVANCE(75); + if (('1' <= lookahead && lookahead <= '9')) ADVANCE(68); + if (lookahead != 0) ADVANCE(76); END_STATE(); case 13: if (lookahead == ']') ADVANCE(49); @@ -849,14 +860,14 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { case 14: ADVANCE_MAP( 'u', 15, - 'P', 69, - 'p', 69, - 'D', 68, - 'S', 68, - 'W', 68, - 'd', 68, - 's', 68, - 'w', 68, + 'P', 70, + 'p', 70, + 'D', 69, + 'S', 69, + 'W', 69, + 'd', 69, + 's', 69, + 'w', 69, ); END_STATE(); case 15: @@ -866,34 +877,34 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { ('a' <= lookahead && lookahead <= 'f')) ADVANCE(25); END_STATE(); case 16: - if (lookahead == '}') ADVANCE(71); + if (lookahead == '}') ADVANCE(72); END_STATE(); case 17: - if (lookahead == '}') ADVANCE(71); + if (lookahead == '}') ADVANCE(72); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(16); END_STATE(); case 18: - if (lookahead == '}') ADVANCE(71); + if (lookahead == '}') ADVANCE(72); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(17); END_STATE(); case 19: - if (lookahead == '}') ADVANCE(71); + if (lookahead == '}') ADVANCE(72); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(18); END_STATE(); case 20: - if (lookahead == '}') ADVANCE(71); + if (lookahead == '}') ADVANCE(72); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(19); END_STATE(); case 21: - if (lookahead == '}') ADVANCE(71); + if (lookahead == '}') ADVANCE(72); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(20); @@ -906,7 +917,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { case 23: if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || - ('a' <= lookahead && lookahead <= 'f')) ADVANCE(70); + ('a' <= lookahead && lookahead <= 'f')) ADVANCE(71); END_STATE(); case 24: if (('0' <= lookahead && lookahead <= '9') || @@ -1102,59 +1113,62 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { ACCEPT_TOKEN(anon_sym_BSLASHk); END_STATE(); case 67: - ACCEPT_TOKEN(sym_decimal_escape); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(67); + ACCEPT_TOKEN(anon_sym_LT); END_STATE(); case 68: - ACCEPT_TOKEN(aux_sym_character_class_escape_token1); + ACCEPT_TOKEN(sym_decimal_escape); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(68); END_STATE(); case 69: - ACCEPT_TOKEN(aux_sym_character_class_escape_token2); + ACCEPT_TOKEN(aux_sym_character_class_escape_token1); END_STATE(); case 70: - ACCEPT_TOKEN(aux_sym_unicode_character_escape_token1); + ACCEPT_TOKEN(aux_sym_character_class_escape_token2); END_STATE(); case 71: - ACCEPT_TOKEN(aux_sym_unicode_character_escape_token2); + ACCEPT_TOKEN(aux_sym_unicode_character_escape_token1); END_STATE(); case 72: + ACCEPT_TOKEN(aux_sym_unicode_character_escape_token2); + END_STATE(); + case 73: ACCEPT_TOKEN(sym_unicode_property); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(72); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(73); END_STATE(); - case 73: + case 74: ACCEPT_TOKEN(sym_control_escape); END_STATE(); - case 74: + case 75: ACCEPT_TOKEN(sym_control_letter_escape); END_STATE(); - case 75: + case 76: ACCEPT_TOKEN(sym_identity_escape); END_STATE(); - case 76: + case 77: ACCEPT_TOKEN(sym_identity_escape); if (lookahead == '{') ADVANCE(22); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || ('a' <= lookahead && lookahead <= 'f')) ADVANCE(25); END_STATE(); - case 77: + case 78: ACCEPT_TOKEN(sym_identity_escape); if (('A' <= lookahead && lookahead <= 'Z') || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(74); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(75); END_STATE(); - case 78: + case 79: ACCEPT_TOKEN(sym_group_name); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(78); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(79); END_STATE(); - case 79: + case 80: ACCEPT_TOKEN(sym_decimal_digits); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(79); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(80); END_STATE(); default: return false; @@ -1240,39 +1254,41 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [75] = {.lex_state = 0}, [76] = {.lex_state = 5}, [77] = {.lex_state = 5}, - [78] = {.lex_state = 5}, + [78] = {.lex_state = 7}, [79] = {.lex_state = 5}, [80] = {.lex_state = 5}, - [81] = {.lex_state = 0}, + [81] = {.lex_state = 5}, [82] = {.lex_state = 5}, - [83] = {.lex_state = 7}, - [84] = {.lex_state = 5}, - [85] = {.lex_state = 5}, + [83] = {.lex_state = 5}, + [84] = {.lex_state = 7}, + [85] = {.lex_state = 0}, [86] = {.lex_state = 5}, [87] = {.lex_state = 5}, - [88] = {.lex_state = 7}, + [88] = {.lex_state = 5}, [89] = {.lex_state = 0}, - [90] = {.lex_state = 0}, - [91] = {.lex_state = 5}, - [92] = {.lex_state = 5}, - [93] = {.lex_state = 0}, - [94] = {.lex_state = 5}, + [90] = {.lex_state = 5}, + [91] = {.lex_state = 0}, + [92] = {.lex_state = 0}, + [93] = {.lex_state = 5}, + [94] = {.lex_state = 0}, [95] = {.lex_state = 0}, - [96] = {.lex_state = 0}, + [96] = {.lex_state = 5}, [97] = {.lex_state = 5}, [98] = {.lex_state = 5}, - [99] = {.lex_state = 7}, + [99] = {.lex_state = 5}, [100] = {.lex_state = 5}, - [101] = {.lex_state = 0}, + [101] = {.lex_state = 5}, [102] = {.lex_state = 5}, - [103] = {.lex_state = 9}, + [103] = {.lex_state = 7}, [104] = {.lex_state = 5}, - [105] = {.lex_state = 5}, - [106] = {.lex_state = 5}, - [107] = {.lex_state = 5}, - [108] = {.lex_state = 9}, - [109] = {.lex_state = 0}, - [110] = {.lex_state = 0}, + [105] = {.lex_state = 9}, + [106] = {.lex_state = 0}, + [107] = {.lex_state = 0}, + [108] = {.lex_state = 5}, + [109] = {.lex_state = 5}, + [110] = {.lex_state = 9}, + [111] = {.lex_state = 5}, + [112] = {.lex_state = 0}, }; static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { @@ -1306,6 +1322,7 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_COMMA] = ACTIONS(1), [anon_sym_RBRACE] = ACTIONS(1), [anon_sym_BSLASHk] = ACTIONS(1), + [anon_sym_LT] = ACTIONS(1), [sym_decimal_escape] = ACTIONS(1), [aux_sym_character_class_escape_token1] = ACTIONS(1), [aux_sym_character_class_escape_token2] = ACTIONS(1), @@ -1316,13 +1333,13 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_identity_escape] = ACTIONS(1), }, [1] = { - [sym_pattern] = STATE(96), - [sym_alternation] = STATE(81), - [sym_term] = STATE(72), + [sym_pattern] = STATE(91), + [sym_alternation] = STATE(85), + [sym_term] = STATE(73), [sym_start_assertion] = STATE(10), [sym_lookaround_assertion] = STATE(10), - [sym__lookahead_assertion] = STATE(17), - [sym__lookbehind_assertion] = STATE(17), + [sym__lookahead_assertion] = STATE(13), + [sym__lookbehind_assertion] = STATE(13), [sym_character_class] = STATE(10), [sym_posix_character_class] = STATE(10), [sym_anonymous_capturing_group] = STATE(10), @@ -1330,9 +1347,9 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_non_capturing_group] = STATE(10), [sym_backreference_escape] = STATE(10), [sym_character_class_escape] = STATE(10), - [sym_unicode_character_escape] = STATE(13), + [sym_unicode_character_escape] = STATE(14), [aux_sym_alternation_repeat1] = STATE(71), - [aux_sym_term_repeat1] = STATE(9), + [aux_sym_term_repeat1] = STATE(8), [anon_sym_PIPE] = ACTIONS(3), [sym_any_character] = ACTIONS(5), [anon_sym_CARET] = ACTIONS(7), @@ -1358,12 +1375,12 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { }, [2] = { [sym_pattern] = STATE(89), - [sym_alternation] = STATE(81), - [sym_term] = STATE(72), + [sym_alternation] = STATE(85), + [sym_term] = STATE(73), [sym_start_assertion] = STATE(10), [sym_lookaround_assertion] = STATE(10), - [sym__lookahead_assertion] = STATE(17), - [sym__lookbehind_assertion] = STATE(17), + [sym__lookahead_assertion] = STATE(13), + [sym__lookbehind_assertion] = STATE(13), [sym_character_class] = STATE(10), [sym_posix_character_class] = STATE(10), [sym_anonymous_capturing_group] = STATE(10), @@ -1371,9 +1388,9 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_non_capturing_group] = STATE(10), [sym_backreference_escape] = STATE(10), [sym_character_class_escape] = STATE(10), - [sym_unicode_character_escape] = STATE(13), + [sym_unicode_character_escape] = STATE(14), [aux_sym_alternation_repeat1] = STATE(71), - [aux_sym_term_repeat1] = STATE(9), + [aux_sym_term_repeat1] = STATE(8), [anon_sym_PIPE] = ACTIONS(3), [sym_any_character] = ACTIONS(5), [anon_sym_CARET] = ACTIONS(7), @@ -1398,13 +1415,13 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_identity_escape] = ACTIONS(29), }, [3] = { - [sym_pattern] = STATE(90), - [sym_alternation] = STATE(81), - [sym_term] = STATE(72), + [sym_pattern] = STATE(94), + [sym_alternation] = STATE(85), + [sym_term] = STATE(73), [sym_start_assertion] = STATE(10), [sym_lookaround_assertion] = STATE(10), - [sym__lookahead_assertion] = STATE(17), - [sym__lookbehind_assertion] = STATE(17), + [sym__lookahead_assertion] = STATE(13), + [sym__lookbehind_assertion] = STATE(13), [sym_character_class] = STATE(10), [sym_posix_character_class] = STATE(10), [sym_anonymous_capturing_group] = STATE(10), @@ -1412,9 +1429,9 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_non_capturing_group] = STATE(10), [sym_backreference_escape] = STATE(10), [sym_character_class_escape] = STATE(10), - [sym_unicode_character_escape] = STATE(13), + [sym_unicode_character_escape] = STATE(14), [aux_sym_alternation_repeat1] = STATE(71), - [aux_sym_term_repeat1] = STATE(9), + [aux_sym_term_repeat1] = STATE(8), [anon_sym_PIPE] = ACTIONS(3), [sym_any_character] = ACTIONS(5), [anon_sym_CARET] = ACTIONS(7), @@ -1439,13 +1456,13 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_identity_escape] = ACTIONS(29), }, [4] = { - [sym_pattern] = STATE(93), - [sym_alternation] = STATE(81), - [sym_term] = STATE(72), + [sym_pattern] = STATE(107), + [sym_alternation] = STATE(85), + [sym_term] = STATE(73), [sym_start_assertion] = STATE(10), [sym_lookaround_assertion] = STATE(10), - [sym__lookahead_assertion] = STATE(17), - [sym__lookbehind_assertion] = STATE(17), + [sym__lookahead_assertion] = STATE(13), + [sym__lookbehind_assertion] = STATE(13), [sym_character_class] = STATE(10), [sym_posix_character_class] = STATE(10), [sym_anonymous_capturing_group] = STATE(10), @@ -1453,9 +1470,9 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_non_capturing_group] = STATE(10), [sym_backreference_escape] = STATE(10), [sym_character_class_escape] = STATE(10), - [sym_unicode_character_escape] = STATE(13), + [sym_unicode_character_escape] = STATE(14), [aux_sym_alternation_repeat1] = STATE(71), - [aux_sym_term_repeat1] = STATE(9), + [aux_sym_term_repeat1] = STATE(8), [anon_sym_PIPE] = ACTIONS(3), [sym_any_character] = ACTIONS(5), [anon_sym_CARET] = ACTIONS(7), @@ -1480,13 +1497,13 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_identity_escape] = ACTIONS(29), }, [5] = { - [sym_pattern] = STATE(101), - [sym_alternation] = STATE(81), - [sym_term] = STATE(72), + [sym_pattern] = STATE(95), + [sym_alternation] = STATE(85), + [sym_term] = STATE(73), [sym_start_assertion] = STATE(10), [sym_lookaround_assertion] = STATE(10), - [sym__lookahead_assertion] = STATE(17), - [sym__lookbehind_assertion] = STATE(17), + [sym__lookahead_assertion] = STATE(13), + [sym__lookbehind_assertion] = STATE(13), [sym_character_class] = STATE(10), [sym_posix_character_class] = STATE(10), [sym_anonymous_capturing_group] = STATE(10), @@ -1494,9 +1511,9 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_non_capturing_group] = STATE(10), [sym_backreference_escape] = STATE(10), [sym_character_class_escape] = STATE(10), - [sym_unicode_character_escape] = STATE(13), + [sym_unicode_character_escape] = STATE(14), [aux_sym_alternation_repeat1] = STATE(71), - [aux_sym_term_repeat1] = STATE(9), + [aux_sym_term_repeat1] = STATE(8), [anon_sym_PIPE] = ACTIONS(3), [sym_any_character] = ACTIONS(5), [anon_sym_CARET] = ACTIONS(7), @@ -1521,13 +1538,13 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_identity_escape] = ACTIONS(29), }, [6] = { - [sym_pattern] = STATE(109), - [sym_alternation] = STATE(81), - [sym_term] = STATE(72), + [sym_pattern] = STATE(106), + [sym_alternation] = STATE(85), + [sym_term] = STATE(73), [sym_start_assertion] = STATE(10), [sym_lookaround_assertion] = STATE(10), - [sym__lookahead_assertion] = STATE(17), - [sym__lookbehind_assertion] = STATE(17), + [sym__lookahead_assertion] = STATE(13), + [sym__lookbehind_assertion] = STATE(13), [sym_character_class] = STATE(10), [sym_posix_character_class] = STATE(10), [sym_anonymous_capturing_group] = STATE(10), @@ -1535,9 +1552,9 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_non_capturing_group] = STATE(10), [sym_backreference_escape] = STATE(10), [sym_character_class_escape] = STATE(10), - [sym_unicode_character_escape] = STATE(13), + [sym_unicode_character_escape] = STATE(14), [aux_sym_alternation_repeat1] = STATE(71), - [aux_sym_term_repeat1] = STATE(9), + [aux_sym_term_repeat1] = STATE(8), [anon_sym_PIPE] = ACTIONS(3), [sym_any_character] = ACTIONS(5), [anon_sym_CARET] = ACTIONS(7), @@ -1565,8 +1582,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_term] = STATE(75), [sym_start_assertion] = STATE(10), [sym_lookaround_assertion] = STATE(10), - [sym__lookahead_assertion] = STATE(17), - [sym__lookbehind_assertion] = STATE(17), + [sym__lookahead_assertion] = STATE(13), + [sym__lookbehind_assertion] = STATE(13), [sym_character_class] = STATE(10), [sym_posix_character_class] = STATE(10), [sym_anonymous_capturing_group] = STATE(10), @@ -1574,8 +1591,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_non_capturing_group] = STATE(10), [sym_backreference_escape] = STATE(10), [sym_character_class_escape] = STATE(10), - [sym_unicode_character_escape] = STATE(13), - [aux_sym_term_repeat1] = STATE(9), + [sym_unicode_character_escape] = STATE(14), + [aux_sym_term_repeat1] = STATE(8), [ts_builtin_sym_end] = ACTIONS(31), [anon_sym_PIPE] = ACTIONS(31), [sym_any_character] = ACTIONS(5), @@ -1604,8 +1621,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [8] = { [sym_start_assertion] = STATE(10), [sym_lookaround_assertion] = STATE(10), - [sym__lookahead_assertion] = STATE(17), - [sym__lookbehind_assertion] = STATE(17), + [sym__lookahead_assertion] = STATE(13), + [sym__lookbehind_assertion] = STATE(13), [sym_character_class] = STATE(10), [sym_posix_character_class] = STATE(10), [sym_anonymous_capturing_group] = STATE(10), @@ -1613,56 +1630,17 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_non_capturing_group] = STATE(10), [sym_backreference_escape] = STATE(10), [sym_character_class_escape] = STATE(10), - [sym_unicode_character_escape] = STATE(13), - [aux_sym_term_repeat1] = STATE(8), + [sym_unicode_character_escape] = STATE(14), + [aux_sym_term_repeat1] = STATE(9), [ts_builtin_sym_end] = ACTIONS(33), [anon_sym_PIPE] = ACTIONS(33), - [sym_any_character] = ACTIONS(35), - [anon_sym_CARET] = ACTIONS(38), - [sym_end_assertion] = ACTIONS(35), - [sym_boundary_assertion] = ACTIONS(35), - [sym_non_boundary_assertion] = ACTIONS(35), - [anon_sym_LPAREN_QMARK] = ACTIONS(41), - [anon_sym_RPAREN] = ACTIONS(33), - [anon_sym_LPAREN_QMARK_LT] = ACTIONS(44), - [sym_pattern_character] = ACTIONS(35), - [anon_sym_LBRACK] = ACTIONS(47), - [anon_sym_LBRACK_COLON] = ACTIONS(50), - [anon_sym_LPAREN] = ACTIONS(53), - [anon_sym_LPAREN_QMARK_COLON] = ACTIONS(56), - [anon_sym_BSLASHk] = ACTIONS(59), - [sym_decimal_escape] = ACTIONS(35), - [aux_sym_character_class_escape_token1] = ACTIONS(62), - [aux_sym_character_class_escape_token2] = ACTIONS(65), - [aux_sym_unicode_character_escape_token1] = ACTIONS(68), - [aux_sym_unicode_character_escape_token2] = ACTIONS(68), - [sym_control_escape] = ACTIONS(71), - [sym_control_letter_escape] = ACTIONS(35), - [sym_identity_escape] = ACTIONS(71), - }, - [9] = { - [sym_start_assertion] = STATE(10), - [sym_lookaround_assertion] = STATE(10), - [sym__lookahead_assertion] = STATE(17), - [sym__lookbehind_assertion] = STATE(17), - [sym_character_class] = STATE(10), - [sym_posix_character_class] = STATE(10), - [sym_anonymous_capturing_group] = STATE(10), - [sym_named_capturing_group] = STATE(10), - [sym_non_capturing_group] = STATE(10), - [sym_backreference_escape] = STATE(10), - [sym_character_class_escape] = STATE(10), - [sym_unicode_character_escape] = STATE(13), - [aux_sym_term_repeat1] = STATE(8), - [ts_builtin_sym_end] = ACTIONS(74), - [anon_sym_PIPE] = ACTIONS(74), [sym_any_character] = ACTIONS(5), [anon_sym_CARET] = ACTIONS(7), [sym_end_assertion] = ACTIONS(5), [sym_boundary_assertion] = ACTIONS(5), [sym_non_boundary_assertion] = ACTIONS(5), [anon_sym_LPAREN_QMARK] = ACTIONS(9), - [anon_sym_RPAREN] = ACTIONS(74), + [anon_sym_RPAREN] = ACTIONS(33), [anon_sym_LPAREN_QMARK_LT] = ACTIONS(11), [sym_pattern_character] = ACTIONS(5), [anon_sym_LBRACK] = ACTIONS(13), @@ -1679,6 +1657,45 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_control_letter_escape] = ACTIONS(5), [sym_identity_escape] = ACTIONS(29), }, + [9] = { + [sym_start_assertion] = STATE(10), + [sym_lookaround_assertion] = STATE(10), + [sym__lookahead_assertion] = STATE(13), + [sym__lookbehind_assertion] = STATE(13), + [sym_character_class] = STATE(10), + [sym_posix_character_class] = STATE(10), + [sym_anonymous_capturing_group] = STATE(10), + [sym_named_capturing_group] = STATE(10), + [sym_non_capturing_group] = STATE(10), + [sym_backreference_escape] = STATE(10), + [sym_character_class_escape] = STATE(10), + [sym_unicode_character_escape] = STATE(14), + [aux_sym_term_repeat1] = STATE(9), + [ts_builtin_sym_end] = ACTIONS(35), + [anon_sym_PIPE] = ACTIONS(35), + [sym_any_character] = ACTIONS(37), + [anon_sym_CARET] = ACTIONS(40), + [sym_end_assertion] = ACTIONS(37), + [sym_boundary_assertion] = ACTIONS(37), + [sym_non_boundary_assertion] = ACTIONS(37), + [anon_sym_LPAREN_QMARK] = ACTIONS(43), + [anon_sym_RPAREN] = ACTIONS(35), + [anon_sym_LPAREN_QMARK_LT] = ACTIONS(46), + [sym_pattern_character] = ACTIONS(37), + [anon_sym_LBRACK] = ACTIONS(49), + [anon_sym_LBRACK_COLON] = ACTIONS(52), + [anon_sym_LPAREN] = ACTIONS(55), + [anon_sym_LPAREN_QMARK_COLON] = ACTIONS(58), + [anon_sym_BSLASHk] = ACTIONS(61), + [sym_decimal_escape] = ACTIONS(37), + [aux_sym_character_class_escape_token1] = ACTIONS(64), + [aux_sym_character_class_escape_token2] = ACTIONS(67), + [aux_sym_unicode_character_escape_token1] = ACTIONS(70), + [aux_sym_unicode_character_escape_token2] = ACTIONS(70), + [sym_control_escape] = ACTIONS(73), + [sym_control_letter_escape] = ACTIONS(37), + [sym_identity_escape] = ACTIONS(73), + }, }; static const uint16_t ts_small_parse_table[] = { @@ -1691,7 +1708,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PLUS, ACTIONS(86), 1, anon_sym_LBRACE, - STATE(45), 4, + STATE(42), 4, sym_zero_or_more, sym_one_or_more, sym_optional, @@ -2668,13 +2685,13 @@ static const uint16_t ts_small_parse_table[] = { aux_sym_unicode_character_escape_token2, sym_control_letter_escape, [1060] = 2, - ACTIONS(226), 5, + ACTIONS(224), 5, anon_sym_LPAREN_QMARK, anon_sym_LBRACK, anon_sym_LPAREN, sym_control_escape, sym_identity_escape, - ACTIONS(224), 19, + ACTIONS(35), 19, ts_builtin_sym_end, anon_sym_PIPE, sym_any_character, @@ -2695,13 +2712,13 @@ static const uint16_t ts_small_parse_table[] = { aux_sym_unicode_character_escape_token2, sym_control_letter_escape, [1089] = 2, - ACTIONS(230), 5, + ACTIONS(228), 5, anon_sym_LPAREN_QMARK, anon_sym_LBRACK, anon_sym_LPAREN, sym_control_escape, sym_identity_escape, - ACTIONS(228), 19, + ACTIONS(226), 19, ts_builtin_sym_end, anon_sym_PIPE, sym_any_character, @@ -2722,13 +2739,13 @@ static const uint16_t ts_small_parse_table[] = { aux_sym_unicode_character_escape_token2, sym_control_letter_escape, [1118] = 2, - ACTIONS(234), 5, + ACTIONS(232), 5, anon_sym_LPAREN_QMARK, anon_sym_LBRACK, anon_sym_LPAREN, sym_control_escape, sym_identity_escape, - ACTIONS(232), 19, + ACTIONS(230), 19, ts_builtin_sym_end, anon_sym_PIPE, sym_any_character, @@ -2755,7 +2772,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LPAREN, sym_control_escape, sym_identity_escape, - ACTIONS(33), 19, + ACTIONS(234), 19, ts_builtin_sym_end, anon_sym_PIPE, sym_any_character, @@ -2844,9 +2861,9 @@ static const uint16_t ts_small_parse_table[] = { aux_sym_character_class_escape_token1, ACTIONS(260), 1, aux_sym_character_class_escape_token2, - STATE(62), 1, + STATE(60), 1, sym_character_class_escape, - STATE(65), 1, + STATE(61), 1, sym_unicode_character_escape, ACTIONS(262), 2, aux_sym_unicode_character_escape_token1, @@ -2861,30 +2878,30 @@ static const uint16_t ts_small_parse_table[] = { sym_control_letter_escape, sym_identity_escape, [1277] = 11, - ACTIONS(252), 1, + ACTIONS(264), 1, + anon_sym_DASH, + ACTIONS(267), 1, + anon_sym_RBRACK, + ACTIONS(269), 1, anon_sym_LBRACK_COLON, - ACTIONS(256), 1, + ACTIONS(275), 1, sym_class_character, - ACTIONS(258), 1, + ACTIONS(278), 1, aux_sym_character_class_escape_token1, - ACTIONS(260), 1, + ACTIONS(281), 1, aux_sym_character_class_escape_token2, - ACTIONS(264), 1, - anon_sym_DASH, - ACTIONS(266), 1, - anon_sym_RBRACK, - STATE(62), 1, + STATE(60), 1, sym_character_class_escape, - STATE(65), 1, + STATE(61), 1, sym_unicode_character_escape, - ACTIONS(262), 2, + ACTIONS(284), 2, aux_sym_unicode_character_escape_token1, aux_sym_unicode_character_escape_token2, - STATE(52), 3, + STATE(49), 3, sym_posix_character_class, sym_class_range, aux_sym_character_class_repeat1, - ACTIONS(268), 4, + ACTIONS(272), 4, anon_sym_BSLASH_DASH, sym_control_escape, sym_control_letter_escape, @@ -2898,22 +2915,22 @@ static const uint16_t ts_small_parse_table[] = { aux_sym_character_class_escape_token1, ACTIONS(260), 1, aux_sym_character_class_escape_token2, - ACTIONS(270), 1, + ACTIONS(287), 1, anon_sym_DASH, - ACTIONS(272), 1, + ACTIONS(289), 1, anon_sym_RBRACK, - STATE(62), 1, + STATE(60), 1, sym_character_class_escape, - STATE(65), 1, + STATE(61), 1, sym_unicode_character_escape, ACTIONS(262), 2, aux_sym_unicode_character_escape_token1, aux_sym_unicode_character_escape_token2, - STATE(52), 3, + STATE(55), 3, sym_posix_character_class, sym_class_range, aux_sym_character_class_repeat1, - ACTIONS(268), 4, + ACTIONS(291), 4, anon_sym_BSLASH_DASH, sym_control_escape, sym_control_letter_escape, @@ -2927,51 +2944,51 @@ static const uint16_t ts_small_parse_table[] = { aux_sym_character_class_escape_token1, ACTIONS(260), 1, aux_sym_character_class_escape_token2, - ACTIONS(274), 1, + ACTIONS(293), 1, anon_sym_DASH, - ACTIONS(276), 1, + ACTIONS(295), 1, anon_sym_RBRACK, - STATE(62), 1, + STATE(60), 1, sym_character_class_escape, - STATE(65), 1, + STATE(61), 1, sym_unicode_character_escape, ACTIONS(262), 2, aux_sym_unicode_character_escape_token1, aux_sym_unicode_character_escape_token2, - STATE(53), 3, + STATE(49), 3, sym_posix_character_class, sym_class_range, aux_sym_character_class_repeat1, - ACTIONS(278), 4, + ACTIONS(297), 4, anon_sym_BSLASH_DASH, sym_control_escape, sym_control_letter_escape, sym_identity_escape, [1397] = 11, - ACTIONS(280), 1, - anon_sym_DASH, - ACTIONS(283), 1, - anon_sym_RBRACK, - ACTIONS(285), 1, + ACTIONS(252), 1, anon_sym_LBRACK_COLON, - ACTIONS(291), 1, + ACTIONS(256), 1, sym_class_character, - ACTIONS(294), 1, + ACTIONS(258), 1, aux_sym_character_class_escape_token1, - ACTIONS(297), 1, + ACTIONS(260), 1, aux_sym_character_class_escape_token2, - STATE(62), 1, + ACTIONS(299), 1, + anon_sym_DASH, + ACTIONS(301), 1, + anon_sym_RBRACK, + STATE(60), 1, sym_character_class_escape, - STATE(65), 1, + STATE(61), 1, sym_unicode_character_escape, - ACTIONS(300), 2, + ACTIONS(262), 2, aux_sym_unicode_character_escape_token1, aux_sym_unicode_character_escape_token2, - STATE(52), 3, + STATE(51), 3, sym_posix_character_class, sym_class_range, aux_sym_character_class_repeat1, - ACTIONS(288), 4, + ACTIONS(303), 4, anon_sym_BSLASH_DASH, sym_control_escape, sym_control_letter_escape, @@ -2985,22 +3002,22 @@ static const uint16_t ts_small_parse_table[] = { aux_sym_character_class_escape_token1, ACTIONS(260), 1, aux_sym_character_class_escape_token2, - ACTIONS(303), 1, - anon_sym_DASH, ACTIONS(305), 1, + anon_sym_DASH, + ACTIONS(307), 1, anon_sym_RBRACK, - STATE(62), 1, + STATE(60), 1, sym_character_class_escape, - STATE(65), 1, + STATE(61), 1, sym_unicode_character_escape, ACTIONS(262), 2, aux_sym_unicode_character_escape_token1, aux_sym_unicode_character_escape_token2, - STATE(52), 3, + STATE(54), 3, sym_posix_character_class, sym_class_range, aux_sym_character_class_repeat1, - ACTIONS(268), 4, + ACTIONS(309), 4, anon_sym_BSLASH_DASH, sym_control_escape, sym_control_letter_escape, @@ -3014,13 +3031,13 @@ static const uint16_t ts_small_parse_table[] = { aux_sym_character_class_escape_token1, ACTIONS(260), 1, aux_sym_character_class_escape_token2, - ACTIONS(307), 1, + ACTIONS(311), 1, anon_sym_DASH, - ACTIONS(309), 1, + ACTIONS(313), 1, anon_sym_RBRACK, - STATE(62), 1, + STATE(60), 1, sym_character_class_escape, - STATE(65), 1, + STATE(61), 1, sym_unicode_character_escape, ACTIONS(262), 2, aux_sym_unicode_character_escape_token1, @@ -3029,7 +3046,7 @@ static const uint16_t ts_small_parse_table[] = { sym_posix_character_class, sym_class_range, aux_sym_character_class_repeat1, - ACTIONS(311), 4, + ACTIONS(297), 4, anon_sym_BSLASH_DASH, sym_control_escape, sym_control_letter_escape, @@ -3043,22 +3060,22 @@ static const uint16_t ts_small_parse_table[] = { aux_sym_character_class_escape_token1, ACTIONS(260), 1, aux_sym_character_class_escape_token2, - ACTIONS(313), 1, - anon_sym_DASH, ACTIONS(315), 1, + anon_sym_DASH, + ACTIONS(317), 1, anon_sym_RBRACK, - STATE(62), 1, + STATE(60), 1, sym_character_class_escape, - STATE(65), 1, + STATE(61), 1, sym_unicode_character_escape, ACTIONS(262), 2, aux_sym_unicode_character_escape_token1, aux_sym_unicode_character_escape_token2, - STATE(50), 3, + STATE(49), 3, sym_posix_character_class, sym_class_range, aux_sym_character_class_repeat1, - ACTIONS(317), 4, + ACTIONS(297), 4, anon_sym_BSLASH_DASH, sym_control_escape, sym_control_letter_escape, @@ -3072,22 +3089,22 @@ static const uint16_t ts_small_parse_table[] = { aux_sym_character_class_escape_token1, ACTIONS(260), 1, aux_sym_character_class_escape_token2, - ACTIONS(315), 1, + ACTIONS(307), 1, anon_sym_RBRACK, ACTIONS(319), 1, anon_sym_DASH, - STATE(62), 1, + STATE(60), 1, sym_character_class_escape, - STATE(65), 1, + STATE(61), 1, sym_unicode_character_escape, ACTIONS(262), 2, aux_sym_unicode_character_escape_token1, aux_sym_unicode_character_escape_token2, - STATE(52), 3, + STATE(49), 3, sym_posix_character_class, sym_class_range, aux_sym_character_class_repeat1, - ACTIONS(268), 4, + ACTIONS(297), 4, anon_sym_BSLASH_DASH, sym_control_escape, sym_control_letter_escape, @@ -3101,10 +3118,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, ACTIONS(325), 1, sym_class_character, - STATE(58), 1, - sym_character_class_escape, - STATE(65), 1, + STATE(61), 1, sym_unicode_character_escape, + STATE(64), 1, + sym_character_class_escape, ACTIONS(262), 2, aux_sym_unicode_character_escape_token1, aux_sym_unicode_character_escape_token2, @@ -3130,7 +3147,7 @@ static const uint16_t ts_small_parse_table[] = { sym_control_letter_escape, sym_identity_escape, [1643] = 1, - ACTIONS(162), 12, + ACTIONS(329), 12, anon_sym_DASH, anon_sym_RBRACK, anon_sym_LBRACK_COLON, @@ -3143,9 +3160,10 @@ static const uint16_t ts_small_parse_table[] = { sym_control_escape, sym_control_letter_escape, sym_identity_escape, - [1658] = 1, - ACTIONS(329), 12, + [1658] = 2, + ACTIONS(331), 1, anon_sym_DASH, + ACTIONS(334), 11, anon_sym_RBRACK, anon_sym_LBRACK_COLON, anon_sym_BSLASH_DASH, @@ -3157,8 +3175,8 @@ static const uint16_t ts_small_parse_table[] = { sym_control_escape, sym_control_letter_escape, sym_identity_escape, - [1673] = 1, - ACTIONS(331), 12, + [1675] = 1, + ACTIONS(102), 12, anon_sym_DASH, anon_sym_RBRACK, anon_sym_LBRACK_COLON, @@ -3171,10 +3189,9 @@ static const uint16_t ts_small_parse_table[] = { sym_control_escape, sym_control_letter_escape, sym_identity_escape, - [1688] = 2, - ACTIONS(333), 1, + [1690] = 1, + ACTIONS(323), 12, anon_sym_DASH, - ACTIONS(336), 11, anon_sym_RBRACK, anon_sym_LBRACK_COLON, anon_sym_BSLASH_DASH, @@ -3187,7 +3204,7 @@ static const uint16_t ts_small_parse_table[] = { sym_control_letter_escape, sym_identity_escape, [1705] = 1, - ACTIONS(102), 12, + ACTIONS(158), 12, anon_sym_DASH, anon_sym_RBRACK, anon_sym_LBRACK_COLON, @@ -3201,7 +3218,7 @@ static const uint16_t ts_small_parse_table[] = { sym_control_letter_escape, sym_identity_escape, [1720] = 1, - ACTIONS(323), 12, + ACTIONS(336), 12, anon_sym_DASH, anon_sym_RBRACK, anon_sym_LBRACK_COLON, @@ -3215,7 +3232,7 @@ static const uint16_t ts_small_parse_table[] = { sym_control_letter_escape, sym_identity_escape, [1735] = 1, - ACTIONS(98), 12, + ACTIONS(94), 12, anon_sym_DASH, anon_sym_RBRACK, anon_sym_LBRACK_COLON, @@ -3229,7 +3246,7 @@ static const uint16_t ts_small_parse_table[] = { sym_control_letter_escape, sym_identity_escape, [1750] = 1, - ACTIONS(130), 12, + ACTIONS(118), 12, anon_sym_DASH, anon_sym_RBRACK, anon_sym_LBRACK_COLON, @@ -3253,10 +3270,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_RBRACK, ACTIONS(342), 1, sym_class_character, - STATE(58), 1, - sym_character_class_escape, - STATE(65), 1, + STATE(61), 1, sym_unicode_character_escape, + STATE(64), 1, + sym_character_class_escape, ACTIONS(262), 2, aux_sym_unicode_character_escape_token1, aux_sym_unicode_character_escape_token2, @@ -3271,10 +3288,10 @@ static const uint16_t ts_small_parse_table[] = { sym_class_character, ACTIONS(344), 1, anon_sym_RBRACK, - STATE(58), 1, - sym_character_class_escape, - STATE(65), 1, + STATE(61), 1, sym_unicode_character_escape, + STATE(64), 1, + sym_character_class_escape, ACTIONS(262), 2, aux_sym_unicode_character_escape_token1, aux_sym_unicode_character_escape_token2, @@ -3287,10 +3304,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, ACTIONS(342), 1, sym_class_character, - STATE(58), 1, - sym_character_class_escape, - STATE(65), 1, + STATE(61), 1, sym_unicode_character_escape, + STATE(64), 1, + sym_character_class_escape, ACTIONS(262), 2, aux_sym_unicode_character_escape_token1, aux_sym_unicode_character_escape_token2, @@ -3303,9 +3320,9 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, ACTIONS(348), 1, sym_class_character, - STATE(60), 1, + STATE(59), 1, sym_character_class_escape, - STATE(65), 1, + STATE(61), 1, sym_unicode_character_escape, ACTIONS(262), 2, aux_sym_unicode_character_escape_token1, @@ -3313,7 +3330,7 @@ static const uint16_t ts_small_parse_table[] = { [1863] = 3, ACTIONS(3), 1, anon_sym_PIPE, - STATE(73), 1, + STATE(74), 1, aux_sym_alternation_repeat1, ACTIONS(350), 2, ts_builtin_sym_end, @@ -3327,23 +3344,23 @@ static const uint16_t ts_small_parse_table[] = { ts_builtin_sym_end, anon_sym_RPAREN, [1885] = 3, - ACTIONS(356), 1, + ACTIONS(3), 1, anon_sym_PIPE, - STATE(73), 1, + STATE(72), 1, aux_sym_alternation_repeat1, ACTIONS(354), 2, ts_builtin_sym_end, anon_sym_RPAREN, [1896] = 3, - ACTIONS(3), 1, + ACTIONS(358), 1, anon_sym_PIPE, - STATE(73), 1, + STATE(74), 1, aux_sym_alternation_repeat1, - ACTIONS(359), 2, + ACTIONS(356), 2, ts_builtin_sym_end, anon_sym_RPAREN, [1907] = 1, - ACTIONS(354), 3, + ACTIONS(356), 3, ts_builtin_sym_end, anon_sym_PIPE, anon_sym_RPAREN, @@ -3355,127 +3372,133 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_BANG, [1921] = 2, ACTIONS(365), 1, - anon_sym_DASH, + anon_sym_COMMA, ACTIONS(367), 1, - anon_sym_RBRACK, + anon_sym_RBRACE, [1928] = 2, - ACTIONS(365), 1, - anon_sym_DASH, ACTIONS(369), 1, - anon_sym_RBRACK, + sym_unicode_property, + STATE(109), 1, + sym_unicode_property_value_expression, [1935] = 2, ACTIONS(371), 1, - anon_sym_RBRACE, + anon_sym_DASH, ACTIONS(373), 1, - sym_decimal_digits, + anon_sym_RBRACK, [1942] = 2, ACTIONS(375), 1, anon_sym_COMMA, ACTIONS(377), 1, sym_decimal_digits, - [1949] = 1, - ACTIONS(352), 2, - ts_builtin_sym_end, - anon_sym_RPAREN, - [1954] = 2, - ACTIONS(365), 1, + [1949] = 2, + ACTIONS(371), 1, anon_sym_DASH, ACTIONS(379), 1, anon_sym_RBRACK, - [1961] = 2, + [1956] = 2, + ACTIONS(371), 1, + anon_sym_DASH, ACTIONS(381), 1, + anon_sym_RBRACK, + [1963] = 2, + ACTIONS(371), 1, + anon_sym_DASH, + ACTIONS(383), 1, + anon_sym_RBRACK, + [1970] = 2, + ACTIONS(369), 1, sym_unicode_property, - STATE(104), 1, + STATE(100), 1, sym_unicode_property_value_expression, - [1968] = 2, - ACTIONS(383), 1, - anon_sym_EQ, + [1977] = 1, + ACTIONS(354), 2, + ts_builtin_sym_end, + anon_sym_RPAREN, + [1982] = 2, ACTIONS(385), 1, - anon_sym_RBRACE, - [1975] = 2, - ACTIONS(365), 1, - anon_sym_DASH, + anon_sym_EQ, ACTIONS(387), 1, - anon_sym_RBRACK, - [1982] = 2, + anon_sym_RBRACE, + [1989] = 2, ACTIONS(389), 1, - anon_sym_COMMA, - ACTIONS(391), 1, anon_sym_RBRACE, - [1989] = 1, + ACTIONS(391), 1, + sym_decimal_digits, + [1996] = 1, ACTIONS(393), 2, anon_sym_EQ, anon_sym_BANG, - [1994] = 2, - ACTIONS(381), 1, - sym_unicode_property, - STATE(107), 1, - sym_unicode_property_value_expression, [2001] = 1, ACTIONS(395), 1, anon_sym_RPAREN, [2005] = 1, ACTIONS(397), 1, - anon_sym_RPAREN, + anon_sym_GT, [2009] = 1, ACTIONS(399), 1, - anon_sym_COLON_RBRACK, + ts_builtin_sym_end, [2013] = 1, ACTIONS(401), 1, - sym_decimal_digits, + anon_sym_LBRACE, [2017] = 1, ACTIONS(403), 1, - anon_sym_RPAREN, + sym_group_name, [2021] = 1, ACTIONS(405), 1, - sym_group_name, + anon_sym_RPAREN, [2025] = 1, ACTIONS(407), 1, - anon_sym_LBRACE, + anon_sym_RPAREN, [2029] = 1, ACTIONS(409), 1, - ts_builtin_sym_end, + anon_sym_LT, [2033] = 1, ACTIONS(411), 1, - anon_sym_RBRACE, + anon_sym_GT, [2037] = 1, - ACTIONS(365), 1, + ACTIONS(371), 1, anon_sym_DASH, [2041] = 1, ACTIONS(413), 1, - sym_unicode_property, + anon_sym_RBRACE, [2045] = 1, - ACTIONS(371), 1, + ACTIONS(415), 1, anon_sym_RBRACE, [2049] = 1, - ACTIONS(415), 1, - anon_sym_RPAREN, + ACTIONS(389), 1, + anon_sym_RBRACE, [2053] = 1, ACTIONS(417), 1, - anon_sym_GT, + sym_decimal_digits, [2057] = 1, ACTIONS(419), 1, - sym_posix_class_name, + sym_unicode_property, [2061] = 1, ACTIONS(421), 1, - anon_sym_RBRACE, + anon_sym_COLON_RBRACK, [2065] = 1, ACTIONS(423), 1, - anon_sym_RBRACE, + sym_posix_class_name, [2069] = 1, ACTIONS(425), 1, - anon_sym_COLON_RBRACK, + anon_sym_RPAREN, [2073] = 1, ACTIONS(427), 1, - anon_sym_RBRACE, + anon_sym_RPAREN, [2077] = 1, ACTIONS(429), 1, - sym_posix_class_name, + anon_sym_COLON_RBRACK, [2081] = 1, ACTIONS(431), 1, - anon_sym_RPAREN, + anon_sym_RBRACE, [2085] = 1, ACTIONS(433), 1, + sym_posix_class_name, + [2089] = 1, + ACTIONS(435), 1, + anon_sym_RBRACE, + [2093] = 1, + ACTIONS(437), 1, anon_sym_LBRACE, }; @@ -3531,8 +3554,8 @@ static const uint32_t ts_small_parse_table_map[] = { [SMALL_STATE(58)] = 1628, [SMALL_STATE(59)] = 1643, [SMALL_STATE(60)] = 1658, - [SMALL_STATE(61)] = 1673, - [SMALL_STATE(62)] = 1688, + [SMALL_STATE(61)] = 1675, + [SMALL_STATE(62)] = 1690, [SMALL_STATE(63)] = 1705, [SMALL_STATE(64)] = 1720, [SMALL_STATE(65)] = 1735, @@ -3552,13 +3575,13 @@ static const uint32_t ts_small_parse_table_map[] = { [SMALL_STATE(79)] = 1935, [SMALL_STATE(80)] = 1942, [SMALL_STATE(81)] = 1949, - [SMALL_STATE(82)] = 1954, - [SMALL_STATE(83)] = 1961, - [SMALL_STATE(84)] = 1968, - [SMALL_STATE(85)] = 1975, + [SMALL_STATE(82)] = 1956, + [SMALL_STATE(83)] = 1963, + [SMALL_STATE(84)] = 1970, + [SMALL_STATE(85)] = 1977, [SMALL_STATE(86)] = 1982, [SMALL_STATE(87)] = 1989, - [SMALL_STATE(88)] = 1994, + [SMALL_STATE(88)] = 1996, [SMALL_STATE(89)] = 2001, [SMALL_STATE(90)] = 2005, [SMALL_STATE(91)] = 2009, @@ -3581,6 +3604,8 @@ static const uint32_t ts_small_parse_table_map[] = { [SMALL_STATE(108)] = 2077, [SMALL_STATE(109)] = 2081, [SMALL_STATE(110)] = 2085, + [SMALL_STATE(111)] = 2089, + [SMALL_STATE(112)] = 2093, }; static const TSParseActionEntry ts_parse_actions[] = { @@ -3588,209 +3613,211 @@ static const TSParseActionEntry ts_parse_actions[] = { [1] = {.entry = {.count = 1, .reusable = false}}, RECOVER(), [3] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7), [5] = {.entry = {.count = 1, .reusable = true}}, SHIFT(10), - [7] = {.entry = {.count = 1, .reusable = true}}, SHIFT(16), - [9] = {.entry = {.count = 1, .reusable = false}}, SHIFT(87), + [7] = {.entry = {.count = 1, .reusable = true}}, SHIFT(11), + [9] = {.entry = {.count = 1, .reusable = false}}, SHIFT(88), [11] = {.entry = {.count = 1, .reusable = true}}, SHIFT(76), [13] = {.entry = {.count = 1, .reusable = false}}, SHIFT(48), - [15] = {.entry = {.count = 1, .reusable = true}}, SHIFT(103), + [15] = {.entry = {.count = 1, .reusable = true}}, SHIFT(105), [17] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4), [19] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2), - [21] = {.entry = {.count = 1, .reusable = true}}, SHIFT(94), - [23] = {.entry = {.count = 1, .reusable = true}}, SHIFT(13), - [25] = {.entry = {.count = 1, .reusable = true}}, SHIFT(95), - [27] = {.entry = {.count = 1, .reusable = true}}, SHIFT(14), + [21] = {.entry = {.count = 1, .reusable = true}}, SHIFT(96), + [23] = {.entry = {.count = 1, .reusable = true}}, SHIFT(14), + [25] = {.entry = {.count = 1, .reusable = true}}, SHIFT(92), + [27] = {.entry = {.count = 1, .reusable = true}}, SHIFT(12), [29] = {.entry = {.count = 1, .reusable = false}}, SHIFT(10), [31] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_alternation_repeat1, 1, 0, 0), - [33] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_term_repeat1, 2, 0, 0), - [35] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_term_repeat1, 2, 0, 0), SHIFT_REPEAT(10), - [38] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_term_repeat1, 2, 0, 0), SHIFT_REPEAT(16), - [41] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_term_repeat1, 2, 0, 0), SHIFT_REPEAT(87), - [44] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_term_repeat1, 2, 0, 0), SHIFT_REPEAT(76), - [47] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_term_repeat1, 2, 0, 0), SHIFT_REPEAT(48), - [50] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_term_repeat1, 2, 0, 0), SHIFT_REPEAT(103), - [53] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_term_repeat1, 2, 0, 0), SHIFT_REPEAT(4), - [56] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_term_repeat1, 2, 0, 0), SHIFT_REPEAT(2), - [59] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_term_repeat1, 2, 0, 0), SHIFT_REPEAT(94), - [62] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_term_repeat1, 2, 0, 0), SHIFT_REPEAT(13), - [65] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_term_repeat1, 2, 0, 0), SHIFT_REPEAT(95), - [68] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_term_repeat1, 2, 0, 0), SHIFT_REPEAT(14), - [71] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_term_repeat1, 2, 0, 0), SHIFT_REPEAT(10), - [74] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_term, 1, 0, 0), + [33] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_term, 1, 0, 0), + [35] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_term_repeat1, 2, 0, 0), + [37] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_term_repeat1, 2, 0, 0), SHIFT_REPEAT(10), + [40] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_term_repeat1, 2, 0, 0), SHIFT_REPEAT(11), + [43] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_term_repeat1, 2, 0, 0), SHIFT_REPEAT(88), + [46] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_term_repeat1, 2, 0, 0), SHIFT_REPEAT(76), + [49] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_term_repeat1, 2, 0, 0), SHIFT_REPEAT(48), + [52] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_term_repeat1, 2, 0, 0), SHIFT_REPEAT(105), + [55] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_term_repeat1, 2, 0, 0), SHIFT_REPEAT(4), + [58] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_term_repeat1, 2, 0, 0), SHIFT_REPEAT(2), + [61] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_term_repeat1, 2, 0, 0), SHIFT_REPEAT(96), + [64] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_term_repeat1, 2, 0, 0), SHIFT_REPEAT(14), + [67] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_term_repeat1, 2, 0, 0), SHIFT_REPEAT(92), + [70] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_term_repeat1, 2, 0, 0), SHIFT_REPEAT(12), + [73] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_term_repeat1, 2, 0, 0), SHIFT_REPEAT(10), [76] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_term_repeat1, 1, 0, 0), [78] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_term_repeat1, 1, 0, 0), - [80] = {.entry = {.count = 1, .reusable = true}}, SHIFT(37), - [82] = {.entry = {.count = 1, .reusable = true}}, SHIFT(39), - [84] = {.entry = {.count = 1, .reusable = true}}, SHIFT(35), + [80] = {.entry = {.count = 1, .reusable = true}}, SHIFT(39), + [82] = {.entry = {.count = 1, .reusable = true}}, SHIFT(38), + [84] = {.entry = {.count = 1, .reusable = true}}, SHIFT(36), [86] = {.entry = {.count = 1, .reusable = true}}, SHIFT(80), - [88] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_character_class, 5, 0, 3), - [90] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_character_class, 5, 0, 3), - [92] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_backreference_escape, 2, 0, 0), - [94] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_backreference_escape, 2, 0, 0), - [96] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_character_class_escape, 1, 0, 0), - [98] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_character_class_escape, 1, 0, 0), - [100] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_unicode_character_escape, 1, 0, 0), - [102] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_unicode_character_escape, 1, 0, 0), + [88] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_start_assertion, 1, 0, 0), + [90] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_start_assertion, 1, 0, 0), + [92] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_unicode_character_escape, 1, 0, 0), + [94] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_unicode_character_escape, 1, 0, 0), + [96] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lookaround_assertion, 1, 0, 0), + [98] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_lookaround_assertion, 1, 0, 0), + [100] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_character_class_escape, 1, 0, 0), + [102] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_character_class_escape, 1, 0, 0), [104] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_character_class, 2, 0, 0), [106] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_character_class, 2, 0, 0), - [108] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_start_assertion, 1, 0, 0), - [110] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_start_assertion, 1, 0, 0), - [112] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lookaround_assertion, 1, 0, 0), - [114] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_lookaround_assertion, 1, 0, 0), - [116] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_non_capturing_group, 3, 0, 0), - [118] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_non_capturing_group, 3, 0, 0), - [120] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_character_class, 3, 0, 0), - [122] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_character_class, 3, 0, 0), - [124] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_character_class, 3, 0, 2), - [126] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_character_class, 3, 0, 2), - [128] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_posix_character_class, 3, 0, 0), - [130] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_posix_character_class, 3, 0, 0), - [132] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_anonymous_capturing_group, 3, 0, 0), - [134] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_anonymous_capturing_group, 3, 0, 0), - [136] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__lookahead_assertion, 4, 0, 0), - [138] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__lookahead_assertion, 4, 0, 0), - [140] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__lookbehind_assertion, 4, 0, 0), - [142] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__lookbehind_assertion, 4, 0, 0), - [144] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_character_class, 4, 0, 3), - [146] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_character_class, 4, 0, 3), - [148] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_character_class, 4, 0, 0), - [150] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_character_class, 4, 0, 0), - [152] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_character_class, 4, 0, 5), - [154] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_character_class, 4, 0, 5), - [156] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_character_class, 4, 0, 2), - [158] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_character_class, 4, 0, 2), - [160] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_character_class_escape, 4, 0, 0), - [162] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_character_class_escape, 4, 0, 0), + [108] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_character_class, 3, 0, 0), + [110] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_character_class, 3, 0, 0), + [112] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_character_class, 3, 0, 2), + [114] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_character_class, 3, 0, 2), + [116] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_posix_character_class, 3, 0, 0), + [118] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_posix_character_class, 3, 0, 0), + [120] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_anonymous_capturing_group, 3, 0, 0), + [122] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_anonymous_capturing_group, 3, 0, 0), + [124] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_non_capturing_group, 3, 0, 0), + [126] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_non_capturing_group, 3, 0, 0), + [128] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__lookahead_assertion, 4, 0, 0), + [130] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__lookahead_assertion, 4, 0, 0), + [132] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__lookbehind_assertion, 4, 0, 0), + [134] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__lookbehind_assertion, 4, 0, 0), + [136] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_character_class, 4, 0, 3), + [138] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_character_class, 4, 0, 3), + [140] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_character_class, 4, 0, 0), + [142] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_character_class, 4, 0, 0), + [144] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_character_class, 4, 0, 5), + [146] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_character_class, 4, 0, 5), + [148] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_character_class, 4, 0, 2), + [150] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_character_class, 4, 0, 2), + [152] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_backreference_escape, 4, 0, 0), + [154] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_backreference_escape, 4, 0, 0), + [156] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_character_class_escape, 4, 0, 0), + [158] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_character_class_escape, 4, 0, 0), + [160] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_named_capturing_group, 5, 0, 0), + [162] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_named_capturing_group, 5, 0, 0), [164] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_character_class, 5, 0, 8), [166] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_character_class, 5, 0, 8), - [168] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_named_capturing_group, 5, 0, 0), - [170] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_named_capturing_group, 5, 0, 0), + [168] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_character_class, 5, 0, 3), + [170] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_character_class, 5, 0, 3), [172] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_character_class, 5, 0, 9), [174] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_character_class, 5, 0, 9), [176] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_character_class, 5, 0, 10), [178] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_character_class, 5, 0, 10), [180] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_character_class, 6, 0, 13), [182] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_character_class, 6, 0, 13), - [184] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_one_or_more, 1, 0, 0), - [186] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_one_or_more, 1, 0, 0), + [184] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_count_quantifier, 3, 0, 0), + [186] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_count_quantifier, 3, 0, 0), [188] = {.entry = {.count = 1, .reusable = true}}, SHIFT(44), - [190] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_count_quantifier, 3, 0, 0), - [192] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_count_quantifier, 3, 0, 0), - [194] = {.entry = {.count = 1, .reusable = true}}, SHIFT(46), - [196] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_zero_or_more, 1, 0, 0), - [198] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_zero_or_more, 1, 0, 0), - [200] = {.entry = {.count = 1, .reusable = true}}, SHIFT(42), - [202] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_count_quantifier, 4, 0, 0), - [204] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_count_quantifier, 4, 0, 0), - [206] = {.entry = {.count = 1, .reusable = true}}, SHIFT(41), - [208] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_optional, 1, 0, 0), - [210] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_optional, 1, 0, 0), - [212] = {.entry = {.count = 1, .reusable = true}}, SHIFT(43), + [190] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_one_or_more, 1, 0, 0), + [192] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_one_or_more, 1, 0, 0), + [194] = {.entry = {.count = 1, .reusable = true}}, SHIFT(47), + [196] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_count_quantifier, 4, 0, 0), + [198] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_count_quantifier, 4, 0, 0), + [200] = {.entry = {.count = 1, .reusable = true}}, SHIFT(45), + [202] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_optional, 1, 0, 0), + [204] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_optional, 1, 0, 0), + [206] = {.entry = {.count = 1, .reusable = true}}, SHIFT(43), + [208] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_zero_or_more, 1, 0, 0), + [210] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_zero_or_more, 1, 0, 0), + [212] = {.entry = {.count = 1, .reusable = true}}, SHIFT(41), [214] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_count_quantifier, 5, 0, 0), [216] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_count_quantifier, 5, 0, 0), - [218] = {.entry = {.count = 1, .reusable = true}}, SHIFT(47), - [220] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_count_quantifier, 5, 0, 12), - [222] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_count_quantifier, 5, 0, 12), - [224] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_zero_or_more, 2, 0, 1), - [226] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_zero_or_more, 2, 0, 1), - [228] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_optional, 2, 0, 1), - [230] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_optional, 2, 0, 1), - [232] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_one_or_more, 2, 0, 1), - [234] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_one_or_more, 2, 0, 1), - [236] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_term_repeat1, 2, 0, 0), - [238] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_count_quantifier, 4, 0, 7), - [240] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_count_quantifier, 4, 0, 7), - [242] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_count_quantifier, 6, 0, 14), - [244] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_count_quantifier, 6, 0, 14), - [246] = {.entry = {.count = 1, .reusable = false}}, SHIFT(55), - [248] = {.entry = {.count = 1, .reusable = false}}, SHIFT(54), + [218] = {.entry = {.count = 1, .reusable = true}}, SHIFT(46), + [220] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_zero_or_more, 2, 0, 1), + [222] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_zero_or_more, 2, 0, 1), + [224] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_term_repeat1, 2, 0, 0), + [226] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_optional, 2, 0, 1), + [228] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_optional, 2, 0, 1), + [230] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_count_quantifier, 4, 0, 7), + [232] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_count_quantifier, 4, 0, 7), + [234] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_count_quantifier, 5, 0, 12), + [236] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_count_quantifier, 5, 0, 12), + [238] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_count_quantifier, 6, 0, 14), + [240] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_count_quantifier, 6, 0, 14), + [242] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_one_or_more, 2, 0, 1), + [244] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_one_or_more, 2, 0, 1), + [246] = {.entry = {.count = 1, .reusable = false}}, SHIFT(53), + [248] = {.entry = {.count = 1, .reusable = false}}, SHIFT(50), [250] = {.entry = {.count = 1, .reusable = false}}, SHIFT(15), - [252] = {.entry = {.count = 1, .reusable = false}}, SHIFT(108), + [252] = {.entry = {.count = 1, .reusable = false}}, SHIFT(110), [254] = {.entry = {.count = 1, .reusable = false}}, SHIFT(56), - [256] = {.entry = {.count = 1, .reusable = false}}, SHIFT(62), - [258] = {.entry = {.count = 1, .reusable = false}}, SHIFT(65), - [260] = {.entry = {.count = 1, .reusable = false}}, SHIFT(110), - [262] = {.entry = {.count = 1, .reusable = false}}, SHIFT(63), - [264] = {.entry = {.count = 1, .reusable = false}}, SHIFT(78), - [266] = {.entry = {.count = 1, .reusable = false}}, SHIFT(28), - [268] = {.entry = {.count = 1, .reusable = false}}, SHIFT(52), - [270] = {.entry = {.count = 1, .reusable = false}}, SHIFT(85), - [272] = {.entry = {.count = 1, .reusable = false}}, SHIFT(26), - [274] = {.entry = {.count = 1, .reusable = false}}, SHIFT(68), - [276] = {.entry = {.count = 1, .reusable = false}}, SHIFT(25), - [278] = {.entry = {.count = 1, .reusable = false}}, SHIFT(53), - [280] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_character_class_repeat1, 2, 0, 0), SHIFT_REPEAT(98), - [283] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_character_class_repeat1, 2, 0, 0), - [285] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_character_class_repeat1, 2, 0, 0), SHIFT_REPEAT(108), - [288] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_character_class_repeat1, 2, 0, 0), SHIFT_REPEAT(52), - [291] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_character_class_repeat1, 2, 0, 0), SHIFT_REPEAT(62), - [294] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_character_class_repeat1, 2, 0, 0), SHIFT_REPEAT(65), - [297] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_character_class_repeat1, 2, 0, 0), SHIFT_REPEAT(110), - [300] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_character_class_repeat1, 2, 0, 0), SHIFT_REPEAT(63), - [303] = {.entry = {.count = 1, .reusable = false}}, SHIFT(82), - [305] = {.entry = {.count = 1, .reusable = false}}, SHIFT(11), - [307] = {.entry = {.count = 1, .reusable = false}}, SHIFT(67), - [309] = {.entry = {.count = 1, .reusable = false}}, SHIFT(20), - [311] = {.entry = {.count = 1, .reusable = false}}, SHIFT(49), - [313] = {.entry = {.count = 1, .reusable = false}}, SHIFT(51), - [315] = {.entry = {.count = 1, .reusable = false}}, SHIFT(19), - [317] = {.entry = {.count = 1, .reusable = false}}, SHIFT(50), - [319] = {.entry = {.count = 1, .reusable = false}}, SHIFT(77), - [321] = {.entry = {.count = 1, .reusable = false}}, SHIFT(64), + [256] = {.entry = {.count = 1, .reusable = false}}, SHIFT(60), + [258] = {.entry = {.count = 1, .reusable = false}}, SHIFT(61), + [260] = {.entry = {.count = 1, .reusable = false}}, SHIFT(112), + [262] = {.entry = {.count = 1, .reusable = false}}, SHIFT(65), + [264] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_character_class_repeat1, 2, 0, 0), SHIFT_REPEAT(98), + [267] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_character_class_repeat1, 2, 0, 0), + [269] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_character_class_repeat1, 2, 0, 0), SHIFT_REPEAT(110), + [272] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_character_class_repeat1, 2, 0, 0), SHIFT_REPEAT(49), + [275] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_character_class_repeat1, 2, 0, 0), SHIFT_REPEAT(60), + [278] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_character_class_repeat1, 2, 0, 0), SHIFT_REPEAT(61), + [281] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_character_class_repeat1, 2, 0, 0), SHIFT_REPEAT(112), + [284] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_character_class_repeat1, 2, 0, 0), SHIFT_REPEAT(65), + [287] = {.entry = {.count = 1, .reusable = false}}, SHIFT(68), + [289] = {.entry = {.count = 1, .reusable = false}}, SHIFT(17), + [291] = {.entry = {.count = 1, .reusable = false}}, SHIFT(55), + [293] = {.entry = {.count = 1, .reusable = false}}, SHIFT(83), + [295] = {.entry = {.count = 1, .reusable = false}}, SHIFT(31), + [297] = {.entry = {.count = 1, .reusable = false}}, SHIFT(49), + [299] = {.entry = {.count = 1, .reusable = false}}, SHIFT(67), + [301] = {.entry = {.count = 1, .reusable = false}}, SHIFT(23), + [303] = {.entry = {.count = 1, .reusable = false}}, SHIFT(51), + [305] = {.entry = {.count = 1, .reusable = false}}, SHIFT(52), + [307] = {.entry = {.count = 1, .reusable = false}}, SHIFT(16), + [309] = {.entry = {.count = 1, .reusable = false}}, SHIFT(54), + [311] = {.entry = {.count = 1, .reusable = false}}, SHIFT(79), + [313] = {.entry = {.count = 1, .reusable = false}}, SHIFT(24), + [315] = {.entry = {.count = 1, .reusable = false}}, SHIFT(81), + [317] = {.entry = {.count = 1, .reusable = false}}, SHIFT(26), + [319] = {.entry = {.count = 1, .reusable = false}}, SHIFT(82), + [321] = {.entry = {.count = 1, .reusable = false}}, SHIFT(62), [323] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_range, 3, 0, 4), - [325] = {.entry = {.count = 1, .reusable = false}}, SHIFT(58), - [327] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_range, 3, 0, 6), + [325] = {.entry = {.count = 1, .reusable = false}}, SHIFT(64), + [327] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_range, 3, 0, 3), [329] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_range, 3, 0, 0), - [331] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_range, 3, 0, 3), - [333] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_character_class_repeat1, 1, 0, 0), SHIFT(70), - [336] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_character_class_repeat1, 1, 0, 0), + [331] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_character_class_repeat1, 1, 0, 0), SHIFT(70), + [334] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_character_class_repeat1, 1, 0, 0), + [336] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_range, 3, 0, 6), [338] = {.entry = {.count = 1, .reusable = false}}, SHIFT(57), - [340] = {.entry = {.count = 1, .reusable = false}}, SHIFT(27), - [342] = {.entry = {.count = 1, .reusable = true}}, SHIFT(58), - [344] = {.entry = {.count = 1, .reusable = false}}, SHIFT(30), - [346] = {.entry = {.count = 1, .reusable = false}}, SHIFT(61), - [348] = {.entry = {.count = 1, .reusable = true}}, SHIFT(60), + [340] = {.entry = {.count = 1, .reusable = false}}, SHIFT(30), + [342] = {.entry = {.count = 1, .reusable = true}}, SHIFT(64), + [344] = {.entry = {.count = 1, .reusable = false}}, SHIFT(25), + [346] = {.entry = {.count = 1, .reusable = false}}, SHIFT(58), + [348] = {.entry = {.count = 1, .reusable = true}}, SHIFT(59), [350] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_alternation, 1, 0, 0), - [352] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern, 1, 0, 0), - [354] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_alternation_repeat1, 2, 0, 0), - [356] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_alternation_repeat1, 2, 0, 0), SHIFT_REPEAT(7), - [359] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_alternation, 2, 0, 0), + [352] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_alternation, 2, 0, 0), + [354] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern, 1, 0, 0), + [356] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_alternation_repeat1, 2, 0, 0), + [358] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_alternation_repeat1, 2, 0, 0), SHIFT_REPEAT(7), [361] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5), - [363] = {.entry = {.count = 1, .reusable = true}}, SHIFT(102), - [365] = {.entry = {.count = 1, .reusable = true}}, SHIFT(69), - [367] = {.entry = {.count = 1, .reusable = true}}, SHIFT(25), - [369] = {.entry = {.count = 1, .reusable = true}}, SHIFT(33), - [371] = {.entry = {.count = 1, .reusable = true}}, SHIFT(38), - [373] = {.entry = {.count = 1, .reusable = true}}, SHIFT(105), - [375] = {.entry = {.count = 1, .reusable = true}}, SHIFT(92), - [377] = {.entry = {.count = 1, .reusable = true}}, SHIFT(86), - [379] = {.entry = {.count = 1, .reusable = true}}, SHIFT(34), - [381] = {.entry = {.count = 1, .reusable = true}}, SHIFT(84), - [383] = {.entry = {.count = 1, .reusable = true}}, SHIFT(99), - [385] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_unicode_property_value_expression, 1, 0, 0), - [387] = {.entry = {.count = 1, .reusable = true}}, SHIFT(32), - [389] = {.entry = {.count = 1, .reusable = true}}, SHIFT(79), - [391] = {.entry = {.count = 1, .reusable = true}}, SHIFT(36), - [393] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6), - [395] = {.entry = {.count = 1, .reusable = true}}, SHIFT(18), - [397] = {.entry = {.count = 1, .reusable = true}}, SHIFT(31), - [399] = {.entry = {.count = 1, .reusable = true}}, SHIFT(21), - [401] = {.entry = {.count = 1, .reusable = true}}, SHIFT(100), - [403] = {.entry = {.count = 1, .reusable = true}}, SHIFT(22), - [405] = {.entry = {.count = 1, .reusable = true}}, SHIFT(12), - [407] = {.entry = {.count = 1, .reusable = true}}, SHIFT(83), - [409] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), - [411] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_unicode_property_value_expression, 3, 0, 11), - [413] = {.entry = {.count = 1, .reusable = true}}, SHIFT(97), - [415] = {.entry = {.count = 1, .reusable = true}}, SHIFT(24), - [417] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3), - [419] = {.entry = {.count = 1, .reusable = true}}, SHIFT(91), - [421] = {.entry = {.count = 1, .reusable = true}}, SHIFT(29), - [423] = {.entry = {.count = 1, .reusable = true}}, SHIFT(40), - [425] = {.entry = {.count = 1, .reusable = true}}, SHIFT(66), - [427] = {.entry = {.count = 1, .reusable = true}}, SHIFT(59), - [429] = {.entry = {.count = 1, .reusable = true}}, SHIFT(106), - [431] = {.entry = {.count = 1, .reusable = true}}, SHIFT(23), - [433] = {.entry = {.count = 1, .reusable = true}}, SHIFT(88), + [363] = {.entry = {.count = 1, .reusable = true}}, SHIFT(90), + [365] = {.entry = {.count = 1, .reusable = true}}, SHIFT(87), + [367] = {.entry = {.count = 1, .reusable = true}}, SHIFT(35), + [369] = {.entry = {.count = 1, .reusable = true}}, SHIFT(86), + [371] = {.entry = {.count = 1, .reusable = true}}, SHIFT(69), + [373] = {.entry = {.count = 1, .reusable = true}}, SHIFT(32), + [375] = {.entry = {.count = 1, .reusable = true}}, SHIFT(102), + [377] = {.entry = {.count = 1, .reusable = true}}, SHIFT(77), + [379] = {.entry = {.count = 1, .reusable = true}}, SHIFT(33), + [381] = {.entry = {.count = 1, .reusable = true}}, SHIFT(23), + [383] = {.entry = {.count = 1, .reusable = true}}, SHIFT(34), + [385] = {.entry = {.count = 1, .reusable = true}}, SHIFT(103), + [387] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_unicode_property_value_expression, 1, 0, 0), + [389] = {.entry = {.count = 1, .reusable = true}}, SHIFT(37), + [391] = {.entry = {.count = 1, .reusable = true}}, SHIFT(111), + [393] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3), + [395] = {.entry = {.count = 1, .reusable = true}}, SHIFT(20), + [397] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6), + [399] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), + [401] = {.entry = {.count = 1, .reusable = true}}, SHIFT(84), + [403] = {.entry = {.count = 1, .reusable = true}}, SHIFT(97), + [405] = {.entry = {.count = 1, .reusable = true}}, SHIFT(21), + [407] = {.entry = {.count = 1, .reusable = true}}, SHIFT(22), + [409] = {.entry = {.count = 1, .reusable = true}}, SHIFT(93), + [411] = {.entry = {.count = 1, .reusable = true}}, SHIFT(27), + [413] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_unicode_property_value_expression, 3, 0, 11), + [415] = {.entry = {.count = 1, .reusable = true}}, SHIFT(28), + [417] = {.entry = {.count = 1, .reusable = true}}, SHIFT(101), + [419] = {.entry = {.count = 1, .reusable = true}}, SHIFT(99), + [421] = {.entry = {.count = 1, .reusable = true}}, SHIFT(18), + [423] = {.entry = {.count = 1, .reusable = true}}, SHIFT(104), + [425] = {.entry = {.count = 1, .reusable = true}}, SHIFT(29), + [427] = {.entry = {.count = 1, .reusable = true}}, SHIFT(19), + [429] = {.entry = {.count = 1, .reusable = true}}, SHIFT(66), + [431] = {.entry = {.count = 1, .reusable = true}}, SHIFT(63), + [433] = {.entry = {.count = 1, .reusable = true}}, SHIFT(108), + [435] = {.entry = {.count = 1, .reusable = true}}, SHIFT(40), + [437] = {.entry = {.count = 1, .reusable = true}}, SHIFT(78), }; #ifdef __cplusplus diff --git a/test/corpus/main.txt b/test/corpus/main.txt index 64286fd..c816c81 100644 --- a/test/corpus/main.txt +++ b/test/corpus/main.txt @@ -470,7 +470,7 @@ named capturing groups ================================================================================ named capturing groups - backreferences ================================================================================ -(?.*)\kthe_world +(?.*)\k -------------------------------------------------------------------------------- (pattern