3891 lines
114 KiB
C
3891 lines
114 KiB
C
#include <tree_sitter/parser.h>
|
||
|
||
#if defined(__GNUC__) || defined(__clang__)
|
||
#pragma GCC diagnostic push
|
||
#pragma GCC diagnostic ignored "-Wmissing-field-initializers"
|
||
#endif
|
||
|
||
#define LANGUAGE_VERSION 14
|
||
#define STATE_COUNT 81
|
||
#define LARGE_STATE_COUNT 2
|
||
#define SYMBOL_COUNT 78
|
||
#define ALIAS_COUNT 1
|
||
#define TOKEN_COUNT 43
|
||
#define EXTERNAL_TOKEN_COUNT 0
|
||
#define FIELD_COUNT 0
|
||
#define MAX_ALIAS_SEQUENCE_LENGTH 4
|
||
#define PRODUCTION_ID_COUNT 3
|
||
|
||
enum {
|
||
sym__identifier = 1,
|
||
anon_sym_LBRACE = 2,
|
||
anon_sym_RBRACE = 3,
|
||
anon_sym_direction = 4,
|
||
anon_sym_shape = 5,
|
||
anon_sym_label = 6,
|
||
anon_sym_constraint = 7,
|
||
anon_sym_icon = 8,
|
||
anon_sym_style = 9,
|
||
anon_sym_width = 10,
|
||
anon_sym_height = 11,
|
||
anon_sym_3d = 12,
|
||
anon_sym_opacity = 13,
|
||
anon_sym_fill = 14,
|
||
anon_sym_stroke = 15,
|
||
anon_sym_stroke_DASHwidth = 16,
|
||
anon_sym_stroke_DASHdash = 17,
|
||
anon_sym_border_DASHradius = 18,
|
||
anon_sym_font_DASHcolor = 19,
|
||
anon_sym_shadow = 20,
|
||
anon_sym_multiple = 21,
|
||
anon_sym_animated = 22,
|
||
anon_sym_link = 23,
|
||
sym__text_attr_key = 24,
|
||
anon_sym_source_DASHarrowhead = 25,
|
||
anon_sym_target_DASHarrowhead = 26,
|
||
sym__dash = 27,
|
||
anon_sym_COLON = 28,
|
||
sym_arrow = 29,
|
||
sym_dot = 30,
|
||
sym__unquoted_string = 31,
|
||
anon_sym_SQUOTE = 32,
|
||
aux_sym_string_token1 = 33,
|
||
anon_sym_DQUOTE = 34,
|
||
aux_sym_string_token2 = 35,
|
||
anon_sym_BQUOTE = 36,
|
||
aux_sym_string_token3 = 37,
|
||
sym_line_comment = 38,
|
||
sym__word = 39,
|
||
anon_sym_LF = 40,
|
||
anon_sym_ = 41,
|
||
anon_sym_SEMI = 42,
|
||
sym_source_file = 43,
|
||
sym__new_root_definition = 44,
|
||
sym_connection = 45,
|
||
sym__connection_path = 46,
|
||
sym_container = 47,
|
||
sym__new_container_block = 48,
|
||
sym__new_container_block_definition = 49,
|
||
sym_shape = 50,
|
||
sym_shape_key = 51,
|
||
sym__new_shape_block = 52,
|
||
sym__new_shape_block_definition = 53,
|
||
sym__new_root_attribute = 54,
|
||
sym__root_attr_key = 55,
|
||
sym__style_attribute = 56,
|
||
sym__style_attribute_block = 57,
|
||
sym__inner_style_attribute = 58,
|
||
sym__style_attr_key = 59,
|
||
sym__common_style_attr_key = 60,
|
||
sym_label = 61,
|
||
sym_attr_value = 62,
|
||
sym__colon = 63,
|
||
sym__arrow = 64,
|
||
sym__dot = 65,
|
||
sym_string = 66,
|
||
sym__eol = 67,
|
||
sym__end = 68,
|
||
aux_sym_source_file_repeat1 = 69,
|
||
aux_sym_connection_repeat1 = 70,
|
||
aux_sym__connection_path_repeat1 = 71,
|
||
aux_sym__new_container_block_repeat1 = 72,
|
||
aux_sym__new_shape_block_repeat1 = 73,
|
||
aux_sym__style_attribute_block_repeat1 = 74,
|
||
aux_sym_string_repeat1 = 75,
|
||
aux_sym_string_repeat2 = 76,
|
||
aux_sym_string_repeat3 = 77,
|
||
alias_sym_container_key = 78,
|
||
};
|
||
|
||
static const char * const ts_symbol_names[] = {
|
||
[ts_builtin_sym_end] = "end",
|
||
[sym__identifier] = "_identifier",
|
||
[anon_sym_LBRACE] = "{",
|
||
[anon_sym_RBRACE] = "}",
|
||
[anon_sym_direction] = "direction",
|
||
[anon_sym_shape] = "shape",
|
||
[anon_sym_label] = "label",
|
||
[anon_sym_constraint] = "constraint",
|
||
[anon_sym_icon] = "icon",
|
||
[anon_sym_style] = "attr_key",
|
||
[anon_sym_width] = "width",
|
||
[anon_sym_height] = "height",
|
||
[anon_sym_3d] = "3d",
|
||
[anon_sym_opacity] = "opacity",
|
||
[anon_sym_fill] = "fill",
|
||
[anon_sym_stroke] = "stroke",
|
||
[anon_sym_stroke_DASHwidth] = "stroke-width",
|
||
[anon_sym_stroke_DASHdash] = "stroke-dash",
|
||
[anon_sym_border_DASHradius] = "border-radius",
|
||
[anon_sym_font_DASHcolor] = "font-color",
|
||
[anon_sym_shadow] = "shadow",
|
||
[anon_sym_multiple] = "multiple",
|
||
[anon_sym_animated] = "animated",
|
||
[anon_sym_link] = "link",
|
||
[sym__text_attr_key] = "reserved",
|
||
[anon_sym_source_DASHarrowhead] = "source-arrowhead",
|
||
[anon_sym_target_DASHarrowhead] = "target-arrowhead",
|
||
[sym__dash] = "_dash",
|
||
[anon_sym_COLON] = ":",
|
||
[sym_arrow] = "arrow",
|
||
[sym_dot] = "dot",
|
||
[sym__unquoted_string] = "_unquoted_string",
|
||
[anon_sym_SQUOTE] = "'",
|
||
[aux_sym_string_token1] = "string_token1",
|
||
[anon_sym_DQUOTE] = "\"",
|
||
[aux_sym_string_token2] = "string_token2",
|
||
[anon_sym_BQUOTE] = "`",
|
||
[aux_sym_string_token3] = "string_token3",
|
||
[sym_line_comment] = "line_comment",
|
||
[sym__word] = "_word",
|
||
[anon_sym_LF] = "\n",
|
||
[anon_sym_] = " |