#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 39 #define LARGE_STATE_COUNT 2 #define SYMBOL_COUNT 42 #define ALIAS_COUNT 0 #define TOKEN_COUNT 30 #define EXTERNAL_TOKEN_COUNT 0 #define FIELD_COUNT 0 #define MAX_ALIAS_SEQUENCE_LENGTH 9 #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, aux_sym_flag_token1 = 10, aux_sym_flag_token2 = 11, aux_sym_flag_token3 = 12, aux_sym_flag_token4 = 13, aux_sym_flag_token5 = 14, aux_sym_flag_token6 = 15, aux_sym_flag_token7 = 16, aux_sym_flag_token8 = 17, aux_sym_flag_token9 = 18, aux_sym_flag_token10 = 19, aux_sym_flag_token11 = 20, aux_sym_flag_token12 = 21, sym_id = 22, aux_sym_title_token1 = 23, aux_sym_date_token1 = 24, anon_sym_LBRACKNoDuration_RBRACK = 25, aux_sym_duration_token1 = 26, aux_sym_duration_token2 = 27, sym_comment = 28, sym_quote = 29, sym_source_file = 30, sym_line = 31, sym_command = 32, sym_flag = 33, sym_title = 34, sym_date = 35, sym_author = 36, sym_duration = 37, sym_url = 38, sym__q = 39, aux_sym_source_file_repeat1 = 40, aux_sym_line_repeat1 = 41, }; 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", [aux_sym_flag_token1] = "flag_token1", [aux_sym_flag_token2] = "flag_token2", [aux_sym_flag_token3] = "flag_token3", [aux_sym_flag_token4] = "flag_token4", [aux_sym_flag_token5] = "flag_token5", [aux_sym_flag_token6] = "flag_token6", [aux_sym_flag_token7] = "flag_token7", [aux_sym_flag_token8] = "flag_token8", [aux_sym_flag_token9] = "flag_token9", [aux_sym_flag_token10] = "flag_token10", [aux_sym_flag_token11] = "flag_token11", [aux_sym_flag_token12] = "flag_token12", [sym_id] = "id", [aux_sym_title_token1] = "title_token1", [aux_sym_date_token1] = "date_token1", [anon_sym_LBRACKNoDuration_RBRACK] = "[No Duration]", [aux_sym_duration_token1] = "duration_token1", [aux_sym_duration_token2] = "duration_token2", [sym_comment] = "comment", [sym_quote] = "quote", [sym_source_file] = "source_file", [sym_line] = "line", [sym_command] = "command", [sym_flag] = "flag", [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", [aux_sym_line_repeat1] = "line_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, [aux_sym_flag_token1] = aux_sym_flag_token1, [aux_sym_flag_token2] = aux_sym_flag_token2, [aux_sym_flag_token3] = aux_sym_flag_token3, [aux_sym_flag_token4] = aux_sym_flag_token4, [aux_sym_flag_token5] = aux_sym_flag_token5, [aux_sym_flag_token6] = aux_sym_flag_token6, [aux_sym_flag_token7] = aux_sym_flag_token7, [aux_sym_flag_token8] = aux_sym_flag_token8, [aux_sym_flag_token9] = aux_sym_flag_token9, [aux_sym_flag_token10] = aux_sym_flag_token10, [aux_sym_flag_token11] = aux_sym_flag_token11, [aux_sym_flag_token12] = aux_sym_flag_token12, [sym_id] = sym_id, [aux_sym_title_token1] = aux_sym_title_token1, [aux_sym_date_token1] = aux_sym_date_token1, [anon_sym_LBRACKNoDuration_RBRACK] = anon_sym_LBRACKNoDuration_RBRACK, [aux_sym_duration_token1] = aux_sym_duration_token1, [aux_sym_duration_token2] = aux_sym_duration_token2, [sym_comment] = sym_comment, [sym_quote] = sym_quote, [sym_source_file] = sym_source_file, [sym_line] = sym_line, [sym_command] = sym_command, [sym_flag] = sym_flag, [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, [aux_sym_line_repeat1] = aux_sym_line_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, }, [aux_sym_flag_token1] = { .visible = false, .named = false, }, [aux_sym_flag_token2] = { .visible = false, .named = false, }, [aux_sym_flag_token3] = { .visible = false, .named = false, }, [aux_sym_flag_token4] = { .visible = false, .named = false, }, [aux_sym_flag_token5] = { .visible = false, .named = false, }, [aux_sym_flag_token6] = { .visible = false, .named = false, }, [aux_sym_flag_token7] = { .visible = false, .named = false, }, [aux_sym_flag_token8] = { .visible = false, .named = false, }, [aux_sym_flag_token9] = { .visible = false, .named = false, }, [aux_sym_flag_token10] = { .visible = false, .named = false, }, [aux_sym_flag_token11] = { .visible = false, .named = false, }, [aux_sym_flag_token12] = { .visible = false, .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_LBRACKNoDuration_RBRACK] = { .visible = true, .named = false, }, [aux_sym_duration_token1] = { .visible = false, .named = false, }, [aux_sym_duration_token2] = { .visible = false, .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_flag] = { .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, }, [aux_sym_line_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, [31] = 31, [32] = 32, [33] = 33, [34] = 34, [35] = 35, [36] = 36, [37] = 37, [38] = 38, }; static bool ts_lex (TSLexer *lexer, TSStateId state) { START_LEXER (); eof = lexer->eof (lexer); switch (state) { case 0: if (eof) ADVANCE (56); if (lookahead == '"') ADVANCE (94); if (lookahead == '#') ADVANCE (93); if (lookahead == '-') ADVANCE (20); if (lookahead == '[') ADVANCE (24); if (lookahead == 'd') ADVANCE (63); if (lookahead == 'p') ADVANCE (59); if (lookahead == 'u') ADVANCE (65); if (lookahead == 'w') ADVANCE (61); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP (0) if (('0' <= lookahead && lookahead <= '9')) ADVANCE (31); END_STATE (); case 1: if (lookahead == '\n') ADVANCE (57); if (lookahead == '\t' || lookahead == '\r' || lookahead == ' ') SKIP (1) END_STATE (); case 2: if (lookahead == ' ') ADVANCE (7); if (lookahead == '=') ADVANCE (8); END_STATE (); case 3: if (lookahead == ' ') ADVANCE (49); END_STATE (); case 4: if (lookahead == ' ') ADVANCE (23); END_STATE (); case 5: if (lookahead == ' ') ADVANCE (50); END_STATE (); case 6: if (lookahead == ' ') ADVANCE (9); if (lookahead == '=') ADVANCE (10); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE (6); END_STATE (); case 7: if (lookahead == '"') ADVANCE (66); if (lookahead == '\'') ADVANCE (67); if (lookahead != 0 && lookahead != '\t' && lookahead != '\n' && lookahead != '\r' && lookahead != ' ') ADVANCE (68); END_STATE (); case 8: if (lookahead == '"') ADVANCE (71); if (lookahead == '\'') ADVANCE (72); if (lookahead != 0 && lookahead != '\t' && lookahead != '\n' && lookahead != '\r' && lookahead != ' ') ADVANCE (73); END_STATE (); case 9: if (lookahead == '"') ADVANCE (76); if (lookahead == '\'') ADVANCE (77); if (lookahead != 0 && lookahead != '\t' && lookahead != '\n' && lookahead != '\r' && lookahead != ' ') ADVANCE (78); END_STATE (); case 10: if (lookahead == '"') ADVANCE (81); if (lookahead == '\'') ADVANCE (82); if (lookahead != 0 && lookahead != '\t' && lookahead != '\n' && lookahead != '\r' && lookahead != ' ') ADVANCE (83); END_STATE (); case 11: if (lookahead == '"') ADVANCE (70); if (lookahead != 0) ADVANCE (11); END_STATE (); case 12: if (lookahead == '"') ADVANCE (75); if (lookahead != 0) ADVANCE (12); END_STATE (); case 13: if (lookahead == '"') ADVANCE (80); if (lookahead != 0) ADVANCE (13); END_STATE (); case 14: if (lookahead == '"') ADVANCE (85); if (lookahead != 0) ADVANCE (14); END_STATE (); case 15: if (lookahead == '\'') ADVANCE (69); if (lookahead != 0) ADVANCE (15); END_STATE (); case 16: if (lookahead == '\'') ADVANCE (74); if (lookahead != 0) ADVANCE (16); END_STATE (); case 17: if (lookahead == '\'') ADVANCE (79); if (lookahead != 0) ADVANCE (17); END_STATE (); case 18: if (lookahead == '\'') ADVANCE (84); if (lookahead != 0) ADVANCE (18); END_STATE (); case 19: if (lookahead == '-') ADVANCE (20); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP (19) if (('0' <= lookahead && lookahead <= '9') || ('a' <= lookahead && lookahead <= 'z')) ADVANCE (86); END_STATE (); case 20: if (lookahead == '-') ADVANCE (55); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE (2); END_STATE (); case 21: if (lookahead == '-') ADVANCE (53); if (lookahead == 'h') ADVANCE (3); if (lookahead == 'm') ADVANCE (5); if (('0' <= lookahead && lookahead <= '9')) ADVANCE (32); END_STATE (); case 22: if (lookahead == '-') ADVANCE (54); END_STATE (); case 23: if (lookahead == 'D') ADVANCE (47); END_STATE (); case 24: if (lookahead == 'N') ADVANCE (41); END_STATE (); case 25: if (lookahead == ']') ADVANCE (90); END_STATE (); case 26: if (lookahead == 'a') ADVANCE (45); END_STATE (); case 27: if (lookahead == 'c') ADVANCE (35); END_STATE (); case 28: if (lookahead == 'c') ADVANCE (33); END_STATE (); case 29: if (lookahead == 'h') ADVANCE (3); if (lookahead == 'm') ADVANCE (5); if (('0' <= lookahead && lookahead <= '9')) ADVANCE (21); END_STATE (); case 30: if (lookahead == 'h') ADVANCE (3); if (lookahead == 'm') ADVANCE (5); if (('0' <= lookahead && lookahead <= '9')) ADVANCE (29); END_STATE (); case 31: if (lookahead == 'h') ADVANCE (3); if (lookahead == 'm') ADVANCE (5); if (('0' <= lookahead && lookahead <= '9')) ADVANCE (30); END_STATE (); case 32: if (lookahead == 'h') ADVANCE (3); if (lookahead == 'm') ADVANCE (5); if (('0' <= lookahead && lookahead <= '9')) ADVANCE (32); END_STATE (); case 33: if (lookahead == 'h') ADVANCE (60); END_STATE (); case 34: if (lookahead == 'i') ADVANCE (40); END_STATE (); case 35: if (lookahead == 'k') ADVANCE (58); END_STATE (); case 36: if (lookahead == 'l') ADVANCE (64); END_STATE (); case 37: if (lookahead == 'm') ADVANCE (92); if (('0' <= lookahead && lookahead <= '9')) ADVANCE (37); END_STATE (); case 38: if (lookahead == 'n') ADVANCE (25); END_STATE (); case 39: if (lookahead == 'o') ADVANCE (42); END_STATE (); case 40: if (lookahead == 'o') ADVANCE (38); END_STATE (); case 41: if (lookahead == 'o') ADVANCE (4); END_STATE (); case 42: if (lookahead == 'p') ADVANCE (62); END_STATE (); case 43: if (lookahead == 'r') ADVANCE (26); END_STATE (); case 44: if (lookahead == 's') ADVANCE (91); if (('0' <= lookahead && lookahead <= '9')) ADVANCE (44); END_STATE (); case 45: if (lookahead == 't') ADVANCE (34); END_STATE (); case 46: if (lookahead == 't') ADVANCE (28); END_STATE (); case 47: if (lookahead == 'u') ADVANCE (43); END_STATE (); case 48: if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') ADVANCE (87); if (lookahead != 0 && lookahead != '"') ADVANCE (88); END_STATE (); case 49: if (('0' <= lookahead && lookahead <= '9')) ADVANCE (37); END_STATE (); case 50: if (('0' <= lookahead && lookahead <= '9')) ADVANCE (44); END_STATE (); case 51: if (('0' <= lookahead && lookahead <= '9')) ADVANCE (22); END_STATE (); case 52: if (('0' <= lookahead && lookahead <= '9')) ADVANCE (89); END_STATE (); case 53: if (('0' <= lookahead && lookahead <= '9')) ADVANCE (51); END_STATE (); case 54: if (('0' <= lookahead && lookahead <= '9')) ADVANCE (52); END_STATE (); case 55: if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z')) ADVANCE (6); END_STATE (); case 56: ACCEPT_TOKEN (ts_builtin_sym_end); END_STATE (); case 57: ACCEPT_TOKEN (anon_sym_LF); if (lookahead == '\n') ADVANCE (57); END_STATE (); case 58: ACCEPT_TOKEN (anon_sym_pick); END_STATE (); case 59: ACCEPT_TOKEN (anon_sym_p); if (lookahead == 'i') ADVANCE (27); END_STATE (); case 60: ACCEPT_TOKEN (anon_sym_watch); END_STATE (); case 61: ACCEPT_TOKEN (anon_sym_w); if (lookahead == 'a') ADVANCE (46); END_STATE (); case 62: ACCEPT_TOKEN (anon_sym_drop); END_STATE (); case 63: ACCEPT_TOKEN (anon_sym_d); if (lookahead == 'r') ADVANCE (39); END_STATE (); case 64: ACCEPT_TOKEN (anon_sym_url); END_STATE (); case 65: ACCEPT_TOKEN (anon_sym_u); if (lookahead == 'r') ADVANCE (36); END_STATE (); case 66: ACCEPT_TOKEN (aux_sym_flag_token1); if (lookahead == '"') ADVANCE (68); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') ADVANCE (11); if (lookahead != 0) ADVANCE (66); END_STATE (); case 67: ACCEPT_TOKEN (aux_sym_flag_token1); if (lookahead == '\'') ADVANCE (68); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') ADVANCE (15); if (lookahead != 0) ADVANCE (67); END_STATE (); case 68: ACCEPT_TOKEN (aux_sym_flag_token1); if (lookahead != 0 && lookahead != '\t' && lookahead != '\n' && lookahead != '\r' && lookahead != ' ') ADVANCE (68); END_STATE (); case 69: ACCEPT_TOKEN (aux_sym_flag_token2); END_STATE (); case 70: ACCEPT_TOKEN (aux_sym_flag_token3); END_STATE (); case 71: ACCEPT_TOKEN (aux_sym_flag_token4); if (lookahead == '"') ADVANCE (73); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') ADVANCE (12); if (lookahead != 0) ADVANCE (71); END_STATE (); case 72: ACCEPT_TOKEN (aux_sym_flag_token4); if (lookahead == '\'') ADVANCE (73); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') ADVANCE (16); if (lookahead != 0) ADVANCE (72); END_STATE (); case 73: ACCEPT_TOKEN (aux_sym_flag_token4); if (lookahead != 0 && lookahead != '\t' && lookahead != '\n' && lookahead != '\r' && lookahead != ' ') ADVANCE (73); END_STATE (); case 74: ACCEPT_TOKEN (aux_sym_flag_token5); END_STATE (); case 75: ACCEPT_TOKEN (aux_sym_flag_token6); END_STATE (); case 76: ACCEPT_TOKEN (aux_sym_flag_token7); if (lookahead == '"') ADVANCE (78); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') ADVANCE (13); if (lookahead != 0) ADVANCE (76); END_STATE (); case 77: ACCEPT_TOKEN (aux_sym_flag_token7); if (lookahead == '\'') ADVANCE (78); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') ADVANCE (17); if (lookahead != 0) ADVANCE (77); END_STATE (); case 78: ACCEPT_TOKEN (aux_sym_flag_token7); if (lookahead != 0 && lookahead != '\t' && lookahead != '\n' && lookahead != '\r' && lookahead != ' ') ADVANCE (78); END_STATE (); case 79: ACCEPT_TOKEN (aux_sym_flag_token8); END_STATE (); case 80: ACCEPT_TOKEN (aux_sym_flag_token9); END_STATE (); case 81: ACCEPT_TOKEN (aux_sym_flag_token10); if (lookahead == '"') ADVANCE (83); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') ADVANCE (14); if (lookahead != 0) ADVANCE (81); END_STATE (); case 82: ACCEPT_TOKEN (aux_sym_flag_token10); if (lookahead == '\'') ADVANCE (83); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') ADVANCE (18); if (lookahead != 0) ADVANCE (82); END_STATE (); case 83: ACCEPT_TOKEN (aux_sym_flag_token10); if (lookahead != 0 && lookahead != '\t' && lookahead != '\n' && lookahead != '\r' && lookahead != ' ') ADVANCE (83); END_STATE (); case 84: ACCEPT_TOKEN (aux_sym_flag_token11); END_STATE (); case 85: ACCEPT_TOKEN (aux_sym_flag_token12); END_STATE (); case 86: ACCEPT_TOKEN (sym_id); if (('0' <= lookahead && lookahead <= '9') || ('a' <= lookahead && lookahead <= 'z')) ADVANCE (86); END_STATE (); case 87: ACCEPT_TOKEN (aux_sym_title_token1); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') ADVANCE (87); if (lookahead != 0 && lookahead != '"') ADVANCE (88); END_STATE (); case 88: ACCEPT_TOKEN (aux_sym_title_token1); if (lookahead != 0 && lookahead != '"') ADVANCE (88); END_STATE (); case 89: ACCEPT_TOKEN (aux_sym_date_token1); END_STATE (); case 90: ACCEPT_TOKEN (anon_sym_LBRACKNoDuration_RBRACK); END_STATE (); case 91: ACCEPT_TOKEN (aux_sym_duration_token1); END_STATE (); case 92: ACCEPT_TOKEN (aux_sym_duration_token2); END_STATE (); case 93: ACCEPT_TOKEN (sym_comment); if (lookahead != 0 && lookahead != '\n') ADVANCE (93); END_STATE (); case 94: 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 = 19 }, [3] = { .lex_state = 19 }, [4] = { .lex_state = 19 }, [5] = { .lex_state = 19 }, [6] = { .lex_state = 0 }, [7] = { .lex_state = 19 }, [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 = 0 }, [26] = { .lex_state = 0 }, [27] = { .lex_state = 0 }, [28] = { .lex_state = 48 }, [29] = { .lex_state = 0 }, [30] = { .lex_state = 1 }, [31] = { .lex_state = 48 }, [32] = { .lex_state = 0 }, [33] = { .lex_state = 0 }, [34] = { .lex_state = 0 }, [35] = { .lex_state = 0 }, [36] = { .lex_state = 1 }, [37] = { .lex_state = 1 }, [38] = { .lex_state = 48 }, }; 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), [aux_sym_flag_token1] = ACTIONS(1), [aux_sym_flag_token2] = ACTIONS(1), [aux_sym_flag_token3] = ACTIONS(1), [aux_sym_flag_token4] = ACTIONS(1), [aux_sym_flag_token5] = ACTIONS(1), [aux_sym_flag_token6] = ACTIONS(1), [aux_sym_flag_token7] = ACTIONS(1), [aux_sym_flag_token8] = ACTIONS(1), [aux_sym_flag_token9] = ACTIONS(1), [aux_sym_flag_token10] = ACTIONS(1), [aux_sym_flag_token11] = ACTIONS(1), [aux_sym_flag_token12] = ACTIONS(1), [aux_sym_date_token1] = ACTIONS(1), [anon_sym_LBRACKNoDuration_RBRACK] = ACTIONS(1), [aux_sym_duration_token1] = ACTIONS(1), [aux_sym_duration_token2] = ACTIONS(1), [sym_comment] = ACTIONS(1), [sym_quote] = ACTIONS(1), }, [1] = { [sym_source_file] = STATE(34), [sym_line] = STATE(6), [sym_command] = STATE(3), [aux_sym_source_file_repeat1] = STATE(6), [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] = 3, ACTIONS (14), 1, sym_id, STATE (2), 2, sym_flag, aux_sym_line_repeat1, ACTIONS (11), 12, aux_sym_flag_token1, aux_sym_flag_token2, aux_sym_flag_token3, aux_sym_flag_token4, aux_sym_flag_token5, aux_sym_flag_token6, aux_sym_flag_token7, aux_sym_flag_token8, aux_sym_flag_token9, aux_sym_flag_token10, aux_sym_flag_token11, aux_sym_flag_token12, [22] = 3, ACTIONS (18), 1, sym_id, STATE (4), 2, sym_flag, aux_sym_line_repeat1, ACTIONS (16), 12, aux_sym_flag_token1, aux_sym_flag_token2, aux_sym_flag_token3, aux_sym_flag_token4, aux_sym_flag_token5, aux_sym_flag_token6, aux_sym_flag_token7, aux_sym_flag_token8, aux_sym_flag_token9, aux_sym_flag_token10, aux_sym_flag_token11, aux_sym_flag_token12, [44] = 3, ACTIONS (20), 1, sym_id, STATE (2), 2, sym_flag, aux_sym_line_repeat1, ACTIONS (16), 12, aux_sym_flag_token1, aux_sym_flag_token2, aux_sym_flag_token3, aux_sym_flag_token4, aux_sym_flag_token5, aux_sym_flag_token6, aux_sym_flag_token7, aux_sym_flag_token8, aux_sym_flag_token9, aux_sym_flag_token10, aux_sym_flag_token11, aux_sym_flag_token12, [66] = 2, ACTIONS (24), 1, sym_id, ACTIONS (22), 12, aux_sym_flag_token1, aux_sym_flag_token2, aux_sym_flag_token3, aux_sym_flag_token4, aux_sym_flag_token5, aux_sym_flag_token6, aux_sym_flag_token7, aux_sym_flag_token8, aux_sym_flag_token9, aux_sym_flag_token10, aux_sym_flag_token11, aux_sym_flag_token12, [84] = 6, ACTIONS (26), 1, ts_builtin_sym_end, ACTIONS (28), 1, sym_comment, STATE (3), 1, sym_command, STATE (8), 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, [110] = 2, ACTIONS (32), 1, sym_id, ACTIONS (30), 12, aux_sym_flag_token1, aux_sym_flag_token2, aux_sym_flag_token3, aux_sym_flag_token4, aux_sym_flag_token5, aux_sym_flag_token6, aux_sym_flag_token7, aux_sym_flag_token8, aux_sym_flag_token9, aux_sym_flag_token10, aux_sym_flag_token11, aux_sym_flag_token12, [128] = 6, ACTIONS (34), 1, ts_builtin_sym_end, ACTIONS (42), 1, sym_comment, STATE (3), 1, sym_command, STATE (8), 2, sym_line, aux_sym_source_file_repeat1, ACTIONS (36), 4, anon_sym_pick, anon_sym_watch, anon_sym_drop, anon_sym_url, ACTIONS (39), 4, anon_sym_p, anon_sym_w, anon_sym_d, anon_sym_u, [154] = 2, ACTIONS (47), 4, anon_sym_p, anon_sym_w, anon_sym_d, anon_sym_u, ACTIONS (45), 6, ts_builtin_sym_end, anon_sym_pick, anon_sym_watch, anon_sym_drop, anon_sym_url, sym_comment, [169] = 2, ACTIONS (51), 4, anon_sym_p, anon_sym_w, anon_sym_d, anon_sym_u, ACTIONS (49), 6, ts_builtin_sym_end, anon_sym_pick, anon_sym_watch, anon_sym_drop, anon_sym_url, sym_comment, [184] = 3, ACTIONS (53), 1, sym_quote, STATE (12), 1, sym__q, STATE (20), 1, sym_duration, [194] = 1, ACTIONS (55), 3, anon_sym_LBRACKNoDuration_RBRACK, aux_sym_duration_token1, aux_sym_duration_token2, [200] = 3, ACTIONS (57), 1, sym_quote, STATE (19), 1, sym_title, STATE (38), 1, sym__q, [210] = 3, ACTIONS (57), 1, sym_quote, STATE (18), 1, sym_title, STATE (38), 1, sym__q, [220] = 3, ACTIONS (59), 1, sym_quote, STATE (11), 1, sym_author, STATE (28), 1, sym__q, [230] = 3, ACTIONS (61), 1, sym_quote, STATE (31), 1, sym__q, STATE (36), 1, sym_url, [240] = 3, ACTIONS (53), 1, sym_quote, STATE (12), 1, sym__q, STATE (16), 1, sym_duration, [250] = 3, ACTIONS (63), 1, sym_quote, STATE (21), 1, sym_date, STATE (33), 1, sym__q, [260] = 3, ACTIONS (63), 1, sym_quote, STATE (15), 1, sym_date, STATE (33), 1, sym__q, [270] = 3, ACTIONS (61), 1, sym_quote, STATE (30), 1, sym_url, STATE (31), 1, sym__q, [280] = 3, ACTIONS (59), 1, sym_quote, STATE (17), 1, sym_author, STATE (28), 1, sym__q, [290] = 2, ACTIONS (65), 1, sym_quote, STATE (29), 1, sym__q, [297] = 2, ACTIONS (67), 1, sym_quote, STATE (32), 1, sym__q, [304] = 2, ACTIONS (69), 1, sym_quote, STATE (27), 1, sym__q, [311] = 2, ACTIONS (71), 1, sym_quote, STATE (35), 1, sym__q, [318] = 2, ACTIONS (73), 1, sym_quote, STATE (37), 1, sym__q, [325] = 1, ACTIONS (75), 1, sym_quote, [329] = 1, ACTIONS (77), 1, aux_sym_title_token1, [333] = 1, ACTIONS (79), 1, sym_quote, [337] = 1, ACTIONS (81), 1, anon_sym_LF, [341] = 1, ACTIONS (83), 1, aux_sym_title_token1, [345] = 1, ACTIONS (85), 1, sym_quote, [349] = 1, ACTIONS (87), 1, aux_sym_date_token1, [353] = 1, ACTIONS (89), 1, ts_builtin_sym_end, [357] = 1, ACTIONS (91), 1, sym_quote, [361] = 1, ACTIONS (93), 1, anon_sym_LF, [365] = 1, ACTIONS (95), 1, anon_sym_LF, [369] = 1, ACTIONS (97), 1, aux_sym_title_token1, }; static const uint32_t ts_small_parse_table_map[] = { [SMALL_STATE (2)] = 0, [SMALL_STATE (3)] = 22, [SMALL_STATE (4)] = 44, [SMALL_STATE (5)] = 66, [SMALL_STATE (6)] = 84, [SMALL_STATE (7)] = 110, [SMALL_STATE (8)] = 128, [SMALL_STATE (9)] = 154, [SMALL_STATE (10)] = 169, [SMALL_STATE (11)] = 184, [SMALL_STATE (12)] = 194, [SMALL_STATE (13)] = 200, [SMALL_STATE (14)] = 210, [SMALL_STATE (15)] = 220, [SMALL_STATE (16)] = 230, [SMALL_STATE (17)] = 240, [SMALL_STATE (18)] = 250, [SMALL_STATE (19)] = 260, [SMALL_STATE (20)] = 270, [SMALL_STATE (21)] = 280, [SMALL_STATE (22)] = 290, [SMALL_STATE (23)] = 297, [SMALL_STATE (24)] = 304, [SMALL_STATE (25)] = 311, [SMALL_STATE (26)] = 318, [SMALL_STATE (27)] = 325, [SMALL_STATE (28)] = 329, [SMALL_STATE (29)] = 333, [SMALL_STATE (30)] = 337, [SMALL_STATE (31)] = 341, [SMALL_STATE (32)] = 345, [SMALL_STATE (33)] = 349, [SMALL_STATE (34)] = 353, [SMALL_STATE (35)] = 357, [SMALL_STATE (36)] = 361, [SMALL_STATE (37)] = 365, [SMALL_STATE (38)] = 369, }; 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 (5), [7] = { .entry = { .count = 1, .reusable = false } }, SHIFT (5), [9] = { .entry = { .count = 1, .reusable = true } }, SHIFT (6), [11] = { .entry = { .count = 2, .reusable = false } }, REDUCE (aux_sym_line_repeat1, 2), SHIFT_REPEAT (7), [14] = { .entry = { .count = 1, .reusable = true } }, REDUCE (aux_sym_line_repeat1, 2), [16] = { .entry = { .count = 1, .reusable = false } }, SHIFT (7), [18] = { .entry = { .count = 1, .reusable = true } }, SHIFT (13), [20] = { .entry = { .count = 1, .reusable = true } }, SHIFT (14), [22] = { .entry = { .count = 1, .reusable = false } }, REDUCE (sym_command, 1), [24] = { .entry = { .count = 1, .reusable = true } }, REDUCE (sym_command, 1), [26] = { .entry = { .count = 1, .reusable = true } }, REDUCE (sym_source_file, 1), [28] = { .entry = { .count = 1, .reusable = true } }, SHIFT (8), [30] = { .entry = { .count = 1, .reusable = false } }, REDUCE (sym_flag, 1), [32] = { .entry = { .count = 1, .reusable = true } }, REDUCE (sym_flag, 1), [34] = { .entry = { .count = 1, .reusable = true } }, REDUCE (aux_sym_source_file_repeat1, 2), [36] = { .entry = { .count = 2, .reusable = true } }, REDUCE (aux_sym_source_file_repeat1, 2), SHIFT_REPEAT (5), [39] = { .entry = { .count = 2, .reusable = false } }, REDUCE (aux_sym_source_file_repeat1, 2), SHIFT_REPEAT (5), [42] = { .entry = { .count = 2, .reusable = true } }, REDUCE (aux_sym_source_file_repeat1, 2), SHIFT_REPEAT (8), [45] = { .entry = { .count = 1, .reusable = true } }, REDUCE (sym_line, 9), [47] = { .entry = { .count = 1, .reusable = false } }, REDUCE (sym_line, 9), [49] = { .entry = { .count = 1, .reusable = true } }, REDUCE (sym_line, 8), [51] = { .entry = { .count = 1, .reusable = false } }, REDUCE (sym_line, 8), [53] = { .entry = { .count = 1, .reusable = true } }, SHIFT (12), [55] = { .entry = { .count = 1, .reusable = true } }, SHIFT (25), [57] = { .entry = { .count = 1, .reusable = true } }, SHIFT (38), [59] = { .entry = { .count = 1, .reusable = true } }, SHIFT (28), [61] = { .entry = { .count = 1, .reusable = true } }, SHIFT (31), [63] = { .entry = { .count = 1, .reusable = true } }, SHIFT (33), [65] = { .entry = { .count = 1, .reusable = true } }, SHIFT (29), [67] = { .entry = { .count = 1, .reusable = true } }, SHIFT (32), [69] = { .entry = { .count = 1, .reusable = true } }, SHIFT (27), [71] = { .entry = { .count = 1, .reusable = true } }, SHIFT (35), [73] = { .entry = { .count = 1, .reusable = true } }, SHIFT (37), [75] = { .entry = { .count = 1, .reusable = true } }, REDUCE (sym_title, 3), [77] = { .entry = { .count = 1, .reusable = true } }, SHIFT (23), [79] = { .entry = { .count = 1, .reusable = true } }, REDUCE (sym_date, 3), [81] = { .entry = { .count = 1, .reusable = true } }, SHIFT (10), [83] = { .entry = { .count = 1, .reusable = true } }, SHIFT (26), [85] = { .entry = { .count = 1, .reusable = true } }, REDUCE (sym_author, 3), [87] = { .entry = { .count = 1, .reusable = true } }, SHIFT (22), [89] = { .entry = { .count = 1, .reusable = true } }, ACCEPT_INPUT (), [91] = { .entry = { .count = 1, .reusable = true } }, REDUCE (sym_duration, 3), [93] = { .entry = { .count = 1, .reusable = true } }, SHIFT (9), [95] = { .entry = { .count = 1, .reusable = true } }, REDUCE (sym_url, 3), [97] = { .entry = { .count = 1, .reusable = true } }, SHIFT (24), }; #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