From 09f0ec4c3f6da5fe19fdd9f3b70a40810cf4a6ed Mon Sep 17 00:00:00 2001 From: Dmitriy Pleshevskiy Date: Sun, 8 Jan 2023 23:54:06 +0300 Subject: [PATCH] grammar: fix foreign key --- grammar.js | 68 +- src/grammar.json | 264 +- src/node-types.json | 60 +- src/parser.c | 4398 ++++++++++++++++++++-------------- test/corpus/create/table.txt | 311 ++- tree-sitter-plpgsql.wasm | Bin 37046 -> 0 bytes tree-sitter-psql.wasm | Bin 37926 -> 40339 bytes 7 files changed, 3147 insertions(+), 1954 deletions(-) delete mode 100755 tree-sitter-plpgsql.wasm diff --git a/grammar.js b/grammar.js index f31e09c..1158cf1 100644 --- a/grammar.js +++ b/grammar.js @@ -34,12 +34,8 @@ module.exports = grammar({ ), column_definitions: ($) => - seq( - "(", - optional( - commaSepRepeat1(choice($.column_definition, $.table_constraint)) - ), - ")" + parens( + optional(commaSep1(choice($.column_definition, $.table_constraint))) ), column_definition: ($) => @@ -55,28 +51,53 @@ module.exports = grammar({ // TODO: add index_parameters in UNIQUE, PRIMARY KEY $._unique_constraint, $._primary_key, - $._foreign_key_references + seq( + $.keyword_references, + $.table_reference, + optional($.ref_column), + optional($._foreign_key_match), + optional( + choice( + seq($._foreign_key_on_delete, $._foreign_key_on_update), + seq($._foreign_key_on_update, $._foreign_key_on_delete) + ) + ) + ) // TODO: CHECK // TODO: GENERATED ) // TODO: DEFERRABLE ), + ref_column: ($) => parens(field("name", $.identifier)), + table_constraint: ($) => seq( optional(seq($.keyword_constraint, field("name", $.identifier))), choice( seq($._unique_constraint, $.column_list), seq($._primary_key, $.column_list), - seq($._foreign_key, $.column_list, $._foreign_key_references) + seq( + $._foreign_key, + $.column_list, + $.keyword_references, + $.table_reference, + optional(alias($.column_list, $.ref_column_list)), + optional($._foreign_key_match), + optional( + choice( + seq($._foreign_key_on_delete, $._foreign_key_on_update), + seq($._foreign_key_on_update, $._foreign_key_on_delete) + ) + ) + ) // TODO: CHECK // TODO: EXCLUDE ) // TODO: DEFERRABLE ), - column_list: ($) => - seq("(", commaSepRepeat1(field("name", $.identifier)), ")"), + column_list: ($) => parens(commaSep1(field("name", $.identifier))), _unique_constraint: ($) => seq( @@ -86,19 +107,6 @@ module.exports = grammar({ ) ), - _foreign_key_references: ($) => - seq( - $.keyword_references, - $.table_reference, - optional(seq("(", field("refcolumn", $.identifier), ")")), - optional($._foreign_key_match), - optional( - choice( - seq($._foreign_key_on_delete, $._foreign_key_on_update), - seq($._foreign_key_on_update, $._foreign_key_on_delete) - ) - ) - ), _foreign_key_match: ($) => seq( $.keyword_match, @@ -117,7 +125,7 @@ module.exports = grammar({ seq( $.keyword_set, choice($.keyword_null, $.keyword_default), - optional(seq("(", commaSepRepeat1($.identifier), ")")) + optional(parens(commaSep1($.identifier))) ) ), @@ -324,8 +332,16 @@ function mkKeyword(word) { return new RegExp(word + "|" + word.toUpperCase()); } -function commaSepRepeat1(field) { - return seq(field, repeat(seq(",", field))); +function commaSep1(rule) { + return sep1(",", rule); +} + +function sep1(separator, rule) { + return seq(rule, repeat(seq(separator, rule))); +} + +function parens(rule) { + return seq("(", rule, ")"); } function parametricType($, type, params = ["size"]) { diff --git a/src/grammar.json b/src/grammar.json index f4d60fd..c670e13 100644 --- a/src/grammar.json +++ b/src/grammar.json @@ -256,13 +256,106 @@ "name": "_primary_key" }, { - "type": "SYMBOL", - "name": "_foreign_key_references" + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "keyword_references" + }, + { + "type": "SYMBOL", + "name": "table_reference" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "ref_column" + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "_foreign_key_match" + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "CHOICE", + "members": [ + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "_foreign_key_on_delete" + }, + { + "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": "BLANK" + } + ] + } + ] } ] } ] }, + "ref_column": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "(" + }, + { + "type": "FIELD", + "name": "name", + "content": { + "type": "SYMBOL", + "name": "identifier" + } + }, + { + "type": "STRING", + "value": ")" + } + ] + }, "table_constraint": { "type": "SEQ", "members": [ @@ -333,7 +426,79 @@ }, { "type": "SYMBOL", - "name": "_foreign_key_references" + "name": "keyword_references" + }, + { + "type": "SYMBOL", + "name": "table_reference" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "ALIAS", + "content": { + "type": "SYMBOL", + "name": "column_list" + }, + "named": true, + "value": "ref_column_list" + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "_foreign_key_match" + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "CHOICE", + "members": [ + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "_foreign_key_on_delete" + }, + { + "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": "BLANK" + } + ] } ] } @@ -429,99 +594,6 @@ } ] }, - "_foreign_key_references": { - "type": "SEQ", - "members": [ - { - "type": "SYMBOL", - "name": "keyword_references" - }, - { - "type": "SYMBOL", - "name": "table_reference" - }, - { - "type": "CHOICE", - "members": [ - { - "type": "SEQ", - "members": [ - { - "type": "STRING", - "value": "(" - }, - { - "type": "FIELD", - "name": "refcolumn", - "content": { - "type": "SYMBOL", - "name": "identifier" - } - }, - { - "type": "STRING", - "value": ")" - } - ] - }, - { - "type": "BLANK" - } - ] - }, - { - "type": "CHOICE", - "members": [ - { - "type": "SYMBOL", - "name": "_foreign_key_match" - }, - { - "type": "BLANK" - } - ] - }, - { - "type": "CHOICE", - "members": [ - { - "type": "CHOICE", - "members": [ - { - "type": "SEQ", - "members": [ - { - "type": "SYMBOL", - "name": "_foreign_key_on_delete" - }, - { - "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": "BLANK" - } - ] - } - ] - }, "_foreign_key_match": { "type": "SEQ", "members": [ diff --git a/src/node-types.json b/src/node-types.json index c033ef5..f4b2be7 100644 --- a/src/node-types.json +++ b/src/node-types.json @@ -43,16 +43,6 @@ "named": true } ] - }, - "refcolumn": { - "multiple": false, - "required": false, - "types": [ - { - "type": "identifier", - "named": true - } - ] } }, "children": { @@ -131,6 +121,10 @@ "type": "literal", "named": true }, + { + "type": "ref_column", + "named": true + }, { "type": "referencial_action", "named": true @@ -407,6 +401,38 @@ ] } }, + { + "type": "ref_column", + "named": true, + "fields": { + "name": { + "multiple": false, + "required": true, + "types": [ + { + "type": "identifier", + "named": true + } + ] + } + } + }, + { + "type": "ref_column_list", + "named": true, + "fields": { + "name": { + "multiple": true, + "required": true, + "types": [ + { + "type": "identifier", + "named": true + } + ] + } + } + }, { "type": "referencial_action", "named": true, @@ -493,16 +519,6 @@ "named": true } ] - }, - "refcolumn": { - "multiple": false, - "required": false, - "types": [ - { - "type": "identifier", - "named": true - } - ] } }, "children": { @@ -577,6 +593,10 @@ "type": "keyword_update", "named": true }, + { + "type": "ref_column_list", + "named": true + }, { "type": "referencial_action", "named": true diff --git a/src/parser.c b/src/parser.c index 035bcea..5d85784 100644 --- a/src/parser.c +++ b/src/parser.c @@ -6,15 +6,15 @@ #endif #define LANGUAGE_VERSION 14 -#define STATE_COUNT 184 +#define STATE_COUNT 226 #define LARGE_STATE_COUNT 2 #define SYMBOL_COUNT 133 -#define ALIAS_COUNT 0 +#define ALIAS_COUNT 1 #define TOKEN_COUNT 79 #define EXTERNAL_TOKEN_COUNT 0 -#define FIELD_COUNT 6 -#define MAX_ALIAS_SEQUENCE_LENGTH 8 -#define PRODUCTION_ID_COUNT 14 +#define FIELD_COUNT 5 +#define MAX_ALIAS_SEQUENCE_LENGTH 10 +#define PRODUCTION_ID_COUNT 11 enum { sym__identifier = 1, @@ -103,10 +103,10 @@ enum { sym_column_definitions = 84, sym_column_definition = 85, sym_column_constraint = 86, - sym_table_constraint = 87, - sym_column_list = 88, - sym__unique_constraint = 89, - sym__foreign_key_references = 90, + sym_ref_column = 87, + sym_table_constraint = 88, + sym_column_list = 89, + sym__unique_constraint = 90, sym__foreign_key_match = 91, sym__foreign_key_on_delete = 92, sym__foreign_key_on_update = 93, @@ -149,6 +149,7 @@ enum { aux_sym_column_definition_repeat1 = 130, aux_sym_column_list_repeat1 = 131, aux_sym_referencial_action_repeat1 = 132, + alias_sym_ref_column_list = 133, }; static const char * const ts_symbol_names[] = { @@ -239,10 +240,10 @@ static const char * const ts_symbol_names[] = { [sym_column_definitions] = "column_definitions", [sym_column_definition] = "column_definition", [sym_column_constraint] = "column_constraint", + [sym_ref_column] = "ref_column", [sym_table_constraint] = "table_constraint", [sym_column_list] = "column_list", [sym__unique_constraint] = "_unique_constraint", - [sym__foreign_key_references] = "_foreign_key_references", [sym__foreign_key_match] = "_foreign_key_match", [sym__foreign_key_on_delete] = "_foreign_key_on_delete", [sym__foreign_key_on_update] = "_foreign_key_on_update", @@ -285,6 +286,7 @@ static const char * const ts_symbol_names[] = { [aux_sym_column_definition_repeat1] = "column_definition_repeat1", [aux_sym_column_list_repeat1] = "column_list_repeat1", [aux_sym_referencial_action_repeat1] = "referencial_action_repeat1", + [alias_sym_ref_column_list] = "ref_column_list", }; static const TSSymbol ts_symbol_map[] = { @@ -375,10 +377,10 @@ static const TSSymbol ts_symbol_map[] = { [sym_column_definitions] = sym_column_definitions, [sym_column_definition] = sym_column_definition, [sym_column_constraint] = sym_column_constraint, + [sym_ref_column] = sym_ref_column, [sym_table_constraint] = sym_table_constraint, [sym_column_list] = sym_column_list, [sym__unique_constraint] = sym__unique_constraint, - [sym__foreign_key_references] = sym__foreign_key_references, [sym__foreign_key_match] = sym__foreign_key_match, [sym__foreign_key_on_delete] = sym__foreign_key_on_delete, [sym__foreign_key_on_update] = sym__foreign_key_on_update, @@ -421,6 +423,7 @@ static const TSSymbol ts_symbol_map[] = { [aux_sym_column_definition_repeat1] = aux_sym_column_definition_repeat1, [aux_sym_column_list_repeat1] = aux_sym_column_list_repeat1, [aux_sym_referencial_action_repeat1] = aux_sym_referencial_action_repeat1, + [alias_sym_ref_column_list] = alias_sym_ref_column_list, }; static const TSSymbolMetadata ts_symbol_metadata[] = { @@ -772,6 +775,10 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = true, }, + [sym_ref_column] = { + .visible = true, + .named = true, + }, [sym_table_constraint] = { .visible = true, .named = true, @@ -784,10 +791,6 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = false, .named = true, }, - [sym__foreign_key_references] = { - .visible = false, - .named = true, - }, [sym__foreign_key_match] = { .visible = false, .named = true, @@ -956,22 +959,24 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = false, .named = false, }, + [alias_sym_ref_column_list] = { + .visible = true, + .named = true, + }, }; enum { field_name = 1, field_precision = 2, - field_refcolumn = 3, - field_scale = 4, - field_schema = 5, - field_size = 6, + field_scale = 3, + field_schema = 4, + field_size = 5, }; static const char * const ts_field_names[] = { [0] = NULL, [field_name] = "name", [field_precision] = "precision", - [field_refcolumn] = "refcolumn", [field_scale] = "scale", [field_schema] = "schema", [field_size] = "size", @@ -981,16 +986,12 @@ static const TSFieldMapSlice ts_field_map_slices[PRODUCTION_ID_COUNT] = { [1] = {.index = 0, .length = 1}, [2] = {.index = 1, .length = 2}, [3] = {.index = 3, .length = 1}, - [4] = {.index = 4, .length = 1}, - [5] = {.index = 5, .length = 1}, - [6] = {.index = 6, .length = 2}, - [7] = {.index = 8, .length = 2}, - [8] = {.index = 10, .length = 2}, - [9] = {.index = 12, .length = 1}, - [10] = {.index = 13, .length = 2}, - [11] = {.index = 15, .length = 1}, - [12] = {.index = 16, .length = 1}, - [13] = {.index = 17, .length = 2}, + [4] = {.index = 4, .length = 2}, + [5] = {.index = 6, .length = 2}, + [7] = {.index = 8, .length = 1}, + [8] = {.index = 9, .length = 1}, + [9] = {.index = 3, .length = 1}, + [10] = {.index = 10, .length = 2}, }; static const TSFieldMapEntry ts_field_map_entries[] = { @@ -1000,39 +1001,36 @@ static const TSFieldMapEntry ts_field_map_entries[] = { {field_name, 2}, {field_schema, 0}, [3] = - {field_refcolumn, 2, .inherited = true}, + {field_name, 1}, [4] = - {field_refcolumn, 0, .inherited = true}, - [5] = - {field_name, 1}, - [6] = - {field_name, 1}, - {field_refcolumn, 4, .inherited = true}, - [8] = {field_name, 1}, {field_name, 2, .inherited = true}, - [10] = + [6] = {field_name, 0, .inherited = true}, {field_name, 1, .inherited = true}, - [12] = + [8] = {field_precision, 2}, - [13] = - {field_name, 1}, - {field_refcolumn, 2, .inherited = true}, - [15] = + [9] = {field_size, 2}, - [16] = - {field_refcolumn, 3}, - [17] = + [10] = {field_precision, 2}, {field_scale, 4}, }; static const TSSymbol ts_alias_sequences[PRODUCTION_ID_COUNT][MAX_ALIAS_SEQUENCE_LENGTH] = { [0] = {0}, + [6] = { + [4] = alias_sym_ref_column_list, + }, + [9] = { + [6] = alias_sym_ref_column_list, + }, }; static const uint16_t ts_non_terminal_alias_map[] = { + sym_column_list, 2, + sym_column_list, + alias_sym_ref_column_list, 0, }; @@ -1221,6 +1219,48 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [181] = 181, [182] = 182, [183] = 183, + [184] = 184, + [185] = 185, + [186] = 186, + [187] = 187, + [188] = 188, + [189] = 189, + [190] = 190, + [191] = 191, + [192] = 192, + [193] = 193, + [194] = 194, + [195] = 195, + [196] = 196, + [197] = 197, + [198] = 198, + [199] = 199, + [200] = 200, + [201] = 201, + [202] = 202, + [203] = 203, + [204] = 204, + [205] = 205, + [206] = 206, + [207] = 207, + [208] = 208, + [209] = 209, + [210] = 210, + [211] = 211, + [212] = 212, + [213] = 213, + [214] = 214, + [215] = 215, + [216] = 216, + [217] = 217, + [218] = 218, + [219] = 219, + [220] = 220, + [221] = 221, + [222] = 222, + [223] = 223, + [224] = 224, + [225] = 225, }; static bool ts_lex(TSLexer *lexer, TSStateId state) { @@ -3380,7 +3420,7 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [137] = {.lex_state = 0}, [138] = {.lex_state = 0}, [139] = {.lex_state = 0}, - [140] = {.lex_state = 1}, + [140] = {.lex_state = 0}, [141] = {.lex_state = 0}, [142] = {.lex_state = 0}, [143] = {.lex_state = 0}, @@ -3405,16 +3445,16 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [162] = {.lex_state = 0}, [163] = {.lex_state = 0}, [164] = {.lex_state = 0}, - [165] = {.lex_state = 35}, + [165] = {.lex_state = 0}, [166] = {.lex_state = 0}, - [167] = {.lex_state = 5}, + [167] = {.lex_state = 0}, [168] = {.lex_state = 0}, [169] = {.lex_state = 0}, [170] = {.lex_state = 0}, [171] = {.lex_state = 0}, [172] = {.lex_state = 0}, [173] = {.lex_state = 0}, - [174] = {.lex_state = 10}, + [174] = {.lex_state = 0}, [175] = {.lex_state = 0}, [176] = {.lex_state = 0}, [177] = {.lex_state = 0}, @@ -3422,8 +3462,50 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [179] = {.lex_state = 0}, [180] = {.lex_state = 0}, [181] = {.lex_state = 0}, - [182] = {(TSStateId)(-1)}, - [183] = {(TSStateId)(-1)}, + [182] = {.lex_state = 0}, + [183] = {.lex_state = 0}, + [184] = {.lex_state = 0}, + [185] = {.lex_state = 0}, + [186] = {.lex_state = 0}, + [187] = {.lex_state = 0}, + [188] = {.lex_state = 0}, + [189] = {.lex_state = 0}, + [190] = {.lex_state = 0}, + [191] = {.lex_state = 0}, + [192] = {.lex_state = 0}, + [193] = {.lex_state = 0}, + [194] = {.lex_state = 0}, + [195] = {.lex_state = 0}, + [196] = {.lex_state = 0}, + [197] = {.lex_state = 0}, + [198] = {.lex_state = 0}, + [199] = {.lex_state = 0}, + [200] = {.lex_state = 0}, + [201] = {.lex_state = 0}, + [202] = {.lex_state = 0}, + [203] = {.lex_state = 0}, + [204] = {.lex_state = 35}, + [205] = {.lex_state = 0}, + [206] = {.lex_state = 0}, + [207] = {.lex_state = 0}, + [208] = {.lex_state = 5}, + [209] = {.lex_state = 0}, + [210] = {.lex_state = 0}, + [211] = {.lex_state = 0}, + [212] = {.lex_state = 0}, + [213] = {.lex_state = 0}, + [214] = {.lex_state = 1}, + [215] = {.lex_state = 10}, + [216] = {.lex_state = 0}, + [217] = {.lex_state = 0}, + [218] = {.lex_state = 0}, + [219] = {.lex_state = 0}, + [220] = {.lex_state = 0}, + [221] = {.lex_state = 0}, + [222] = {.lex_state = 0}, + [223] = {.lex_state = 0}, + [224] = {(TSStateId)(-1)}, + [225] = {(TSStateId)(-1)}, }; static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { @@ -3507,14 +3589,14 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_DQUOTE] = ACTIONS(1), }, [1] = { - [sym_source_file] = STATE(170), - [sym_statement] = STATE(104), - [sym__ddl_statement] = STATE(163), - [sym__create_statement] = STATE(162), - [sym_create_table] = STATE(141), + [sym_source_file] = STATE(202), + [sym_statement] = STATE(106), + [sym__ddl_statement] = STATE(222), + [sym__create_statement] = STATE(221), + [sym_create_table] = STATE(220), [sym_line_comment] = STATE(1), [sym_block_comment] = STATE(1), - [aux_sym_source_file_repeat1] = STATE(74), + [aux_sym_source_file_repeat1] = STATE(82), [ts_builtin_sym_end] = ACTIONS(7), [anon_sym_SEMI] = ACTIONS(9), [sym_keyword_create] = ACTIONS(11), @@ -3553,13 +3635,13 @@ static const uint16_t ts_small_parse_table[] = { aux_sym_keyword_timestamptz_token1, ACTIONS(41), 1, anon_sym_DQUOTE, - STATE(5), 1, + STATE(8), 1, sym_type, - STATE(23), 1, + STATE(31), 1, sym_keyword_varchar, - STATE(37), 1, + STATE(32), 1, sym_keyword_char, - STATE(66), 1, + STATE(74), 1, sym_identifier, ACTIONS(35), 2, sym_keyword_date, @@ -3567,17 +3649,17 @@ static const uint16_t ts_small_parse_table[] = { STATE(2), 2, sym_line_comment, sym_block_comment, - STATE(69), 2, + STATE(64), 2, sym_char, sym_varchar, + STATE(61), 3, + sym_double, + sym_decimal, + sym_numeric, STATE(68), 3, sym_keyword_time, sym_keyword_timestamp, sym_keyword_timestamptz, - STATE(71), 3, - sym_double, - sym_decimal, - sym_numeric, ACTIONS(19), 5, sym_keyword_xml, sym_keyword_uuid, @@ -3592,7 +3674,7 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_smallserial, sym_keyword_serial, sym_keyword_bigserial, - STATE(70), 7, + STATE(60), 7, sym__type_numeric, sym__type_character, sym__type_datetime, @@ -3700,97 +3782,89 @@ static const uint16_t ts_small_parse_table[] = { aux_sym_keyword_timestamp_token1, aux_sym_keyword_timestamptz_token1, sym__identifier, - [212] = 15, + [212] = 11, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(53), 1, - sym_keyword_not, + ACTIONS(51), 1, + anon_sym_LPAREN, ACTIONS(55), 1, - sym_keyword_null, + sym_keyword_on, ACTIONS(57), 1, - sym_keyword_constraint, - ACTIONS(59), 1, - sym_keyword_default, - ACTIONS(61), 1, - sym_keyword_unique, - ACTIONS(63), 1, - sym_keyword_primary, - ACTIONS(65), 1, - sym_keyword_references, - STATE(6), 1, - aux_sym_column_definition_repeat1, - STATE(59), 1, - sym__foreign_key_references, - STATE(60), 1, - sym_column_constraint, - ACTIONS(51), 2, - anon_sym_COMMA, - anon_sym_RPAREN, + sym_keyword_match, + STATE(7), 1, + sym_ref_column, + STATE(18), 1, + sym__foreign_key_match, + STATE(163), 1, + sym__foreign_key_on_update, + STATE(164), 1, + sym__foreign_key_on_delete, STATE(5), 2, sym_line_comment, sym_block_comment, - STATE(61), 3, - sym__unique_constraint, - sym__primary_key, - sym__not_null, - [262] = 15, + ACTIONS(53), 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, + [255] = 11, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(53), 1, - sym_keyword_not, + ACTIONS(51), 1, + anon_sym_LPAREN, ACTIONS(55), 1, - sym_keyword_null, + sym_keyword_on, ACTIONS(57), 1, - sym_keyword_constraint, - ACTIONS(59), 1, - sym_keyword_default, - ACTIONS(61), 1, - sym_keyword_unique, - ACTIONS(63), 1, - sym_keyword_primary, - ACTIONS(65), 1, - sym_keyword_references, - STATE(8), 1, - aux_sym_column_definition_repeat1, - STATE(59), 1, - sym__foreign_key_references, - STATE(60), 1, - sym_column_constraint, - ACTIONS(67), 2, - anon_sym_COMMA, - anon_sym_RPAREN, + sym_keyword_match, + STATE(10), 1, + sym_ref_column, + STATE(16), 1, + sym__foreign_key_match, + STATE(146), 1, + sym__foreign_key_on_delete, + STATE(147), 1, + sym__foreign_key_on_update, STATE(6), 2, sym_line_comment, sym_block_comment, - STATE(61), 3, - sym__unique_constraint, - sym__primary_key, - sym__not_null, - [312] = 10, + 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, + [298] = 9, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(69), 1, - anon_sym_LPAREN, - ACTIONS(73), 1, + ACTIONS(55), 1, sym_keyword_on, - ACTIONS(75), 1, + ACTIONS(57), 1, sym_keyword_match, - STATE(16), 1, + STATE(21), 1, sym__foreign_key_match, - STATE(132), 1, - sym__foreign_key_on_delete, - STATE(133), 1, + STATE(139), 1, sym__foreign_key_on_update, + STATE(140), 1, + sym__foreign_key_on_delete, STATE(7), 2, sym_line_comment, sym_block_comment, - ACTIONS(71), 9, + ACTIONS(61), 9, anon_sym_COMMA, anon_sym_RPAREN, sym_keyword_not, @@ -3800,83 +3874,89 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [352] = 14, + [335] = 14, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(79), 1, + ACTIONS(65), 1, sym_keyword_not, - ACTIONS(82), 1, + ACTIONS(67), 1, sym_keyword_null, - ACTIONS(85), 1, + ACTIONS(69), 1, sym_keyword_constraint, - ACTIONS(88), 1, + ACTIONS(71), 1, sym_keyword_default, - ACTIONS(91), 1, + ACTIONS(73), 1, sym_keyword_unique, - ACTIONS(94), 1, + ACTIONS(75), 1, sym_keyword_primary, - ACTIONS(97), 1, + ACTIONS(77), 1, sym_keyword_references, - STATE(59), 1, - sym__foreign_key_references, - STATE(60), 1, + STATE(11), 1, + aux_sym_column_definition_repeat1, + STATE(57), 1, sym_column_constraint, - ACTIONS(77), 2, + ACTIONS(63), 2, anon_sym_COMMA, anon_sym_RPAREN, - STATE(8), 3, + STATE(8), 2, sym_line_comment, sym_block_comment, - aux_sym_column_definition_repeat1, - STATE(61), 3, + STATE(43), 3, sym__unique_constraint, sym__primary_key, sym__not_null, - [400] = 9, + [382] = 13, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(73), 1, - sym_keyword_on, - ACTIONS(75), 1, - sym_keyword_match, - STATE(17), 1, - sym__foreign_key_match, - STATE(126), 1, - sym__foreign_key_on_delete, - STATE(127), 1, - sym__foreign_key_on_update, - STATE(9), 2, - sym_line_comment, - sym_block_comment, - ACTIONS(100), 9, + ACTIONS(81), 1, + sym_keyword_not, + ACTIONS(84), 1, + sym_keyword_null, + ACTIONS(87), 1, + sym_keyword_constraint, + ACTIONS(90), 1, + sym_keyword_default, + ACTIONS(93), 1, + sym_keyword_unique, + ACTIONS(96), 1, + sym_keyword_primary, + ACTIONS(99), 1, + sym_keyword_references, + STATE(57), 1, + sym_column_constraint, + ACTIONS(79), 2, 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, - [437] = 7, + STATE(9), 3, + sym_line_comment, + sym_block_comment, + aux_sym_column_definition_repeat1, + STATE(43), 3, + sym__unique_constraint, + sym__primary_key, + sym__not_null, + [427] = 9, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(104), 1, - aux_sym__without_time_zone_token1, - ACTIONS(106), 1, - aux_sym__with_time_zone_token1, + ACTIONS(55), 1, + sym_keyword_on, + ACTIONS(57), 1, + sym_keyword_match, + STATE(19), 1, + sym__foreign_key_match, + STATE(169), 1, + sym__foreign_key_on_delete, + STATE(170), 1, + sym__foreign_key_on_update, STATE(10), 2, sym_line_comment, sym_block_comment, - STATE(64), 2, - sym__without_time_zone, - sym__with_time_zone, ACTIONS(102), 9, anon_sym_COMMA, anon_sym_RPAREN, @@ -3887,76 +3967,56 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [469] = 8, + [464] = 14, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(104), 1, - aux_sym__without_time_zone_token1, - ACTIONS(106), 1, - aux_sym__with_time_zone_token1, - STATE(62), 1, - sym__with_time_zone, - STATE(63), 1, - sym__without_time_zone, + ACTIONS(65), 1, + sym_keyword_not, + ACTIONS(67), 1, + sym_keyword_null, + ACTIONS(69), 1, + sym_keyword_constraint, + ACTIONS(71), 1, + sym_keyword_default, + ACTIONS(73), 1, + sym_keyword_unique, + ACTIONS(75), 1, + sym_keyword_primary, + ACTIONS(77), 1, + sym_keyword_references, + STATE(9), 1, + aux_sym_column_definition_repeat1, + STATE(57), 1, + sym_column_constraint, + ACTIONS(104), 2, + anon_sym_COMMA, + anon_sym_RPAREN, STATE(11), 2, sym_line_comment, sym_block_comment, - ACTIONS(108), 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, - [503] = 14, + STATE(43), 3, + sym__unique_constraint, + sym__primary_key, + sym__not_null, + [511] = 8, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(13), 1, - sym__identifier, - ACTIONS(41), 1, - anon_sym_DQUOTE, + ACTIONS(108), 1, + aux_sym__without_time_zone_token1, ACTIONS(110), 1, - anon_sym_RPAREN, - ACTIONS(112), 1, - sym_keyword_constraint, - ACTIONS(114), 1, - sym_keyword_unique, - ACTIONS(116), 1, - sym_keyword_primary, - ACTIONS(118), 1, - sym_keyword_foreign, - STATE(2), 1, - sym_identifier, - STATE(112), 1, - sym__foreign_key, + aux_sym__with_time_zone_token1, + STATE(53), 1, + sym__without_time_zone, + STATE(71), 1, + sym__with_time_zone, STATE(12), 2, sym_line_comment, sym_block_comment, - STATE(102), 2, - sym_column_definition, - sym_table_constraint, - STATE(115), 2, - sym__unique_constraint, - sym__primary_key, - [549] = 5, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(122), 1, - anon_sym_DOT, - STATE(13), 2, - sym_line_comment, - sym_block_comment, - ACTIONS(120), 12, - anon_sym_LPAREN, + ACTIONS(106), 9, anon_sym_COMMA, anon_sym_RPAREN, sym_keyword_not, @@ -3966,9 +4026,7 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - sym_keyword_on, - sym_keyword_match, - [577] = 13, + [545] = 14, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, @@ -3978,35 +4036,39 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(41), 1, anon_sym_DQUOTE, ACTIONS(112), 1, - sym_keyword_constraint, + anon_sym_RPAREN, ACTIONS(114), 1, - sym_keyword_unique, + sym_keyword_constraint, ACTIONS(116), 1, - sym_keyword_primary, + sym_keyword_unique, ACTIONS(118), 1, + sym_keyword_primary, + ACTIONS(120), 1, sym_keyword_foreign, STATE(2), 1, sym_identifier, - STATE(112), 1, + STATE(179), 1, sym__foreign_key, - STATE(14), 2, + STATE(13), 2, sym_line_comment, sym_block_comment, - STATE(115), 2, - sym__unique_constraint, - sym__primary_key, - STATE(116), 2, + STATE(104), 2, sym_column_definition, sym_table_constraint, - [620] = 4, + STATE(178), 2, + sym__unique_constraint, + sym__primary_key, + [591] = 5, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - STATE(15), 2, + ACTIONS(124), 1, + anon_sym_DOT, + STATE(14), 2, sym_line_comment, sym_block_comment, - ACTIONS(124), 12, + ACTIONS(122), 12, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, @@ -4019,20 +4081,21 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_references, sym_keyword_on, sym_keyword_match, - [645] = 7, + [619] = 7, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(73), 1, - sym_keyword_on, - STATE(121), 1, - sym__foreign_key_on_update, - STATE(122), 1, - sym__foreign_key_on_delete, - STATE(16), 2, + ACTIONS(108), 1, + aux_sym__without_time_zone_token1, + ACTIONS(110), 1, + aux_sym__with_time_zone_token1, + STATE(15), 2, sym_line_comment, sym_block_comment, + STATE(54), 2, + sym__without_time_zone, + sym__with_time_zone, ACTIONS(126), 9, anon_sym_COMMA, anon_sym_RPAREN, @@ -4043,41 +4106,40 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [676] = 7, + [651] = 7, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(73), 1, + ACTIONS(55), 1, sym_keyword_on, - STATE(128), 1, + STATE(169), 1, sym__foreign_key_on_delete, - STATE(131), 1, + STATE(170), 1, sym__foreign_key_on_update, + STATE(16), 2, + sym_line_comment, + sym_block_comment, + ACTIONS(102), 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, + [682] = 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(128), 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] = 5, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(130), 1, + ACTIONS(128), 12, anon_sym_LPAREN, - STATE(18), 2, - sym_line_comment, - sym_block_comment, - ACTIONS(132), 10, anon_sym_COMMA, anon_sym_RPAREN, sym_keyword_not, @@ -4088,7 +4150,110 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_primary, sym_keyword_references, sym_keyword_on, - [733] = 6, + sym_keyword_match, + [707] = 7, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(55), 1, + sym_keyword_on, + STATE(139), 1, + sym__foreign_key_on_update, + STATE(140), 1, + sym__foreign_key_on_delete, + STATE(18), 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, + [738] = 7, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(55), 1, + sym_keyword_on, + STATE(159), 1, + sym__foreign_key_on_update, + STATE(161), 1, + sym__foreign_key_on_delete, + STATE(19), 2, + sym_line_comment, + sym_block_comment, + ACTIONS(130), 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, + [769] = 13, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(13), 1, + sym__identifier, + ACTIONS(41), 1, + anon_sym_DQUOTE, + ACTIONS(114), 1, + sym_keyword_constraint, + ACTIONS(116), 1, + sym_keyword_unique, + ACTIONS(118), 1, + sym_keyword_primary, + ACTIONS(120), 1, + sym_keyword_foreign, + STATE(2), 1, + sym_identifier, + STATE(179), 1, + sym__foreign_key, + STATE(20), 2, + sym_line_comment, + sym_block_comment, + STATE(150), 2, + sym_column_definition, + sym_table_constraint, + STATE(178), 2, + sym__unique_constraint, + sym__primary_key, + [812] = 7, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(55), 1, + sym_keyword_on, + STATE(129), 1, + sym__foreign_key_on_update, + STATE(130), 1, + sym__foreign_key_on_delete, + STATE(21), 2, + sym_line_comment, + sym_block_comment, + ACTIONS(132), 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, + [843] = 6, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, @@ -4097,7 +4262,7 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_null, ACTIONS(138), 1, sym_keyword_nulls, - STATE(19), 2, + STATE(22), 2, sym_line_comment, sym_block_comment, ACTIONS(134), 9, @@ -4110,60 +4275,15 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [761] = 11, + [871] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(53), 1, - sym_keyword_not, - ACTIONS(61), 1, - sym_keyword_unique, - ACTIONS(63), 1, - sym_keyword_primary, - ACTIONS(65), 1, - sym_keyword_references, - ACTIONS(140), 1, - sym_keyword_null, - ACTIONS(142), 1, - sym_keyword_default, - STATE(50), 1, - sym__foreign_key_references, - STATE(20), 2, + STATE(23), 2, sym_line_comment, sym_block_comment, - STATE(38), 3, - sym__unique_constraint, - sym__primary_key, - sym__not_null, - [798] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - STATE(21), 2, - sym_line_comment, - sym_block_comment, - ACTIONS(144), 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, - [821] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - STATE(22), 2, - sym_line_comment, - sym_block_comment, - ACTIONS(146), 10, + ACTIONS(140), 11, anon_sym_COMMA, anon_sym_RPAREN, sym_keyword_not, @@ -4174,17 +4294,18 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_primary, sym_keyword_references, sym_keyword_on, - [844] = 5, + sym_keyword_match, + [895] = 5, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(148), 1, + ACTIONS(142), 1, anon_sym_LPAREN, - STATE(23), 2, + STATE(24), 2, sym_line_comment, sym_block_comment, - ACTIONS(150), 9, + ACTIONS(144), 10, anon_sym_COMMA, anon_sym_RPAREN, sym_keyword_not, @@ -4194,12 +4315,52 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [869] = 4, + sym_keyword_on, + [921] = 5, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - STATE(24), 2, + ACTIONS(146), 1, + anon_sym_LPAREN, + STATE(25), 2, + sym_line_comment, + sym_block_comment, + ACTIONS(148), 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, + [946] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + STATE(26), 2, + sym_line_comment, + sym_block_comment, + ACTIONS(150), 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, + [969] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + STATE(27), 2, sym_line_comment, sym_block_comment, ACTIONS(152), 10, @@ -4213,34 +4374,15 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_primary, sym_keyword_references, sym_keyword_on, - [892] = 4, + [992] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - STATE(25), 2, + STATE(28), 2, sym_line_comment, sym_block_comment, ACTIONS(154), 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, - [915] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - STATE(26), 2, - sym_line_comment, - sym_block_comment, - ACTIONS(132), 10, anon_sym_COMMA, anon_sym_RPAREN, sym_keyword_not, @@ -4251,12 +4393,12 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_primary, sym_keyword_references, sym_keyword_on, - [938] = 4, + [1015] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - STATE(27), 2, + STATE(29), 2, sym_line_comment, sym_block_comment, ACTIONS(156), 10, @@ -4270,45 +4412,7 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [961] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - STATE(28), 2, - sym_line_comment, - sym_block_comment, - ACTIONS(159), 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, - [984] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - STATE(29), 2, - sym_line_comment, - sym_block_comment, - ACTIONS(161), 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, - [1007] = 4, + [1038] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, @@ -4316,26 +4420,7 @@ static const uint16_t ts_small_parse_table[] = { STATE(30), 2, sym_line_comment, sym_block_comment, - ACTIONS(163), 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, - [1030] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - STATE(31), 2, - sym_line_comment, - sym_block_comment, - ACTIONS(165), 10, + ACTIONS(158), 10, anon_sym_COMMA, anon_sym_RPAREN, sym_keyword_not, @@ -4346,17 +4431,17 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_primary, sym_keyword_references, sym_keyword_on, - [1053] = 5, + [1061] = 5, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(167), 1, + ACTIONS(160), 1, anon_sym_LPAREN, - STATE(32), 2, + STATE(31), 2, sym_line_comment, sym_block_comment, - ACTIONS(169), 9, + ACTIONS(162), 9, anon_sym_COMMA, anon_sym_RPAREN, sym_keyword_not, @@ -4366,7 +4451,27 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [1078] = 4, + [1086] = 5, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(164), 1, + anon_sym_LPAREN, + STATE(32), 2, + sym_line_comment, + sym_block_comment, + ACTIONS(166), 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, + [1111] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, @@ -4374,7 +4479,7 @@ static const uint16_t ts_small_parse_table[] = { STATE(33), 2, sym_line_comment, sym_block_comment, - ACTIONS(171), 10, + ACTIONS(168), 10, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, @@ -4385,17 +4490,16 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [1101] = 5, + [1134] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(173), 1, - anon_sym_LPAREN, STATE(34), 2, sym_line_comment, sym_block_comment, - ACTIONS(175), 9, + ACTIONS(170), 10, + anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, sym_keyword_not, @@ -4405,7 +4509,7 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [1126] = 4, + [1157] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, @@ -4413,7 +4517,8 @@ static const uint16_t ts_small_parse_table[] = { STATE(35), 2, sym_line_comment, sym_block_comment, - ACTIONS(177), 10, + ACTIONS(172), 10, + anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, sym_keyword_not, @@ -4423,8 +4528,7 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - sym_keyword_on, - [1149] = 4, + [1180] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, @@ -4432,7 +4536,7 @@ static const uint16_t ts_small_parse_table[] = { STATE(36), 2, sym_line_comment, sym_block_comment, - ACTIONS(179), 10, + ACTIONS(144), 10, anon_sym_COMMA, anon_sym_RPAREN, sym_keyword_not, @@ -4443,17 +4547,17 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_primary, sym_keyword_references, sym_keyword_on, - [1172] = 5, + [1203] = 5, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(181), 1, + ACTIONS(175), 1, anon_sym_LPAREN, STATE(37), 2, sym_line_comment, sym_block_comment, - ACTIONS(183), 9, + ACTIONS(177), 9, anon_sym_COMMA, anon_sym_RPAREN, sym_keyword_not, @@ -4463,7 +4567,7 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [1197] = 4, + [1228] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, @@ -4471,7 +4575,8 @@ static const uint16_t ts_small_parse_table[] = { STATE(38), 2, sym_line_comment, sym_block_comment, - ACTIONS(185), 9, + ACTIONS(179), 10, + anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, sym_keyword_not, @@ -4481,7 +4586,7 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [1219] = 4, + [1251] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, @@ -4489,6 +4594,81 @@ static const uint16_t ts_small_parse_table[] = { STATE(39), 2, sym_line_comment, sym_block_comment, + ACTIONS(181), 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, + [1274] = 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(183), 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, + [1297] = 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(185), 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, + [1320] = 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(130), 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, + [1342] = 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, anon_sym_COMMA, anon_sym_RPAREN, @@ -4499,12 +4679,12 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [1241] = 4, + [1364] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - STATE(40), 2, + STATE(44), 2, sym_line_comment, sym_block_comment, ACTIONS(189), 9, @@ -4517,12 +4697,12 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [1263] = 4, + [1386] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - STATE(41), 2, + STATE(45), 2, sym_line_comment, sym_block_comment, ACTIONS(191), 9, @@ -4535,48 +4715,37 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [1285] = 4, + [1408] = 11, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - STATE(42), 2, - sym_line_comment, - sym_block_comment, - ACTIONS(193), 9, + ACTIONS(55), 1, + sym_keyword_on, + ACTIONS(57), 1, + sym_keyword_match, + ACTIONS(193), 1, + anon_sym_LPAREN, + STATE(84), 1, + sym_column_list, + STATE(95), 1, + sym__foreign_key_match, + STATE(132), 1, + sym__foreign_key_on_delete, + STATE(133), 1, + sym__foreign_key_on_update, + ACTIONS(195), 2, 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, - [1307] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - STATE(43), 2, + STATE(46), 2, sym_line_comment, sym_block_comment, - ACTIONS(195), 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, - [1329] = 4, + [1444] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - STATE(44), 2, + STATE(47), 2, sym_line_comment, sym_block_comment, ACTIONS(197), 9, @@ -4589,12 +4758,12 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [1351] = 4, + [1466] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - STATE(45), 2, + STATE(48), 2, sym_line_comment, sym_block_comment, ACTIONS(199), 9, @@ -4607,12 +4776,12 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [1373] = 4, + [1488] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - STATE(46), 2, + STATE(49), 2, sym_line_comment, sym_block_comment, ACTIONS(201), 9, @@ -4625,12 +4794,12 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [1395] = 4, + [1510] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - STATE(47), 2, + STATE(50), 2, sym_line_comment, sym_block_comment, ACTIONS(203), 9, @@ -4643,12 +4812,12 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [1417] = 4, + [1532] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - STATE(48), 2, + STATE(51), 2, sym_line_comment, sym_block_comment, ACTIONS(205), 9, @@ -4661,12 +4830,12 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [1439] = 4, + [1554] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - STATE(49), 2, + STATE(52), 2, sym_line_comment, sym_block_comment, ACTIONS(207), 9, @@ -4679,12 +4848,12 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [1461] = 4, + [1576] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - STATE(50), 2, + STATE(53), 2, sym_line_comment, sym_block_comment, ACTIONS(209), 9, @@ -4697,12 +4866,12 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [1483] = 4, + [1598] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - STATE(51), 2, + STATE(54), 2, sym_line_comment, sym_block_comment, ACTIONS(211), 9, @@ -4715,12 +4884,12 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [1505] = 4, + [1620] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - STATE(52), 2, + STATE(55), 2, sym_line_comment, sym_block_comment, ACTIONS(213), 9, @@ -4733,12 +4902,12 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [1527] = 4, + [1642] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - STATE(53), 2, + STATE(56), 2, sym_line_comment, sym_block_comment, ACTIONS(215), 9, @@ -4751,12 +4920,12 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [1549] = 4, + [1664] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - STATE(54), 2, + STATE(57), 2, sym_line_comment, sym_block_comment, ACTIONS(217), 9, @@ -4769,12 +4938,30 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [1571] = 4, + [1686] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - STATE(55), 2, + STATE(58), 2, + sym_line_comment, + sym_block_comment, + ACTIONS(53), 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, + [1708] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + STATE(59), 2, sym_line_comment, sym_block_comment, ACTIONS(219), 9, @@ -4787,12 +4974,12 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [1593] = 4, + [1730] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - STATE(56), 2, + STATE(60), 2, sym_line_comment, sym_block_comment, ACTIONS(221), 9, @@ -4805,12 +4992,12 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [1615] = 4, + [1752] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - STATE(57), 2, + STATE(61), 2, sym_line_comment, sym_block_comment, ACTIONS(223), 9, @@ -4823,12 +5010,12 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [1637] = 4, + [1774] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - STATE(58), 2, + STATE(62), 2, sym_line_comment, sym_block_comment, ACTIONS(225), 9, @@ -4841,12 +5028,12 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [1659] = 4, + [1796] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - STATE(59), 2, + STATE(63), 2, sym_line_comment, sym_block_comment, ACTIONS(227), 9, @@ -4859,12 +5046,12 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [1681] = 4, + [1818] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - STATE(60), 2, + STATE(64), 2, sym_line_comment, sym_block_comment, ACTIONS(229), 9, @@ -4877,15 +5064,39 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [1703] = 4, + [1840] = 10, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - STATE(61), 2, + ACTIONS(65), 1, + sym_keyword_not, + ACTIONS(73), 1, + sym_keyword_unique, + ACTIONS(75), 1, + sym_keyword_primary, + ACTIONS(231), 1, + sym_keyword_null, + ACTIONS(233), 1, + sym_keyword_default, + ACTIONS(235), 1, + sym_keyword_references, + STATE(65), 2, sym_line_comment, sym_block_comment, - ACTIONS(231), 9, + STATE(56), 3, + sym__unique_constraint, + sym__primary_key, + sym__not_null, + [1874] = 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(132), 9, anon_sym_COMMA, anon_sym_RPAREN, sym_keyword_not, @@ -4895,48 +5106,12 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [1725] = 4, + [1896] = 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(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, - [1747] = 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(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, - [1769] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - STATE(64), 2, + STATE(67), 2, sym_line_comment, sym_block_comment, ACTIONS(237), 9, @@ -4949,12 +5124,12 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [1791] = 4, + [1918] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - STATE(65), 2, + STATE(68), 2, sym_line_comment, sym_block_comment, ACTIONS(239), 9, @@ -4967,12 +5142,12 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [1813] = 4, + [1940] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - STATE(66), 2, + STATE(69), 2, sym_line_comment, sym_block_comment, ACTIONS(241), 9, @@ -4985,12 +5160,12 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [1835] = 4, + [1962] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - STATE(67), 2, + STATE(70), 2, sym_line_comment, sym_block_comment, ACTIONS(243), 9, @@ -5003,12 +5178,12 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [1857] = 4, + [1984] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - STATE(68), 2, + STATE(71), 2, sym_line_comment, sym_block_comment, ACTIONS(245), 9, @@ -5021,12 +5196,12 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [1879] = 4, + [2006] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - STATE(69), 2, + STATE(72), 2, sym_line_comment, sym_block_comment, ACTIONS(247), 9, @@ -5039,12 +5214,12 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [1901] = 4, + [2028] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - STATE(70), 2, + STATE(73), 2, sym_line_comment, sym_block_comment, ACTIONS(249), 9, @@ -5057,12 +5232,12 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [1923] = 4, + [2050] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - STATE(71), 2, + STATE(74), 2, sym_line_comment, sym_block_comment, ACTIONS(251), 9, @@ -5075,49 +5250,151 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_unique, sym_keyword_primary, sym_keyword_references, - [1945] = 8, + [2072] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(255), 1, - anon_sym_SQUOTE, - STATE(54), 1, - sym_literal, - STATE(55), 1, - sym__expression, - STATE(56), 1, - sym_literal_string, - STATE(72), 2, + STATE(75), 2, sym_line_comment, sym_block_comment, - ACTIONS(253), 4, + ACTIONS(59), 9, + anon_sym_COMMA, + anon_sym_RPAREN, + sym_keyword_not, sym_keyword_null, - sym_keyword_true, - sym_keyword_false, - sym_number, - [1974] = 8, + sym_keyword_constraint, + sym_keyword_default, + sym_keyword_unique, + sym_keyword_primary, + sym_keyword_references, + [2094] = 11, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(255), 1, - anon_sym_SQUOTE, - STATE(46), 1, - sym__expression, - STATE(54), 1, - sym_literal, - STATE(56), 1, - sym_literal_string, - STATE(73), 2, + ACTIONS(55), 1, + sym_keyword_on, + ACTIONS(57), 1, + sym_keyword_match, + ACTIONS(193), 1, + anon_sym_LPAREN, + STATE(83), 1, + sym_column_list, + STATE(88), 1, + sym__foreign_key_match, + STATE(174), 1, + sym__foreign_key_on_delete, + STATE(175), 1, + sym__foreign_key_on_update, + ACTIONS(253), 2, + anon_sym_COMMA, + anon_sym_RPAREN, + STATE(76), 2, sym_line_comment, sym_block_comment, - ACTIONS(253), 4, + [2130] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + STATE(77), 2, + sym_line_comment, + sym_block_comment, + ACTIONS(255), 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, + [2152] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + STATE(78), 2, + sym_line_comment, + sym_block_comment, + ACTIONS(257), 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, + [2174] = 8, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(261), 1, + anon_sym_SQUOTE, + STATE(58), 1, + sym__expression, + STATE(72), 1, + sym_literal_string, + STATE(77), 1, + sym_literal, + STATE(79), 2, + sym_line_comment, + sym_block_comment, + ACTIONS(259), 4, sym_keyword_null, sym_keyword_true, sym_keyword_false, sym_number, - [2003] = 11, + [2203] = 10, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(263), 1, + ts_builtin_sym_end, + ACTIONS(265), 1, + anon_sym_SEMI, + ACTIONS(268), 1, + sym_keyword_create, + STATE(106), 1, + sym_statement, + STATE(220), 1, + sym_create_table, + STATE(221), 1, + sym__create_statement, + STATE(222), 1, + sym__ddl_statement, + STATE(80), 3, + sym_line_comment, + sym_block_comment, + aux_sym_source_file_repeat1, + [2236] = 8, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(261), 1, + anon_sym_SQUOTE, + STATE(72), 1, + sym_literal_string, + STATE(75), 1, + sym__expression, + STATE(77), 1, + sym_literal, + STATE(81), 2, + sym_line_comment, + sym_block_comment, + ACTIONS(259), 4, + sym_keyword_null, + sym_keyword_true, + sym_keyword_false, + sym_number, + [2265] = 11, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, @@ -5126,698 +5403,662 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_SEMI, ACTIONS(11), 1, sym_keyword_create, - ACTIONS(257), 1, - ts_builtin_sym_end, - STATE(75), 1, - aux_sym_source_file_repeat1, - STATE(104), 1, - sym_statement, - STATE(141), 1, - sym_create_table, - STATE(162), 1, - sym__create_statement, - STATE(163), 1, - sym__ddl_statement, - STATE(74), 2, - sym_line_comment, - sym_block_comment, - [2038] = 10, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(259), 1, - ts_builtin_sym_end, - ACTIONS(261), 1, - anon_sym_SEMI, - ACTIONS(264), 1, - sym_keyword_create, - STATE(104), 1, - sym_statement, - STATE(141), 1, - sym_create_table, - STATE(162), 1, - sym__create_statement, - STATE(163), 1, - sym__ddl_statement, - STATE(75), 3, - sym_line_comment, - sym_block_comment, - aux_sym_source_file_repeat1, - [2071] = 9, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(13), 1, - sym__identifier, - ACTIONS(41), 1, - anon_sym_DQUOTE, - ACTIONS(267), 1, - sym_keyword_if, - STATE(13), 1, - sym_identifier, - STATE(83), 1, - sym__if_not_exists, - STATE(108), 1, - sym_table_reference, - STATE(76), 2, - sym_line_comment, - sym_block_comment, - [2100] = 9, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(13), 1, - sym__identifier, - ACTIONS(41), 1, - anon_sym_DQUOTE, - ACTIONS(267), 1, - sym_keyword_if, - STATE(13), 1, - sym_identifier, - STATE(82), 1, - sym__if_not_exists, - STATE(139), 1, - sym_table_reference, - STATE(77), 2, - sym_line_comment, - sym_block_comment, - [2129] = 8, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(61), 1, - sym_keyword_unique, - ACTIONS(63), 1, - sym_keyword_primary, - ACTIONS(269), 1, - sym_keyword_foreign, - STATE(120), 1, - sym__foreign_key, - STATE(78), 2, - sym_line_comment, - sym_block_comment, - STATE(109), 2, - sym__unique_constraint, - sym__primary_key, - [2156] = 7, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, ACTIONS(271), 1, - sym_keyword_no, - ACTIONS(273), 1, - sym_keyword_set, - STATE(24), 1, - sym_referencial_action, - ACTIONS(275), 2, - sym_keyword_restrict, - sym_keyword_cascade, - STATE(79), 2, - sym_line_comment, - sym_block_comment, - [2180] = 7, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(271), 1, - sym_keyword_no, - ACTIONS(273), 1, - sym_keyword_set, - STATE(36), 1, - sym_referencial_action, - ACTIONS(275), 2, - sym_keyword_restrict, - sym_keyword_cascade, - STATE(80), 2, - sym_line_comment, - sym_block_comment, - [2204] = 8, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(277), 1, - sym_keyword_table, - ACTIONS(279), 1, - aux_sym_keyword_temporary_token1, - ACTIONS(281), 1, - aux_sym_keyword_temporary_token2, - ACTIONS(283), 1, - sym_keyword_unlogged, - STATE(166), 1, - sym_keyword_temporary, - STATE(81), 2, - sym_line_comment, - sym_block_comment, - [2230] = 7, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(41), 1, - anon_sym_DQUOTE, - ACTIONS(285), 1, - sym__identifier, - STATE(13), 1, - sym_identifier, - STATE(130), 1, - sym_table_reference, + ts_builtin_sym_end, + STATE(80), 1, + aux_sym_source_file_repeat1, + STATE(106), 1, + sym_statement, + STATE(220), 1, + sym_create_table, + STATE(221), 1, + sym__create_statement, + STATE(222), 1, + sym__ddl_statement, STATE(82), 2, sym_line_comment, sym_block_comment, - [2253] = 7, + [2300] = 9, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(41), 1, - anon_sym_DQUOTE, - ACTIONS(285), 1, - sym__identifier, - STATE(13), 1, - sym_identifier, - STATE(139), 1, - sym_table_reference, + ACTIONS(55), 1, + sym_keyword_on, + ACTIONS(57), 1, + sym_keyword_match, + STATE(92), 1, + sym__foreign_key_match, + STATE(151), 1, + sym__foreign_key_on_update, + STATE(154), 1, + sym__foreign_key_on_delete, + ACTIONS(273), 2, + anon_sym_COMMA, + anon_sym_RPAREN, STATE(83), 2, sym_line_comment, sym_block_comment, - [2276] = 7, + [2330] = 9, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(41), 1, - anon_sym_DQUOTE, - ACTIONS(285), 1, - sym__identifier, - STATE(7), 1, - sym_table_reference, - STATE(13), 1, - sym_identifier, + ACTIONS(55), 1, + sym_keyword_on, + ACTIONS(57), 1, + sym_keyword_match, + STATE(94), 1, + sym__foreign_key_match, + STATE(155), 1, + sym__foreign_key_on_delete, + STATE(156), 1, + sym__foreign_key_on_update, + ACTIONS(275), 2, + anon_sym_COMMA, + anon_sym_RPAREN, STATE(84), 2, sym_line_comment, sym_block_comment, - [2299] = 6, + [2360] = 9, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, + ACTIONS(13), 1, + sym__identifier, ACTIONS(41), 1, anon_sym_DQUOTE, - ACTIONS(285), 1, - sym__identifier, - STATE(125), 1, + ACTIONS(277), 1, + sym_keyword_if, + STATE(14), 1, sym_identifier, + STATE(99), 1, + sym__if_not_exists, + STATE(142), 1, + sym_table_reference, STATE(85), 2, sym_line_comment, sym_block_comment, - [2319] = 6, + [2389] = 9, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(287), 1, - anon_sym_COMMA, - ACTIONS(289), 1, - anon_sym_RPAREN, - STATE(100), 1, - aux_sym_column_list_repeat1, + ACTIONS(13), 1, + sym__identifier, + ACTIONS(41), 1, + anon_sym_DQUOTE, + ACTIONS(277), 1, + sym_keyword_if, + STATE(14), 1, + sym_identifier, + STATE(102), 1, + sym__if_not_exists, + STATE(162), 1, + sym_table_reference, STATE(86), 2, sym_line_comment, sym_block_comment, - [2339] = 6, + [2418] = 8, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(287), 1, - anon_sym_COMMA, - ACTIONS(291), 1, - anon_sym_RPAREN, - STATE(86), 1, - aux_sym_column_list_repeat1, + ACTIONS(73), 1, + sym_keyword_unique, + ACTIONS(75), 1, + sym_keyword_primary, + ACTIONS(279), 1, + sym_keyword_foreign, + STATE(152), 1, + sym__foreign_key, STATE(87), 2, sym_line_comment, sym_block_comment, - [2359] = 6, + STATE(153), 2, + sym__unique_constraint, + sym__primary_key, + [2445] = 7, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(41), 1, - anon_sym_DQUOTE, - ACTIONS(285), 1, - sym__identifier, - STATE(15), 1, - sym_identifier, + ACTIONS(55), 1, + sym_keyword_on, + STATE(144), 1, + sym__foreign_key_on_update, + STATE(149), 1, + sym__foreign_key_on_delete, + ACTIONS(281), 2, + anon_sym_COMMA, + anon_sym_RPAREN, STATE(88), 2, sym_line_comment, sym_block_comment, - [2379] = 6, + [2469] = 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(26), 1, + sym_referencial_action, + ACTIONS(287), 2, + sym_keyword_restrict, + sym_keyword_cascade, + STATE(89), 2, + sym_line_comment, + sym_block_comment, + [2493] = 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(41), 1, + sym_referencial_action, + ACTIONS(287), 2, + sym_keyword_restrict, + sym_keyword_cascade, + STATE(90), 2, + sym_line_comment, + sym_block_comment, + [2517] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + STATE(91), 2, + sym_line_comment, + sym_block_comment, + ACTIONS(289), 5, + anon_sym_COMMA, + anon_sym_RPAREN, + sym_keyword_references, + sym_keyword_on, + sym_keyword_match, + [2535] = 7, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(55), 1, + sym_keyword_on, + STATE(136), 1, + sym__foreign_key_on_update, + STATE(137), 1, + sym__foreign_key_on_delete, + ACTIONS(291), 2, + anon_sym_COMMA, + anon_sym_RPAREN, + STATE(92), 2, + sym_line_comment, + sym_block_comment, + [2559] = 8, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(293), 1, - anon_sym_COMMA, + sym_keyword_table, ACTIONS(295), 1, - anon_sym_RPAREN, - STATE(105), 1, - aux_sym_column_definitions_repeat1, - STATE(89), 2, - sym_line_comment, - sym_block_comment, - [2399] = 6, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(41), 1, - anon_sym_DQUOTE, - ACTIONS(285), 1, - sym__identifier, - STATE(87), 1, - sym_identifier, - STATE(90), 2, - sym_line_comment, - sym_block_comment, - [2419] = 6, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(41), 1, - anon_sym_DQUOTE, - ACTIONS(285), 1, - sym__identifier, - STATE(78), 1, - sym_identifier, - STATE(91), 2, - sym_line_comment, - sym_block_comment, - [2439] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - STATE(92), 2, - sym_line_comment, - sym_block_comment, - ACTIONS(297), 3, - ts_builtin_sym_end, - anon_sym_SEMI, - sym_keyword_create, - [2455] = 6, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(41), 1, - anon_sym_DQUOTE, - ACTIONS(285), 1, - sym__identifier, - STATE(118), 1, - sym_identifier, + aux_sym_keyword_temporary_token1, + ACTIONS(297), 1, + aux_sym_keyword_temporary_token2, + ACTIONS(299), 1, + sym_keyword_unlogged, + STATE(213), 1, + sym_keyword_temporary, STATE(93), 2, sym_line_comment, sym_block_comment, - [2475] = 6, + [2585] = 7, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(299), 1, + ACTIONS(55), 1, + sym_keyword_on, + STATE(171), 1, + sym__foreign_key_on_update, + STATE(176), 1, + sym__foreign_key_on_delete, + ACTIONS(301), 2, anon_sym_COMMA, - ACTIONS(301), 1, anon_sym_RPAREN, - STATE(106), 1, - aux_sym_referencial_action_repeat1, STATE(94), 2, sym_line_comment, sym_block_comment, - [2495] = 6, + [2609] = 7, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(41), 1, - anon_sym_DQUOTE, - ACTIONS(285), 1, - sym__identifier, - STATE(94), 1, - sym_identifier, + ACTIONS(55), 1, + sym_keyword_on, + STATE(157), 1, + sym__foreign_key_on_delete, + STATE(158), 1, + sym__foreign_key_on_update, + ACTIONS(303), 2, + anon_sym_COMMA, + anon_sym_RPAREN, STATE(95), 2, sym_line_comment, sym_block_comment, - [2515] = 5, + [2633] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(303), 1, + STATE(96), 2, + sym_line_comment, + sym_block_comment, + ACTIONS(305), 5, anon_sym_COMMA, - ACTIONS(306), 1, anon_sym_RPAREN, - STATE(96), 3, - sym_line_comment, - sym_block_comment, - aux_sym_referencial_action_repeat1, - [2533] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - STATE(97), 2, - sym_line_comment, - sym_block_comment, - ACTIONS(308), 3, - sym_keyword_full, - sym_keyword_partial, - sym_keyword_simple, - [2549] = 6, + sym_keyword_references, + sym_keyword_on, + sym_keyword_match, + [2651] = 7, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(41), 1, anon_sym_DQUOTE, - ACTIONS(285), 1, + ACTIONS(307), 1, sym__identifier, - STATE(20), 1, + STATE(14), 1, + sym_identifier, + STATE(76), 1, + sym_table_reference, + STATE(97), 2, + sym_line_comment, + sym_block_comment, + [2674] = 7, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(41), 1, + anon_sym_DQUOTE, + ACTIONS(307), 1, + sym__identifier, + STATE(5), 1, + sym_table_reference, + STATE(14), 1, sym_identifier, STATE(98), 2, sym_line_comment, sym_block_comment, - [2569] = 6, + [2697] = 7, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(41), 1, anon_sym_DQUOTE, - ACTIONS(285), 1, + ACTIONS(307), 1, sym__identifier, - STATE(145), 1, + STATE(14), 1, sym_identifier, + STATE(162), 1, + sym_table_reference, STATE(99), 2, sym_line_comment, sym_block_comment, - [2589] = 5, + [2720] = 7, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(310), 1, - anon_sym_COMMA, - ACTIONS(313), 1, - anon_sym_RPAREN, - STATE(100), 3, + ACTIONS(41), 1, + anon_sym_DQUOTE, + ACTIONS(307), 1, + sym__identifier, + STATE(14), 1, + sym_identifier, + STATE(46), 1, + sym_table_reference, + STATE(100), 2, sym_line_comment, sym_block_comment, - aux_sym_column_list_repeat1, - [2607] = 4, + [2743] = 7, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, + ACTIONS(41), 1, + anon_sym_DQUOTE, + ACTIONS(307), 1, + sym__identifier, + STATE(6), 1, + sym_table_reference, + STATE(14), 1, + sym_identifier, STATE(101), 2, sym_line_comment, sym_block_comment, - ACTIONS(315), 3, - anon_sym_COMMA, - anon_sym_RPAREN, - sym_keyword_references, - [2623] = 6, + [2766] = 7, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(293), 1, - anon_sym_COMMA, - ACTIONS(317), 1, - anon_sym_RPAREN, - STATE(89), 1, - aux_sym_column_definitions_repeat1, + ACTIONS(41), 1, + anon_sym_DQUOTE, + ACTIONS(307), 1, + sym__identifier, + STATE(14), 1, + sym_identifier, + STATE(173), 1, + sym_table_reference, STATE(102), 2, sym_line_comment, sym_block_comment, - [2643] = 4, + [2789] = 5, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - STATE(103), 2, + ACTIONS(309), 1, + anon_sym_COMMA, + ACTIONS(312), 1, + anon_sym_RPAREN, + STATE(103), 3, sym_line_comment, sym_block_comment, - ACTIONS(319), 3, - ts_builtin_sym_end, - anon_sym_SEMI, - sym_keyword_create, - [2659] = 4, + aux_sym_referencial_action_repeat1, + [2807] = 6, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, + ACTIONS(314), 1, + anon_sym_COMMA, + ACTIONS(316), 1, + anon_sym_RPAREN, + STATE(109), 1, + aux_sym_column_definitions_repeat1, STATE(104), 2, sym_line_comment, sym_block_comment, - ACTIONS(321), 3, - ts_builtin_sym_end, - anon_sym_SEMI, - sym_keyword_create, - [2675] = 5, + [2827] = 6, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(323), 1, - anon_sym_COMMA, - ACTIONS(326), 1, - anon_sym_RPAREN, - STATE(105), 3, + ACTIONS(41), 1, + anon_sym_DQUOTE, + ACTIONS(307), 1, + sym__identifier, + STATE(143), 1, + sym_identifier, + STATE(105), 2, sym_line_comment, sym_block_comment, - aux_sym_column_definitions_repeat1, - [2693] = 6, + [2847] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(299), 1, - anon_sym_COMMA, - ACTIONS(328), 1, - anon_sym_RPAREN, - STATE(96), 1, - aux_sym_referencial_action_repeat1, STATE(106), 2, sym_line_comment, sym_block_comment, - [2713] = 4, + ACTIONS(318), 3, + ts_builtin_sym_end, + anon_sym_SEMI, + sym_keyword_create, + [2863] = 6, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, + ACTIONS(320), 1, + anon_sym_COMMA, + ACTIONS(322), 1, + anon_sym_RPAREN, + STATE(123), 1, + aux_sym_column_list_repeat1, STATE(107), 2, sym_line_comment, sym_block_comment, - ACTIONS(330), 3, - anon_sym_COMMA, - anon_sym_RPAREN, - sym_keyword_references, - [2729] = 5, + [2883] = 6, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(332), 1, - anon_sym_LPAREN, - STATE(152), 1, - sym_column_definitions, + ACTIONS(41), 1, + anon_sym_DQUOTE, + ACTIONS(307), 1, + sym__identifier, + STATE(87), 1, + sym_identifier, STATE(108), 2, sym_line_comment, sym_block_comment, - [2746] = 5, + [2903] = 6, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(334), 1, - anon_sym_LPAREN, - STATE(123), 1, - sym_column_list, + ACTIONS(314), 1, + anon_sym_COMMA, + ACTIONS(324), 1, + anon_sym_RPAREN, + STATE(122), 1, + aux_sym_column_definitions_repeat1, STATE(109), 2, sym_line_comment, sym_block_comment, - [2763] = 5, + [2923] = 6, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(65), 1, - sym_keyword_references, - STATE(124), 1, - sym__foreign_key_references, + ACTIONS(41), 1, + anon_sym_DQUOTE, + ACTIONS(307), 1, + sym__identifier, + STATE(120), 1, + sym_identifier, STATE(110), 2, sym_line_comment, sym_block_comment, - [2780] = 5, + [2943] = 6, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(65), 1, - sym_keyword_references, - STATE(117), 1, - sym__foreign_key_references, + ACTIONS(41), 1, + anon_sym_DQUOTE, + ACTIONS(307), 1, + sym__identifier, + STATE(17), 1, + sym_identifier, STATE(111), 2, sym_line_comment, sym_block_comment, - [2797] = 5, + [2963] = 6, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(334), 1, - anon_sym_LPAREN, - STATE(111), 1, - sym_column_list, + ACTIONS(326), 1, + anon_sym_COMMA, + ACTIONS(328), 1, + anon_sym_RPAREN, + STATE(103), 1, + aux_sym_referencial_action_repeat1, STATE(112), 2, sym_line_comment, sym_block_comment, - [2814] = 5, + [2983] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(336), 1, - anon_sym_COMMA, - ACTIONS(338), 1, - anon_sym_RPAREN, STATE(113), 2, sym_line_comment, sym_block_comment, - [2831] = 5, + ACTIONS(330), 3, + sym_keyword_full, + sym_keyword_partial, + sym_keyword_simple, + [2999] = 6, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(41), 1, + anon_sym_DQUOTE, + ACTIONS(307), 1, + sym__identifier, + STATE(65), 1, + sym_identifier, + STATE(114), 2, + sym_line_comment, + sym_block_comment, + [3019] = 6, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(41), 1, + anon_sym_DQUOTE, + ACTIONS(307), 1, + sym__identifier, + STATE(126), 1, + sym_identifier, + STATE(115), 2, + sym_line_comment, + sym_block_comment, + [3039] = 6, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(326), 1, + anon_sym_COMMA, + ACTIONS(332), 1, + anon_sym_RPAREN, + STATE(112), 1, + aux_sym_referencial_action_repeat1, + STATE(116), 2, + sym_line_comment, + sym_block_comment, + [3059] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + STATE(117), 2, + sym_line_comment, + sym_block_comment, + ACTIONS(334), 3, + ts_builtin_sym_end, + anon_sym_SEMI, + sym_keyword_create, + [3075] = 6, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(41), 1, + anon_sym_DQUOTE, + ACTIONS(307), 1, + sym__identifier, + STATE(116), 1, + sym_identifier, + STATE(118), 2, + sym_line_comment, + sym_block_comment, + [3095] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + STATE(119), 2, + sym_line_comment, + sym_block_comment, + ACTIONS(336), 3, + ts_builtin_sym_end, + anon_sym_SEMI, + sym_keyword_create, + [3111] = 6, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(320), 1, + anon_sym_COMMA, + ACTIONS(338), 1, + anon_sym_RPAREN, + STATE(107), 1, + aux_sym_column_list_repeat1, + STATE(120), 2, + sym_line_comment, + sym_block_comment, + [3131] = 6, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(41), 1, + anon_sym_DQUOTE, + ACTIONS(307), 1, + sym__identifier, + STATE(184), 1, + sym_identifier, + STATE(121), 2, + sym_line_comment, + sym_block_comment, + [3151] = 5, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(340), 1, anon_sym_COMMA, - ACTIONS(342), 1, + ACTIONS(343), 1, anon_sym_RPAREN, - STATE(114), 2, + STATE(122), 3, sym_line_comment, sym_block_comment, - [2848] = 5, + aux_sym_column_definitions_repeat1, + [3169] = 5, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(334), 1, - anon_sym_LPAREN, - STATE(137), 1, - sym_column_list, - STATE(115), 2, - sym_line_comment, - sym_block_comment, - [2865] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(326), 2, + ACTIONS(345), 1, anon_sym_COMMA, - anon_sym_RPAREN, - STATE(116), 2, - sym_line_comment, - sym_block_comment, - [2880] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(344), 2, - anon_sym_COMMA, - anon_sym_RPAREN, - STATE(117), 2, - sym_line_comment, - sym_block_comment, - [2895] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(306), 2, - anon_sym_COMMA, - anon_sym_RPAREN, - STATE(118), 2, - sym_line_comment, - sym_block_comment, - [2910] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(346), 2, - sym_keyword_null, - sym_keyword_default, - STATE(119), 2, - sym_line_comment, - sym_block_comment, - [2925] = 5, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(334), 1, - anon_sym_LPAREN, - STATE(110), 1, - sym_column_list, - STATE(120), 2, - sym_line_comment, - sym_block_comment, - [2942] = 5, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, ACTIONS(348), 1, - sym_keyword_on, - STATE(44), 1, - sym__foreign_key_on_delete, - STATE(121), 2, + anon_sym_RPAREN, + STATE(123), 3, sym_line_comment, sym_block_comment, - [2959] = 5, + aux_sym_column_list_repeat1, + [3187] = 5, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(350), 1, - sym_keyword_on, - STATE(44), 1, - sym__foreign_key_on_update, - STATE(122), 2, - sym_line_comment, - sym_block_comment, - [2976] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(352), 2, anon_sym_COMMA, + ACTIONS(352), 1, anon_sym_RPAREN, - STATE(123), 2, + STATE(124), 2, sym_line_comment, sym_block_comment, - [2991] = 4, + [3204] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, @@ -5825,10 +6066,21 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(354), 2, anon_sym_COMMA, anon_sym_RPAREN, - STATE(124), 2, + STATE(125), 2, sym_line_comment, sym_block_comment, - [3006] = 4, + [3219] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(312), 2, + anon_sym_COMMA, + anon_sym_RPAREN, + STATE(126), 2, + sym_line_comment, + sym_block_comment, + [3234] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, @@ -5836,46 +6088,10 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(356), 2, anon_sym_COMMA, anon_sym_RPAREN, - STATE(125), 2, - sym_line_comment, - sym_block_comment, - [3021] = 5, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(350), 1, - sym_keyword_on, - STATE(41), 1, - sym__foreign_key_on_update, - STATE(126), 2, - sym_line_comment, - sym_block_comment, - [3038] = 5, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(348), 1, - sym_keyword_on, - STATE(41), 1, - sym__foreign_key_on_delete, STATE(127), 2, sym_line_comment, sym_block_comment, - [3055] = 5, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(350), 1, - sym_keyword_on, - STATE(40), 1, - sym__foreign_key_on_update, - STATE(128), 2, - sym_line_comment, - sym_block_comment, - [3072] = 5, + [3249] = 5, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, @@ -5884,93 +6100,70 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_delete, ACTIONS(360), 1, sym_keyword_update, - STATE(129), 2, + STATE(128), 2, sym_line_comment, sym_block_comment, - [3089] = 5, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(332), 1, - anon_sym_LPAREN, - STATE(147), 1, - sym_column_definitions, - STATE(130), 2, - sym_line_comment, - sym_block_comment, - [3106] = 5, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(348), 1, - sym_keyword_on, - STATE(40), 1, - sym__foreign_key_on_delete, - STATE(131), 2, - sym_line_comment, - sym_block_comment, - [3123] = 5, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(350), 1, - sym_keyword_on, - STATE(47), 1, - sym__foreign_key_on_update, - STATE(132), 2, - sym_line_comment, - sym_block_comment, - [3140] = 5, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(348), 1, - sym_keyword_on, - STATE(47), 1, - sym__foreign_key_on_delete, - STATE(133), 2, - sym_line_comment, - sym_block_comment, - [3157] = 5, + [3266] = 5, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(362), 1, - sym_keyword_not, + sym_keyword_on, + STATE(51), 1, + sym__foreign_key_on_delete, + STATE(129), 2, + sym_line_comment, + sym_block_comment, + [3283] = 5, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, ACTIONS(364), 1, - sym_keyword_distinct, - STATE(134), 2, + sym_keyword_on, + STATE(51), 1, + sym__foreign_key_on_update, + STATE(130), 2, sym_line_comment, sym_block_comment, - [3174] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(366), 2, - anon_sym_DQUOTE, - sym__identifier, - STATE(135), 2, - sym_line_comment, - sym_block_comment, - [3189] = 5, + [3300] = 5, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, + ACTIONS(366), 1, + anon_sym_COMMA, ACTIONS(368), 1, - aux_sym__keyword_time_zone_token1, - STATE(39), 1, - sym__keyword_time_zone, - STATE(136), 2, + anon_sym_RPAREN, + STATE(131), 2, sym_line_comment, sym_block_comment, - [3206] = 4, + [3317] = 5, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(364), 1, + sym_keyword_on, + STATE(160), 1, + sym__foreign_key_on_update, + STATE(132), 2, + sym_line_comment, + sym_block_comment, + [3334] = 5, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(362), 1, + sym_keyword_on, + STATE(160), 1, + sym__foreign_key_on_delete, + STATE(133), 2, + sym_line_comment, + sym_block_comment, + [3351] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, @@ -5978,458 +6171,983 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(370), 2, anon_sym_COMMA, anon_sym_RPAREN, + STATE(134), 2, + sym_line_comment, + sym_block_comment, + [3366] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(372), 2, + anon_sym_COMMA, + anon_sym_RPAREN, + STATE(135), 2, + sym_line_comment, + sym_block_comment, + [3381] = 5, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(362), 1, + sym_keyword_on, + STATE(127), 1, + sym__foreign_key_on_delete, + STATE(136), 2, + sym_line_comment, + sym_block_comment, + [3398] = 5, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(364), 1, + sym_keyword_on, + STATE(127), 1, + sym__foreign_key_on_update, STATE(137), 2, sym_line_comment, sym_block_comment, - [3221] = 5, + [3415] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(368), 1, - aux_sym__keyword_time_zone_token1, - STATE(58), 1, - sym__keyword_time_zone, + ACTIONS(374), 2, + anon_sym_COMMA, + anon_sym_RPAREN, STATE(138), 2, sym_line_comment, sym_block_comment, - [3238] = 5, + [3430] = 5, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(332), 1, - anon_sym_LPAREN, - STATE(173), 1, - sym_column_definitions, + ACTIONS(362), 1, + sym_keyword_on, + STATE(59), 1, + sym__foreign_key_on_delete, STATE(139), 2, sym_line_comment, sym_block_comment, - [3255] = 4, - ACTIONS(372), 1, + [3447] = 5, + ACTIONS(3), 1, anon_sym_DASH_DASH, - ACTIONS(374), 1, - aux_sym_line_comment_token1, - ACTIONS(376), 1, + ACTIONS(5), 1, anon_sym_SLASH_STAR, + ACTIONS(364), 1, + sym_keyword_on, + STATE(59), 1, + sym__foreign_key_on_update, STATE(140), 2, sym_line_comment, sym_block_comment, - [3269] = 4, + [3464] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(376), 2, + anon_sym_COMMA, + anon_sym_RPAREN, + STATE(141), 2, + sym_line_comment, + sym_block_comment, + [3479] = 5, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(378), 1, - anon_sym_SEMI, - STATE(141), 2, + anon_sym_LPAREN, + STATE(194), 1, + sym_column_definitions, + STATE(142), 2, sym_line_comment, sym_block_comment, - [3283] = 4, + [3496] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(380), 1, - anon_sym_SQUOTE, - STATE(142), 2, + ACTIONS(380), 2, + anon_sym_COMMA, + anon_sym_RPAREN, + STATE(143), 2, sym_line_comment, sym_block_comment, - [3297] = 4, + [3511] = 5, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(362), 1, + sym_keyword_on, + STATE(134), 1, + sym__foreign_key_on_delete, + STATE(144), 2, + sym_line_comment, + sym_block_comment, + [3528] = 5, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(382), 1, - sym_number, - STATE(143), 2, - sym_line_comment, - sym_block_comment, - [3311] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(384), 1, - anon_sym_SLASH, - STATE(144), 2, - sym_line_comment, - sym_block_comment, - [3325] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(386), 1, - anon_sym_RPAREN, + aux_sym__keyword_time_zone_token1, + STATE(63), 1, + sym__keyword_time_zone, STATE(145), 2, sym_line_comment, sym_block_comment, - [3339] = 4, + [3545] = 5, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(388), 1, - anon_sym_SEMI, + ACTIONS(364), 1, + sym_keyword_on, + STATE(42), 1, + sym__foreign_key_on_update, STATE(146), 2, sym_line_comment, sym_block_comment, - [3353] = 4, + [3562] = 5, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(390), 1, - anon_sym_SEMI, + ACTIONS(362), 1, + sym_keyword_on, + STATE(42), 1, + sym__foreign_key_on_delete, STATE(147), 2, sym_line_comment, sym_block_comment, - [3367] = 4, + [3579] = 5, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(392), 1, - sym_keyword_distinct, + ACTIONS(382), 1, + aux_sym__keyword_time_zone_token1, + STATE(45), 1, + sym__keyword_time_zone, STATE(148), 2, sym_line_comment, sym_block_comment, - [3381] = 4, + [3596] = 5, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(364), 1, + sym_keyword_on, + STATE(134), 1, + sym__foreign_key_on_update, + STATE(149), 2, + sym_line_comment, + sym_block_comment, + [3613] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(343), 2, + anon_sym_COMMA, + anon_sym_RPAREN, + STATE(150), 2, + sym_line_comment, + sym_block_comment, + [3628] = 5, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(362), 1, + sym_keyword_on, + STATE(135), 1, + sym__foreign_key_on_delete, + STATE(151), 2, + sym_line_comment, + sym_block_comment, + [3645] = 5, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(193), 1, + anon_sym_LPAREN, + STATE(210), 1, + sym_column_list, + STATE(152), 2, + sym_line_comment, + sym_block_comment, + [3662] = 5, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(193), 1, + anon_sym_LPAREN, + STATE(138), 1, + sym_column_list, + STATE(153), 2, + sym_line_comment, + sym_block_comment, + [3679] = 5, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(364), 1, + sym_keyword_on, + STATE(135), 1, + sym__foreign_key_on_update, + STATE(154), 2, + sym_line_comment, + sym_block_comment, + [3696] = 5, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(364), 1, + sym_keyword_on, + STATE(168), 1, + sym__foreign_key_on_update, + STATE(155), 2, + sym_line_comment, + sym_block_comment, + [3713] = 5, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(362), 1, + sym_keyword_on, + STATE(168), 1, + sym__foreign_key_on_delete, + STATE(156), 2, + sym_line_comment, + sym_block_comment, + [3730] = 5, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(364), 1, + sym_keyword_on, + STATE(167), 1, + sym__foreign_key_on_update, + STATE(157), 2, + sym_line_comment, + sym_block_comment, + [3747] = 5, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(362), 1, + sym_keyword_on, + STATE(167), 1, + sym__foreign_key_on_delete, + STATE(158), 2, + sym_line_comment, + sym_block_comment, + [3764] = 5, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(362), 1, + sym_keyword_on, + STATE(73), 1, + sym__foreign_key_on_delete, + STATE(159), 2, + sym_line_comment, + sym_block_comment, + [3781] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(384), 2, + anon_sym_COMMA, + anon_sym_RPAREN, + STATE(160), 2, + sym_line_comment, + sym_block_comment, + [3796] = 5, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(364), 1, + sym_keyword_on, + STATE(73), 1, + sym__foreign_key_on_update, + STATE(161), 2, + sym_line_comment, + sym_block_comment, + [3813] = 5, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(378), 1, + anon_sym_LPAREN, + STATE(219), 1, + sym_column_definitions, + STATE(162), 2, + sym_line_comment, + sym_block_comment, + [3830] = 5, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(362), 1, + sym_keyword_on, + STATE(66), 1, + sym__foreign_key_on_delete, + STATE(163), 2, + sym_line_comment, + sym_block_comment, + [3847] = 5, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(364), 1, + sym_keyword_on, + STATE(66), 1, + sym__foreign_key_on_update, + STATE(164), 2, + sym_line_comment, + sym_block_comment, + [3864] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(386), 2, + anon_sym_DQUOTE, + sym__identifier, + STATE(165), 2, + sym_line_comment, + sym_block_comment, + [3879] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(388), 2, + anon_sym_COMMA, + anon_sym_RPAREN, + STATE(166), 2, + sym_line_comment, + sym_block_comment, + [3894] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(390), 2, + anon_sym_COMMA, + anon_sym_RPAREN, + STATE(167), 2, + sym_line_comment, + sym_block_comment, + [3909] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(392), 2, + anon_sym_COMMA, + anon_sym_RPAREN, + STATE(168), 2, + sym_line_comment, + sym_block_comment, + [3924] = 5, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(364), 1, + sym_keyword_on, + STATE(44), 1, + sym__foreign_key_on_update, + STATE(169), 2, + sym_line_comment, + sym_block_comment, + [3941] = 5, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(362), 1, + sym_keyword_on, + STATE(44), 1, + sym__foreign_key_on_delete, + STATE(170), 2, + sym_line_comment, + sym_block_comment, + [3958] = 5, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(362), 1, + sym_keyword_on, + STATE(141), 1, + sym__foreign_key_on_delete, + STATE(171), 2, + sym_line_comment, + sym_block_comment, + [3975] = 5, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(394), 1, - anon_sym_RPAREN, - STATE(149), 2, - sym_line_comment, - sym_block_comment, - [3395] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, + sym_keyword_not, ACTIONS(396), 1, - anon_sym_RPAREN, - STATE(150), 2, + sym_keyword_distinct, + STATE(172), 2, sym_line_comment, sym_block_comment, - [3409] = 4, + [3992] = 5, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(360), 1, - sym_keyword_update, - STATE(151), 2, + ACTIONS(378), 1, + anon_sym_LPAREN, + STATE(196), 1, + sym_column_definitions, + STATE(173), 2, sym_line_comment, sym_block_comment, - [3423] = 4, + [4009] = 5, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(398), 1, + ACTIONS(364), 1, + sym_keyword_on, + STATE(125), 1, + sym__foreign_key_on_update, + STATE(174), 2, + sym_line_comment, + sym_block_comment, + [4026] = 5, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(362), 1, + sym_keyword_on, + STATE(125), 1, + sym__foreign_key_on_delete, + STATE(175), 2, + sym_line_comment, + sym_block_comment, + [4043] = 5, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(364), 1, + sym_keyword_on, + STATE(141), 1, + sym__foreign_key_on_update, + STATE(176), 2, + sym_line_comment, + sym_block_comment, + [4060] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(398), 2, + sym_keyword_null, + sym_keyword_default, + STATE(177), 2, + sym_line_comment, + sym_block_comment, + [4075] = 5, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(193), 1, + anon_sym_LPAREN, + STATE(166), 1, + sym_column_list, + STATE(178), 2, + sym_line_comment, + sym_block_comment, + [4092] = 5, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(193), 1, + anon_sym_LPAREN, + STATE(188), 1, + sym_column_list, + STATE(179), 2, + sym_line_comment, + sym_block_comment, + [4109] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(400), 1, + anon_sym_SQUOTE, + STATE(180), 2, + sym_line_comment, + sym_block_comment, + [4123] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(402), 1, + sym_keyword_key, + STATE(181), 2, + sym_line_comment, + sym_block_comment, + [4137] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(404), 1, + anon_sym_LPAREN, + STATE(182), 2, + sym_line_comment, + sym_block_comment, + [4151] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(406), 1, anon_sym_SEMI, - STATE(152), 2, + STATE(183), 2, sym_line_comment, sym_block_comment, - [3437] = 4, + [4165] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(408), 1, + anon_sym_RPAREN, + STATE(184), 2, + sym_line_comment, + sym_block_comment, + [4179] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(410), 1, + sym_keyword_key, + STATE(185), 2, + sym_line_comment, + sym_block_comment, + [4193] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(412), 1, + sym_keyword_null, + STATE(186), 2, + sym_line_comment, + sym_block_comment, + [4207] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(414), 1, + anon_sym_SEMI, + STATE(187), 2, + sym_line_comment, + sym_block_comment, + [4221] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(416), 1, + sym_keyword_references, + STATE(188), 2, + sym_line_comment, + sym_block_comment, + [4235] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(418), 1, + aux_sym_double_token2, + STATE(189), 2, + sym_line_comment, + sym_block_comment, + [4249] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(420), 1, + anon_sym_RPAREN, + STATE(190), 2, + sym_line_comment, + sym_block_comment, + [4263] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(422), 1, + anon_sym_RPAREN, + STATE(191), 2, + sym_line_comment, + sym_block_comment, + [4277] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(358), 1, sym_keyword_delete, - STATE(153), 2, + STATE(192), 2, sym_line_comment, sym_block_comment, - [3451] = 4, + [4291] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(400), 1, - anon_sym_RPAREN, - STATE(154), 2, + ACTIONS(360), 1, + sym_keyword_update, + STATE(193), 2, sym_line_comment, sym_block_comment, - [3465] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(402), 1, - anon_sym_RPAREN, - STATE(155), 2, - sym_line_comment, - sym_block_comment, - [3479] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(404), 1, - anon_sym_DQUOTE, - STATE(156), 2, - sym_line_comment, - sym_block_comment, - [3493] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(406), 1, - sym_keyword_exists, - STATE(157), 2, - sym_line_comment, - sym_block_comment, - [3507] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(408), 1, - sym_keyword_table, - STATE(158), 2, - sym_line_comment, - sym_block_comment, - [3521] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(410), 1, - sym_keyword_action, - STATE(159), 2, - sym_line_comment, - sym_block_comment, - [3535] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(412), 1, - sym_keyword_key, - STATE(160), 2, - sym_line_comment, - sym_block_comment, - [3549] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(414), 1, - sym_number, - STATE(161), 2, - sym_line_comment, - sym_block_comment, - [3563] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(416), 1, - anon_sym_SEMI, - STATE(162), 2, - sym_line_comment, - sym_block_comment, - [3577] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(418), 1, - anon_sym_SEMI, - STATE(163), 2, - sym_line_comment, - sym_block_comment, - [3591] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(420), 1, - sym_keyword_key, - STATE(164), 2, - sym_line_comment, - sym_block_comment, - [3605] = 4, - ACTIONS(372), 1, - anon_sym_DASH_DASH, - ACTIONS(376), 1, - anon_sym_SLASH_STAR, - ACTIONS(422), 1, - aux_sym_literal_string_token1, - STATE(165), 2, - sym_line_comment, - sym_block_comment, - [3619] = 4, + [4305] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(424), 1, - sym_keyword_table, - STATE(166), 2, + anon_sym_SEMI, + STATE(194), 2, sym_line_comment, sym_block_comment, - [3633] = 4, - ACTIONS(372), 1, + [4319] = 4, + ACTIONS(3), 1, anon_sym_DASH_DASH, - ACTIONS(376), 1, + ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(426), 1, - aux_sym_block_comment_token1, - STATE(167), 2, + anon_sym_DQUOTE, + STATE(195), 2, sym_line_comment, sym_block_comment, - [3647] = 4, + [4333] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(428), 1, - aux_sym__keyword_time_zone_token2, - STATE(168), 2, + anon_sym_SEMI, + STATE(196), 2, sym_line_comment, sym_block_comment, - [3661] = 4, + [4347] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(430), 1, - sym_number, - STATE(169), 2, + sym_keyword_distinct, + STATE(197), 2, sym_line_comment, sym_block_comment, - [3675] = 4, + [4361] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(432), 1, - ts_builtin_sym_end, - STATE(170), 2, + anon_sym_SEMI, + STATE(198), 2, sym_line_comment, sym_block_comment, - [3689] = 4, + [4375] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(434), 1, sym_number, - STATE(171), 2, + STATE(199), 2, sym_line_comment, sym_block_comment, - [3703] = 4, + [4389] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(436), 1, - aux_sym_double_token2, - STATE(172), 2, + sym_number, + STATE(200), 2, sym_line_comment, sym_block_comment, - [3717] = 4, + [4403] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(438), 1, - anon_sym_SEMI, - STATE(173), 2, + sym_keyword_exists, + STATE(201), 2, sym_line_comment, sym_block_comment, - [3731] = 4, - ACTIONS(372), 1, + [4417] = 4, + ACTIONS(3), 1, anon_sym_DASH_DASH, - ACTIONS(376), 1, + ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(440), 1, - aux_sym_identifier_token1, - STATE(174), 2, + ts_builtin_sym_end, + STATE(202), 2, sym_line_comment, sym_block_comment, - [3745] = 4, + [4431] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(442), 1, - sym_keyword_null, - STATE(175), 2, + sym_keyword_action, + STATE(203), 2, sym_line_comment, sym_block_comment, - [3759] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, + [4445] = 4, ACTIONS(444), 1, - sym_keyword_not, - STATE(176), 2, - sym_line_comment, - sym_block_comment, - [3773] = 4, - ACTIONS(3), 1, anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, ACTIONS(446), 1, - anon_sym_LPAREN, - STATE(177), 2, - sym_line_comment, - sym_block_comment, - [3787] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(448), 1, - sym_number, - STATE(178), 2, + aux_sym_literal_string_token1, + STATE(204), 2, sym_line_comment, sym_block_comment, - [3801] = 4, + [4459] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(450), 1, sym_number, - STATE(179), 2, + STATE(205), 2, sym_line_comment, sym_block_comment, - [3815] = 4, + [4473] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(452), 1, - anon_sym_SEMI, - STATE(180), 2, + sym_number, + STATE(206), 2, sym_line_comment, sym_block_comment, - [3829] = 4, + [4487] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(454), 1, - anon_sym_SEMI, - STATE(181), 2, + sym_keyword_not, + STATE(207), 2, sym_line_comment, sym_block_comment, - [3843] = 1, + [4501] = 4, + ACTIONS(444), 1, + anon_sym_DASH_DASH, + ACTIONS(446), 1, + anon_sym_SLASH_STAR, ACTIONS(456), 1, - ts_builtin_sym_end, - [3847] = 1, + aux_sym_block_comment_token1, + STATE(208), 2, + sym_line_comment, + sym_block_comment, + [4515] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, ACTIONS(458), 1, + sym_number, + STATE(209), 2, + sym_line_comment, + sym_block_comment, + [4529] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(460), 1, + sym_keyword_references, + STATE(210), 2, + sym_line_comment, + sym_block_comment, + [4543] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(462), 1, + sym_number, + STATE(211), 2, + sym_line_comment, + sym_block_comment, + [4557] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(464), 1, + aux_sym__keyword_time_zone_token2, + STATE(212), 2, + sym_line_comment, + sym_block_comment, + [4571] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(466), 1, + sym_keyword_table, + STATE(213), 2, + sym_line_comment, + sym_block_comment, + [4585] = 4, + ACTIONS(444), 1, + anon_sym_DASH_DASH, + ACTIONS(446), 1, + anon_sym_SLASH_STAR, + ACTIONS(468), 1, + aux_sym_line_comment_token1, + STATE(214), 2, + sym_line_comment, + sym_block_comment, + [4599] = 4, + ACTIONS(444), 1, + anon_sym_DASH_DASH, + ACTIONS(446), 1, + anon_sym_SLASH_STAR, + ACTIONS(470), 1, + aux_sym_identifier_token1, + STATE(215), 2, + sym_line_comment, + sym_block_comment, + [4613] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(472), 1, + sym_keyword_table, + STATE(216), 2, + sym_line_comment, + sym_block_comment, + [4627] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(474), 1, + anon_sym_RPAREN, + STATE(217), 2, + sym_line_comment, + sym_block_comment, + [4641] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(476), 1, + anon_sym_SLASH, + STATE(218), 2, + sym_line_comment, + sym_block_comment, + [4655] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(478), 1, + anon_sym_SEMI, + STATE(219), 2, + sym_line_comment, + sym_block_comment, + [4669] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(480), 1, + anon_sym_SEMI, + STATE(220), 2, + sym_line_comment, + sym_block_comment, + [4683] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(482), 1, + anon_sym_SEMI, + STATE(221), 2, + sym_line_comment, + sym_block_comment, + [4697] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(484), 1, + anon_sym_SEMI, + STATE(222), 2, + sym_line_comment, + sym_block_comment, + [4711] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(486), 1, + anon_sym_RPAREN, + STATE(223), 2, + sym_line_comment, + sym_block_comment, + [4725] = 1, + ACTIONS(488), 1, + ts_builtin_sym_end, + [4729] = 1, + ACTIONS(490), 1, ts_builtin_sym_end, }; @@ -6438,411 +7156,469 @@ static const uint32_t ts_small_parse_table_map[] = { [SMALL_STATE(3)] = 102, [SMALL_STATE(4)] = 157, [SMALL_STATE(5)] = 212, - [SMALL_STATE(6)] = 262, - [SMALL_STATE(7)] = 312, - [SMALL_STATE(8)] = 352, - [SMALL_STATE(9)] = 400, - [SMALL_STATE(10)] = 437, - [SMALL_STATE(11)] = 469, - [SMALL_STATE(12)] = 503, - [SMALL_STATE(13)] = 549, - [SMALL_STATE(14)] = 577, - [SMALL_STATE(15)] = 620, - [SMALL_STATE(16)] = 645, - [SMALL_STATE(17)] = 676, + [SMALL_STATE(6)] = 255, + [SMALL_STATE(7)] = 298, + [SMALL_STATE(8)] = 335, + [SMALL_STATE(9)] = 382, + [SMALL_STATE(10)] = 427, + [SMALL_STATE(11)] = 464, + [SMALL_STATE(12)] = 511, + [SMALL_STATE(13)] = 545, + [SMALL_STATE(14)] = 591, + [SMALL_STATE(15)] = 619, + [SMALL_STATE(16)] = 651, + [SMALL_STATE(17)] = 682, [SMALL_STATE(18)] = 707, - [SMALL_STATE(19)] = 733, - [SMALL_STATE(20)] = 761, - [SMALL_STATE(21)] = 798, - [SMALL_STATE(22)] = 821, - [SMALL_STATE(23)] = 844, - [SMALL_STATE(24)] = 869, - [SMALL_STATE(25)] = 892, - [SMALL_STATE(26)] = 915, - [SMALL_STATE(27)] = 938, - [SMALL_STATE(28)] = 961, - [SMALL_STATE(29)] = 984, - [SMALL_STATE(30)] = 1007, - [SMALL_STATE(31)] = 1030, - [SMALL_STATE(32)] = 1053, - [SMALL_STATE(33)] = 1078, - [SMALL_STATE(34)] = 1101, - [SMALL_STATE(35)] = 1126, - [SMALL_STATE(36)] = 1149, - [SMALL_STATE(37)] = 1172, - [SMALL_STATE(38)] = 1197, - [SMALL_STATE(39)] = 1219, - [SMALL_STATE(40)] = 1241, - [SMALL_STATE(41)] = 1263, - [SMALL_STATE(42)] = 1285, - [SMALL_STATE(43)] = 1307, - [SMALL_STATE(44)] = 1329, - [SMALL_STATE(45)] = 1351, - [SMALL_STATE(46)] = 1373, - [SMALL_STATE(47)] = 1395, - [SMALL_STATE(48)] = 1417, - [SMALL_STATE(49)] = 1439, - [SMALL_STATE(50)] = 1461, - [SMALL_STATE(51)] = 1483, - [SMALL_STATE(52)] = 1505, - [SMALL_STATE(53)] = 1527, - [SMALL_STATE(54)] = 1549, - [SMALL_STATE(55)] = 1571, - [SMALL_STATE(56)] = 1593, - [SMALL_STATE(57)] = 1615, - [SMALL_STATE(58)] = 1637, - [SMALL_STATE(59)] = 1659, - [SMALL_STATE(60)] = 1681, - [SMALL_STATE(61)] = 1703, - [SMALL_STATE(62)] = 1725, - [SMALL_STATE(63)] = 1747, - [SMALL_STATE(64)] = 1769, - [SMALL_STATE(65)] = 1791, - [SMALL_STATE(66)] = 1813, - [SMALL_STATE(67)] = 1835, - [SMALL_STATE(68)] = 1857, - [SMALL_STATE(69)] = 1879, - [SMALL_STATE(70)] = 1901, - [SMALL_STATE(71)] = 1923, - [SMALL_STATE(72)] = 1945, - [SMALL_STATE(73)] = 1974, - [SMALL_STATE(74)] = 2003, - [SMALL_STATE(75)] = 2038, - [SMALL_STATE(76)] = 2071, - [SMALL_STATE(77)] = 2100, - [SMALL_STATE(78)] = 2129, - [SMALL_STATE(79)] = 2156, - [SMALL_STATE(80)] = 2180, - [SMALL_STATE(81)] = 2204, - [SMALL_STATE(82)] = 2230, - [SMALL_STATE(83)] = 2253, - [SMALL_STATE(84)] = 2276, - [SMALL_STATE(85)] = 2299, - [SMALL_STATE(86)] = 2319, - [SMALL_STATE(87)] = 2339, - [SMALL_STATE(88)] = 2359, - [SMALL_STATE(89)] = 2379, - [SMALL_STATE(90)] = 2399, - [SMALL_STATE(91)] = 2419, - [SMALL_STATE(92)] = 2439, - [SMALL_STATE(93)] = 2455, - [SMALL_STATE(94)] = 2475, - [SMALL_STATE(95)] = 2495, - [SMALL_STATE(96)] = 2515, - [SMALL_STATE(97)] = 2533, - [SMALL_STATE(98)] = 2549, - [SMALL_STATE(99)] = 2569, - [SMALL_STATE(100)] = 2589, - [SMALL_STATE(101)] = 2607, - [SMALL_STATE(102)] = 2623, - [SMALL_STATE(103)] = 2643, - [SMALL_STATE(104)] = 2659, - [SMALL_STATE(105)] = 2675, - [SMALL_STATE(106)] = 2693, - [SMALL_STATE(107)] = 2713, - [SMALL_STATE(108)] = 2729, - [SMALL_STATE(109)] = 2746, - [SMALL_STATE(110)] = 2763, - [SMALL_STATE(111)] = 2780, - [SMALL_STATE(112)] = 2797, - [SMALL_STATE(113)] = 2814, - [SMALL_STATE(114)] = 2831, - [SMALL_STATE(115)] = 2848, - [SMALL_STATE(116)] = 2865, - [SMALL_STATE(117)] = 2880, - [SMALL_STATE(118)] = 2895, - [SMALL_STATE(119)] = 2910, - [SMALL_STATE(120)] = 2925, - [SMALL_STATE(121)] = 2942, - [SMALL_STATE(122)] = 2959, - [SMALL_STATE(123)] = 2976, - [SMALL_STATE(124)] = 2991, - [SMALL_STATE(125)] = 3006, - [SMALL_STATE(126)] = 3021, - [SMALL_STATE(127)] = 3038, - [SMALL_STATE(128)] = 3055, - [SMALL_STATE(129)] = 3072, - [SMALL_STATE(130)] = 3089, - [SMALL_STATE(131)] = 3106, - [SMALL_STATE(132)] = 3123, - [SMALL_STATE(133)] = 3140, - [SMALL_STATE(134)] = 3157, - [SMALL_STATE(135)] = 3174, - [SMALL_STATE(136)] = 3189, - [SMALL_STATE(137)] = 3206, - [SMALL_STATE(138)] = 3221, - [SMALL_STATE(139)] = 3238, - [SMALL_STATE(140)] = 3255, - [SMALL_STATE(141)] = 3269, - [SMALL_STATE(142)] = 3283, - [SMALL_STATE(143)] = 3297, - [SMALL_STATE(144)] = 3311, - [SMALL_STATE(145)] = 3325, - [SMALL_STATE(146)] = 3339, - [SMALL_STATE(147)] = 3353, - [SMALL_STATE(148)] = 3367, - [SMALL_STATE(149)] = 3381, - [SMALL_STATE(150)] = 3395, - [SMALL_STATE(151)] = 3409, - [SMALL_STATE(152)] = 3423, - [SMALL_STATE(153)] = 3437, - [SMALL_STATE(154)] = 3451, - [SMALL_STATE(155)] = 3465, - [SMALL_STATE(156)] = 3479, - [SMALL_STATE(157)] = 3493, - [SMALL_STATE(158)] = 3507, - [SMALL_STATE(159)] = 3521, - [SMALL_STATE(160)] = 3535, - [SMALL_STATE(161)] = 3549, - [SMALL_STATE(162)] = 3563, - [SMALL_STATE(163)] = 3577, - [SMALL_STATE(164)] = 3591, - [SMALL_STATE(165)] = 3605, - [SMALL_STATE(166)] = 3619, - [SMALL_STATE(167)] = 3633, - [SMALL_STATE(168)] = 3647, - [SMALL_STATE(169)] = 3661, - [SMALL_STATE(170)] = 3675, - [SMALL_STATE(171)] = 3689, - [SMALL_STATE(172)] = 3703, - [SMALL_STATE(173)] = 3717, - [SMALL_STATE(174)] = 3731, - [SMALL_STATE(175)] = 3745, - [SMALL_STATE(176)] = 3759, - [SMALL_STATE(177)] = 3773, - [SMALL_STATE(178)] = 3787, - [SMALL_STATE(179)] = 3801, - [SMALL_STATE(180)] = 3815, - [SMALL_STATE(181)] = 3829, - [SMALL_STATE(182)] = 3843, - [SMALL_STATE(183)] = 3847, + [SMALL_STATE(19)] = 738, + [SMALL_STATE(20)] = 769, + [SMALL_STATE(21)] = 812, + [SMALL_STATE(22)] = 843, + [SMALL_STATE(23)] = 871, + [SMALL_STATE(24)] = 895, + [SMALL_STATE(25)] = 921, + [SMALL_STATE(26)] = 946, + [SMALL_STATE(27)] = 969, + [SMALL_STATE(28)] = 992, + [SMALL_STATE(29)] = 1015, + [SMALL_STATE(30)] = 1038, + [SMALL_STATE(31)] = 1061, + [SMALL_STATE(32)] = 1086, + [SMALL_STATE(33)] = 1111, + [SMALL_STATE(34)] = 1134, + [SMALL_STATE(35)] = 1157, + [SMALL_STATE(36)] = 1180, + [SMALL_STATE(37)] = 1203, + [SMALL_STATE(38)] = 1228, + [SMALL_STATE(39)] = 1251, + [SMALL_STATE(40)] = 1274, + [SMALL_STATE(41)] = 1297, + [SMALL_STATE(42)] = 1320, + [SMALL_STATE(43)] = 1342, + [SMALL_STATE(44)] = 1364, + [SMALL_STATE(45)] = 1386, + [SMALL_STATE(46)] = 1408, + [SMALL_STATE(47)] = 1444, + [SMALL_STATE(48)] = 1466, + [SMALL_STATE(49)] = 1488, + [SMALL_STATE(50)] = 1510, + [SMALL_STATE(51)] = 1532, + [SMALL_STATE(52)] = 1554, + [SMALL_STATE(53)] = 1576, + [SMALL_STATE(54)] = 1598, + [SMALL_STATE(55)] = 1620, + [SMALL_STATE(56)] = 1642, + [SMALL_STATE(57)] = 1664, + [SMALL_STATE(58)] = 1686, + [SMALL_STATE(59)] = 1708, + [SMALL_STATE(60)] = 1730, + [SMALL_STATE(61)] = 1752, + [SMALL_STATE(62)] = 1774, + [SMALL_STATE(63)] = 1796, + [SMALL_STATE(64)] = 1818, + [SMALL_STATE(65)] = 1840, + [SMALL_STATE(66)] = 1874, + [SMALL_STATE(67)] = 1896, + [SMALL_STATE(68)] = 1918, + [SMALL_STATE(69)] = 1940, + [SMALL_STATE(70)] = 1962, + [SMALL_STATE(71)] = 1984, + [SMALL_STATE(72)] = 2006, + [SMALL_STATE(73)] = 2028, + [SMALL_STATE(74)] = 2050, + [SMALL_STATE(75)] = 2072, + [SMALL_STATE(76)] = 2094, + [SMALL_STATE(77)] = 2130, + [SMALL_STATE(78)] = 2152, + [SMALL_STATE(79)] = 2174, + [SMALL_STATE(80)] = 2203, + [SMALL_STATE(81)] = 2236, + [SMALL_STATE(82)] = 2265, + [SMALL_STATE(83)] = 2300, + [SMALL_STATE(84)] = 2330, + [SMALL_STATE(85)] = 2360, + [SMALL_STATE(86)] = 2389, + [SMALL_STATE(87)] = 2418, + [SMALL_STATE(88)] = 2445, + [SMALL_STATE(89)] = 2469, + [SMALL_STATE(90)] = 2493, + [SMALL_STATE(91)] = 2517, + [SMALL_STATE(92)] = 2535, + [SMALL_STATE(93)] = 2559, + [SMALL_STATE(94)] = 2585, + [SMALL_STATE(95)] = 2609, + [SMALL_STATE(96)] = 2633, + [SMALL_STATE(97)] = 2651, + [SMALL_STATE(98)] = 2674, + [SMALL_STATE(99)] = 2697, + [SMALL_STATE(100)] = 2720, + [SMALL_STATE(101)] = 2743, + [SMALL_STATE(102)] = 2766, + [SMALL_STATE(103)] = 2789, + [SMALL_STATE(104)] = 2807, + [SMALL_STATE(105)] = 2827, + [SMALL_STATE(106)] = 2847, + [SMALL_STATE(107)] = 2863, + [SMALL_STATE(108)] = 2883, + [SMALL_STATE(109)] = 2903, + [SMALL_STATE(110)] = 2923, + [SMALL_STATE(111)] = 2943, + [SMALL_STATE(112)] = 2963, + [SMALL_STATE(113)] = 2983, + [SMALL_STATE(114)] = 2999, + [SMALL_STATE(115)] = 3019, + [SMALL_STATE(116)] = 3039, + [SMALL_STATE(117)] = 3059, + [SMALL_STATE(118)] = 3075, + [SMALL_STATE(119)] = 3095, + [SMALL_STATE(120)] = 3111, + [SMALL_STATE(121)] = 3131, + [SMALL_STATE(122)] = 3151, + [SMALL_STATE(123)] = 3169, + [SMALL_STATE(124)] = 3187, + [SMALL_STATE(125)] = 3204, + [SMALL_STATE(126)] = 3219, + [SMALL_STATE(127)] = 3234, + [SMALL_STATE(128)] = 3249, + [SMALL_STATE(129)] = 3266, + [SMALL_STATE(130)] = 3283, + [SMALL_STATE(131)] = 3300, + [SMALL_STATE(132)] = 3317, + [SMALL_STATE(133)] = 3334, + [SMALL_STATE(134)] = 3351, + [SMALL_STATE(135)] = 3366, + [SMALL_STATE(136)] = 3381, + [SMALL_STATE(137)] = 3398, + [SMALL_STATE(138)] = 3415, + [SMALL_STATE(139)] = 3430, + [SMALL_STATE(140)] = 3447, + [SMALL_STATE(141)] = 3464, + [SMALL_STATE(142)] = 3479, + [SMALL_STATE(143)] = 3496, + [SMALL_STATE(144)] = 3511, + [SMALL_STATE(145)] = 3528, + [SMALL_STATE(146)] = 3545, + [SMALL_STATE(147)] = 3562, + [SMALL_STATE(148)] = 3579, + [SMALL_STATE(149)] = 3596, + [SMALL_STATE(150)] = 3613, + [SMALL_STATE(151)] = 3628, + [SMALL_STATE(152)] = 3645, + [SMALL_STATE(153)] = 3662, + [SMALL_STATE(154)] = 3679, + [SMALL_STATE(155)] = 3696, + [SMALL_STATE(156)] = 3713, + [SMALL_STATE(157)] = 3730, + [SMALL_STATE(158)] = 3747, + [SMALL_STATE(159)] = 3764, + [SMALL_STATE(160)] = 3781, + [SMALL_STATE(161)] = 3796, + [SMALL_STATE(162)] = 3813, + [SMALL_STATE(163)] = 3830, + [SMALL_STATE(164)] = 3847, + [SMALL_STATE(165)] = 3864, + [SMALL_STATE(166)] = 3879, + [SMALL_STATE(167)] = 3894, + [SMALL_STATE(168)] = 3909, + [SMALL_STATE(169)] = 3924, + [SMALL_STATE(170)] = 3941, + [SMALL_STATE(171)] = 3958, + [SMALL_STATE(172)] = 3975, + [SMALL_STATE(173)] = 3992, + [SMALL_STATE(174)] = 4009, + [SMALL_STATE(175)] = 4026, + [SMALL_STATE(176)] = 4043, + [SMALL_STATE(177)] = 4060, + [SMALL_STATE(178)] = 4075, + [SMALL_STATE(179)] = 4092, + [SMALL_STATE(180)] = 4109, + [SMALL_STATE(181)] = 4123, + [SMALL_STATE(182)] = 4137, + [SMALL_STATE(183)] = 4151, + [SMALL_STATE(184)] = 4165, + [SMALL_STATE(185)] = 4179, + [SMALL_STATE(186)] = 4193, + [SMALL_STATE(187)] = 4207, + [SMALL_STATE(188)] = 4221, + [SMALL_STATE(189)] = 4235, + [SMALL_STATE(190)] = 4249, + [SMALL_STATE(191)] = 4263, + [SMALL_STATE(192)] = 4277, + [SMALL_STATE(193)] = 4291, + [SMALL_STATE(194)] = 4305, + [SMALL_STATE(195)] = 4319, + [SMALL_STATE(196)] = 4333, + [SMALL_STATE(197)] = 4347, + [SMALL_STATE(198)] = 4361, + [SMALL_STATE(199)] = 4375, + [SMALL_STATE(200)] = 4389, + [SMALL_STATE(201)] = 4403, + [SMALL_STATE(202)] = 4417, + [SMALL_STATE(203)] = 4431, + [SMALL_STATE(204)] = 4445, + [SMALL_STATE(205)] = 4459, + [SMALL_STATE(206)] = 4473, + [SMALL_STATE(207)] = 4487, + [SMALL_STATE(208)] = 4501, + [SMALL_STATE(209)] = 4515, + [SMALL_STATE(210)] = 4529, + [SMALL_STATE(211)] = 4543, + [SMALL_STATE(212)] = 4557, + [SMALL_STATE(213)] = 4571, + [SMALL_STATE(214)] = 4585, + [SMALL_STATE(215)] = 4599, + [SMALL_STATE(216)] = 4613, + [SMALL_STATE(217)] = 4627, + [SMALL_STATE(218)] = 4641, + [SMALL_STATE(219)] = 4655, + [SMALL_STATE(220)] = 4669, + [SMALL_STATE(221)] = 4683, + [SMALL_STATE(222)] = 4697, + [SMALL_STATE(223)] = 4711, + [SMALL_STATE(224)] = 4725, + [SMALL_STATE(225)] = 4729, }; 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(140), - [5] = {.entry = {.count = 1, .reusable = true}}, SHIFT(167), + [3] = {.entry = {.count = 1, .reusable = true}}, SHIFT(214), + [5] = {.entry = {.count = 1, .reusable = true}}, SHIFT(208), [7] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 0), - [9] = {.entry = {.count = 1, .reusable = true}}, SHIFT(92), - [11] = {.entry = {.count = 1, .reusable = true}}, SHIFT(81), - [13] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4), - [15] = {.entry = {.count = 1, .reusable = false}}, SHIFT(172), - [17] = {.entry = {.count = 1, .reusable = false}}, SHIFT(10), - [19] = {.entry = {.count = 1, .reusable = false}}, SHIFT(70), - [21] = {.entry = {.count = 1, .reusable = false}}, SHIFT(71), - [23] = {.entry = {.count = 1, .reusable = false}}, SHIFT(32), - [25] = {.entry = {.count = 1, .reusable = false}}, SHIFT(34), - [27] = {.entry = {.count = 1, .reusable = false}}, SHIFT(69), - [29] = {.entry = {.count = 1, .reusable = false}}, SHIFT(27), - [31] = {.entry = {.count = 1, .reusable = false}}, SHIFT(25), - [33] = {.entry = {.count = 1, .reusable = false}}, SHIFT(21), + [9] = {.entry = {.count = 1, .reusable = true}}, SHIFT(119), + [11] = {.entry = {.count = 1, .reusable = true}}, SHIFT(93), + [13] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3), + [15] = {.entry = {.count = 1, .reusable = false}}, SHIFT(189), + [17] = {.entry = {.count = 1, .reusable = false}}, SHIFT(15), + [19] = {.entry = {.count = 1, .reusable = false}}, SHIFT(60), + [21] = {.entry = {.count = 1, .reusable = false}}, SHIFT(61), + [23] = {.entry = {.count = 1, .reusable = false}}, SHIFT(37), + [25] = {.entry = {.count = 1, .reusable = false}}, SHIFT(25), + [27] = {.entry = {.count = 1, .reusable = false}}, SHIFT(64), + [29] = {.entry = {.count = 1, .reusable = false}}, SHIFT(35), + [31] = {.entry = {.count = 1, .reusable = false}}, SHIFT(34), + [33] = {.entry = {.count = 1, .reusable = false}}, SHIFT(33), [35] = {.entry = {.count = 1, .reusable = false}}, SHIFT(68), - [37] = {.entry = {.count = 1, .reusable = false}}, SHIFT(11), - [39] = {.entry = {.count = 1, .reusable = false}}, SHIFT(67), - [41] = {.entry = {.count = 1, .reusable = true}}, SHIFT(174), - [43] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_identifier, 3), - [45] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_identifier, 3), - [47] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_identifier, 1), - [49] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_identifier, 1), - [51] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_definition, 2, .production_id = 1), - [53] = {.entry = {.count = 1, .reusable = true}}, SHIFT(175), - [55] = {.entry = {.count = 1, .reusable = true}}, SHIFT(61), - [57] = {.entry = {.count = 1, .reusable = true}}, SHIFT(98), - [59] = {.entry = {.count = 1, .reusable = true}}, SHIFT(72), - [61] = {.entry = {.count = 1, .reusable = true}}, SHIFT(19), - [63] = {.entry = {.count = 1, .reusable = true}}, SHIFT(160), - [65] = {.entry = {.count = 1, .reusable = true}}, SHIFT(84), - [67] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_definition, 3, .production_id = 1), - [69] = {.entry = {.count = 1, .reusable = true}}, SHIFT(99), - [71] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__foreign_key_references, 2), - [73] = {.entry = {.count = 1, .reusable = true}}, SHIFT(129), - [75] = {.entry = {.count = 1, .reusable = true}}, SHIFT(97), - [77] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_column_definition_repeat1, 2), - [79] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_column_definition_repeat1, 2), SHIFT_REPEAT(175), - [82] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_column_definition_repeat1, 2), SHIFT_REPEAT(61), - [85] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_column_definition_repeat1, 2), SHIFT_REPEAT(98), - [88] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_column_definition_repeat1, 2), SHIFT_REPEAT(72), - [91] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_column_definition_repeat1, 2), SHIFT_REPEAT(19), - [94] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_column_definition_repeat1, 2), SHIFT_REPEAT(160), - [97] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_column_definition_repeat1, 2), SHIFT_REPEAT(84), - [100] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__foreign_key_references, 5, .production_id = 12), - [102] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_time, 1), - [104] = {.entry = {.count = 1, .reusable = true}}, SHIFT(138), - [106] = {.entry = {.count = 1, .reusable = false}}, SHIFT(136), - [108] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_timestamp, 1), - [110] = {.entry = {.count = 1, .reusable = true}}, SHIFT(146), - [112] = {.entry = {.count = 1, .reusable = false}}, SHIFT(91), - [114] = {.entry = {.count = 1, .reusable = false}}, SHIFT(19), - [116] = {.entry = {.count = 1, .reusable = false}}, SHIFT(160), - [118] = {.entry = {.count = 1, .reusable = false}}, SHIFT(164), - [120] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_table_reference, 1, .production_id = 1), - [122] = {.entry = {.count = 1, .reusable = true}}, SHIFT(88), - [124] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_table_reference, 3, .production_id = 2), - [126] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__foreign_key_references, 3), - [128] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__foreign_key_references, 6, .production_id = 12), - [130] = {.entry = {.count = 1, .reusable = true}}, SHIFT(95), - [132] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_referencial_action, 2), + [37] = {.entry = {.count = 1, .reusable = false}}, SHIFT(12), + [39] = {.entry = {.count = 1, .reusable = false}}, SHIFT(70), + [41] = {.entry = {.count = 1, .reusable = true}}, SHIFT(215), + [43] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_identifier, 1), + [45] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_identifier, 1), + [47] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_identifier, 3), + [49] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_identifier, 3), + [51] = {.entry = {.count = 1, .reusable = true}}, SHIFT(121), + [53] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 4, .production_id = 3), + [55] = {.entry = {.count = 1, .reusable = true}}, SHIFT(128), + [57] = {.entry = {.count = 1, .reusable = true}}, SHIFT(113), + [59] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 2), + [61] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 5, .production_id = 3), + [63] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_definition, 2, .production_id = 1), + [65] = {.entry = {.count = 1, .reusable = true}}, SHIFT(186), + [67] = {.entry = {.count = 1, .reusable = true}}, SHIFT(43), + [69] = {.entry = {.count = 1, .reusable = true}}, SHIFT(114), + [71] = {.entry = {.count = 1, .reusable = true}}, SHIFT(81), + [73] = {.entry = {.count = 1, .reusable = true}}, SHIFT(22), + [75] = {.entry = {.count = 1, .reusable = true}}, SHIFT(181), + [77] = {.entry = {.count = 1, .reusable = true}}, SHIFT(101), + [79] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_column_definition_repeat1, 2), + [81] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_column_definition_repeat1, 2), SHIFT_REPEAT(186), + [84] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_column_definition_repeat1, 2), SHIFT_REPEAT(43), + [87] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_column_definition_repeat1, 2), SHIFT_REPEAT(114), + [90] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_column_definition_repeat1, 2), SHIFT_REPEAT(81), + [93] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_column_definition_repeat1, 2), SHIFT_REPEAT(22), + [96] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_column_definition_repeat1, 2), SHIFT_REPEAT(181), + [99] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_column_definition_repeat1, 2), SHIFT_REPEAT(101), + [102] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 3), + [104] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_definition, 3, .production_id = 1), + [106] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_timestamp, 1), + [108] = {.entry = {.count = 1, .reusable = true}}, SHIFT(148), + [110] = {.entry = {.count = 1, .reusable = false}}, SHIFT(145), + [112] = {.entry = {.count = 1, .reusable = true}}, SHIFT(187), + [114] = {.entry = {.count = 1, .reusable = false}}, SHIFT(108), + [116] = {.entry = {.count = 1, .reusable = false}}, SHIFT(22), + [118] = {.entry = {.count = 1, .reusable = false}}, SHIFT(181), + [120] = {.entry = {.count = 1, .reusable = false}}, SHIFT(185), + [122] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_table_reference, 1, .production_id = 1), + [124] = {.entry = {.count = 1, .reusable = true}}, SHIFT(111), + [126] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_time, 1), + [128] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_table_reference, 3, .production_id = 2), + [130] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 4), + [132] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 6, .production_id = 3), [134] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__unique_constraint, 1), [136] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__unique_constraint, 1), - [138] = {.entry = {.count = 1, .reusable = true}}, SHIFT(134), - [140] = {.entry = {.count = 1, .reusable = true}}, SHIFT(38), - [142] = {.entry = {.count = 1, .reusable = true}}, SHIFT(73), - [144] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_varchar, 1), - [146] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_referencial_action, 6), - [148] = {.entry = {.count = 1, .reusable = true}}, SHIFT(169), - [150] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_varchar, 1), - [152] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__foreign_key_on_update, 3), - [154] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_char, 1), - [156] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_keyword_char, 1), REDUCE(sym_keyword_varchar, 1), - [159] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__unique_constraint, 4), - [161] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__foreign_key_match, 2), - [163] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__unique_constraint, 3), - [165] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_referencial_action, 1), - [167] = {.entry = {.count = 1, .reusable = true}}, SHIFT(179), - [169] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_decimal, 1), - [171] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__primary_key, 2), - [173] = {.entry = {.count = 1, .reusable = true}}, SHIFT(178), - [175] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_numeric, 1), - [177] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_referencial_action, 5), - [179] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__foreign_key_on_delete, 3), - [181] = {.entry = {.count = 1, .reusable = true}}, SHIFT(171), - [183] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_char, 1), - [185] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 3, .production_id = 5), - [187] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__with_time_zone, 2), - [189] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__foreign_key_references, 8, .production_id = 12), - [191] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__foreign_key_references, 7, .production_id = 12), - [193] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_numeric, 6, .production_id = 13), - [195] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_decimal, 6, .production_id = 13), - [197] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__foreign_key_references, 5), - [199] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_literal_string, 3), - [201] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 4, .production_id = 5), - [203] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__foreign_key_references, 4), - [205] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_varchar, 4, .production_id = 11), - [207] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_char, 4, .production_id = 11), - [209] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 3, .production_id = 10), - [211] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_numeric, 4, .production_id = 9), - [213] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_decimal, 4, .production_id = 9), - [215] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__keyword_time_zone, 2), - [217] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__expression, 1), - [219] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 2), - [221] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_literal, 1), - [223] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__not_null, 2), - [225] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__without_time_zone, 2), - [227] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 1, .production_id = 4), - [229] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_column_definition_repeat1, 1), - [231] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 1), - [233] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_timestamptz, 2), - [235] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_timestamp, 2), - [237] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_time, 2), - [239] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_double, 2), - [241] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type, 1, .production_id = 1), + [138] = {.entry = {.count = 1, .reusable = true}}, SHIFT(172), + [140] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_ref_column, 3, .production_id = 3), + [142] = {.entry = {.count = 1, .reusable = true}}, SHIFT(118), + [144] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_referencial_action, 2), + [146] = {.entry = {.count = 1, .reusable = true}}, SHIFT(200), + [148] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_numeric, 1), + [150] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__foreign_key_on_update, 3), + [152] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_referencial_action, 5), + [154] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_referencial_action, 6), + [156] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__unique_constraint, 3), + [158] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__foreign_key_match, 2), + [160] = {.entry = {.count = 1, .reusable = true}}, SHIFT(206), + [162] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_varchar, 1), + [164] = {.entry = {.count = 1, .reusable = true}}, SHIFT(205), + [166] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_char, 1), + [168] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_varchar, 1), + [170] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_char, 1), + [172] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_keyword_char, 1), REDUCE(sym_keyword_varchar, 1), + [175] = {.entry = {.count = 1, .reusable = true}}, SHIFT(199), + [177] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_decimal, 1), + [179] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__primary_key, 2), + [181] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_referencial_action, 1), + [183] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__unique_constraint, 4), + [185] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__foreign_key_on_delete, 3), + [187] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 1), + [189] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 5), + [191] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__without_time_zone, 2), + [193] = {.entry = {.count = 1, .reusable = true}}, SHIFT(110), + [195] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_table_constraint, 4), + [197] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_numeric, 6, .production_id = 10), + [199] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_decimal, 6, .production_id = 10), + [201] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__keyword_time_zone, 2), + [203] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_decimal, 4, .production_id = 7), + [205] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 8, .production_id = 3), + [207] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_numeric, 4, .production_id = 7), + [209] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_timestamp, 2), + [211] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_time, 2), + [213] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_literal_string, 3), + [215] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 3, .production_id = 3), + [217] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_column_definition_repeat1, 1), + [219] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 7, .production_id = 3), + [221] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type, 1), + [223] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__type_numeric, 1), + [225] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__not_null, 2), + [227] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__with_time_zone, 2), + [229] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__type_character, 1), + [231] = {.entry = {.count = 1, .reusable = true}}, SHIFT(56), + [233] = {.entry = {.count = 1, .reusable = true}}, SHIFT(79), + [235] = {.entry = {.count = 1, .reusable = true}}, SHIFT(98), + [237] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_double, 2), + [239] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__type_datetime, 1), + [241] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_char, 4, .production_id = 8), [243] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_timestamptz, 1), - [245] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__type_datetime, 1), - [247] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__type_character, 1), - [249] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type, 1), - [251] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__type_numeric, 1), - [253] = {.entry = {.count = 1, .reusable = true}}, SHIFT(56), - [255] = {.entry = {.count = 1, .reusable = true}}, SHIFT(165), - [257] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 1), - [259] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2), - [261] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(92), - [264] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(81), - [267] = {.entry = {.count = 1, .reusable = false}}, SHIFT(176), - [269] = {.entry = {.count = 1, .reusable = true}}, SHIFT(164), - [271] = {.entry = {.count = 1, .reusable = true}}, SHIFT(159), - [273] = {.entry = {.count = 1, .reusable = true}}, SHIFT(119), - [275] = {.entry = {.count = 1, .reusable = true}}, SHIFT(31), - [277] = {.entry = {.count = 1, .reusable = true}}, SHIFT(76), - [279] = {.entry = {.count = 1, .reusable = true}}, SHIFT(158), - [281] = {.entry = {.count = 1, .reusable = false}}, SHIFT(158), - [283] = {.entry = {.count = 1, .reusable = true}}, SHIFT(166), - [285] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4), - [287] = {.entry = {.count = 1, .reusable = true}}, SHIFT(85), - [289] = {.entry = {.count = 1, .reusable = true}}, SHIFT(101), - [291] = {.entry = {.count = 1, .reusable = true}}, SHIFT(107), - [293] = {.entry = {.count = 1, .reusable = true}}, SHIFT(14), - [295] = {.entry = {.count = 1, .reusable = true}}, SHIFT(181), - [297] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_statement, 1), - [299] = {.entry = {.count = 1, .reusable = true}}, SHIFT(93), - [301] = {.entry = {.count = 1, .reusable = true}}, SHIFT(35), - [303] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_referencial_action_repeat1, 2), SHIFT_REPEAT(93), - [306] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_referencial_action_repeat1, 2), - [308] = {.entry = {.count = 1, .reusable = true}}, SHIFT(29), - [310] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_column_list_repeat1, 2, .production_id = 8), SHIFT_REPEAT(85), - [313] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_column_list_repeat1, 2, .production_id = 8), - [315] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_list, 4, .production_id = 7), - [317] = {.entry = {.count = 1, .reusable = true}}, SHIFT(180), - [319] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_statement, 2), - [321] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 1), - [323] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_column_definitions_repeat1, 2), SHIFT_REPEAT(14), - [326] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_column_definitions_repeat1, 2), - [328] = {.entry = {.count = 1, .reusable = true}}, SHIFT(22), - [330] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_list, 3, .production_id = 5), - [332] = {.entry = {.count = 1, .reusable = true}}, SHIFT(12), - [334] = {.entry = {.count = 1, .reusable = true}}, SHIFT(90), - [336] = {.entry = {.count = 1, .reusable = true}}, SHIFT(143), - [338] = {.entry = {.count = 1, .reusable = true}}, SHIFT(52), - [340] = {.entry = {.count = 1, .reusable = true}}, SHIFT(161), - [342] = {.entry = {.count = 1, .reusable = true}}, SHIFT(51), - [344] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_table_constraint, 3, .production_id = 3), - [346] = {.entry = {.count = 1, .reusable = true}}, SHIFT(18), - [348] = {.entry = {.count = 1, .reusable = true}}, SHIFT(153), - [350] = {.entry = {.count = 1, .reusable = true}}, SHIFT(151), - [352] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_table_constraint, 4, .production_id = 5), - [354] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_table_constraint, 5, .production_id = 6), - [356] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_column_list_repeat1, 2, .production_id = 5), - [358] = {.entry = {.count = 1, .reusable = true}}, SHIFT(80), - [360] = {.entry = {.count = 1, .reusable = true}}, SHIFT(79), - [362] = {.entry = {.count = 1, .reusable = true}}, SHIFT(148), - [364] = {.entry = {.count = 1, .reusable = true}}, SHIFT(30), - [366] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__if_not_exists, 3), - [368] = {.entry = {.count = 1, .reusable = true}}, SHIFT(168), - [370] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_table_constraint, 2), - [372] = {.entry = {.count = 1, .reusable = false}}, SHIFT(140), - [374] = {.entry = {.count = 1, .reusable = true}}, SHIFT(183), - [376] = {.entry = {.count = 1, .reusable = false}}, SHIFT(167), - [378] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__create_statement, 1), - [380] = {.entry = {.count = 1, .reusable = true}}, SHIFT(45), - [382] = {.entry = {.count = 1, .reusable = true}}, SHIFT(154), - [384] = {.entry = {.count = 1, .reusable = false}}, SHIFT(182), - [386] = {.entry = {.count = 1, .reusable = true}}, SHIFT(9), - [388] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_definitions, 2), - [390] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_create_table, 6), - [392] = {.entry = {.count = 1, .reusable = true}}, SHIFT(28), - [394] = {.entry = {.count = 1, .reusable = true}}, SHIFT(48), - [396] = {.entry = {.count = 1, .reusable = true}}, SHIFT(49), - [398] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_create_table, 4), - [400] = {.entry = {.count = 1, .reusable = true}}, SHIFT(43), - [402] = {.entry = {.count = 1, .reusable = true}}, SHIFT(42), - [404] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3), - [406] = {.entry = {.count = 1, .reusable = true}}, SHIFT(135), - [408] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_temporary, 1), - [410] = {.entry = {.count = 1, .reusable = true}}, SHIFT(26), - [412] = {.entry = {.count = 1, .reusable = true}}, SHIFT(33), - [414] = {.entry = {.count = 1, .reusable = true}}, SHIFT(155), - [416] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__ddl_statement, 1), - [418] = {.entry = {.count = 1, .reusable = true}}, SHIFT(103), - [420] = {.entry = {.count = 1, .reusable = true}}, SHIFT(177), - [422] = {.entry = {.count = 1, .reusable = false}}, SHIFT(142), - [424] = {.entry = {.count = 1, .reusable = true}}, SHIFT(77), - [426] = {.entry = {.count = 1, .reusable = false}}, SHIFT(144), - [428] = {.entry = {.count = 1, .reusable = true}}, SHIFT(53), - [430] = {.entry = {.count = 1, .reusable = true}}, SHIFT(149), - [432] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), - [434] = {.entry = {.count = 1, .reusable = true}}, SHIFT(150), - [436] = {.entry = {.count = 1, .reusable = true}}, SHIFT(65), - [438] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_create_table, 5), - [440] = {.entry = {.count = 1, .reusable = false}}, SHIFT(156), - [442] = {.entry = {.count = 1, .reusable = true}}, SHIFT(57), - [444] = {.entry = {.count = 1, .reusable = true}}, SHIFT(157), - [446] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__foreign_key, 2), - [448] = {.entry = {.count = 1, .reusable = true}}, SHIFT(114), - [450] = {.entry = {.count = 1, .reusable = true}}, SHIFT(113), - [452] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_definitions, 3), - [454] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_definitions, 4), - [456] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block_comment, 3), - [458] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_line_comment, 2), + [245] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_timestamptz, 2), + [247] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_literal, 1), + [249] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 6), + [251] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type, 1, .production_id = 1), + [253] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_table_constraint, 6, .production_id = 3), + [255] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__expression, 1), + [257] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_varchar, 4, .production_id = 8), + [259] = {.entry = {.count = 1, .reusable = true}}, SHIFT(72), + [261] = {.entry = {.count = 1, .reusable = true}}, SHIFT(204), + [263] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2), + [265] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(119), + [268] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(93), + [271] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 1), + [273] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_table_constraint, 7, .production_id = 9), + [275] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_table_constraint, 5, .production_id = 6), + [277] = {.entry = {.count = 1, .reusable = false}}, SHIFT(207), + [279] = {.entry = {.count = 1, .reusable = true}}, SHIFT(185), + [281] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_table_constraint, 7, .production_id = 3), + [283] = {.entry = {.count = 1, .reusable = true}}, SHIFT(203), + [285] = {.entry = {.count = 1, .reusable = true}}, SHIFT(177), + [287] = {.entry = {.count = 1, .reusable = true}}, SHIFT(39), + [289] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_list, 4, .production_id = 4), + [291] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_table_constraint, 8, .production_id = 9), + [293] = {.entry = {.count = 1, .reusable = true}}, SHIFT(85), + [295] = {.entry = {.count = 1, .reusable = true}}, SHIFT(216), + [297] = {.entry = {.count = 1, .reusable = false}}, SHIFT(216), + [299] = {.entry = {.count = 1, .reusable = true}}, SHIFT(213), + [301] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_table_constraint, 6, .production_id = 6), + [303] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_table_constraint, 5), + [305] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_list, 3, .production_id = 3), + [307] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3), + [309] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_referencial_action_repeat1, 2), SHIFT_REPEAT(115), + [312] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_referencial_action_repeat1, 2), + [314] = {.entry = {.count = 1, .reusable = true}}, SHIFT(20), + [316] = {.entry = {.count = 1, .reusable = true}}, SHIFT(183), + [318] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 1), + [320] = {.entry = {.count = 1, .reusable = true}}, SHIFT(105), + [322] = {.entry = {.count = 1, .reusable = true}}, SHIFT(91), + [324] = {.entry = {.count = 1, .reusable = true}}, SHIFT(198), + [326] = {.entry = {.count = 1, .reusable = true}}, SHIFT(115), + [328] = {.entry = {.count = 1, .reusable = true}}, SHIFT(28), + [330] = {.entry = {.count = 1, .reusable = true}}, SHIFT(30), + [332] = {.entry = {.count = 1, .reusable = true}}, SHIFT(27), + [334] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_statement, 2), + [336] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_statement, 1), + [338] = {.entry = {.count = 1, .reusable = true}}, SHIFT(96), + [340] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_column_definitions_repeat1, 2), SHIFT_REPEAT(20), + [343] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_column_definitions_repeat1, 2), + [345] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_column_list_repeat1, 2, .production_id = 5), SHIFT_REPEAT(105), + [348] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_column_list_repeat1, 2, .production_id = 5), + [350] = {.entry = {.count = 1, .reusable = true}}, SHIFT(211), + [352] = {.entry = {.count = 1, .reusable = true}}, SHIFT(50), + [354] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_table_constraint, 8, .production_id = 3), + [356] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_table_constraint, 10, .production_id = 9), + [358] = {.entry = {.count = 1, .reusable = true}}, SHIFT(90), + [360] = {.entry = {.count = 1, .reusable = true}}, SHIFT(89), + [362] = {.entry = {.count = 1, .reusable = true}}, SHIFT(192), + [364] = {.entry = {.count = 1, .reusable = true}}, SHIFT(193), + [366] = {.entry = {.count = 1, .reusable = true}}, SHIFT(209), + [368] = {.entry = {.count = 1, .reusable = true}}, SHIFT(52), + [370] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_table_constraint, 9, .production_id = 3), + [372] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_table_constraint, 9, .production_id = 9), + [374] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_table_constraint, 4, .production_id = 3), + [376] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_table_constraint, 8, .production_id = 6), + [378] = {.entry = {.count = 1, .reusable = true}}, SHIFT(13), + [380] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_column_list_repeat1, 2, .production_id = 3), + [382] = {.entry = {.count = 1, .reusable = true}}, SHIFT(212), + [384] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_table_constraint, 6), + [386] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__if_not_exists, 3), + [388] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_table_constraint, 2), + [390] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_table_constraint, 7), + [392] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_table_constraint, 7, .production_id = 6), + [394] = {.entry = {.count = 1, .reusable = true}}, SHIFT(197), + [396] = {.entry = {.count = 1, .reusable = true}}, SHIFT(29), + [398] = {.entry = {.count = 1, .reusable = true}}, SHIFT(24), + [400] = {.entry = {.count = 1, .reusable = true}}, SHIFT(55), + [402] = {.entry = {.count = 1, .reusable = true}}, SHIFT(38), + [404] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__foreign_key, 2), + [406] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_definitions, 3), + [408] = {.entry = {.count = 1, .reusable = true}}, SHIFT(23), + [410] = {.entry = {.count = 1, .reusable = true}}, SHIFT(182), + [412] = {.entry = {.count = 1, .reusable = true}}, SHIFT(62), + [414] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_definitions, 2), + [416] = {.entry = {.count = 1, .reusable = true}}, SHIFT(100), + [418] = {.entry = {.count = 1, .reusable = true}}, SHIFT(67), + [420] = {.entry = {.count = 1, .reusable = true}}, SHIFT(47), + [422] = {.entry = {.count = 1, .reusable = true}}, SHIFT(48), + [424] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_create_table, 4), + [426] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4), + [428] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_create_table, 6), + [430] = {.entry = {.count = 1, .reusable = true}}, SHIFT(40), + [432] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_definitions, 4), + [434] = {.entry = {.count = 1, .reusable = true}}, SHIFT(124), + [436] = {.entry = {.count = 1, .reusable = true}}, SHIFT(131), + [438] = {.entry = {.count = 1, .reusable = true}}, SHIFT(165), + [440] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), + [442] = {.entry = {.count = 1, .reusable = true}}, SHIFT(36), + [444] = {.entry = {.count = 1, .reusable = false}}, SHIFT(214), + [446] = {.entry = {.count = 1, .reusable = false}}, SHIFT(208), + [448] = {.entry = {.count = 1, .reusable = false}}, SHIFT(180), + [450] = {.entry = {.count = 1, .reusable = true}}, SHIFT(223), + [452] = {.entry = {.count = 1, .reusable = true}}, SHIFT(217), + [454] = {.entry = {.count = 1, .reusable = true}}, SHIFT(201), + [456] = {.entry = {.count = 1, .reusable = false}}, SHIFT(218), + [458] = {.entry = {.count = 1, .reusable = true}}, SHIFT(190), + [460] = {.entry = {.count = 1, .reusable = true}}, SHIFT(97), + [462] = {.entry = {.count = 1, .reusable = true}}, SHIFT(191), + [464] = {.entry = {.count = 1, .reusable = true}}, SHIFT(49), + [466] = {.entry = {.count = 1, .reusable = true}}, SHIFT(86), + [468] = {.entry = {.count = 1, .reusable = true}}, SHIFT(224), + [470] = {.entry = {.count = 1, .reusable = false}}, SHIFT(195), + [472] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_temporary, 1), + [474] = {.entry = {.count = 1, .reusable = true}}, SHIFT(78), + [476] = {.entry = {.count = 1, .reusable = false}}, SHIFT(225), + [478] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_create_table, 5), + [480] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__create_statement, 1), + [482] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__ddl_statement, 1), + [484] = {.entry = {.count = 1, .reusable = true}}, SHIFT(117), + [486] = {.entry = {.count = 1, .reusable = true}}, SHIFT(69), + [488] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_line_comment, 2), + [490] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block_comment, 3), }; #ifdef __cplusplus diff --git a/test/corpus/create/table.txt b/test/corpus/create/table.txt index f8e9e35..d390d10 100644 --- a/test/corpus/create/table.txt +++ b/test/corpus/create/table.txt @@ -267,7 +267,9 @@ create table foo ( (table_reference name: (identifier) ) - refcolumn: (identifier) + (ref_column + name: (identifier) + ) (keyword_on) (keyword_update) (referencial_action @@ -370,3 +372,310 @@ create table foo ( ) ) ) + +================================================================================ +Create a table with table constraints +================================================================================ +create table foo ( + id uuid, + primary key (id), + c1 text not null, + c2 text null, + c3 text not null default 'hello', + unique (c1, c3) +); +-------------------------------------------------------------------------------- + +(source_file + (statement + (create_table + (keyword_create) + (keyword_table) + (table_reference + name: (identifier) + ) + (column_definitions + (column_definition + name: (identifier) + (type (keyword_uuid)) + ) + (table_constraint + (keyword_primary) + (keyword_key) + (column_list + name: (identifier) + ) + ) + (column_definition + name: (identifier) + (type (keyword_text)) + (column_constraint + (keyword_not) + (keyword_null) + ) + ) + (column_definition + name: (identifier) + (type (keyword_text)) + (column_constraint + (keyword_null) + ) + ) + (column_definition + name: (identifier) + (type (keyword_text)) + (column_constraint + (keyword_not) + (keyword_null) + ) + (column_constraint + (keyword_default) + (literal + (literal_string) + ) + ) + ) + (table_constraint + (keyword_unique) + (column_list + name: (identifier) + name: (identifier) + ) + ) + ) + ) + ) +) + +================================================================================ +Create a table with primary key and foreign key +================================================================================ +create table foo ( + id uuid primary key, + bar_id uuid null references bar (id) on update set null on delete cascade +); +-------------------------------------------------------------------------------- + +(source_file + (statement + (create_table + (keyword_create) + (keyword_table) + (table_reference + name: (identifier) + ) + (column_definitions + (column_definition + name: (identifier) + (type (keyword_uuid)) + (column_constraint + (keyword_primary) + (keyword_key) + ) + ) + (column_definition + name: (identifier) + (type (keyword_uuid)) + (column_constraint + (keyword_null) + ) + (column_constraint + (keyword_references) + (table_reference + name: (identifier) + ) + (ref_column + name: (identifier) + ) + (keyword_on) + (keyword_update) + (referencial_action + (keyword_set) + (keyword_null) + ) + (keyword_on) + (keyword_delete) + (referencial_action + (keyword_cascade) + ) + ) + ) + ) + ) + ) +) + +================================================================================ +Create a table with named column constraints +================================================================================ +create table foo ( + id uuid constraint foo_pkey primary key, + c1 text constraint strong_c1 not null, + c2 text constraint weak_c2 null, + c3 text constraint "c3 with power" not null constraint "c2 set default hello" default 'hello', + c4 text constraint "c4 unique" unique nulls not distinct +); +-------------------------------------------------------------------------------- + +(source_file + (statement + (create_table + (keyword_create) + (keyword_table) + (table_reference + name: (identifier) + ) + (column_definitions + (column_definition + name: (identifier) + (type (keyword_uuid)) + (column_constraint + (keyword_constraint) + name: (identifier) + (keyword_primary) + (keyword_key) + ) + ) + (column_definition + name: (identifier) + (type (keyword_text)) + (column_constraint + (keyword_constraint) + name: (identifier) + (keyword_not) + (keyword_null) + ) + ) + (column_definition + name: (identifier) + (type (keyword_text)) + (column_constraint + (keyword_constraint) + name: (identifier) + (keyword_null) + ) + ) + (column_definition + name: (identifier) + (type (keyword_text)) + (column_constraint + (keyword_constraint) + name: (identifier) + (keyword_not) + (keyword_null) + ) + (column_constraint + (keyword_constraint) + name: (identifier) + (keyword_default) + (literal + (literal_string) + ) + ) + ) + (column_definition + name: (identifier) + (type (keyword_text)) + (column_constraint + (keyword_constraint) + name: (identifier) + (keyword_unique) + (keyword_nulls) + (keyword_not) + (keyword_distinct) + ) + ) + ) + ) + ) +) + +================================================================================ +Create a table with named table constraints +================================================================================ +create table foo ( + id uuid, + constraint foo_pkey primary key (id), + c3 uuid not null, + constraint foo_c3_fkey foreign key (c3) references bar (id) on update set null on delete cascade, + c4 text, + constraint "c4 unique" unique nulls not distinct (c4) +); +-------------------------------------------------------------------------------- + +(source_file + (statement + (create_table + (keyword_create) + (keyword_table) + (table_reference + name: (identifier) + ) + (column_definitions + (column_definition + name: (identifier) + (type (keyword_uuid)) + ) + (table_constraint + (keyword_constraint) + name: (identifier) + (keyword_primary) + (keyword_key) + (column_list + name: (identifier) + ) + ) + (column_definition + name: (identifier) + (type (keyword_uuid)) + (column_constraint + (keyword_not) + (keyword_null) + ) + ) + (table_constraint + (keyword_constraint) + name: (identifier) + (keyword_foreign) + (keyword_key) + (column_list + name: (identifier) + ) + (keyword_references) + (table_reference + name: (identifier) + ) + (ref_column_list + name: (identifier) + ) + (keyword_on) + (keyword_update) + (referencial_action + (keyword_set) + (keyword_null) + ) + (keyword_on) + (keyword_delete) + (referencial_action + (keyword_cascade) + ) + ) + (column_definition + name: (identifier) + (type (keyword_text)) + ) + (table_constraint + (keyword_constraint) + name: (identifier) + (keyword_unique) + (keyword_nulls) + (keyword_not) + (keyword_distinct) + (column_list + name: (identifier) + ) + ) + ) + ) + ) +) diff --git a/tree-sitter-plpgsql.wasm b/tree-sitter-plpgsql.wasm deleted file mode 100755 index e2cd634cb8980470f1a4c23ea55b4e32e5baad19..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 37046 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 W^8)hB1+_rF-k`$JX$zW;eE$pk9&*$G diff --git a/tree-sitter-psql.wasm b/tree-sitter-psql.wasm index 95de4dd60d56ef2e3bc01955918e850608128e78..144db6a7cc1dbcaa847bb50c5b0824d4608b29f6 100755 GIT binary patch delta 11903 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 HhVTCXRYO%! delta 10415 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 Jgx?;-|1TgmJVpQj