diff --git a/dev/nvim-ts.nix b/dev/nvim-ts.nix index ffa7143..8a2f7b4 100644 --- a/dev/nvim-ts.nix +++ b/dev/nvim-ts.nix @@ -2,7 +2,7 @@ let extraGrammars = { - tree-sitter-plpgsql = { + tree-sitter-psql = { language = "psql"; src = ../.; version = "0.0.0"; @@ -10,14 +10,17 @@ let }; tree-sitter = (pkgs.tree-sitter.override { inherit extraGrammars; }); - grammars = tree-sitter.withPlugins (g: tree-sitter.allGrammars); + grammars = tree-sitter.withPlugins (g: [ g.tree-sitter-psql ]); - nvim-treesitter = pkgs.vimPlugins.nvim-treesitter.overrideAttrs (oldAttrs: { + nvim-treesitter = pkgs.vimPlugins.nvim-treesitter.withAllGrammars.overrideAttrs (oldAttrs: { + passthru.dependencies = oldAttrs.passthru.dependencies ++ [ + (pkgs.runCommand "nvim-treesitter-psql-grammar" { } '' + mkdir -p $out/parser + ln -s ${grammars}/psql.so $out/parser/psql.so + '') + ]; postPatch = '' - rm -r parser - ln -s ${grammars} parser - - ln -s ${../.}/queries queries/psql + ln -s ${extraGrammars.tree-sitter-psql.src}/queries queries/psql ''; }); diff --git a/flake.lock b/flake.lock index 9b16f49..6824a9c 100644 --- a/flake.lock +++ b/flake.lock @@ -17,11 +17,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1672756850, - "narHash": "sha256-Smbq3+fitwA13qsTMeaaurv09/KVbZfW7m7lINwzDGA=", + "lastModified": 1672997035, + "narHash": "sha256-DNaNjsGMRYefBTAxFIrVOB2ok477cj1FTpqnu/mKRf4=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "298add347c2bbce14020fcb54051f517c391196b", + "rev": "f1ffcf798e93b169321106a4aef79526a2b4bd0a", "type": "github" }, "original": { diff --git a/grammar.js b/grammar.js index 69a619f..3083ad1 100644 --- a/grammar.js +++ b/grammar.js @@ -1,5 +1,5 @@ module.exports = grammar({ - name: "plpgsql", + name: "psql", extras: ($) => [/\s\n/, /\s/, $.line_comment, $.block_comment], @@ -69,9 +69,11 @@ module.exports = grammar({ $.table_reference, optional(seq("(", field("refcolumn", $.identifier), ")")), optional($._foreign_key_match), - choice( - seq($._foreign_key_on_delete, $._foreign_key_on_update), - seq($._foreign_key_on_update, $._foreign_key_on_delete) + optional( + choice( + seq($._foreign_key_on_delete, $._foreign_key_on_update), + seq($._foreign_key_on_update, $._foreign_key_on_delete) + ) ) ) // TODO: CHECK @@ -116,8 +118,8 @@ module.exports = grammar({ literal: ($) => choice( - $._number, - $._literal_string, + $.number, + $.literal_string, $.keyword_true, $.keyword_false, $.keyword_null @@ -291,8 +293,8 @@ module.exports = grammar({ // https://stackoverflow.com/questions/13014947/regex-to-match-a-c-style-multiline-comment block_comment: (_) => seq("/*", /[^*]*\*+(?:[^/*][^*]*\*+)*/, "/"), - _literal_string: ($) => choice(seq("'", /[^']*/, "'")), - _number: (_) => /\d+/, + literal_string: ($) => choice(seq("'", /[^']*/, "'")), + number: (_) => /\d+/, identifier: ($) => choice($._identifier, seq('"', /[^"]+/, '"')), @@ -316,9 +318,9 @@ function parametricType($, type, params = ["size"]) { type, "(", // first parameter is guaranteed, shift it out of the array - field(params.shift(), alias($._number, $.literal)), + field(params.shift(), $.number), // then, fill in the ", next" until done - ...params.map((p) => seq(",", field(p, alias($._number, $.literal)))), + ...params.map((p) => seq(",", field(p, $.number))), ")" ) ) diff --git a/package.json b/package.json index 0c33b08..0370cde 100644 --- a/package.json +++ b/package.json @@ -1,5 +1,5 @@ { - "name": "tree-sitter-plpgsql", + "name": "tree-sitter-psql", "version": "1.0.0", "description": "", "main": "grammar.js", @@ -8,7 +8,9 @@ "tree-sitter": [ { "scope": "source.psql", - "file-types": ["psql"], + "file-types": [ + "psql" + ], "injection-regex": "^psql$" } ] diff --git a/queries/highlights.scm b/queries/highlights.scm new file mode 100644 index 0000000..20e4561 --- /dev/null +++ b/queries/highlights.scm @@ -0,0 +1,71 @@ +; Keywords +[ + (keyword_cascade) + (keyword_constraint) + (keyword_create) + (keyword_default) + (keyword_delete) + (keyword_key) + (keyword_not) + (keyword_null) + (keyword_on) + (keyword_primary) + (keyword_references) + (keyword_table) + (keyword_update) +] @keyword + +; Identifiers +(column_definition name: (identifier) @variable) +(column_constraint name: (identifier) @variable) + +(table_reference schema: (identifier) @namespace) +(table_reference name: (identifier) @constant) + +; Types +[ + (keyword_smallint) + (keyword_integer) + (keyword_bigint) + (keyword_smallserial) + (keyword_serial) + (keyword_bigserial) + (keyword_real) + (double) + (decimal) + (numeric) + (keyword_uuid) + (keyword_text) + (char) + (varchar) + (keyword_json) + (keyword_jsonb) + (keyword_date) + (keyword_datetime) + (keyword_time) + (keyword_timestamp) + (keyword_timestamptz) + (keyword_bytea) + (keyword_money) + (keyword_boolean) + (keyword_xml) +] @type.builtin + +; Literal +[(keyword_true) (keyword_false)] @boolean +(number) @number + +; Comments +(line_comment) @comment.line +(block_comment) @comment.block + +; Punctuation +[ + ";" + "." + "," +] @punctuation.delimiter +[ + "(" + ")" +] @punctuation.brackets diff --git a/src/grammar.json b/src/grammar.json index c5c506f..7960e78 100644 --- a/src/grammar.json +++ b/src/grammar.json @@ -1,5 +1,5 @@ { - "name": "plpgsql", + "name": "psql", "word": "_identifier", "rules": { "source_file": { @@ -345,30 +345,38 @@ "type": "CHOICE", "members": [ { - "type": "SEQ", + "type": "CHOICE", "members": [ { - "type": "SYMBOL", - "name": "_foreign_key_on_delete" + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "_foreign_key_on_delete" + }, + { + "type": "SYMBOL", + "name": "_foreign_key_on_update" + } + ] }, { - "type": "SYMBOL", - "name": "_foreign_key_on_update" + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "_foreign_key_on_update" + }, + { + "type": "SYMBOL", + "name": "_foreign_key_on_delete" + } + ] } ] }, { - "type": "SEQ", - "members": [ - { - "type": "SYMBOL", - "name": "_foreign_key_on_update" - }, - { - "type": "SYMBOL", - "name": "_foreign_key_on_delete" - } - ] + "type": "BLANK" } ] } @@ -584,11 +592,11 @@ "members": [ { "type": "SYMBOL", - "name": "_number" + "name": "number" }, { "type": "SYMBOL", - "name": "_literal_string" + "name": "literal_string" }, { "type": "SYMBOL", @@ -743,13 +751,8 @@ "type": "FIELD", "name": "precision", "content": { - "type": "ALIAS", - "content": { - "type": "SYMBOL", - "name": "_number" - }, - "named": true, - "value": "literal" + "type": "SYMBOL", + "name": "number" } }, { @@ -786,13 +789,8 @@ "type": "FIELD", "name": "precision", "content": { - "type": "ALIAS", - "content": { - "type": "SYMBOL", - "name": "_number" - }, - "named": true, - "value": "literal" + "type": "SYMBOL", + "name": "number" } }, { @@ -806,13 +804,8 @@ "type": "FIELD", "name": "scale", "content": { - "type": "ALIAS", - "content": { - "type": "SYMBOL", - "name": "_number" - }, - "named": true, - "value": "literal" + "type": "SYMBOL", + "name": "number" } } ] @@ -856,13 +849,8 @@ "type": "FIELD", "name": "precision", "content": { - "type": "ALIAS", - "content": { - "type": "SYMBOL", - "name": "_number" - }, - "named": true, - "value": "literal" + "type": "SYMBOL", + "name": "number" } }, { @@ -899,13 +887,8 @@ "type": "FIELD", "name": "precision", "content": { - "type": "ALIAS", - "content": { - "type": "SYMBOL", - "name": "_number" - }, - "named": true, - "value": "literal" + "type": "SYMBOL", + "name": "number" } }, { @@ -919,13 +902,8 @@ "type": "FIELD", "name": "scale", "content": { - "type": "ALIAS", - "content": { - "type": "SYMBOL", - "name": "_number" - }, - "named": true, - "value": "literal" + "type": "SYMBOL", + "name": "number" } } ] @@ -983,13 +961,8 @@ "type": "FIELD", "name": "size", "content": { - "type": "ALIAS", - "content": { - "type": "SYMBOL", - "name": "_number" - }, - "named": true, - "value": "literal" + "type": "SYMBOL", + "name": "number" } }, { @@ -1026,13 +999,8 @@ "type": "FIELD", "name": "size", "content": { - "type": "ALIAS", - "content": { - "type": "SYMBOL", - "name": "_number" - }, - "named": true, - "value": "literal" + "type": "SYMBOL", + "name": "number" } }, { @@ -1536,7 +1504,7 @@ } ] }, - "_literal_string": { + "literal_string": { "type": "CHOICE", "members": [ { @@ -1558,7 +1526,7 @@ } ] }, - "_number": { + "number": { "type": "PATTERN", "value": "\\d+" }, diff --git a/src/node-types.json b/src/node-types.json index 30e304e..2658386 100644 --- a/src/node-types.json +++ b/src/node-types.json @@ -13,7 +13,7 @@ "required": false, "types": [ { - "type": "literal", + "type": "number", "named": true } ] @@ -337,7 +337,7 @@ "required": false, "types": [ { - "type": "literal", + "type": "number", "named": true } ] @@ -347,7 +347,7 @@ "required": false, "types": [ { - "type": "literal", + "type": "number", "named": true } ] @@ -415,7 +415,7 @@ "fields": {}, "children": { "multiple": false, - "required": false, + "required": true, "types": [ { "type": "keyword_false", @@ -428,10 +428,23 @@ { "type": "keyword_true", "named": true + }, + { + "type": "literal_string", + "named": true + }, + { + "type": "number", + "named": true } ] } }, + { + "type": "literal_string", + "named": true, + "fields": {} + }, { "type": "numeric", "named": true, @@ -441,7 +454,7 @@ "required": false, "types": [ { - "type": "literal", + "type": "number", "named": true } ] @@ -451,7 +464,7 @@ "required": false, "types": [ { - "type": "literal", + "type": "number", "named": true } ] @@ -576,7 +589,7 @@ "required": false, "types": [ { - "type": "literal", + "type": "number", "named": true } ] @@ -828,5 +841,9 @@ { "type": "keyword_xml", "named": true + }, + { + "type": "number", + "named": true } ] \ No newline at end of file diff --git a/src/parser.c b/src/parser.c index 1e50775..daccd14 100644 --- a/src/parser.c +++ b/src/parser.c @@ -91,8 +91,8 @@ enum { aux_sym_block_comment_token1 = 72, anon_sym_SLASH = 73, anon_sym_SQUOTE = 74, - aux_sym__literal_string_token1 = 75, - sym__number = 76, + aux_sym_literal_string_token1 = 75, + sym_number = 76, anon_sym_DQUOTE = 77, aux_sym_identifier_token1 = 78, sym_source_file = 79, @@ -137,7 +137,7 @@ enum { sym_keyword_timestamptz = 118, sym_line_comment = 119, sym_block_comment = 120, - sym__literal_string = 121, + sym_literal_string = 121, sym_identifier = 122, aux_sym_source_file_repeat1 = 123, aux_sym_column_definitions_repeat1 = 124, @@ -221,8 +221,8 @@ static const char * const ts_symbol_names[] = { [aux_sym_block_comment_token1] = "block_comment_token1", [anon_sym_SLASH] = "/", [anon_sym_SQUOTE] = "'", - [aux_sym__literal_string_token1] = "_literal_string_token1", - [sym__number] = "_number", + [aux_sym_literal_string_token1] = "literal_string_token1", + [sym_number] = "number", [anon_sym_DQUOTE] = "\"", [aux_sym_identifier_token1] = "identifier_token1", [sym_source_file] = "source_file", @@ -267,7 +267,7 @@ static const char * const ts_symbol_names[] = { [sym_keyword_timestamptz] = "keyword_timestamptz", [sym_line_comment] = "line_comment", [sym_block_comment] = "block_comment", - [sym__literal_string] = "_literal_string", + [sym_literal_string] = "literal_string", [sym_identifier] = "identifier", [aux_sym_source_file_repeat1] = "source_file_repeat1", [aux_sym_column_definitions_repeat1] = "column_definitions_repeat1", @@ -351,8 +351,8 @@ static const TSSymbol ts_symbol_map[] = { [aux_sym_block_comment_token1] = aux_sym_block_comment_token1, [anon_sym_SLASH] = anon_sym_SLASH, [anon_sym_SQUOTE] = anon_sym_SQUOTE, - [aux_sym__literal_string_token1] = aux_sym__literal_string_token1, - [sym__number] = sym__number, + [aux_sym_literal_string_token1] = aux_sym_literal_string_token1, + [sym_number] = sym_number, [anon_sym_DQUOTE] = anon_sym_DQUOTE, [aux_sym_identifier_token1] = aux_sym_identifier_token1, [sym_source_file] = sym_source_file, @@ -397,7 +397,7 @@ static const TSSymbol ts_symbol_map[] = { [sym_keyword_timestamptz] = sym_keyword_timestamptz, [sym_line_comment] = sym_line_comment, [sym_block_comment] = sym_block_comment, - [sym__literal_string] = sym__literal_string, + [sym_literal_string] = sym_literal_string, [sym_identifier] = sym_identifier, [aux_sym_source_file_repeat1] = aux_sym_source_file_repeat1, [aux_sym_column_definitions_repeat1] = aux_sym_column_definitions_repeat1, @@ -706,12 +706,12 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = false, }, - [aux_sym__literal_string_token1] = { + [aux_sym_literal_string_token1] = { .visible = false, .named = false, }, - [sym__number] = { - .visible = false, + [sym_number] = { + .visible = true, .named = true, }, [anon_sym_DQUOTE] = { @@ -890,8 +890,8 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = true, }, - [sym__literal_string] = { - .visible = false, + [sym_literal_string] = { + .visible = true, .named = true, }, [sym_identifier] = { @@ -976,16 +976,6 @@ static const TSFieldMapEntry ts_field_map_entries[] = { static const TSSymbol ts_alias_sequences[PRODUCTION_ID_COUNT][MAX_ALIAS_SEQUENCE_LENGTH] = { [0] = {0}, - [4] = { - [2] = sym_literal, - }, - [6] = { - [2] = sym_literal, - }, - [7] = { - [2] = sym_literal, - [4] = sym_literal, - }, }; static const uint16_t ts_non_terminal_alias_map[] = { @@ -1381,13 +1371,13 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { ACCEPT_TOKEN(anon_sym_SQUOTE); END_STATE(); case 34: - ACCEPT_TOKEN(aux_sym__literal_string_token1); + ACCEPT_TOKEN(aux_sym_literal_string_token1); if (lookahead == '*') ADVANCE(30); if (lookahead != 0 && lookahead != '\'') ADVANCE(38); END_STATE(); case 35: - ACCEPT_TOKEN(aux_sym__literal_string_token1); + ACCEPT_TOKEN(aux_sym_literal_string_token1); if (lookahead == '-') ADVANCE(36); if (lookahead == '/') ADVANCE(34); if (lookahead == '\t' || @@ -1398,13 +1388,13 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { lookahead != '\'') ADVANCE(38); END_STATE(); case 36: - ACCEPT_TOKEN(aux_sym__literal_string_token1); + ACCEPT_TOKEN(aux_sym_literal_string_token1); if (lookahead == '-') ADVANCE(23); if (lookahead != 0 && lookahead != '\'') ADVANCE(38); END_STATE(); case 37: - ACCEPT_TOKEN(aux_sym__literal_string_token1); + ACCEPT_TOKEN(aux_sym_literal_string_token1); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || @@ -1415,12 +1405,12 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { lookahead != '\'') ADVANCE(38); END_STATE(); case 38: - ACCEPT_TOKEN(aux_sym__literal_string_token1); + ACCEPT_TOKEN(aux_sym_literal_string_token1); if (lookahead != 0 && lookahead != '\'') ADVANCE(38); END_STATE(); case 39: - ACCEPT_TOKEN(sym__number); + ACCEPT_TOKEN(sym_number); if (('0' <= lookahead && lookahead <= '9')) ADVANCE(39); END_STATE(); case 40: @@ -3332,17 +3322,17 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [136] = {.lex_state = 0}, [137] = {.lex_state = 0}, [138] = {.lex_state = 0}, - [139] = {.lex_state = 0}, - [140] = {.lex_state = 0}, + [139] = {.lex_state = 35}, + [140] = {.lex_state = 1}, [141] = {.lex_state = 0}, [142] = {.lex_state = 0}, [143] = {.lex_state = 0}, [144] = {.lex_state = 0}, [145] = {.lex_state = 0}, [146] = {.lex_state = 0}, - [147] = {.lex_state = 10}, + [147] = {.lex_state = 0}, [148] = {.lex_state = 0}, - [149] = {.lex_state = 0}, + [149] = {.lex_state = 10}, [150] = {.lex_state = 0}, [151] = {.lex_state = 0}, [152] = {.lex_state = 0}, @@ -3353,8 +3343,8 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [157] = {.lex_state = 0}, [158] = {.lex_state = 0}, [159] = {.lex_state = 0}, - [160] = {.lex_state = 5}, - [161] = {.lex_state = 0}, + [160] = {.lex_state = 0}, + [161] = {.lex_state = 5}, [162] = {.lex_state = 0}, [163] = {.lex_state = 0}, [164] = {.lex_state = 0}, @@ -3366,8 +3356,8 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [170] = {.lex_state = 0}, [171] = {.lex_state = 0}, [172] = {.lex_state = 0}, - [173] = {.lex_state = 35}, - [174] = {.lex_state = 1}, + [173] = {.lex_state = 0}, + [174] = {.lex_state = 0}, [175] = {.lex_state = 0}, [176] = {.lex_state = 0}, [177] = {.lex_state = 0}, @@ -3453,18 +3443,18 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_SLASH_STAR] = ACTIONS(5), [anon_sym_SLASH] = ACTIONS(1), [anon_sym_SQUOTE] = ACTIONS(1), - [sym__number] = ACTIONS(1), + [sym_number] = ACTIONS(1), [anon_sym_DQUOTE] = ACTIONS(1), }, [1] = { [sym_source_file] = STATE(175), - [sym_statement] = STATE(91), + [sym_statement] = STATE(97), [sym__ddl_statement] = STATE(169), - [sym__create_statement] = STATE(164), - [sym_create_table] = STATE(161), + [sym__create_statement] = STATE(166), + [sym_create_table] = STATE(164), [sym_line_comment] = STATE(1), [sym_block_comment] = STATE(1), - [aux_sym_source_file_repeat1] = STATE(64), + [aux_sym_source_file_repeat1] = STATE(78), [ts_builtin_sym_end] = ACTIONS(7), [anon_sym_SEMI] = ACTIONS(9), [sym_keyword_create] = ACTIONS(11), @@ -3503,19 +3493,19 @@ static const uint16_t ts_small_parse_table[] = { aux_sym_keyword_timestamp_token1, ACTIONS(39), 1, aux_sym_keyword_timestamptz_token1, - STATE(9), 1, + STATE(10), 1, sym__type, - STATE(11), 1, - sym_keyword_char, - STATE(22), 1, + STATE(28), 1, sym_keyword_varchar, + STATE(30), 1, + sym_keyword_char, STATE(2), 2, sym_line_comment, sym_block_comment, - STATE(51), 2, + STATE(52), 2, sym_char, sym_varchar, - STATE(48), 3, + STATE(51), 3, sym_double, sym_decimal, sym_numeric, @@ -3537,7 +3527,7 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_smallserial, sym_keyword_serial, sym_keyword_bigserial, - STATE(47), 7, + STATE(50), 7, sym__type_numeric, sym__type_character, sym__type_datetime, @@ -3558,7 +3548,7 @@ static const uint16_t ts_small_parse_table[] = { aux_sym_keyword_char_token2, sym_keyword_date, aux_sym_keyword_timestamp_token1, - ACTIONS(41), 32, + ACTIONS(41), 33, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, @@ -3566,6 +3556,7 @@ static const uint16_t ts_small_parse_table[] = { aux_sym_double_token1, sym_keyword_not, sym_keyword_null, + sym_keyword_constraint, sym_keyword_default, sym_keyword_unique, sym_keyword_primary, @@ -3591,7 +3582,7 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_bytea, sym_keyword_datetime, aux_sym_keyword_timestamptz_token1, - [146] = 5, + [147] = 5, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, @@ -3604,7 +3595,7 @@ static const uint16_t ts_small_parse_table[] = { aux_sym_keyword_char_token2, sym_keyword_date, aux_sym_keyword_timestamp_token1, - ACTIONS(45), 32, + ACTIONS(45), 33, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, @@ -3612,6 +3603,7 @@ static const uint16_t ts_small_parse_table[] = { aux_sym_double_token1, sym_keyword_not, sym_keyword_null, + sym_keyword_constraint, sym_keyword_default, sym_keyword_unique, sym_keyword_primary, @@ -3637,23 +3629,27 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_bytea, sym_keyword_datetime, aux_sym_keyword_timestamptz_token1, - [197] = 8, + [199] = 10, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(51), 1, - aux_sym__without_time_zone_token1, + ACTIONS(49), 1, + anon_sym_LPAREN, ACTIONS(53), 1, - aux_sym__with_time_zone_token1, - STATE(45), 1, - sym__with_time_zone, - STATE(49), 1, - sym__without_time_zone, + sym_keyword_on, + ACTIONS(55), 1, + sym_keyword_match, + STATE(15), 1, + sym__foreign_key_match, + STATE(118), 1, + sym__foreign_key_on_delete, + STATE(119), 1, + sym__foreign_key_on_update, STATE(5), 2, sym_line_comment, sym_block_comment, - ACTIONS(49), 9, + ACTIONS(51), 9, anon_sym_COMMA, anon_sym_RPAREN, sym_keyword_not, @@ -3663,85 +3659,83 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [231] = 14, + [239] = 10, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, + ACTIONS(53), 1, + sym_keyword_on, + ACTIONS(55), 1, + sym_keyword_match, ACTIONS(57), 1, - sym_keyword_not, - ACTIONS(59), 1, - sym_keyword_null, - ACTIONS(61), 1, - sym_keyword_constraint, - ACTIONS(63), 1, - sym_keyword_default, - ACTIONS(65), 1, - sym_keyword_unique, - ACTIONS(67), 1, - sym_keyword_primary, - ACTIONS(69), 1, - sym_keyword_references, - STATE(7), 1, - aux_sym_column_definition_repeat1, - STATE(32), 1, - sym_column_constraint, - ACTIONS(55), 2, - anon_sym_COMMA, - anon_sym_RPAREN, + anon_sym_LPAREN, + STATE(17), 1, + sym__foreign_key_match, + STATE(108), 1, + sym__foreign_key_on_delete, + STATE(135), 1, + sym__foreign_key_on_update, STATE(6), 2, sym_line_comment, sym_block_comment, - STATE(42), 2, - sym__primary_key, - sym__not_null, - [277] = 13, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(73), 1, - sym_keyword_not, - ACTIONS(76), 1, - sym_keyword_null, - ACTIONS(79), 1, - sym_keyword_constraint, - ACTIONS(82), 1, - sym_keyword_default, - ACTIONS(85), 1, - sym_keyword_unique, - ACTIONS(88), 1, - sym_keyword_primary, - ACTIONS(91), 1, - sym_keyword_references, - STATE(32), 1, - sym_column_constraint, - ACTIONS(71), 2, + ACTIONS(59), 9, anon_sym_COMMA, anon_sym_RPAREN, - STATE(42), 2, - sym__primary_key, - sym__not_null, - STATE(7), 3, - sym_line_comment, - sym_block_comment, - aux_sym_column_definition_repeat1, - [321] = 7, + sym_keyword_not, + sym_keyword_null, + sym_keyword_constraint, + sym_keyword_default, + sym_keyword_unique, + sym_keyword_primary, + sym_keyword_references, + [279] = 9, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(51), 1, - aux_sym__without_time_zone_token1, ACTIONS(53), 1, - aux_sym__with_time_zone_token1, + sym_keyword_on, + ACTIONS(55), 1, + sym_keyword_match, + STATE(16), 1, + sym__foreign_key_match, + STATE(120), 1, + sym__foreign_key_on_update, + STATE(122), 1, + sym__foreign_key_on_delete, + STATE(7), 2, + sym_line_comment, + sym_block_comment, + ACTIONS(61), 9, + anon_sym_COMMA, + anon_sym_RPAREN, + sym_keyword_not, + sym_keyword_null, + sym_keyword_constraint, + sym_keyword_default, + sym_keyword_unique, + sym_keyword_primary, + sym_keyword_references, + [316] = 9, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(53), 1, + sym_keyword_on, + ACTIONS(55), 1, + sym_keyword_match, + STATE(18), 1, + sym__foreign_key_match, + STATE(126), 1, + sym__foreign_key_on_update, + STATE(127), 1, + sym__foreign_key_on_delete, STATE(8), 2, sym_line_comment, sym_block_comment, - STATE(50), 2, - sym__without_time_zone, - sym__with_time_zone, - ACTIONS(94), 9, + ACTIONS(63), 9, anon_sym_COMMA, anon_sym_RPAREN, sym_keyword_not, @@ -3756,65 +3750,82 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(57), 1, - sym_keyword_not, - ACTIONS(59), 1, - sym_keyword_null, - ACTIONS(61), 1, - sym_keyword_constraint, - ACTIONS(63), 1, - sym_keyword_default, - ACTIONS(65), 1, - sym_keyword_unique, ACTIONS(67), 1, - sym_keyword_primary, + sym_keyword_not, ACTIONS(69), 1, + sym_keyword_null, + ACTIONS(71), 1, + sym_keyword_constraint, + ACTIONS(73), 1, + sym_keyword_default, + ACTIONS(75), 1, + sym_keyword_unique, + ACTIONS(77), 1, + sym_keyword_primary, + ACTIONS(79), 1, sym_keyword_references, - STATE(6), 1, + STATE(13), 1, aux_sym_column_definition_repeat1, - STATE(32), 1, + STATE(60), 1, sym_column_constraint, - ACTIONS(96), 2, + ACTIONS(65), 2, anon_sym_COMMA, anon_sym_RPAREN, STATE(9), 2, sym_line_comment, sym_block_comment, - STATE(42), 2, + STATE(74), 2, sym__primary_key, sym__not_null, - [399] = 5, + [399] = 14, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(98), 1, - anon_sym_LPAREN, + ACTIONS(67), 1, + sym_keyword_not, + ACTIONS(69), 1, + sym_keyword_null, + ACTIONS(71), 1, + sym_keyword_constraint, + ACTIONS(73), 1, + sym_keyword_default, + ACTIONS(75), 1, + sym_keyword_unique, + ACTIONS(77), 1, + sym_keyword_primary, + ACTIONS(79), 1, + sym_keyword_references, + STATE(9), 1, + aux_sym_column_definition_repeat1, + STATE(60), 1, + sym_column_constraint, + ACTIONS(81), 2, + anon_sym_COMMA, + anon_sym_RPAREN, STATE(10), 2, sym_line_comment, sym_block_comment, - ACTIONS(100), 10, - anon_sym_COMMA, - anon_sym_RPAREN, - sym_keyword_not, - sym_keyword_null, - sym_keyword_constraint, - sym_keyword_default, - sym_keyword_unique, - sym_keyword_primary, - sym_keyword_references, - sym_keyword_on, - [425] = 5, + STATE(74), 2, + sym__primary_key, + sym__not_null, + [445] = 8, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(102), 1, - anon_sym_LPAREN, + ACTIONS(85), 1, + aux_sym__without_time_zone_token1, + ACTIONS(87), 1, + aux_sym__with_time_zone_token1, + STATE(71), 1, + sym__without_time_zone, + STATE(72), 1, + sym__with_time_zone, STATE(11), 2, sym_line_comment, sym_block_comment, - ACTIONS(104), 9, + ACTIONS(83), 9, anon_sym_COMMA, anon_sym_RPAREN, sym_keyword_not, @@ -3824,16 +3835,22 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [450] = 4, + [479] = 7, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, + ACTIONS(85), 1, + aux_sym__without_time_zone_token1, + ACTIONS(87), 1, + aux_sym__with_time_zone_token1, STATE(12), 2, sym_line_comment, sym_block_comment, - ACTIONS(106), 10, - anon_sym_LPAREN, + STATE(68), 2, + sym__without_time_zone, + sym__with_time_zone, + ACTIONS(89), 9, anon_sym_COMMA, anon_sym_RPAREN, sym_keyword_not, @@ -3843,34 +3860,48 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [473] = 4, + [511] = 13, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - STATE(13), 2, + ACTIONS(93), 1, + sym_keyword_not, + ACTIONS(96), 1, + sym_keyword_null, + ACTIONS(99), 1, + sym_keyword_constraint, + ACTIONS(102), 1, + sym_keyword_default, + ACTIONS(105), 1, + sym_keyword_unique, + ACTIONS(108), 1, + sym_keyword_primary, + ACTIONS(111), 1, + sym_keyword_references, + STATE(60), 1, + sym_column_constraint, + ACTIONS(91), 2, + anon_sym_COMMA, + anon_sym_RPAREN, + STATE(74), 2, + sym__primary_key, + sym__not_null, + STATE(13), 3, sym_line_comment, sym_block_comment, - ACTIONS(100), 10, - anon_sym_COMMA, - anon_sym_RPAREN, - sym_keyword_not, - sym_keyword_null, - sym_keyword_constraint, - sym_keyword_default, - sym_keyword_unique, - sym_keyword_primary, - sym_keyword_references, - sym_keyword_on, - [496] = 4, + aux_sym_column_definition_repeat1, + [555] = 5, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, + ACTIONS(116), 1, + anon_sym_DOT, STATE(14), 2, sym_line_comment, sym_block_comment, - ACTIONS(108), 10, + ACTIONS(114), 12, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, @@ -3881,75 +3912,23 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [519] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - STATE(15), 2, - sym_line_comment, - sym_block_comment, - ACTIONS(110), 10, - anon_sym_LPAREN, - anon_sym_COMMA, - anon_sym_RPAREN, - sym_keyword_not, - sym_keyword_null, - sym_keyword_constraint, - sym_keyword_default, - sym_keyword_unique, - sym_keyword_primary, - sym_keyword_references, - [542] = 5, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(113), 1, - anon_sym_LPAREN, - STATE(16), 2, - sym_line_comment, - sym_block_comment, - ACTIONS(115), 9, - anon_sym_COMMA, - anon_sym_RPAREN, - sym_keyword_not, - sym_keyword_null, - sym_keyword_constraint, - sym_keyword_default, - sym_keyword_unique, - sym_keyword_primary, - sym_keyword_references, - [567] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - STATE(17), 2, - sym_line_comment, - sym_block_comment, - ACTIONS(117), 10, - anon_sym_COMMA, - anon_sym_RPAREN, - sym_keyword_not, - sym_keyword_null, - sym_keyword_constraint, - sym_keyword_default, - sym_keyword_unique, - sym_keyword_primary, - sym_keyword_references, sym_keyword_on, - [590] = 5, + sym_keyword_match, + [583] = 7, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(119), 1, - anon_sym_LPAREN, - STATE(18), 2, + ACTIONS(53), 1, + sym_keyword_on, + STATE(132), 1, + sym__foreign_key_on_delete, + STATE(133), 1, + sym__foreign_key_on_update, + STATE(15), 2, sym_line_comment, sym_block_comment, - ACTIONS(121), 9, + ACTIONS(118), 9, anon_sym_COMMA, anon_sym_RPAREN, sym_keyword_not, @@ -3959,7 +3938,79 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [615] = 4, + [614] = 7, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(53), 1, + sym_keyword_on, + STATE(114), 1, + sym__foreign_key_on_update, + STATE(115), 1, + sym__foreign_key_on_delete, + STATE(16), 2, + sym_line_comment, + sym_block_comment, + ACTIONS(120), 9, + anon_sym_COMMA, + anon_sym_RPAREN, + sym_keyword_not, + sym_keyword_null, + sym_keyword_constraint, + sym_keyword_default, + sym_keyword_unique, + sym_keyword_primary, + sym_keyword_references, + [645] = 7, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(53), 1, + sym_keyword_on, + STATE(129), 1, + sym__foreign_key_on_update, + STATE(130), 1, + sym__foreign_key_on_delete, + STATE(17), 2, + sym_line_comment, + sym_block_comment, + ACTIONS(122), 9, + anon_sym_COMMA, + anon_sym_RPAREN, + sym_keyword_not, + sym_keyword_null, + sym_keyword_constraint, + sym_keyword_default, + sym_keyword_unique, + sym_keyword_primary, + sym_keyword_references, + [676] = 7, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(53), 1, + sym_keyword_on, + STATE(123), 1, + sym__foreign_key_on_update, + STATE(124), 1, + sym__foreign_key_on_delete, + STATE(18), 2, + sym_line_comment, + sym_block_comment, + ACTIONS(124), 9, + anon_sym_COMMA, + anon_sym_RPAREN, + sym_keyword_not, + sym_keyword_null, + sym_keyword_constraint, + sym_keyword_default, + sym_keyword_unique, + sym_keyword_primary, + sym_keyword_references, + [707] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, @@ -3967,7 +4018,8 @@ static const uint16_t ts_small_parse_table[] = { STATE(19), 2, sym_line_comment, sym_block_comment, - ACTIONS(123), 10, + ACTIONS(126), 12, + anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, sym_keyword_not, @@ -3978,15 +4030,18 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_primary, sym_keyword_references, sym_keyword_on, - [638] = 4, + sym_keyword_match, + [732] = 5, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, + ACTIONS(128), 1, + anon_sym_LPAREN, STATE(20), 2, sym_line_comment, sym_block_comment, - ACTIONS(125), 10, + ACTIONS(130), 10, anon_sym_COMMA, anon_sym_RPAREN, sym_keyword_not, @@ -3997,7 +4052,7 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_primary, sym_keyword_references, sym_keyword_on, - [661] = 4, + [758] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, @@ -4005,7 +4060,7 @@ static const uint16_t ts_small_parse_table[] = { STATE(21), 2, sym_line_comment, sym_block_comment, - ACTIONS(127), 10, + ACTIONS(132), 10, anon_sym_COMMA, anon_sym_RPAREN, sym_keyword_not, @@ -4016,77 +4071,15 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_primary, sym_keyword_references, sym_keyword_on, - [684] = 5, + [781] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(129), 1, - anon_sym_LPAREN, STATE(22), 2, sym_line_comment, sym_block_comment, - ACTIONS(131), 9, - anon_sym_COMMA, - anon_sym_RPAREN, - sym_keyword_not, - sym_keyword_null, - sym_keyword_constraint, - sym_keyword_default, - sym_keyword_unique, - sym_keyword_primary, - sym_keyword_references, - [709] = 6, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(135), 1, - sym_keyword_null, - ACTIONS(137), 1, - sym_keyword_nulls, - STATE(23), 2, - sym_line_comment, - sym_block_comment, - ACTIONS(133), 8, - anon_sym_COMMA, - anon_sym_RPAREN, - sym_keyword_not, - sym_keyword_constraint, - sym_keyword_default, - sym_keyword_unique, - sym_keyword_primary, - sym_keyword_references, - [736] = 6, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(141), 1, - sym_keyword_null, - ACTIONS(143), 1, - sym_keyword_nulls, - STATE(24), 2, - sym_line_comment, - sym_block_comment, - ACTIONS(139), 8, - anon_sym_COMMA, - anon_sym_RPAREN, - sym_keyword_not, - sym_keyword_constraint, - sym_keyword_default, - sym_keyword_unique, - sym_keyword_primary, - sym_keyword_references, - [763] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - STATE(25), 2, - sym_line_comment, - sym_block_comment, - ACTIONS(145), 10, + ACTIONS(134), 10, anon_sym_COMMA, anon_sym_RPAREN, sym_keyword_not, @@ -4097,15 +4090,15 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_primary, sym_keyword_references, sym_keyword_on, - [786] = 4, + [804] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - STATE(26), 2, + STATE(23), 2, sym_line_comment, sym_block_comment, - ACTIONS(147), 9, + ACTIONS(130), 10, anon_sym_COMMA, anon_sym_RPAREN, sym_keyword_not, @@ -4115,7 +4108,69 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [808] = 4, + sym_keyword_on, + [827] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + STATE(24), 2, + sym_line_comment, + sym_block_comment, + ACTIONS(136), 10, + anon_sym_COMMA, + anon_sym_RPAREN, + sym_keyword_not, + sym_keyword_null, + sym_keyword_constraint, + sym_keyword_default, + sym_keyword_unique, + sym_keyword_primary, + sym_keyword_references, + sym_keyword_on, + [850] = 6, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(140), 1, + sym_keyword_null, + ACTIONS(142), 1, + sym_keyword_nulls, + STATE(25), 2, + sym_line_comment, + sym_block_comment, + ACTIONS(138), 8, + anon_sym_COMMA, + anon_sym_RPAREN, + sym_keyword_not, + sym_keyword_constraint, + sym_keyword_default, + sym_keyword_unique, + sym_keyword_primary, + sym_keyword_references, + [877] = 6, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(146), 1, + sym_keyword_null, + ACTIONS(148), 1, + sym_keyword_nulls, + STATE(26), 2, + sym_line_comment, + sym_block_comment, + ACTIONS(144), 8, + anon_sym_COMMA, + anon_sym_RPAREN, + sym_keyword_not, + sym_keyword_constraint, + sym_keyword_default, + sym_keyword_unique, + sym_keyword_primary, + sym_keyword_references, + [904] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, @@ -4123,7 +4178,7 @@ static const uint16_t ts_small_parse_table[] = { STATE(27), 2, sym_line_comment, sym_block_comment, - ACTIONS(149), 9, + ACTIONS(150), 10, anon_sym_COMMA, anon_sym_RPAREN, sym_keyword_not, @@ -4133,15 +4188,18 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [830] = 4, + sym_keyword_on, + [927] = 5, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, + ACTIONS(152), 1, + anon_sym_LPAREN, STATE(28), 2, sym_line_comment, sym_block_comment, - ACTIONS(151), 9, + ACTIONS(154), 9, anon_sym_COMMA, anon_sym_RPAREN, sym_keyword_not, @@ -4151,7 +4209,7 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [852] = 4, + [952] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, @@ -4159,7 +4217,7 @@ static const uint16_t ts_small_parse_table[] = { STATE(29), 2, sym_line_comment, sym_block_comment, - ACTIONS(153), 9, + ACTIONS(156), 10, anon_sym_COMMA, anon_sym_RPAREN, sym_keyword_not, @@ -4169,15 +4227,18 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [874] = 4, + sym_keyword_on, + [975] = 5, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, + ACTIONS(158), 1, + anon_sym_LPAREN, STATE(30), 2, sym_line_comment, sym_block_comment, - ACTIONS(155), 9, + ACTIONS(160), 9, anon_sym_COMMA, anon_sym_RPAREN, sym_keyword_not, @@ -4187,7 +4248,7 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [896] = 4, + [1000] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, @@ -4195,7 +4256,8 @@ static const uint16_t ts_small_parse_table[] = { STATE(31), 2, sym_line_comment, sym_block_comment, - ACTIONS(157), 9, + ACTIONS(162), 10, + anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, sym_keyword_not, @@ -4205,7 +4267,7 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [918] = 4, + [1023] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, @@ -4213,7 +4275,8 @@ static const uint16_t ts_small_parse_table[] = { STATE(32), 2, sym_line_comment, sym_block_comment, - ACTIONS(159), 9, + ACTIONS(164), 10, + anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, sym_keyword_not, @@ -4223,15 +4286,17 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [940] = 4, + [1046] = 5, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, + ACTIONS(166), 1, + anon_sym_LPAREN, STATE(33), 2, sym_line_comment, sym_block_comment, - ACTIONS(161), 9, + ACTIONS(168), 9, anon_sym_COMMA, anon_sym_RPAREN, sym_keyword_not, @@ -4241,7 +4306,7 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [962] = 4, + [1071] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, @@ -4249,7 +4314,7 @@ static const uint16_t ts_small_parse_table[] = { STATE(34), 2, sym_line_comment, sym_block_comment, - ACTIONS(163), 9, + ACTIONS(170), 10, anon_sym_COMMA, anon_sym_RPAREN, sym_keyword_not, @@ -4259,15 +4324,18 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [984] = 4, + sym_keyword_on, + [1094] = 5, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, + ACTIONS(172), 1, + anon_sym_LPAREN, STATE(35), 2, sym_line_comment, sym_block_comment, - ACTIONS(165), 9, + ACTIONS(174), 9, anon_sym_COMMA, anon_sym_RPAREN, sym_keyword_not, @@ -4277,7 +4345,7 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [1006] = 4, + [1119] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, @@ -4285,7 +4353,8 @@ static const uint16_t ts_small_parse_table[] = { STATE(36), 2, sym_line_comment, sym_block_comment, - ACTIONS(167), 9, + ACTIONS(176), 10, + anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, sym_keyword_not, @@ -4295,7 +4364,7 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [1028] = 4, + [1142] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, @@ -4303,114 +4372,6 @@ static const uint16_t ts_small_parse_table[] = { STATE(37), 2, sym_line_comment, sym_block_comment, - ACTIONS(169), 9, - anon_sym_COMMA, - anon_sym_RPAREN, - sym_keyword_not, - sym_keyword_null, - sym_keyword_constraint, - sym_keyword_default, - sym_keyword_unique, - sym_keyword_primary, - sym_keyword_references, - [1050] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - STATE(38), 2, - sym_line_comment, - sym_block_comment, - ACTIONS(171), 9, - anon_sym_COMMA, - anon_sym_RPAREN, - sym_keyword_not, - sym_keyword_null, - sym_keyword_constraint, - sym_keyword_default, - sym_keyword_unique, - sym_keyword_primary, - sym_keyword_references, - [1072] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - STATE(39), 2, - sym_line_comment, - sym_block_comment, - ACTIONS(173), 9, - anon_sym_COMMA, - anon_sym_RPAREN, - sym_keyword_not, - sym_keyword_null, - sym_keyword_constraint, - sym_keyword_default, - sym_keyword_unique, - sym_keyword_primary, - sym_keyword_references, - [1094] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - STATE(40), 2, - sym_line_comment, - sym_block_comment, - ACTIONS(175), 9, - anon_sym_COMMA, - anon_sym_RPAREN, - sym_keyword_not, - sym_keyword_null, - sym_keyword_constraint, - sym_keyword_default, - sym_keyword_unique, - sym_keyword_primary, - sym_keyword_references, - [1116] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - STATE(41), 2, - sym_line_comment, - sym_block_comment, - ACTIONS(177), 9, - anon_sym_COMMA, - anon_sym_RPAREN, - sym_keyword_not, - sym_keyword_null, - sym_keyword_constraint, - sym_keyword_default, - sym_keyword_unique, - sym_keyword_primary, - sym_keyword_references, - [1138] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - STATE(42), 2, - sym_line_comment, - sym_block_comment, - ACTIONS(139), 9, - anon_sym_COMMA, - anon_sym_RPAREN, - sym_keyword_not, - sym_keyword_null, - sym_keyword_constraint, - sym_keyword_default, - sym_keyword_unique, - sym_keyword_primary, - sym_keyword_references, - [1160] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - STATE(43), 2, - sym_line_comment, - sym_block_comment, ACTIONS(179), 9, anon_sym_COMMA, anon_sym_RPAREN, @@ -4421,12 +4382,30 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [1182] = 4, + [1164] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - STATE(44), 2, + STATE(38), 2, + sym_line_comment, + sym_block_comment, + ACTIONS(118), 9, + anon_sym_COMMA, + anon_sym_RPAREN, + sym_keyword_not, + sym_keyword_null, + sym_keyword_constraint, + sym_keyword_default, + sym_keyword_unique, + sym_keyword_primary, + sym_keyword_references, + [1186] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + STATE(39), 2, sym_line_comment, sym_block_comment, ACTIONS(181), 9, @@ -4439,12 +4418,12 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [1204] = 4, + [1208] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - STATE(45), 2, + STATE(40), 2, sym_line_comment, sym_block_comment, ACTIONS(183), 9, @@ -4457,12 +4436,12 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [1226] = 4, + [1230] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - STATE(46), 2, + STATE(41), 2, sym_line_comment, sym_block_comment, ACTIONS(185), 9, @@ -4475,12 +4454,30 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [1248] = 4, + [1252] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - STATE(47), 2, + STATE(42), 2, + sym_line_comment, + sym_block_comment, + ACTIONS(51), 9, + anon_sym_COMMA, + anon_sym_RPAREN, + sym_keyword_not, + sym_keyword_null, + sym_keyword_constraint, + sym_keyword_default, + sym_keyword_unique, + sym_keyword_primary, + sym_keyword_references, + [1274] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + STATE(43), 2, sym_line_comment, sym_block_comment, ACTIONS(187), 9, @@ -4493,12 +4490,12 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [1270] = 4, + [1296] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - STATE(48), 2, + STATE(44), 2, sym_line_comment, sym_block_comment, ACTIONS(189), 9, @@ -4511,12 +4508,12 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [1292] = 4, + [1318] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - STATE(49), 2, + STATE(45), 2, sym_line_comment, sym_block_comment, ACTIONS(191), 9, @@ -4529,12 +4526,12 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [1314] = 4, + [1340] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - STATE(50), 2, + STATE(46), 2, sym_line_comment, sym_block_comment, ACTIONS(193), 9, @@ -4547,12 +4544,12 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [1336] = 4, + [1362] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - STATE(51), 2, + STATE(47), 2, sym_line_comment, sym_block_comment, ACTIONS(195), 9, @@ -4565,12 +4562,30 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [1358] = 4, + [1384] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - STATE(52), 2, + STATE(48), 2, + sym_line_comment, + sym_block_comment, + ACTIONS(59), 9, + anon_sym_COMMA, + anon_sym_RPAREN, + sym_keyword_not, + sym_keyword_null, + sym_keyword_constraint, + sym_keyword_default, + sym_keyword_unique, + sym_keyword_primary, + sym_keyword_references, + [1406] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + STATE(49), 2, sym_line_comment, sym_block_comment, ACTIONS(197), 9, @@ -4583,12 +4598,12 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [1380] = 4, + [1428] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - STATE(53), 2, + STATE(50), 2, sym_line_comment, sym_block_comment, ACTIONS(199), 9, @@ -4601,12 +4616,12 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [1402] = 4, + [1450] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - STATE(54), 2, + STATE(51), 2, sym_line_comment, sym_block_comment, ACTIONS(201), 9, @@ -4619,12 +4634,12 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [1424] = 4, + [1472] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - STATE(55), 2, + STATE(52), 2, sym_line_comment, sym_block_comment, ACTIONS(203), 9, @@ -4637,12 +4652,12 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [1446] = 4, + [1494] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - STATE(56), 2, + STATE(53), 2, sym_line_comment, sym_block_comment, ACTIONS(205), 9, @@ -4655,12 +4670,12 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [1468] = 4, + [1516] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - STATE(57), 2, + STATE(54), 2, sym_line_comment, sym_block_comment, ACTIONS(207), 9, @@ -4673,12 +4688,12 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [1490] = 4, + [1538] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - STATE(58), 2, + STATE(55), 2, sym_line_comment, sym_block_comment, ACTIONS(209), 9, @@ -4691,12 +4706,12 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [1512] = 4, + [1560] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - STATE(59), 2, + STATE(56), 2, sym_line_comment, sym_block_comment, ACTIONS(211), 9, @@ -4709,12 +4724,12 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [1534] = 4, + [1582] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - STATE(60), 2, + STATE(57), 2, sym_line_comment, sym_block_comment, ACTIONS(213), 9, @@ -4727,12 +4742,12 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [1556] = 4, + [1604] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - STATE(61), 2, + STATE(58), 2, sym_line_comment, sym_block_comment, ACTIONS(215), 9, @@ -4745,30 +4760,12 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [1578] = 4, + [1626] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - STATE(62), 2, - sym_line_comment, - sym_block_comment, - ACTIONS(133), 9, - anon_sym_COMMA, - anon_sym_RPAREN, - sym_keyword_not, - sym_keyword_null, - sym_keyword_constraint, - sym_keyword_default, - sym_keyword_unique, - sym_keyword_primary, - sym_keyword_references, - [1600] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - STATE(63), 2, + STATE(59), 2, sym_line_comment, sym_block_comment, ACTIONS(217), 9, @@ -4781,7 +4778,342 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [1622] = 11, + [1648] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + STATE(60), 2, + sym_line_comment, + sym_block_comment, + ACTIONS(219), 9, + anon_sym_COMMA, + anon_sym_RPAREN, + sym_keyword_not, + sym_keyword_null, + sym_keyword_constraint, + sym_keyword_default, + sym_keyword_unique, + sym_keyword_primary, + sym_keyword_references, + [1670] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + STATE(61), 2, + sym_line_comment, + sym_block_comment, + ACTIONS(221), 9, + anon_sym_COMMA, + anon_sym_RPAREN, + sym_keyword_not, + sym_keyword_null, + sym_keyword_constraint, + sym_keyword_default, + sym_keyword_unique, + sym_keyword_primary, + sym_keyword_references, + [1692] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + STATE(62), 2, + sym_line_comment, + sym_block_comment, + ACTIONS(223), 9, + anon_sym_COMMA, + anon_sym_RPAREN, + sym_keyword_not, + sym_keyword_null, + sym_keyword_constraint, + sym_keyword_default, + sym_keyword_unique, + sym_keyword_primary, + sym_keyword_references, + [1714] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + STATE(63), 2, + sym_line_comment, + sym_block_comment, + ACTIONS(225), 9, + anon_sym_COMMA, + anon_sym_RPAREN, + sym_keyword_not, + sym_keyword_null, + sym_keyword_constraint, + sym_keyword_default, + sym_keyword_unique, + sym_keyword_primary, + sym_keyword_references, + [1736] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + STATE(64), 2, + sym_line_comment, + sym_block_comment, + ACTIONS(122), 9, + anon_sym_COMMA, + anon_sym_RPAREN, + sym_keyword_not, + sym_keyword_null, + sym_keyword_constraint, + sym_keyword_default, + sym_keyword_unique, + sym_keyword_primary, + sym_keyword_references, + [1758] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + STATE(65), 2, + sym_line_comment, + sym_block_comment, + ACTIONS(227), 9, + anon_sym_COMMA, + anon_sym_RPAREN, + sym_keyword_not, + sym_keyword_null, + sym_keyword_constraint, + sym_keyword_default, + sym_keyword_unique, + sym_keyword_primary, + sym_keyword_references, + [1780] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + STATE(66), 2, + sym_line_comment, + sym_block_comment, + ACTIONS(229), 9, + anon_sym_COMMA, + anon_sym_RPAREN, + sym_keyword_not, + sym_keyword_null, + sym_keyword_constraint, + sym_keyword_default, + sym_keyword_unique, + sym_keyword_primary, + sym_keyword_references, + [1802] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + STATE(67), 2, + sym_line_comment, + sym_block_comment, + ACTIONS(231), 9, + anon_sym_COMMA, + anon_sym_RPAREN, + sym_keyword_not, + sym_keyword_null, + sym_keyword_constraint, + sym_keyword_default, + sym_keyword_unique, + sym_keyword_primary, + sym_keyword_references, + [1824] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + STATE(68), 2, + sym_line_comment, + sym_block_comment, + ACTIONS(233), 9, + anon_sym_COMMA, + anon_sym_RPAREN, + sym_keyword_not, + sym_keyword_null, + sym_keyword_constraint, + sym_keyword_default, + sym_keyword_unique, + sym_keyword_primary, + sym_keyword_references, + [1846] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + STATE(69), 2, + sym_line_comment, + sym_block_comment, + ACTIONS(235), 9, + anon_sym_COMMA, + anon_sym_RPAREN, + sym_keyword_not, + sym_keyword_null, + sym_keyword_constraint, + sym_keyword_default, + sym_keyword_unique, + sym_keyword_primary, + sym_keyword_references, + [1868] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + STATE(70), 2, + sym_line_comment, + sym_block_comment, + ACTIONS(144), 9, + anon_sym_COMMA, + anon_sym_RPAREN, + sym_keyword_not, + sym_keyword_null, + sym_keyword_constraint, + sym_keyword_default, + sym_keyword_unique, + sym_keyword_primary, + sym_keyword_references, + [1890] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + STATE(71), 2, + sym_line_comment, + sym_block_comment, + ACTIONS(237), 9, + anon_sym_COMMA, + anon_sym_RPAREN, + sym_keyword_not, + sym_keyword_null, + sym_keyword_constraint, + sym_keyword_default, + sym_keyword_unique, + sym_keyword_primary, + sym_keyword_references, + [1912] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + STATE(72), 2, + sym_line_comment, + sym_block_comment, + ACTIONS(239), 9, + anon_sym_COMMA, + anon_sym_RPAREN, + sym_keyword_not, + sym_keyword_null, + sym_keyword_constraint, + sym_keyword_default, + sym_keyword_unique, + sym_keyword_primary, + sym_keyword_references, + [1934] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + STATE(73), 2, + sym_line_comment, + sym_block_comment, + ACTIONS(241), 9, + anon_sym_COMMA, + anon_sym_RPAREN, + sym_keyword_not, + sym_keyword_null, + sym_keyword_constraint, + sym_keyword_default, + sym_keyword_unique, + sym_keyword_primary, + sym_keyword_references, + [1956] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + STATE(74), 2, + sym_line_comment, + sym_block_comment, + ACTIONS(138), 9, + anon_sym_COMMA, + anon_sym_RPAREN, + sym_keyword_not, + sym_keyword_null, + sym_keyword_constraint, + sym_keyword_default, + sym_keyword_unique, + sym_keyword_primary, + sym_keyword_references, + [1978] = 8, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(245), 1, + anon_sym_SQUOTE, + STATE(42), 1, + sym__expression, + STATE(43), 1, + sym_literal, + STATE(67), 1, + sym_literal_string, + STATE(75), 2, + sym_line_comment, + sym_block_comment, + ACTIONS(243), 4, + sym_keyword_null, + sym_keyword_true, + sym_keyword_false, + sym_number, + [2007] = 8, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(245), 1, + anon_sym_SQUOTE, + STATE(43), 1, + sym_literal, + STATE(48), 1, + sym__expression, + STATE(67), 1, + sym_literal_string, + STATE(76), 2, + sym_line_comment, + sym_block_comment, + ACTIONS(243), 4, + sym_keyword_null, + sym_keyword_true, + sym_keyword_false, + sym_number, + [2036] = 10, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(247), 1, + ts_builtin_sym_end, + ACTIONS(249), 1, + anon_sym_SEMI, + ACTIONS(252), 1, + sym_keyword_create, + STATE(97), 1, + sym_statement, + STATE(164), 1, + sym_create_table, + STATE(166), 1, + sym__create_statement, + STATE(169), 1, + sym__ddl_statement, + STATE(77), 3, + sym_line_comment, + sym_block_comment, + aux_sym_source_file_repeat1, + [2069] = 11, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, @@ -4790,553 +5122,314 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_SEMI, ACTIONS(11), 1, sym_keyword_create, - ACTIONS(219), 1, - ts_builtin_sym_end, - STATE(65), 1, - aux_sym_source_file_repeat1, - STATE(91), 1, - sym_statement, - STATE(161), 1, - sym_create_table, - STATE(164), 1, - sym__create_statement, - STATE(169), 1, - sym__ddl_statement, - STATE(64), 2, - sym_line_comment, - sym_block_comment, - [1657] = 10, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(221), 1, - ts_builtin_sym_end, - ACTIONS(223), 1, - anon_sym_SEMI, - ACTIONS(226), 1, - sym_keyword_create, - STATE(91), 1, - sym_statement, - STATE(161), 1, - sym_create_table, - STATE(164), 1, - sym__create_statement, - STATE(169), 1, - sym__ddl_statement, - STATE(65), 3, - sym_line_comment, - sym_block_comment, - aux_sym_source_file_repeat1, - [1690] = 10, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(57), 1, - sym_keyword_not, - ACTIONS(67), 1, - sym_keyword_primary, - ACTIONS(229), 1, - sym_keyword_null, - ACTIONS(231), 1, - sym_keyword_default, - ACTIONS(233), 1, - sym_keyword_unique, - ACTIONS(235), 1, - sym_keyword_references, - STATE(62), 2, - sym__primary_key, - sym__not_null, - STATE(66), 2, - sym_line_comment, - sym_block_comment, - [1723] = 8, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(239), 1, - anon_sym_SQUOTE, - STATE(33), 1, - sym__literal_string, - STATE(38), 1, - sym__expression, - STATE(43), 1, - sym_literal, - STATE(67), 2, - sym_line_comment, - sym_block_comment, - ACTIONS(237), 4, - sym_keyword_null, - sym_keyword_true, - sym_keyword_false, - sym__number, - [1752] = 8, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(239), 1, - anon_sym_SQUOTE, - STATE(33), 1, - sym__literal_string, - STATE(37), 1, - sym__expression, - STATE(43), 1, - sym_literal, - STATE(68), 2, - sym_line_comment, - sym_block_comment, - ACTIONS(237), 4, - sym_keyword_null, - sym_keyword_true, - sym_keyword_false, - sym__number, - [1781] = 9, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(241), 1, - sym__identifier, - ACTIONS(243), 1, - sym_keyword_if, - ACTIONS(245), 1, - anon_sym_DQUOTE, - STATE(82), 1, - sym_identifier, - STATE(84), 1, - sym__if_not_exists, - STATE(134), 1, - sym_table_reference, - STATE(69), 2, - sym_line_comment, - sym_block_comment, - [1810] = 9, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(247), 1, - anon_sym_LPAREN, - ACTIONS(249), 1, - sym_keyword_on, - ACTIONS(251), 1, - sym_keyword_match, - STATE(103), 1, - sym__foreign_key_match, - STATE(120), 1, - sym__foreign_key_on_delete, - STATE(121), 1, - sym__foreign_key_on_update, - STATE(70), 2, - sym_line_comment, - sym_block_comment, - [1839] = 9, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(241), 1, - sym__identifier, - ACTIONS(243), 1, - sym_keyword_if, - ACTIONS(245), 1, - anon_sym_DQUOTE, - STATE(80), 1, - sym__if_not_exists, - STATE(82), 1, - sym_identifier, - STATE(130), 1, - sym_table_reference, - STATE(71), 2, - sym_line_comment, - sym_block_comment, - [1868] = 9, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(249), 1, - sym_keyword_on, - ACTIONS(251), 1, - sym_keyword_match, - ACTIONS(253), 1, - anon_sym_LPAREN, - STATE(98), 1, - sym__foreign_key_match, - STATE(107), 1, - sym__foreign_key_on_delete, - STATE(135), 1, - sym__foreign_key_on_update, - STATE(72), 2, - sym_line_comment, - sym_block_comment, - [1897] = 8, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, ACTIONS(255), 1, - sym_keyword_table, - ACTIONS(257), 1, - aux_sym_keyword_temporary_token1, - ACTIONS(259), 1, - aux_sym_keyword_temporary_token2, - ACTIONS(261), 1, - sym_keyword_unlogged, - STATE(151), 1, - sym_keyword_temporary, - STATE(73), 2, - sym_line_comment, - sym_block_comment, - [1923] = 8, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(249), 1, - sym_keyword_on, - ACTIONS(251), 1, - sym_keyword_match, - STATE(93), 1, - sym__foreign_key_match, - STATE(116), 1, - sym__foreign_key_on_update, - STATE(117), 1, - sym__foreign_key_on_delete, - STATE(74), 2, - sym_line_comment, - sym_block_comment, - [1949] = 8, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(249), 1, - sym_keyword_on, - ACTIONS(251), 1, - sym_keyword_match, - STATE(96), 1, - sym__foreign_key_match, - STATE(125), 1, - sym__foreign_key_on_update, - STATE(127), 1, - sym__foreign_key_on_delete, - STATE(75), 2, - sym_line_comment, - sym_block_comment, - [1975] = 8, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(245), 1, - anon_sym_DQUOTE, - ACTIONS(263), 1, - sym__identifier, - ACTIONS(265), 1, - anon_sym_RPAREN, - STATE(2), 1, - sym_identifier, - STATE(86), 1, - sym_column_definition, - STATE(76), 2, - sym_line_comment, - sym_block_comment, - [2001] = 7, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(267), 1, - sym_keyword_no, - ACTIONS(269), 1, - sym_keyword_set, - STATE(19), 1, - sym_referencial_action, - ACTIONS(271), 2, - sym_keyword_restrict, - sym_keyword_cascade, - STATE(77), 2, - sym_line_comment, - sym_block_comment, - [2025] = 7, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(267), 1, - sym_keyword_no, - ACTIONS(269), 1, - sym_keyword_set, - STATE(17), 1, - sym_referencial_action, - ACTIONS(271), 2, - sym_keyword_restrict, - sym_keyword_cascade, + ts_builtin_sym_end, + STATE(77), 1, + aux_sym_source_file_repeat1, + STATE(97), 1, + sym_statement, + STATE(164), 1, + sym_create_table, + STATE(166), 1, + sym__create_statement, + STATE(169), 1, + sym__ddl_statement, STATE(78), 2, sym_line_comment, sym_block_comment, - [2049] = 7, + [2104] = 10, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(245), 1, - anon_sym_DQUOTE, + ACTIONS(67), 1, + sym_keyword_not, + ACTIONS(77), 1, + sym_keyword_primary, + ACTIONS(257), 1, + sym_keyword_null, + ACTIONS(259), 1, + sym_keyword_default, + ACTIONS(261), 1, + sym_keyword_unique, ACTIONS(263), 1, - sym__identifier, - STATE(2), 1, - sym_identifier, - STATE(113), 1, - sym_column_definition, + sym_keyword_references, + STATE(70), 2, + sym__primary_key, + sym__not_null, STATE(79), 2, sym_line_comment, sym_block_comment, - [2072] = 7, + [2137] = 9, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(245), 1, - anon_sym_DQUOTE, - ACTIONS(263), 1, + ACTIONS(265), 1, sym__identifier, - STATE(82), 1, + ACTIONS(267), 1, + sym_keyword_if, + ACTIONS(269), 1, + anon_sym_DQUOTE, + STATE(14), 1, sym_identifier, - STATE(122), 1, + STATE(88), 1, + sym__if_not_exists, + STATE(131), 1, sym_table_reference, STATE(80), 2, sym_line_comment, sym_block_comment, - [2095] = 7, + [2166] = 9, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(245), 1, - anon_sym_DQUOTE, - ACTIONS(263), 1, + ACTIONS(265), 1, sym__identifier, - STATE(70), 1, - sym_table_reference, - STATE(82), 1, + ACTIONS(267), 1, + sym_keyword_if, + ACTIONS(269), 1, + anon_sym_DQUOTE, + STATE(14), 1, sym_identifier, + STATE(90), 1, + sym__if_not_exists, + STATE(136), 1, + sym_table_reference, STATE(81), 2, sym_line_comment, sym_block_comment, - [2118] = 5, + [2195] = 8, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, + ACTIONS(271), 1, + sym_keyword_table, + ACTIONS(273), 1, + aux_sym_keyword_temporary_token1, ACTIONS(275), 1, - anon_sym_DOT, + aux_sym_keyword_temporary_token2, + ACTIONS(277), 1, + sym_keyword_unlogged, + STATE(138), 1, + sym_keyword_temporary, STATE(82), 2, sym_line_comment, sym_block_comment, - ACTIONS(273), 3, - anon_sym_LPAREN, - sym_keyword_on, - sym_keyword_match, - [2137] = 7, + [2221] = 8, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(245), 1, + ACTIONS(269), 1, anon_sym_DQUOTE, - ACTIONS(263), 1, + ACTIONS(279), 1, sym__identifier, - STATE(72), 1, - sym_table_reference, - STATE(82), 1, + ACTIONS(281), 1, + anon_sym_RPAREN, + STATE(2), 1, sym_identifier, + STATE(106), 1, + sym_column_definition, STATE(83), 2, sym_line_comment, sym_block_comment, - [2160] = 7, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(245), 1, - anon_sym_DQUOTE, - ACTIONS(263), 1, - sym__identifier, - STATE(82), 1, - sym_identifier, - STATE(130), 1, - sym_table_reference, - STATE(84), 2, - sym_line_comment, - sym_block_comment, - [2183] = 6, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(277), 1, - anon_sym_COMMA, - ACTIONS(279), 1, - anon_sym_RPAREN, - STATE(105), 1, - aux_sym_column_definitions_repeat1, - STATE(85), 2, - sym_line_comment, - sym_block_comment, - [2203] = 6, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(277), 1, - anon_sym_COMMA, - ACTIONS(281), 1, - anon_sym_RPAREN, - STATE(85), 1, - aux_sym_column_definitions_repeat1, - STATE(86), 2, - sym_line_comment, - sym_block_comment, - [2223] = 5, + [2247] = 7, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(283), 1, - anon_sym_COMMA, - ACTIONS(286), 1, - anon_sym_RPAREN, - STATE(87), 3, + sym_keyword_no, + ACTIONS(285), 1, + sym_keyword_set, + STATE(21), 1, + sym_referencial_action, + ACTIONS(287), 2, + sym_keyword_restrict, + sym_keyword_cascade, + STATE(84), 2, sym_line_comment, sym_block_comment, - aux_sym_referencial_action_repeat1, - [2241] = 4, + [2271] = 7, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, + ACTIONS(283), 1, + sym_keyword_no, + ACTIONS(285), 1, + sym_keyword_set, + STATE(27), 1, + sym_referencial_action, + ACTIONS(287), 2, + sym_keyword_restrict, + sym_keyword_cascade, + STATE(85), 2, + sym_line_comment, + sym_block_comment, + [2295] = 7, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(269), 1, + anon_sym_DQUOTE, + ACTIONS(279), 1, + sym__identifier, + STATE(6), 1, + sym_table_reference, + STATE(14), 1, + sym_identifier, + STATE(86), 2, + sym_line_comment, + sym_block_comment, + [2318] = 7, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(269), 1, + anon_sym_DQUOTE, + ACTIONS(279), 1, + sym__identifier, + STATE(5), 1, + sym_table_reference, + STATE(14), 1, + sym_identifier, + STATE(87), 2, + sym_line_comment, + sym_block_comment, + [2341] = 7, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(269), 1, + anon_sym_DQUOTE, + ACTIONS(279), 1, + sym__identifier, + STATE(14), 1, + sym_identifier, + STATE(136), 1, + sym_table_reference, STATE(88), 2, sym_line_comment, sym_block_comment, - ACTIONS(288), 3, - ts_builtin_sym_end, - anon_sym_SEMI, - sym_keyword_create, - [2257] = 6, + [2364] = 7, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(290), 1, - anon_sym_COMMA, - ACTIONS(292), 1, - anon_sym_RPAREN, - STATE(87), 1, - aux_sym_referencial_action_repeat1, + ACTIONS(269), 1, + anon_sym_DQUOTE, + ACTIONS(279), 1, + sym__identifier, + STATE(2), 1, + sym_identifier, + STATE(121), 1, + sym_column_definition, STATE(89), 2, sym_line_comment, sym_block_comment, - [2277] = 6, + [2387] = 7, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(245), 1, + ACTIONS(269), 1, anon_sym_DQUOTE, - ACTIONS(263), 1, + ACTIONS(279), 1, sym__identifier, - STATE(109), 1, + STATE(14), 1, sym_identifier, + STATE(128), 1, + sym_table_reference, STATE(90), 2, sym_line_comment, sym_block_comment, - [2297] = 4, + [2410] = 6, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, + ACTIONS(289), 1, + anon_sym_COMMA, + ACTIONS(291), 1, + anon_sym_RPAREN, + STATE(103), 1, + aux_sym_column_definitions_repeat1, STATE(91), 2, sym_line_comment, sym_block_comment, - ACTIONS(294), 3, - ts_builtin_sym_end, - anon_sym_SEMI, - sym_keyword_create, - [2313] = 6, + [2430] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(290), 1, - anon_sym_COMMA, - ACTIONS(296), 1, - anon_sym_RPAREN, - STATE(89), 1, - aux_sym_referencial_action_repeat1, STATE(92), 2, sym_line_comment, sym_block_comment, - [2333] = 6, + ACTIONS(293), 3, + sym_keyword_full, + sym_keyword_partial, + sym_keyword_simple, + [2446] = 5, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(249), 1, - sym_keyword_on, - STATE(114), 1, - sym__foreign_key_on_update, - STATE(115), 1, - sym__foreign_key_on_delete, - STATE(93), 2, + ACTIONS(295), 1, + anon_sym_COMMA, + ACTIONS(298), 1, + anon_sym_RPAREN, + STATE(93), 3, sym_line_comment, sym_block_comment, - [2353] = 6, + aux_sym_referencial_action_repeat1, + [2464] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(245), 1, - anon_sym_DQUOTE, - ACTIONS(263), 1, - sym__identifier, - STATE(66), 1, - sym_identifier, STATE(94), 2, sym_line_comment, sym_block_comment, - [2373] = 6, + ACTIONS(300), 3, + ts_builtin_sym_end, + anon_sym_SEMI, + sym_keyword_create, + [2480] = 6, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(245), 1, - anon_sym_DQUOTE, - ACTIONS(263), 1, - sym__identifier, - STATE(92), 1, - sym_identifier, + ACTIONS(302), 1, + anon_sym_COMMA, + ACTIONS(304), 1, + anon_sym_RPAREN, + STATE(93), 1, + aux_sym_referencial_action_repeat1, STATE(95), 2, sym_line_comment, sym_block_comment, - [2393] = 6, + [2500] = 6, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(249), 1, - sym_keyword_on, - STATE(123), 1, - sym__foreign_key_on_update, - STATE(124), 1, - sym__foreign_key_on_delete, + ACTIONS(269), 1, + anon_sym_DQUOTE, + ACTIONS(279), 1, + sym__identifier, + STATE(110), 1, + sym_identifier, STATE(96), 2, sym_line_comment, sym_block_comment, - [2413] = 4, + [2520] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, @@ -5344,1304 +5437,1314 @@ static const uint16_t ts_small_parse_table[] = { STATE(97), 2, sym_line_comment, sym_block_comment, - ACTIONS(298), 3, + ACTIONS(306), 3, ts_builtin_sym_end, anon_sym_SEMI, sym_keyword_create, - [2429] = 6, + [2536] = 6, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(249), 1, - sym_keyword_on, - STATE(106), 1, - sym__foreign_key_on_update, - STATE(129), 1, - sym__foreign_key_on_delete, + ACTIONS(302), 1, + anon_sym_COMMA, + ACTIONS(308), 1, + anon_sym_RPAREN, + STATE(95), 1, + aux_sym_referencial_action_repeat1, STATE(98), 2, sym_line_comment, sym_block_comment, - [2449] = 6, + [2556] = 6, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(245), 1, + ACTIONS(269), 1, anon_sym_DQUOTE, - ACTIONS(263), 1, + ACTIONS(279), 1, sym__identifier, - STATE(152), 1, + STATE(98), 1, sym_identifier, STATE(99), 2, sym_line_comment, sym_block_comment, - [2469] = 6, + [2576] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(245), 1, - anon_sym_DQUOTE, - ACTIONS(263), 1, - sym__identifier, - STATE(156), 1, - sym_identifier, STATE(100), 2, sym_line_comment, sym_block_comment, - [2489] = 6, + ACTIONS(310), 3, + ts_builtin_sym_end, + anon_sym_SEMI, + sym_keyword_create, + [2592] = 6, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(245), 1, + ACTIONS(269), 1, anon_sym_DQUOTE, - ACTIONS(263), 1, + ACTIONS(279), 1, sym__identifier, - STATE(104), 1, + STATE(152), 1, sym_identifier, STATE(101), 2, sym_line_comment, sym_block_comment, - [2509] = 4, + [2612] = 6, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, + ACTIONS(269), 1, + anon_sym_DQUOTE, + ACTIONS(279), 1, + sym__identifier, + STATE(19), 1, + sym_identifier, STATE(102), 2, sym_line_comment, sym_block_comment, - ACTIONS(300), 3, - sym_keyword_full, - sym_keyword_partial, - sym_keyword_simple, - [2525] = 6, + [2632] = 5, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(249), 1, - sym_keyword_on, - STATE(132), 1, - sym__foreign_key_on_delete, - STATE(133), 1, - sym__foreign_key_on_update, - STATE(103), 2, - sym_line_comment, - sym_block_comment, - [2545] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - STATE(104), 2, - sym_line_comment, - sym_block_comment, - ACTIONS(302), 3, - anon_sym_LPAREN, - sym_keyword_on, - sym_keyword_match, - [2561] = 5, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(304), 1, + ACTIONS(312), 1, anon_sym_COMMA, - ACTIONS(307), 1, + ACTIONS(315), 1, anon_sym_RPAREN, - STATE(105), 3, + STATE(103), 3, sym_line_comment, sym_block_comment, aux_sym_column_definitions_repeat1, - [2579] = 5, + [2650] = 6, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(309), 1, - sym_keyword_on, - STATE(59), 1, - sym__foreign_key_on_delete, - STATE(106), 2, + ACTIONS(269), 1, + anon_sym_DQUOTE, + ACTIONS(279), 1, + sym__identifier, + STATE(156), 1, + sym_identifier, + STATE(104), 2, sym_line_comment, sym_block_comment, - [2596] = 5, + [2670] = 6, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(311), 1, - sym_keyword_on, - STATE(53), 1, - sym__foreign_key_on_update, - STATE(107), 2, + ACTIONS(269), 1, + anon_sym_DQUOTE, + ACTIONS(279), 1, + sym__identifier, + STATE(79), 1, + sym_identifier, + STATE(105), 2, sym_line_comment, sym_block_comment, - [2613] = 5, + [2690] = 6, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(313), 1, - aux_sym__keyword_time_zone_token1, - STATE(31), 1, - sym__keyword_time_zone, - STATE(108), 2, - sym_line_comment, - sym_block_comment, - [2630] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(286), 2, - anon_sym_COMMA, - anon_sym_RPAREN, - STATE(109), 2, - sym_line_comment, - sym_block_comment, - [2645] = 5, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(313), 1, - aux_sym__keyword_time_zone_token1, - STATE(63), 1, - sym__keyword_time_zone, - STATE(110), 2, - sym_line_comment, - sym_block_comment, - [2662] = 5, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(315), 1, + ACTIONS(289), 1, anon_sym_COMMA, ACTIONS(317), 1, anon_sym_RPAREN, - STATE(111), 2, + STATE(91), 1, + aux_sym_column_definitions_repeat1, + STATE(106), 2, sym_line_comment, sym_block_comment, - [2679] = 5, + [2710] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(319), 2, + anon_sym_DQUOTE, + sym__identifier, + STATE(107), 2, + sym_line_comment, + sym_block_comment, + [2725] = 5, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(319), 1, - anon_sym_COMMA, ACTIONS(321), 1, - anon_sym_RPAREN, - STATE(112), 2, - sym_line_comment, - sym_block_comment, - [2696] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(307), 2, - anon_sym_COMMA, - anon_sym_RPAREN, - STATE(113), 2, - sym_line_comment, - sym_block_comment, - [2711] = 5, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(309), 1, sym_keyword_on, - STATE(44), 1, - sym__foreign_key_on_delete, - STATE(114), 2, - sym_line_comment, - sym_block_comment, - [2728] = 5, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(311), 1, - sym_keyword_on, - STATE(44), 1, + STATE(53), 1, sym__foreign_key_on_update, - STATE(115), 2, + STATE(108), 2, sym_line_comment, sym_block_comment, - [2745] = 5, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(309), 1, - sym_keyword_on, - STATE(35), 1, - sym__foreign_key_on_delete, - STATE(116), 2, - sym_line_comment, - sym_block_comment, - [2762] = 5, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(311), 1, - sym_keyword_on, - STATE(35), 1, - sym__foreign_key_on_update, - STATE(117), 2, - sym_line_comment, - sym_block_comment, - [2779] = 5, + [2742] = 5, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(323), 1, - sym_keyword_not, + anon_sym_COMMA, ACTIONS(325), 1, - sym_keyword_distinct, - STATE(118), 2, + anon_sym_RPAREN, + STATE(109), 2, sym_line_comment, sym_block_comment, - [2796] = 5, + [2759] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(298), 2, + anon_sym_COMMA, + anon_sym_RPAREN, + STATE(110), 2, + sym_line_comment, + sym_block_comment, + [2774] = 5, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(327), 1, - sym_keyword_delete, + sym_keyword_not, ACTIONS(329), 1, - sym_keyword_update, - STATE(119), 2, + sym_keyword_distinct, + STATE(111), 2, sym_line_comment, sym_block_comment, - [2813] = 5, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(311), 1, - sym_keyword_on, - STATE(34), 1, - sym__foreign_key_on_update, - STATE(120), 2, - sym_line_comment, - sym_block_comment, - [2830] = 5, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(309), 1, - sym_keyword_on, - STATE(34), 1, - sym__foreign_key_on_delete, - STATE(121), 2, - sym_line_comment, - sym_block_comment, - [2847] = 5, + [2791] = 5, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(331), 1, - anon_sym_LPAREN, - STATE(176), 1, - sym_column_definitions, - STATE(122), 2, + anon_sym_COMMA, + ACTIONS(333), 1, + anon_sym_RPAREN, + STATE(112), 2, sym_line_comment, sym_block_comment, - [2864] = 5, + [2808] = 5, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(309), 1, + ACTIONS(335), 1, + aux_sym__keyword_time_zone_token1, + STATE(46), 1, + sym__keyword_time_zone, + STATE(113), 2, + sym_line_comment, + sym_block_comment, + [2825] = 5, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(337), 1, sym_keyword_on, - STATE(54), 1, + STATE(59), 1, + sym__foreign_key_on_delete, + STATE(114), 2, + sym_line_comment, + sym_block_comment, + [2842] = 5, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(321), 1, + sym_keyword_on, + STATE(59), 1, + sym__foreign_key_on_update, + STATE(115), 2, + sym_line_comment, + sym_block_comment, + [2859] = 5, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(335), 1, + aux_sym__keyword_time_zone_token1, + STATE(47), 1, + sym__keyword_time_zone, + STATE(116), 2, + sym_line_comment, + sym_block_comment, + [2876] = 5, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(339), 1, + sym_keyword_delete, + ACTIONS(341), 1, + sym_keyword_update, + STATE(117), 2, + sym_line_comment, + sym_block_comment, + [2893] = 5, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(321), 1, + sym_keyword_on, + STATE(44), 1, + sym__foreign_key_on_update, + STATE(118), 2, + sym_line_comment, + sym_block_comment, + [2910] = 5, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(337), 1, + sym_keyword_on, + STATE(44), 1, + sym__foreign_key_on_delete, + STATE(119), 2, + sym_line_comment, + sym_block_comment, + [2927] = 5, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(337), 1, + sym_keyword_on, + STATE(63), 1, + sym__foreign_key_on_delete, + STATE(120), 2, + sym_line_comment, + sym_block_comment, + [2944] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(315), 2, + anon_sym_COMMA, + anon_sym_RPAREN, + STATE(121), 2, + sym_line_comment, + sym_block_comment, + [2959] = 5, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(321), 1, + sym_keyword_on, + STATE(63), 1, + sym__foreign_key_on_update, + STATE(122), 2, + sym_line_comment, + sym_block_comment, + [2976] = 5, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(337), 1, + sym_keyword_on, + STATE(58), 1, sym__foreign_key_on_delete, STATE(123), 2, sym_line_comment, sym_block_comment, - [2881] = 5, + [2993] = 5, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(311), 1, + ACTIONS(321), 1, sym_keyword_on, - STATE(54), 1, + STATE(58), 1, sym__foreign_key_on_update, STATE(124), 2, sym_line_comment, sym_block_comment, - [2898] = 5, + [3010] = 5, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(309), 1, - sym_keyword_on, - STATE(60), 1, - sym__foreign_key_on_delete, + ACTIONS(343), 1, + sym_keyword_not, + ACTIONS(345), 1, + sym_keyword_distinct, STATE(125), 2, sym_line_comment, sym_block_comment, - [2915] = 5, + [3027] = 5, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(333), 1, - sym_keyword_not, - ACTIONS(335), 1, - sym_keyword_distinct, + ACTIONS(337), 1, + sym_keyword_on, + STATE(56), 1, + sym__foreign_key_on_delete, STATE(126), 2, sym_line_comment, sym_block_comment, - [2932] = 5, + [3044] = 5, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(311), 1, + ACTIONS(321), 1, sym_keyword_on, - STATE(60), 1, + STATE(56), 1, sym__foreign_key_on_update, STATE(127), 2, sym_line_comment, sym_block_comment, - [2949] = 4, + [3061] = 5, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(337), 2, - anon_sym_DQUOTE, - sym__identifier, + ACTIONS(347), 1, + anon_sym_LPAREN, + STATE(163), 1, + sym_column_definitions, STATE(128), 2, sym_line_comment, sym_block_comment, - [2964] = 5, + [3078] = 5, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(311), 1, + ACTIONS(337), 1, sym_keyword_on, - STATE(59), 1, - sym__foreign_key_on_update, + STATE(49), 1, + sym__foreign_key_on_delete, STATE(129), 2, sym_line_comment, sym_block_comment, - [2981] = 5, + [3095] = 5, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(331), 1, - anon_sym_LPAREN, - STATE(162), 1, - sym_column_definitions, + ACTIONS(321), 1, + sym_keyword_on, + STATE(49), 1, + sym__foreign_key_on_update, STATE(130), 2, sym_line_comment, sym_block_comment, - [2998] = 4, + [3112] = 5, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(339), 2, - sym_keyword_null, - sym_keyword_default, + ACTIONS(347), 1, + anon_sym_LPAREN, + STATE(143), 1, + sym_column_definitions, STATE(131), 2, sym_line_comment, sym_block_comment, - [3013] = 5, + [3129] = 5, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(311), 1, + ACTIONS(321), 1, sym_keyword_on, - STATE(52), 1, + STATE(69), 1, sym__foreign_key_on_update, STATE(132), 2, sym_line_comment, sym_block_comment, - [3030] = 5, + [3146] = 5, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(309), 1, + ACTIONS(337), 1, sym_keyword_on, - STATE(52), 1, + STATE(69), 1, sym__foreign_key_on_delete, STATE(133), 2, sym_line_comment, sym_block_comment, - [3047] = 5, + [3163] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(331), 1, - anon_sym_LPAREN, - STATE(138), 1, - sym_column_definitions, + ACTIONS(349), 2, + sym_keyword_null, + sym_keyword_default, STATE(134), 2, sym_line_comment, sym_block_comment, - [3064] = 5, + [3178] = 5, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(309), 1, + ACTIONS(337), 1, sym_keyword_on, STATE(53), 1, sym__foreign_key_on_delete, STATE(135), 2, sym_line_comment, sym_block_comment, - [3081] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(341), 1, - anon_sym_RPAREN, - STATE(136), 2, - sym_line_comment, - sym_block_comment, - [3095] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(343), 1, - anon_sym_SLASH, - STATE(137), 2, - sym_line_comment, - sym_block_comment, - [3109] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(345), 1, - anon_sym_SEMI, - STATE(138), 2, - sym_line_comment, - sym_block_comment, - [3123] = 4, + [3195] = 5, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(347), 1, - anon_sym_DQUOTE, - STATE(139), 2, + anon_sym_LPAREN, + STATE(154), 1, + sym_column_definitions, + STATE(136), 2, sym_line_comment, sym_block_comment, - [3137] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(349), 1, - sym_keyword_distinct, - STATE(140), 2, - sym_line_comment, - sym_block_comment, - [3151] = 4, + [3212] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(351), 1, - sym_keyword_exists, - STATE(141), 2, + aux_sym_double_token2, + STATE(137), 2, sym_line_comment, sym_block_comment, - [3165] = 4, + [3226] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(353), 1, - sym__number, + sym_keyword_table, + STATE(138), 2, + sym_line_comment, + sym_block_comment, + [3240] = 4, + ACTIONS(355), 1, + anon_sym_DASH_DASH, + ACTIONS(357), 1, + anon_sym_SLASH_STAR, + ACTIONS(359), 1, + aux_sym_literal_string_token1, + STATE(139), 2, + sym_line_comment, + sym_block_comment, + [3254] = 4, + ACTIONS(355), 1, + anon_sym_DASH_DASH, + ACTIONS(357), 1, + anon_sym_SLASH_STAR, + ACTIONS(361), 1, + aux_sym_line_comment_token1, + STATE(140), 2, + sym_line_comment, + sym_block_comment, + [3268] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(363), 1, + sym_keyword_distinct, + STATE(141), 2, + sym_line_comment, + sym_block_comment, + [3282] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(365), 1, + sym_number, STATE(142), 2, sym_line_comment, sym_block_comment, - [3179] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(355), 1, - anon_sym_RPAREN, - STATE(143), 2, - sym_line_comment, - sym_block_comment, - [3193] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(357), 1, - sym__number, - STATE(144), 2, - sym_line_comment, - sym_block_comment, - [3207] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(359), 1, - sym_keyword_action, - STATE(145), 2, - sym_line_comment, - sym_block_comment, - [3221] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(329), 1, - sym_keyword_update, - STATE(146), 2, - sym_line_comment, - sym_block_comment, - [3235] = 4, - ACTIONS(361), 1, - anon_sym_DASH_DASH, - ACTIONS(363), 1, - anon_sym_SLASH_STAR, - ACTIONS(365), 1, - aux_sym_identifier_token1, - STATE(147), 2, - sym_line_comment, - sym_block_comment, - [3249] = 4, + [3296] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(367), 1, - sym_keyword_not, - STATE(148), 2, + anon_sym_SEMI, + STATE(143), 2, sym_line_comment, sym_block_comment, - [3263] = 4, + [3310] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(369), 1, - aux_sym__keyword_time_zone_token2, - STATE(149), 2, + anon_sym_DQUOTE, + STATE(144), 2, sym_line_comment, sym_block_comment, - [3277] = 4, + [3324] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(371), 1, - sym__number, - STATE(150), 2, + sym_keyword_action, + STATE(145), 2, sym_line_comment, sym_block_comment, - [3291] = 4, + [3338] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(373), 1, - sym_keyword_table, - STATE(151), 2, + sym_number, + STATE(146), 2, sym_line_comment, sym_block_comment, - [3305] = 4, + [3352] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(375), 1, - anon_sym_RPAREN, - STATE(152), 2, + sym_keyword_exists, + STATE(147), 2, sym_line_comment, sym_block_comment, - [3319] = 4, + [3366] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(377), 1, - sym_keyword_on, - STATE(153), 2, + ACTIONS(341), 1, + sym_keyword_update, + STATE(148), 2, sym_line_comment, sym_block_comment, - [3333] = 4, + [3380] = 4, + ACTIONS(355), 1, + anon_sym_DASH_DASH, + ACTIONS(357), 1, + anon_sym_SLASH_STAR, + ACTIONS(377), 1, + aux_sym_identifier_token1, + STATE(149), 2, + sym_line_comment, + sym_block_comment, + [3394] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(379), 1, - sym__number, - STATE(154), 2, + sym_keyword_not, + STATE(150), 2, sym_line_comment, sym_block_comment, - [3347] = 4, + [3408] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(381), 1, - sym__number, - STATE(155), 2, + sym_keyword_null, + STATE(151), 2, sym_line_comment, sym_block_comment, - [3361] = 4, + [3422] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(383), 1, anon_sym_RPAREN, - STATE(156), 2, + STATE(152), 2, sym_line_comment, sym_block_comment, - [3375] = 4, + [3436] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(385), 1, anon_sym_SEMI, - STATE(157), 2, + STATE(153), 2, sym_line_comment, sym_block_comment, - [3389] = 4, + [3450] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(387), 1, - sym_keyword_table, - STATE(158), 2, + anon_sym_SEMI, + STATE(154), 2, sym_line_comment, sym_block_comment, - [3403] = 4, + [3464] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(327), 1, - sym_keyword_delete, - STATE(159), 2, - sym_line_comment, - sym_block_comment, - [3417] = 4, - ACTIONS(361), 1, - anon_sym_DASH_DASH, - ACTIONS(363), 1, - anon_sym_SLASH_STAR, ACTIONS(389), 1, - aux_sym_block_comment_token1, - STATE(160), 2, + sym_number, + STATE(155), 2, sym_line_comment, sym_block_comment, - [3431] = 4, + [3478] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(391), 1, - anon_sym_SEMI, - STATE(161), 2, + anon_sym_RPAREN, + STATE(156), 2, sym_line_comment, sym_block_comment, - [3445] = 4, + [3492] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(393), 1, anon_sym_SEMI, - STATE(162), 2, + STATE(157), 2, sym_line_comment, sym_block_comment, - [3459] = 4, + [3506] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(339), 1, + sym_keyword_delete, + STATE(158), 2, + sym_line_comment, + sym_block_comment, + [3520] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(395), 1, - anon_sym_RPAREN, - STATE(163), 2, + sym_keyword_table, + STATE(159), 2, sym_line_comment, sym_block_comment, - [3473] = 4, + [3534] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(397), 1, - anon_sym_SEMI, - STATE(164), 2, + anon_sym_SLASH, + STATE(160), 2, sym_line_comment, sym_block_comment, - [3487] = 4, - ACTIONS(3), 1, + [3548] = 4, + ACTIONS(355), 1, anon_sym_DASH_DASH, - ACTIONS(5), 1, + ACTIONS(357), 1, anon_sym_SLASH_STAR, ACTIONS(399), 1, - sym_keyword_null, - STATE(165), 2, + aux_sym_block_comment_token1, + STATE(161), 2, sym_line_comment, sym_block_comment, - [3501] = 4, + [3562] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(401), 1, - anon_sym_RPAREN, - STATE(166), 2, + sym_keyword_key, + STATE(162), 2, sym_line_comment, sym_block_comment, - [3515] = 4, + [3576] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(403), 1, anon_sym_SEMI, - STATE(167), 2, + STATE(163), 2, sym_line_comment, sym_block_comment, - [3529] = 4, + [3590] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(405), 1, - sym_keyword_distinct, - STATE(168), 2, + anon_sym_SEMI, + STATE(164), 2, sym_line_comment, sym_block_comment, - [3543] = 4, + [3604] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(407), 1, - anon_sym_SEMI, - STATE(169), 2, + anon_sym_RPAREN, + STATE(165), 2, sym_line_comment, sym_block_comment, - [3557] = 4, + [3618] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(409), 1, - sym_keyword_key, - STATE(170), 2, + anon_sym_SEMI, + STATE(166), 2, sym_line_comment, sym_block_comment, - [3571] = 4, + [3632] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(411), 1, - anon_sym_SQUOTE, - STATE(171), 2, + anon_sym_RPAREN, + STATE(167), 2, sym_line_comment, sym_block_comment, - [3585] = 4, + [3646] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(413), 1, - aux_sym_double_token2, - STATE(172), 2, + anon_sym_RPAREN, + STATE(168), 2, sym_line_comment, sym_block_comment, - [3599] = 4, - ACTIONS(361), 1, + [3660] = 4, + ACTIONS(3), 1, anon_sym_DASH_DASH, - ACTIONS(363), 1, + ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(415), 1, - aux_sym__literal_string_token1, - STATE(173), 2, + anon_sym_SEMI, + STATE(169), 2, sym_line_comment, sym_block_comment, - [3613] = 4, - ACTIONS(361), 1, + [3674] = 4, + ACTIONS(3), 1, anon_sym_DASH_DASH, - ACTIONS(363), 1, + ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(417), 1, - aux_sym_line_comment_token1, - STATE(174), 2, + anon_sym_RPAREN, + STATE(170), 2, sym_line_comment, sym_block_comment, - [3627] = 4, + [3688] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(419), 1, - ts_builtin_sym_end, - STATE(175), 2, + anon_sym_SEMI, + STATE(171), 2, sym_line_comment, sym_block_comment, - [3641] = 4, + [3702] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(421), 1, - anon_sym_SEMI, - STATE(176), 2, + sym_keyword_distinct, + STATE(172), 2, sym_line_comment, sym_block_comment, - [3655] = 4, + [3716] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(423), 1, - anon_sym_SEMI, - STATE(177), 2, + sym_number, + STATE(173), 2, sym_line_comment, sym_block_comment, - [3669] = 4, + [3730] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(425), 1, - sym__number, + aux_sym__keyword_time_zone_token2, + STATE(174), 2, + sym_line_comment, + sym_block_comment, + [3744] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(427), 1, + ts_builtin_sym_end, + STATE(175), 2, + sym_line_comment, + sym_block_comment, + [3758] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(429), 1, + anon_sym_SQUOTE, + STATE(176), 2, + sym_line_comment, + sym_block_comment, + [3772] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(431), 1, + sym_number, + STATE(177), 2, + sym_line_comment, + sym_block_comment, + [3786] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(433), 1, + sym_number, STATE(178), 2, sym_line_comment, sym_block_comment, - [3683] = 1, - ACTIONS(427), 1, + [3800] = 1, + ACTIONS(435), 1, ts_builtin_sym_end, - [3687] = 1, - ACTIONS(429), 1, + [3804] = 1, + ACTIONS(437), 1, ts_builtin_sym_end, }; static const uint32_t ts_small_parse_table_map[] = { [SMALL_STATE(2)] = 0, [SMALL_STATE(3)] = 95, - [SMALL_STATE(4)] = 146, - [SMALL_STATE(5)] = 197, - [SMALL_STATE(6)] = 231, - [SMALL_STATE(7)] = 277, - [SMALL_STATE(8)] = 321, + [SMALL_STATE(4)] = 147, + [SMALL_STATE(5)] = 199, + [SMALL_STATE(6)] = 239, + [SMALL_STATE(7)] = 279, + [SMALL_STATE(8)] = 316, [SMALL_STATE(9)] = 353, [SMALL_STATE(10)] = 399, - [SMALL_STATE(11)] = 425, - [SMALL_STATE(12)] = 450, - [SMALL_STATE(13)] = 473, - [SMALL_STATE(14)] = 496, - [SMALL_STATE(15)] = 519, - [SMALL_STATE(16)] = 542, - [SMALL_STATE(17)] = 567, - [SMALL_STATE(18)] = 590, - [SMALL_STATE(19)] = 615, - [SMALL_STATE(20)] = 638, - [SMALL_STATE(21)] = 661, - [SMALL_STATE(22)] = 684, - [SMALL_STATE(23)] = 709, - [SMALL_STATE(24)] = 736, - [SMALL_STATE(25)] = 763, - [SMALL_STATE(26)] = 786, - [SMALL_STATE(27)] = 808, - [SMALL_STATE(28)] = 830, - [SMALL_STATE(29)] = 852, - [SMALL_STATE(30)] = 874, - [SMALL_STATE(31)] = 896, - [SMALL_STATE(32)] = 918, - [SMALL_STATE(33)] = 940, - [SMALL_STATE(34)] = 962, - [SMALL_STATE(35)] = 984, - [SMALL_STATE(36)] = 1006, - [SMALL_STATE(37)] = 1028, - [SMALL_STATE(38)] = 1050, - [SMALL_STATE(39)] = 1072, - [SMALL_STATE(40)] = 1094, - [SMALL_STATE(41)] = 1116, - [SMALL_STATE(42)] = 1138, - [SMALL_STATE(43)] = 1160, - [SMALL_STATE(44)] = 1182, - [SMALL_STATE(45)] = 1204, - [SMALL_STATE(46)] = 1226, - [SMALL_STATE(47)] = 1248, - [SMALL_STATE(48)] = 1270, - [SMALL_STATE(49)] = 1292, - [SMALL_STATE(50)] = 1314, - [SMALL_STATE(51)] = 1336, - [SMALL_STATE(52)] = 1358, - [SMALL_STATE(53)] = 1380, - [SMALL_STATE(54)] = 1402, - [SMALL_STATE(55)] = 1424, - [SMALL_STATE(56)] = 1446, - [SMALL_STATE(57)] = 1468, - [SMALL_STATE(58)] = 1490, - [SMALL_STATE(59)] = 1512, - [SMALL_STATE(60)] = 1534, - [SMALL_STATE(61)] = 1556, - [SMALL_STATE(62)] = 1578, - [SMALL_STATE(63)] = 1600, - [SMALL_STATE(64)] = 1622, - [SMALL_STATE(65)] = 1657, - [SMALL_STATE(66)] = 1690, - [SMALL_STATE(67)] = 1723, - [SMALL_STATE(68)] = 1752, - [SMALL_STATE(69)] = 1781, - [SMALL_STATE(70)] = 1810, - [SMALL_STATE(71)] = 1839, - [SMALL_STATE(72)] = 1868, - [SMALL_STATE(73)] = 1897, - [SMALL_STATE(74)] = 1923, - [SMALL_STATE(75)] = 1949, - [SMALL_STATE(76)] = 1975, - [SMALL_STATE(77)] = 2001, - [SMALL_STATE(78)] = 2025, - [SMALL_STATE(79)] = 2049, - [SMALL_STATE(80)] = 2072, - [SMALL_STATE(81)] = 2095, - [SMALL_STATE(82)] = 2118, - [SMALL_STATE(83)] = 2137, - [SMALL_STATE(84)] = 2160, - [SMALL_STATE(85)] = 2183, - [SMALL_STATE(86)] = 2203, - [SMALL_STATE(87)] = 2223, - [SMALL_STATE(88)] = 2241, - [SMALL_STATE(89)] = 2257, - [SMALL_STATE(90)] = 2277, - [SMALL_STATE(91)] = 2297, - [SMALL_STATE(92)] = 2313, - [SMALL_STATE(93)] = 2333, - [SMALL_STATE(94)] = 2353, - [SMALL_STATE(95)] = 2373, - [SMALL_STATE(96)] = 2393, - [SMALL_STATE(97)] = 2413, - [SMALL_STATE(98)] = 2429, - [SMALL_STATE(99)] = 2449, - [SMALL_STATE(100)] = 2469, - [SMALL_STATE(101)] = 2489, - [SMALL_STATE(102)] = 2509, - [SMALL_STATE(103)] = 2525, - [SMALL_STATE(104)] = 2545, - [SMALL_STATE(105)] = 2561, - [SMALL_STATE(106)] = 2579, - [SMALL_STATE(107)] = 2596, - [SMALL_STATE(108)] = 2613, - [SMALL_STATE(109)] = 2630, - [SMALL_STATE(110)] = 2645, - [SMALL_STATE(111)] = 2662, - [SMALL_STATE(112)] = 2679, - [SMALL_STATE(113)] = 2696, - [SMALL_STATE(114)] = 2711, - [SMALL_STATE(115)] = 2728, - [SMALL_STATE(116)] = 2745, - [SMALL_STATE(117)] = 2762, - [SMALL_STATE(118)] = 2779, - [SMALL_STATE(119)] = 2796, - [SMALL_STATE(120)] = 2813, - [SMALL_STATE(121)] = 2830, - [SMALL_STATE(122)] = 2847, - [SMALL_STATE(123)] = 2864, - [SMALL_STATE(124)] = 2881, - [SMALL_STATE(125)] = 2898, - [SMALL_STATE(126)] = 2915, - [SMALL_STATE(127)] = 2932, - [SMALL_STATE(128)] = 2949, - [SMALL_STATE(129)] = 2964, - [SMALL_STATE(130)] = 2981, - [SMALL_STATE(131)] = 2998, - [SMALL_STATE(132)] = 3013, - [SMALL_STATE(133)] = 3030, - [SMALL_STATE(134)] = 3047, - [SMALL_STATE(135)] = 3064, - [SMALL_STATE(136)] = 3081, - [SMALL_STATE(137)] = 3095, - [SMALL_STATE(138)] = 3109, - [SMALL_STATE(139)] = 3123, - [SMALL_STATE(140)] = 3137, - [SMALL_STATE(141)] = 3151, - [SMALL_STATE(142)] = 3165, - [SMALL_STATE(143)] = 3179, - [SMALL_STATE(144)] = 3193, - [SMALL_STATE(145)] = 3207, - [SMALL_STATE(146)] = 3221, - [SMALL_STATE(147)] = 3235, - [SMALL_STATE(148)] = 3249, - [SMALL_STATE(149)] = 3263, - [SMALL_STATE(150)] = 3277, - [SMALL_STATE(151)] = 3291, - [SMALL_STATE(152)] = 3305, - [SMALL_STATE(153)] = 3319, - [SMALL_STATE(154)] = 3333, - [SMALL_STATE(155)] = 3347, - [SMALL_STATE(156)] = 3361, - [SMALL_STATE(157)] = 3375, - [SMALL_STATE(158)] = 3389, - [SMALL_STATE(159)] = 3403, - [SMALL_STATE(160)] = 3417, - [SMALL_STATE(161)] = 3431, - [SMALL_STATE(162)] = 3445, - [SMALL_STATE(163)] = 3459, - [SMALL_STATE(164)] = 3473, - [SMALL_STATE(165)] = 3487, - [SMALL_STATE(166)] = 3501, - [SMALL_STATE(167)] = 3515, - [SMALL_STATE(168)] = 3529, - [SMALL_STATE(169)] = 3543, - [SMALL_STATE(170)] = 3557, - [SMALL_STATE(171)] = 3571, - [SMALL_STATE(172)] = 3585, - [SMALL_STATE(173)] = 3599, - [SMALL_STATE(174)] = 3613, - [SMALL_STATE(175)] = 3627, - [SMALL_STATE(176)] = 3641, - [SMALL_STATE(177)] = 3655, - [SMALL_STATE(178)] = 3669, - [SMALL_STATE(179)] = 3683, - [SMALL_STATE(180)] = 3687, + [SMALL_STATE(11)] = 445, + [SMALL_STATE(12)] = 479, + [SMALL_STATE(13)] = 511, + [SMALL_STATE(14)] = 555, + [SMALL_STATE(15)] = 583, + [SMALL_STATE(16)] = 614, + [SMALL_STATE(17)] = 645, + [SMALL_STATE(18)] = 676, + [SMALL_STATE(19)] = 707, + [SMALL_STATE(20)] = 732, + [SMALL_STATE(21)] = 758, + [SMALL_STATE(22)] = 781, + [SMALL_STATE(23)] = 804, + [SMALL_STATE(24)] = 827, + [SMALL_STATE(25)] = 850, + [SMALL_STATE(26)] = 877, + [SMALL_STATE(27)] = 904, + [SMALL_STATE(28)] = 927, + [SMALL_STATE(29)] = 952, + [SMALL_STATE(30)] = 975, + [SMALL_STATE(31)] = 1000, + [SMALL_STATE(32)] = 1023, + [SMALL_STATE(33)] = 1046, + [SMALL_STATE(34)] = 1071, + [SMALL_STATE(35)] = 1094, + [SMALL_STATE(36)] = 1119, + [SMALL_STATE(37)] = 1142, + [SMALL_STATE(38)] = 1164, + [SMALL_STATE(39)] = 1186, + [SMALL_STATE(40)] = 1208, + [SMALL_STATE(41)] = 1230, + [SMALL_STATE(42)] = 1252, + [SMALL_STATE(43)] = 1274, + [SMALL_STATE(44)] = 1296, + [SMALL_STATE(45)] = 1318, + [SMALL_STATE(46)] = 1340, + [SMALL_STATE(47)] = 1362, + [SMALL_STATE(48)] = 1384, + [SMALL_STATE(49)] = 1406, + [SMALL_STATE(50)] = 1428, + [SMALL_STATE(51)] = 1450, + [SMALL_STATE(52)] = 1472, + [SMALL_STATE(53)] = 1494, + [SMALL_STATE(54)] = 1516, + [SMALL_STATE(55)] = 1538, + [SMALL_STATE(56)] = 1560, + [SMALL_STATE(57)] = 1582, + [SMALL_STATE(58)] = 1604, + [SMALL_STATE(59)] = 1626, + [SMALL_STATE(60)] = 1648, + [SMALL_STATE(61)] = 1670, + [SMALL_STATE(62)] = 1692, + [SMALL_STATE(63)] = 1714, + [SMALL_STATE(64)] = 1736, + [SMALL_STATE(65)] = 1758, + [SMALL_STATE(66)] = 1780, + [SMALL_STATE(67)] = 1802, + [SMALL_STATE(68)] = 1824, + [SMALL_STATE(69)] = 1846, + [SMALL_STATE(70)] = 1868, + [SMALL_STATE(71)] = 1890, + [SMALL_STATE(72)] = 1912, + [SMALL_STATE(73)] = 1934, + [SMALL_STATE(74)] = 1956, + [SMALL_STATE(75)] = 1978, + [SMALL_STATE(76)] = 2007, + [SMALL_STATE(77)] = 2036, + [SMALL_STATE(78)] = 2069, + [SMALL_STATE(79)] = 2104, + [SMALL_STATE(80)] = 2137, + [SMALL_STATE(81)] = 2166, + [SMALL_STATE(82)] = 2195, + [SMALL_STATE(83)] = 2221, + [SMALL_STATE(84)] = 2247, + [SMALL_STATE(85)] = 2271, + [SMALL_STATE(86)] = 2295, + [SMALL_STATE(87)] = 2318, + [SMALL_STATE(88)] = 2341, + [SMALL_STATE(89)] = 2364, + [SMALL_STATE(90)] = 2387, + [SMALL_STATE(91)] = 2410, + [SMALL_STATE(92)] = 2430, + [SMALL_STATE(93)] = 2446, + [SMALL_STATE(94)] = 2464, + [SMALL_STATE(95)] = 2480, + [SMALL_STATE(96)] = 2500, + [SMALL_STATE(97)] = 2520, + [SMALL_STATE(98)] = 2536, + [SMALL_STATE(99)] = 2556, + [SMALL_STATE(100)] = 2576, + [SMALL_STATE(101)] = 2592, + [SMALL_STATE(102)] = 2612, + [SMALL_STATE(103)] = 2632, + [SMALL_STATE(104)] = 2650, + [SMALL_STATE(105)] = 2670, + [SMALL_STATE(106)] = 2690, + [SMALL_STATE(107)] = 2710, + [SMALL_STATE(108)] = 2725, + [SMALL_STATE(109)] = 2742, + [SMALL_STATE(110)] = 2759, + [SMALL_STATE(111)] = 2774, + [SMALL_STATE(112)] = 2791, + [SMALL_STATE(113)] = 2808, + [SMALL_STATE(114)] = 2825, + [SMALL_STATE(115)] = 2842, + [SMALL_STATE(116)] = 2859, + [SMALL_STATE(117)] = 2876, + [SMALL_STATE(118)] = 2893, + [SMALL_STATE(119)] = 2910, + [SMALL_STATE(120)] = 2927, + [SMALL_STATE(121)] = 2944, + [SMALL_STATE(122)] = 2959, + [SMALL_STATE(123)] = 2976, + [SMALL_STATE(124)] = 2993, + [SMALL_STATE(125)] = 3010, + [SMALL_STATE(126)] = 3027, + [SMALL_STATE(127)] = 3044, + [SMALL_STATE(128)] = 3061, + [SMALL_STATE(129)] = 3078, + [SMALL_STATE(130)] = 3095, + [SMALL_STATE(131)] = 3112, + [SMALL_STATE(132)] = 3129, + [SMALL_STATE(133)] = 3146, + [SMALL_STATE(134)] = 3163, + [SMALL_STATE(135)] = 3178, + [SMALL_STATE(136)] = 3195, + [SMALL_STATE(137)] = 3212, + [SMALL_STATE(138)] = 3226, + [SMALL_STATE(139)] = 3240, + [SMALL_STATE(140)] = 3254, + [SMALL_STATE(141)] = 3268, + [SMALL_STATE(142)] = 3282, + [SMALL_STATE(143)] = 3296, + [SMALL_STATE(144)] = 3310, + [SMALL_STATE(145)] = 3324, + [SMALL_STATE(146)] = 3338, + [SMALL_STATE(147)] = 3352, + [SMALL_STATE(148)] = 3366, + [SMALL_STATE(149)] = 3380, + [SMALL_STATE(150)] = 3394, + [SMALL_STATE(151)] = 3408, + [SMALL_STATE(152)] = 3422, + [SMALL_STATE(153)] = 3436, + [SMALL_STATE(154)] = 3450, + [SMALL_STATE(155)] = 3464, + [SMALL_STATE(156)] = 3478, + [SMALL_STATE(157)] = 3492, + [SMALL_STATE(158)] = 3506, + [SMALL_STATE(159)] = 3520, + [SMALL_STATE(160)] = 3534, + [SMALL_STATE(161)] = 3548, + [SMALL_STATE(162)] = 3562, + [SMALL_STATE(163)] = 3576, + [SMALL_STATE(164)] = 3590, + [SMALL_STATE(165)] = 3604, + [SMALL_STATE(166)] = 3618, + [SMALL_STATE(167)] = 3632, + [SMALL_STATE(168)] = 3646, + [SMALL_STATE(169)] = 3660, + [SMALL_STATE(170)] = 3674, + [SMALL_STATE(171)] = 3688, + [SMALL_STATE(172)] = 3702, + [SMALL_STATE(173)] = 3716, + [SMALL_STATE(174)] = 3730, + [SMALL_STATE(175)] = 3744, + [SMALL_STATE(176)] = 3758, + [SMALL_STATE(177)] = 3772, + [SMALL_STATE(178)] = 3786, + [SMALL_STATE(179)] = 3800, + [SMALL_STATE(180)] = 3804, }; 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(174), - [5] = {.entry = {.count = 1, .reusable = true}}, SHIFT(160), + [3] = {.entry = {.count = 1, .reusable = true}}, SHIFT(140), + [5] = {.entry = {.count = 1, .reusable = true}}, SHIFT(161), [7] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 0), - [9] = {.entry = {.count = 1, .reusable = true}}, SHIFT(88), - [11] = {.entry = {.count = 1, .reusable = true}}, SHIFT(73), - [13] = {.entry = {.count = 1, .reusable = true}}, SHIFT(172), - [15] = {.entry = {.count = 1, .reusable = false}}, SHIFT(8), - [17] = {.entry = {.count = 1, .reusable = true}}, SHIFT(47), - [19] = {.entry = {.count = 1, .reusable = true}}, SHIFT(48), - [21] = {.entry = {.count = 1, .reusable = true}}, SHIFT(18), - [23] = {.entry = {.count = 1, .reusable = true}}, SHIFT(16), - [25] = {.entry = {.count = 1, .reusable = true}}, SHIFT(51), - [27] = {.entry = {.count = 1, .reusable = true}}, SHIFT(15), - [29] = {.entry = {.count = 1, .reusable = false}}, SHIFT(14), - [31] = {.entry = {.count = 1, .reusable = true}}, SHIFT(12), + [9] = {.entry = {.count = 1, .reusable = true}}, SHIFT(94), + [11] = {.entry = {.count = 1, .reusable = true}}, SHIFT(82), + [13] = {.entry = {.count = 1, .reusable = true}}, SHIFT(137), + [15] = {.entry = {.count = 1, .reusable = false}}, SHIFT(12), + [17] = {.entry = {.count = 1, .reusable = true}}, SHIFT(50), + [19] = {.entry = {.count = 1, .reusable = true}}, SHIFT(51), + [21] = {.entry = {.count = 1, .reusable = true}}, SHIFT(33), + [23] = {.entry = {.count = 1, .reusable = true}}, SHIFT(35), + [25] = {.entry = {.count = 1, .reusable = true}}, SHIFT(52), + [27] = {.entry = {.count = 1, .reusable = true}}, SHIFT(36), + [29] = {.entry = {.count = 1, .reusable = false}}, SHIFT(32), + [31] = {.entry = {.count = 1, .reusable = true}}, SHIFT(31), [33] = {.entry = {.count = 1, .reusable = false}}, SHIFT(55), [35] = {.entry = {.count = 1, .reusable = true}}, SHIFT(55), - [37] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5), + [37] = {.entry = {.count = 1, .reusable = false}}, SHIFT(11), [39] = {.entry = {.count = 1, .reusable = true}}, SHIFT(57), [41] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_identifier, 3), [43] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_identifier, 3), [45] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_identifier, 1), [47] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_identifier, 1), - [49] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_timestamp, 1), - [51] = {.entry = {.count = 1, .reusable = true}}, SHIFT(110), - [53] = {.entry = {.count = 1, .reusable = false}}, SHIFT(108), - [55] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_definition, 3, .production_id = 3), - [57] = {.entry = {.count = 1, .reusable = true}}, SHIFT(165), - [59] = {.entry = {.count = 1, .reusable = true}}, SHIFT(42), - [61] = {.entry = {.count = 1, .reusable = true}}, SHIFT(94), - [63] = {.entry = {.count = 1, .reusable = true}}, SHIFT(68), - [65] = {.entry = {.count = 1, .reusable = true}}, SHIFT(24), - [67] = {.entry = {.count = 1, .reusable = true}}, SHIFT(170), - [69] = {.entry = {.count = 1, .reusable = true}}, SHIFT(81), - [71] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_column_definition_repeat1, 2), - [73] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_column_definition_repeat1, 2), SHIFT_REPEAT(165), - [76] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_column_definition_repeat1, 2), SHIFT_REPEAT(42), - [79] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_column_definition_repeat1, 2), SHIFT_REPEAT(94), - [82] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_column_definition_repeat1, 2), SHIFT_REPEAT(68), - [85] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_column_definition_repeat1, 2), SHIFT_REPEAT(24), - [88] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_column_definition_repeat1, 2), SHIFT_REPEAT(170), - [91] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_column_definition_repeat1, 2), SHIFT_REPEAT(81), - [94] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_time, 1), - [96] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_definition, 2, .production_id = 3), - [98] = {.entry = {.count = 1, .reusable = true}}, SHIFT(95), - [100] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_referencial_action, 2), - [102] = {.entry = {.count = 1, .reusable = true}}, SHIFT(154), - [104] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_char, 1), - [106] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_varchar, 1), - [108] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_char, 1), - [110] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_keyword_char, 1), REDUCE(sym_keyword_varchar, 1), - [113] = {.entry = {.count = 1, .reusable = true}}, SHIFT(155), - [115] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_numeric, 1), - [117] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__foreign_key_on_update, 3), - [119] = {.entry = {.count = 1, .reusable = true}}, SHIFT(150), - [121] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_decimal, 1), - [123] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__foreign_key_on_delete, 3), - [125] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_referencial_action, 1), - [127] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_referencial_action, 6), - [129] = {.entry = {.count = 1, .reusable = true}}, SHIFT(142), - [131] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_varchar, 1), - [133] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 3, .production_id = 5), - [135] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_column_constraint, 3, .production_id = 5), - [137] = {.entry = {.count = 1, .reusable = true}}, SHIFT(126), - [139] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 1), - [141] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_column_constraint, 1), - [143] = {.entry = {.count = 1, .reusable = true}}, SHIFT(118), - [145] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_referencial_action, 5), - [147] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_numeric, 4, .production_id = 4), - [149] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__primary_key, 2), - [151] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__not_null, 2), - [153] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_numeric, 6, .production_id = 7), - [155] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_decimal, 6, .production_id = 7), - [157] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__with_time_zone, 2), - [159] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_column_definition_repeat1, 1), - [161] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_literal, 1), - [163] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 4), - [165] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 9, .production_id = 9), - [167] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__literal_string, 3), - [169] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 2), - [171] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 4, .production_id = 5), - [173] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_varchar, 4, .production_id = 6), - [175] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_char, 4, .production_id = 6), - [177] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 3), - [179] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__expression, 1), - [181] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 10, .production_id = 9), - [183] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_timestamptz, 2), - [185] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 5, .production_id = 5), - [187] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__type, 1), - [189] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__type_numeric, 1), - [191] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_timestamp, 2), - [193] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_time, 2), - [195] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__type_character, 1), - [197] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 5), - [199] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 6, .production_id = 5), - [201] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 8, .production_id = 8), - [203] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__type_datetime, 1), - [205] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__keyword_time_zone, 2), - [207] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_timestamptz, 1), - [209] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_double, 2), - [211] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 7, .production_id = 5), - [213] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 7, .production_id = 8), - [215] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_decimal, 4, .production_id = 4), - [217] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__without_time_zone, 2), - [219] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 1), - [221] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2), - [223] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(88), - [226] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(73), - [229] = {.entry = {.count = 1, .reusable = true}}, SHIFT(62), - [231] = {.entry = {.count = 1, .reusable = true}}, SHIFT(67), - [233] = {.entry = {.count = 1, .reusable = true}}, SHIFT(23), - [235] = {.entry = {.count = 1, .reusable = true}}, SHIFT(83), - [237] = {.entry = {.count = 1, .reusable = true}}, SHIFT(33), - [239] = {.entry = {.count = 1, .reusable = true}}, SHIFT(173), - [241] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4), - [243] = {.entry = {.count = 1, .reusable = false}}, SHIFT(148), - [245] = {.entry = {.count = 1, .reusable = true}}, SHIFT(147), - [247] = {.entry = {.count = 1, .reusable = true}}, SHIFT(100), - [249] = {.entry = {.count = 1, .reusable = true}}, SHIFT(119), - [251] = {.entry = {.count = 1, .reusable = true}}, SHIFT(102), - [253] = {.entry = {.count = 1, .reusable = true}}, SHIFT(99), - [255] = {.entry = {.count = 1, .reusable = true}}, SHIFT(69), - [257] = {.entry = {.count = 1, .reusable = true}}, SHIFT(158), - [259] = {.entry = {.count = 1, .reusable = false}}, SHIFT(158), - [261] = {.entry = {.count = 1, .reusable = true}}, SHIFT(151), - [263] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4), - [265] = {.entry = {.count = 1, .reusable = true}}, SHIFT(157), - [267] = {.entry = {.count = 1, .reusable = true}}, SHIFT(145), - [269] = {.entry = {.count = 1, .reusable = true}}, SHIFT(131), - [271] = {.entry = {.count = 1, .reusable = true}}, SHIFT(20), - [273] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_table_reference, 1, .production_id = 1), - [275] = {.entry = {.count = 1, .reusable = true}}, SHIFT(101), - [277] = {.entry = {.count = 1, .reusable = true}}, SHIFT(79), - [279] = {.entry = {.count = 1, .reusable = true}}, SHIFT(177), - [281] = {.entry = {.count = 1, .reusable = true}}, SHIFT(167), - [283] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_referencial_action_repeat1, 2), SHIFT_REPEAT(90), - [286] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_referencial_action_repeat1, 2), - [288] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_statement, 1), - [290] = {.entry = {.count = 1, .reusable = true}}, SHIFT(90), - [292] = {.entry = {.count = 1, .reusable = true}}, SHIFT(21), - [294] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 1), - [296] = {.entry = {.count = 1, .reusable = true}}, SHIFT(25), - [298] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_statement, 2), - [300] = {.entry = {.count = 1, .reusable = true}}, SHIFT(153), - [302] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_table_reference, 3, .production_id = 2), - [304] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_column_definitions_repeat1, 2), SHIFT_REPEAT(79), - [307] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_column_definitions_repeat1, 2), - [309] = {.entry = {.count = 1, .reusable = true}}, SHIFT(159), - [311] = {.entry = {.count = 1, .reusable = true}}, SHIFT(146), - [313] = {.entry = {.count = 1, .reusable = true}}, SHIFT(149), - [315] = {.entry = {.count = 1, .reusable = true}}, SHIFT(144), - [317] = {.entry = {.count = 1, .reusable = true}}, SHIFT(61), - [319] = {.entry = {.count = 1, .reusable = true}}, SHIFT(178), - [321] = {.entry = {.count = 1, .reusable = true}}, SHIFT(26), - [323] = {.entry = {.count = 1, .reusable = true}}, SHIFT(168), - [325] = {.entry = {.count = 1, .reusable = true}}, SHIFT(41), - [327] = {.entry = {.count = 1, .reusable = true}}, SHIFT(77), - [329] = {.entry = {.count = 1, .reusable = true}}, SHIFT(78), - [331] = {.entry = {.count = 1, .reusable = true}}, SHIFT(76), - [333] = {.entry = {.count = 1, .reusable = true}}, SHIFT(140), - [335] = {.entry = {.count = 1, .reusable = true}}, SHIFT(46), - [337] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__if_not_exists, 3), - [339] = {.entry = {.count = 1, .reusable = true}}, SHIFT(10), - [341] = {.entry = {.count = 1, .reusable = true}}, SHIFT(29), - [343] = {.entry = {.count = 1, .reusable = false}}, SHIFT(180), - [345] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_create_table, 4), - [347] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3), - [349] = {.entry = {.count = 1, .reusable = true}}, SHIFT(53), - [351] = {.entry = {.count = 1, .reusable = true}}, SHIFT(128), - [353] = {.entry = {.count = 1, .reusable = true}}, SHIFT(163), - [355] = {.entry = {.count = 1, .reusable = true}}, SHIFT(40), - [357] = {.entry = {.count = 1, .reusable = true}}, SHIFT(166), - [359] = {.entry = {.count = 1, .reusable = true}}, SHIFT(13), - [361] = {.entry = {.count = 1, .reusable = false}}, SHIFT(174), - [363] = {.entry = {.count = 1, .reusable = false}}, SHIFT(160), - [365] = {.entry = {.count = 1, .reusable = false}}, SHIFT(139), - [367] = {.entry = {.count = 1, .reusable = true}}, SHIFT(141), - [369] = {.entry = {.count = 1, .reusable = true}}, SHIFT(56), - [371] = {.entry = {.count = 1, .reusable = true}}, SHIFT(111), - [373] = {.entry = {.count = 1, .reusable = true}}, SHIFT(71), - [375] = {.entry = {.count = 1, .reusable = true}}, SHIFT(74), - [377] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__foreign_key_match, 2), - [379] = {.entry = {.count = 1, .reusable = true}}, SHIFT(143), - [381] = {.entry = {.count = 1, .reusable = true}}, SHIFT(112), - [383] = {.entry = {.count = 1, .reusable = true}}, SHIFT(75), + [49] = {.entry = {.count = 1, .reusable = true}}, SHIFT(104), + [51] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 2), + [53] = {.entry = {.count = 1, .reusable = true}}, SHIFT(117), + [55] = {.entry = {.count = 1, .reusable = true}}, SHIFT(92), + [57] = {.entry = {.count = 1, .reusable = true}}, SHIFT(101), + [59] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 4, .production_id = 5), + [61] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 7, .production_id = 9), + [63] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 5, .production_id = 8), + [65] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_definition, 3, .production_id = 3), + [67] = {.entry = {.count = 1, .reusable = true}}, SHIFT(151), + [69] = {.entry = {.count = 1, .reusable = true}}, SHIFT(74), + [71] = {.entry = {.count = 1, .reusable = true}}, SHIFT(105), + [73] = {.entry = {.count = 1, .reusable = true}}, SHIFT(75), + [75] = {.entry = {.count = 1, .reusable = true}}, SHIFT(25), + [77] = {.entry = {.count = 1, .reusable = true}}, SHIFT(162), + [79] = {.entry = {.count = 1, .reusable = true}}, SHIFT(87), + [81] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_definition, 2, .production_id = 3), + [83] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_timestamp, 1), + [85] = {.entry = {.count = 1, .reusable = true}}, SHIFT(116), + [87] = {.entry = {.count = 1, .reusable = false}}, SHIFT(113), + [89] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_time, 1), + [91] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_column_definition_repeat1, 2), + [93] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_column_definition_repeat1, 2), SHIFT_REPEAT(151), + [96] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_column_definition_repeat1, 2), SHIFT_REPEAT(74), + [99] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_column_definition_repeat1, 2), SHIFT_REPEAT(105), + [102] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_column_definition_repeat1, 2), SHIFT_REPEAT(75), + [105] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_column_definition_repeat1, 2), SHIFT_REPEAT(25), + [108] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_column_definition_repeat1, 2), SHIFT_REPEAT(162), + [111] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_column_definition_repeat1, 2), SHIFT_REPEAT(87), + [114] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_table_reference, 1, .production_id = 1), + [116] = {.entry = {.count = 1, .reusable = true}}, SHIFT(102), + [118] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 3), + [120] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 8, .production_id = 9), + [122] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 5, .production_id = 5), + [124] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 6, .production_id = 8), + [126] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_table_reference, 3, .production_id = 2), + [128] = {.entry = {.count = 1, .reusable = true}}, SHIFT(99), + [130] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_referencial_action, 2), + [132] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__foreign_key_on_delete, 3), + [134] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__foreign_key_match, 2), + [136] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_referencial_action, 5), + [138] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 1), + [140] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_column_constraint, 1), + [142] = {.entry = {.count = 1, .reusable = true}}, SHIFT(111), + [144] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 3, .production_id = 5), + [146] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_column_constraint, 3, .production_id = 5), + [148] = {.entry = {.count = 1, .reusable = true}}, SHIFT(125), + [150] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__foreign_key_on_update, 3), + [152] = {.entry = {.count = 1, .reusable = true}}, SHIFT(173), + [154] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_varchar, 1), + [156] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_referencial_action, 1), + [158] = {.entry = {.count = 1, .reusable = true}}, SHIFT(155), + [160] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_char, 1), + [162] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_varchar, 1), + [164] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_char, 1), + [166] = {.entry = {.count = 1, .reusable = true}}, SHIFT(177), + [168] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_decimal, 1), + [170] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_referencial_action, 6), + [172] = {.entry = {.count = 1, .reusable = true}}, SHIFT(178), + [174] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_numeric, 1), + [176] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_keyword_char, 1), REDUCE(sym_keyword_varchar, 1), + [179] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_numeric, 4, .production_id = 4), + [181] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_numeric, 6, .production_id = 7), + [183] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_decimal, 6, .production_id = 7), + [185] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__not_null, 2), + [187] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__expression, 1), + [189] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 4), + [191] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_literal_string, 3), + [193] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__with_time_zone, 2), + [195] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__without_time_zone, 2), + [197] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 7, .production_id = 5), + [199] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__type, 1), + [201] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__type_numeric, 1), + [203] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__type_character, 1), + [205] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 6, .production_id = 5), + [207] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__primary_key, 2), + [209] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__type_datetime, 1), + [211] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 7, .production_id = 8), + [213] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_timestamptz, 1), + [215] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 8, .production_id = 8), + [217] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 10, .production_id = 9), + [219] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_column_definition_repeat1, 1), + [221] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_varchar, 4, .production_id = 6), + [223] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_char, 4, .production_id = 6), + [225] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 9, .production_id = 9), + [227] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_double, 2), + [229] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__keyword_time_zone, 2), + [231] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_literal, 1), + [233] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_time, 2), + [235] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 5), + [237] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_timestamp, 2), + [239] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_timestamptz, 2), + [241] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_decimal, 4, .production_id = 4), + [243] = {.entry = {.count = 1, .reusable = true}}, SHIFT(67), + [245] = {.entry = {.count = 1, .reusable = true}}, SHIFT(139), + [247] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2), + [249] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(94), + [252] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(82), + [255] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 1), + [257] = {.entry = {.count = 1, .reusable = true}}, SHIFT(70), + [259] = {.entry = {.count = 1, .reusable = true}}, SHIFT(76), + [261] = {.entry = {.count = 1, .reusable = true}}, SHIFT(26), + [263] = {.entry = {.count = 1, .reusable = true}}, SHIFT(86), + [265] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4), + [267] = {.entry = {.count = 1, .reusable = false}}, SHIFT(150), + [269] = {.entry = {.count = 1, .reusable = true}}, SHIFT(149), + [271] = {.entry = {.count = 1, .reusable = true}}, SHIFT(80), + [273] = {.entry = {.count = 1, .reusable = true}}, SHIFT(159), + [275] = {.entry = {.count = 1, .reusable = false}}, SHIFT(159), + [277] = {.entry = {.count = 1, .reusable = true}}, SHIFT(138), + [279] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4), + [281] = {.entry = {.count = 1, .reusable = true}}, SHIFT(153), + [283] = {.entry = {.count = 1, .reusable = true}}, SHIFT(145), + [285] = {.entry = {.count = 1, .reusable = true}}, SHIFT(134), + [287] = {.entry = {.count = 1, .reusable = true}}, SHIFT(29), + [289] = {.entry = {.count = 1, .reusable = true}}, SHIFT(89), + [291] = {.entry = {.count = 1, .reusable = true}}, SHIFT(171), + [293] = {.entry = {.count = 1, .reusable = true}}, SHIFT(22), + [295] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_referencial_action_repeat1, 2), SHIFT_REPEAT(96), + [298] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_referencial_action_repeat1, 2), + [300] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_statement, 1), + [302] = {.entry = {.count = 1, .reusable = true}}, SHIFT(96), + [304] = {.entry = {.count = 1, .reusable = true}}, SHIFT(34), + [306] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 1), + [308] = {.entry = {.count = 1, .reusable = true}}, SHIFT(24), + [310] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_statement, 2), + [312] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_column_definitions_repeat1, 2), SHIFT_REPEAT(89), + [315] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_column_definitions_repeat1, 2), + [317] = {.entry = {.count = 1, .reusable = true}}, SHIFT(157), + [319] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__if_not_exists, 3), + [321] = {.entry = {.count = 1, .reusable = true}}, SHIFT(148), + [323] = {.entry = {.count = 1, .reusable = true}}, SHIFT(146), + [325] = {.entry = {.count = 1, .reusable = true}}, SHIFT(37), + [327] = {.entry = {.count = 1, .reusable = true}}, SHIFT(172), + [329] = {.entry = {.count = 1, .reusable = true}}, SHIFT(38), + [331] = {.entry = {.count = 1, .reusable = true}}, SHIFT(142), + [333] = {.entry = {.count = 1, .reusable = true}}, SHIFT(73), + [335] = {.entry = {.count = 1, .reusable = true}}, SHIFT(174), + [337] = {.entry = {.count = 1, .reusable = true}}, SHIFT(158), + [339] = {.entry = {.count = 1, .reusable = true}}, SHIFT(84), + [341] = {.entry = {.count = 1, .reusable = true}}, SHIFT(85), + [343] = {.entry = {.count = 1, .reusable = true}}, SHIFT(141), + [345] = {.entry = {.count = 1, .reusable = true}}, SHIFT(64), + [347] = {.entry = {.count = 1, .reusable = true}}, SHIFT(83), + [349] = {.entry = {.count = 1, .reusable = true}}, SHIFT(20), + [351] = {.entry = {.count = 1, .reusable = true}}, SHIFT(65), + [353] = {.entry = {.count = 1, .reusable = true}}, SHIFT(81), + [355] = {.entry = {.count = 1, .reusable = false}}, SHIFT(140), + [357] = {.entry = {.count = 1, .reusable = false}}, SHIFT(161), + [359] = {.entry = {.count = 1, .reusable = false}}, SHIFT(176), + [361] = {.entry = {.count = 1, .reusable = true}}, SHIFT(179), + [363] = {.entry = {.count = 1, .reusable = true}}, SHIFT(53), + [365] = {.entry = {.count = 1, .reusable = true}}, SHIFT(168), + [367] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_create_table, 4), + [369] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3), + [371] = {.entry = {.count = 1, .reusable = true}}, SHIFT(23), + [373] = {.entry = {.count = 1, .reusable = true}}, SHIFT(167), + [375] = {.entry = {.count = 1, .reusable = true}}, SHIFT(107), + [377] = {.entry = {.count = 1, .reusable = false}}, SHIFT(144), + [379] = {.entry = {.count = 1, .reusable = true}}, SHIFT(147), + [381] = {.entry = {.count = 1, .reusable = true}}, SHIFT(41), + [383] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7), [385] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_definitions, 2), - [387] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_temporary, 1), - [389] = {.entry = {.count = 1, .reusable = false}}, SHIFT(137), - [391] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__create_statement, 1), - [393] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_create_table, 5), - [395] = {.entry = {.count = 1, .reusable = true}}, SHIFT(39), - [397] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__ddl_statement, 1), - [399] = {.entry = {.count = 1, .reusable = true}}, SHIFT(28), - [401] = {.entry = {.count = 1, .reusable = true}}, SHIFT(30), - [403] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_definitions, 3), - [405] = {.entry = {.count = 1, .reusable = true}}, SHIFT(34), - [407] = {.entry = {.count = 1, .reusable = true}}, SHIFT(97), - [409] = {.entry = {.count = 1, .reusable = true}}, SHIFT(27), - [411] = {.entry = {.count = 1, .reusable = true}}, SHIFT(36), - [413] = {.entry = {.count = 1, .reusable = true}}, SHIFT(58), - [415] = {.entry = {.count = 1, .reusable = false}}, SHIFT(171), - [417] = {.entry = {.count = 1, .reusable = true}}, SHIFT(179), - [419] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), - [421] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_create_table, 6), - [423] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_definitions, 4), - [425] = {.entry = {.count = 1, .reusable = true}}, SHIFT(136), - [427] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_line_comment, 2), - [429] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block_comment, 3), + [387] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_create_table, 5), + [389] = {.entry = {.count = 1, .reusable = true}}, SHIFT(170), + [391] = {.entry = {.count = 1, .reusable = true}}, SHIFT(8), + [393] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_definitions, 3), + [395] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_temporary, 1), + [397] = {.entry = {.count = 1, .reusable = false}}, SHIFT(180), + [399] = {.entry = {.count = 1, .reusable = false}}, SHIFT(160), + [401] = {.entry = {.count = 1, .reusable = true}}, SHIFT(54), + [403] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_create_table, 6), + [405] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__create_statement, 1), + [407] = {.entry = {.count = 1, .reusable = true}}, SHIFT(61), + [409] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__ddl_statement, 1), + [411] = {.entry = {.count = 1, .reusable = true}}, SHIFT(39), + [413] = {.entry = {.count = 1, .reusable = true}}, SHIFT(40), + [415] = {.entry = {.count = 1, .reusable = true}}, SHIFT(100), + [417] = {.entry = {.count = 1, .reusable = true}}, SHIFT(62), + [419] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_definitions, 4), + [421] = {.entry = {.count = 1, .reusable = true}}, SHIFT(44), + [423] = {.entry = {.count = 1, .reusable = true}}, SHIFT(165), + [425] = {.entry = {.count = 1, .reusable = true}}, SHIFT(66), + [427] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), + [429] = {.entry = {.count = 1, .reusable = true}}, SHIFT(45), + [431] = {.entry = {.count = 1, .reusable = true}}, SHIFT(112), + [433] = {.entry = {.count = 1, .reusable = true}}, SHIFT(109), + [435] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_line_comment, 2), + [437] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block_comment, 3), }; #ifdef __cplusplus @@ -6651,7 +6754,7 @@ extern "C" { #define extern __declspec(dllexport) #endif -extern const TSLanguage *tree_sitter_plpgsql(void) { +extern const TSLanguage *tree_sitter_psql(void) { static const TSLanguage language = { .version = LANGUAGE_VERSION, .symbol_count = SYMBOL_COUNT, diff --git a/test/corpus/create/table.txt b/test/corpus/create/table.txt index 7215fc4..c46e026 100644 --- a/test/corpus/create/table.txt +++ b/test/corpus/create/table.txt @@ -145,7 +145,7 @@ create table foo ( name: (identifier) datatype: (numeric (keyword_numeric) - precision: (literal) + precision: (number) ) ) (column_definition @@ -156,7 +156,7 @@ create table foo ( name: (identifier) datatype: (varchar (keyword_varchar) - size: (literal) + size: (number) ) ) (column_definition @@ -220,7 +220,9 @@ create table foo ( ) (column_constraint (keyword_default) - (literal) + (literal + (literal_string) + ) ) ) ) @@ -347,7 +349,9 @@ create table foo ( (keyword_constraint) name: (identifier) (keyword_default) - (literal) + (literal + (literal_string) + ) ) ) (column_definition diff --git a/test/highlight/create_table.psql b/test/highlight/create_table.psql new file mode 100644 index 0000000..74e9242 --- /dev/null +++ b/test/highlight/create_table.psql @@ -0,0 +1,38 @@ +create table public.foo ( +-- <- keyword +-- ^ keyword +-- ^ namespace +-- ^ punctuation.delimiter +-- ^ constant +-- ^ punctuation.brackets + id uuid constraint foo_pkey primary key, + -- <- variable + -- ^ type.builtin + -- ^ keyword + -- ^ variable + -- ^ keyword + -- ^ keyword + -- ^ punctuation.delimiter + + confirmed boolean not null default true + -- <- variable + -- ^ type.builtin + -- ^ keyword + -- ^ keyword + -- ^ keyword + -- ^ boolean + + bar_id uuid not null constraint foo_bar_id_fkey references bar on update cascade on delete cascade, + -- ^ keyword + -- ^ variable + -- ^ keyword + -- ^ constant + -- ^ keyword + -- ^ keyword + -- ^ keyword + -- ^ keyword + -- ^ keyword + -- ^ keyword +) ; +-- <- punctuation.brackets +-- ^ punctuation.delimiter diff --git a/tree-sitter-psql.wasm b/tree-sitter-psql.wasm new file mode 100755 index 0000000..1cd21c6 Binary files /dev/null and b/tree-sitter-psql.wasm differ