#include #if defined(__GNUC__) || defined(__clang__) #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-Wmissing-field-initializers" #endif #define LANGUAGE_VERSION 14 #define STATE_COUNT 31 #define LARGE_STATE_COUNT 2 #define SYMBOL_COUNT 30 #define ALIAS_COUNT 0 #define TOKEN_COUNT 20 #define EXTERNAL_TOKEN_COUNT 0 #define FIELD_COUNT 0 #define MAX_ALIAS_SEQUENCE_LENGTH 8 #define PRODUCTION_ID_COUNT 1 enum { anon_sym_LF = 1, anon_sym_pick = 2, anon_sym_p = 3, anon_sym_watch = 4, anon_sym_w = 5, anon_sym_drop = 6, anon_sym_d = 7, anon_sym_url = 8, anon_sym_u = 9, sym_id = 10, aux_sym_title_token1 = 11, aux_sym_date_token1 = 12, anon_sym_LBRACK = 13, anon_sym_NoDuration = 14, aux_sym_duration_token1 = 15, aux_sym_duration_token2 = 16, anon_sym_RBRACK = 17, sym_comment = 18, sym_quote = 19, sym_source_file = 20, sym_line = 21, sym_command = 22, sym_title = 23, sym_date = 24, sym_author = 25, sym_duration = 26, sym_url = 27, sym__q = 28, aux_sym_source_file_repeat1 = 29, }; static const char *const ts_symbol_names[] = { [ts_builtin_sym_end] = "end", [anon_sym_LF] = "\n", [anon_sym_pick] = "pick", [anon_sym_p] = "p", [anon_sym_watch] = "watch", [anon_sym_w] = "w", [anon_sym_drop] = "drop", [anon_sym_d] = "d", [anon_sym_url] = "url", [anon_sym_u] = "u", [sym_id] = "id", [aux_sym_title_token1] = "title_token1", [aux_sym_date_token1] = "date_token1", [anon_sym_LBRACK] = "[", [anon_sym_NoDuration] = "No Duration", [aux_sym_duration_token1] = "duration_token1", [aux_sym_duration_token2] = "duration_token2", [anon_sym_RBRACK] = "]", [sym_comment] = "comment", [sym_quote] = "quote", [sym_source_file] = "source_file", [sym_line] = "line", [sym_command] = "command", [sym_title] = "title", [sym_date] = "date", [sym_author] = "author", [sym_duration] = "duration", [sym_url] = "url", [sym__q] = "_q", [aux_sym_source_file_repeat1] = "source_file_repeat1", }; static const TSSymbol ts_symbol_map[] = { [ts_builtin_sym_end] = ts_builtin_sym_end, [anon_sym_LF] = anon_sym_LF, [anon_sym_pick] = anon_sym_pick, [anon_sym_p] = anon_sym_p, [anon_sym_watch] = anon_sym_watch, [anon_sym_w] = anon_sym_w, [anon_sym_drop] = anon_sym_drop, [anon_sym_d] = anon_sym_d, [anon_sym_url] = anon_sym_url, [anon_sym_u] = anon_sym_u, [sym_id] = sym_id, [aux_sym_title_token1] = aux_sym_title_token1, [aux_sym_date_token1] = aux_sym_date_token1, [anon_sym_LBRACK] = anon_sym_LBRACK, [anon_sym_NoDuration] = anon_sym_NoDuration, [aux_sym_duration_token1] = aux_sym_duration_token1, [aux_sym_duration_token2] = aux_sym_duration_token2, [anon_sym_RBRACK] = anon_sym_RBRACK, [sym_comment] = sym_comment, [sym_quote] = sym_quote, [sym_source_file] = sym_source_file, [sym_line] = sym_line, [sym_command] = sym_command, [sym_title] = sym_title, [sym_date] = sym_date, [sym_author] = sym_author, [sym_duration] = sym_duration, [sym_url] = sym_url, [sym__q] = sym__q, [aux_sym_source_file_repeat1] = aux_sym_source_file_repeat1, }; static const TSSymbolMetadata ts_symbol_metadata[] = { [ts_builtin_sym_end] = { .visible = false, .named = true, }, [anon_sym_LF] = { .visible = true, .named = false, }, [anon_sym_pick] = { .visible = true, .named = false, }, [anon_sym_p] = { .visible = true, .named = false, }, [anon_sym_watch] = { .visible = true, .named = false, }, [anon_sym_w] = { .visible = true, .named = false, }, [anon_sym_drop] = { .visible = true, .named = false, }, [anon_sym_d] = { .visible = true, .named = false, }, [anon_sym_url] = { .visible = true, .named = false, }, [anon_sym_u] = { .visible = true, .named = false, }, [sym_id] = { .visible = true, .named = true, }, [aux_sym_title_token1] = { .visible = false, .named = false, }, [aux_sym_date_token1] = { .visible = false, .named = false, }, [anon_sym_LBRACK] = { .visible = true, .named = false, }, [anon_sym_NoDuration] = { .visible = true, .named = false, }, [aux_sym_duration_token1] = { .visible = false, .named = false, }, [aux_sym_duration_token2] = { .visible = false, .named = false, }, [anon_sym_RBRACK] = { .visible = true, .named = false, }, [sym_comment] = { .visible = true, .named = true, }, [sym_quote] = { .visible = true, .named = true, }, [sym_source_file] = { .visible = true, .named = true, }, [sym_line] = { .visible = true, .named = true, }, [sym_command] = { .visible = true, .named = true, }, [sym_title] = { .visible = true, .named = true, }, [sym_date] = { .visible = true, .named = true, }, [sym_author] = { .visible = true, .named = true, }, [sym_duration] = { .visible = true, .named = true, }, [sym_url] = { .visible = true, .named = true, }, [sym__q] = { .visible = false, .named = true, }, [aux_sym_source_file_repeat1] = { .visible = false, .named = false, }, }; static const TSSymbol ts_alias_sequences[PRODUCTION_ID_COUNT] [MAX_ALIAS_SEQUENCE_LENGTH] = { [0] = { 0 }, }; static const uint16_t ts_non_terminal_alias_map[] = { 0, }; static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [0] = 0, [1] = 1, [2] = 2, [3] = 3, [4] = 4, [5] = 5, [6] = 6, [7] = 7, [8] = 8, [9] = 9, [10] = 10, [11] = 11, [12] = 12, [13] = 13, [14] = 14, [15] = 15, [16] = 16, [17] = 17, [18] = 18, [19] = 19, [20] = 20, [21] = 21, [22] = 22, [23] = 23, [24] = 24, [25] = 25, [26] = 26, [27] = 27, [28] = 28, [29] = 29, [30] = 30, }; static bool ts_lex (TSLexer *lexer, TSStateId state) { START_LEXER (); eof = lexer->eof (lexer); switch (state) { case 0: if (eof) ADVANCE (47); if (lookahead == '"') ADVANCE (74); if (lookahead == '#') ADVANCE (73); if (lookahead == 'N') ADVANCE (30); if (lookahead == '[') ADVANCE (68); if (lookahead == '\\') SKIP (46) if (lookahead == ']') ADVANCE (72); if (lookahead == 'd') ADVANCE (54); if (lookahead == 'p') ADVANCE (50); if (lookahead == 'u') ADVANCE (56); if (lookahead == 'w') ADVANCE (52); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP (0) if (('0' <= lookahead && lookahead <= '9')) ADVANCE (60); END_STATE (); case 1: if (lookahead == '\n') SKIP (14) END_STATE (); case 2: if (lookahead == '\n') SKIP (14) if (lookahead == '\r') SKIP (1) END_STATE (); case 3: if (lookahead == '\n') SKIP (16) END_STATE (); case 4: if (lookahead == '\n') SKIP (16) if (lookahead == '\r') SKIP (3) END_STATE (); case 5: if (lookahead == '\n') SKIP (7) END_STATE (); case 6: if (lookahead == '\n') SKIP (7) if (lookahead == '\r') SKIP (5) END_STATE (); case 7: if (lookahead == '\n') ADVANCE (48); if (lookahead == '\\') SKIP (6) if (lookahead == '\t' || lookahead == '\r' || lookahead == ' ') SKIP (7) END_STATE (); case 8: if (lookahead == ' ') ADVANCE (13); END_STATE (); case 9: if (lookahead == ' ') ADVANCE (39); END_STATE (); case 10: if (lookahead == ' ') ADVANCE (40); END_STATE (); case 11: if (lookahead == '-') ADVANCE (43); if (lookahead == 'h') ADVANCE (9); if (lookahead == 'm') ADVANCE (10); if (('0' <= lookahead && lookahead <= '9')) ADVANCE (24); END_STATE (); case 12: if (lookahead == '-') ADVANCE (44); END_STATE (); case 13: if (lookahead == 'D') ADVANCE (38); END_STATE (); case 14: if (lookahead == 'N') ADVANCE (30); if (lookahead == '\\') SKIP (2) if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP (14) if (('0' <= lookahead && lookahead <= '9')) ADVANCE (23); END_STATE (); case 15: if (lookahead == '\\') ADVANCE (63); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') ADVANCE (65); if (lookahead != 0 && lookahead != '"') ADVANCE (66); END_STATE (); case 16: if (lookahead == '\\') SKIP (4) if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP (16) if (('0' <= lookahead && lookahead <= '9')) ADVANCE (62); END_STATE (); case 17: if (lookahead == 'a') ADVANCE (36); END_STATE (); case 18: if (lookahead == 'c') ADVANCE (26); END_STATE (); case 19: if (lookahead == 'c') ADVANCE (20); END_STATE (); case 20: if (lookahead == 'h') ADVANCE (51); END_STATE (); case 21: if (lookahead == 'h') ADVANCE (9); if (lookahead == 'm') ADVANCE (10); if (('0' <= lookahead && lookahead <= '9')) ADVANCE (11); END_STATE (); case 22: if (lookahead == 'h') ADVANCE (9); if (lookahead == 'm') ADVANCE (10); if (('0' <= lookahead && lookahead <= '9')) ADVANCE (21); END_STATE (); case 23: if (lookahead == 'h') ADVANCE (9); if (lookahead == 'm') ADVANCE (10); if (('0' <= lookahead && lookahead <= '9')) ADVANCE (22); END_STATE (); case 24: if (lookahead == 'h') ADVANCE (9); if (lookahead == 'm') ADVANCE (10); if (('0' <= lookahead && lookahead <= '9')) ADVANCE (24); END_STATE (); case 25: if (lookahead == 'i') ADVANCE (32); END_STATE (); case 26: if (lookahead == 'k') ADVANCE (49); END_STATE (); case 27: if (lookahead == 'l') ADVANCE (55); END_STATE (); case 28: if (lookahead == 'm') ADVANCE (71); if (('0' <= lookahead && lookahead <= '9')) ADVANCE (28); END_STATE (); case 29: if (lookahead == 'n') ADVANCE (69); END_STATE (); case 30: if (lookahead == 'o') ADVANCE (8); END_STATE (); case 31: if (lookahead == 'o') ADVANCE (33); END_STATE (); case 32: if (lookahead == 'o') ADVANCE (29); END_STATE (); case 33: if (lookahead == 'p') ADVANCE (53); END_STATE (); case 34: if (lookahead == 'r') ADVANCE (17); END_STATE (); case 35: if (lookahead == 's') ADVANCE (70); if (('0' <= lookahead && lookahead <= '9')) ADVANCE (35); END_STATE (); case 36: if (lookahead == 't') ADVANCE (25); END_STATE (); case 37: if (lookahead == 't') ADVANCE (19); END_STATE (); case 38: if (lookahead == 'u') ADVANCE (34); END_STATE (); case 39: if (('0' <= lookahead && lookahead <= '9')) ADVANCE (28); END_STATE (); case 40: if (('0' <= lookahead && lookahead <= '9')) ADVANCE (35); END_STATE (); case 41: if (('0' <= lookahead && lookahead <= '9')) ADVANCE (12); END_STATE (); case 42: if (('0' <= lookahead && lookahead <= '9')) ADVANCE (67); END_STATE (); case 43: if (('0' <= lookahead && lookahead <= '9')) ADVANCE (41); END_STATE (); case 44: if (('0' <= lookahead && lookahead <= '9')) ADVANCE (42); END_STATE (); case 45: if (eof) ADVANCE (47); if (lookahead == '\n') SKIP (0) END_STATE (); case 46: if (eof) ADVANCE (47); if (lookahead == '\n') SKIP (0) if (lookahead == '\r') SKIP (45) END_STATE (); case 47: ACCEPT_TOKEN (ts_builtin_sym_end); END_STATE (); case 48: ACCEPT_TOKEN (anon_sym_LF); if (lookahead == '\n') ADVANCE (48); END_STATE (); case 49: ACCEPT_TOKEN (anon_sym_pick); END_STATE (); case 50: ACCEPT_TOKEN (anon_sym_p); if (lookahead == 'i') ADVANCE (18); END_STATE (); case 51: ACCEPT_TOKEN (anon_sym_watch); END_STATE (); case 52: ACCEPT_TOKEN (anon_sym_w); if (lookahead == 'a') ADVANCE (37); END_STATE (); case 53: ACCEPT_TOKEN (anon_sym_drop); END_STATE (); case 54: ACCEPT_TOKEN (anon_sym_d); if (lookahead == 'r') ADVANCE (31); END_STATE (); case 55: ACCEPT_TOKEN (anon_sym_url); END_STATE (); case 56: ACCEPT_TOKEN (anon_sym_u); if (lookahead == 'r') ADVANCE (27); END_STATE (); case 57: ACCEPT_TOKEN (sym_id); if (lookahead == '-') ADVANCE (43); if (lookahead == 'h') ADVANCE (9); if (lookahead == 'm') ADVANCE (10); if (('0' <= lookahead && lookahead <= '9')) ADVANCE (61); END_STATE (); case 58: ACCEPT_TOKEN (sym_id); if (lookahead == 'h') ADVANCE (9); if (lookahead == 'm') ADVANCE (10); if (('0' <= lookahead && lookahead <= '9')) ADVANCE (57); END_STATE (); case 59: ACCEPT_TOKEN (sym_id); if (lookahead == 'h') ADVANCE (9); if (lookahead == 'm') ADVANCE (10); if (('0' <= lookahead && lookahead <= '9')) ADVANCE (58); END_STATE (); case 60: ACCEPT_TOKEN (sym_id); if (lookahead == 'h') ADVANCE (9); if (lookahead == 'm') ADVANCE (10); if (('0' <= lookahead && lookahead <= '9')) ADVANCE (59); END_STATE (); case 61: ACCEPT_TOKEN (sym_id); if (lookahead == 'h') ADVANCE (9); if (lookahead == 'm') ADVANCE (10); if (('0' <= lookahead && lookahead <= '9')) ADVANCE (61); END_STATE (); case 62: ACCEPT_TOKEN (sym_id); if (('0' <= lookahead && lookahead <= '9')) ADVANCE (62); END_STATE (); case 63: ACCEPT_TOKEN (aux_sym_title_token1); if (lookahead == '\n') ADVANCE (65); if (lookahead == '\r') ADVANCE (64); if (lookahead != 0 && lookahead != '"') ADVANCE (66); END_STATE (); case 64: ACCEPT_TOKEN (aux_sym_title_token1); if (lookahead == '\n') ADVANCE (65); if (lookahead != 0 && lookahead != '"') ADVANCE (66); END_STATE (); case 65: ACCEPT_TOKEN (aux_sym_title_token1); if (lookahead == '\\') ADVANCE (63); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') ADVANCE (65); if (lookahead != 0 && lookahead != '"') ADVANCE (66); END_STATE (); case 66: ACCEPT_TOKEN (aux_sym_title_token1); if (lookahead != 0 && lookahead != '"') ADVANCE (66); END_STATE (); case 67: ACCEPT_TOKEN (aux_sym_date_token1); END_STATE (); case 68: ACCEPT_TOKEN (anon_sym_LBRACK); END_STATE (); case 69: ACCEPT_TOKEN (anon_sym_NoDuration); END_STATE (); case 70: ACCEPT_TOKEN (aux_sym_duration_token1); END_STATE (); case 71: ACCEPT_TOKEN (aux_sym_duration_token2); END_STATE (); case 72: ACCEPT_TOKEN (anon_sym_RBRACK); END_STATE (); case 73: ACCEPT_TOKEN (sym_comment); if (lookahead != 0 && lookahead != '\n') ADVANCE (73); END_STATE (); case 74: ACCEPT_TOKEN (sym_quote); END_STATE (); default: return false; } } static const TSLexMode ts_lex_modes[STATE_COUNT] = { [0] = { .lex_state = 0 }, [1] = { .lex_state = 0 }, [2] = { .lex_state = 0 }, [3] = { .lex_state = 0 }, [4] = { .lex_state = 0 }, [5] = { .lex_state = 0 }, [6] = { .lex_state = 0 }, [7] = { .lex_state = 0 }, [8] = { .lex_state = 14 }, [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 = 15 }, [17] = { .lex_state = 0 }, [18] = { .lex_state = 0 }, [19] = { .lex_state = 16 }, [20] = { .lex_state = 0 }, [21] = { .lex_state = 7 }, [22] = { .lex_state = 15 }, [23] = { .lex_state = 14 }, [24] = { .lex_state = 0 }, [25] = { .lex_state = 15 }, [26] = { .lex_state = 16 }, [27] = { .lex_state = 0 }, [28] = { .lex_state = 7 }, [29] = { .lex_state = 0 }, [30] = { .lex_state = 0 }, }; static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [0] = { [ts_builtin_sym_end] = ACTIONS(1), [anon_sym_pick] = ACTIONS(1), [anon_sym_p] = ACTIONS(1), [anon_sym_watch] = ACTIONS(1), [anon_sym_w] = ACTIONS(1), [anon_sym_drop] = ACTIONS(1), [anon_sym_d] = ACTIONS(1), [anon_sym_url] = ACTIONS(1), [anon_sym_u] = ACTIONS(1), [sym_id] = ACTIONS(1), [aux_sym_date_token1] = ACTIONS(1), [anon_sym_LBRACK] = ACTIONS(1), [anon_sym_NoDuration] = ACTIONS(1), [aux_sym_duration_token1] = ACTIONS(1), [aux_sym_duration_token2] = ACTIONS(1), [anon_sym_RBRACK] = ACTIONS(1), [sym_comment] = ACTIONS(1), [sym_quote] = ACTIONS(1), }, [1] = { [sym_source_file] = STATE(29), [sym_line] = STATE(2), [sym_command] = STATE(26), [aux_sym_source_file_repeat1] = STATE(2), [ts_builtin_sym_end] = ACTIONS(3), [anon_sym_pick] = ACTIONS(5), [anon_sym_p] = ACTIONS(7), [anon_sym_watch] = ACTIONS(5), [anon_sym_w] = ACTIONS(7), [anon_sym_drop] = ACTIONS(5), [anon_sym_d] = ACTIONS(7), [anon_sym_url] = ACTIONS(5), [anon_sym_u] = ACTIONS(7), [sym_comment] = ACTIONS(9), }, }; static const uint16_t ts_small_parse_table[] = { [0] = 6, ACTIONS (11), 1, ts_builtin_sym_end, ACTIONS (13), 1, sym_comment, STATE (26), 1, sym_command, STATE (3), 2, sym_line, aux_sym_source_file_repeat1, ACTIONS (5), 4, anon_sym_pick, anon_sym_watch, anon_sym_drop, anon_sym_url, ACTIONS (7), 4, anon_sym_p, anon_sym_w, anon_sym_d, anon_sym_u, [26] = 6, ACTIONS (15), 1, ts_builtin_sym_end, ACTIONS (23), 1, sym_comment, STATE (26), 1, sym_command, STATE (3), 2, sym_line, aux_sym_source_file_repeat1, ACTIONS (17), 4, anon_sym_pick, anon_sym_watch, anon_sym_drop, anon_sym_url, ACTIONS (20), 4, anon_sym_p, anon_sym_w, anon_sym_d, anon_sym_u, [52] = 2, ACTIONS (28), 4, anon_sym_p, anon_sym_w, anon_sym_d, anon_sym_u, ACTIONS (26), 6, ts_builtin_sym_end, anon_sym_pick, anon_sym_watch, anon_sym_drop, anon_sym_url, sym_comment, [67] = 3, ACTIONS (30), 1, sym_quote, STATE (21), 1, sym_url, STATE (22), 1, sym__q, [77] = 3, ACTIONS (32), 1, sym_quote, STATE (7), 1, sym_title, STATE (25), 1, sym__q, [87] = 3, ACTIONS (34), 1, sym_quote, STATE (9), 1, sym_date, STATE (23), 1, sym__q, [97] = 1, ACTIONS (36), 3, anon_sym_NoDuration, aux_sym_duration_token1, aux_sym_duration_token2, [103] = 3, ACTIONS (38), 1, sym_quote, STATE (10), 1, sym_author, STATE (16), 1, sym__q, [113] = 3, ACTIONS (40), 1, sym_quote, STATE (5), 1, sym_duration, STATE (18), 1, sym__q, [123] = 2, ACTIONS (42), 1, sym_quote, STATE (30), 1, sym__q, [130] = 2, ACTIONS (44), 1, sym_quote, STATE (28), 1, sym__q, [137] = 2, ACTIONS (46), 1, sym_quote, STATE (24), 1, sym__q, [144] = 2, ACTIONS (48), 1, sym_quote, STATE (17), 1, sym__q, [151] = 2, ACTIONS (50), 1, sym_quote, STATE (20), 1, sym__q, [158] = 1, ACTIONS (52), 1, aux_sym_title_token1, [162] = 1, ACTIONS (54), 1, sym_quote, [166] = 1, ACTIONS (56), 1, anon_sym_LBRACK, [170] = 1, ACTIONS (58), 1, sym_id, [174] = 1, ACTIONS (60), 1, sym_quote, [178] = 1, ACTIONS (62), 1, anon_sym_LF, [182] = 1, ACTIONS (64), 1, aux_sym_title_token1, [186] = 1, ACTIONS (66), 1, aux_sym_date_token1, [190] = 1, ACTIONS (68), 1, sym_quote, [194] = 1, ACTIONS (70), 1, aux_sym_title_token1, [198] = 1, ACTIONS (72), 1, sym_id, [202] = 1, ACTIONS (74), 1, anon_sym_RBRACK, [206] = 1, ACTIONS (76), 1, anon_sym_LF, [210] = 1, ACTIONS (78), 1, ts_builtin_sym_end, [214] = 1, ACTIONS (80), 1, sym_quote, }; static const uint32_t ts_small_parse_table_map[] = { [SMALL_STATE (2)] = 0, [SMALL_STATE (3)] = 26, [SMALL_STATE (4)] = 52, [SMALL_STATE (5)] = 67, [SMALL_STATE (6)] = 77, [SMALL_STATE (7)] = 87, [SMALL_STATE (8)] = 97, [SMALL_STATE (9)] = 103, [SMALL_STATE (10)] = 113, [SMALL_STATE (11)] = 123, [SMALL_STATE (12)] = 130, [SMALL_STATE (13)] = 137, [SMALL_STATE (14)] = 144, [SMALL_STATE (15)] = 151, [SMALL_STATE (16)] = 158, [SMALL_STATE (17)] = 162, [SMALL_STATE (18)] = 166, [SMALL_STATE (19)] = 170, [SMALL_STATE (20)] = 174, [SMALL_STATE (21)] = 178, [SMALL_STATE (22)] = 182, [SMALL_STATE (23)] = 186, [SMALL_STATE (24)] = 190, [SMALL_STATE (25)] = 194, [SMALL_STATE (26)] = 198, [SMALL_STATE (27)] = 202, [SMALL_STATE (28)] = 206, [SMALL_STATE (29)] = 210, [SMALL_STATE (30)] = 214, }; static const TSParseActionEntry ts_parse_actions[] = { [0] = { .entry = { .count = 0, .reusable = false } }, [1] = { .entry = { .count = 1, .reusable = false } }, RECOVER (), [3] = { .entry = { .count = 1, .reusable = true } }, REDUCE (sym_source_file, 0), [5] = { .entry = { .count = 1, .reusable = true } }, SHIFT (19), [7] = { .entry = { .count = 1, .reusable = false } }, SHIFT (19), [9] = { .entry = { .count = 1, .reusable = true } }, SHIFT (2), [11] = { .entry = { .count = 1, .reusable = true } }, REDUCE (sym_source_file, 1), [13] = { .entry = { .count = 1, .reusable = true } }, SHIFT (3), [15] = { .entry = { .count = 1, .reusable = true } }, REDUCE (aux_sym_source_file_repeat1, 2), [17] = { .entry = { .count = 2, .reusable = true } }, REDUCE (aux_sym_source_file_repeat1, 2), SHIFT_REPEAT (19), [20] = { .entry = { .count = 2, .reusable = false } }, REDUCE (aux_sym_source_file_repeat1, 2), SHIFT_REPEAT (19), [23] = { .entry = { .count = 2, .reusable = true } }, REDUCE (aux_sym_source_file_repeat1, 2), SHIFT_REPEAT (3), [26] = { .entry = { .count = 1, .reusable = true } }, REDUCE (sym_line, 8), [28] = { .entry = { .count = 1, .reusable = false } }, REDUCE (sym_line, 8), [30] = { .entry = { .count = 1, .reusable = true } }, SHIFT (22), [32] = { .entry = { .count = 1, .reusable = true } }, SHIFT (25), [34] = { .entry = { .count = 1, .reusable = true } }, SHIFT (23), [36] = { .entry = { .count = 1, .reusable = true } }, SHIFT (27), [38] = { .entry = { .count = 1, .reusable = true } }, SHIFT (16), [40] = { .entry = { .count = 1, .reusable = true } }, SHIFT (18), [42] = { .entry = { .count = 1, .reusable = true } }, SHIFT (30), [44] = { .entry = { .count = 1, .reusable = true } }, SHIFT (28), [46] = { .entry = { .count = 1, .reusable = true } }, SHIFT (24), [48] = { .entry = { .count = 1, .reusable = true } }, SHIFT (17), [50] = { .entry = { .count = 1, .reusable = true } }, SHIFT (20), [52] = { .entry = { .count = 1, .reusable = true } }, SHIFT (13), [54] = { .entry = { .count = 1, .reusable = true } }, REDUCE (sym_title, 3), [56] = { .entry = { .count = 1, .reusable = true } }, SHIFT (8), [58] = { .entry = { .count = 1, .reusable = true } }, REDUCE (sym_command, 1), [60] = { .entry = { .count = 1, .reusable = true } }, REDUCE (sym_date, 3), [62] = { .entry = { .count = 1, .reusable = true } }, SHIFT (4), [64] = { .entry = { .count = 1, .reusable = true } }, SHIFT (12), [66] = { .entry = { .count = 1, .reusable = true } }, SHIFT (15), [68] = { .entry = { .count = 1, .reusable = true } }, REDUCE (sym_author, 3), [70] = { .entry = { .count = 1, .reusable = true } }, SHIFT (14), [72] = { .entry = { .count = 1, .reusable = true } }, SHIFT (6), [74] = { .entry = { .count = 1, .reusable = true } }, SHIFT (11), [76] = { .entry = { .count = 1, .reusable = true } }, REDUCE (sym_url, 3), [78] = { .entry = { .count = 1, .reusable = true } }, ACCEPT_INPUT (), [80] = { .entry = { .count = 1, .reusable = true } }, REDUCE (sym_duration, 5), }; #ifdef __cplusplus extern "C" { #endif #ifdef _WIN32 #define extern __declspec (dllexport) #endif extern const TSLanguage * tree_sitter_yts (void) { static const TSLanguage language = { .version = LANGUAGE_VERSION, .symbol_count = SYMBOL_COUNT, .alias_count = ALIAS_COUNT, .token_count = TOKEN_COUNT, .external_token_count = EXTERNAL_TOKEN_COUNT, .state_count = STATE_COUNT, .large_state_count = LARGE_STATE_COUNT, .production_id_count = PRODUCTION_ID_COUNT, .field_count = FIELD_COUNT, .max_alias_sequence_length = MAX_ALIAS_SEQUENCE_LENGTH, .parse_table = &ts_parse_table[0][0], .small_parse_table = ts_small_parse_table, .small_parse_table_map = ts_small_parse_table_map, .parse_actions = ts_parse_actions, .symbol_names = ts_symbol_names, .symbol_metadata = ts_symbol_metadata, .public_symbol_map = ts_symbol_map, .alias_map = ts_non_terminal_alias_map, .alias_sequences = &ts_alias_sequences[0][0], .lex_modes = ts_lex_modes, .lex_fn = ts_lex, .primary_state_ids = ts_primary_state_ids, }; return &language; } #ifdef __cplusplus } #endif