chore: generate

significant_whitespace
Amaan Qureshi 2023-10-04 21:19:11 +07:00
parent aebbb7f167
commit 1c5435cb0d
3 changed files with 210 additions and 441 deletions

176
src/grammar.json vendored

@ -244,31 +244,6 @@
"number": { "number": {
"type": "TOKEN", "type": "TOKEN",
"content": { "content": {
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "STRING",
"value": "0x"
},
{
"type": "STRING",
"value": "0X"
}
]
},
{
"type": "PATTERN",
"value": "[\\da-fA-F]+"
}
]
},
{
"type": "CHOICE", "type": "CHOICE",
"members": [ "members": [
{ {
@ -277,9 +252,6 @@
{ {
"type": "SEQ", "type": "SEQ",
"members": [ "members": [
{
"type": "CHOICE",
"members": [
{ {
"type": "CHOICE", "type": "CHOICE",
"members": [ "members": [
@ -287,12 +259,6 @@
"type": "STRING", "type": "STRING",
"value": "-" "value": "-"
}, },
{
"type": "STRING",
"value": "+"
}
]
},
{ {
"type": "BLANK" "type": "BLANK"
} }
@ -367,78 +333,6 @@
}, },
{ {
"type": "SEQ", "type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "STRING",
"value": "-"
},
{
"type": "STRING",
"value": "+"
}
]
},
{
"type": "BLANK"
}
]
},
{
"type": "PATTERN",
"value": "\\d+"
}
]
}
]
},
{
"type": "BLANK"
}
]
}
]
},
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "."
},
{
"type": "PATTERN",
"value": "\\d+"
},
{
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "STRING",
"value": "e"
},
{
"type": "STRING",
"value": "E"
}
]
},
{
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [ "members": [
{ {
"type": "CHOICE", "type": "CHOICE",
@ -447,12 +341,6 @@
"type": "STRING", "type": "STRING",
"value": "-" "value": "-"
}, },
{
"type": "STRING",
"value": "+"
}
]
},
{ {
"type": "BLANK" "type": "BLANK"
} }
@ -479,9 +367,6 @@
{ {
"type": "SEQ", "type": "SEQ",
"members": [ "members": [
{
"type": "CHOICE",
"members": [
{ {
"type": "CHOICE", "type": "CHOICE",
"members": [ "members": [
@ -489,12 +374,6 @@
"type": "STRING", "type": "STRING",
"value": "-" "value": "-"
}, },
{
"type": "STRING",
"value": "+"
}
]
},
{ {
"type": "BLANK" "type": "BLANK"
} }
@ -554,9 +433,6 @@
{ {
"type": "SEQ", "type": "SEQ",
"members": [ "members": [
{
"type": "CHOICE",
"members": [
{ {
"type": "CHOICE", "type": "CHOICE",
"members": [ "members": [
@ -564,12 +440,6 @@
"type": "STRING", "type": "STRING",
"value": "-" "value": "-"
}, },
{
"type": "STRING",
"value": "+"
}
]
},
{ {
"type": "BLANK" "type": "BLANK"
} }
@ -591,52 +461,6 @@
] ]
} }
] ]
},
{
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "STRING",
"value": "0b"
},
{
"type": "STRING",
"value": "0B"
}
]
},
{
"type": "PATTERN",
"value": "[0-1]+"
}
]
},
{
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "STRING",
"value": "0o"
},
{
"type": "STRING",
"value": "0O"
}
]
},
{
"type": "PATTERN",
"value": "[0-7]+"
}
]
}
]
} }
}, },
"true": { "true": {

273
src/parser.c vendored

@ -1,4 +1,4 @@
#include <tree_sitter/parser.h> #include "tree_sitter/parser.h"
#if defined(__GNUC__) || defined(__clang__) #if defined(__GNUC__) || defined(__clang__)
#pragma GCC diagnostic push #pragma GCC diagnostic push
@ -16,7 +16,7 @@
#define MAX_ALIAS_SEQUENCE_LENGTH 4 #define MAX_ALIAS_SEQUENCE_LENGTH 4
#define PRODUCTION_ID_COUNT 2 #define PRODUCTION_ID_COUNT 2
enum { enum ts_symbol_identifiers {
anon_sym_LBRACE = 1, anon_sym_LBRACE = 1,
anon_sym_COMMA = 2, anon_sym_COMMA = 2,
anon_sym_RBRACE = 3, anon_sym_RBRACE = 3,
@ -210,7 +210,7 @@ static const TSSymbolMetadata ts_symbol_metadata[] = {
}, },
}; };
enum { enum ts_field_identifiers {
field_key = 1, field_key = 1,
field_value = 2, field_value = 2,
}; };
@ -277,57 +277,49 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = {
static bool ts_lex(TSLexer *lexer, TSStateId state) { static bool ts_lex(TSLexer *lexer, TSStateId state) {
START_LEXER(); START_LEXER();
eof = lexer->eof(lexer);
switch (state) { switch (state) {
case 0: case 0:
if (eof) ADVANCE(25); if (eof) ADVANCE(21);
if (lookahead == '"') ADVANCE(32); if (lookahead == '"') ADVANCE(28);
if (lookahead == '+' || if (lookahead == ',') ADVANCE(23);
lookahead == '-') ADVANCE(6); if (lookahead == '-') ADVANCE(7);
if (lookahead == ',') ADVANCE(27);
if (lookahead == '.') ADVANCE(21);
if (lookahead == '/') ADVANCE(3); if (lookahead == '/') ADVANCE(3);
if (lookahead == '0') ADVANCE(39); if (lookahead == '0') ADVANCE(35);
if (lookahead == ':') ADVANCE(29); if (lookahead == ':') ADVANCE(25);
if (lookahead == '[') ADVANCE(30); if (lookahead == '[') ADVANCE(26);
if (lookahead == '\\') ADVANCE(20); if (lookahead == '\\') ADVANCE(18);
if (lookahead == ']') ADVANCE(31); if (lookahead == ']') ADVANCE(27);
if (lookahead == 'f') ADVANCE(7); if (lookahead == 'f') ADVANCE(8);
if (lookahead == 'n') ADVANCE(16); if (lookahead == 'n') ADVANCE(17);
if (lookahead == 't') ADVANCE(13); if (lookahead == 't') ADVANCE(14);
if (lookahead == '{') ADVANCE(26); if (lookahead == '{') ADVANCE(22);
if (lookahead == '}') ADVANCE(28); if (lookahead == '}') ADVANCE(24);
if (lookahead == '\t' || if (('\t' <= lookahead && lookahead <= '\r') ||
lookahead == '\n' || lookahead == ' ') SKIP(20)
lookahead == '\r' || if (('1' <= lookahead && lookahead <= '9')) ADVANCE(36);
lookahead == ' ') SKIP(24)
if (('1' <= lookahead && lookahead <= '9')) ADVANCE(41);
END_STATE(); END_STATE();
case 1: case 1:
if (lookahead == '\n') SKIP(2) if (lookahead == '\n') SKIP(2)
if (lookahead == '"') ADVANCE(32); if (lookahead == '"') ADVANCE(28);
if (lookahead == '/') ADVANCE(33); if (lookahead == '/') ADVANCE(29);
if (lookahead == '\\') ADVANCE(20); if (lookahead == '\\') ADVANCE(18);
if (lookahead == '\t' || if (('\t' <= lookahead && lookahead <= '\r') ||
lookahead == '\r' || lookahead == ' ') ADVANCE(32);
lookahead == ' ') ADVANCE(36); if (lookahead != 0) ADVANCE(33);
if (lookahead != 0) ADVANCE(37);
END_STATE(); END_STATE();
case 2: case 2:
if (lookahead == '"') ADVANCE(32); if (lookahead == '"') ADVANCE(28);
if (lookahead == '/') ADVANCE(3); if (lookahead == '/') ADVANCE(3);
if (lookahead == '\t' || if (('\t' <= lookahead && lookahead <= '\r') ||
lookahead == '\n' ||
lookahead == '\r' ||
lookahead == ' ') SKIP(2) lookahead == ' ') SKIP(2)
END_STATE(); END_STATE();
case 3: case 3:
if (lookahead == '*') ADVANCE(5); if (lookahead == '*') ADVANCE(5);
if (lookahead == '/') ADVANCE(51); if (lookahead == '/') ADVANCE(43);
END_STATE(); END_STATE();
case 4: case 4:
if (lookahead == '*') ADVANCE(4); if (lookahead == '*') ADVANCE(4);
if (lookahead == '/') ADVANCE(50); if (lookahead == '/') ADVANCE(42);
if (lookahead != 0) ADVANCE(5); if (lookahead != 0) ADVANCE(5);
END_STATE(); END_STATE();
case 5: case 5:
@ -335,52 +327,44 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) {
if (lookahead != 0) ADVANCE(5); if (lookahead != 0) ADVANCE(5);
END_STATE(); END_STATE();
case 6: case 6:
if (lookahead == '0') ADVANCE(40); if (lookahead == '-') ADVANCE(19);
if (('1' <= lookahead && lookahead <= '9')) ADVANCE(41); if (('0' <= lookahead && lookahead <= '9')) ADVANCE(38);
END_STATE(); END_STATE();
case 7: case 7:
if (lookahead == 'a') ADVANCE(10); if (lookahead == '0') ADVANCE(35);
if (('1' <= lookahead && lookahead <= '9')) ADVANCE(36);
END_STATE(); END_STATE();
case 8: case 8:
if (lookahead == 'e') ADVANCE(47); if (lookahead == 'a') ADVANCE(11);
END_STATE(); END_STATE();
case 9: case 9:
if (lookahead == 'e') ADVANCE(48); if (lookahead == 'e') ADVANCE(39);
END_STATE(); END_STATE();
case 10: case 10:
if (lookahead == 'l') ADVANCE(14); if (lookahead == 'e') ADVANCE(40);
END_STATE(); END_STATE();
case 11: case 11:
if (lookahead == 'l') ADVANCE(49); if (lookahead == 'l') ADVANCE(15);
END_STATE(); END_STATE();
case 12: case 12:
if (lookahead == 'l') ADVANCE(11); if (lookahead == 'l') ADVANCE(41);
END_STATE(); END_STATE();
case 13: case 13:
if (lookahead == 'r') ADVANCE(15); if (lookahead == 'l') ADVANCE(12);
END_STATE(); END_STATE();
case 14: case 14:
if (lookahead == 's') ADVANCE(9); if (lookahead == 'r') ADVANCE(16);
END_STATE(); END_STATE();
case 15: case 15:
if (lookahead == 'u') ADVANCE(8); if (lookahead == 's') ADVANCE(10);
END_STATE(); END_STATE();
case 16: case 16:
if (lookahead == 'u') ADVANCE(12); if (lookahead == 'u') ADVANCE(9);
END_STATE(); END_STATE();
case 17: case 17:
if (lookahead == '+' || if (lookahead == 'u') ADVANCE(13);
lookahead == '-') ADVANCE(22);
if (('0' <= lookahead && lookahead <= '9')) ADVANCE(45);
END_STATE(); END_STATE();
case 18: case 18:
if (lookahead == '0' ||
lookahead == '1') ADVANCE(43);
END_STATE();
case 19:
if (('0' <= lookahead && lookahead <= '7')) ADVANCE(44);
END_STATE();
case 20:
if (lookahead == '"' || if (lookahead == '"' ||
lookahead == '/' || lookahead == '/' ||
lookahead == '\\' || lookahead == '\\' ||
@ -389,179 +373,140 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) {
lookahead == 'n' || lookahead == 'n' ||
lookahead == 'r' || lookahead == 'r' ||
lookahead == 't' || lookahead == 't' ||
lookahead == 'u') ADVANCE(38); lookahead == 'u') ADVANCE(34);
END_STATE();
case 21:
if (('0' <= lookahead && lookahead <= '9')) ADVANCE(42);
END_STATE();
case 22:
if (('0' <= lookahead && lookahead <= '9')) ADVANCE(45);
END_STATE(); END_STATE();
case 23: case 19:
if (('0' <= lookahead && lookahead <= '9') || if (('0' <= lookahead && lookahead <= '9')) ADVANCE(38);
('A' <= lookahead && lookahead <= 'F') ||
('a' <= lookahead && lookahead <= 'f')) ADVANCE(46);
END_STATE(); END_STATE();
case 24: case 20:
if (eof) ADVANCE(25); if (eof) ADVANCE(21);
if (lookahead == '"') ADVANCE(32); if (lookahead == '"') ADVANCE(28);
if (lookahead == '+' || if (lookahead == ',') ADVANCE(23);
lookahead == '-') ADVANCE(6); if (lookahead == '-') ADVANCE(7);
if (lookahead == ',') ADVANCE(27);
if (lookahead == '.') ADVANCE(21);
if (lookahead == '/') ADVANCE(3); if (lookahead == '/') ADVANCE(3);
if (lookahead == '0') ADVANCE(39); if (lookahead == '0') ADVANCE(35);
if (lookahead == ':') ADVANCE(29); if (lookahead == ':') ADVANCE(25);
if (lookahead == '[') ADVANCE(30); if (lookahead == '[') ADVANCE(26);
if (lookahead == ']') ADVANCE(31); if (lookahead == ']') ADVANCE(27);
if (lookahead == 'f') ADVANCE(7); if (lookahead == 'f') ADVANCE(8);
if (lookahead == 'n') ADVANCE(16); if (lookahead == 'n') ADVANCE(17);
if (lookahead == 't') ADVANCE(13); if (lookahead == 't') ADVANCE(14);
if (lookahead == '{') ADVANCE(26); if (lookahead == '{') ADVANCE(22);
if (lookahead == '}') ADVANCE(28); if (lookahead == '}') ADVANCE(24);
if (lookahead == '\t' || if (('\t' <= lookahead && lookahead <= '\r') ||
lookahead == '\n' || lookahead == ' ') SKIP(20)
lookahead == '\r' || if (('1' <= lookahead && lookahead <= '9')) ADVANCE(36);
lookahead == ' ') SKIP(24)
if (('1' <= lookahead && lookahead <= '9')) ADVANCE(41);
END_STATE(); END_STATE();
case 25: case 21:
ACCEPT_TOKEN(ts_builtin_sym_end); ACCEPT_TOKEN(ts_builtin_sym_end);
END_STATE(); END_STATE();
case 26: case 22:
ACCEPT_TOKEN(anon_sym_LBRACE); ACCEPT_TOKEN(anon_sym_LBRACE);
END_STATE(); END_STATE();
case 27: case 23:
ACCEPT_TOKEN(anon_sym_COMMA); ACCEPT_TOKEN(anon_sym_COMMA);
END_STATE(); END_STATE();
case 28: case 24:
ACCEPT_TOKEN(anon_sym_RBRACE); ACCEPT_TOKEN(anon_sym_RBRACE);
END_STATE(); END_STATE();
case 29: case 25:
ACCEPT_TOKEN(anon_sym_COLON); ACCEPT_TOKEN(anon_sym_COLON);
END_STATE(); END_STATE();
case 30: case 26:
ACCEPT_TOKEN(anon_sym_LBRACK); ACCEPT_TOKEN(anon_sym_LBRACK);
END_STATE(); END_STATE();
case 31: case 27:
ACCEPT_TOKEN(anon_sym_RBRACK); ACCEPT_TOKEN(anon_sym_RBRACK);
END_STATE(); END_STATE();
case 32: case 28:
ACCEPT_TOKEN(anon_sym_DQUOTE); ACCEPT_TOKEN(anon_sym_DQUOTE);
END_STATE(); END_STATE();
case 33: case 29:
ACCEPT_TOKEN(aux_sym_string_content_token1); ACCEPT_TOKEN(aux_sym_string_content_token1);
if (lookahead == '*') ADVANCE(35); if (lookahead == '*') ADVANCE(31);
if (lookahead == '/') ADVANCE(37); if (lookahead == '/') ADVANCE(33);
if (lookahead != 0 && if (lookahead != 0 &&
lookahead != '\n' && lookahead != '\n' &&
lookahead != '"' && lookahead != '"' &&
lookahead != '\\') ADVANCE(37); lookahead != '\\') ADVANCE(33);
END_STATE(); END_STATE();
case 34: case 30:
ACCEPT_TOKEN(aux_sym_string_content_token1); ACCEPT_TOKEN(aux_sym_string_content_token1);
if (lookahead == '*') ADVANCE(34); if (lookahead == '*') ADVANCE(30);
if (lookahead == '/') ADVANCE(37); if (lookahead == '/') ADVANCE(33);
if (lookahead != 0 && if (lookahead != 0 &&
lookahead != '\n' && lookahead != '\n' &&
lookahead != '"' && lookahead != '"' &&
lookahead != '\\') ADVANCE(35); lookahead != '\\') ADVANCE(31);
END_STATE(); END_STATE();
case 35: case 31:
ACCEPT_TOKEN(aux_sym_string_content_token1); ACCEPT_TOKEN(aux_sym_string_content_token1);
if (lookahead == '*') ADVANCE(34); if (lookahead == '*') ADVANCE(30);
if (lookahead != 0 && if (lookahead != 0 &&
lookahead != '\n' && lookahead != '\n' &&
lookahead != '"' && lookahead != '"' &&
lookahead != '\\') ADVANCE(35); lookahead != '\\') ADVANCE(31);
END_STATE(); END_STATE();
case 36: case 32:
ACCEPT_TOKEN(aux_sym_string_content_token1); ACCEPT_TOKEN(aux_sym_string_content_token1);
if (lookahead == '/') ADVANCE(33); if (lookahead == '/') ADVANCE(29);
if (lookahead == '\t' || if (lookahead == '\t' ||
lookahead == '\r' || (11 <= lookahead && lookahead <= '\r') ||
lookahead == ' ') ADVANCE(36); lookahead == ' ') ADVANCE(32);
if (lookahead != 0 && if (lookahead != 0 &&
lookahead != '\n' && lookahead != '\n' &&
lookahead != '"' && lookahead != '"' &&
lookahead != '\\') ADVANCE(37); lookahead != '\\') ADVANCE(33);
END_STATE(); END_STATE();
case 37: case 33:
ACCEPT_TOKEN(aux_sym_string_content_token1); ACCEPT_TOKEN(aux_sym_string_content_token1);
if (lookahead != 0 && if (lookahead != 0 &&
lookahead != '\n' && lookahead != '\n' &&
lookahead != '"' && lookahead != '"' &&
lookahead != '\\') ADVANCE(37); lookahead != '\\') ADVANCE(33);
END_STATE(); END_STATE();
case 38: case 34:
ACCEPT_TOKEN(sym_escape_sequence); ACCEPT_TOKEN(sym_escape_sequence);
END_STATE(); END_STATE();
case 39: case 35:
ACCEPT_TOKEN(sym_number);
if (lookahead == '.') ADVANCE(42);
if (lookahead == 'B' ||
lookahead == 'b') ADVANCE(18);
if (lookahead == 'E' ||
lookahead == 'e') ADVANCE(17);
if (lookahead == 'O' ||
lookahead == 'o') ADVANCE(19);
if (lookahead == 'X' ||
lookahead == 'x') ADVANCE(23);
END_STATE();
case 40:
ACCEPT_TOKEN(sym_number); ACCEPT_TOKEN(sym_number);
if (lookahead == '.') ADVANCE(42); if (lookahead == '.') ADVANCE(37);
if (lookahead == 'E' || if (lookahead == 'E' ||
lookahead == 'e') ADVANCE(17); lookahead == 'e') ADVANCE(6);
END_STATE(); END_STATE();
case 41: case 36:
ACCEPT_TOKEN(sym_number); ACCEPT_TOKEN(sym_number);
if (lookahead == '.') ADVANCE(42); if (lookahead == '.') ADVANCE(37);
if (lookahead == 'E' || if (lookahead == 'E' ||
lookahead == 'e') ADVANCE(17); lookahead == 'e') ADVANCE(6);
if (('0' <= lookahead && lookahead <= '9')) ADVANCE(41); if (('0' <= lookahead && lookahead <= '9')) ADVANCE(36);
END_STATE(); END_STATE();
case 42: case 37:
ACCEPT_TOKEN(sym_number); ACCEPT_TOKEN(sym_number);
if (lookahead == 'E' || if (lookahead == 'E' ||
lookahead == 'e') ADVANCE(17); lookahead == 'e') ADVANCE(6);
if (('0' <= lookahead && lookahead <= '9')) ADVANCE(42); if (('0' <= lookahead && lookahead <= '9')) ADVANCE(37);
END_STATE();
case 43:
ACCEPT_TOKEN(sym_number);
if (lookahead == '0' ||
lookahead == '1') ADVANCE(43);
END_STATE();
case 44:
ACCEPT_TOKEN(sym_number);
if (('0' <= lookahead && lookahead <= '7')) ADVANCE(44);
END_STATE(); END_STATE();
case 45: case 38:
ACCEPT_TOKEN(sym_number);
if (('0' <= lookahead && lookahead <= '9')) ADVANCE(45);
END_STATE();
case 46:
ACCEPT_TOKEN(sym_number); ACCEPT_TOKEN(sym_number);
if (('0' <= lookahead && lookahead <= '9') || if (('0' <= lookahead && lookahead <= '9')) ADVANCE(38);
('A' <= lookahead && lookahead <= 'F') ||
('a' <= lookahead && lookahead <= 'f')) ADVANCE(46);
END_STATE(); END_STATE();
case 47: case 39:
ACCEPT_TOKEN(sym_true); ACCEPT_TOKEN(sym_true);
END_STATE(); END_STATE();
case 48: case 40:
ACCEPT_TOKEN(sym_false); ACCEPT_TOKEN(sym_false);
END_STATE(); END_STATE();
case 49: case 41:
ACCEPT_TOKEN(sym_null); ACCEPT_TOKEN(sym_null);
END_STATE(); END_STATE();
case 50: case 42:
ACCEPT_TOKEN(sym_comment); ACCEPT_TOKEN(sym_comment);
END_STATE(); END_STATE();
case 51: case 43:
ACCEPT_TOKEN(sym_comment); ACCEPT_TOKEN(sym_comment);
if (lookahead != 0 && if (lookahead != 0 &&
lookahead != '\n') ADVANCE(51); lookahead != '\n') ADVANCE(43);
END_STATE(); END_STATE();
default: default:
return false; return false;

@ -13,9 +13,8 @@ extern "C" {
#define ts_builtin_sym_end 0 #define ts_builtin_sym_end 0
#define TREE_SITTER_SERIALIZATION_BUFFER_SIZE 1024 #define TREE_SITTER_SERIALIZATION_BUFFER_SIZE 1024
typedef uint16_t TSStateId;
#ifndef TREE_SITTER_API_H_ #ifndef TREE_SITTER_API_H_
typedef uint16_t TSStateId;
typedef uint16_t TSSymbol; typedef uint16_t TSSymbol;
typedef uint16_t TSFieldId; typedef uint16_t TSFieldId;
typedef struct TSLanguage TSLanguage; typedef struct TSLanguage TSLanguage;
@ -140,7 +139,8 @@ struct TSLanguage {
lexer->advance(lexer, skip); \ lexer->advance(lexer, skip); \
start: \ start: \
skip = false; \ skip = false; \
lookahead = lexer->lookahead; lookahead = lexer->lookahead; \
eof = lexer->eof(lexer);
#define ADVANCE(state_value) \ #define ADVANCE(state_value) \
{ \ { \
@ -166,7 +166,7 @@ struct TSLanguage {
* Parse Table Macros * Parse Table Macros
*/ */
#define SMALL_STATE(id) id - LARGE_STATE_COUNT #define SMALL_STATE(id) ((id) - LARGE_STATE_COUNT)
#define STATE(id) id #define STATE(id) id
@ -176,7 +176,7 @@ struct TSLanguage {
{{ \ {{ \
.shift = { \ .shift = { \
.type = TSParseActionTypeShift, \ .type = TSParseActionTypeShift, \
.state = state_value \ .state = (state_value) \
} \ } \
}} }}
@ -184,7 +184,7 @@ struct TSLanguage {
{{ \ {{ \
.shift = { \ .shift = { \
.type = TSParseActionTypeShift, \ .type = TSParseActionTypeShift, \
.state = state_value, \ .state = (state_value), \
.repetition = true \ .repetition = true \
} \ } \
}} }}