From 9dd109b90adb5a22d73bf1b3d594b1c5b11bac53 Mon Sep 17 00:00:00 2001 From: Bruno BELANYI Date: Sun, 7 Apr 2024 23:39:47 +0100 Subject: [PATCH] Add boolean literals --- grammar.js | 3 + src/grammar.json | 17 + src/node-types.json | 25 + src/parser.c | 3102 ++++++++++++++++++++++++++++------- test/corpus/expressions.txt | 34 + 5 files changed, 2581 insertions(+), 600 deletions(-) diff --git a/grammar.js b/grammar.js index e7cb8dc..9d05302 100644 --- a/grammar.js +++ b/grammar.js @@ -34,6 +34,7 @@ module.exports = grammar({ _expr: ($) => choice( // Literals $.identifier, + $.boolean_literal, $.integer_literal, $._string_literal, // Composites @@ -44,6 +45,8 @@ module.exports = grammar({ // The Blueprint scanner makes use of Go's lexer, so copy their rule identifier: (_) => /[_\p{XID_Start}][_\p{XID_Continue}]*/, + boolean_literal: (_) => choice("true", "false"), + integer_literal: (_) => seq(optional("-"), /[0-9]+/), // The Blueprint scanner makes use of Go's lexer, so copy their rule diff --git a/src/grammar.json b/src/grammar.json index 557367f..5310691 100644 --- a/src/grammar.json +++ b/src/grammar.json @@ -75,6 +75,10 @@ "type": "SYMBOL", "name": "identifier" }, + { + "type": "SYMBOL", + "name": "boolean_literal" + }, { "type": "SYMBOL", "name": "integer_literal" @@ -97,6 +101,19 @@ "type": "PATTERN", "value": "[_\\p{XID_Start}][_\\p{XID_Continue}]*" }, + "boolean_literal": { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "true" + }, + { + "type": "STRING", + "value": "false" + } + ] + }, "integer_literal": { "type": "SEQ", "members": [ diff --git a/src/node-types.json b/src/node-types.json index eeaa5cf..5ed93aa 100644 --- a/src/node-types.json +++ b/src/node-types.json @@ -31,6 +31,10 @@ "multiple": false, "required": true, "types": [ + { + "type": "boolean_literal", + "named": true + }, { "type": "identifier", "named": true @@ -59,6 +63,11 @@ } } }, + { + "type": "boolean_literal", + "named": true, + "fields": {} + }, { "type": "comment", "named": true, @@ -92,6 +101,10 @@ "multiple": true, "required": false, "types": [ + { + "type": "boolean_literal", + "named": true + }, { "type": "identifier", "named": true @@ -137,6 +150,10 @@ "multiple": true, "required": false, "types": [ + { + "type": "boolean_literal", + "named": true + }, { "type": "identifier", "named": true @@ -220,6 +237,10 @@ "type": "escape_sequence", "named": true }, + { + "type": "false", + "named": false + }, { "type": "identifier", "named": true @@ -228,6 +249,10 @@ "type": "raw_string_literal", "named": true }, + { + "type": "true", + "named": false + }, { "type": "{", "named": false diff --git a/src/parser.c b/src/parser.c index f74b10a..a8b41ce 100644 --- a/src/parser.c +++ b/src/parser.c @@ -6,11 +6,11 @@ #endif #define LANGUAGE_VERSION 14 -#define STATE_COUNT 51 -#define LARGE_STATE_COUNT 2 -#define SYMBOL_COUNT 34 +#define STATE_COUNT 52 +#define LARGE_STATE_COUNT 5 +#define SYMBOL_COUNT 37 #define ALIAS_COUNT 0 -#define TOKEN_COUNT 19 +#define TOKEN_COUNT 21 #define EXTERNAL_TOKEN_COUNT 0 #define FIELD_COUNT 5 #define MAX_ALIAS_SEQUENCE_LENGTH 5 @@ -22,34 +22,37 @@ enum ts_symbol_identifiers { anon_sym_EQ = 3, anon_sym_PLUS_EQ = 4, sym_identifier = 5, - anon_sym_DASH = 6, - aux_sym_integer_literal_token1 = 7, - sym_raw_string_literal = 8, - anon_sym_DQUOTE = 9, - aux_sym_interpreted_string_literal_token1 = 10, - anon_sym_DQUOTE2 = 11, - sym_escape_sequence = 12, - anon_sym_LBRACK = 13, - anon_sym_COMMA = 14, - anon_sym_RBRACK = 15, - anon_sym_LBRACE = 16, - anon_sym_RBRACE = 17, - anon_sym_COLON = 18, - sym_source_file = 19, - sym__definition = 20, - sym_comment = 21, - sym_assignment = 22, - sym__expr = 23, - sym_integer_literal = 24, - sym__string_literal = 25, - sym_interpreted_string_literal = 26, - sym_list_expression = 27, - sym_map_expression = 28, - sym__colon_property = 29, - aux_sym_source_file_repeat1 = 30, - aux_sym_interpreted_string_literal_repeat1 = 31, - aux_sym_list_expression_repeat1 = 32, - aux_sym_map_expression_repeat1 = 33, + anon_sym_true = 6, + anon_sym_false = 7, + anon_sym_DASH = 8, + aux_sym_integer_literal_token1 = 9, + sym_raw_string_literal = 10, + anon_sym_DQUOTE = 11, + aux_sym_interpreted_string_literal_token1 = 12, + anon_sym_DQUOTE2 = 13, + sym_escape_sequence = 14, + anon_sym_LBRACK = 15, + anon_sym_COMMA = 16, + anon_sym_RBRACK = 17, + anon_sym_LBRACE = 18, + anon_sym_RBRACE = 19, + anon_sym_COLON = 20, + sym_source_file = 21, + sym__definition = 22, + sym_comment = 23, + sym_assignment = 24, + sym__expr = 25, + sym_boolean_literal = 26, + sym_integer_literal = 27, + sym__string_literal = 28, + sym_interpreted_string_literal = 29, + sym_list_expression = 30, + sym_map_expression = 31, + sym__colon_property = 32, + aux_sym_source_file_repeat1 = 33, + aux_sym_interpreted_string_literal_repeat1 = 34, + aux_sym_list_expression_repeat1 = 35, + aux_sym_map_expression_repeat1 = 36, }; static const char * const ts_symbol_names[] = { @@ -59,6 +62,8 @@ static const char * const ts_symbol_names[] = { [anon_sym_EQ] = "=", [anon_sym_PLUS_EQ] = "+=", [sym_identifier] = "identifier", + [anon_sym_true] = "true", + [anon_sym_false] = "false", [anon_sym_DASH] = "-", [aux_sym_integer_literal_token1] = "integer_literal_token1", [sym_raw_string_literal] = "raw_string_literal", @@ -77,6 +82,7 @@ static const char * const ts_symbol_names[] = { [sym_comment] = "comment", [sym_assignment] = "assignment", [sym__expr] = "_expr", + [sym_boolean_literal] = "boolean_literal", [sym_integer_literal] = "integer_literal", [sym__string_literal] = "_string_literal", [sym_interpreted_string_literal] = "interpreted_string_literal", @@ -96,6 +102,8 @@ static const TSSymbol ts_symbol_map[] = { [anon_sym_EQ] = anon_sym_EQ, [anon_sym_PLUS_EQ] = anon_sym_PLUS_EQ, [sym_identifier] = sym_identifier, + [anon_sym_true] = anon_sym_true, + [anon_sym_false] = anon_sym_false, [anon_sym_DASH] = anon_sym_DASH, [aux_sym_integer_literal_token1] = aux_sym_integer_literal_token1, [sym_raw_string_literal] = sym_raw_string_literal, @@ -114,6 +122,7 @@ static const TSSymbol ts_symbol_map[] = { [sym_comment] = sym_comment, [sym_assignment] = sym_assignment, [sym__expr] = sym__expr, + [sym_boolean_literal] = sym_boolean_literal, [sym_integer_literal] = sym_integer_literal, [sym__string_literal] = sym__string_literal, [sym_interpreted_string_literal] = sym_interpreted_string_literal, @@ -151,6 +160,14 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = true, }, + [anon_sym_true] = { + .visible = true, + .named = false, + }, + [anon_sym_false] = { + .visible = true, + .named = false, + }, [anon_sym_DASH] = { .visible = true, .named = false, @@ -223,6 +240,10 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = false, .named = true, }, + [sym_boolean_literal] = { + .visible = true, + .named = true, + }, [sym_integer_literal] = { .visible = true, .named = true, @@ -373,6 +394,7 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [48] = 48, [49] = 49, [50] = 50, + [51] = 51, }; static inline bool sym_identifier_character_set_1(int32_t c) { @@ -1178,6 +1200,1828 @@ static inline bool sym_identifier_character_set_1(int32_t c) { } static inline bool sym_identifier_character_set_2(int32_t c) { + return (c < 43514 + ? (c < 4193 + ? (c < 2707 + ? (c < 1994 + ? (c < 910 + ? (c < 736 + ? (c < 186 + ? (c < 'a' + ? (c < '_' + ? (c >= 'A' && c <= 'Z') + : c <= '_') + : (c <= 'z' || (c < 181 + ? c == 170 + : c <= 181))) + : (c <= 186 || (c < 248 + ? (c < 216 + ? (c >= 192 && c <= 214) + : c <= 246) + : (c <= 705 || (c >= 710 && c <= 721))))) + : (c <= 740 || (c < 891 + ? (c < 880 + ? (c < 750 + ? c == 748 + : c <= 750) + : (c <= 884 || (c >= 886 && c <= 887))) + : (c <= 893 || (c < 904 + ? (c < 902 + ? c == 895 + : c <= 902) + : (c <= 906 || c == 908)))))) + : (c <= 929 || (c < 1649 + ? (c < 1376 + ? (c < 1162 + ? (c < 1015 + ? (c >= 931 && c <= 1013) + : c <= 1153) + : (c <= 1327 || (c < 1369 + ? (c >= 1329 && c <= 1366) + : c <= 1369))) + : (c <= 1416 || (c < 1568 + ? (c < 1519 + ? (c >= 1488 && c <= 1514) + : c <= 1522) + : (c <= 1610 || (c >= 1646 && c <= 1647))))) + : (c <= 1747 || (c < 1791 + ? (c < 1774 + ? (c < 1765 + ? c == 1749 + : c <= 1766) + : (c <= 1775 || (c >= 1786 && c <= 1788))) + : (c <= 1791 || (c < 1869 + ? (c < 1810 + ? c == 1808 + : c <= 1839) + : (c <= 1957 || c == 1969)))))))) + : (c <= 2026 || (c < 2482 + ? (c < 2208 + ? (c < 2088 + ? (c < 2048 + ? (c < 2042 + ? (c >= 2036 && c <= 2037) + : c <= 2042) + : (c <= 2069 || (c < 2084 + ? c == 2074 + : c <= 2084))) + : (c <= 2088 || (c < 2160 + ? (c < 2144 + ? (c >= 2112 && c <= 2136) + : c <= 2154) + : (c <= 2183 || (c >= 2185 && c <= 2190))))) + : (c <= 2249 || (c < 2417 + ? (c < 2384 + ? (c < 2365 + ? (c >= 2308 && c <= 2361) + : c <= 2365) + : (c <= 2384 || (c >= 2392 && c <= 2401))) + : (c <= 2432 || (c < 2451 + ? (c < 2447 + ? (c >= 2437 && c <= 2444) + : c <= 2448) + : (c <= 2472 || (c >= 2474 && c <= 2480))))))) + : (c <= 2482 || (c < 2579 + ? (c < 2527 + ? (c < 2510 + ? (c < 2493 + ? (c >= 2486 && c <= 2489) + : c <= 2493) + : (c <= 2510 || (c >= 2524 && c <= 2525))) + : (c <= 2529 || (c < 2565 + ? (c < 2556 + ? (c >= 2544 && c <= 2545) + : c <= 2556) + : (c <= 2570 || (c >= 2575 && c <= 2576))))) + : (c <= 2600 || (c < 2649 + ? (c < 2613 + ? (c < 2610 + ? (c >= 2602 && c <= 2608) + : c <= 2611) + : (c <= 2614 || (c >= 2616 && c <= 2617))) + : (c <= 2652 || (c < 2693 + ? (c < 2674 + ? c == 2654 + : c <= 2676) + : (c <= 2701 || (c >= 2703 && c <= 2705))))))))))) + : (c <= 2728 || (c < 3242 + ? (c < 2962 + ? (c < 2858 + ? (c < 2784 + ? (c < 2741 + ? (c < 2738 + ? (c >= 2730 && c <= 2736) + : c <= 2739) + : (c <= 2745 || (c < 2768 + ? c == 2749 + : c <= 2768))) + : (c <= 2785 || (c < 2831 + ? (c < 2821 + ? c == 2809 + : c <= 2828) + : (c <= 2832 || (c >= 2835 && c <= 2856))))) + : (c <= 2864 || (c < 2911 + ? (c < 2877 + ? (c < 2869 + ? (c >= 2866 && c <= 2867) + : c <= 2873) + : (c <= 2877 || (c >= 2908 && c <= 2909))) + : (c <= 2913 || (c < 2949 + ? (c < 2947 + ? c == 2929 + : c <= 2947) + : (c <= 2954 || (c >= 2958 && c <= 2960))))))) + : (c <= 2965 || (c < 3090 + ? (c < 2984 + ? (c < 2974 + ? (c < 2972 + ? (c >= 2969 && c <= 2970) + : c <= 2972) + : (c <= 2975 || (c >= 2979 && c <= 2980))) + : (c <= 2986 || (c < 3077 + ? (c < 3024 + ? (c >= 2990 && c <= 3001) + : c <= 3024) + : (c <= 3084 || (c >= 3086 && c <= 3088))))) + : (c <= 3112 || (c < 3168 + ? (c < 3160 + ? (c < 3133 + ? (c >= 3114 && c <= 3129) + : c <= 3133) + : (c <= 3162 || c == 3165)) + : (c <= 3169 || (c < 3214 + ? (c < 3205 + ? c == 3200 + : c <= 3212) + : (c <= 3216 || (c >= 3218 && c <= 3240))))))))) + : (c <= 3251 || (c < 3648 + ? (c < 3412 + ? (c < 3332 + ? (c < 3293 + ? (c < 3261 + ? (c >= 3253 && c <= 3257) + : c <= 3261) + : (c <= 3294 || (c < 3313 + ? (c >= 3296 && c <= 3297) + : c <= 3314))) + : (c <= 3340 || (c < 3389 + ? (c < 3346 + ? (c >= 3342 && c <= 3344) + : c <= 3386) + : (c <= 3389 || c == 3406)))) + : (c <= 3414 || (c < 3507 + ? (c < 3461 + ? (c < 3450 + ? (c >= 3423 && c <= 3425) + : c <= 3455) + : (c <= 3478 || (c >= 3482 && c <= 3505))) + : (c <= 3515 || (c < 3585 + ? (c < 3520 + ? c == 3517 + : c <= 3526) + : (c <= 3632 || c == 3634)))))) + : (c <= 3654 || (c < 3782 + ? (c < 3749 + ? (c < 3718 + ? (c < 3716 + ? (c >= 3713 && c <= 3714) + : c <= 3716) + : (c <= 3722 || (c >= 3724 && c <= 3747))) + : (c <= 3749 || (c < 3773 + ? (c < 3762 + ? (c >= 3751 && c <= 3760) + : c <= 3762) + : (c <= 3773 || (c >= 3776 && c <= 3780))))) + : (c <= 3782 || (c < 3976 + ? (c < 3904 + ? (c < 3840 + ? (c >= 3804 && c <= 3807) + : c <= 3840) + : (c <= 3911 || (c >= 3913 && c <= 3948))) + : (c <= 3980 || (c < 4176 + ? (c < 4159 + ? (c >= 4096 && c <= 4138) + : c <= 4159) + : (c <= 4181 || (c >= 4186 && c <= 4189))))))))))))) + : (c <= 4193 || (c < 8134 + ? (c < 6176 + ? (c < 4808 + ? (c < 4688 + ? (c < 4295 + ? (c < 4213 + ? (c < 4206 + ? (c >= 4197 && c <= 4198) + : c <= 4208) + : (c <= 4225 || (c < 4256 + ? c == 4238 + : c <= 4293))) + : (c <= 4295 || (c < 4348 + ? (c < 4304 + ? c == 4301 + : c <= 4346) + : (c <= 4680 || (c >= 4682 && c <= 4685))))) + : (c <= 4694 || (c < 4752 + ? (c < 4704 + ? (c < 4698 + ? c == 4696 + : c <= 4701) + : (c <= 4744 || (c >= 4746 && c <= 4749))) + : (c <= 4784 || (c < 4800 + ? (c < 4792 + ? (c >= 4786 && c <= 4789) + : c <= 4798) + : (c <= 4800 || (c >= 4802 && c <= 4805))))))) + : (c <= 4822 || (c < 5792 + ? (c < 5024 + ? (c < 4888 + ? (c < 4882 + ? (c >= 4824 && c <= 4880) + : c <= 4885) + : (c <= 4954 || (c >= 4992 && c <= 5007))) + : (c <= 5109 || (c < 5743 + ? (c < 5121 + ? (c >= 5112 && c <= 5117) + : c <= 5740) + : (c <= 5759 || (c >= 5761 && c <= 5786))))) + : (c <= 5866 || (c < 5984 + ? (c < 5919 + ? (c < 5888 + ? (c >= 5870 && c <= 5880) + : c <= 5905) + : (c <= 5937 || (c >= 5952 && c <= 5969))) + : (c <= 5996 || (c < 6103 + ? (c < 6016 + ? (c >= 5998 && c <= 6000) + : c <= 6067) + : (c <= 6103 || c == 6108)))))))) + : (c <= 6264 || (c < 7312 + ? (c < 6823 + ? (c < 6512 + ? (c < 6320 + ? (c < 6314 + ? (c >= 6272 && c <= 6312) + : c <= 6314) + : (c <= 6389 || (c < 6480 + ? (c >= 6400 && c <= 6430) + : c <= 6509))) + : (c <= 6516 || (c < 6656 + ? (c < 6576 + ? (c >= 6528 && c <= 6571) + : c <= 6601) + : (c <= 6678 || (c >= 6688 && c <= 6740))))) + : (c <= 6823 || (c < 7098 + ? (c < 7043 + ? (c < 6981 + ? (c >= 6917 && c <= 6963) + : c <= 6988) + : (c <= 7072 || (c >= 7086 && c <= 7087))) + : (c <= 7141 || (c < 7258 + ? (c < 7245 + ? (c >= 7168 && c <= 7203) + : c <= 7247) + : (c <= 7293 || (c >= 7296 && c <= 7304))))))) + : (c <= 7354 || (c < 8008 + ? (c < 7418 + ? (c < 7406 + ? (c < 7401 + ? (c >= 7357 && c <= 7359) + : c <= 7404) + : (c <= 7411 || (c >= 7413 && c <= 7414))) + : (c <= 7418 || (c < 7960 + ? (c < 7680 + ? (c >= 7424 && c <= 7615) + : c <= 7957) + : (c <= 7965 || (c >= 7968 && c <= 8005))))) + : (c <= 8013 || (c < 8031 + ? (c < 8027 + ? (c < 8025 + ? (c >= 8016 && c <= 8023) + : c <= 8025) + : (c <= 8027 || c == 8029)) + : (c <= 8061 || (c < 8126 + ? (c < 8118 + ? (c >= 8064 && c <= 8116) + : c <= 8124) + : (c <= 8126 || (c >= 8130 && c <= 8132))))))))))) + : (c <= 8140 || (c < 12337 + ? (c < 8544 + ? (c < 8458 + ? (c < 8305 + ? (c < 8160 + ? (c < 8150 + ? (c >= 8144 && c <= 8147) + : c <= 8155) + : (c <= 8172 || (c < 8182 + ? (c >= 8178 && c <= 8180) + : c <= 8188))) + : (c <= 8305 || (c < 8450 + ? (c < 8336 + ? c == 8319 + : c <= 8348) + : (c <= 8450 || c == 8455)))) + : (c <= 8467 || (c < 8488 + ? (c < 8484 + ? (c < 8472 + ? c == 8469 + : c <= 8477) + : (c <= 8484 || c == 8486)) + : (c <= 8488 || (c < 8517 + ? (c < 8508 + ? (c >= 8490 && c <= 8505) + : c <= 8511) + : (c <= 8521 || c == 8526)))))) + : (c <= 8584 || (c < 11680 + ? (c < 11559 + ? (c < 11506 + ? (c < 11499 + ? (c >= 11264 && c <= 11492) + : c <= 11502) + : (c <= 11507 || (c >= 11520 && c <= 11557))) + : (c <= 11559 || (c < 11631 + ? (c < 11568 + ? c == 11565 + : c <= 11623) + : (c <= 11631 || (c >= 11648 && c <= 11670))))) + : (c <= 11686 || (c < 11720 + ? (c < 11704 + ? (c < 11696 + ? (c >= 11688 && c <= 11694) + : c <= 11702) + : (c <= 11710 || (c >= 11712 && c <= 11718))) + : (c <= 11726 || (c < 12293 + ? (c < 11736 + ? (c >= 11728 && c <= 11734) + : c <= 11742) + : (c <= 12295 || (c >= 12321 && c <= 12329))))))))) + : (c <= 12341 || (c < 42891 + ? (c < 19968 + ? (c < 12549 + ? (c < 12445 + ? (c < 12353 + ? (c >= 12344 && c <= 12348) + : c <= 12438) + : (c <= 12447 || (c < 12540 + ? (c >= 12449 && c <= 12538) + : c <= 12543))) + : (c <= 12591 || (c < 12784 + ? (c < 12704 + ? (c >= 12593 && c <= 12686) + : c <= 12735) + : (c <= 12799 || (c >= 13312 && c <= 19903))))) + : (c <= 42124 || (c < 42560 + ? (c < 42512 + ? (c < 42240 + ? (c >= 42192 && c <= 42237) + : c <= 42508) + : (c <= 42527 || (c >= 42538 && c <= 42539))) + : (c <= 42606 || (c < 42775 + ? (c < 42656 + ? (c >= 42623 && c <= 42653) + : c <= 42735) + : (c <= 42783 || (c >= 42786 && c <= 42888))))))) + : (c <= 42954 || (c < 43250 + ? (c < 43011 + ? (c < 42965 + ? (c < 42963 + ? (c >= 42960 && c <= 42961) + : c <= 42963) + : (c <= 42969 || (c >= 42994 && c <= 43009))) + : (c <= 43013 || (c < 43072 + ? (c < 43020 + ? (c >= 43015 && c <= 43018) + : c <= 43042) + : (c <= 43123 || (c >= 43138 && c <= 43187))))) + : (c <= 43255 || (c < 43360 + ? (c < 43274 + ? (c < 43261 + ? c == 43259 + : c <= 43262) + : (c <= 43301 || (c >= 43312 && c <= 43334))) + : (c <= 43388 || (c < 43488 + ? (c < 43471 + ? (c >= 43396 && c <= 43442) + : c <= 43471) + : (c <= 43492 || (c >= 43494 && c <= 43503))))))))))))))) + : (c <= 43518 || (c < 70727 + ? (c < 66956 + ? (c < 64914 + ? (c < 43868 + ? (c < 43714 + ? (c < 43646 + ? (c < 43588 + ? (c < 43584 + ? (c >= 43520 && c <= 43560) + : c <= 43586) + : (c <= 43595 || (c < 43642 + ? (c >= 43616 && c <= 43638) + : c <= 43642))) + : (c <= 43695 || (c < 43705 + ? (c < 43701 + ? c == 43697 + : c <= 43702) + : (c <= 43709 || c == 43712)))) + : (c <= 43714 || (c < 43785 + ? (c < 43762 + ? (c < 43744 + ? (c >= 43739 && c <= 43741) + : c <= 43754) + : (c <= 43764 || (c >= 43777 && c <= 43782))) + : (c <= 43790 || (c < 43816 + ? (c < 43808 + ? (c >= 43793 && c <= 43798) + : c <= 43814) + : (c <= 43822 || (c >= 43824 && c <= 43866))))))) + : (c <= 43881 || (c < 64287 + ? (c < 63744 + ? (c < 55216 + ? (c < 44032 + ? (c >= 43888 && c <= 44002) + : c <= 55203) + : (c <= 55238 || (c >= 55243 && c <= 55291))) + : (c <= 64109 || (c < 64275 + ? (c < 64256 + ? (c >= 64112 && c <= 64217) + : c <= 64262) + : (c <= 64279 || c == 64285)))) + : (c <= 64296 || (c < 64323 + ? (c < 64318 + ? (c < 64312 + ? (c >= 64298 && c <= 64310) + : c <= 64316) + : (c <= 64318 || (c >= 64320 && c <= 64321))) + : (c <= 64324 || (c < 64612 + ? (c < 64467 + ? (c >= 64326 && c <= 64433) + : c <= 64605) + : (c <= 64829 || (c >= 64848 && c <= 64911))))))))) + : (c <= 64967 || (c < 65599 + ? (c < 65382 + ? (c < 65147 + ? (c < 65139 + ? (c < 65137 + ? (c >= 65008 && c <= 65017) + : c <= 65137) + : (c <= 65139 || (c < 65145 + ? c == 65143 + : c <= 65145))) + : (c <= 65147 || (c < 65313 + ? (c < 65151 + ? c == 65149 + : c <= 65276) + : (c <= 65338 || (c >= 65345 && c <= 65370))))) + : (c <= 65437 || (c < 65498 + ? (c < 65482 + ? (c < 65474 + ? (c >= 65440 && c <= 65470) + : c <= 65479) + : (c <= 65487 || (c >= 65490 && c <= 65495))) + : (c <= 65500 || (c < 65576 + ? (c < 65549 + ? (c >= 65536 && c <= 65547) + : c <= 65574) + : (c <= 65594 || (c >= 65596 && c <= 65597))))))) + : (c <= 65613 || (c < 66464 + ? (c < 66208 + ? (c < 65856 + ? (c < 65664 + ? (c >= 65616 && c <= 65629) + : c <= 65786) + : (c <= 65908 || (c >= 66176 && c <= 66204))) + : (c <= 66256 || (c < 66384 + ? (c < 66349 + ? (c >= 66304 && c <= 66335) + : c <= 66378) + : (c <= 66421 || (c >= 66432 && c <= 66461))))) + : (c <= 66499 || (c < 66776 + ? (c < 66560 + ? (c < 66513 + ? (c >= 66504 && c <= 66511) + : c <= 66517) + : (c <= 66717 || (c >= 66736 && c <= 66771))) + : (c <= 66811 || (c < 66928 + ? (c < 66864 + ? (c >= 66816 && c <= 66855) + : c <= 66915) + : (c <= 66938 || (c >= 66940 && c <= 66954))))))))))) + : (c <= 66962 || (c < 68864 + ? (c < 67828 + ? (c < 67506 + ? (c < 67072 + ? (c < 66979 + ? (c < 66967 + ? (c >= 66964 && c <= 66965) + : c <= 66977) + : (c <= 66993 || (c < 67003 + ? (c >= 66995 && c <= 67001) + : c <= 67004))) + : (c <= 67382 || (c < 67456 + ? (c < 67424 + ? (c >= 67392 && c <= 67413) + : c <= 67431) + : (c <= 67461 || (c >= 67463 && c <= 67504))))) + : (c <= 67514 || (c < 67644 + ? (c < 67594 + ? (c < 67592 + ? (c >= 67584 && c <= 67589) + : c <= 67592) + : (c <= 67637 || (c >= 67639 && c <= 67640))) + : (c <= 67644 || (c < 67712 + ? (c < 67680 + ? (c >= 67647 && c <= 67669) + : c <= 67702) + : (c <= 67742 || (c >= 67808 && c <= 67826))))))) + : (c <= 67829 || (c < 68224 + ? (c < 68096 + ? (c < 67968 + ? (c < 67872 + ? (c >= 67840 && c <= 67861) + : c <= 67897) + : (c <= 68023 || (c >= 68030 && c <= 68031))) + : (c <= 68096 || (c < 68121 + ? (c < 68117 + ? (c >= 68112 && c <= 68115) + : c <= 68119) + : (c <= 68149 || (c >= 68192 && c <= 68220))))) + : (c <= 68252 || (c < 68448 + ? (c < 68352 + ? (c < 68297 + ? (c >= 68288 && c <= 68295) + : c <= 68324) + : (c <= 68405 || (c >= 68416 && c <= 68437))) + : (c <= 68466 || (c < 68736 + ? (c < 68608 + ? (c >= 68480 && c <= 68497) + : c <= 68680) + : (c <= 68786 || (c >= 68800 && c <= 68850))))))))) + : (c <= 68899 || (c < 70106 + ? (c < 69749 + ? (c < 69488 + ? (c < 69376 + ? (c < 69296 + ? (c >= 69248 && c <= 69289) + : c <= 69297) + : (c <= 69404 || (c < 69424 + ? c == 69415 + : c <= 69445))) + : (c <= 69505 || (c < 69635 + ? (c < 69600 + ? (c >= 69552 && c <= 69572) + : c <= 69622) + : (c <= 69687 || (c >= 69745 && c <= 69746))))) + : (c <= 69749 || (c < 69959 + ? (c < 69891 + ? (c < 69840 + ? (c >= 69763 && c <= 69807) + : c <= 69864) + : (c <= 69926 || c == 69956)) + : (c <= 69959 || (c < 70019 + ? (c < 70006 + ? (c >= 69968 && c <= 70002) + : c <= 70006) + : (c <= 70066 || (c >= 70081 && c <= 70084))))))) + : (c <= 70106 || (c < 70405 + ? (c < 70280 + ? (c < 70163 + ? (c < 70144 + ? c == 70108 + : c <= 70161) + : (c <= 70187 || (c >= 70272 && c <= 70278))) + : (c <= 70280 || (c < 70303 + ? (c < 70287 + ? (c >= 70282 && c <= 70285) + : c <= 70301) + : (c <= 70312 || (c >= 70320 && c <= 70366))))) + : (c <= 70412 || (c < 70453 + ? (c < 70442 + ? (c < 70419 + ? (c >= 70415 && c <= 70416) + : c <= 70440) + : (c <= 70448 || (c >= 70450 && c <= 70451))) + : (c <= 70457 || (c < 70493 + ? (c < 70480 + ? c == 70461 + : c <= 70480) + : (c <= 70497 || (c >= 70656 && c <= 70708))))))))))))) + : (c <= 70730 || (c < 119894 + ? (c < 73056 + ? (c < 72001 + ? (c < 71424 + ? (c < 71128 + ? (c < 70852 + ? (c < 70784 + ? (c >= 70751 && c <= 70753) + : c <= 70831) + : (c <= 70853 || (c < 71040 + ? c == 70855 + : c <= 71086))) + : (c <= 71131 || (c < 71296 + ? (c < 71236 + ? (c >= 71168 && c <= 71215) + : c <= 71236) + : (c <= 71338 || c == 71352)))) + : (c <= 71450 || (c < 71945 + ? (c < 71840 + ? (c < 71680 + ? (c >= 71488 && c <= 71494) + : c <= 71723) + : (c <= 71903 || (c >= 71935 && c <= 71942))) + : (c <= 71945 || (c < 71960 + ? (c < 71957 + ? (c >= 71948 && c <= 71955) + : c <= 71958) + : (c <= 71983 || c == 71999)))))) + : (c <= 72001 || (c < 72349 + ? (c < 72192 + ? (c < 72161 + ? (c < 72106 + ? (c >= 72096 && c <= 72103) + : c <= 72144) + : (c <= 72161 || c == 72163)) + : (c <= 72192 || (c < 72272 + ? (c < 72250 + ? (c >= 72203 && c <= 72242) + : c <= 72250) + : (c <= 72272 || (c >= 72284 && c <= 72329))))) + : (c <= 72349 || (c < 72818 + ? (c < 72714 + ? (c < 72704 + ? (c >= 72368 && c <= 72440) + : c <= 72712) + : (c <= 72750 || c == 72768)) + : (c <= 72847 || (c < 72971 + ? (c < 72968 + ? (c >= 72960 && c <= 72966) + : c <= 72969) + : (c <= 73008 || c == 73030)))))))) + : (c <= 73061 || (c < 93952 + ? (c < 82944 + ? (c < 73728 + ? (c < 73112 + ? (c < 73066 + ? (c >= 73063 && c <= 73064) + : c <= 73097) + : (c <= 73112 || (c < 73648 + ? (c >= 73440 && c <= 73458) + : c <= 73648))) + : (c <= 74649 || (c < 77712 + ? (c < 74880 + ? (c >= 74752 && c <= 74862) + : c <= 75075) + : (c <= 77808 || (c >= 77824 && c <= 78894))))) + : (c <= 83526 || (c < 92928 + ? (c < 92784 + ? (c < 92736 + ? (c >= 92160 && c <= 92728) + : c <= 92766) + : (c <= 92862 || (c >= 92880 && c <= 92909))) + : (c <= 92975 || (c < 93053 + ? (c < 93027 + ? (c >= 92992 && c <= 92995) + : c <= 93047) + : (c <= 93071 || (c >= 93760 && c <= 93823))))))) + : (c <= 94026 || (c < 110589 + ? (c < 94208 + ? (c < 94176 + ? (c < 94099 + ? c == 94032 + : c <= 94111) + : (c <= 94177 || c == 94179)) + : (c <= 100343 || (c < 110576 + ? (c < 101632 + ? (c >= 100352 && c <= 101589) + : c <= 101640) + : (c <= 110579 || (c >= 110581 && c <= 110587))))) + : (c <= 110590 || (c < 113664 + ? (c < 110948 + ? (c < 110928 + ? (c >= 110592 && c <= 110882) + : c <= 110930) + : (c <= 110951 || (c >= 110960 && c <= 111355))) + : (c <= 113770 || (c < 113808 + ? (c < 113792 + ? (c >= 113776 && c <= 113788) + : c <= 113800) + : (c <= 113817 || (c >= 119808 && c <= 119892))))))))))) + : (c <= 119964 || (c < 125259 + ? (c < 120572 + ? (c < 120086 + ? (c < 119995 + ? (c < 119973 + ? (c < 119970 + ? (c >= 119966 && c <= 119967) + : c <= 119970) + : (c <= 119974 || (c < 119982 + ? (c >= 119977 && c <= 119980) + : c <= 119993))) + : (c <= 119995 || (c < 120071 + ? (c < 120005 + ? (c >= 119997 && c <= 120003) + : c <= 120069) + : (c <= 120074 || (c >= 120077 && c <= 120084))))) + : (c <= 120092 || (c < 120138 + ? (c < 120128 + ? (c < 120123 + ? (c >= 120094 && c <= 120121) + : c <= 120126) + : (c <= 120132 || c == 120134)) + : (c <= 120144 || (c < 120514 + ? (c < 120488 + ? (c >= 120146 && c <= 120485) + : c <= 120512) + : (c <= 120538 || (c >= 120540 && c <= 120570))))))) + : (c <= 120596 || (c < 123191 + ? (c < 120714 + ? (c < 120656 + ? (c < 120630 + ? (c >= 120598 && c <= 120628) + : c <= 120654) + : (c <= 120686 || (c >= 120688 && c <= 120712))) + : (c <= 120744 || (c < 122624 + ? (c < 120772 + ? (c >= 120746 && c <= 120770) + : c <= 120779) + : (c <= 122654 || (c >= 123136 && c <= 123180))))) + : (c <= 123197 || (c < 124904 + ? (c < 123584 + ? (c < 123536 + ? c == 123214 + : c <= 123565) + : (c <= 123627 || (c >= 124896 && c <= 124902))) + : (c <= 124907 || (c < 124928 + ? (c < 124912 + ? (c >= 124909 && c <= 124910) + : c <= 124926) + : (c <= 125124 || (c >= 125184 && c <= 125251))))))))) + : (c <= 125259 || (c < 126559 + ? (c < 126535 + ? (c < 126505 + ? (c < 126497 + ? (c < 126469 + ? (c >= 126464 && c <= 126467) + : c <= 126495) + : (c <= 126498 || (c < 126503 + ? c == 126500 + : c <= 126503))) + : (c <= 126514 || (c < 126523 + ? (c < 126521 + ? (c >= 126516 && c <= 126519) + : c <= 126521) + : (c <= 126523 || c == 126530)))) + : (c <= 126535 || (c < 126548 + ? (c < 126541 + ? (c < 126539 + ? c == 126537 + : c <= 126539) + : (c <= 126543 || (c >= 126545 && c <= 126546))) + : (c <= 126548 || (c < 126555 + ? (c < 126553 + ? c == 126551 + : c <= 126553) + : (c <= 126555 || c == 126557)))))) + : (c <= 126559 || (c < 126625 + ? (c < 126580 + ? (c < 126567 + ? (c < 126564 + ? (c >= 126561 && c <= 126562) + : c <= 126564) + : (c <= 126570 || (c >= 126572 && c <= 126578))) + : (c <= 126583 || (c < 126592 + ? (c < 126590 + ? (c >= 126585 && c <= 126588) + : c <= 126590) + : (c <= 126601 || (c >= 126603 && c <= 126619))))) + : (c <= 126627 || (c < 177984 + ? (c < 131072 + ? (c < 126635 + ? (c >= 126629 && c <= 126633) + : c <= 126651) + : (c <= 173791 || (c >= 173824 && c <= 177976))) + : (c <= 178205 || (c < 194560 + ? (c < 183984 + ? (c >= 178208 && c <= 183969) + : c <= 191456) + : (c <= 195101 || (c >= 196608 && c <= 201546))))))))))))))))); +} + +static inline bool sym_identifier_character_set_3(int32_t c) { + return (c < 43616 + ? (c < 3782 + ? (c < 2748 + ? (c < 2045 + ? (c < 1015 + ? (c < 710 + ? (c < 181 + ? (c < '_' + ? (c < 'A' + ? (c >= '0' && c <= '9') + : c <= 'Z') + : (c <= '_' || (c < 170 + ? (c >= 'b' && c <= 'z') + : c <= 170))) + : (c <= 181 || (c < 192 + ? (c < 186 + ? c == 183 + : c <= 186) + : (c <= 214 || (c < 248 + ? (c >= 216 && c <= 246) + : c <= 705))))) + : (c <= 721 || (c < 891 + ? (c < 750 + ? (c < 748 + ? (c >= 736 && c <= 740) + : c <= 748) + : (c <= 750 || (c < 886 + ? (c >= 768 && c <= 884) + : c <= 887))) + : (c <= 893 || (c < 908 + ? (c < 902 + ? c == 895 + : c <= 906) + : (c <= 908 || (c < 931 + ? (c >= 910 && c <= 929) + : c <= 1013))))))) + : (c <= 1153 || (c < 1519 + ? (c < 1425 + ? (c < 1329 + ? (c < 1162 + ? (c >= 1155 && c <= 1159) + : c <= 1327) + : (c <= 1366 || (c < 1376 + ? c == 1369 + : c <= 1416))) + : (c <= 1469 || (c < 1476 + ? (c < 1473 + ? c == 1471 + : c <= 1474) + : (c <= 1477 || (c < 1488 + ? c == 1479 + : c <= 1514))))) + : (c <= 1522 || (c < 1770 + ? (c < 1646 + ? (c < 1568 + ? (c >= 1552 && c <= 1562) + : c <= 1641) + : (c <= 1747 || (c < 1759 + ? (c >= 1749 && c <= 1756) + : c <= 1768))) + : (c <= 1788 || (c < 1869 + ? (c < 1808 + ? c == 1791 + : c <= 1866) + : (c <= 1969 || (c < 2042 + ? (c >= 1984 && c <= 2037) + : c <= 2042))))))))) + : (c <= 2045 || (c < 2558 + ? (c < 2451 + ? (c < 2200 + ? (c < 2144 + ? (c < 2112 + ? (c >= 2048 && c <= 2093) + : c <= 2139) + : (c <= 2154 || (c < 2185 + ? (c >= 2160 && c <= 2183) + : c <= 2190))) + : (c <= 2273 || (c < 2417 + ? (c < 2406 + ? (c >= 2275 && c <= 2403) + : c <= 2415) + : (c <= 2435 || (c < 2447 + ? (c >= 2437 && c <= 2444) + : c <= 2448))))) + : (c <= 2472 || (c < 2507 + ? (c < 2486 + ? (c < 2482 + ? (c >= 2474 && c <= 2480) + : c <= 2482) + : (c <= 2489 || (c < 2503 + ? (c >= 2492 && c <= 2500) + : c <= 2504))) + : (c <= 2510 || (c < 2527 + ? (c < 2524 + ? c == 2519 + : c <= 2525) + : (c <= 2531 || (c < 2556 + ? (c >= 2534 && c <= 2545) + : c <= 2556))))))) + : (c <= 2558 || (c < 2635 + ? (c < 2610 + ? (c < 2575 + ? (c < 2565 + ? (c >= 2561 && c <= 2563) + : c <= 2570) + : (c <= 2576 || (c < 2602 + ? (c >= 2579 && c <= 2600) + : c <= 2608))) + : (c <= 2611 || (c < 2620 + ? (c < 2616 + ? (c >= 2613 && c <= 2614) + : c <= 2617) + : (c <= 2620 || (c < 2631 + ? (c >= 2622 && c <= 2626) + : c <= 2632))))) + : (c <= 2637 || (c < 2693 + ? (c < 2654 + ? (c < 2649 + ? c == 2641 + : c <= 2652) + : (c <= 2654 || (c < 2689 + ? (c >= 2662 && c <= 2677) + : c <= 2691))) + : (c <= 2701 || (c < 2730 + ? (c < 2707 + ? (c >= 2703 && c <= 2705) + : c <= 2728) + : (c <= 2736 || (c < 2741 + ? (c >= 2738 && c <= 2739) + : c <= 2745))))))))))) + : (c <= 2757 || (c < 3168 + ? (c < 2958 + ? (c < 2866 + ? (c < 2809 + ? (c < 2768 + ? (c < 2763 + ? (c >= 2759 && c <= 2761) + : c <= 2765) + : (c <= 2768 || (c < 2790 + ? (c >= 2784 && c <= 2787) + : c <= 2799))) + : (c <= 2815 || (c < 2831 + ? (c < 2821 + ? (c >= 2817 && c <= 2819) + : c <= 2828) + : (c <= 2832 || (c < 2858 + ? (c >= 2835 && c <= 2856) + : c <= 2864))))) + : (c <= 2867 || (c < 2908 + ? (c < 2887 + ? (c < 2876 + ? (c >= 2869 && c <= 2873) + : c <= 2884) + : (c <= 2888 || (c < 2901 + ? (c >= 2891 && c <= 2893) + : c <= 2903))) + : (c <= 2909 || (c < 2929 + ? (c < 2918 + ? (c >= 2911 && c <= 2915) + : c <= 2927) + : (c <= 2929 || (c < 2949 + ? (c >= 2946 && c <= 2947) + : c <= 2954))))))) + : (c <= 2960 || (c < 3031 + ? (c < 2984 + ? (c < 2972 + ? (c < 2969 + ? (c >= 2962 && c <= 2965) + : c <= 2970) + : (c <= 2972 || (c < 2979 + ? (c >= 2974 && c <= 2975) + : c <= 2980))) + : (c <= 2986 || (c < 3014 + ? (c < 3006 + ? (c >= 2990 && c <= 3001) + : c <= 3010) + : (c <= 3016 || (c < 3024 + ? (c >= 3018 && c <= 3021) + : c <= 3024))))) + : (c <= 3031 || (c < 3132 + ? (c < 3086 + ? (c < 3072 + ? (c >= 3046 && c <= 3055) + : c <= 3084) + : (c <= 3088 || (c < 3114 + ? (c >= 3090 && c <= 3112) + : c <= 3129))) + : (c <= 3140 || (c < 3157 + ? (c < 3146 + ? (c >= 3142 && c <= 3144) + : c <= 3149) + : (c <= 3158 || (c < 3165 + ? (c >= 3160 && c <= 3162) + : c <= 3165))))))))) + : (c <= 3171 || (c < 3450 + ? (c < 3293 + ? (c < 3242 + ? (c < 3205 + ? (c < 3200 + ? (c >= 3174 && c <= 3183) + : c <= 3203) + : (c <= 3212 || (c < 3218 + ? (c >= 3214 && c <= 3216) + : c <= 3240))) + : (c <= 3251 || (c < 3270 + ? (c < 3260 + ? (c >= 3253 && c <= 3257) + : c <= 3268) + : (c <= 3272 || (c < 3285 + ? (c >= 3274 && c <= 3277) + : c <= 3286))))) + : (c <= 3294 || (c < 3346 + ? (c < 3313 + ? (c < 3302 + ? (c >= 3296 && c <= 3299) + : c <= 3311) + : (c <= 3314 || (c < 3342 + ? (c >= 3328 && c <= 3340) + : c <= 3344))) + : (c <= 3396 || (c < 3412 + ? (c < 3402 + ? (c >= 3398 && c <= 3400) + : c <= 3406) + : (c <= 3415 || (c < 3430 + ? (c >= 3423 && c <= 3427) + : c <= 3439))))))) + : (c <= 3455 || (c < 3570 + ? (c < 3520 + ? (c < 3482 + ? (c < 3461 + ? (c >= 3457 && c <= 3459) + : c <= 3478) + : (c <= 3505 || (c < 3517 + ? (c >= 3507 && c <= 3515) + : c <= 3517))) + : (c <= 3526 || (c < 3542 + ? (c < 3535 + ? c == 3530 + : c <= 3540) + : (c <= 3542 || (c < 3558 + ? (c >= 3544 && c <= 3551) + : c <= 3567))))) + : (c <= 3571 || (c < 3718 + ? (c < 3664 + ? (c < 3648 + ? (c >= 3585 && c <= 3642) + : c <= 3662) + : (c <= 3673 || (c < 3716 + ? (c >= 3713 && c <= 3714) + : c <= 3716))) + : (c <= 3722 || (c < 3751 + ? (c < 3749 + ? (c >= 3724 && c <= 3747) + : c <= 3749) + : (c <= 3773 || (c >= 3776 && c <= 3780))))))))))))) + : (c <= 3782 || (c < 8025 + ? (c < 5888 + ? (c < 4688 + ? (c < 3953 + ? (c < 3872 + ? (c < 3804 + ? (c < 3792 + ? (c >= 3784 && c <= 3789) + : c <= 3801) + : (c <= 3807 || (c < 3864 + ? c == 3840 + : c <= 3865))) + : (c <= 3881 || (c < 3897 + ? (c < 3895 + ? c == 3893 + : c <= 3895) + : (c <= 3897 || (c < 3913 + ? (c >= 3902 && c <= 3911) + : c <= 3948))))) + : (c <= 3972 || (c < 4256 + ? (c < 4038 + ? (c < 3993 + ? (c >= 3974 && c <= 3991) + : c <= 4028) + : (c <= 4038 || (c < 4176 + ? (c >= 4096 && c <= 4169) + : c <= 4253))) + : (c <= 4293 || (c < 4304 + ? (c < 4301 + ? c == 4295 + : c <= 4301) + : (c <= 4346 || (c < 4682 + ? (c >= 4348 && c <= 4680) + : c <= 4685))))))) + : (c <= 4694 || (c < 4882 + ? (c < 4786 + ? (c < 4704 + ? (c < 4698 + ? c == 4696 + : c <= 4701) + : (c <= 4744 || (c < 4752 + ? (c >= 4746 && c <= 4749) + : c <= 4784))) + : (c <= 4789 || (c < 4802 + ? (c < 4800 + ? (c >= 4792 && c <= 4798) + : c <= 4800) + : (c <= 4805 || (c < 4824 + ? (c >= 4808 && c <= 4822) + : c <= 4880))))) + : (c <= 4885 || (c < 5112 + ? (c < 4969 + ? (c < 4957 + ? (c >= 4888 && c <= 4954) + : c <= 4959) + : (c <= 4977 || (c < 5024 + ? (c >= 4992 && c <= 5007) + : c <= 5109))) + : (c <= 5117 || (c < 5761 + ? (c < 5743 + ? (c >= 5121 && c <= 5740) + : c <= 5759) + : (c <= 5786 || (c < 5870 + ? (c >= 5792 && c <= 5866) + : c <= 5880))))))))) + : (c <= 5909 || (c < 6688 + ? (c < 6176 + ? (c < 6016 + ? (c < 5984 + ? (c < 5952 + ? (c >= 5919 && c <= 5940) + : c <= 5971) + : (c <= 5996 || (c < 6002 + ? (c >= 5998 && c <= 6000) + : c <= 6003))) + : (c <= 6099 || (c < 6112 + ? (c < 6108 + ? c == 6103 + : c <= 6109) + : (c <= 6121 || (c < 6159 + ? (c >= 6155 && c <= 6157) + : c <= 6169))))) + : (c <= 6264 || (c < 6470 + ? (c < 6400 + ? (c < 6320 + ? (c >= 6272 && c <= 6314) + : c <= 6389) + : (c <= 6430 || (c < 6448 + ? (c >= 6432 && c <= 6443) + : c <= 6459))) + : (c <= 6509 || (c < 6576 + ? (c < 6528 + ? (c >= 6512 && c <= 6516) + : c <= 6571) + : (c <= 6601 || (c < 6656 + ? (c >= 6608 && c <= 6618) + : c <= 6683))))))) + : (c <= 6750 || (c < 7232 + ? (c < 6847 + ? (c < 6800 + ? (c < 6783 + ? (c >= 6752 && c <= 6780) + : c <= 6793) + : (c <= 6809 || (c < 6832 + ? c == 6823 + : c <= 6845))) + : (c <= 6862 || (c < 7019 + ? (c < 6992 + ? (c >= 6912 && c <= 6988) + : c <= 7001) + : (c <= 7027 || (c < 7168 + ? (c >= 7040 && c <= 7155) + : c <= 7223))))) + : (c <= 7241 || (c < 7380 + ? (c < 7312 + ? (c < 7296 + ? (c >= 7245 && c <= 7293) + : c <= 7304) + : (c <= 7354 || (c < 7376 + ? (c >= 7357 && c <= 7359) + : c <= 7378))) + : (c <= 7418 || (c < 7968 + ? (c < 7960 + ? (c >= 7424 && c <= 7957) + : c <= 7965) + : (c <= 8005 || (c < 8016 + ? (c >= 8008 && c <= 8013) + : c <= 8023))))))))))) + : (c <= 8025 || (c < 11720 + ? (c < 8458 + ? (c < 8178 + ? (c < 8126 + ? (c < 8031 + ? (c < 8029 + ? c == 8027 + : c <= 8029) + : (c <= 8061 || (c < 8118 + ? (c >= 8064 && c <= 8116) + : c <= 8124))) + : (c <= 8126 || (c < 8144 + ? (c < 8134 + ? (c >= 8130 && c <= 8132) + : c <= 8140) + : (c <= 8147 || (c < 8160 + ? (c >= 8150 && c <= 8155) + : c <= 8172))))) + : (c <= 8180 || (c < 8336 + ? (c < 8276 + ? (c < 8255 + ? (c >= 8182 && c <= 8188) + : c <= 8256) + : (c <= 8276 || (c < 8319 + ? c == 8305 + : c <= 8319))) + : (c <= 8348 || (c < 8421 + ? (c < 8417 + ? (c >= 8400 && c <= 8412) + : c <= 8417) + : (c <= 8432 || (c < 8455 + ? c == 8450 + : c <= 8455))))))) + : (c <= 8467 || (c < 11499 + ? (c < 8490 + ? (c < 8484 + ? (c < 8472 + ? c == 8469 + : c <= 8477) + : (c <= 8484 || (c < 8488 + ? c == 8486 + : c <= 8488))) + : (c <= 8505 || (c < 8526 + ? (c < 8517 + ? (c >= 8508 && c <= 8511) + : c <= 8521) + : (c <= 8526 || (c < 11264 + ? (c >= 8544 && c <= 8584) + : c <= 11492))))) + : (c <= 11507 || (c < 11647 + ? (c < 11565 + ? (c < 11559 + ? (c >= 11520 && c <= 11557) + : c <= 11559) + : (c <= 11565 || (c < 11631 + ? (c >= 11568 && c <= 11623) + : c <= 11631))) + : (c <= 11670 || (c < 11696 + ? (c < 11688 + ? (c >= 11680 && c <= 11686) + : c <= 11694) + : (c <= 11702 || (c < 11712 + ? (c >= 11704 && c <= 11710) + : c <= 11718))))))))) + : (c <= 11726 || (c < 42623 + ? (c < 12540 + ? (c < 12337 + ? (c < 11744 + ? (c < 11736 + ? (c >= 11728 && c <= 11734) + : c <= 11742) + : (c <= 11775 || (c < 12321 + ? (c >= 12293 && c <= 12295) + : c <= 12335))) + : (c <= 12341 || (c < 12441 + ? (c < 12353 + ? (c >= 12344 && c <= 12348) + : c <= 12438) + : (c <= 12442 || (c < 12449 + ? (c >= 12445 && c <= 12447) + : c <= 12538))))) + : (c <= 12543 || (c < 19968 + ? (c < 12704 + ? (c < 12593 + ? (c >= 12549 && c <= 12591) + : c <= 12686) + : (c <= 12735 || (c < 13312 + ? (c >= 12784 && c <= 12799) + : c <= 19903))) + : (c <= 42124 || (c < 42512 + ? (c < 42240 + ? (c >= 42192 && c <= 42237) + : c <= 42508) + : (c <= 42539 || (c < 42612 + ? (c >= 42560 && c <= 42607) + : c <= 42621))))))) + : (c <= 42737 || (c < 43232 + ? (c < 42965 + ? (c < 42891 + ? (c < 42786 + ? (c >= 42775 && c <= 42783) + : c <= 42888) + : (c <= 42954 || (c < 42963 + ? (c >= 42960 && c <= 42961) + : c <= 42963))) + : (c <= 42969 || (c < 43072 + ? (c < 43052 + ? (c >= 42994 && c <= 43047) + : c <= 43052) + : (c <= 43123 || (c < 43216 + ? (c >= 43136 && c <= 43205) + : c <= 43225))))) + : (c <= 43255 || (c < 43471 + ? (c < 43312 + ? (c < 43261 + ? c == 43259 + : c <= 43309) + : (c <= 43347 || (c < 43392 + ? (c >= 43360 && c <= 43388) + : c <= 43456))) + : (c <= 43481 || (c < 43584 + ? (c < 43520 + ? (c >= 43488 && c <= 43518) + : c <= 43574) + : (c <= 43597 || (c >= 43600 && c <= 43609))))))))))))))) + : (c <= 43638 || (c < 71453 + ? (c < 67639 + ? (c < 65345 + ? (c < 64312 + ? (c < 43888 + ? (c < 43785 + ? (c < 43744 + ? (c < 43739 + ? (c >= 43642 && c <= 43714) + : c <= 43741) + : (c <= 43759 || (c < 43777 + ? (c >= 43762 && c <= 43766) + : c <= 43782))) + : (c <= 43790 || (c < 43816 + ? (c < 43808 + ? (c >= 43793 && c <= 43798) + : c <= 43814) + : (c <= 43822 || (c < 43868 + ? (c >= 43824 && c <= 43866) + : c <= 43881))))) + : (c <= 44010 || (c < 63744 + ? (c < 44032 + ? (c < 44016 + ? (c >= 44012 && c <= 44013) + : c <= 44025) + : (c <= 55203 || (c < 55243 + ? (c >= 55216 && c <= 55238) + : c <= 55291))) + : (c <= 64109 || (c < 64275 + ? (c < 64256 + ? (c >= 64112 && c <= 64217) + : c <= 64262) + : (c <= 64279 || (c < 64298 + ? (c >= 64285 && c <= 64296) + : c <= 64310))))))) + : (c <= 64316 || (c < 65075 + ? (c < 64612 + ? (c < 64323 + ? (c < 64320 + ? c == 64318 + : c <= 64321) + : (c <= 64324 || (c < 64467 + ? (c >= 64326 && c <= 64433) + : c <= 64605))) + : (c <= 64829 || (c < 65008 + ? (c < 64914 + ? (c >= 64848 && c <= 64911) + : c <= 64967) + : (c <= 65017 || (c < 65056 + ? (c >= 65024 && c <= 65039) + : c <= 65071))))) + : (c <= 65076 || (c < 65147 + ? (c < 65139 + ? (c < 65137 + ? (c >= 65101 && c <= 65103) + : c <= 65137) + : (c <= 65139 || (c < 65145 + ? c == 65143 + : c <= 65145))) + : (c <= 65147 || (c < 65296 + ? (c < 65151 + ? c == 65149 + : c <= 65276) + : (c <= 65305 || (c < 65343 + ? (c >= 65313 && c <= 65338) + : c <= 65343))))))))) + : (c <= 65370 || (c < 66513 + ? (c < 65664 + ? (c < 65536 + ? (c < 65482 + ? (c < 65474 + ? (c >= 65382 && c <= 65470) + : c <= 65479) + : (c <= 65487 || (c < 65498 + ? (c >= 65490 && c <= 65495) + : c <= 65500))) + : (c <= 65547 || (c < 65596 + ? (c < 65576 + ? (c >= 65549 && c <= 65574) + : c <= 65594) + : (c <= 65597 || (c < 65616 + ? (c >= 65599 && c <= 65613) + : c <= 65629))))) + : (c <= 65786 || (c < 66304 + ? (c < 66176 + ? (c < 66045 + ? (c >= 65856 && c <= 65908) + : c <= 66045) + : (c <= 66204 || (c < 66272 + ? (c >= 66208 && c <= 66256) + : c <= 66272))) + : (c <= 66335 || (c < 66432 + ? (c < 66384 + ? (c >= 66349 && c <= 66378) + : c <= 66426) + : (c <= 66461 || (c < 66504 + ? (c >= 66464 && c <= 66499) + : c <= 66511))))))) + : (c <= 66517 || (c < 66979 + ? (c < 66864 + ? (c < 66736 + ? (c < 66720 + ? (c >= 66560 && c <= 66717) + : c <= 66729) + : (c <= 66771 || (c < 66816 + ? (c >= 66776 && c <= 66811) + : c <= 66855))) + : (c <= 66915 || (c < 66956 + ? (c < 66940 + ? (c >= 66928 && c <= 66938) + : c <= 66954) + : (c <= 66962 || (c < 66967 + ? (c >= 66964 && c <= 66965) + : c <= 66977))))) + : (c <= 66993 || (c < 67456 + ? (c < 67072 + ? (c < 67003 + ? (c >= 66995 && c <= 67001) + : c <= 67004) + : (c <= 67382 || (c < 67424 + ? (c >= 67392 && c <= 67413) + : c <= 67431))) + : (c <= 67461 || (c < 67584 + ? (c < 67506 + ? (c >= 67463 && c <= 67504) + : c <= 67514) + : (c <= 67589 || (c < 67594 + ? c == 67592 + : c <= 67637))))))))))) + : (c <= 67640 || (c < 69956 + ? (c < 68448 + ? (c < 68101 + ? (c < 67828 + ? (c < 67680 + ? (c < 67647 + ? c == 67644 + : c <= 67669) + : (c <= 67702 || (c < 67808 + ? (c >= 67712 && c <= 67742) + : c <= 67826))) + : (c <= 67829 || (c < 67968 + ? (c < 67872 + ? (c >= 67840 && c <= 67861) + : c <= 67897) + : (c <= 68023 || (c < 68096 + ? (c >= 68030 && c <= 68031) + : c <= 68099))))) + : (c <= 68102 || (c < 68192 + ? (c < 68121 + ? (c < 68117 + ? (c >= 68108 && c <= 68115) + : c <= 68119) + : (c <= 68149 || (c < 68159 + ? (c >= 68152 && c <= 68154) + : c <= 68159))) + : (c <= 68220 || (c < 68297 + ? (c < 68288 + ? (c >= 68224 && c <= 68252) + : c <= 68295) + : (c <= 68326 || (c < 68416 + ? (c >= 68352 && c <= 68405) + : c <= 68437))))))) + : (c <= 68466 || (c < 69424 + ? (c < 68912 + ? (c < 68736 + ? (c < 68608 + ? (c >= 68480 && c <= 68497) + : c <= 68680) + : (c <= 68786 || (c < 68864 + ? (c >= 68800 && c <= 68850) + : c <= 68903))) + : (c <= 68921 || (c < 69296 + ? (c < 69291 + ? (c >= 69248 && c <= 69289) + : c <= 69292) + : (c <= 69297 || (c < 69415 + ? (c >= 69376 && c <= 69404) + : c <= 69415))))) + : (c <= 69456 || (c < 69759 + ? (c < 69600 + ? (c < 69552 + ? (c >= 69488 && c <= 69509) + : c <= 69572) + : (c <= 69622 || (c < 69734 + ? (c >= 69632 && c <= 69702) + : c <= 69749))) + : (c <= 69818 || (c < 69872 + ? (c < 69840 + ? c == 69826 + : c <= 69864) + : (c <= 69881 || (c < 69942 + ? (c >= 69888 && c <= 69940) + : c <= 69951))))))))) + : (c <= 69959 || (c < 70459 + ? (c < 70282 + ? (c < 70108 + ? (c < 70016 + ? (c < 70006 + ? (c >= 69968 && c <= 70003) + : c <= 70006) + : (c <= 70084 || (c < 70094 + ? (c >= 70089 && c <= 70092) + : c <= 70106))) + : (c <= 70108 || (c < 70206 + ? (c < 70163 + ? (c >= 70144 && c <= 70161) + : c <= 70199) + : (c <= 70206 || (c < 70280 + ? (c >= 70272 && c <= 70278) + : c <= 70280))))) + : (c <= 70285 || (c < 70405 + ? (c < 70320 + ? (c < 70303 + ? (c >= 70287 && c <= 70301) + : c <= 70312) + : (c <= 70378 || (c < 70400 + ? (c >= 70384 && c <= 70393) + : c <= 70403))) + : (c <= 70412 || (c < 70442 + ? (c < 70419 + ? (c >= 70415 && c <= 70416) + : c <= 70440) + : (c <= 70448 || (c < 70453 + ? (c >= 70450 && c <= 70451) + : c <= 70457))))))) + : (c <= 70468 || (c < 70855 + ? (c < 70502 + ? (c < 70480 + ? (c < 70475 + ? (c >= 70471 && c <= 70472) + : c <= 70477) + : (c <= 70480 || (c < 70493 + ? c == 70487 + : c <= 70499))) + : (c <= 70508 || (c < 70736 + ? (c < 70656 + ? (c >= 70512 && c <= 70516) + : c <= 70730) + : (c <= 70745 || (c < 70784 + ? (c >= 70750 && c <= 70753) + : c <= 70853))))) + : (c <= 70855 || (c < 71236 + ? (c < 71096 + ? (c < 71040 + ? (c >= 70864 && c <= 70873) + : c <= 71093) + : (c <= 71104 || (c < 71168 + ? (c >= 71128 && c <= 71133) + : c <= 71232))) + : (c <= 71236 || (c < 71360 + ? (c < 71296 + ? (c >= 71248 && c <= 71257) + : c <= 71352) + : (c <= 71369 || (c >= 71424 && c <= 71450))))))))))))) + : (c <= 71467 || (c < 119973 + ? (c < 77824 + ? (c < 72760 + ? (c < 72016 + ? (c < 71945 + ? (c < 71680 + ? (c < 71488 + ? (c >= 71472 && c <= 71481) + : c <= 71494) + : (c <= 71738 || (c < 71935 + ? (c >= 71840 && c <= 71913) + : c <= 71942))) + : (c <= 71945 || (c < 71960 + ? (c < 71957 + ? (c >= 71948 && c <= 71955) + : c <= 71958) + : (c <= 71989 || (c < 71995 + ? (c >= 71991 && c <= 71992) + : c <= 72003))))) + : (c <= 72025 || (c < 72263 + ? (c < 72154 + ? (c < 72106 + ? (c >= 72096 && c <= 72103) + : c <= 72151) + : (c <= 72161 || (c < 72192 + ? (c >= 72163 && c <= 72164) + : c <= 72254))) + : (c <= 72263 || (c < 72368 + ? (c < 72349 + ? (c >= 72272 && c <= 72345) + : c <= 72349) + : (c <= 72440 || (c < 72714 + ? (c >= 72704 && c <= 72712) + : c <= 72758))))))) + : (c <= 72768 || (c < 73056 + ? (c < 72968 + ? (c < 72850 + ? (c < 72818 + ? (c >= 72784 && c <= 72793) + : c <= 72847) + : (c <= 72871 || (c < 72960 + ? (c >= 72873 && c <= 72886) + : c <= 72966))) + : (c <= 72969 || (c < 73020 + ? (c < 73018 + ? (c >= 72971 && c <= 73014) + : c <= 73018) + : (c <= 73021 || (c < 73040 + ? (c >= 73023 && c <= 73031) + : c <= 73049))))) + : (c <= 73061 || (c < 73440 + ? (c < 73104 + ? (c < 73066 + ? (c >= 73063 && c <= 73064) + : c <= 73102) + : (c <= 73105 || (c < 73120 + ? (c >= 73107 && c <= 73112) + : c <= 73129))) + : (c <= 73462 || (c < 74752 + ? (c < 73728 + ? c == 73648 + : c <= 74649) + : (c <= 74862 || (c < 77712 + ? (c >= 74880 && c <= 75075) + : c <= 77808))))))))) + : (c <= 78894 || (c < 110576 + ? (c < 93027 + ? (c < 92864 + ? (c < 92736 + ? (c < 92160 + ? (c >= 82944 && c <= 83526) + : c <= 92728) + : (c <= 92766 || (c < 92784 + ? (c >= 92768 && c <= 92777) + : c <= 92862))) + : (c <= 92873 || (c < 92928 + ? (c < 92912 + ? (c >= 92880 && c <= 92909) + : c <= 92916) + : (c <= 92982 || (c < 93008 + ? (c >= 92992 && c <= 92995) + : c <= 93017))))) + : (c <= 93047 || (c < 94176 + ? (c < 93952 + ? (c < 93760 + ? (c >= 93053 && c <= 93071) + : c <= 93823) + : (c <= 94026 || (c < 94095 + ? (c >= 94031 && c <= 94087) + : c <= 94111))) + : (c <= 94177 || (c < 94208 + ? (c < 94192 + ? (c >= 94179 && c <= 94180) + : c <= 94193) + : (c <= 100343 || (c < 101632 + ? (c >= 100352 && c <= 101589) + : c <= 101640))))))) + : (c <= 110579 || (c < 118528 + ? (c < 110960 + ? (c < 110592 + ? (c < 110589 + ? (c >= 110581 && c <= 110587) + : c <= 110590) + : (c <= 110882 || (c < 110948 + ? (c >= 110928 && c <= 110930) + : c <= 110951))) + : (c <= 111355 || (c < 113792 + ? (c < 113776 + ? (c >= 113664 && c <= 113770) + : c <= 113788) + : (c <= 113800 || (c < 113821 + ? (c >= 113808 && c <= 113817) + : c <= 113822))))) + : (c <= 118573 || (c < 119210 + ? (c < 119149 + ? (c < 119141 + ? (c >= 118576 && c <= 118598) + : c <= 119145) + : (c <= 119154 || (c < 119173 + ? (c >= 119163 && c <= 119170) + : c <= 119179))) + : (c <= 119213 || (c < 119894 + ? (c < 119808 + ? (c >= 119362 && c <= 119364) + : c <= 119892) + : (c <= 119964 || (c < 119970 + ? (c >= 119966 && c <= 119967) + : c <= 119970))))))))))) + : (c <= 119974 || (c < 124912 + ? (c < 120746 + ? (c < 120134 + ? (c < 120071 + ? (c < 119995 + ? (c < 119982 + ? (c >= 119977 && c <= 119980) + : c <= 119993) + : (c <= 119995 || (c < 120005 + ? (c >= 119997 && c <= 120003) + : c <= 120069))) + : (c <= 120074 || (c < 120094 + ? (c < 120086 + ? (c >= 120077 && c <= 120084) + : c <= 120092) + : (c <= 120121 || (c < 120128 + ? (c >= 120123 && c <= 120126) + : c <= 120132))))) + : (c <= 120134 || (c < 120572 + ? (c < 120488 + ? (c < 120146 + ? (c >= 120138 && c <= 120144) + : c <= 120485) + : (c <= 120512 || (c < 120540 + ? (c >= 120514 && c <= 120538) + : c <= 120570))) + : (c <= 120596 || (c < 120656 + ? (c < 120630 + ? (c >= 120598 && c <= 120628) + : c <= 120654) + : (c <= 120686 || (c < 120714 + ? (c >= 120688 && c <= 120712) + : c <= 120744))))))) + : (c <= 120770 || (c < 122907 + ? (c < 121476 + ? (c < 121344 + ? (c < 120782 + ? (c >= 120772 && c <= 120779) + : c <= 120831) + : (c <= 121398 || (c < 121461 + ? (c >= 121403 && c <= 121452) + : c <= 121461))) + : (c <= 121476 || (c < 122624 + ? (c < 121505 + ? (c >= 121499 && c <= 121503) + : c <= 121519) + : (c <= 122654 || (c < 122888 + ? (c >= 122880 && c <= 122886) + : c <= 122904))))) + : (c <= 122913 || (c < 123214 + ? (c < 123136 + ? (c < 122918 + ? (c >= 122915 && c <= 122916) + : c <= 122922) + : (c <= 123180 || (c < 123200 + ? (c >= 123184 && c <= 123197) + : c <= 123209))) + : (c <= 123214 || (c < 124896 + ? (c < 123584 + ? (c >= 123536 && c <= 123566) + : c <= 123641) + : (c <= 124902 || (c < 124909 + ? (c >= 124904 && c <= 124907) + : c <= 124910))))))))) + : (c <= 124926 || (c < 126557 + ? (c < 126521 + ? (c < 126469 + ? (c < 125184 + ? (c < 125136 + ? (c >= 124928 && c <= 125124) + : c <= 125142) + : (c <= 125259 || (c < 126464 + ? (c >= 125264 && c <= 125273) + : c <= 126467))) + : (c <= 126495 || (c < 126503 + ? (c < 126500 + ? (c >= 126497 && c <= 126498) + : c <= 126500) + : (c <= 126503 || (c < 126516 + ? (c >= 126505 && c <= 126514) + : c <= 126519))))) + : (c <= 126521 || (c < 126541 + ? (c < 126535 + ? (c < 126530 + ? c == 126523 + : c <= 126530) + : (c <= 126535 || (c < 126539 + ? c == 126537 + : c <= 126539))) + : (c <= 126543 || (c < 126551 + ? (c < 126548 + ? (c >= 126545 && c <= 126546) + : c <= 126548) + : (c <= 126551 || (c < 126555 + ? c == 126553 + : c <= 126555))))))) + : (c <= 126557 || (c < 126629 + ? (c < 126580 + ? (c < 126564 + ? (c < 126561 + ? c == 126559 + : c <= 126562) + : (c <= 126564 || (c < 126572 + ? (c >= 126567 && c <= 126570) + : c <= 126578))) + : (c <= 126583 || (c < 126592 + ? (c < 126590 + ? (c >= 126585 && c <= 126588) + : c <= 126590) + : (c <= 126601 || (c < 126625 + ? (c >= 126603 && c <= 126619) + : c <= 126627))))) + : (c <= 126633 || (c < 178208 + ? (c < 131072 + ? (c < 130032 + ? (c >= 126635 && c <= 126651) + : c <= 130041) + : (c <= 173791 || (c < 177984 + ? (c >= 173824 && c <= 177976) + : c <= 178205))) + : (c <= 183969 || (c < 196608 + ? (c < 194560 + ? (c >= 183984 && c <= 191456) + : c <= 195101) + : (c <= 201546 || (c >= 917760 && c <= 917999))))))))))))))))); +} + +static inline bool sym_identifier_character_set_4(int32_t c) { return (c < 43616 ? (c < 3782 ? (c < 2748 @@ -2200,74 +4044,78 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { eof = lexer->eof(lexer); switch (state) { case 0: - if (eof) ADVANCE(17); - if (lookahead == '"') ADVANCE(32); - if (lookahead == '#') ADVANCE(18); + if (eof) ADVANCE(18); + if (lookahead == '"') ADVANCE(42); + if (lookahead == '#') ADVANCE(19); if (lookahead == '+') ADVANCE(4); - if (lookahead == ',') ADVANCE(37); - if (lookahead == '-') ADVANCE(26); - if (lookahead == ':') ADVANCE(41); - if (lookahead == '=') ADVANCE(23); - if (lookahead == '[') ADVANCE(36); + if (lookahead == ',') ADVANCE(47); + if (lookahead == '-') ADVANCE(36); + if (lookahead == ':') ADVANCE(51); + if (lookahead == '=') ADVANCE(24); + if (lookahead == '[') ADVANCE(46); if (lookahead == '\\') ADVANCE(5); - if (lookahead == ']') ADVANCE(38); + if (lookahead == ']') ADVANCE(48); if (lookahead == '`') ADVANCE(15); - if (lookahead == '{') ADVANCE(39); - if (lookahead == '}') ADVANCE(40); + if (lookahead == 'f') ADVANCE(26); + if (lookahead == 't') ADVANCE(30); + if (lookahead == '{') ADVANCE(49); + if (lookahead == '}') ADVANCE(50); if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ') SKIP(16) - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(27); - if (sym_identifier_character_set_1(lookahead)) ADVANCE(25); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(37); + if (sym_identifier_character_set_1(lookahead)) ADVANCE(33); END_STATE(); case 1: if (lookahead == '\n') SKIP(2) - if (lookahead == '"') ADVANCE(32); - if (lookahead == '#') ADVANCE(19); + if (lookahead == '"') ADVANCE(42); + if (lookahead == '#') ADVANCE(20); if (lookahead == '\\') ADVANCE(5); if (('\t' <= lookahead && lookahead <= '\r') || - lookahead == ' ') ADVANCE(30); - if (lookahead != 0) ADVANCE(31); + lookahead == ' ') ADVANCE(40); + if (lookahead != 0) ADVANCE(41); END_STATE(); case 2: if (lookahead == '\n') SKIP(2) - if (lookahead == '#') ADVANCE(19); + if (lookahead == '#') ADVANCE(20); if (('\t' <= lookahead && lookahead <= '\r') || - lookahead == ' ') ADVANCE(30); + lookahead == ' ') ADVANCE(40); if (lookahead != 0 && lookahead != '"' && - lookahead != '\\') ADVANCE(31); + lookahead != '\\') ADVANCE(41); END_STATE(); case 3: - if (lookahead == '"') ADVANCE(29); - if (lookahead == '#') ADVANCE(18); - if (lookahead == '-') ADVANCE(26); - if (lookahead == '[') ADVANCE(36); - if (lookahead == ']') ADVANCE(38); + if (lookahead == '"') ADVANCE(39); + if (lookahead == '#') ADVANCE(19); + if (lookahead == '-') ADVANCE(36); + if (lookahead == '[') ADVANCE(46); + if (lookahead == ']') ADVANCE(48); if (lookahead == '`') ADVANCE(15); - if (lookahead == '{') ADVANCE(39); + if (lookahead == 'f') ADVANCE(26); + if (lookahead == 't') ADVANCE(30); + if (lookahead == '{') ADVANCE(49); if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ') SKIP(3) - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(27); - if (sym_identifier_character_set_1(lookahead)) ADVANCE(25); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(37); + if (sym_identifier_character_set_1(lookahead)) ADVANCE(33); END_STATE(); case 4: - if (lookahead == '=') ADVANCE(24); + if (lookahead == '=') ADVANCE(25); END_STATE(); case 5: if (lookahead == 'U') ADVANCE(14); if (lookahead == 'u') ADVANCE(10); if (lookahead == 'x') ADVANCE(8); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(35); - if (lookahead != 0) ADVANCE(33); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(45); + if (lookahead != 0) ADVANCE(43); END_STATE(); case 6: - if (lookahead == '`') ADVANCE(28); + if (lookahead == '`') ADVANCE(38); if (lookahead != 0) ADVANCE(6); END_STATE(); case 7: if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || - ('a' <= lookahead && lookahead <= 'f')) ADVANCE(33); + ('a' <= lookahead && lookahead <= 'f')) ADVANCE(43); END_STATE(); case 8: if (('0' <= lookahead && lookahead <= '9') || @@ -2309,127 +4157,182 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { lookahead != '`') ADVANCE(6); END_STATE(); case 16: - if (eof) ADVANCE(17); - if (lookahead == '"') ADVANCE(29); - if (lookahead == '#') ADVANCE(18); + if (eof) ADVANCE(18); + if (lookahead == '"') ADVANCE(39); + if (lookahead == '#') ADVANCE(19); if (lookahead == '+') ADVANCE(4); - if (lookahead == ',') ADVANCE(37); - if (lookahead == '-') ADVANCE(26); - if (lookahead == ':') ADVANCE(41); - if (lookahead == '=') ADVANCE(23); - if (lookahead == '[') ADVANCE(36); - if (lookahead == ']') ADVANCE(38); + if (lookahead == ',') ADVANCE(47); + if (lookahead == '-') ADVANCE(36); + if (lookahead == ':') ADVANCE(51); + if (lookahead == '=') ADVANCE(24); + if (lookahead == '[') ADVANCE(46); + if (lookahead == ']') ADVANCE(48); if (lookahead == '`') ADVANCE(15); - if (lookahead == '{') ADVANCE(39); - if (lookahead == '}') ADVANCE(40); + if (lookahead == 'f') ADVANCE(26); + if (lookahead == 't') ADVANCE(30); + if (lookahead == '{') ADVANCE(49); + if (lookahead == '}') ADVANCE(50); if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ') SKIP(16) - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(27); - if (sym_identifier_character_set_1(lookahead)) ADVANCE(25); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(37); + if (sym_identifier_character_set_1(lookahead)) ADVANCE(33); END_STATE(); case 17: - ACCEPT_TOKEN(ts_builtin_sym_end); + if (eof) ADVANCE(18); + if (lookahead == '#') ADVANCE(19); + if (lookahead == ',') ADVANCE(47); + if (lookahead == ']') ADVANCE(48); + if (lookahead == '}') ADVANCE(50); + if (('\t' <= lookahead && lookahead <= '\r') || + lookahead == ' ') SKIP(17) + if (sym_identifier_character_set_2(lookahead)) ADVANCE(33); END_STATE(); case 18: - ACCEPT_TOKEN(anon_sym_POUND); + ACCEPT_TOKEN(ts_builtin_sym_end); END_STATE(); case 19: ACCEPT_TOKEN(anon_sym_POUND); - if (lookahead != 0 && - lookahead != '\n' && - lookahead != '"' && - lookahead != '\\') ADVANCE(31); END_STATE(); case 20: ACCEPT_TOKEN(anon_sym_POUND); if (lookahead != 0 && - lookahead != '\n') ADVANCE(22); + lookahead != '\n' && + lookahead != '"' && + lookahead != '\\') ADVANCE(41); END_STATE(); case 21: - ACCEPT_TOKEN(aux_sym_comment_token1); - if (lookahead == '#') ADVANCE(20); - if (lookahead == '\t' || - (11 <= lookahead && lookahead <= '\r') || - lookahead == ' ') ADVANCE(21); + ACCEPT_TOKEN(anon_sym_POUND); if (lookahead != 0 && - lookahead != '\n') ADVANCE(22); + lookahead != '\n') ADVANCE(23); END_STATE(); case 22: ACCEPT_TOKEN(aux_sym_comment_token1); - if (lookahead != 0 && - lookahead != '\n') ADVANCE(22); - END_STATE(); - case 23: - ACCEPT_TOKEN(anon_sym_EQ); - END_STATE(); - case 24: - ACCEPT_TOKEN(anon_sym_PLUS_EQ); - END_STATE(); - case 25: - ACCEPT_TOKEN(sym_identifier); - if (sym_identifier_character_set_2(lookahead)) ADVANCE(25); - END_STATE(); - case 26: - ACCEPT_TOKEN(anon_sym_DASH); - END_STATE(); - case 27: - ACCEPT_TOKEN(aux_sym_integer_literal_token1); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(27); - END_STATE(); - case 28: - ACCEPT_TOKEN(sym_raw_string_literal); - END_STATE(); - case 29: - ACCEPT_TOKEN(anon_sym_DQUOTE); - END_STATE(); - case 30: - ACCEPT_TOKEN(aux_sym_interpreted_string_literal_token1); - if (lookahead == '#') ADVANCE(19); + if (lookahead == '#') ADVANCE(21); if (lookahead == '\t' || (11 <= lookahead && lookahead <= '\r') || - lookahead == ' ') ADVANCE(30); + lookahead == ' ') ADVANCE(22); + if (lookahead != 0 && + lookahead != '\n') ADVANCE(23); + END_STATE(); + case 23: + ACCEPT_TOKEN(aux_sym_comment_token1); + if (lookahead != 0 && + lookahead != '\n') ADVANCE(23); + END_STATE(); + case 24: + ACCEPT_TOKEN(anon_sym_EQ); + END_STATE(); + case 25: + ACCEPT_TOKEN(anon_sym_PLUS_EQ); + END_STATE(); + case 26: + ACCEPT_TOKEN(sym_identifier); + if (lookahead == 'a') ADVANCE(29); + if (sym_identifier_character_set_3(lookahead)) ADVANCE(33); + END_STATE(); + case 27: + ACCEPT_TOKEN(sym_identifier); + if (lookahead == 'e') ADVANCE(34); + if (sym_identifier_character_set_4(lookahead)) ADVANCE(33); + END_STATE(); + case 28: + ACCEPT_TOKEN(sym_identifier); + if (lookahead == 'e') ADVANCE(35); + if (sym_identifier_character_set_4(lookahead)) ADVANCE(33); + END_STATE(); + case 29: + ACCEPT_TOKEN(sym_identifier); + if (lookahead == 'l') ADVANCE(31); + if (sym_identifier_character_set_4(lookahead)) ADVANCE(33); + END_STATE(); + case 30: + ACCEPT_TOKEN(sym_identifier); + if (lookahead == 'r') ADVANCE(32); + if (sym_identifier_character_set_4(lookahead)) ADVANCE(33); + END_STATE(); + case 31: + ACCEPT_TOKEN(sym_identifier); + if (lookahead == 's') ADVANCE(28); + if (sym_identifier_character_set_4(lookahead)) ADVANCE(33); + END_STATE(); + case 32: + ACCEPT_TOKEN(sym_identifier); + if (lookahead == 'u') ADVANCE(27); + if (sym_identifier_character_set_4(lookahead)) ADVANCE(33); + END_STATE(); + case 33: + ACCEPT_TOKEN(sym_identifier); + if (sym_identifier_character_set_4(lookahead)) ADVANCE(33); + END_STATE(); + case 34: + ACCEPT_TOKEN(anon_sym_true); + if (sym_identifier_character_set_4(lookahead)) ADVANCE(33); + END_STATE(); + case 35: + ACCEPT_TOKEN(anon_sym_false); + if (sym_identifier_character_set_4(lookahead)) ADVANCE(33); + END_STATE(); + case 36: + ACCEPT_TOKEN(anon_sym_DASH); + END_STATE(); + case 37: + ACCEPT_TOKEN(aux_sym_integer_literal_token1); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(37); + END_STATE(); + case 38: + ACCEPT_TOKEN(sym_raw_string_literal); + END_STATE(); + case 39: + ACCEPT_TOKEN(anon_sym_DQUOTE); + END_STATE(); + case 40: + ACCEPT_TOKEN(aux_sym_interpreted_string_literal_token1); + if (lookahead == '#') ADVANCE(20); + if (lookahead == '\t' || + (11 <= lookahead && lookahead <= '\r') || + lookahead == ' ') ADVANCE(40); if (lookahead != 0 && lookahead != '\n' && lookahead != '"' && - lookahead != '\\') ADVANCE(31); + lookahead != '\\') ADVANCE(41); END_STATE(); - case 31: + case 41: ACCEPT_TOKEN(aux_sym_interpreted_string_literal_token1); if (lookahead != 0 && lookahead != '\n' && lookahead != '"' && - lookahead != '\\') ADVANCE(31); + lookahead != '\\') ADVANCE(41); END_STATE(); - case 32: + case 42: ACCEPT_TOKEN(anon_sym_DQUOTE2); END_STATE(); - case 33: + case 43: ACCEPT_TOKEN(sym_escape_sequence); END_STATE(); - case 34: + case 44: ACCEPT_TOKEN(sym_escape_sequence); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(33); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(43); END_STATE(); - case 35: + case 45: ACCEPT_TOKEN(sym_escape_sequence); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(34); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(44); END_STATE(); - case 36: + case 46: ACCEPT_TOKEN(anon_sym_LBRACK); END_STATE(); - case 37: + case 47: ACCEPT_TOKEN(anon_sym_COMMA); END_STATE(); - case 38: + case 48: ACCEPT_TOKEN(anon_sym_RBRACK); END_STATE(); - case 39: + case 49: ACCEPT_TOKEN(anon_sym_LBRACE); END_STATE(); - case 40: + case 50: ACCEPT_TOKEN(anon_sym_RBRACE); END_STATE(); - case 41: + case 51: ACCEPT_TOKEN(anon_sym_COLON); END_STATE(); default: @@ -2439,56 +4342,57 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { static const TSLexMode ts_lex_modes[STATE_COUNT] = { [0] = {.lex_state = 0}, - [1] = {.lex_state = 0}, + [1] = {.lex_state = 17}, [2] = {.lex_state = 3}, [3] = {.lex_state = 3}, [4] = {.lex_state = 3}, [5] = {.lex_state = 3}, [6] = {.lex_state = 3}, [7] = {.lex_state = 3}, - [8] = {.lex_state = 0}, - [9] = {.lex_state = 0}, - [10] = {.lex_state = 0}, - [11] = {.lex_state = 0}, - [12] = {.lex_state = 0}, - [13] = {.lex_state = 0}, - [14] = {.lex_state = 0}, - [15] = {.lex_state = 0}, - [16] = {.lex_state = 0}, - [17] = {.lex_state = 0}, - [18] = {.lex_state = 0}, - [19] = {.lex_state = 0}, - [20] = {.lex_state = 0}, - [21] = {.lex_state = 0}, - [22] = {.lex_state = 0}, - [23] = {.lex_state = 0}, - [24] = {.lex_state = 0}, - [25] = {.lex_state = 1}, + [8] = {.lex_state = 17}, + [9] = {.lex_state = 17}, + [10] = {.lex_state = 17}, + [11] = {.lex_state = 17}, + [12] = {.lex_state = 17}, + [13] = {.lex_state = 17}, + [14] = {.lex_state = 17}, + [15] = {.lex_state = 17}, + [16] = {.lex_state = 17}, + [17] = {.lex_state = 17}, + [18] = {.lex_state = 17}, + [19] = {.lex_state = 17}, + [20] = {.lex_state = 17}, + [21] = {.lex_state = 17}, + [22] = {.lex_state = 17}, + [23] = {.lex_state = 17}, + [24] = {.lex_state = 17}, + [25] = {.lex_state = 17}, [26] = {.lex_state = 1}, [27] = {.lex_state = 1}, - [28] = {.lex_state = 0}, + [28] = {.lex_state = 1}, [29] = {.lex_state = 0}, [30] = {.lex_state = 0}, [31] = {.lex_state = 0}, [32] = {.lex_state = 0}, - [33] = {.lex_state = 0}, - [34] = {.lex_state = 0}, + [33] = {.lex_state = 17}, + [34] = {.lex_state = 1}, [35] = {.lex_state = 0}, - [36] = {.lex_state = 1}, - [37] = {.lex_state = 0}, - [38] = {.lex_state = 0}, - [39] = {.lex_state = 0}, - [40] = {.lex_state = 0}, + [36] = {.lex_state = 0}, + [37] = {.lex_state = 17}, + [38] = {.lex_state = 17}, + [39] = {.lex_state = 17}, + [40] = {.lex_state = 17}, [41] = {.lex_state = 0}, [42] = {.lex_state = 0}, - [43] = {.lex_state = 0}, + [43] = {.lex_state = 17}, [44] = {.lex_state = 0}, [45] = {.lex_state = 0}, - [46] = {.lex_state = 0}, - [47] = {.lex_state = 21}, - [48] = {.lex_state = 0}, + [46] = {.lex_state = 17}, + [47] = {.lex_state = 0}, + [48] = {.lex_state = 22}, [49] = {.lex_state = 0}, - [50] = {(TSStateId)(-1)}, + [50] = {.lex_state = 0}, + [51] = {(TSStateId)(-1)}, }; static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { @@ -2499,6 +4403,8 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_EQ] = ACTIONS(1), [anon_sym_PLUS_EQ] = ACTIONS(1), [sym_identifier] = ACTIONS(1), + [anon_sym_true] = ACTIONS(1), + [anon_sym_false] = ACTIONS(1), [anon_sym_DASH] = ACTIONS(1), [aux_sym_integer_literal_token1] = ACTIONS(1), [sym_raw_string_literal] = ACTIONS(1), @@ -2513,15 +4419,78 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_COLON] = ACTIONS(1), }, [1] = { - [sym_source_file] = STATE(46), - [sym__definition] = STATE(38), + [sym_source_file] = STATE(47), + [sym__definition] = STATE(43), [sym_comment] = STATE(1), - [sym_assignment] = STATE(43), - [aux_sym_source_file_repeat1] = STATE(24), + [sym_assignment] = STATE(40), + [aux_sym_source_file_repeat1] = STATE(19), [ts_builtin_sym_end] = ACTIONS(5), [anon_sym_POUND] = ACTIONS(3), [sym_identifier] = ACTIONS(7), }, + [2] = { + [sym_comment] = STATE(2), + [sym__expr] = STATE(31), + [sym_boolean_literal] = STATE(12), + [sym_integer_literal] = STATE(12), + [sym__string_literal] = STATE(12), + [sym_interpreted_string_literal] = STATE(16), + [sym_list_expression] = STATE(12), + [sym_map_expression] = STATE(12), + [anon_sym_POUND] = ACTIONS(3), + [sym_identifier] = ACTIONS(9), + [anon_sym_true] = ACTIONS(11), + [anon_sym_false] = ACTIONS(11), + [anon_sym_DASH] = ACTIONS(13), + [aux_sym_integer_literal_token1] = ACTIONS(15), + [sym_raw_string_literal] = ACTIONS(17), + [anon_sym_DQUOTE] = ACTIONS(19), + [anon_sym_LBRACK] = ACTIONS(21), + [anon_sym_RBRACK] = ACTIONS(23), + [anon_sym_LBRACE] = ACTIONS(25), + }, + [3] = { + [sym_comment] = STATE(3), + [sym__expr] = STATE(44), + [sym_boolean_literal] = STATE(12), + [sym_integer_literal] = STATE(12), + [sym__string_literal] = STATE(12), + [sym_interpreted_string_literal] = STATE(16), + [sym_list_expression] = STATE(12), + [sym_map_expression] = STATE(12), + [anon_sym_POUND] = ACTIONS(3), + [sym_identifier] = ACTIONS(9), + [anon_sym_true] = ACTIONS(11), + [anon_sym_false] = ACTIONS(11), + [anon_sym_DASH] = ACTIONS(13), + [aux_sym_integer_literal_token1] = ACTIONS(15), + [sym_raw_string_literal] = ACTIONS(17), + [anon_sym_DQUOTE] = ACTIONS(19), + [anon_sym_LBRACK] = ACTIONS(21), + [anon_sym_RBRACK] = ACTIONS(27), + [anon_sym_LBRACE] = ACTIONS(25), + }, + [4] = { + [sym_comment] = STATE(4), + [sym__expr] = STATE(44), + [sym_boolean_literal] = STATE(12), + [sym_integer_literal] = STATE(12), + [sym__string_literal] = STATE(12), + [sym_interpreted_string_literal] = STATE(16), + [sym_list_expression] = STATE(12), + [sym_map_expression] = STATE(12), + [anon_sym_POUND] = ACTIONS(3), + [sym_identifier] = ACTIONS(9), + [anon_sym_true] = ACTIONS(11), + [anon_sym_false] = ACTIONS(11), + [anon_sym_DASH] = ACTIONS(13), + [aux_sym_integer_literal_token1] = ACTIONS(15), + [sym_raw_string_literal] = ACTIONS(17), + [anon_sym_DQUOTE] = ACTIONS(19), + [anon_sym_LBRACK] = ACTIONS(21), + [anon_sym_RBRACK] = ACTIONS(29), + [anon_sym_LBRACE] = ACTIONS(25), + }, }; static const uint16_t ts_small_parse_table[] = { @@ -2530,201 +4499,112 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_POUND, ACTIONS(9), 1, sym_identifier, - ACTIONS(11), 1, - anon_sym_DASH, ACTIONS(13), 1, - aux_sym_integer_literal_token1, + anon_sym_DASH, ACTIONS(15), 1, - sym_raw_string_literal, + aux_sym_integer_literal_token1, ACTIONS(17), 1, - anon_sym_DQUOTE, + sym_raw_string_literal, ACTIONS(19), 1, - anon_sym_LBRACK, + anon_sym_DQUOTE, ACTIONS(21), 1, - anon_sym_RBRACK, - ACTIONS(23), 1, - anon_sym_LBRACE, - STATE(2), 1, - sym_comment, - STATE(15), 1, - sym_interpreted_string_literal, - STATE(33), 1, - sym__expr, - STATE(12), 4, - sym_integer_literal, - sym__string_literal, - sym_list_expression, - sym_map_expression, - [43] = 13, - ACTIONS(3), 1, - anon_sym_POUND, - ACTIONS(9), 1, - sym_identifier, - ACTIONS(11), 1, - anon_sym_DASH, - ACTIONS(13), 1, - aux_sym_integer_literal_token1, - ACTIONS(15), 1, - sym_raw_string_literal, - ACTIONS(17), 1, - anon_sym_DQUOTE, - ACTIONS(19), 1, anon_sym_LBRACK, - ACTIONS(23), 1, - anon_sym_LBRACE, ACTIONS(25), 1, - anon_sym_RBRACK, - STATE(3), 1, - sym_comment, - STATE(15), 1, - sym_interpreted_string_literal, - STATE(39), 1, - sym__expr, - STATE(12), 4, - sym_integer_literal, - sym__string_literal, - sym_list_expression, - sym_map_expression, - [86] = 13, - ACTIONS(3), 1, - anon_sym_POUND, - ACTIONS(9), 1, - sym_identifier, - ACTIONS(11), 1, - anon_sym_DASH, - ACTIONS(13), 1, - aux_sym_integer_literal_token1, - ACTIONS(15), 1, - sym_raw_string_literal, - ACTIONS(17), 1, - anon_sym_DQUOTE, - ACTIONS(19), 1, - anon_sym_LBRACK, - ACTIONS(23), 1, - anon_sym_LBRACE, - ACTIONS(27), 1, - anon_sym_RBRACK, - STATE(4), 1, - sym_comment, - STATE(15), 1, - sym_interpreted_string_literal, - STATE(39), 1, - sym__expr, - STATE(12), 4, - sym_integer_literal, - sym__string_literal, - sym_list_expression, - sym_map_expression, - [129] = 12, - ACTIONS(3), 1, - anon_sym_POUND, - ACTIONS(9), 1, - sym_identifier, - ACTIONS(11), 1, - anon_sym_DASH, - ACTIONS(13), 1, - aux_sym_integer_literal_token1, - ACTIONS(15), 1, - sym_raw_string_literal, - ACTIONS(17), 1, - anon_sym_DQUOTE, - ACTIONS(19), 1, - anon_sym_LBRACK, - ACTIONS(23), 1, anon_sym_LBRACE, STATE(5), 1, sym_comment, - STATE(15), 1, + STATE(16), 1, sym_interpreted_string_literal, - STATE(39), 1, + STATE(44), 1, sym__expr, - STATE(12), 4, + ACTIONS(11), 2, + anon_sym_true, + anon_sym_false, + STATE(12), 5, + sym_boolean_literal, sym_integer_literal, sym__string_literal, sym_list_expression, sym_map_expression, - [169] = 12, + [45] = 13, ACTIONS(3), 1, anon_sym_POUND, ACTIONS(9), 1, sym_identifier, - ACTIONS(11), 1, - anon_sym_DASH, ACTIONS(13), 1, - aux_sym_integer_literal_token1, + anon_sym_DASH, ACTIONS(15), 1, - sym_raw_string_literal, + aux_sym_integer_literal_token1, ACTIONS(17), 1, - anon_sym_DQUOTE, + sym_raw_string_literal, ACTIONS(19), 1, + anon_sym_DQUOTE, + ACTIONS(21), 1, anon_sym_LBRACK, - ACTIONS(23), 1, + ACTIONS(25), 1, anon_sym_LBRACE, STATE(6), 1, sym_comment, - STATE(15), 1, + STATE(16), 1, sym_interpreted_string_literal, - STATE(40), 1, + STATE(41), 1, sym__expr, - STATE(12), 4, + ACTIONS(11), 2, + anon_sym_true, + anon_sym_false, + STATE(12), 5, + sym_boolean_literal, sym_integer_literal, sym__string_literal, sym_list_expression, sym_map_expression, - [209] = 12, + [90] = 13, ACTIONS(3), 1, anon_sym_POUND, ACTIONS(9), 1, sym_identifier, - ACTIONS(11), 1, - anon_sym_DASH, ACTIONS(13), 1, - aux_sym_integer_literal_token1, + anon_sym_DASH, ACTIONS(15), 1, - sym_raw_string_literal, + aux_sym_integer_literal_token1, ACTIONS(17), 1, - anon_sym_DQUOTE, + sym_raw_string_literal, ACTIONS(19), 1, + anon_sym_DQUOTE, + ACTIONS(21), 1, anon_sym_LBRACK, - ACTIONS(23), 1, + ACTIONS(25), 1, anon_sym_LBRACE, STATE(7), 1, sym_comment, - STATE(15), 1, + STATE(16), 1, sym_interpreted_string_literal, - STATE(41), 1, + STATE(39), 1, sym__expr, - STATE(12), 4, + ACTIONS(11), 2, + anon_sym_true, + anon_sym_false, + STATE(12), 5, + sym_boolean_literal, sym_integer_literal, sym__string_literal, sym_list_expression, sym_map_expression, - [249] = 3, + [135] = 3, ACTIONS(3), 1, anon_sym_POUND, STATE(8), 1, sym_comment, - ACTIONS(29), 5, - ts_builtin_sym_end, - sym_identifier, - anon_sym_COMMA, - anon_sym_RBRACK, - anon_sym_RBRACE, - [263] = 3, - ACTIONS(3), 1, - anon_sym_POUND, - STATE(9), 1, - sym_comment, ACTIONS(31), 5, ts_builtin_sym_end, sym_identifier, anon_sym_COMMA, anon_sym_RBRACK, anon_sym_RBRACE, - [277] = 3, + [149] = 3, ACTIONS(3), 1, anon_sym_POUND, - STATE(10), 1, + STATE(9), 1, sym_comment, ACTIONS(33), 5, ts_builtin_sym_end, @@ -2732,35 +4612,35 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_COMMA, anon_sym_RBRACK, anon_sym_RBRACE, - [291] = 6, + [163] = 3, ACTIONS(3), 1, anon_sym_POUND, - ACTIONS(35), 1, - ts_builtin_sym_end, - ACTIONS(37), 1, - sym_identifier, - STATE(38), 1, - sym__definition, - STATE(43), 1, - sym_assignment, - STATE(11), 2, + STATE(10), 1, sym_comment, - aux_sym_source_file_repeat1, - [311] = 3, - ACTIONS(3), 1, - anon_sym_POUND, - STATE(12), 1, - sym_comment, - ACTIONS(40), 5, + ACTIONS(35), 5, ts_builtin_sym_end, sym_identifier, anon_sym_COMMA, anon_sym_RBRACK, anon_sym_RBRACE, - [325] = 3, + [177] = 6, ACTIONS(3), 1, anon_sym_POUND, - STATE(13), 1, + ACTIONS(37), 1, + ts_builtin_sym_end, + ACTIONS(39), 1, + sym_identifier, + STATE(40), 1, + sym_assignment, + STATE(43), 1, + sym__definition, + STATE(11), 2, + sym_comment, + aux_sym_source_file_repeat1, + [197] = 3, + ACTIONS(3), 1, + anon_sym_POUND, + STATE(12), 1, sym_comment, ACTIONS(42), 5, ts_builtin_sym_end, @@ -2768,10 +4648,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_COMMA, anon_sym_RBRACK, anon_sym_RBRACE, - [339] = 3, + [211] = 3, ACTIONS(3), 1, anon_sym_POUND, - STATE(14), 1, + STATE(13), 1, sym_comment, ACTIONS(44), 5, ts_builtin_sym_end, @@ -2779,10 +4659,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_COMMA, anon_sym_RBRACK, anon_sym_RBRACE, - [353] = 3, + [225] = 3, ACTIONS(3), 1, anon_sym_POUND, - STATE(15), 1, + STATE(14), 1, sym_comment, ACTIONS(46), 5, ts_builtin_sym_end, @@ -2790,10 +4670,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_COMMA, anon_sym_RBRACK, anon_sym_RBRACE, - [367] = 3, + [239] = 3, ACTIONS(3), 1, anon_sym_POUND, - STATE(16), 1, + STATE(15), 1, sym_comment, ACTIONS(48), 5, ts_builtin_sym_end, @@ -2801,10 +4681,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_COMMA, anon_sym_RBRACK, anon_sym_RBRACE, - [381] = 3, + [253] = 3, ACTIONS(3), 1, anon_sym_POUND, - STATE(17), 1, + STATE(16), 1, sym_comment, ACTIONS(50), 5, ts_builtin_sym_end, @@ -2812,10 +4692,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_COMMA, anon_sym_RBRACK, anon_sym_RBRACE, - [395] = 3, + [267] = 3, ACTIONS(3), 1, anon_sym_POUND, - STATE(18), 1, + STATE(17), 1, sym_comment, ACTIONS(52), 5, ts_builtin_sym_end, @@ -2823,10 +4703,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_COMMA, anon_sym_RBRACK, anon_sym_RBRACE, - [409] = 3, + [281] = 3, ACTIONS(3), 1, anon_sym_POUND, - STATE(19), 1, + STATE(18), 1, sym_comment, ACTIONS(54), 5, ts_builtin_sym_end, @@ -2834,32 +4714,36 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_COMMA, anon_sym_RBRACK, anon_sym_RBRACE, - [423] = 3, + [295] = 7, + ACTIONS(3), 1, + anon_sym_POUND, + ACTIONS(7), 1, + sym_identifier, + ACTIONS(56), 1, + ts_builtin_sym_end, + STATE(11), 1, + aux_sym_source_file_repeat1, + STATE(19), 1, + sym_comment, + STATE(40), 1, + sym_assignment, + STATE(43), 1, + sym__definition, + [317] = 3, ACTIONS(3), 1, anon_sym_POUND, STATE(20), 1, sym_comment, - ACTIONS(56), 5, - ts_builtin_sym_end, - sym_identifier, - anon_sym_COMMA, - anon_sym_RBRACK, - anon_sym_RBRACE, - [437] = 3, - ACTIONS(3), 1, - anon_sym_POUND, - STATE(21), 1, - sym_comment, ACTIONS(58), 5, ts_builtin_sym_end, sym_identifier, anon_sym_COMMA, anon_sym_RBRACK, anon_sym_RBRACE, - [451] = 3, + [331] = 3, ACTIONS(3), 1, anon_sym_POUND, - STATE(22), 1, + STATE(21), 1, sym_comment, ACTIONS(60), 5, ts_builtin_sym_end, @@ -2867,10 +4751,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_COMMA, anon_sym_RBRACK, anon_sym_RBRACE, - [465] = 3, + [345] = 3, ACTIONS(3), 1, anon_sym_POUND, - STATE(23), 1, + STATE(22), 1, sym_comment, ACTIONS(62), 5, ts_builtin_sym_end, @@ -2878,71 +4762,78 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_COMMA, anon_sym_RBRACK, anon_sym_RBRACE, - [479] = 7, + [359] = 3, ACTIONS(3), 1, anon_sym_POUND, - ACTIONS(7), 1, - sym_identifier, - ACTIONS(64), 1, + STATE(23), 1, + sym_comment, + ACTIONS(64), 5, ts_builtin_sym_end, - STATE(11), 1, - aux_sym_source_file_repeat1, + sym_identifier, + anon_sym_COMMA, + anon_sym_RBRACK, + anon_sym_RBRACE, + [373] = 3, + ACTIONS(3), 1, + anon_sym_POUND, STATE(24), 1, sym_comment, - STATE(38), 1, - sym__definition, - STATE(43), 1, - sym_assignment, - [501] = 5, - ACTIONS(66), 1, + ACTIONS(66), 5, + ts_builtin_sym_end, + sym_identifier, + anon_sym_COMMA, + anon_sym_RBRACK, + anon_sym_RBRACE, + [387] = 3, + ACTIONS(3), 1, anon_sym_POUND, - ACTIONS(68), 1, - aux_sym_interpreted_string_literal_token1, - ACTIONS(71), 1, - anon_sym_DQUOTE2, - ACTIONS(73), 1, - sym_escape_sequence, - STATE(25), 2, - sym_comment, - aux_sym_interpreted_string_literal_repeat1, - [518] = 6, - ACTIONS(66), 1, - anon_sym_POUND, - ACTIONS(76), 1, - aux_sym_interpreted_string_literal_token1, - ACTIONS(78), 1, - anon_sym_DQUOTE2, - ACTIONS(80), 1, - sym_escape_sequence, STATE(25), 1, - aux_sym_interpreted_string_literal_repeat1, + sym_comment, + ACTIONS(68), 5, + ts_builtin_sym_end, + sym_identifier, + anon_sym_COMMA, + anon_sym_RBRACK, + anon_sym_RBRACE, + [401] = 6, + ACTIONS(70), 1, + anon_sym_POUND, + ACTIONS(72), 1, + aux_sym_interpreted_string_literal_token1, + ACTIONS(74), 1, + anon_sym_DQUOTE2, + ACTIONS(76), 1, + sym_escape_sequence, STATE(26), 1, sym_comment, - [537] = 6, - ACTIONS(66), 1, + STATE(28), 1, + aux_sym_interpreted_string_literal_repeat1, + [420] = 6, + ACTIONS(70), 1, anon_sym_POUND, - ACTIONS(76), 1, + ACTIONS(72), 1, aux_sym_interpreted_string_literal_token1, - ACTIONS(80), 1, + ACTIONS(76), 1, sym_escape_sequence, - ACTIONS(82), 1, + ACTIONS(78), 1, anon_sym_DQUOTE2, STATE(26), 1, aux_sym_interpreted_string_literal_repeat1, STATE(27), 1, sym_comment, - [556] = 5, - ACTIONS(3), 1, + [439] = 5, + ACTIONS(70), 1, anon_sym_POUND, - ACTIONS(84), 1, - sym_identifier, - ACTIONS(86), 1, - anon_sym_RBRACE, - STATE(28), 1, + ACTIONS(80), 1, + aux_sym_interpreted_string_literal_token1, + ACTIONS(83), 1, + anon_sym_DQUOTE2, + ACTIONS(85), 1, + sym_escape_sequence, + STATE(28), 2, sym_comment, - STATE(42), 1, - sym__colon_property, - [572] = 5, + aux_sym_interpreted_string_literal_repeat1, + [456] = 5, ACTIONS(3), 1, anon_sym_POUND, ACTIONS(88), 1, @@ -2951,9 +4842,9 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_RBRACE, STATE(29), 1, sym_comment, - STATE(30), 1, + STATE(35), 1, aux_sym_map_expression_repeat1, - [588] = 4, + [472] = 4, ACTIONS(3), 1, anon_sym_POUND, ACTIONS(92), 1, @@ -2963,301 +4854,312 @@ static const uint16_t ts_small_parse_table[] = { STATE(30), 2, sym_comment, aux_sym_map_expression_repeat1, - [602] = 5, + [486] = 5, ACTIONS(3), 1, anon_sym_POUND, - ACTIONS(84), 1, - sym_identifier, ACTIONS(97), 1, - anon_sym_RBRACE, + anon_sym_COMMA, + ACTIONS(99), 1, + anon_sym_RBRACK, STATE(31), 1, sym_comment, - STATE(37), 1, - sym__colon_property, - [618] = 5, - ACTIONS(3), 1, - anon_sym_POUND, - ACTIONS(27), 1, - anon_sym_RBRACK, - ACTIONS(99), 1, - anon_sym_COMMA, STATE(32), 1, - sym_comment, - STATE(35), 1, aux_sym_list_expression_repeat1, - [634] = 5, + [502] = 5, ACTIONS(3), 1, anon_sym_POUND, + ACTIONS(29), 1, + anon_sym_RBRACK, ACTIONS(101), 1, anon_sym_COMMA, - ACTIONS(103), 1, - anon_sym_RBRACK, STATE(32), 1, - aux_sym_list_expression_repeat1, - STATE(33), 1, sym_comment, - [650] = 5, + STATE(36), 1, + aux_sym_list_expression_repeat1, + [518] = 5, ACTIONS(3), 1, anon_sym_POUND, - ACTIONS(84), 1, + ACTIONS(103), 1, sym_identifier, ACTIONS(105), 1, anon_sym_RBRACE, - STATE(34), 1, + STATE(33), 1, sym_comment, STATE(42), 1, sym__colon_property, - [666] = 4, - ACTIONS(3), 1, + [534] = 4, + ACTIONS(70), 1, anon_sym_POUND, ACTIONS(107), 1, - anon_sym_COMMA, - ACTIONS(110), 1, - anon_sym_RBRACK, - STATE(35), 2, - sym_comment, - aux_sym_list_expression_repeat1, - [680] = 4, - ACTIONS(66), 1, - anon_sym_POUND, - ACTIONS(112), 1, aux_sym_interpreted_string_literal_token1, - STATE(36), 1, + STATE(34), 1, sym_comment, - ACTIONS(114), 2, + ACTIONS(109), 2, anon_sym_DQUOTE2, sym_escape_sequence, - [694] = 5, + [548] = 5, ACTIONS(3), 1, anon_sym_POUND, - ACTIONS(116), 1, + ACTIONS(111), 1, + anon_sym_COMMA, + ACTIONS(113), 1, + anon_sym_RBRACE, + STATE(30), 1, + aux_sym_map_expression_repeat1, + STATE(35), 1, + sym_comment, + [564] = 4, + ACTIONS(3), 1, + anon_sym_POUND, + ACTIONS(115), 1, anon_sym_COMMA, ACTIONS(118), 1, - anon_sym_RBRACE, - STATE(29), 1, - aux_sym_map_expression_repeat1, - STATE(37), 1, + anon_sym_RBRACK, + STATE(36), 2, sym_comment, - [710] = 3, + aux_sym_list_expression_repeat1, + [578] = 5, ACTIONS(3), 1, anon_sym_POUND, + ACTIONS(103), 1, + sym_identifier, + ACTIONS(120), 1, + anon_sym_RBRACE, + STATE(29), 1, + sym__colon_property, + STATE(37), 1, + sym_comment, + [594] = 5, + ACTIONS(3), 1, + anon_sym_POUND, + ACTIONS(103), 1, + sym_identifier, + ACTIONS(122), 1, + anon_sym_RBRACE, STATE(38), 1, sym_comment, - ACTIONS(120), 2, - ts_builtin_sym_end, - sym_identifier, - [721] = 3, + STATE(42), 1, + sym__colon_property, + [610] = 3, ACTIONS(3), 1, anon_sym_POUND, STATE(39), 1, sym_comment, - ACTIONS(110), 2, - anon_sym_COMMA, - anon_sym_RBRACK, - [732] = 3, + ACTIONS(124), 2, + ts_builtin_sym_end, + sym_identifier, + [621] = 3, ACTIONS(3), 1, anon_sym_POUND, STATE(40), 1, sym_comment, - ACTIONS(122), 2, - anon_sym_COMMA, - anon_sym_RBRACE, - [743] = 3, + ACTIONS(126), 2, + ts_builtin_sym_end, + sym_identifier, + [632] = 3, ACTIONS(3), 1, anon_sym_POUND, STATE(41), 1, sym_comment, - ACTIONS(124), 2, - ts_builtin_sym_end, - sym_identifier, - [754] = 3, + ACTIONS(128), 2, + anon_sym_COMMA, + anon_sym_RBRACE, + [643] = 3, ACTIONS(3), 1, anon_sym_POUND, STATE(42), 1, sym_comment, - ACTIONS(126), 2, + ACTIONS(130), 2, anon_sym_COMMA, anon_sym_RBRACE, - [765] = 3, + [654] = 3, ACTIONS(3), 1, anon_sym_POUND, STATE(43), 1, sym_comment, - ACTIONS(128), 2, + ACTIONS(132), 2, ts_builtin_sym_end, sym_identifier, - [776] = 3, + [665] = 3, ACTIONS(3), 1, anon_sym_POUND, STATE(44), 1, sym_comment, - ACTIONS(130), 2, - anon_sym_EQ, - anon_sym_PLUS_EQ, - [787] = 4, + ACTIONS(118), 2, + anon_sym_COMMA, + anon_sym_RBRACK, + [676] = 3, ACTIONS(3), 1, anon_sym_POUND, - ACTIONS(84), 1, + STATE(45), 1, + sym_comment, + ACTIONS(134), 2, + anon_sym_EQ, + anon_sym_PLUS_EQ, + [687] = 4, + ACTIONS(3), 1, + anon_sym_POUND, + ACTIONS(103), 1, sym_identifier, STATE(42), 1, sym__colon_property, - STATE(45), 1, - sym_comment, - [800] = 3, - ACTIONS(3), 1, - anon_sym_POUND, - ACTIONS(132), 1, - ts_builtin_sym_end, STATE(46), 1, sym_comment, - [810] = 3, - ACTIONS(66), 1, - anon_sym_POUND, - ACTIONS(134), 1, - aux_sym_comment_token1, - STATE(47), 1, - sym_comment, - [820] = 3, + [700] = 3, ACTIONS(3), 1, anon_sym_POUND, ACTIONS(136), 1, - anon_sym_COLON, - STATE(48), 1, + ts_builtin_sym_end, + STATE(47), 1, sym_comment, - [830] = 3, - ACTIONS(3), 1, + [710] = 3, + ACTIONS(70), 1, anon_sym_POUND, ACTIONS(138), 1, - aux_sym_integer_literal_token1, + aux_sym_comment_token1, + STATE(48), 1, + sym_comment, + [720] = 3, + ACTIONS(3), 1, + anon_sym_POUND, + ACTIONS(140), 1, + anon_sym_COLON, STATE(49), 1, sym_comment, - [840] = 1, - ACTIONS(140), 1, + [730] = 3, + ACTIONS(3), 1, + anon_sym_POUND, + ACTIONS(142), 1, + aux_sym_integer_literal_token1, + STATE(50), 1, + sym_comment, + [740] = 1, + ACTIONS(144), 1, ts_builtin_sym_end, }; static const uint32_t ts_small_parse_table_map[] = { - [SMALL_STATE(2)] = 0, - [SMALL_STATE(3)] = 43, - [SMALL_STATE(4)] = 86, - [SMALL_STATE(5)] = 129, - [SMALL_STATE(6)] = 169, - [SMALL_STATE(7)] = 209, - [SMALL_STATE(8)] = 249, - [SMALL_STATE(9)] = 263, - [SMALL_STATE(10)] = 277, - [SMALL_STATE(11)] = 291, - [SMALL_STATE(12)] = 311, - [SMALL_STATE(13)] = 325, - [SMALL_STATE(14)] = 339, - [SMALL_STATE(15)] = 353, - [SMALL_STATE(16)] = 367, - [SMALL_STATE(17)] = 381, - [SMALL_STATE(18)] = 395, - [SMALL_STATE(19)] = 409, - [SMALL_STATE(20)] = 423, - [SMALL_STATE(21)] = 437, - [SMALL_STATE(22)] = 451, - [SMALL_STATE(23)] = 465, - [SMALL_STATE(24)] = 479, - [SMALL_STATE(25)] = 501, - [SMALL_STATE(26)] = 518, - [SMALL_STATE(27)] = 537, - [SMALL_STATE(28)] = 556, - [SMALL_STATE(29)] = 572, - [SMALL_STATE(30)] = 588, - [SMALL_STATE(31)] = 602, - [SMALL_STATE(32)] = 618, - [SMALL_STATE(33)] = 634, - [SMALL_STATE(34)] = 650, - [SMALL_STATE(35)] = 666, - [SMALL_STATE(36)] = 680, - [SMALL_STATE(37)] = 694, - [SMALL_STATE(38)] = 710, - [SMALL_STATE(39)] = 721, - [SMALL_STATE(40)] = 732, - [SMALL_STATE(41)] = 743, - [SMALL_STATE(42)] = 754, - [SMALL_STATE(43)] = 765, - [SMALL_STATE(44)] = 776, - [SMALL_STATE(45)] = 787, - [SMALL_STATE(46)] = 800, - [SMALL_STATE(47)] = 810, - [SMALL_STATE(48)] = 820, - [SMALL_STATE(49)] = 830, - [SMALL_STATE(50)] = 840, + [SMALL_STATE(5)] = 0, + [SMALL_STATE(6)] = 45, + [SMALL_STATE(7)] = 90, + [SMALL_STATE(8)] = 135, + [SMALL_STATE(9)] = 149, + [SMALL_STATE(10)] = 163, + [SMALL_STATE(11)] = 177, + [SMALL_STATE(12)] = 197, + [SMALL_STATE(13)] = 211, + [SMALL_STATE(14)] = 225, + [SMALL_STATE(15)] = 239, + [SMALL_STATE(16)] = 253, + [SMALL_STATE(17)] = 267, + [SMALL_STATE(18)] = 281, + [SMALL_STATE(19)] = 295, + [SMALL_STATE(20)] = 317, + [SMALL_STATE(21)] = 331, + [SMALL_STATE(22)] = 345, + [SMALL_STATE(23)] = 359, + [SMALL_STATE(24)] = 373, + [SMALL_STATE(25)] = 387, + [SMALL_STATE(26)] = 401, + [SMALL_STATE(27)] = 420, + [SMALL_STATE(28)] = 439, + [SMALL_STATE(29)] = 456, + [SMALL_STATE(30)] = 472, + [SMALL_STATE(31)] = 486, + [SMALL_STATE(32)] = 502, + [SMALL_STATE(33)] = 518, + [SMALL_STATE(34)] = 534, + [SMALL_STATE(35)] = 548, + [SMALL_STATE(36)] = 564, + [SMALL_STATE(37)] = 578, + [SMALL_STATE(38)] = 594, + [SMALL_STATE(39)] = 610, + [SMALL_STATE(40)] = 621, + [SMALL_STATE(41)] = 632, + [SMALL_STATE(42)] = 643, + [SMALL_STATE(43)] = 654, + [SMALL_STATE(44)] = 665, + [SMALL_STATE(45)] = 676, + [SMALL_STATE(46)] = 687, + [SMALL_STATE(47)] = 700, + [SMALL_STATE(48)] = 710, + [SMALL_STATE(49)] = 720, + [SMALL_STATE(50)] = 730, + [SMALL_STATE(51)] = 740, }; static const TSParseActionEntry ts_parse_actions[] = { [0] = {.entry = {.count = 0, .reusable = false}}, [1] = {.entry = {.count = 1, .reusable = false}}, RECOVER(), - [3] = {.entry = {.count = 1, .reusable = true}}, SHIFT(47), + [3] = {.entry = {.count = 1, .reusable = true}}, SHIFT(48), [5] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 0), - [7] = {.entry = {.count = 1, .reusable = true}}, SHIFT(44), - [9] = {.entry = {.count = 1, .reusable = true}}, SHIFT(12), - [11] = {.entry = {.count = 1, .reusable = true}}, SHIFT(49), - [13] = {.entry = {.count = 1, .reusable = true}}, SHIFT(14), + [7] = {.entry = {.count = 1, .reusable = true}}, SHIFT(45), + [9] = {.entry = {.count = 1, .reusable = false}}, SHIFT(12), + [11] = {.entry = {.count = 1, .reusable = false}}, SHIFT(13), + [13] = {.entry = {.count = 1, .reusable = true}}, SHIFT(50), [15] = {.entry = {.count = 1, .reusable = true}}, SHIFT(15), - [17] = {.entry = {.count = 1, .reusable = true}}, SHIFT(27), - [19] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2), - [21] = {.entry = {.count = 1, .reusable = true}}, SHIFT(23), - [23] = {.entry = {.count = 1, .reusable = true}}, SHIFT(31), - [25] = {.entry = {.count = 1, .reusable = true}}, SHIFT(13), - [27] = {.entry = {.count = 1, .reusable = true}}, SHIFT(8), - [29] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_expression, 4), - [31] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpreted_string_literal, 3), - [33] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_map_expression, 5, .production_id = 4), - [35] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2), - [37] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(44), - [40] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__expr, 1), - [42] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_expression, 5), - [44] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_integer_literal, 1), - [46] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__string_literal, 1), - [48] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_map_expression, 4, .production_id = 4), - [50] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_map_expression, 4, .production_id = 2), - [52] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_map_expression, 3, .production_id = 2), - [54] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_integer_literal, 2), - [56] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_expression, 3), - [58] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpreted_string_literal, 2), - [60] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_map_expression, 2), - [62] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_expression, 2), - [64] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 1), - [66] = {.entry = {.count = 1, .reusable = false}}, SHIFT(47), - [68] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_interpreted_string_literal_repeat1, 2), SHIFT_REPEAT(36), - [71] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_interpreted_string_literal_repeat1, 2), - [73] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_interpreted_string_literal_repeat1, 2), SHIFT_REPEAT(36), - [76] = {.entry = {.count = 1, .reusable = false}}, SHIFT(36), - [78] = {.entry = {.count = 1, .reusable = true}}, SHIFT(9), - [80] = {.entry = {.count = 1, .reusable = true}}, SHIFT(36), - [82] = {.entry = {.count = 1, .reusable = true}}, SHIFT(21), - [84] = {.entry = {.count = 1, .reusable = true}}, SHIFT(48), - [86] = {.entry = {.count = 1, .reusable = true}}, SHIFT(10), - [88] = {.entry = {.count = 1, .reusable = true}}, SHIFT(28), - [90] = {.entry = {.count = 1, .reusable = true}}, SHIFT(16), - [92] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_map_expression_repeat1, 2, .production_id = 5), SHIFT_REPEAT(45), + [17] = {.entry = {.count = 1, .reusable = true}}, SHIFT(16), + [19] = {.entry = {.count = 1, .reusable = true}}, SHIFT(27), + [21] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2), + [23] = {.entry = {.count = 1, .reusable = true}}, SHIFT(24), + [25] = {.entry = {.count = 1, .reusable = true}}, SHIFT(37), + [27] = {.entry = {.count = 1, .reusable = true}}, SHIFT(14), + [29] = {.entry = {.count = 1, .reusable = true}}, SHIFT(8), + [31] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_expression, 4), + [33] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_map_expression, 2), + [35] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_map_expression, 5, .production_id = 4), + [37] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2), + [39] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(45), + [42] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__expr, 1), + [44] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_boolean_literal, 1), + [46] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_expression, 5), + [48] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_integer_literal, 1), + [50] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__string_literal, 1), + [52] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_map_expression, 4, .production_id = 2), + [54] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_map_expression, 3, .production_id = 2), + [56] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 1), + [58] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_integer_literal, 2), + [60] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_expression, 3), + [62] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpreted_string_literal, 2), + [64] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_map_expression, 4, .production_id = 4), + [66] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_expression, 2), + [68] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpreted_string_literal, 3), + [70] = {.entry = {.count = 1, .reusable = false}}, SHIFT(48), + [72] = {.entry = {.count = 1, .reusable = false}}, SHIFT(34), + [74] = {.entry = {.count = 1, .reusable = true}}, SHIFT(25), + [76] = {.entry = {.count = 1, .reusable = true}}, SHIFT(34), + [78] = {.entry = {.count = 1, .reusable = true}}, SHIFT(22), + [80] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_interpreted_string_literal_repeat1, 2), SHIFT_REPEAT(34), + [83] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_interpreted_string_literal_repeat1, 2), + [85] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_interpreted_string_literal_repeat1, 2), SHIFT_REPEAT(34), + [88] = {.entry = {.count = 1, .reusable = true}}, SHIFT(33), + [90] = {.entry = {.count = 1, .reusable = true}}, SHIFT(18), + [92] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_map_expression_repeat1, 2, .production_id = 5), SHIFT_REPEAT(46), [95] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_map_expression_repeat1, 2, .production_id = 5), - [97] = {.entry = {.count = 1, .reusable = true}}, SHIFT(22), - [99] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3), - [101] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4), - [103] = {.entry = {.count = 1, .reusable = true}}, SHIFT(20), + [97] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4), + [99] = {.entry = {.count = 1, .reusable = true}}, SHIFT(21), + [101] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3), + [103] = {.entry = {.count = 1, .reusable = true}}, SHIFT(49), [105] = {.entry = {.count = 1, .reusable = true}}, SHIFT(17), - [107] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_list_expression_repeat1, 2), SHIFT_REPEAT(5), - [110] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_list_expression_repeat1, 2), - [112] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_interpreted_string_literal_repeat1, 1), - [114] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_interpreted_string_literal_repeat1, 1), - [116] = {.entry = {.count = 1, .reusable = true}}, SHIFT(34), - [118] = {.entry = {.count = 1, .reusable = true}}, SHIFT(18), - [120] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 1), - [122] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__colon_property, 3, .production_id = 3), + [107] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_interpreted_string_literal_repeat1, 1), + [109] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_interpreted_string_literal_repeat1, 1), + [111] = {.entry = {.count = 1, .reusable = true}}, SHIFT(38), + [113] = {.entry = {.count = 1, .reusable = true}}, SHIFT(23), + [115] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_list_expression_repeat1, 2), SHIFT_REPEAT(5), + [118] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_list_expression_repeat1, 2), + [120] = {.entry = {.count = 1, .reusable = true}}, SHIFT(9), + [122] = {.entry = {.count = 1, .reusable = true}}, SHIFT(10), [124] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment, 3, .production_id = 1), - [126] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_map_expression_repeat1, 2, .production_id = 2), - [128] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__definition, 1), - [130] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7), - [132] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), - [134] = {.entry = {.count = 1, .reusable = false}}, SHIFT(50), - [136] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6), - [138] = {.entry = {.count = 1, .reusable = true}}, SHIFT(19), - [140] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_comment, 2), + [126] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__definition, 1), + [128] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__colon_property, 3, .production_id = 3), + [130] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_map_expression_repeat1, 2, .production_id = 2), + [132] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 1), + [134] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7), + [136] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), + [138] = {.entry = {.count = 1, .reusable = false}}, SHIFT(51), + [140] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6), + [142] = {.entry = {.count = 1, .reusable = true}}, SHIFT(20), + [144] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_comment, 2), }; #ifdef __cplusplus diff --git a/test/corpus/expressions.txt b/test/corpus/expressions.txt index f45bb0d..466737a 100644 --- a/test/corpus/expressions.txt +++ b/test/corpus/expressions.txt @@ -1,3 +1,37 @@ +================================================================================ +Boolean +================================================================================ + +foo = false +foo = true + +-------------------------------------------------------------------------------- + +(source_file + (assignment + (identifier) + (boolean_literal)) + (assignment + (identifier) + (boolean_literal))) + +================================================================================ +Boolean (identifier/literal) +================================================================================ + +true = false +false = true + +-------------------------------------------------------------------------------- + +(source_file + (assignment + (identifier) + (boolean_literal)) + (assignment + (identifier) + (boolean_literal))) + ================================================================================ Integer ================================================================================