#include "tree_sitter/parser.h"
#if defined(__GNUC__) || defined(__clang__)
#pragma GCC diagnostic ignored "-Wmissing-field-initializers"
#endif
#define LANGUAGE_VERSION 15
#define STATE_COUNT 58
#define LARGE_STATE_COUNT 2
#define SYMBOL_COUNT 43
#define ALIAS_COUNT 0
#define TOKEN_COUNT 26
#define EXTERNAL_TOKEN_COUNT 0
#define FIELD_COUNT 4
#define MAX_ALIAS_SEQUENCE_LENGTH 8
#define MAX_RESERVED_WORD_SET_SIZE 0
#define PRODUCTION_ID_COUNT 8
#define SUPERTYPE_COUNT 0
enum ts_symbol_identifiers {
anon_sym_LT = 1,
anon_sym_GT = 2,
anon_sym_LT_SLASH = 3,
anon_sym_SLASH_GT = 4,
anon_sym_EQ = 5,
sym_attribute_name = 6,
anon_sym_DQUOTE = 7,
aux_sym_quoted_attribute_value_token1 = 8,
anon_sym_SQUOTE = 9,
aux_sym_quoted_attribute_value_token2 = 10,
sym_unquoted_attribute_value = 11,
sym_tag_name = 12,
anon_sym_AT = 13,
sym_directive_body = 14,
anon_sym_ATcode = 15,
anon_sym_DOT = 16,
anon_sym_LPAREN = 17,
anon_sym_RPAREN = 18,
anon_sym_LBRACE = 19,
anon_sym_RBRACE = 20,
sym_csharp_content = 21,
sym_identifier = 22,
sym_text = 23,
sym_html_comment = 24,
sym_razor_comment = 25,
sym_source_file = 26,
sym__node = 27,
sym_element = 28,
sym_self_closing_element = 29,
sym_attribute = 30,
sym_attribute_value = 31,
sym_quoted_attribute_value = 32,
sym_directive = 33,
sym_code_block = 34,
sym_inline_expression = 35,
sym_member_access = 36,
sym_parenthesized_expression = 37,
sym_block_expression = 38,
sym_comment = 39,
aux_sym_source_file_repeat1 = 40,
aux_sym_element_repeat1 = 41,
aux_sym_member_access_repeat1 = 42,
};
static const char * const ts_symbol_names[] = {
[ts_builtin_sym_end] = "end",
[anon_sym_LT] = "<",
[anon_sym_GT] = ">",
[anon_sym_LT_SLASH] = "</",
[anon_sym_SLASH_GT] = "/>",
[anon_sym_EQ] = "=",
[sym_attribute_name] = "attribute_name",
[anon_sym_DQUOTE] = "\"",
[aux_sym_quoted_attribute_value_token1] = "quoted_attribute_value_token1",
[anon_sym_SQUOTE] = "'",
[aux_sym_quoted_attribute_value_token2] = "quoted_attribute_value_token2",
[sym_unquoted_attribute_value] = "unquoted_attribute_value",
[sym_tag_name] = "tag_name",
[anon_sym_AT] = "@",
[sym_directive_body] = "directive_body",
[anon_sym_ATcode] = "@code",
[anon_sym_DOT] = ".",
[anon_sym_LPAREN] = "(",
[anon_sym_RPAREN] = ")",
[anon_sym_LBRACE] = "{",
[anon_sym_RBRACE] = "}",
[sym_csharp_content] = "csharp_content",
[sym_identifier] = "identifier",
[sym_text] = "text",
[sym_html_comment] = "html_comment",
[sym_razor_comment] = "razor_comment",
[sym_source_file] = "source_file",
[sym__node] = "_node",
[sym_element] = "element",
[sym_self_closing_element] = "self_closing_element",
[sym_attribute] = "attribute",
[sym_attribute_value] = "attribute_value",
[sym_quoted_attribute_value] = "quoted_attribute_value",
[sym_directive] = "directive",
[sym_code_block] = "code_block",
[sym_inline_expression] = "inline_expression",
[sym_member_access] = "member_access",
[sym_parenthesized_expression] = "parenthesized_expression",
[sym_block_expression] = "block_expression",
[sym_comment] = "comment",
[aux_sym_source_file_repeat1] = "source_file_repeat1",
[aux_sym_element_repeat1] = "element_repeat1",
[aux_sym_member_access_repeat1] = "member_access_repeat1",
};
static const TSSymbol ts_symbol_map[] = {
[ts_builtin_sym_end] = ts_builtin_sym_end,
[anon_sym_LT] = anon_sym_LT,
[anon_sym_GT] = anon_sym_GT,
[anon_sym_LT_SLASH] = anon_sym_LT_SLASH,
[anon_sym_SLASH_GT] = anon_sym_SLASH_GT,
[anon_sym_EQ] = anon_sym_EQ,
[sym_attribute_name] = sym_attribute_name,
[anon_sym_DQUOTE] = anon_sym_DQUOTE,
[aux_sym_quoted_attribute_value_token1] = aux_sym_quoted_attribute_value_token1,
[anon_sym_SQUOTE] = anon_sym_SQUOTE,
[aux_sym_quoted_attribute_value_token2] = aux_sym_quoted_attribute_value_token2,
[sym_unquoted_attribute_value] = sym_unquoted_attribute_value,
[sym_tag_name] = sym_tag_name,
[anon_sym_AT] = anon_sym_AT,
[sym_directive_body] = sym_directive_body,
[anon_sym_ATcode] = anon_sym_ATcode,
[anon_sym_DOT] = anon_sym_DOT,
[anon_sym_LPAREN] = anon_sym_LPAREN,
[anon_sym_RPAREN] = anon_sym_RPAREN,
[anon_sym_LBRACE] = anon_sym_LBRACE,
[anon_sym_RBRACE] = anon_sym_RBRACE,
[sym_csharp_content] = sym_csharp_content,
[sym_identifier] = sym_identifier,
[sym_text] = sym_text,
[sym_html_comment] = sym_html_comment,
[sym_razor_comment] = sym_razor_comment,
[sym_source_file] = sym_source_file,
[sym__node] = sym__node,
[sym_element] = sym_element,
[sym_self_closing_element] = sym_self_closing_element,
[sym_attribute] = sym_attribute,
[sym_attribute_value] = sym_attribute_value,
[sym_quoted_attribute_value] = sym_quoted_attribute_value,
[sym_directive] = sym_directive,
[sym_code_block] = sym_code_block,
[sym_inline_expression] = sym_inline_expression,
[sym_member_access] = sym_member_access,
[sym_parenthesized_expression] = sym_parenthesized_expression,
[sym_block_expression] = sym_block_expression,
[sym_comment] = sym_comment,
[aux_sym_source_file_repeat1] = aux_sym_source_file_repeat1,
[aux_sym_element_repeat1] = aux_sym_element_repeat1,
[aux_sym_member_access_repeat1] = aux_sym_member_access_repeat1,
};
static const TSSymbolMetadata ts_symbol_metadata[] = {
[ts_builtin_sym_end] = {
.visible = false,
.named = true,
},
[anon_sym_LT] = {
.visible = true,
.named = false,
},
[anon_sym_GT] = {
.visible = true,
.named = false,
},
[anon_sym_LT_SLASH] = {
.visible = true,
.named = false,
},
[anon_sym_SLASH_GT] = {
.visible = true,
.named = false,
},
[anon_sym_EQ] = {
.visible = true,
.named = false,
},
[sym_attribute_name] = {
.visible = true,
.named = true,
},
[anon_sym_DQUOTE] = {
.visible = true,
.named = false,
},
[aux_sym_quoted_attribute_value_token1] = {
.visible = false,
.named = false,
},
[anon_sym_SQUOTE] = {
.visible = true,
.named = false,
},
[aux_sym_quoted_attribute_value_token2] = {
.visible = false,
.named = false,
},
[sym_unquoted_attribute_value] = {
.visible = true,
.named = true,
},
[sym_tag_name] = {
.visible = true,
.named = true,
},
[anon_sym_AT] = {
.visible = true,
.named = false,
},
[sym_directive_body] = {
.visible = true,
.named = true,
},
[anon_sym_ATcode] = {
.visible = true,
.named = false,
},
[anon_sym_DOT] = {
.visible = true,
.named = false,
},
[anon_sym_LPAREN] = {
.visible = true,
.named = false,
},
[anon_sym_RPAREN] = {
.visible = true,
.named = false,
},
[anon_sym_LBRACE] = {
.visible = true,
.named = false,
},
[anon_sym_RBRACE] = {
.visible = true,
.named = false,
},
[sym_csharp_content] = {
.visible = true,
.named = true,
},
[sym_identifier] = {
.visible = true,
.named = true,
},
[sym_text] = {
.visible = true,
.named = true,
},
[sym_html_comment] = {
.visible = true,
.named = true,
},
[sym_razor_comment] = {
.visible = true,
.named = true,
},
[sym_source_file] = {
.visible = true,
.named = true,
},
[sym__node] = {
.visible = false,
.named = true,
},
[sym_element] = {
.visible = true,
.named = true,
},
[sym_self_closing_element] = {
.visible = true,
.named = true,
},
[sym_attribute] = {
.visible = true,
.named = true,
},
[sym_attribute_value] = {
.visible = true,
.named = true,
},
[sym_quoted_attribute_value] = {
.visible = true,
.named = true,
},
[sym_directive] = {
.visible = true,
.named = true,
},
[sym_code_block] = {
.visible = true,
.named = true,
},
[sym_inline_expression] = {
.visible = true,
.named = true,
},
[sym_member_access] = {
.visible = true,
.named = true,
},
[sym_parenthesized_expression] = {
.visible = true,
.named = true,
},
[sym_block_expression] = {
.visible = true,
.named = true,
},
[sym_comment] = {
.visible = true,
.named = true,
},
[aux_sym_source_file_repeat1] = {
.visible = false,
.named = false,
},
[aux_sym_element_repeat1] = {
.visible = false,
.named = false,
},
[aux_sym_member_access_repeat1] = {
.visible = false,
.named = false,
},
};
enum ts_field_identifiers {
field_closing_tag_name = 1,
field_name = 2,
field_tag_name = 3,
field_value = 4,
};
static const char * const ts_field_names[] = {
[0] = NULL,
[field_closing_tag_name] = "closing_tag_name",
[field_name] = "name",
[field_tag_name] = "tag_name",
[field_value] = "value",
};
static const TSMapSlice ts_field_map_slices[PRODUCTION_ID_COUNT] = {
[1] = {.index = 0, .length = 1},
[2] = {.index = 1, .length = 1},
[3] = {.index = 2, .length = 1},
[4] = {.index = 3, .length = 2},
[5] = {.index = 5, .length = 2},
[6] = {.index = 7, .length = 2},
[7] = {.index = 9, .length = 2},
};
static const TSFieldMapEntry ts_field_map_entries[] = {
[0] =
{field_name, 1},
[1] =
{field_tag_name, 1},
[2] =
{field_name, 0},
[3] =
{field_name, 0},
{field_value, 2},
[5] =
{field_closing_tag_name, 4},
{field_tag_name, 1},
[7] =
{field_closing_tag_name, 5},
{field_tag_name, 1},
[9] =
{field_closing_tag_name, 6},
{field_tag_name, 1},
};
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] = 4,
[9] = 9,
[10] = 10,
[11] = 11,
[12] = 10,
[13] = 13,
[14] = 14,
[15] = 15,
[16] = 16,
[17] = 14,
[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,
[39] = 39,
[40] = 40,
[41] = 41,
[42] = 42,
[43] = 43,
[44] = 44,
[45] = 45,
[46] = 46,
[47] = 47,
[48] = 48,
[49] = 49,
[50] = 50,
[51] = 51,
[52] = 52,
[53] = 53,
[54] = 54,
[55] = 55,
[56] = 56,
[57] = 57,
};
static bool ts_lex(TSLexer *lexer, TSStateId state) {
START_LEXER();
eof = lexer->eof(lexer);
switch (state) {
case 0:
if (eof) ADVANCE(22);
ADVANCE_MAP(
'"', 33,
'\'', 46,
'(', 93,
')', 94,
'.', 90,
'/', 14,
'<', 23,
'=', 30,
'>', 26,
'@', 70,
'{', 96,
'}', 97,
':', 32,
'_', 32,
);
if (('\t' <= lookahead && lookahead <= '\r') ||
lookahead == ' ') SKIP(0);
if (('A' <= lookahead && lookahead <= 'Z') ||
('a' <= lookahead && lookahead <= 'z')) ADVANCE(31);
END_STATE();
case 1:
if (lookahead == '!') ADVANCE(10);
END_STATE();
case 2:
if (lookahead == '"') ADVANCE(34);
if (lookahead == '\'') ADVANCE(47);
if (lookahead == '<') ADVANCE(59);
if (lookahead == '@') ADVANCE(60);
if (('\t' <= lookahead && lookahead <= '\r') ||
lookahead == ' ') SKIP(2);
if (lookahead != 0 &&
lookahead != '>') ADVANCE(68);
END_STATE();
case 3:
if (lookahead == '(') ADVANCE(93);
if (lookahead == '<') ADVANCE(1);
if (lookahead == '@') ADVANCE(5);
if (lookahead == '{') ADVANCE(96);
if (('\t' <= lookahead && lookahead <= '\r') ||
lookahead == ' ') SKIP(3);
if (('A' <= lookahead && lookahead <= 'Z') ||
lookahead == '_' ||
('a' <= lookahead && lookahead <= 'z')) ADVANCE(110);
END_STATE();
case 4:
if (lookahead == ')') ADVANCE(95);
if (lookahead == '<') ADVANCE(98);
if (lookahead == '@') ADVANCE(100);
if (('\t' <= lookahead && lookahead <= '\r') ||
lookahead == ' ') ADVANCE(99);
if (lookahead != 0 &&
lookahead != '}') ADVANCE(109);
END_STATE();
case 5:
if (lookahead == '*') ADVANCE(6);
END_STATE();
case 6:
if (lookahead == '*') ADVANCE(16);
if (lookahead != 0) ADVANCE(6);
END_STATE();
case 7:
if (lookahead == '-') ADVANCE(8);
END_STATE();
case 8:
if (lookahead == '-') ADVANCE(9);
if (lookahead != 0) ADVANCE(8);
END_STATE();
case 9:
if (lookahead == '-') ADVANCE(15);
if (lookahead == '>') ADVANCE(114);
END_STATE();
case 10:
if (lookahead == '-') ADVANCE(7);
END_STATE();
case 11:
if (lookahead == '/') ADVANCE(14);
if (lookahead == '<') ADVANCE(1);
if (lookahead == '=') ADVANCE(30);
if (lookahead == '>') ADVANCE(26);
if (lookahead == '@') ADVANCE(5);
if (('\t' <= lookahead && lookahead <= '\r') ||
lookahead == ' ') SKIP(11);
if (lookahead == ':' ||
('A' <= lookahead && lookahead <= 'Z') ||
lookahead == '_' ||
('a' <= lookahead && lookahead <= 'z')) ADVANCE(32);
END_STATE();
case 12:
if (lookahead == '<') ADVANCE(1);
if (lookahead == '@') ADVANCE(5);
if (('\t' <= lookahead && lookahead <= '\r') ||
lookahead == ' ') SKIP(12);
if (('A' <= lookahead && lookahead <= 'Z') ||
('a' <= lookahead && lookahead <= 'z')) ADVANCE(69);
END_STATE();
case 13:
if (lookahead == '<') ADVANCE(98);
if (lookahead == '@') ADVANCE(100);
if (lookahead == '}') ADVANCE(97);
if (('\t' <= lookahead && lookahead <= '\r') ||
lookahead == ' ') ADVANCE(106);
if (lookahead != 0) ADVANCE(109);
END_STATE();
case 14:
if (lookahead == '>') ADVANCE(29);
END_STATE();
case 15:
if (lookahead == '>') ADVANCE(114);
END_STATE();
case 16:
if (lookahead == '@') ADVANCE(115);
END_STATE();
case 17:
if (lookahead == 'd') ADVANCE(18);
END_STATE();
case 18:
if (lookahead == 'e') ADVANCE(88);
END_STATE();
case 19:
if (lookahead == 'o') ADVANCE(17);
END_STATE();
case 20:
if (eof) ADVANCE(22);
if (lookahead == '\n') SKIP(20);
if (lookahead == '<') ADVANCE(23);
if (lookahead == '@') ADVANCE(70);
if (('\t' <= lookahead && lookahead <= '\r') ||
lookahead == ' ') ADVANCE(111);
if (lookahead != 0) ADVANCE(113);
END_STATE();
case 21:
if (eof) ADVANCE(22);
if (lookahead == '\n') SKIP(21);
if (lookahead == '.') ADVANCE(92);
if (lookahead == '<') ADVANCE(23);
if (lookahead == '@') ADVANCE(70);
if (('\t' <= lookahead && lookahead <= '\r') ||
lookahead == ' ') ADVANCE(112);
if (lookahead != 0) ADVANCE(113);
END_STATE();
case 22:
ACCEPT_TOKEN(ts_builtin_sym_end);
END_STATE();
case 23:
ACCEPT_TOKEN(anon_sym_LT);
if (lookahead == '!') ADVANCE(10);
if (lookahead == '/') ADVANCE(27);
END_STATE();
case 24:
ACCEPT_TOKEN(anon_sym_LT);
if (lookahead == '!') ADVANCE(79);
if (lookahead == '/') ADVANCE(28);
if (lookahead != 0 &&
lookahead != '\n') ADVANCE(86);
END_STATE();
case 25:
ACCEPT_TOKEN(anon_sym_LT);
if (lookahead == '!') ADVANCE(79);
if (lookahead != 0 &&
lookahead != '\n') ADVANCE(86);
END_STATE();
case 26:
ACCEPT_TOKEN(anon_sym_GT);
END_STATE();
case 27:
ACCEPT_TOKEN(anon_sym_LT_SLASH);
END_STATE();
case 28:
ACCEPT_TOKEN(anon_sym_LT_SLASH);
if (lookahead != 0 &&
lookahead != '\n') ADVANCE(86);
END_STATE();
case 29:
ACCEPT_TOKEN(anon_sym_SLASH_GT);
END_STATE();
case 30:
ACCEPT_TOKEN(anon_sym_EQ);
END_STATE();
case 31:
ACCEPT_TOKEN(sym_attribute_name);
if (lookahead == '_') ADVANCE(32);
if (lookahead == '-' ||
('0' <= lookahead && lookahead <= ':') ||
('A' <= lookahead && lookahead <= 'Z') ||
('a' <= lookahead && lookahead <= 'z')) ADVANCE(31);
END_STATE();
case 32:
ACCEPT_TOKEN(sym_attribute_name);
if (lookahead == '-' ||
('0' <= lookahead && lookahead <= ':') ||
('A' <= lookahead && lookahead <= 'Z') ||
lookahead == '_' ||
('a' <= lookahead && lookahead <= 'z')) ADVANCE(32);
END_STATE();
case 33:
ACCEPT_TOKEN(anon_sym_DQUOTE);
END_STATE();
case 34:
ACCEPT_TOKEN(anon_sym_DQUOTE);
if (lookahead != 0 &&
(lookahead < '\t' || '\r' < lookahead) &&
lookahead != ' ' &&
lookahead != '>') ADVANCE(68);
END_STATE();
case 35:
ACCEPT_TOKEN(aux_sym_quoted_attribute_value_token1);
if (lookahead == '!') ADVANCE(41);
if (lookahead != 0 &&
lookahead != '\n' &&
lookahead != '!' &&
lookahead != '"') ADVANCE(45);
END_STATE();
case 36:
ACCEPT_TOKEN(aux_sym_quoted_attribute_value_token1);
if (lookahead == '*') ADVANCE(37);
if (lookahead != 0 &&
lookahead != '\n' &&
lookahead != '"') ADVANCE(45);
END_STATE();
case 37:
ACCEPT_TOKEN(aux_sym_quoted_attribute_value_token1);
if (lookahead == '*') ADVANCE(44);
if (lookahead == '\n' ||
lookahead == '"') ADVANCE(6);
if (lookahead != 0) ADVANCE(37);
END_STATE();
case 38:
ACCEPT_TOKEN(aux_sym_quoted_attribute_value_token1);
if (lookahead == '-') ADVANCE(39);
if (lookahead != 0 &&
lookahead != '\n' &&
lookahead != '"') ADVANCE(45);
END_STATE();
case 39:
ACCEPT_TOKEN(aux_sym_quoted_attribute_value_token1);
if (lookahead == '-') ADVANCE(40);
if (lookahead == '\n' ||
lookahead == '"') ADVANCE(8);
if (lookahead != 0) ADVANCE(39);
END_STATE();
case 40:
ACCEPT_TOKEN(aux_sym_quoted_attribute_value_token1);
if (lookahead == '-') ADVANCE(43);
if (lookahead == '>') ADVANCE(45);
if (lookahead != 0 &&
lookahead != '\n' &&
lookahead != '"') ADVANCE(45);
END_STATE();
case 41:
ACCEPT_TOKEN(aux_sym_quoted_attribute_value_token1);
if (lookahead == '-') ADVANCE(38);
if (lookahead != 0 &&
lookahead != '\n' &&
lookahead != '"') ADVANCE(45);
END_STATE();
case 42:
ACCEPT_TOKEN(aux_sym_quoted_attribute_value_token1);
if (lookahead == '<') ADVANCE(35);
if (lookahead == '@') ADVANCE(36);
if (lookahead == '\t' ||
(0x0b <= lookahead && lookahead <= '\r') ||
lookahead == ' ') ADVANCE(42);
if (lookahead != 0 &&
(lookahead < '\t' || '\r' < lookahead) &&
lookahead != '"') ADVANCE(45);
END_STATE();
case 43:
ACCEPT_TOKEN(aux_sym_quoted_attribute_value_token1);
if (lookahead == '>') ADVANCE(45);
if (lookahead != 0 &&
lookahead != '\n' &&
lookahead != '"') ADVANCE(45);
END_STATE();
case 44:
ACCEPT_TOKEN(aux_sym_quoted_attribute_value_token1);
if (lookahead == '@') ADVANCE(45);
if (lookahead != 0 &&
lookahead != '\n' &&
lookahead != '"') ADVANCE(45);
END_STATE();
case 45:
ACCEPT_TOKEN(aux_sym_quoted_attribute_value_token1);
if (lookahead != 0 &&
lookahead != '\n' &&
lookahead != '"') ADVANCE(45);
END_STATE();
case 46:
ACCEPT_TOKEN(anon_sym_SQUOTE);
END_STATE();
case 47:
ACCEPT_TOKEN(anon_sym_SQUOTE);
if (lookahead != 0 &&
(lookahead < '\t' || '\r' < lookahead) &&
lookahead != ' ' &&
lookahead != '>') ADVANCE(68);
END_STATE();
case 48:
ACCEPT_TOKEN(aux_sym_quoted_attribute_value_token2);
if (lookahead == '!') ADVANCE(54);
if (lookahead != 0 &&
lookahead != '\n' &&
lookahead != '\'') ADVANCE(58);
END_STATE();
case 49:
ACCEPT_TOKEN(aux_sym_quoted_attribute_value_token2);
if (lookahead == '*') ADVANCE(50);
if (lookahead != 0 &&
lookahead != '\n' &&
lookahead != '\'') ADVANCE(58);
END_STATE();
case 50:
ACCEPT_TOKEN(aux_sym_quoted_attribute_value_token2);
if (lookahead == '*') ADVANCE(57);
if (lookahead == '\n' ||
lookahead == '\'') ADVANCE(6);
if (lookahead != 0) ADVANCE(50);
END_STATE();
case 51:
ACCEPT_TOKEN(aux_sym_quoted_attribute_value_token2);
if (lookahead == '-') ADVANCE(52);
if (lookahead != 0 &&
lookahead != '\n' &&
lookahead != '\'') ADVANCE(58);
END_STATE();
case 52:
ACCEPT_TOKEN(aux_sym_quoted_attribute_value_token2);
if (lookahead == '-') ADVANCE(53);
if (lookahead == '\n' ||
lookahead == '\'') ADVANCE(8);
if (lookahead != 0) ADVANCE(52);
END_STATE();
case 53:
ACCEPT_TOKEN(aux_sym_quoted_attribute_value_token2);
if (lookahead == '-') ADVANCE(56);
if (lookahead == '>') ADVANCE(58);
if (lookahead != 0 &&
lookahead != '\n' &&
lookahead != '\'') ADVANCE(58);
END_STATE();
case 54:
ACCEPT_TOKEN(aux_sym_quoted_attribute_value_token2);
if (lookahead == '-') ADVANCE(51);
if (lookahead != 0 &&
lookahead != '\n' &&
lookahead != '\'') ADVANCE(58);
END_STATE();
case 55:
ACCEPT_TOKEN(aux_sym_quoted_attribute_value_token2);
if (lookahead == '<') ADVANCE(48);
if (lookahead == '@') ADVANCE(49);
if (lookahead == '\t' ||
(0x0b <= lookahead && lookahead <= '\r') ||
lookahead == ' ') ADVANCE(55);
if (lookahead != 0 &&
(lookahead < '\t' || '\r' < lookahead) &&
lookahead != '\'') ADVANCE(58);
END_STATE();
case 56:
ACCEPT_TOKEN(aux_sym_quoted_attribute_value_token2);
if (lookahead == '>') ADVANCE(58);
if (lookahead != 0 &&
lookahead != '\n' &&
lookahead != '\'') ADVANCE(58);
END_STATE();
case 57:
ACCEPT_TOKEN(aux_sym_quoted_attribute_value_token2);
if (lookahead == '@') ADVANCE(58);
if (lookahead != 0 &&
lookahead != '\n' &&
lookahead != '\'') ADVANCE(58);
END_STATE();
case 58:
ACCEPT_TOKEN(aux_sym_quoted_attribute_value_token2);
if (lookahead != 0 &&
lookahead != '\n' &&
lookahead != '\'') ADVANCE(58);
END_STATE();
case 59:
ACCEPT_TOKEN(sym_unquoted_attribute_value);
if (lookahead == '!') ADVANCE(65);
if (lookahead != 0 &&
(lookahead < '\t' || '\r' < lookahead) &&
lookahead != ' ' &&
lookahead != '!' &&
lookahead != '>') ADVANCE(68);
END_STATE();
case 60:
ACCEPT_TOKEN(sym_unquoted_attribute_value);
if (lookahead == '*') ADVANCE(61);
if (lookahead != 0 &&
(lookahead < '\t' || '\r' < lookahead) &&
lookahead != ' ' &&
lookahead != '>') ADVANCE(68);
END_STATE();
case 61:
ACCEPT_TOKEN(sym_unquoted_attribute_value);
if (lookahead == '*') ADVANCE(67);
if (('\t' <= lookahead && lookahead <= '\r') ||
lookahead == ' ' ||
lookahead == '>') ADVANCE(6);
if (lookahead != 0) ADVANCE(61);
END_STATE();
case 62:
ACCEPT_TOKEN(sym_unquoted_attribute_value);
if (lookahead == '-') ADVANCE(63);
if (lookahead != 0 &&
(lookahead < '\t' || '\r' < lookahead) &&
lookahead != ' ' &&
lookahead != '>') ADVANCE(68);
END_STATE();
case 63:
ACCEPT_TOKEN(sym_unquoted_attribute_value);
if (lookahead == '-') ADVANCE(64);
if (('\t' <= lookahead && lookahead <= '\r') ||
lookahead == ' ' ||
lookahead == '>') ADVANCE(8);
if (lookahead != 0) ADVANCE(63);
END_STATE();
case 64:
ACCEPT_TOKEN(sym_unquoted_attribute_value);
if (lookahead == '-') ADVANCE(66);
if (lookahead == '>') ADVANCE(114);
if (lookahead != 0 &&
(lookahead < '\t' || '\r' < lookahead) &&
lookahead != ' ') ADVANCE(68);
END_STATE();
case 65:
ACCEPT_TOKEN(sym_unquoted_attribute_value);
if (lookahead == '-') ADVANCE(62);
if (lookahead != 0 &&
(lookahead < '\t' || '\r' < lookahead) &&
lookahead != ' ' &&
lookahead != '>') ADVANCE(68);
END_STATE();
case 66:
ACCEPT_TOKEN(sym_unquoted_attribute_value);
if (lookahead == '>') ADVANCE(114);
if (lookahead != 0 &&
(lookahead < '\t' || '\r' < lookahead) &&
lookahead != ' ') ADVANCE(68);
END_STATE();
case 67:
ACCEPT_TOKEN(sym_unquoted_attribute_value);
if (lookahead == '@') ADVANCE(68);
if (lookahead != 0 &&
(lookahead < '\t' || '\r' < lookahead) &&
lookahead != ' ' &&
lookahead != '>') ADVANCE(68);
END_STATE();
case 68:
ACCEPT_TOKEN(sym_unquoted_attribute_value);
if (lookahead != 0 &&
(lookahead < '\t' || '\r' < lookahead) &&
lookahead != ' ' &&
lookahead != '>') ADVANCE(68);
END_STATE();
case 69:
ACCEPT_TOKEN(sym_tag_name);
if (lookahead == '-' ||
('0' <= lookahead && lookahead <= ':') ||
('A' <= lookahead && lookahead <= 'Z') ||
('a' <= lookahead && lookahead <= 'z')) ADVANCE(69);
END_STATE();
case 70:
ACCEPT_TOKEN(anon_sym_AT);
if (lookahead == '*') ADVANCE(6);
if (lookahead == 'c') ADVANCE(19);
END_STATE();
case 71:
ACCEPT_TOKEN(anon_sym_AT);
if (lookahead == '*') ADVANCE(72);
if (lookahead == 'c') ADVANCE(85);
if (lookahead != 0 &&
lookahead != '\n') ADVANCE(86);
END_STATE();
case 72:
ACCEPT_TOKEN(sym_directive_body);
if (lookahead == '\n') ADVANCE(6);
if (lookahead == '*') ADVANCE(82);
if (lookahead != 0) ADVANCE(72);
END_STATE();
case 73:
ACCEPT_TOKEN(sym_directive_body);
if (lookahead == '\n') ADVANCE(8);
if (lookahead == '-') ADVANCE(78);
if (lookahead != 0) ADVANCE(73);
END_STATE();
case 74:
ACCEPT_TOKEN(sym_directive_body);
if (lookahead == '\n') ADVANCE(113);
if (lookahead == '<' ||
lookahead == '@') ADVANCE(86);
if (lookahead != 0) ADVANCE(74);
END_STATE();
case 75:
ACCEPT_TOKEN(sym_directive_body);
if (lookahead == '\n') ADVANCE(75);
if (lookahead == '.') ADVANCE(91);
if (lookahead == '<') ADVANCE(25);
if (lookahead == '@') ADVANCE(71);
if (('\t' <= lookahead && lookahead <= '\r') ||
lookahead == ' ') ADVANCE(75);
if (lookahead != 0) ADVANCE(74);
END_STATE();
case 76:
ACCEPT_TOKEN(sym_directive_body);
if (lookahead == '\n') ADVANCE(76);
if (lookahead == '.') ADVANCE(91);
if (lookahead == '<') ADVANCE(24);
if (lookahead == '@') ADVANCE(71);
if (('\t' <= lookahead && lookahead <= '\r') ||
lookahead == ' ') ADVANCE(76);
if (lookahead != 0) ADVANCE(74);
END_STATE();
case 77:
ACCEPT_TOKEN(sym_directive_body);
if (lookahead == '-') ADVANCE(73);
if (lookahead != 0 &&
lookahead != '\n') ADVANCE(86);
END_STATE();
case 78:
ACCEPT_TOKEN(sym_directive_body);
if (lookahead == '-') ADVANCE(81);
if (lookahead == '>') ADVANCE(86);
if (lookahead != 0 &&
lookahead != '\n') ADVANCE(86);
END_STATE();
case 79:
ACCEPT_TOKEN(sym_directive_body);
if (lookahead == '-') ADVANCE(77);
if (lookahead != 0 &&
lookahead != '\n') ADVANCE(86);
END_STATE();
case 80:
ACCEPT_TOKEN(sym_directive_body);
if (lookahead == '.') ADVANCE(91);
if (lookahead == '<') ADVANCE(24);
if (lookahead == '@') ADVANCE(71);
if (lookahead == '\t' ||
(0x0b <= lookahead && lookahead <= '\r') ||
lookahead == ' ') ADVANCE(76);
if (lookahead != 0 &&
(lookahead < '\t' || '\r' < lookahead)) ADVANCE(74);
END_STATE();
case 81:
ACCEPT_TOKEN(sym_directive_body);
if (lookahead == '>') ADVANCE(86);
if (lookahead != 0 &&
lookahead != '\n') ADVANCE(86);
END_STATE();
case 82:
ACCEPT_TOKEN(sym_directive_body);
if (lookahead == '@') ADVANCE(86);
if (lookahead != 0 &&
lookahead != '\n') ADVANCE(86);
END_STATE();
case 83:
ACCEPT_TOKEN(sym_directive_body);
if (lookahead == 'd') ADVANCE(84);
if (lookahead != 0 &&
lookahead != '\n') ADVANCE(86);
END_STATE();
case 84:
ACCEPT_TOKEN(sym_directive_body);
if (lookahead == 'e') ADVANCE(89);
if (lookahead != 0 &&
lookahead != '\n') ADVANCE(86);
END_STATE();
case 85:
ACCEPT_TOKEN(sym_directive_body);
if (lookahead == 'o') ADVANCE(83);
if (lookahead != 0 &&
lookahead != '\n') ADVANCE(86);
END_STATE();
case 86:
ACCEPT_TOKEN(sym_directive_body);
if (lookahead != 0 &&
lookahead != '\n') ADVANCE(86);
END_STATE();
case 87:
ACCEPT_TOKEN(sym_directive_body);
if (eof) ADVANCE(22);
if (lookahead == '.') ADVANCE(91);
if (lookahead == '<') ADVANCE(25);
if (lookahead == '@') ADVANCE(71);
if (lookahead == '\t' ||
(0x0b <= lookahead && lookahead <= '\r') ||
lookahead == ' ') ADVANCE(75);
if (lookahead != 0 &&
(lookahead < '\t' || '\r' < lookahead)) ADVANCE(74);
END_STATE();
case 88:
ACCEPT_TOKEN(anon_sym_ATcode);
END_STATE();
case 89:
ACCEPT_TOKEN(anon_sym_ATcode);
if (lookahead != 0 &&
lookahead != '\n') ADVANCE(86);
END_STATE();
case 90:
ACCEPT_TOKEN(anon_sym_DOT);
END_STATE();
case 91:
ACCEPT_TOKEN(anon_sym_DOT);
if (lookahead == '\n') ADVANCE(113);
if (lookahead == '<' ||
lookahead == '@') ADVANCE(86);
if (lookahead != 0) ADVANCE(74);
END_STATE();
case 92:
ACCEPT_TOKEN(anon_sym_DOT);
if (lookahead != 0 &&
lookahead != '<' &&
lookahead != '@') ADVANCE(113);
END_STATE();
case 93:
ACCEPT_TOKEN(anon_sym_LPAREN);
END_STATE();
case 94:
ACCEPT_TOKEN(anon_sym_RPAREN);
END_STATE();
case 95:
ACCEPT_TOKEN(anon_sym_RPAREN);
if (lookahead != 0 &&
lookahead != '}') ADVANCE(109);
END_STATE();
case 96:
ACCEPT_TOKEN(anon_sym_LBRACE);
END_STATE();
case 97:
ACCEPT_TOKEN(anon_sym_RBRACE);
END_STATE();
case 98:
ACCEPT_TOKEN(sym_csharp_content);
if (lookahead == '!') ADVANCE(105);
if (lookahead != 0 &&
lookahead != '}') ADVANCE(109);
END_STATE();
case 99:
ACCEPT_TOKEN(sym_csharp_content);
if (lookahead == ')') ADVANCE(95);
if (lookahead == '<') ADVANCE(98);
if (lookahead == '@') ADVANCE(100);
if (('\t' <= lookahead && lookahead <= '\r') ||
lookahead == ' ') ADVANCE(99);
if (lookahead != 0 &&
lookahead != '}') ADVANCE(109);
END_STATE();
case 100:
ACCEPT_TOKEN(sym_csharp_content);
if (lookahead == '*') ADVANCE(101);
if (lookahead != 0 &&
lookahead != '}') ADVANCE(109);
END_STATE();
case 101:
ACCEPT_TOKEN(sym_csharp_content);
if (lookahead == '*') ADVANCE(108);
if (lookahead == '}') ADVANCE(6);
if (lookahead != 0) ADVANCE(101);
END_STATE();
case 102:
ACCEPT_TOKEN(sym_csharp_content);
if (lookahead == '-') ADVANCE(103);
if (lookahead != 0 &&
lookahead != '}') ADVANCE(109);
END_STATE();
case 103:
ACCEPT_TOKEN(sym_csharp_content);
if (lookahead == '-') ADVANCE(104);
if (lookahead == '}') ADVANCE(8);
if (lookahead != 0) ADVANCE(103);
END_STATE();
case 104:
ACCEPT_TOKEN(sym_csharp_content);
if (lookahead == '-') ADVANCE(107);
if (lookahead == '>') ADVANCE(109);
if (lookahead != 0 &&
lookahead != '}') ADVANCE(109);
END_STATE();
case 105:
ACCEPT_TOKEN(sym_csharp_content);
if (lookahead == '-') ADVANCE(102);
if (lookahead != 0 &&
lookahead != '}') ADVANCE(109);
END_STATE();
case 106:
ACCEPT_TOKEN(sym_csharp_content);
if (lookahead == '<') ADVANCE(98);
if (lookahead == '@') ADVANCE(100);
if (('\t' <= lookahead && lookahead <= '\r') ||
lookahead == ' ') ADVANCE(106);
if (lookahead != 0 &&
lookahead != '}') ADVANCE(109);
END_STATE();
case 107:
ACCEPT_TOKEN(sym_csharp_content);
if (lookahead == '>') ADVANCE(109);
if (lookahead != 0 &&
lookahead != '}') ADVANCE(109);
END_STATE();
case 108:
ACCEPT_TOKEN(sym_csharp_content);
if (lookahead == '@') ADVANCE(109);
if (lookahead != 0 &&
lookahead != '}') ADVANCE(109);
END_STATE();
case 109:
ACCEPT_TOKEN(sym_csharp_content);
if (lookahead != 0 &&
lookahead != '}') ADVANCE(109);
END_STATE();
case 110:
ACCEPT_TOKEN(sym_identifier);
if (('0' <= lookahead && lookahead <= '9') ||
('A' <= lookahead && lookahead <= 'Z') ||
lookahead == '_' ||
('a' <= lookahead && lookahead <= 'z')) ADVANCE(110);
END_STATE();
case 111:
ACCEPT_TOKEN(sym_text);
if (lookahead == '\n') ADVANCE(111);
if (('\t' <= lookahead && lookahead <= '\r') ||
lookahead == ' ') ADVANCE(111);
if (lookahead != 0 &&
lookahead != '<' &&
lookahead != '@') ADVANCE(113);
END_STATE();
case 112:
ACCEPT_TOKEN(sym_text);
if (lookahead == '\n') ADVANCE(112);
if (lookahead == '.') ADVANCE(92);
if (('\t' <= lookahead && lookahead <= '\r') ||
lookahead == ' ') ADVANCE(112);
if (lookahead != 0 &&
lookahead != '<' &&
lookahead != '@') ADVANCE(113);
END_STATE();
case 113:
ACCEPT_TOKEN(sym_text);
if (lookahead != 0 &&
lookahead != '<' &&
lookahead != '@') ADVANCE(113);
END_STATE();
case 114:
ACCEPT_TOKEN(sym_html_comment);
END_STATE();
case 115:
ACCEPT_TOKEN(sym_razor_comment);
END_STATE();
default:
return false;
}
}
static const TSLexerMode ts_lex_modes[STATE_COUNT] = {
[0] = {.lex_state = 0},
[1] = {.lex_state = 20},
[2] = {.lex_state = 20},
[3] = {.lex_state = 20},
[4] = {.lex_state = 20},
[5] = {.lex_state = 20},
[6] = {.lex_state = 20},
[7] = {.lex_state = 20},
[8] = {.lex_state = 20},
[9] = {.lex_state = 21},
[10] = {.lex_state = 87},
[11] = {.lex_state = 21},
[12] = {.lex_state = 80},
[13] = {.lex_state = 21},
[14] = {.lex_state = 3},
[15] = {.lex_state = 20},
[16] = {.lex_state = 20},
[17] = {.lex_state = 3},
[18] = {.lex_state = 20},
[19] = {.lex_state = 20},
[20] = {.lex_state = 20},
[21] = {.lex_state = 20},
[22] = {.lex_state = 20},
[23] = {.lex_state = 20},
[24] = {.lex_state = 20},
[25] = {.lex_state = 20},
[26] = {.lex_state = 20},
[27] = {.lex_state = 20},
[28] = {.lex_state = 20},
[29] = {.lex_state = 20},
[30] = {.lex_state = 11},
[31] = {.lex_state = 11},
[32] = {.lex_state = 11},
[33] = {.lex_state = 2},
[34] = {.lex_state = 11},
[35] = {.lex_state = 11},
[36] = {.lex_state = 11},
[37] = {.lex_state = 11},
[38] = {.lex_state = 11},
[39] = {.lex_state = 13},
[40] = {.lex_state = 4},
[41] = {.lex_state = 0},
[42] = {.lex_state = 0},
[43] = {.lex_state = 12},
[44] = {.lex_state = 0},
[45] = {.lex_state = 0},
[46] = {.lex_state = 12},
[47] = {.lex_state = 42},
[48] = {.lex_state = 0},
[49] = {.lex_state = 55},
[50] = {.lex_state = 0},
[51] = {.lex_state = 3},
[52] = {.lex_state = 0},
[53] = {.lex_state = 0},
[54] = {.lex_state = 12},
[55] = {.lex_state = 12},
[56] = {.lex_state = 0},
[57] = {(TSStateId)(-1),},
};
static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = {
[STATE(0)] = {
[sym_comment] = STATE(0),
[ts_builtin_sym_end] = ACTIONS(1),
[anon_sym_LT] = ACTIONS(1),
[anon_sym_GT] = ACTIONS(1),
[anon_sym_LT_SLASH] = ACTIONS(1),
[anon_sym_SLASH_GT] = ACTIONS(1),
[anon_sym_EQ] = ACTIONS(1),
[sym_attribute_name] = ACTIONS(1),
[anon_sym_DQUOTE] = ACTIONS(1),
[anon_sym_SQUOTE] = ACTIONS(1),
[sym_tag_name] = ACTIONS(1),
[anon_sym_AT] = ACTIONS(1),
[anon_sym_ATcode] = ACTIONS(1),
[anon_sym_DOT] = ACTIONS(1),
[anon_sym_LPAREN] = ACTIONS(1),
[anon_sym_RPAREN] = ACTIONS(1),
[anon_sym_LBRACE] = ACTIONS(1),
[anon_sym_RBRACE] = ACTIONS(1),
[sym_html_comment] = ACTIONS(3),
[sym_razor_comment] = ACTIONS(3),
},
[STATE(1)] = {
[sym_source_file] = STATE(42),
[sym__node] = STATE(26),
[sym_element] = STATE(22),
[sym_self_closing_element] = STATE(22),
[sym_directive] = STATE(22),
[sym_code_block] = STATE(22),
[sym_inline_expression] = STATE(22),
[sym_comment] = STATE(1),
[aux_sym_source_file_repeat1] = STATE(2),
[ts_builtin_sym_end] = ACTIONS(5),
[anon_sym_LT] = ACTIONS(7),
[anon_sym_AT] = ACTIONS(9),
[anon_sym_ATcode] = ACTIONS(11),
[sym_text] = ACTIONS(13),
[sym_html_comment] = ACTIONS(15),
[sym_razor_comment] = ACTIONS(15),
},
};
static const uint16_t ts_small_parse_table[] = {
[0] = 10,
ACTIONS(7), 1,
anon_sym_LT,
ACTIONS(9), 1,
anon_sym_AT,
ACTIONS(11), 1,
anon_sym_ATcode,
ACTIONS(13), 1,
sym_text,
ACTIONS(17), 1,
ts_builtin_sym_end,
STATE(2), 1,
sym_comment,
STATE(4), 1,
aux_sym_source_file_repeat1,
STATE(26), 1,
sym__node,
ACTIONS(15), 2,
sym_html_comment,
sym_razor_comment,
STATE(22), 5,
sym_element,
sym_self_closing_element,
sym_directive,
sym_code_block,
sym_inline_expression,
[36] = 10,
ACTIONS(7), 1,
anon_sym_LT,
ACTIONS(11), 1,
anon_sym_ATcode,
ACTIONS(13), 1,
sym_text,
ACTIONS(19), 1,
anon_sym_LT_SLASH,
ACTIONS(21), 1,
anon_sym_AT,
STATE(3), 1,
sym_comment,
STATE(5), 1,
aux_sym_source_file_repeat1,
STATE(26), 1,
sym__node,
ACTIONS(15), 2,
sym_html_comment,
sym_razor_comment,
STATE(22), 5,
sym_element,
sym_self_closing_element,
sym_directive,
sym_code_block,
sym_inline_expression,
[72] = 9,
ACTIONS(23), 1,
ts_builtin_sym_end,
ACTIONS(25), 1,
anon_sym_LT,
ACTIONS(28), 1,
anon_sym_AT,
ACTIONS(31), 1,
anon_sym_ATcode,
ACTIONS(34), 1,
sym_text,
STATE(26), 1,
sym__node,
ACTIONS(15), 2,
sym_html_comment,
sym_razor_comment,
STATE(4), 2,
sym_comment,
aux_sym_source_file_repeat1,
STATE(22), 5,
sym_element,
sym_self_closing_element,
sym_directive,
sym_code_block,
sym_inline_expression,
[106] = 10,
ACTIONS(7), 1,
anon_sym_LT,
ACTIONS(11), 1,
anon_sym_ATcode,
ACTIONS(13), 1,
sym_text,
ACTIONS(21), 1,
anon_sym_AT,
ACTIONS(37), 1,
anon_sym_LT_SLASH,
STATE(5), 1,
sym_comment,
STATE(8), 1,
aux_sym_source_file_repeat1,
STATE(26), 1,
sym__node,
ACTIONS(15), 2,
sym_html_comment,
sym_razor_comment,
STATE(22), 5,
sym_element,
sym_self_closing_element,
sym_directive,
sym_code_block,
sym_inline_expression,
[142] = 10,
ACTIONS(7), 1,
anon_sym_LT,
ACTIONS(11), 1,
anon_sym_ATcode,
ACTIONS(13), 1,
sym_text,
ACTIONS(21), 1,
anon_sym_AT,
ACTIONS(37), 1,
anon_sym_LT_SLASH,
STATE(6), 1,
sym_comment,
STATE(7), 1,
aux_sym_source_file_repeat1,
STATE(26), 1,
sym__node,
ACTIONS(15), 2,
sym_html_comment,
sym_razor_comment,
STATE(22), 5,
sym_element,
sym_self_closing_element,
sym_directive,
sym_code_block,
sym_inline_expression,
[178] = 10,
ACTIONS(7), 1,
anon_sym_LT,
ACTIONS(11), 1,
anon_sym_ATcode,
ACTIONS(13), 1,
sym_text,
ACTIONS(21), 1,
anon_sym_AT,
ACTIONS(39), 1,
anon_sym_LT_SLASH,
STATE(7), 1,
sym_comment,
STATE(8), 1,
aux_sym_source_file_repeat1,
STATE(26), 1,
sym__node,
ACTIONS(15), 2,
sym_html_comment,
sym_razor_comment,
STATE(22), 5,
sym_element,
sym_self_closing_element,
sym_directive,
sym_code_block,
sym_inline_expression,
[214] = 9,
ACTIONS(25), 1,
anon_sym_LT,
ACTIONS(31), 1,
anon_sym_ATcode,
ACTIONS(34), 1,
sym_text,
ACTIONS(41), 1,
anon_sym_LT_SLASH,
ACTIONS(43), 1,
anon_sym_AT,
STATE(26), 1,
sym__node,
ACTIONS(15), 2,
sym_html_comment,
sym_razor_comment,
STATE(8), 2,
sym_comment,
aux_sym_source_file_repeat1,
STATE(22), 5,
sym_element,
sym_self_closing_element,
sym_directive,
sym_code_block,
sym_inline_expression,
[248] = 6,
ACTIONS(46), 1,
ts_builtin_sym_end,
ACTIONS(50), 1,
anon_sym_DOT,
STATE(9), 1,
sym_comment,
STATE(11), 1,
aux_sym_member_access_repeat1,
ACTIONS(15), 2,
sym_html_comment,
sym_razor_comment,
ACTIONS(48), 5,
anon_sym_LT,
anon_sym_LT_SLASH,
anon_sym_AT,
anon_sym_ATcode,
sym_text,
[272] = 7,
ACTIONS(50), 1,
anon_sym_DOT,
ACTIONS(52), 1,
ts_builtin_sym_end,
ACTIONS(56), 1,
sym_directive_body,
STATE(9), 1,
aux_sym_member_access_repeat1,
STATE(10), 1,
sym_comment,
ACTIONS(15), 2,
sym_html_comment,
sym_razor_comment,
ACTIONS(54), 4,
anon_sym_LT,
anon_sym_AT,
anon_sym_ATcode,
sym_text,
[298] = 5,
ACTIONS(58), 1,
ts_builtin_sym_end,
ACTIONS(62), 1,
anon_sym_DOT,
ACTIONS(15), 2,
sym_html_comment,
sym_razor_comment,
STATE(11), 2,
sym_comment,
aux_sym_member_access_repeat1,
ACTIONS(60), 5,
anon_sym_LT,
anon_sym_LT_SLASH,
anon_sym_AT,
anon_sym_ATcode,
sym_text,
[320] = 6,
ACTIONS(50), 1,
anon_sym_DOT,
ACTIONS(56), 1,
sym_directive_body,
STATE(9), 1,
aux_sym_member_access_repeat1,
STATE(12), 1,
sym_comment,
ACTIONS(15), 2,
sym_html_comment,
sym_razor_comment,
ACTIONS(54), 5,
anon_sym_LT,
anon_sym_LT_SLASH,
anon_sym_AT,
anon_sym_ATcode,
sym_text,
[344] = 4,
ACTIONS(58), 1,
ts_builtin_sym_end,
STATE(13), 1,
sym_comment,
ACTIONS(15), 2,
sym_html_comment,
sym_razor_comment,
ACTIONS(60), 6,
anon_sym_LT,
anon_sym_LT_SLASH,
anon_sym_AT,
anon_sym_ATcode,
anon_sym_DOT,
sym_text,
[363] = 6,
ACTIONS(65), 1,
anon_sym_LPAREN,
ACTIONS(67), 1,
anon_sym_LBRACE,
ACTIONS(69), 1,
sym_identifier,
STATE(14), 1,
sym_comment,
ACTIONS(3), 2,
sym_html_comment,
sym_razor_comment,
STATE(15), 3,
sym_member_access,
sym_parenthesized_expression,
sym_block_expression,
[385] = 4,
STATE(15), 1,
sym_comment,
ACTIONS(15), 2,
sym_html_comment,
sym_razor_comment,
ACTIONS(71), 2,
ts_builtin_sym_end,
sym_text,
ACTIONS(73), 4,
anon_sym_LT,
anon_sym_LT_SLASH,
anon_sym_AT,
anon_sym_ATcode,
[403] = 4,
STATE(16), 1,
sym_comment,
ACTIONS(15), 2,
sym_html_comment,
sym_razor_comment,
ACTIONS(75), 2,
ts_builtin_sym_end,
sym_text,
ACTIONS(77), 4,
anon_sym_LT,
anon_sym_LT_SLASH,
anon_sym_AT,
anon_sym_ATcode,
[421] = 6,
ACTIONS(65), 1,
anon_sym_LPAREN,
ACTIONS(67), 1,
anon_sym_LBRACE,
ACTIONS(79), 1,
sym_identifier,
STATE(17), 1,
sym_comment,
ACTIONS(3), 2,
sym_html_comment,
sym_razor_comment,
STATE(15), 3,
sym_member_access,
sym_parenthesized_expression,
sym_block_expression,
[443] = 4,
STATE(18), 1,
sym_comment,
ACTIONS(15), 2,
sym_html_comment,
sym_razor_comment,
ACTIONS(81), 2,
ts_builtin_sym_end,
sym_text,
ACTIONS(83), 4,
anon_sym_LT,
anon_sym_LT_SLASH,
anon_sym_AT,
anon_sym_ATcode,
[461] = 4,
STATE(19), 1,
sym_comment,
ACTIONS(15), 2,
sym_html_comment,
sym_razor_comment,
ACTIONS(85), 2,
ts_builtin_sym_end,
sym_text,
ACTIONS(87), 4,
anon_sym_LT,
anon_sym_LT_SLASH,
anon_sym_AT,
anon_sym_ATcode,
[479] = 4,
STATE(20), 1,
sym_comment,
ACTIONS(15), 2,
sym_html_comment,
sym_razor_comment,
ACTIONS(89), 2,
ts_builtin_sym_end,
sym_text,
ACTIONS(91), 4,
anon_sym_LT,
anon_sym_LT_SLASH,
anon_sym_AT,
anon_sym_ATcode,
[497] = 4,
STATE(21), 1,
sym_comment,
ACTIONS(15), 2,
sym_html_comment,
sym_razor_comment,
ACTIONS(93), 2,
ts_builtin_sym_end,
sym_text,
ACTIONS(95), 4,
anon_sym_LT,
anon_sym_LT_SLASH,
anon_sym_AT,
anon_sym_ATcode,
[515] = 4,
STATE(22), 1,
sym_comment,
ACTIONS(15), 2,
sym_html_comment,
sym_razor_comment,
ACTIONS(97), 2,
ts_builtin_sym_end,
sym_text,
ACTIONS(99), 4,
anon_sym_LT,
anon_sym_LT_SLASH,
anon_sym_AT,
anon_sym_ATcode,
[533] = 4,
STATE(23), 1,
sym_comment,
ACTIONS(15), 2,
sym_html_comment,
sym_razor_comment,
ACTIONS(101), 2,
ts_builtin_sym_end,
sym_text,
ACTIONS(103), 4,
anon_sym_LT,
anon_sym_LT_SLASH,
anon_sym_AT,
anon_sym_ATcode,
[551] = 4,
STATE(24), 1,
sym_comment,
ACTIONS(15), 2,
sym_html_comment,
sym_razor_comment,
ACTIONS(105), 2,
ts_builtin_sym_end,
sym_text,
ACTIONS(107), 4,
anon_sym_LT,
anon_sym_LT_SLASH,
anon_sym_AT,
anon_sym_ATcode,
[569] = 4,
STATE(25), 1,
sym_comment,
ACTIONS(15), 2,
sym_html_comment,
sym_razor_comment,
ACTIONS(109), 2,
ts_builtin_sym_end,
sym_text,
ACTIONS(111), 4,
anon_sym_LT,
anon_sym_LT_SLASH,
anon_sym_AT,
anon_sym_ATcode,
[587] = 4,
STATE(26), 1,
sym_comment,
ACTIONS(15), 2,
sym_html_comment,
sym_razor_comment,
ACTIONS(113), 2,
ts_builtin_sym_end,
sym_text,
ACTIONS(115), 4,
anon_sym_LT,
anon_sym_LT_SLASH,
anon_sym_AT,
anon_sym_ATcode,
[605] = 4,
STATE(27), 1,
sym_comment,
ACTIONS(15), 2,
sym_html_comment,
sym_razor_comment,
ACTIONS(117), 2,
ts_builtin_sym_end,
sym_text,
ACTIONS(119), 4,
anon_sym_LT,
anon_sym_LT_SLASH,
anon_sym_AT,
anon_sym_ATcode,
[623] = 4,
STATE(28), 1,
sym_comment,
ACTIONS(15), 2,
sym_html_comment,
sym_razor_comment,
ACTIONS(121), 2,
ts_builtin_sym_end,
sym_text,
ACTIONS(123), 4,
anon_sym_LT,
anon_sym_LT_SLASH,
anon_sym_AT,
anon_sym_ATcode,
[641] = 4,
STATE(29), 1,
sym_comment,
ACTIONS(15), 2,
sym_html_comment,
sym_razor_comment,
ACTIONS(125), 2,
ts_builtin_sym_end,
sym_text,
ACTIONS(127), 4,
anon_sym_LT,
anon_sym_LT_SLASH,
anon_sym_AT,
anon_sym_ATcode,
[659] = 7,
ACTIONS(129), 1,
anon_sym_GT,
ACTIONS(131), 1,
anon_sym_SLASH_GT,
ACTIONS(133), 1,
sym_attribute_name,
STATE(30), 1,
sym_comment,
STATE(31), 1,
aux_sym_element_repeat1,
STATE(36), 1,
sym_attribute,
ACTIONS(3), 2,
sym_html_comment,
sym_razor_comment,
[682] = 7,
ACTIONS(133), 1,
sym_attribute_name,
ACTIONS(135), 1,
anon_sym_GT,
ACTIONS(137), 1,
anon_sym_SLASH_GT,
STATE(31), 1,
sym_comment,
STATE(32), 1,
aux_sym_element_repeat1,
STATE(36), 1,
sym_attribute,
ACTIONS(3), 2,
sym_html_comment,
sym_razor_comment,
[705] = 5,
ACTIONS(141), 1,
sym_attribute_name,
STATE(36), 1,
sym_attribute,
ACTIONS(3), 2,
sym_html_comment,
sym_razor_comment,
ACTIONS(139), 2,
anon_sym_GT,
anon_sym_SLASH_GT,
STATE(32), 2,
sym_comment,
aux_sym_element_repeat1,
[724] = 8,
ACTIONS(3), 1,
sym_html_comment,
ACTIONS(15), 1,
sym_razor_comment,
ACTIONS(144), 1,
anon_sym_DQUOTE,
ACTIONS(146), 1,
anon_sym_SQUOTE,
ACTIONS(148), 1,
sym_unquoted_attribute_value,
STATE(33), 1,
sym_comment,
STATE(35), 1,
sym_quoted_attribute_value,
STATE(38), 1,
sym_attribute_value,
[749] = 4,
ACTIONS(152), 1,
anon_sym_EQ,
STATE(34), 1,
sym_comment,
ACTIONS(3), 2,
sym_html_comment,
sym_razor_comment,
ACTIONS(150), 3,
anon_sym_GT,
anon_sym_SLASH_GT,
sym_attribute_name,
[765] = 3,
STATE(35), 1,
sym_comment,
ACTIONS(3), 2,
sym_html_comment,
sym_razor_comment,
ACTIONS(154), 3,
anon_sym_GT,
anon_sym_SLASH_GT,
sym_attribute_name,
[778] = 3,
STATE(36), 1,
sym_comment,
ACTIONS(3), 2,
sym_html_comment,
sym_razor_comment,
ACTIONS(156), 3,
anon_sym_GT,
anon_sym_SLASH_GT,
sym_attribute_name,
[791] = 3,
STATE(37), 1,
sym_comment,
ACTIONS(3), 2,
sym_html_comment,
sym_razor_comment,
ACTIONS(158), 3,
anon_sym_GT,
anon_sym_SLASH_GT,
sym_attribute_name,
[804] = 3,
STATE(38), 1,
sym_comment,
ACTIONS(3), 2,
sym_html_comment,
sym_razor_comment,
ACTIONS(160), 3,
anon_sym_GT,
anon_sym_SLASH_GT,
sym_attribute_name,
[817] = 4,
ACTIONS(162), 1,
anon_sym_RBRACE,
ACTIONS(164), 1,
sym_csharp_content,
STATE(39), 1,
sym_comment,
ACTIONS(15), 2,
sym_html_comment,
sym_razor_comment,
[831] = 4,
ACTIONS(166), 1,
anon_sym_RPAREN,
ACTIONS(168), 1,
sym_csharp_content,
STATE(40), 1,
sym_comment,
ACTIONS(15), 2,
sym_html_comment,
sym_razor_comment,
[845] = 4,
ACTIONS(67), 1,
anon_sym_LBRACE,
STATE(16), 1,
sym_block_expression,
STATE(41), 1,
sym_comment,
ACTIONS(3), 2,
sym_html_comment,
sym_razor_comment,
[859] = 3,
ACTIONS(170), 1,
ts_builtin_sym_end,
STATE(42), 1,
sym_comment,
ACTIONS(3), 2,
sym_html_comment,
sym_razor_comment,
[870] = 3,
ACTIONS(172), 1,
sym_tag_name,
STATE(43), 1,
sym_comment,
ACTIONS(3), 2,
sym_html_comment,
sym_razor_comment,
[881] = 3,
ACTIONS(174), 1,
anon_sym_RPAREN,
STATE(44), 1,
sym_comment,
ACTIONS(3), 2,
sym_html_comment,
sym_razor_comment,
[892] = 3,
ACTIONS(176), 1,
anon_sym_RBRACE,
STATE(45), 1,
sym_comment,
ACTIONS(3), 2,
sym_html_comment,
sym_razor_comment,
[903] = 3,
ACTIONS(178), 1,
sym_tag_name,
STATE(46), 1,
sym_comment,
ACTIONS(3), 2,
sym_html_comment,
sym_razor_comment,
[914] = 3,
ACTIONS(180), 1,
aux_sym_quoted_attribute_value_token1,
STATE(47), 1,
sym_comment,
ACTIONS(15), 2,
sym_html_comment,
sym_razor_comment,
[925] = 3,
ACTIONS(182), 1,
anon_sym_GT,
STATE(48), 1,
sym_comment,
ACTIONS(3), 2,
sym_html_comment,
sym_razor_comment,
[936] = 3,
ACTIONS(184), 1,
aux_sym_quoted_attribute_value_token2,
STATE(49), 1,
sym_comment,
ACTIONS(15), 2,
sym_html_comment,
sym_razor_comment,
[947] = 3,
ACTIONS(186), 1,
anon_sym_DQUOTE,
STATE(50), 1,
sym_comment,
ACTIONS(3), 2,
sym_html_comment,
sym_razor_comment,
[958] = 3,
ACTIONS(188), 1,
sym_identifier,
STATE(51), 1,
sym_comment,
ACTIONS(3), 2,
sym_html_comment,
sym_razor_comment,
[969] = 3,
ACTIONS(190), 1,
anon_sym_GT,
STATE(52), 1,
sym_comment,
ACTIONS(3), 2,
sym_html_comment,
sym_razor_comment,
[980] = 3,
ACTIONS(192), 1,
anon_sym_GT,
STATE(53), 1,
sym_comment,
ACTIONS(3), 2,
sym_html_comment,
sym_razor_comment,
[991] = 3,
ACTIONS(194), 1,
sym_tag_name,
STATE(54), 1,
sym_comment,
ACTIONS(3), 2,
sym_html_comment,
sym_razor_comment,
[1002] = 3,
ACTIONS(196), 1,
sym_tag_name,
STATE(55), 1,
sym_comment,
ACTIONS(3), 2,
sym_html_comment,
sym_razor_comment,
[1013] = 3,
ACTIONS(186), 1,
anon_sym_SQUOTE,
STATE(56), 1,
sym_comment,
ACTIONS(3), 2,
sym_html_comment,
sym_razor_comment,
[1024] = 1,
ACTIONS(198), 1,
ts_builtin_sym_end,
};
static const uint32_t ts_small_parse_table_map[] = {
[SMALL_STATE(2)] = 0,
[SMALL_STATE(3)] = 36,
[SMALL_STATE(4)] = 72,
[SMALL_STATE(5)] = 106,
[SMALL_STATE(6)] = 142,
[SMALL_STATE(7)] = 178,
[SMALL_STATE(8)] = 214,
[SMALL_STATE(9)] = 248,
[SMALL_STATE(10)] = 272,
[SMALL_STATE(11)] = 298,
[SMALL_STATE(12)] = 320,
[SMALL_STATE(13)] = 344,
[SMALL_STATE(14)] = 363,
[SMALL_STATE(15)] = 385,
[SMALL_STATE(16)] = 403,
[SMALL_STATE(17)] = 421,
[SMALL_STATE(18)] = 443,
[SMALL_STATE(19)] = 461,
[SMALL_STATE(20)] = 479,
[SMALL_STATE(21)] = 497,
[SMALL_STATE(22)] = 515,
[SMALL_STATE(23)] = 533,
[SMALL_STATE(24)] = 551,
[SMALL_STATE(25)] = 569,
[SMALL_STATE(26)] = 587,
[SMALL_STATE(27)] = 605,
[SMALL_STATE(28)] = 623,
[SMALL_STATE(29)] = 641,
[SMALL_STATE(30)] = 659,
[SMALL_STATE(31)] = 682,
[SMALL_STATE(32)] = 705,
[SMALL_STATE(33)] = 724,
[SMALL_STATE(34)] = 749,
[SMALL_STATE(35)] = 765,
[SMALL_STATE(36)] = 778,
[SMALL_STATE(37)] = 791,
[SMALL_STATE(38)] = 804,
[SMALL_STATE(39)] = 817,
[SMALL_STATE(40)] = 831,
[SMALL_STATE(41)] = 845,
[SMALL_STATE(42)] = 859,
[SMALL_STATE(43)] = 870,
[SMALL_STATE(44)] = 881,
[SMALL_STATE(45)] = 892,
[SMALL_STATE(46)] = 903,
[SMALL_STATE(47)] = 914,
[SMALL_STATE(48)] = 925,
[SMALL_STATE(49)] = 936,
[SMALL_STATE(50)] = 947,
[SMALL_STATE(51)] = 958,
[SMALL_STATE(52)] = 969,
[SMALL_STATE(53)] = 980,
[SMALL_STATE(54)] = 991,
[SMALL_STATE(55)] = 1002,
[SMALL_STATE(56)] = 1013,
[SMALL_STATE(57)] = 1024,
};
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(57),
[5] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 0, 0, 0),
[7] = {.entry = {.count = 1, .reusable = false}}, SHIFT(43),
[9] = {.entry = {.count = 1, .reusable = false}}, SHIFT(17),
[11] = {.entry = {.count = 1, .reusable = false}}, SHIFT(41),
[13] = {.entry = {.count = 1, .reusable = true}}, SHIFT(22),
[15] = {.entry = {.count = 1, .reusable = false}}, SHIFT(57),
[17] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 1, 0, 0),
[19] = {.entry = {.count = 1, .reusable = false}}, SHIFT(54),
[21] = {.entry = {.count = 1, .reusable = false}}, SHIFT(14),
[23] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0),
[25] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(43),
[28] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(17),
[31] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(41),
[34] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(22),
[37] = {.entry = {.count = 1, .reusable = false}}, SHIFT(46),
[39] = {.entry = {.count = 1, .reusable = false}}, SHIFT(55),
[41] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0),
[43] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 2, 0, 0), SHIFT_REPEAT(14),
[46] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_member_access, 2, 0, 0),
[48] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_member_access, 2, 0, 0),
[50] = {.entry = {.count = 1, .reusable = false}}, SHIFT(51),
[52] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_directive, 2, 0, 1),
[54] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_directive, 2, 0, 1),
[56] = {.entry = {.count = 1, .reusable = false}}, SHIFT(21),
[58] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_member_access_repeat1, 2, 0, 0),
[60] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_member_access_repeat1, 2, 0, 0),
[62] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_member_access_repeat1, 2, 0, 0), SHIFT_REPEAT(51),
[65] = {.entry = {.count = 1, .reusable = true}}, SHIFT(40),
[67] = {.entry = {.count = 1, .reusable = true}}, SHIFT(39),
[69] = {.entry = {.count = 1, .reusable = true}}, SHIFT(12),
[71] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_inline_expression, 2, 0, 0),
[73] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_inline_expression, 2, 0, 0),
[75] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_code_block, 2, 0, 0),
[77] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_code_block, 2, 0, 0),
[79] = {.entry = {.count = 1, .reusable = true}}, SHIFT(10),
[81] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_self_closing_element, 3, 0, 2),
[83] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_self_closing_element, 3, 0, 2),
[85] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parenthesized_expression, 2, 0, 0),
[87] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_parenthesized_expression, 2, 0, 0),
[89] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block_expression, 2, 0, 0),
[91] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block_expression, 2, 0, 0),
[93] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_directive, 3, 0, 1),
[95] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_directive, 3, 0, 1),
[97] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__node, 1, 0, 0),
[99] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__node, 1, 0, 0),
[101] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parenthesized_expression, 3, 0, 0),
[103] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_parenthesized_expression, 3, 0, 0),
[105] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_self_closing_element, 4, 0, 2),
[107] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_self_closing_element, 4, 0, 2),
[109] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block_expression, 3, 0, 0),
[111] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block_expression, 3, 0, 0),
[113] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 1, 0, 0),
[115] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_source_file_repeat1, 1, 0, 0),
[117] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_element, 6, 0, 5),
[119] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_element, 6, 0, 5),
[121] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_element, 7, 0, 6),
[123] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_element, 7, 0, 6),
[125] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_element, 8, 0, 7),
[127] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_element, 8, 0, 7),
[129] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3),
[131] = {.entry = {.count = 1, .reusable = true}}, SHIFT(18),
[133] = {.entry = {.count = 1, .reusable = true}}, SHIFT(34),
[135] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6),
[137] = {.entry = {.count = 1, .reusable = true}}, SHIFT(24),
[139] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_element_repeat1, 2, 0, 0),
[141] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_element_repeat1, 2, 0, 0), SHIFT_REPEAT(34),
[144] = {.entry = {.count = 1, .reusable = false}}, SHIFT(47),
[146] = {.entry = {.count = 1, .reusable = false}}, SHIFT(49),
[148] = {.entry = {.count = 1, .reusable = false}}, SHIFT(35),
[150] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute, 1, 0, 3),
[152] = {.entry = {.count = 1, .reusable = true}}, SHIFT(33),
[154] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute_value, 1, 0, 0),
[156] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_element_repeat1, 1, 0, 0),
[158] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_quoted_attribute_value, 3, 0, 0),
[160] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute, 3, 0, 4),
[162] = {.entry = {.count = 1, .reusable = false}}, SHIFT(20),
[164] = {.entry = {.count = 1, .reusable = false}}, SHIFT(45),
[166] = {.entry = {.count = 1, .reusable = false}}, SHIFT(19),
[168] = {.entry = {.count = 1, .reusable = false}}, SHIFT(44),
[170] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(),
[172] = {.entry = {.count = 1, .reusable = true}}, SHIFT(30),
[174] = {.entry = {.count = 1, .reusable = true}}, SHIFT(23),
[176] = {.entry = {.count = 1, .reusable = true}}, SHIFT(25),
[178] = {.entry = {.count = 1, .reusable = true}}, SHIFT(52),
[180] = {.entry = {.count = 1, .reusable = false}}, SHIFT(50),
[182] = {.entry = {.count = 1, .reusable = true}}, SHIFT(27),
[184] = {.entry = {.count = 1, .reusable = false}}, SHIFT(56),
[186] = {.entry = {.count = 1, .reusable = true}}, SHIFT(37),
[188] = {.entry = {.count = 1, .reusable = true}}, SHIFT(13),
[190] = {.entry = {.count = 1, .reusable = true}}, SHIFT(28),
[192] = {.entry = {.count = 1, .reusable = true}}, SHIFT(29),
[194] = {.entry = {.count = 1, .reusable = true}}, SHIFT(48),
[196] = {.entry = {.count = 1, .reusable = true}}, SHIFT(53),
[198] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_comment, 1, 0, 0),
};
#ifdef __cplusplus
extern "C" {
#endif
#ifdef TREE_SITTER_HIDE_SYMBOLS
#define TS_PUBLIC
#elif defined(_WIN32)
#define TS_PUBLIC __declspec(dllexport)
#else
#define TS_PUBLIC __attribute__((visibility("default")))
#endif
TS_PUBLIC const TSLanguage *tree_sitter_blazor(void) {
static const TSLanguage language = {
.abi_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,
.supertype_count = SUPERTYPE_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,
.field_names = ts_field_names,
.field_map_slices = ts_field_map_slices,
.field_map_entries = ts_field_map_entries,
.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,
.name = "blazor",
.max_reserved_word_set_size = 0,
.metadata = {
.major_version = 0,
.minor_version = 1,
.patch_version = 0,
},
};
return &language;
}
#ifdef __cplusplus
}
#endif