diff --git a/grammar.js b/grammar.js index b213811..69a619f 100644 --- a/grammar.js +++ b/grammar.js @@ -63,14 +63,45 @@ module.exports = grammar({ seq($.keyword_nulls, optional($.keyword_not), $.keyword_distinct) ) ), - $.keyword_primary_key + $._primary_key, + seq( + $.keyword_references, + $.table_reference, + optional(seq("(", field("refcolumn", $.identifier), ")")), + optional($._foreign_key_match), + choice( + seq($._foreign_key_on_delete, $._foreign_key_on_update), + seq($._foreign_key_on_update, $._foreign_key_on_delete) + ) + ) // TODO: CHECK // TODO: GENERATED - // TODO: FOREIGN KEY ) // TODO: DEFERRABLE ), + _foreign_key_match: ($) => + seq( + $.keyword_match, + choice($.keyword_full, $.keyword_partial, $.keyword_simple) + ), + _foreign_key_on_delete: ($) => + seq($.keyword_on, $.keyword_delete, $.referencial_action), + _foreign_key_on_update: ($) => + seq($.keyword_on, $.keyword_update, $.referencial_action), + + referencial_action: ($) => + choice( + seq($.keyword_no, $.keyword_action), + $.keyword_restrict, + $.keyword_cascade, + seq( + $.keyword_set, + choice($.keyword_null, $.keyword_default), + optional(seq("(", commaSepRepeat1($.identifier), ")")) + ) + ), + table_reference: ($) => seq( optional(seq(field("schema", $.identifier), ".")), @@ -174,6 +205,8 @@ module.exports = grammar({ _type_json: ($) => choice($.keyword_json, $.keyword_jsonb), // keywords + _primary_key: ($) => seq($.keyword_primary, $.keyword_key), + _foreign_key: ($) => seq($.keyword_foreign, $.keyword_key), _if_not_exists: ($) => seq($.keyword_if, $.keyword_not, $.keyword_exists), _not_null: ($) => seq($.keyword_not, $.keyword_null), _without_time_zone: ($) => seq(mkKeyword("without"), $._keyword_time_zone), @@ -195,7 +228,22 @@ module.exports = grammar({ keyword_nulls: (_) => mkKeyword("nulls"), keyword_distinct: (_) => mkKeyword("distinct"), keyword_unique: (_) => mkKeyword("unique"), - keyword_primary_key: (_) => seq(mkKeyword("primary"), mkKeyword("key")), + keyword_primary: (_) => mkKeyword("primary"), + keyword_foreign: (_) => mkKeyword("foreign"), + keyword_key: (_) => mkKeyword("key"), + keyword_references: (_) => mkKeyword("references"), + keyword_on: (_) => mkKeyword("on"), + keyword_no: (_) => mkKeyword("no"), + keyword_delete: (_) => mkKeyword("delete"), + keyword_update: (_) => mkKeyword("update"), + keyword_match: (_) => mkKeyword("match"), + keyword_full: (_) => mkKeyword("full"), + keyword_partial: (_) => mkKeyword("partial"), + keyword_simple: (_) => mkKeyword("simple"), + keyword_action: (_) => mkKeyword("action"), + keyword_set: (_) => mkKeyword("set"), + keyword_restrict: (_) => mkKeyword("restrict"), + keyword_cascade: (_) => mkKeyword("cascade"), // References: https://www.postgresql.org/docs/15/datatype-xml.html keyword_xml: (_) => mkKeyword("xml"), // References: https://www.postgresql.org/docs/15/datatype-uuid.html diff --git a/src/grammar.json b/src/grammar.json index 1157046..c5c506f 100644 --- a/src/grammar.json +++ b/src/grammar.json @@ -287,7 +287,246 @@ }, { "type": "SYMBOL", - "name": "keyword_primary_key" + "name": "_primary_key" + }, + { + "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": "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" + } + ] + } + ] + } + ] + } + ] + } + ] + }, + "_foreign_key_match": { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "keyword_match" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "keyword_full" + }, + { + "type": "SYMBOL", + "name": "keyword_partial" + }, + { + "type": "SYMBOL", + "name": "keyword_simple" + } + ] + } + ] + }, + "_foreign_key_on_delete": { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "keyword_on" + }, + { + "type": "SYMBOL", + "name": "keyword_delete" + }, + { + "type": "SYMBOL", + "name": "referencial_action" + } + ] + }, + "_foreign_key_on_update": { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "keyword_on" + }, + { + "type": "SYMBOL", + "name": "keyword_update" + }, + { + "type": "SYMBOL", + "name": "referencial_action" + } + ] + }, + "referencial_action": { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "keyword_no" + }, + { + "type": "SYMBOL", + "name": "keyword_action" + } + ] + }, + { + "type": "SYMBOL", + "name": "keyword_restrict" + }, + { + "type": "SYMBOL", + "name": "keyword_cascade" + }, + { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "keyword_set" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "keyword_null" + }, + { + "type": "SYMBOL", + "name": "keyword_default" + } + ] + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "(" + }, + { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "identifier" + }, + { + "type": "REPEAT", + "content": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "SYMBOL", + "name": "identifier" + } + ] + } + } + ] + }, + { + "type": "STRING", + "value": ")" + } + ] + }, + { + "type": "BLANK" + } + ] } ] } @@ -859,6 +1098,32 @@ } ] }, + "_primary_key": { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "keyword_primary" + }, + { + "type": "SYMBOL", + "name": "keyword_key" + } + ] + }, + "_foreign_key": { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "keyword_foreign" + }, + { + "type": "SYMBOL", + "name": "keyword_key" + } + ] + }, "_if_not_exists": { "type": "SEQ", "members": [ @@ -997,18 +1262,69 @@ "type": "PATTERN", "value": "unique|UNIQUE" }, - "keyword_primary_key": { - "type": "SEQ", - "members": [ - { - "type": "PATTERN", - "value": "primary|PRIMARY" - }, - { - "type": "PATTERN", - "value": "key|KEY" - } - ] + "keyword_primary": { + "type": "PATTERN", + "value": "primary|PRIMARY" + }, + "keyword_foreign": { + "type": "PATTERN", + "value": "foreign|FOREIGN" + }, + "keyword_key": { + "type": "PATTERN", + "value": "key|KEY" + }, + "keyword_references": { + "type": "PATTERN", + "value": "references|REFERENCES" + }, + "keyword_on": { + "type": "PATTERN", + "value": "on|ON" + }, + "keyword_no": { + "type": "PATTERN", + "value": "no|NO" + }, + "keyword_delete": { + "type": "PATTERN", + "value": "delete|DELETE" + }, + "keyword_update": { + "type": "PATTERN", + "value": "update|UPDATE" + }, + "keyword_match": { + "type": "PATTERN", + "value": "match|MATCH" + }, + "keyword_full": { + "type": "PATTERN", + "value": "full|FULL" + }, + "keyword_partial": { + "type": "PATTERN", + "value": "partial|PARTIAL" + }, + "keyword_simple": { + "type": "PATTERN", + "value": "simple|SIMPLE" + }, + "keyword_action": { + "type": "PATTERN", + "value": "action|ACTION" + }, + "keyword_set": { + "type": "PATTERN", + "value": "set|SET" + }, + "keyword_restrict": { + "type": "PATTERN", + "value": "restrict|RESTRICT" + }, + "keyword_cascade": { + "type": "PATTERN", + "value": "cascade|CASCADE" }, "keyword_xml": { "type": "PATTERN", diff --git a/src/node-types.json b/src/node-types.json index c92bf3e..30e304e 100644 --- a/src/node-types.json +++ b/src/node-types.json @@ -43,6 +43,16 @@ "named": true } ] + }, + "refcolumn": { + "multiple": false, + "required": false, + "types": [ + { + "type": "identifier", + "named": true + } + ] } }, "children": { @@ -57,10 +67,26 @@ "type": "keyword_default", "named": true }, + { + "type": "keyword_delete", + "named": true + }, { "type": "keyword_distinct", "named": true }, + { + "type": "keyword_full", + "named": true + }, + { + "type": "keyword_key", + "named": true + }, + { + "type": "keyword_match", + "named": true + }, { "type": "keyword_not", "named": true @@ -74,16 +100,44 @@ "named": true }, { - "type": "keyword_primary_key", + "type": "keyword_on", + "named": true + }, + { + "type": "keyword_partial", + "named": true + }, + { + "type": "keyword_primary", + "named": true + }, + { + "type": "keyword_references", + "named": true + }, + { + "type": "keyword_simple", "named": true }, { "type": "keyword_unique", "named": true }, + { + "type": "keyword_update", + "named": true + }, { "type": "literal", "named": true + }, + { + "type": "referencial_action", + "named": true + }, + { + "type": "table_reference", + "named": true } ] } @@ -325,11 +379,6 @@ "named": true, "fields": {} }, - { - "type": "keyword_primary_key", - "named": true, - "fields": {} - }, { "type": "keyword_temporary", "named": true, @@ -419,6 +468,49 @@ ] } }, + { + "type": "referencial_action", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": true, + "types": [ + { + "type": "identifier", + "named": true + }, + { + "type": "keyword_action", + "named": true + }, + { + "type": "keyword_cascade", + "named": true + }, + { + "type": "keyword_default", + "named": true + }, + { + "type": "keyword_no", + "named": true + }, + { + "type": "keyword_null", + "named": true + }, + { + "type": "keyword_restrict", + "named": true + }, + { + "type": "keyword_set", + "named": true + } + ] + } + }, { "type": "source_file", "named": true, @@ -541,6 +633,10 @@ "type": ";", "named": false }, + { + "type": "keyword_action", + "named": true + }, { "type": "keyword_bigint", "named": true @@ -557,6 +653,10 @@ "type": "keyword_bytea", "named": true }, + { + "type": "keyword_cascade", + "named": true + }, { "type": "keyword_constraint", "named": true @@ -581,6 +681,10 @@ "type": "keyword_default", "named": true }, + { + "type": "keyword_delete", + "named": true + }, { "type": "keyword_distinct", "named": true @@ -593,6 +697,14 @@ "type": "keyword_false", "named": true }, + { + "type": "keyword_foreign", + "named": true + }, + { + "type": "keyword_full", + "named": true + }, { "type": "keyword_if", "named": true @@ -609,10 +721,22 @@ "type": "keyword_jsonb", "named": true }, + { + "type": "keyword_key", + "named": true + }, + { + "type": "keyword_match", + "named": true + }, { "type": "keyword_money", "named": true }, + { + "type": "keyword_no", + "named": true + }, { "type": "keyword_not", "named": true @@ -629,14 +753,42 @@ "type": "keyword_numeric", "named": true }, + { + "type": "keyword_on", + "named": true + }, + { + "type": "keyword_partial", + "named": true + }, + { + "type": "keyword_primary", + "named": true + }, { "type": "keyword_real", "named": true }, + { + "type": "keyword_references", + "named": true + }, + { + "type": "keyword_restrict", + "named": true + }, { "type": "keyword_serial", "named": true }, + { + "type": "keyword_set", + "named": true + }, + { + "type": "keyword_simple", + "named": true + }, { "type": "keyword_smallint", "named": true @@ -665,6 +817,10 @@ "type": "keyword_unlogged", "named": true }, + { + "type": "keyword_update", + "named": true + }, { "type": "keyword_uuid", "named": true diff --git a/src/parser.c b/src/parser.c index 3b2dd3c..1e50775 100644 --- a/src/parser.c +++ b/src/parser.c @@ -6,15 +6,15 @@ #endif #define LANGUAGE_VERSION 14 -#define STATE_COUNT 123 +#define STATE_COUNT 181 #define LARGE_STATE_COUNT 2 -#define SYMBOL_COUNT 108 +#define SYMBOL_COUNT 127 #define ALIAS_COUNT 0 -#define TOKEN_COUNT 65 +#define TOKEN_COUNT 79 #define EXTERNAL_TOKEN_COUNT 0 -#define FIELD_COUNT 6 -#define MAX_ALIAS_SEQUENCE_LENGTH 6 -#define PRODUCTION_ID_COUNT 8 +#define FIELD_COUNT 7 +#define MAX_ALIAS_SEQUENCE_LENGTH 10 +#define PRODUCTION_ID_COUNT 10 enum { sym__identifier = 1, @@ -45,85 +45,104 @@ enum { sym_keyword_nulls = 26, sym_keyword_distinct = 27, sym_keyword_unique = 28, - aux_sym_keyword_primary_key_token1 = 29, - aux_sym_keyword_primary_key_token2 = 30, - sym_keyword_xml = 31, - sym_keyword_uuid = 32, - sym_keyword_json = 33, - sym_keyword_jsonb = 34, - sym_keyword_boolean = 35, - sym_keyword_smallint = 36, - sym_keyword_integer = 37, - sym_keyword_bigint = 38, - sym_keyword_decimal = 39, - sym_keyword_numeric = 40, - sym_keyword_real = 41, - sym_keyword_smallserial = 42, - sym_keyword_serial = 43, - sym_keyword_bigserial = 44, - sym_keyword_money = 45, - sym_keyword_text = 46, - aux_sym_keyword_char_token1 = 47, - aux_sym_keyword_char_token2 = 48, - aux_sym_keyword_varchar_token1 = 49, - sym_keyword_bytea = 50, - sym_keyword_date = 51, - sym_keyword_datetime = 52, - aux_sym_keyword_timestamp_token1 = 53, - aux_sym_keyword_timestamptz_token1 = 54, - anon_sym_DASH_DASH = 55, - aux_sym_line_comment_token1 = 56, - anon_sym_SLASH_STAR = 57, - aux_sym_block_comment_token1 = 58, - anon_sym_SLASH = 59, - anon_sym_SQUOTE = 60, - aux_sym__literal_string_token1 = 61, - sym__number = 62, - anon_sym_DQUOTE = 63, - aux_sym_identifier_token1 = 64, - sym_source_file = 65, - sym_statement = 66, - sym__ddl_statement = 67, - sym__create_statement = 68, - sym_create_table = 69, - sym_column_definitions = 70, - sym_column_definition = 71, - sym_column_constraint = 72, - sym_table_reference = 73, - sym__expression = 74, - sym_literal = 75, - sym__type = 76, - sym__type_numeric = 77, - sym_double = 78, - sym_decimal = 79, - sym_numeric = 80, - sym__type_character = 81, - sym_char = 82, - sym_varchar = 83, - sym__type_datetime = 84, - sym__type_geometric = 85, - sym__type_net = 86, - sym__type_bit_string = 87, - sym__type_text_search = 88, - sym__if_not_exists = 89, - sym__not_null = 90, - sym__without_time_zone = 91, - sym__with_time_zone = 92, - sym__keyword_time_zone = 93, - sym_keyword_temporary = 94, - sym_keyword_primary_key = 95, - sym_keyword_char = 96, - sym_keyword_varchar = 97, - sym_keyword_time = 98, - sym_keyword_timestamp = 99, - sym_keyword_timestamptz = 100, - sym_line_comment = 101, - sym_block_comment = 102, - sym__literal_string = 103, - sym_identifier = 104, - aux_sym_source_file_repeat1 = 105, - aux_sym_column_definitions_repeat1 = 106, - aux_sym_column_definition_repeat1 = 107, + sym_keyword_primary = 29, + sym_keyword_foreign = 30, + sym_keyword_key = 31, + sym_keyword_references = 32, + sym_keyword_on = 33, + sym_keyword_no = 34, + sym_keyword_delete = 35, + sym_keyword_update = 36, + sym_keyword_match = 37, + sym_keyword_full = 38, + sym_keyword_partial = 39, + sym_keyword_simple = 40, + sym_keyword_action = 41, + sym_keyword_set = 42, + sym_keyword_restrict = 43, + sym_keyword_cascade = 44, + sym_keyword_xml = 45, + sym_keyword_uuid = 46, + sym_keyword_json = 47, + sym_keyword_jsonb = 48, + sym_keyword_boolean = 49, + sym_keyword_smallint = 50, + sym_keyword_integer = 51, + sym_keyword_bigint = 52, + sym_keyword_decimal = 53, + sym_keyword_numeric = 54, + sym_keyword_real = 55, + sym_keyword_smallserial = 56, + sym_keyword_serial = 57, + sym_keyword_bigserial = 58, + sym_keyword_money = 59, + sym_keyword_text = 60, + aux_sym_keyword_char_token1 = 61, + aux_sym_keyword_char_token2 = 62, + aux_sym_keyword_varchar_token1 = 63, + sym_keyword_bytea = 64, + sym_keyword_date = 65, + sym_keyword_datetime = 66, + aux_sym_keyword_timestamp_token1 = 67, + aux_sym_keyword_timestamptz_token1 = 68, + anon_sym_DASH_DASH = 69, + aux_sym_line_comment_token1 = 70, + anon_sym_SLASH_STAR = 71, + aux_sym_block_comment_token1 = 72, + anon_sym_SLASH = 73, + anon_sym_SQUOTE = 74, + aux_sym__literal_string_token1 = 75, + sym__number = 76, + anon_sym_DQUOTE = 77, + aux_sym_identifier_token1 = 78, + sym_source_file = 79, + sym_statement = 80, + sym__ddl_statement = 81, + sym__create_statement = 82, + sym_create_table = 83, + sym_column_definitions = 84, + sym_column_definition = 85, + sym_column_constraint = 86, + sym__foreign_key_match = 87, + sym__foreign_key_on_delete = 88, + sym__foreign_key_on_update = 89, + sym_referencial_action = 90, + sym_table_reference = 91, + sym__expression = 92, + sym_literal = 93, + sym__type = 94, + sym__type_numeric = 95, + sym_double = 96, + sym_decimal = 97, + sym_numeric = 98, + sym__type_character = 99, + sym_char = 100, + sym_varchar = 101, + sym__type_datetime = 102, + sym__type_geometric = 103, + sym__type_net = 104, + sym__type_bit_string = 105, + sym__type_text_search = 106, + sym__primary_key = 107, + sym__if_not_exists = 108, + sym__not_null = 109, + sym__without_time_zone = 110, + sym__with_time_zone = 111, + sym__keyword_time_zone = 112, + sym_keyword_temporary = 113, + sym_keyword_char = 114, + sym_keyword_varchar = 115, + sym_keyword_time = 116, + sym_keyword_timestamp = 117, + sym_keyword_timestamptz = 118, + sym_line_comment = 119, + sym_block_comment = 120, + sym__literal_string = 121, + sym_identifier = 122, + aux_sym_source_file_repeat1 = 123, + aux_sym_column_definitions_repeat1 = 124, + aux_sym_column_definition_repeat1 = 125, + aux_sym_referencial_action_repeat1 = 126, }; static const char * const ts_symbol_names[] = { @@ -156,8 +175,22 @@ static const char * const ts_symbol_names[] = { [sym_keyword_nulls] = "keyword_nulls", [sym_keyword_distinct] = "keyword_distinct", [sym_keyword_unique] = "keyword_unique", - [aux_sym_keyword_primary_key_token1] = "keyword_primary_key_token1", - [aux_sym_keyword_primary_key_token2] = "keyword_primary_key_token2", + [sym_keyword_primary] = "keyword_primary", + [sym_keyword_foreign] = "keyword_foreign", + [sym_keyword_key] = "keyword_key", + [sym_keyword_references] = "keyword_references", + [sym_keyword_on] = "keyword_on", + [sym_keyword_no] = "keyword_no", + [sym_keyword_delete] = "keyword_delete", + [sym_keyword_update] = "keyword_update", + [sym_keyword_match] = "keyword_match", + [sym_keyword_full] = "keyword_full", + [sym_keyword_partial] = "keyword_partial", + [sym_keyword_simple] = "keyword_simple", + [sym_keyword_action] = "keyword_action", + [sym_keyword_set] = "keyword_set", + [sym_keyword_restrict] = "keyword_restrict", + [sym_keyword_cascade] = "keyword_cascade", [sym_keyword_xml] = "keyword_xml", [sym_keyword_uuid] = "keyword_uuid", [sym_keyword_json] = "keyword_json", @@ -200,6 +233,10 @@ static const char * const ts_symbol_names[] = { [sym_column_definitions] = "column_definitions", [sym_column_definition] = "column_definition", [sym_column_constraint] = "column_constraint", + [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", + [sym_referencial_action] = "referencial_action", [sym_table_reference] = "table_reference", [sym__expression] = "_expression", [sym_literal] = "literal", @@ -216,13 +253,13 @@ static const char * const ts_symbol_names[] = { [sym__type_net] = "_type_net", [sym__type_bit_string] = "_type_bit_string", [sym__type_text_search] = "_type_text_search", + [sym__primary_key] = "_primary_key", [sym__if_not_exists] = "_if_not_exists", [sym__not_null] = "_not_null", [sym__without_time_zone] = "_without_time_zone", [sym__with_time_zone] = "_with_time_zone", [sym__keyword_time_zone] = "_keyword_time_zone", [sym_keyword_temporary] = "keyword_temporary", - [sym_keyword_primary_key] = "keyword_primary_key", [sym_keyword_char] = "keyword_char", [sym_keyword_varchar] = "keyword_varchar", [sym_keyword_time] = "keyword_time", @@ -235,6 +272,7 @@ static const char * const ts_symbol_names[] = { [aux_sym_source_file_repeat1] = "source_file_repeat1", [aux_sym_column_definitions_repeat1] = "column_definitions_repeat1", [aux_sym_column_definition_repeat1] = "column_definition_repeat1", + [aux_sym_referencial_action_repeat1] = "referencial_action_repeat1", }; static const TSSymbol ts_symbol_map[] = { @@ -267,8 +305,22 @@ static const TSSymbol ts_symbol_map[] = { [sym_keyword_nulls] = sym_keyword_nulls, [sym_keyword_distinct] = sym_keyword_distinct, [sym_keyword_unique] = sym_keyword_unique, - [aux_sym_keyword_primary_key_token1] = aux_sym_keyword_primary_key_token1, - [aux_sym_keyword_primary_key_token2] = aux_sym_keyword_primary_key_token2, + [sym_keyword_primary] = sym_keyword_primary, + [sym_keyword_foreign] = sym_keyword_foreign, + [sym_keyword_key] = sym_keyword_key, + [sym_keyword_references] = sym_keyword_references, + [sym_keyword_on] = sym_keyword_on, + [sym_keyword_no] = sym_keyword_no, + [sym_keyword_delete] = sym_keyword_delete, + [sym_keyword_update] = sym_keyword_update, + [sym_keyword_match] = sym_keyword_match, + [sym_keyword_full] = sym_keyword_full, + [sym_keyword_partial] = sym_keyword_partial, + [sym_keyword_simple] = sym_keyword_simple, + [sym_keyword_action] = sym_keyword_action, + [sym_keyword_set] = sym_keyword_set, + [sym_keyword_restrict] = sym_keyword_restrict, + [sym_keyword_cascade] = sym_keyword_cascade, [sym_keyword_xml] = sym_keyword_xml, [sym_keyword_uuid] = sym_keyword_uuid, [sym_keyword_json] = sym_keyword_json, @@ -311,6 +363,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__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, + [sym_referencial_action] = sym_referencial_action, [sym_table_reference] = sym_table_reference, [sym__expression] = sym__expression, [sym_literal] = sym_literal, @@ -327,13 +383,13 @@ static const TSSymbol ts_symbol_map[] = { [sym__type_net] = sym__type_net, [sym__type_bit_string] = sym__type_bit_string, [sym__type_text_search] = sym__type_text_search, + [sym__primary_key] = sym__primary_key, [sym__if_not_exists] = sym__if_not_exists, [sym__not_null] = sym__not_null, [sym__without_time_zone] = sym__without_time_zone, [sym__with_time_zone] = sym__with_time_zone, [sym__keyword_time_zone] = sym__keyword_time_zone, [sym_keyword_temporary] = sym_keyword_temporary, - [sym_keyword_primary_key] = sym_keyword_primary_key, [sym_keyword_char] = sym_keyword_char, [sym_keyword_varchar] = sym_keyword_varchar, [sym_keyword_time] = sym_keyword_time, @@ -346,6 +402,7 @@ static const TSSymbol ts_symbol_map[] = { [aux_sym_source_file_repeat1] = aux_sym_source_file_repeat1, [aux_sym_column_definitions_repeat1] = aux_sym_column_definitions_repeat1, [aux_sym_column_definition_repeat1] = aux_sym_column_definition_repeat1, + [aux_sym_referencial_action_repeat1] = aux_sym_referencial_action_repeat1, }; static const TSSymbolMetadata ts_symbol_metadata[] = { @@ -465,13 +522,69 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = true, }, - [aux_sym_keyword_primary_key_token1] = { - .visible = false, - .named = false, + [sym_keyword_primary] = { + .visible = true, + .named = true, }, - [aux_sym_keyword_primary_key_token2] = { - .visible = false, - .named = false, + [sym_keyword_foreign] = { + .visible = true, + .named = true, + }, + [sym_keyword_key] = { + .visible = true, + .named = true, + }, + [sym_keyword_references] = { + .visible = true, + .named = true, + }, + [sym_keyword_on] = { + .visible = true, + .named = true, + }, + [sym_keyword_no] = { + .visible = true, + .named = true, + }, + [sym_keyword_delete] = { + .visible = true, + .named = true, + }, + [sym_keyword_update] = { + .visible = true, + .named = true, + }, + [sym_keyword_match] = { + .visible = true, + .named = true, + }, + [sym_keyword_full] = { + .visible = true, + .named = true, + }, + [sym_keyword_partial] = { + .visible = true, + .named = true, + }, + [sym_keyword_simple] = { + .visible = true, + .named = true, + }, + [sym_keyword_action] = { + .visible = true, + .named = true, + }, + [sym_keyword_set] = { + .visible = true, + .named = true, + }, + [sym_keyword_restrict] = { + .visible = true, + .named = true, + }, + [sym_keyword_cascade] = { + .visible = true, + .named = true, }, [sym_keyword_xml] = { .visible = true, @@ -641,6 +754,22 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = true, }, + [sym__foreign_key_match] = { + .visible = false, + .named = true, + }, + [sym__foreign_key_on_delete] = { + .visible = false, + .named = true, + }, + [sym__foreign_key_on_update] = { + .visible = false, + .named = true, + }, + [sym_referencial_action] = { + .visible = true, + .named = true, + }, [sym_table_reference] = { .visible = true, .named = true, @@ -705,6 +834,10 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = false, .named = true, }, + [sym__primary_key] = { + .visible = false, + .named = true, + }, [sym__if_not_exists] = { .visible = false, .named = true, @@ -729,10 +862,6 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = true, }, - [sym_keyword_primary_key] = { - .visible = true, - .named = true, - }, [sym_keyword_char] = { .visible = true, .named = true, @@ -781,15 +910,20 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = false, .named = false, }, + [aux_sym_referencial_action_repeat1] = { + .visible = false, + .named = false, + }, }; enum { field_datatype = 1, field_name = 2, field_precision = 3, - field_scale = 4, - field_schema = 5, - field_size = 6, + field_refcolumn = 4, + field_scale = 5, + field_schema = 6, + field_size = 7, }; static const char * const ts_field_names[] = { @@ -797,6 +931,7 @@ static const char * const ts_field_names[] = { [field_datatype] = "datatype", [field_name] = "name", [field_precision] = "precision", + [field_refcolumn] = "refcolumn", [field_scale] = "scale", [field_schema] = "schema", [field_size] = "size", @@ -810,6 +945,8 @@ static const TSFieldMapSlice ts_field_map_slices[PRODUCTION_ID_COUNT] = { [5] = {.index = 6, .length = 1}, [6] = {.index = 7, .length = 1}, [7] = {.index = 8, .length = 2}, + [8] = {.index = 10, .length = 1}, + [9] = {.index = 11, .length = 2}, }; static const TSFieldMapEntry ts_field_map_entries[] = { @@ -830,6 +967,11 @@ static const TSFieldMapEntry ts_field_map_entries[] = { [8] = {field_precision, 2}, {field_scale, 4}, + [10] = + {field_refcolumn, 3}, + [11] = + {field_name, 1}, + {field_refcolumn, 5}, }; static const TSSymbol ts_alias_sequences[PRODUCTION_ID_COUNT][MAX_ALIAS_SEQUENCE_LENGTH] = { @@ -974,6 +1116,64 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [120] = 120, [121] = 121, [122] = 122, + [123] = 123, + [124] = 124, + [125] = 125, + [126] = 126, + [127] = 127, + [128] = 128, + [129] = 129, + [130] = 130, + [131] = 131, + [132] = 132, + [133] = 133, + [134] = 134, + [135] = 135, + [136] = 136, + [137] = 137, + [138] = 138, + [139] = 139, + [140] = 140, + [141] = 141, + [142] = 142, + [143] = 143, + [144] = 144, + [145] = 145, + [146] = 146, + [147] = 147, + [148] = 148, + [149] = 149, + [150] = 150, + [151] = 151, + [152] = 152, + [153] = 153, + [154] = 154, + [155] = 155, + [156] = 156, + [157] = 157, + [158] = 158, + [159] = 159, + [160] = 160, + [161] = 161, + [162] = 162, + [163] = 163, + [164] = 164, + [165] = 165, + [166] = 166, + [167] = 167, + [168] = 168, + [169] = 169, + [170] = 170, + [171] = 171, + [172] = 172, + [173] = 173, + [174] = 174, + [175] = 175, + [176] = 176, + [177] = 177, + [178] = 178, + [179] = 179, + [180] = 180, }; static bool ts_lex(TSLexer *lexer, TSStateId state) { @@ -1271,1355 +1471,1720 @@ static bool ts_lex_keywords(TSLexer *lexer, TSStateId state) { eof = lexer->eof(lexer); switch (state) { case 0: - if (lookahead == 'B') ADVANCE(1); - if (lookahead == 'C') ADVANCE(2); - if (lookahead == 'D') ADVANCE(3); - if (lookahead == 'E') ADVANCE(4); - if (lookahead == 'F') ADVANCE(5); - if (lookahead == 'I') ADVANCE(6); - if (lookahead == 'J') ADVANCE(7); - if (lookahead == 'K') ADVANCE(8); - if (lookahead == 'M') ADVANCE(9); - if (lookahead == 'N') ADVANCE(10); - if (lookahead == 'P') ADVANCE(11); - if (lookahead == 'R') ADVANCE(12); - if (lookahead == 'S') ADVANCE(13); - if (lookahead == 'T') ADVANCE(14); - if (lookahead == 'U') ADVANCE(15); - if (lookahead == 'V') ADVANCE(16); - if (lookahead == 'W') ADVANCE(17); - if (lookahead == 'X') ADVANCE(18); - if (lookahead == 'Z') ADVANCE(19); - if (lookahead == 'b') ADVANCE(20); - if (lookahead == 'c') ADVANCE(21); - if (lookahead == 'd') ADVANCE(22); - if (lookahead == 'e') ADVANCE(23); - if (lookahead == 'f') ADVANCE(24); - if (lookahead == 'i') ADVANCE(25); - if (lookahead == 'j') ADVANCE(26); - if (lookahead == 'k') ADVANCE(27); - if (lookahead == 'm') ADVANCE(28); - if (lookahead == 'n') ADVANCE(29); - if (lookahead == 'p') ADVANCE(30); - if (lookahead == 'r') ADVANCE(31); - if (lookahead == 's') ADVANCE(32); - if (lookahead == 't') ADVANCE(33); - if (lookahead == 'u') ADVANCE(34); - if (lookahead == 'v') ADVANCE(35); - if (lookahead == 'w') ADVANCE(36); - if (lookahead == 'x') ADVANCE(37); - if (lookahead == 'z') ADVANCE(38); + if (lookahead == 'A') ADVANCE(1); + if (lookahead == 'B') ADVANCE(2); + if (lookahead == 'C') ADVANCE(3); + if (lookahead == 'D') ADVANCE(4); + if (lookahead == 'E') ADVANCE(5); + if (lookahead == 'F') ADVANCE(6); + if (lookahead == 'I') ADVANCE(7); + if (lookahead == 'J') ADVANCE(8); + if (lookahead == 'K') ADVANCE(9); + if (lookahead == 'M') ADVANCE(10); + if (lookahead == 'N') ADVANCE(11); + if (lookahead == 'O') ADVANCE(12); + if (lookahead == 'P') ADVANCE(13); + if (lookahead == 'R') ADVANCE(14); + if (lookahead == 'S') ADVANCE(15); + if (lookahead == 'T') ADVANCE(16); + if (lookahead == 'U') ADVANCE(17); + if (lookahead == 'V') ADVANCE(18); + if (lookahead == 'W') ADVANCE(19); + if (lookahead == 'X') ADVANCE(20); + if (lookahead == 'Z') ADVANCE(21); + if (lookahead == 'a') ADVANCE(22); + if (lookahead == 'b') ADVANCE(23); + if (lookahead == 'c') ADVANCE(24); + if (lookahead == 'd') ADVANCE(25); + if (lookahead == 'e') ADVANCE(26); + if (lookahead == 'f') ADVANCE(27); + if (lookahead == 'i') ADVANCE(28); + if (lookahead == 'j') ADVANCE(29); + if (lookahead == 'k') ADVANCE(30); + if (lookahead == 'm') ADVANCE(31); + if (lookahead == 'n') ADVANCE(32); + if (lookahead == 'o') ADVANCE(33); + if (lookahead == 'p') ADVANCE(34); + if (lookahead == 'r') ADVANCE(35); + if (lookahead == 's') ADVANCE(36); + if (lookahead == 't') ADVANCE(37); + if (lookahead == 'u') ADVANCE(38); + if (lookahead == 'v') ADVANCE(39); + if (lookahead == 'w') ADVANCE(40); + if (lookahead == 'x') ADVANCE(41); + if (lookahead == 'z') ADVANCE(42); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || - lookahead == ' ') SKIP(39) + lookahead == ' ') SKIP(43) END_STATE(); case 1: - if (lookahead == 'I') ADVANCE(40); - if (lookahead == 'O') ADVANCE(41); - if (lookahead == 'Y') ADVANCE(42); + if (lookahead == 'C') ADVANCE(44); END_STATE(); case 2: - if (lookahead == 'H') ADVANCE(43); - if (lookahead == 'O') ADVANCE(44); - if (lookahead == 'R') ADVANCE(45); + if (lookahead == 'I') ADVANCE(45); + if (lookahead == 'O') ADVANCE(46); + if (lookahead == 'Y') ADVANCE(47); END_STATE(); case 3: - if (lookahead == 'A') ADVANCE(46); - if (lookahead == 'E') ADVANCE(47); - if (lookahead == 'I') ADVANCE(48); - if (lookahead == 'O') ADVANCE(49); + if (lookahead == 'A') ADVANCE(48); + if (lookahead == 'H') ADVANCE(49); + if (lookahead == 'O') ADVANCE(50); + if (lookahead == 'R') ADVANCE(51); END_STATE(); case 4: - if (lookahead == 'X') ADVANCE(50); + if (lookahead == 'A') ADVANCE(52); + if (lookahead == 'E') ADVANCE(53); + if (lookahead == 'I') ADVANCE(54); + if (lookahead == 'O') ADVANCE(55); END_STATE(); case 5: - if (lookahead == 'A') ADVANCE(51); + if (lookahead == 'X') ADVANCE(56); END_STATE(); case 6: - if (lookahead == 'F') ADVANCE(52); - if (lookahead == 'N') ADVANCE(53); + if (lookahead == 'A') ADVANCE(57); + if (lookahead == 'O') ADVANCE(58); + if (lookahead == 'U') ADVANCE(59); END_STATE(); case 7: - if (lookahead == 'S') ADVANCE(54); + if (lookahead == 'F') ADVANCE(60); + if (lookahead == 'N') ADVANCE(61); END_STATE(); case 8: - if (lookahead == 'E') ADVANCE(55); + if (lookahead == 'S') ADVANCE(62); END_STATE(); case 9: - if (lookahead == 'O') ADVANCE(56); + if (lookahead == 'E') ADVANCE(63); END_STATE(); case 10: - if (lookahead == 'O') ADVANCE(57); - if (lookahead == 'U') ADVANCE(58); + if (lookahead == 'A') ADVANCE(64); + if (lookahead == 'O') ADVANCE(65); END_STATE(); case 11: - if (lookahead == 'R') ADVANCE(59); + if (lookahead == 'O') ADVANCE(66); + if (lookahead == 'U') ADVANCE(67); END_STATE(); case 12: - if (lookahead == 'E') ADVANCE(60); + if (lookahead == 'N') ADVANCE(68); END_STATE(); case 13: - if (lookahead == 'E') ADVANCE(61); - if (lookahead == 'M') ADVANCE(62); + if (lookahead == 'A') ADVANCE(69); + if (lookahead == 'R') ADVANCE(70); END_STATE(); case 14: - if (lookahead == 'A') ADVANCE(63); - if (lookahead == 'E') ADVANCE(64); - if (lookahead == 'I') ADVANCE(65); - if (lookahead == 'R') ADVANCE(66); + if (lookahead == 'E') ADVANCE(71); END_STATE(); case 15: - if (lookahead == 'N') ADVANCE(67); - if (lookahead == 'U') ADVANCE(68); + if (lookahead == 'E') ADVANCE(72); + if (lookahead == 'I') ADVANCE(73); + if (lookahead == 'M') ADVANCE(74); END_STATE(); case 16: - if (lookahead == 'A') ADVANCE(69); + if (lookahead == 'A') ADVANCE(75); + if (lookahead == 'E') ADVANCE(76); + if (lookahead == 'I') ADVANCE(77); + if (lookahead == 'R') ADVANCE(78); END_STATE(); case 17: - if (lookahead == 'I') ADVANCE(70); + if (lookahead == 'N') ADVANCE(79); + if (lookahead == 'P') ADVANCE(80); + if (lookahead == 'U') ADVANCE(81); END_STATE(); case 18: - if (lookahead == 'M') ADVANCE(71); + if (lookahead == 'A') ADVANCE(82); END_STATE(); case 19: - if (lookahead == 'O') ADVANCE(72); + if (lookahead == 'I') ADVANCE(83); END_STATE(); case 20: - if (lookahead == 'i') ADVANCE(73); - if (lookahead == 'o') ADVANCE(74); - if (lookahead == 'y') ADVANCE(75); + if (lookahead == 'M') ADVANCE(84); END_STATE(); case 21: - if (lookahead == 'h') ADVANCE(76); - if (lookahead == 'o') ADVANCE(77); - if (lookahead == 'r') ADVANCE(78); + if (lookahead == 'O') ADVANCE(85); END_STATE(); case 22: - if (lookahead == 'a') ADVANCE(79); - if (lookahead == 'e') ADVANCE(80); - if (lookahead == 'i') ADVANCE(81); - if (lookahead == 'o') ADVANCE(82); + if (lookahead == 'c') ADVANCE(86); END_STATE(); case 23: - if (lookahead == 'x') ADVANCE(83); + if (lookahead == 'i') ADVANCE(87); + if (lookahead == 'o') ADVANCE(88); + if (lookahead == 'y') ADVANCE(89); END_STATE(); case 24: - if (lookahead == 'a') ADVANCE(84); + if (lookahead == 'a') ADVANCE(90); + if (lookahead == 'h') ADVANCE(91); + if (lookahead == 'o') ADVANCE(92); + if (lookahead == 'r') ADVANCE(93); END_STATE(); case 25: - if (lookahead == 'f') ADVANCE(52); - if (lookahead == 'n') ADVANCE(85); + if (lookahead == 'a') ADVANCE(94); + if (lookahead == 'e') ADVANCE(95); + if (lookahead == 'i') ADVANCE(96); + if (lookahead == 'o') ADVANCE(97); END_STATE(); case 26: - if (lookahead == 's') ADVANCE(86); + if (lookahead == 'x') ADVANCE(98); END_STATE(); case 27: - if (lookahead == 'e') ADVANCE(87); + if (lookahead == 'a') ADVANCE(99); + if (lookahead == 'o') ADVANCE(100); + if (lookahead == 'u') ADVANCE(101); END_STATE(); case 28: - if (lookahead == 'o') ADVANCE(88); + if (lookahead == 'f') ADVANCE(60); + if (lookahead == 'n') ADVANCE(102); END_STATE(); case 29: - if (lookahead == 'o') ADVANCE(89); - if (lookahead == 'u') ADVANCE(90); + if (lookahead == 's') ADVANCE(103); END_STATE(); case 30: - if (lookahead == 'r') ADVANCE(91); + if (lookahead == 'e') ADVANCE(104); END_STATE(); case 31: - if (lookahead == 'e') ADVANCE(92); + if (lookahead == 'a') ADVANCE(105); + if (lookahead == 'o') ADVANCE(106); END_STATE(); case 32: - if (lookahead == 'e') ADVANCE(93); - if (lookahead == 'm') ADVANCE(94); + if (lookahead == 'o') ADVANCE(107); + if (lookahead == 'u') ADVANCE(108); END_STATE(); case 33: - if (lookahead == 'a') ADVANCE(95); - if (lookahead == 'e') ADVANCE(96); - if (lookahead == 'i') ADVANCE(97); - if (lookahead == 'r') ADVANCE(98); + if (lookahead == 'n') ADVANCE(68); END_STATE(); case 34: - if (lookahead == 'n') ADVANCE(99); - if (lookahead == 'u') ADVANCE(100); + if (lookahead == 'a') ADVANCE(109); + if (lookahead == 'r') ADVANCE(110); END_STATE(); case 35: - if (lookahead == 'a') ADVANCE(101); + if (lookahead == 'e') ADVANCE(111); END_STATE(); case 36: - if (lookahead == 'i') ADVANCE(102); + if (lookahead == 'e') ADVANCE(112); + if (lookahead == 'i') ADVANCE(113); + if (lookahead == 'm') ADVANCE(114); END_STATE(); case 37: - if (lookahead == 'm') ADVANCE(103); + if (lookahead == 'a') ADVANCE(115); + if (lookahead == 'e') ADVANCE(116); + if (lookahead == 'i') ADVANCE(117); + if (lookahead == 'r') ADVANCE(118); END_STATE(); case 38: - if (lookahead == 'o') ADVANCE(104); + if (lookahead == 'n') ADVANCE(119); + if (lookahead == 'p') ADVANCE(120); + if (lookahead == 'u') ADVANCE(121); END_STATE(); case 39: + if (lookahead == 'a') ADVANCE(122); + END_STATE(); + case 40: + if (lookahead == 'i') ADVANCE(123); + END_STATE(); + case 41: + if (lookahead == 'm') ADVANCE(124); + END_STATE(); + case 42: + if (lookahead == 'o') ADVANCE(125); + END_STATE(); + case 43: if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || - lookahead == ' ') SKIP(39) - if (lookahead == 'B') ADVANCE(1); - if (lookahead == 'C') ADVANCE(2); - if (lookahead == 'D') ADVANCE(3); - if (lookahead == 'E') ADVANCE(4); - if (lookahead == 'F') ADVANCE(5); - if (lookahead == 'I') ADVANCE(6); - if (lookahead == 'J') ADVANCE(7); - if (lookahead == 'K') ADVANCE(8); - if (lookahead == 'M') ADVANCE(9); - if (lookahead == 'N') ADVANCE(10); - if (lookahead == 'P') ADVANCE(11); - if (lookahead == 'R') ADVANCE(12); - if (lookahead == 'S') ADVANCE(13); - if (lookahead == 'T') ADVANCE(14); - if (lookahead == 'U') ADVANCE(15); - if (lookahead == 'V') ADVANCE(16); - if (lookahead == 'W') ADVANCE(17); - if (lookahead == 'X') ADVANCE(18); - if (lookahead == 'Z') ADVANCE(19); - if (lookahead == 'b') ADVANCE(20); - if (lookahead == 'c') ADVANCE(21); - if (lookahead == 'd') ADVANCE(22); - if (lookahead == 'e') ADVANCE(23); - if (lookahead == 'f') ADVANCE(24); - if (lookahead == 'i') ADVANCE(25); - if (lookahead == 'j') ADVANCE(26); - if (lookahead == 'k') ADVANCE(27); - if (lookahead == 'm') ADVANCE(28); - if (lookahead == 'n') ADVANCE(29); - if (lookahead == 'p') ADVANCE(30); - if (lookahead == 'r') ADVANCE(31); - if (lookahead == 's') ADVANCE(32); - if (lookahead == 't') ADVANCE(33); - if (lookahead == 'u') ADVANCE(34); - if (lookahead == 'v') ADVANCE(35); - if (lookahead == 'w') ADVANCE(36); - if (lookahead == 'x') ADVANCE(37); - if (lookahead == 'z') ADVANCE(38); - END_STATE(); - case 40: - if (lookahead == 'G') ADVANCE(105); - END_STATE(); - case 41: - if (lookahead == 'O') ADVANCE(106); - END_STATE(); - case 42: - if (lookahead == 'T') ADVANCE(107); - END_STATE(); - case 43: - if (lookahead == 'A') ADVANCE(108); + lookahead == ' ') SKIP(43) + if (lookahead == 'A') ADVANCE(1); + if (lookahead == 'B') ADVANCE(2); + if (lookahead == 'C') ADVANCE(3); + if (lookahead == 'D') ADVANCE(4); + if (lookahead == 'E') ADVANCE(5); + if (lookahead == 'F') ADVANCE(6); + if (lookahead == 'I') ADVANCE(7); + if (lookahead == 'J') ADVANCE(8); + if (lookahead == 'K') ADVANCE(9); + if (lookahead == 'M') ADVANCE(10); + if (lookahead == 'N') ADVANCE(11); + if (lookahead == 'O') ADVANCE(12); + if (lookahead == 'P') ADVANCE(13); + if (lookahead == 'R') ADVANCE(14); + if (lookahead == 'S') ADVANCE(15); + if (lookahead == 'T') ADVANCE(16); + if (lookahead == 'U') ADVANCE(17); + if (lookahead == 'V') ADVANCE(18); + if (lookahead == 'W') ADVANCE(19); + if (lookahead == 'X') ADVANCE(20); + if (lookahead == 'Z') ADVANCE(21); + if (lookahead == 'a') ADVANCE(22); + if (lookahead == 'b') ADVANCE(23); + if (lookahead == 'c') ADVANCE(24); + if (lookahead == 'd') ADVANCE(25); + if (lookahead == 'e') ADVANCE(26); + if (lookahead == 'f') ADVANCE(27); + if (lookahead == 'i') ADVANCE(28); + if (lookahead == 'j') ADVANCE(29); + if (lookahead == 'k') ADVANCE(30); + if (lookahead == 'm') ADVANCE(31); + if (lookahead == 'n') ADVANCE(32); + if (lookahead == 'o') ADVANCE(33); + if (lookahead == 'p') ADVANCE(34); + if (lookahead == 'r') ADVANCE(35); + if (lookahead == 's') ADVANCE(36); + if (lookahead == 't') ADVANCE(37); + if (lookahead == 'u') ADVANCE(38); + if (lookahead == 'v') ADVANCE(39); + if (lookahead == 'w') ADVANCE(40); + if (lookahead == 'x') ADVANCE(41); + if (lookahead == 'z') ADVANCE(42); END_STATE(); case 44: - if (lookahead == 'N') ADVANCE(109); + if (lookahead == 'T') ADVANCE(126); END_STATE(); case 45: - if (lookahead == 'E') ADVANCE(110); + if (lookahead == 'G') ADVANCE(127); END_STATE(); case 46: - if (lookahead == 'T') ADVANCE(111); + if (lookahead == 'O') ADVANCE(128); END_STATE(); case 47: - if (lookahead == 'C') ADVANCE(112); - if (lookahead == 'F') ADVANCE(113); + if (lookahead == 'T') ADVANCE(129); END_STATE(); case 48: - if (lookahead == 'S') ADVANCE(114); + if (lookahead == 'S') ADVANCE(130); END_STATE(); case 49: - if (lookahead == 'U') ADVANCE(115); + if (lookahead == 'A') ADVANCE(131); END_STATE(); case 50: - if (lookahead == 'I') ADVANCE(116); + if (lookahead == 'N') ADVANCE(132); END_STATE(); case 51: - if (lookahead == 'L') ADVANCE(117); + if (lookahead == 'E') ADVANCE(133); END_STATE(); case 52: - ACCEPT_TOKEN(sym_keyword_if); + if (lookahead == 'T') ADVANCE(134); END_STATE(); case 53: - if (lookahead == 'T') ADVANCE(118); + if (lookahead == 'C') ADVANCE(135); + if (lookahead == 'F') ADVANCE(136); + if (lookahead == 'L') ADVANCE(137); END_STATE(); case 54: - if (lookahead == 'O') ADVANCE(119); + if (lookahead == 'S') ADVANCE(138); END_STATE(); case 55: - if (lookahead == 'Y') ADVANCE(120); + if (lookahead == 'U') ADVANCE(139); END_STATE(); case 56: - if (lookahead == 'N') ADVANCE(121); + if (lookahead == 'I') ADVANCE(140); END_STATE(); case 57: - if (lookahead == 'T') ADVANCE(122); + if (lookahead == 'L') ADVANCE(141); END_STATE(); case 58: - if (lookahead == 'L') ADVANCE(123); - if (lookahead == 'M') ADVANCE(124); + if (lookahead == 'R') ADVANCE(142); END_STATE(); case 59: - if (lookahead == 'E') ADVANCE(125); - if (lookahead == 'I') ADVANCE(126); + if (lookahead == 'L') ADVANCE(143); END_STATE(); case 60: - if (lookahead == 'A') ADVANCE(127); + ACCEPT_TOKEN(sym_keyword_if); END_STATE(); case 61: - if (lookahead == 'R') ADVANCE(128); + if (lookahead == 'T') ADVANCE(144); END_STATE(); case 62: - if (lookahead == 'A') ADVANCE(129); + if (lookahead == 'O') ADVANCE(145); END_STATE(); case 63: - if (lookahead == 'B') ADVANCE(130); + if (lookahead == 'Y') ADVANCE(146); END_STATE(); case 64: - if (lookahead == 'M') ADVANCE(131); - if (lookahead == 'X') ADVANCE(132); + if (lookahead == 'T') ADVANCE(147); END_STATE(); case 65: - if (lookahead == 'M') ADVANCE(133); + if (lookahead == 'N') ADVANCE(148); END_STATE(); case 66: - if (lookahead == 'U') ADVANCE(134); + ACCEPT_TOKEN(sym_keyword_no); + if (lookahead == 'T') ADVANCE(149); END_STATE(); case 67: - if (lookahead == 'I') ADVANCE(135); - if (lookahead == 'L') ADVANCE(136); + if (lookahead == 'L') ADVANCE(150); + if (lookahead == 'M') ADVANCE(151); END_STATE(); case 68: - if (lookahead == 'I') ADVANCE(137); + ACCEPT_TOKEN(sym_keyword_on); END_STATE(); case 69: - if (lookahead == 'R') ADVANCE(138); + if (lookahead == 'R') ADVANCE(152); END_STATE(); case 70: - if (lookahead == 'T') ADVANCE(139); + if (lookahead == 'E') ADVANCE(153); + if (lookahead == 'I') ADVANCE(154); END_STATE(); case 71: - if (lookahead == 'L') ADVANCE(140); + if (lookahead == 'A') ADVANCE(155); + if (lookahead == 'F') ADVANCE(156); + if (lookahead == 'S') ADVANCE(157); END_STATE(); case 72: - if (lookahead == 'N') ADVANCE(141); + if (lookahead == 'R') ADVANCE(158); + if (lookahead == 'T') ADVANCE(159); END_STATE(); case 73: - if (lookahead == 'g') ADVANCE(142); + if (lookahead == 'M') ADVANCE(160); END_STATE(); case 74: - if (lookahead == 'o') ADVANCE(143); + if (lookahead == 'A') ADVANCE(161); END_STATE(); case 75: - if (lookahead == 't') ADVANCE(144); + if (lookahead == 'B') ADVANCE(162); END_STATE(); case 76: - if (lookahead == 'a') ADVANCE(145); + if (lookahead == 'M') ADVANCE(163); + if (lookahead == 'X') ADVANCE(164); END_STATE(); case 77: - if (lookahead == 'n') ADVANCE(146); + if (lookahead == 'M') ADVANCE(165); END_STATE(); case 78: - if (lookahead == 'e') ADVANCE(147); + if (lookahead == 'U') ADVANCE(166); END_STATE(); case 79: - if (lookahead == 't') ADVANCE(148); + if (lookahead == 'I') ADVANCE(167); + if (lookahead == 'L') ADVANCE(168); END_STATE(); case 80: - if (lookahead == 'c') ADVANCE(149); - if (lookahead == 'f') ADVANCE(150); + if (lookahead == 'D') ADVANCE(169); END_STATE(); case 81: - if (lookahead == 's') ADVANCE(151); + if (lookahead == 'I') ADVANCE(170); END_STATE(); case 82: - if (lookahead == 'u') ADVANCE(152); + if (lookahead == 'R') ADVANCE(171); END_STATE(); case 83: - if (lookahead == 'i') ADVANCE(153); + if (lookahead == 'T') ADVANCE(172); END_STATE(); case 84: - if (lookahead == 'l') ADVANCE(154); + if (lookahead == 'L') ADVANCE(173); END_STATE(); case 85: - if (lookahead == 't') ADVANCE(155); + if (lookahead == 'N') ADVANCE(174); END_STATE(); case 86: - if (lookahead == 'o') ADVANCE(156); + if (lookahead == 't') ADVANCE(175); END_STATE(); case 87: - if (lookahead == 'y') ADVANCE(120); + if (lookahead == 'g') ADVANCE(176); END_STATE(); case 88: - if (lookahead == 'n') ADVANCE(157); + if (lookahead == 'o') ADVANCE(177); END_STATE(); case 89: - if (lookahead == 't') ADVANCE(122); + if (lookahead == 't') ADVANCE(178); END_STATE(); case 90: - if (lookahead == 'l') ADVANCE(158); - if (lookahead == 'm') ADVANCE(159); + if (lookahead == 's') ADVANCE(179); END_STATE(); case 91: - if (lookahead == 'e') ADVANCE(160); - if (lookahead == 'i') ADVANCE(161); + if (lookahead == 'a') ADVANCE(180); END_STATE(); case 92: - if (lookahead == 'a') ADVANCE(162); + if (lookahead == 'n') ADVANCE(181); END_STATE(); case 93: - if (lookahead == 'r') ADVANCE(163); + if (lookahead == 'e') ADVANCE(182); END_STATE(); case 94: - if (lookahead == 'a') ADVANCE(164); + if (lookahead == 't') ADVANCE(183); END_STATE(); case 95: - if (lookahead == 'b') ADVANCE(165); + if (lookahead == 'c') ADVANCE(184); + if (lookahead == 'f') ADVANCE(185); + if (lookahead == 'l') ADVANCE(186); END_STATE(); case 96: - if (lookahead == 'm') ADVANCE(166); - if (lookahead == 'x') ADVANCE(167); + if (lookahead == 's') ADVANCE(187); END_STATE(); case 97: - if (lookahead == 'm') ADVANCE(168); + if (lookahead == 'u') ADVANCE(188); END_STATE(); case 98: - if (lookahead == 'u') ADVANCE(169); + if (lookahead == 'i') ADVANCE(189); END_STATE(); case 99: - if (lookahead == 'i') ADVANCE(170); - if (lookahead == 'l') ADVANCE(171); + if (lookahead == 'l') ADVANCE(190); END_STATE(); case 100: - if (lookahead == 'i') ADVANCE(172); + if (lookahead == 'r') ADVANCE(191); END_STATE(); case 101: - if (lookahead == 'r') ADVANCE(173); + if (lookahead == 'l') ADVANCE(192); END_STATE(); case 102: - if (lookahead == 't') ADVANCE(174); + if (lookahead == 't') ADVANCE(193); END_STATE(); case 103: - if (lookahead == 'l') ADVANCE(140); + if (lookahead == 'o') ADVANCE(194); END_STATE(); case 104: - if (lookahead == 'n') ADVANCE(175); + if (lookahead == 'y') ADVANCE(146); END_STATE(); case 105: - if (lookahead == 'I') ADVANCE(176); - if (lookahead == 'S') ADVANCE(177); + if (lookahead == 't') ADVANCE(195); END_STATE(); case 106: - if (lookahead == 'L') ADVANCE(178); + if (lookahead == 'n') ADVANCE(196); END_STATE(); case 107: - if (lookahead == 'E') ADVANCE(179); + ACCEPT_TOKEN(sym_keyword_no); + if (lookahead == 't') ADVANCE(149); END_STATE(); case 108: - if (lookahead == 'R') ADVANCE(180); + if (lookahead == 'l') ADVANCE(197); + if (lookahead == 'm') ADVANCE(198); END_STATE(); case 109: - if (lookahead == 'S') ADVANCE(181); + if (lookahead == 'r') ADVANCE(199); END_STATE(); case 110: - if (lookahead == 'A') ADVANCE(182); + if (lookahead == 'e') ADVANCE(200); + if (lookahead == 'i') ADVANCE(201); END_STATE(); case 111: - if (lookahead == 'E') ADVANCE(183); + if (lookahead == 'a') ADVANCE(202); + if (lookahead == 'f') ADVANCE(203); + if (lookahead == 's') ADVANCE(204); END_STATE(); case 112: - if (lookahead == 'I') ADVANCE(184); + if (lookahead == 'r') ADVANCE(205); + if (lookahead == 't') ADVANCE(159); END_STATE(); case 113: - if (lookahead == 'A') ADVANCE(185); + if (lookahead == 'm') ADVANCE(206); END_STATE(); case 114: - if (lookahead == 'T') ADVANCE(186); + if (lookahead == 'a') ADVANCE(207); END_STATE(); case 115: - if (lookahead == 'B') ADVANCE(187); + if (lookahead == 'b') ADVANCE(208); END_STATE(); case 116: - if (lookahead == 'S') ADVANCE(188); + if (lookahead == 'm') ADVANCE(209); + if (lookahead == 'x') ADVANCE(210); END_STATE(); case 117: - if (lookahead == 'S') ADVANCE(189); + if (lookahead == 'm') ADVANCE(211); END_STATE(); case 118: - if (lookahead == 'E') ADVANCE(190); + if (lookahead == 'u') ADVANCE(212); END_STATE(); case 119: - if (lookahead == 'N') ADVANCE(191); + if (lookahead == 'i') ADVANCE(213); + if (lookahead == 'l') ADVANCE(214); END_STATE(); case 120: - ACCEPT_TOKEN(aux_sym_keyword_primary_key_token2); + if (lookahead == 'd') ADVANCE(215); END_STATE(); case 121: - if (lookahead == 'E') ADVANCE(192); + if (lookahead == 'i') ADVANCE(216); END_STATE(); case 122: - ACCEPT_TOKEN(sym_keyword_not); + if (lookahead == 'r') ADVANCE(217); END_STATE(); case 123: - if (lookahead == 'L') ADVANCE(193); + if (lookahead == 't') ADVANCE(218); END_STATE(); case 124: - if (lookahead == 'E') ADVANCE(194); + if (lookahead == 'l') ADVANCE(173); END_STATE(); case 125: - if (lookahead == 'C') ADVANCE(195); + if (lookahead == 'n') ADVANCE(219); END_STATE(); case 126: - if (lookahead == 'M') ADVANCE(196); + if (lookahead == 'I') ADVANCE(220); END_STATE(); case 127: - if (lookahead == 'L') ADVANCE(197); + if (lookahead == 'I') ADVANCE(221); + if (lookahead == 'S') ADVANCE(222); END_STATE(); case 128: - if (lookahead == 'I') ADVANCE(198); + if (lookahead == 'L') ADVANCE(223); END_STATE(); case 129: - if (lookahead == 'L') ADVANCE(199); + if (lookahead == 'E') ADVANCE(224); END_STATE(); case 130: - if (lookahead == 'L') ADVANCE(200); + if (lookahead == 'C') ADVANCE(225); END_STATE(); case 131: - if (lookahead == 'P') ADVANCE(201); + if (lookahead == 'R') ADVANCE(226); END_STATE(); case 132: - if (lookahead == 'T') ADVANCE(202); + if (lookahead == 'S') ADVANCE(227); END_STATE(); case 133: - if (lookahead == 'E') ADVANCE(203); + if (lookahead == 'A') ADVANCE(228); END_STATE(); case 134: - if (lookahead == 'E') ADVANCE(204); + if (lookahead == 'E') ADVANCE(229); END_STATE(); case 135: - if (lookahead == 'Q') ADVANCE(205); + if (lookahead == 'I') ADVANCE(230); END_STATE(); case 136: - if (lookahead == 'O') ADVANCE(206); + if (lookahead == 'A') ADVANCE(231); END_STATE(); case 137: - if (lookahead == 'D') ADVANCE(207); + if (lookahead == 'E') ADVANCE(232); END_STATE(); case 138: - if (lookahead == 'C') ADVANCE(208); + if (lookahead == 'T') ADVANCE(233); END_STATE(); case 139: - if (lookahead == 'H') ADVANCE(209); + if (lookahead == 'B') ADVANCE(234); END_STATE(); case 140: - ACCEPT_TOKEN(sym_keyword_xml); + if (lookahead == 'S') ADVANCE(235); END_STATE(); case 141: - if (lookahead == 'E') ADVANCE(210); + if (lookahead == 'S') ADVANCE(236); END_STATE(); case 142: - if (lookahead == 'i') ADVANCE(211); - if (lookahead == 's') ADVANCE(212); + if (lookahead == 'E') ADVANCE(237); END_STATE(); case 143: - if (lookahead == 'l') ADVANCE(213); + if (lookahead == 'L') ADVANCE(238); END_STATE(); case 144: - if (lookahead == 'e') ADVANCE(214); + if (lookahead == 'E') ADVANCE(239); END_STATE(); case 145: - if (lookahead == 'r') ADVANCE(215); + if (lookahead == 'N') ADVANCE(240); END_STATE(); case 146: - if (lookahead == 's') ADVANCE(216); + ACCEPT_TOKEN(sym_keyword_key); END_STATE(); case 147: - if (lookahead == 'a') ADVANCE(217); + if (lookahead == 'C') ADVANCE(241); END_STATE(); case 148: - if (lookahead == 'e') ADVANCE(218); - END_STATE(); - case 149: - if (lookahead == 'i') ADVANCE(219); - END_STATE(); - case 150: - if (lookahead == 'a') ADVANCE(220); - END_STATE(); - case 151: - if (lookahead == 't') ADVANCE(221); - END_STATE(); - case 152: - if (lookahead == 'b') ADVANCE(222); - END_STATE(); - case 153: - if (lookahead == 's') ADVANCE(223); - END_STATE(); - case 154: - if (lookahead == 's') ADVANCE(224); - END_STATE(); - case 155: - if (lookahead == 'e') ADVANCE(225); - END_STATE(); - case 156: - if (lookahead == 'n') ADVANCE(226); - END_STATE(); - case 157: - if (lookahead == 'e') ADVANCE(227); - END_STATE(); - case 158: - if (lookahead == 'l') ADVANCE(228); - END_STATE(); - case 159: - if (lookahead == 'e') ADVANCE(229); - END_STATE(); - case 160: - if (lookahead == 'c') ADVANCE(230); - END_STATE(); - case 161: - if (lookahead == 'm') ADVANCE(231); - END_STATE(); - case 162: - if (lookahead == 'l') ADVANCE(197); - END_STATE(); - case 163: - if (lookahead == 'i') ADVANCE(232); - END_STATE(); - case 164: - if (lookahead == 'l') ADVANCE(233); - END_STATE(); - case 165: - if (lookahead == 'l') ADVANCE(234); - END_STATE(); - case 166: - if (lookahead == 'p') ADVANCE(235); - END_STATE(); - case 167: - if (lookahead == 't') ADVANCE(202); - END_STATE(); - case 168: - if (lookahead == 'e') ADVANCE(236); - END_STATE(); - case 169: - if (lookahead == 'e') ADVANCE(204); - END_STATE(); - case 170: - if (lookahead == 'q') ADVANCE(237); - END_STATE(); - case 171: - if (lookahead == 'o') ADVANCE(238); - END_STATE(); - case 172: - if (lookahead == 'd') ADVANCE(207); - END_STATE(); - case 173: - if (lookahead == 'c') ADVANCE(239); - END_STATE(); - case 174: - if (lookahead == 'h') ADVANCE(240); - END_STATE(); - case 175: - if (lookahead == 'e') ADVANCE(210); - END_STATE(); - case 176: - if (lookahead == 'N') ADVANCE(241); - END_STATE(); - case 177: if (lookahead == 'E') ADVANCE(242); END_STATE(); - case 178: - if (lookahead == 'E') ADVANCE(243); + case 149: + ACCEPT_TOKEN(sym_keyword_not); END_STATE(); - case 179: - if (lookahead == 'A') ADVANCE(244); + case 150: + if (lookahead == 'L') ADVANCE(243); END_STATE(); - case 180: - ACCEPT_TOKEN(aux_sym_keyword_char_token2); - if (lookahead == 'A') ADVANCE(245); + case 151: + if (lookahead == 'E') ADVANCE(244); END_STATE(); - case 181: - if (lookahead == 'T') ADVANCE(246); + case 152: + if (lookahead == 'T') ADVANCE(245); END_STATE(); - case 182: - if (lookahead == 'T') ADVANCE(247); + case 153: + if (lookahead == 'C') ADVANCE(246); END_STATE(); - case 183: - ACCEPT_TOKEN(sym_keyword_date); - if (lookahead == 'T') ADVANCE(248); + case 154: + if (lookahead == 'M') ADVANCE(247); END_STATE(); - case 184: - if (lookahead == 'M') ADVANCE(249); + case 155: + if (lookahead == 'L') ADVANCE(248); END_STATE(); - case 185: - if (lookahead == 'U') ADVANCE(250); + case 156: + if (lookahead == 'E') ADVANCE(249); END_STATE(); - case 186: + case 157: + if (lookahead == 'T') ADVANCE(250); + END_STATE(); + case 158: if (lookahead == 'I') ADVANCE(251); END_STATE(); - case 187: - if (lookahead == 'L') ADVANCE(252); + case 159: + ACCEPT_TOKEN(sym_keyword_set); END_STATE(); - case 188: - if (lookahead == 'T') ADVANCE(253); + case 160: + if (lookahead == 'P') ADVANCE(252); END_STATE(); - case 189: - if (lookahead == 'E') ADVANCE(254); + case 161: + if (lookahead == 'L') ADVANCE(253); END_STATE(); - case 190: - if (lookahead == 'G') ADVANCE(255); + case 162: + if (lookahead == 'L') ADVANCE(254); END_STATE(); - case 191: - ACCEPT_TOKEN(sym_keyword_json); - if (lookahead == 'B') ADVANCE(256); + case 163: + if (lookahead == 'P') ADVANCE(255); END_STATE(); - case 192: - if (lookahead == 'Y') ADVANCE(257); + case 164: + if (lookahead == 'T') ADVANCE(256); END_STATE(); - case 193: - ACCEPT_TOKEN(sym_keyword_null); - if (lookahead == 'S') ADVANCE(258); + case 165: + if (lookahead == 'E') ADVANCE(257); END_STATE(); - case 194: - if (lookahead == 'R') ADVANCE(259); + case 166: + if (lookahead == 'E') ADVANCE(258); END_STATE(); - case 195: - if (lookahead == 'I') ADVANCE(260); + case 167: + if (lookahead == 'Q') ADVANCE(259); END_STATE(); - case 196: + case 168: + if (lookahead == 'O') ADVANCE(260); + END_STATE(); + case 169: if (lookahead == 'A') ADVANCE(261); END_STATE(); - case 197: - ACCEPT_TOKEN(sym_keyword_real); + case 170: + if (lookahead == 'D') ADVANCE(262); END_STATE(); - case 198: - if (lookahead == 'A') ADVANCE(262); + case 171: + if (lookahead == 'C') ADVANCE(263); END_STATE(); - case 199: - if (lookahead == 'L') ADVANCE(263); + case 172: + if (lookahead == 'H') ADVANCE(264); END_STATE(); - case 200: - if (lookahead == 'E') ADVANCE(264); + case 173: + ACCEPT_TOKEN(sym_keyword_xml); END_STATE(); - case 201: - ACCEPT_TOKEN(aux_sym_keyword_temporary_token2); - if (lookahead == 'O') ADVANCE(265); + case 174: + if (lookahead == 'E') ADVANCE(265); END_STATE(); - case 202: - ACCEPT_TOKEN(sym_keyword_text); + case 175: + if (lookahead == 'i') ADVANCE(266); END_STATE(); - case 203: - ACCEPT_TOKEN(aux_sym__keyword_time_zone_token1); - if (lookahead == 'S') ADVANCE(266); + case 176: + if (lookahead == 'i') ADVANCE(267); + if (lookahead == 's') ADVANCE(268); END_STATE(); - case 204: - ACCEPT_TOKEN(sym_keyword_true); + case 177: + if (lookahead == 'l') ADVANCE(269); END_STATE(); - case 205: - if (lookahead == 'U') ADVANCE(267); + case 178: + if (lookahead == 'e') ADVANCE(270); END_STATE(); - case 206: - if (lookahead == 'G') ADVANCE(268); + case 179: + if (lookahead == 'c') ADVANCE(271); END_STATE(); - case 207: - ACCEPT_TOKEN(sym_keyword_uuid); + case 180: + if (lookahead == 'r') ADVANCE(272); END_STATE(); - case 208: - if (lookahead == 'H') ADVANCE(269); + case 181: + if (lookahead == 's') ADVANCE(273); END_STATE(); - case 209: - ACCEPT_TOKEN(aux_sym__with_time_zone_token1); - if (lookahead == 'O') ADVANCE(270); - END_STATE(); - case 210: - ACCEPT_TOKEN(aux_sym__keyword_time_zone_token2); - END_STATE(); - case 211: - if (lookahead == 'n') ADVANCE(271); - END_STATE(); - case 212: - if (lookahead == 'e') ADVANCE(272); - END_STATE(); - case 213: - if (lookahead == 'e') ADVANCE(273); - END_STATE(); - case 214: - if (lookahead == 'a') ADVANCE(244); - END_STATE(); - case 215: - ACCEPT_TOKEN(aux_sym_keyword_char_token2); + case 182: if (lookahead == 'a') ADVANCE(274); END_STATE(); - case 216: - if (lookahead == 't') ADVANCE(275); + case 183: + if (lookahead == 'e') ADVANCE(275); END_STATE(); - case 217: - if (lookahead == 't') ADVANCE(276); + case 184: + if (lookahead == 'i') ADVANCE(276); END_STATE(); - case 218: - ACCEPT_TOKEN(sym_keyword_date); - if (lookahead == 't') ADVANCE(277); + case 185: + if (lookahead == 'a') ADVANCE(277); END_STATE(); - case 219: - if (lookahead == 'm') ADVANCE(278); + case 186: + if (lookahead == 'e') ADVANCE(278); END_STATE(); - case 220: - if (lookahead == 'u') ADVANCE(279); + case 187: + if (lookahead == 't') ADVANCE(279); END_STATE(); - case 221: - if (lookahead == 'i') ADVANCE(280); + case 188: + if (lookahead == 'b') ADVANCE(280); END_STATE(); - case 222: - if (lookahead == 'l') ADVANCE(281); + case 189: + if (lookahead == 's') ADVANCE(281); END_STATE(); - case 223: - if (lookahead == 't') ADVANCE(282); + case 190: + if (lookahead == 's') ADVANCE(282); END_STATE(); - case 224: - if (lookahead == 'e') ADVANCE(254); + case 191: + if (lookahead == 'e') ADVANCE(283); END_STATE(); - case 225: - if (lookahead == 'g') ADVANCE(283); + case 192: + if (lookahead == 'l') ADVANCE(238); END_STATE(); - case 226: - ACCEPT_TOKEN(sym_keyword_json); - if (lookahead == 'b') ADVANCE(256); + case 193: + if (lookahead == 'e') ADVANCE(284); END_STATE(); - case 227: - if (lookahead == 'y') ADVANCE(257); + case 194: + if (lookahead == 'n') ADVANCE(285); END_STATE(); - case 228: - ACCEPT_TOKEN(sym_keyword_null); - if (lookahead == 's') ADVANCE(258); + case 195: + if (lookahead == 'c') ADVANCE(286); END_STATE(); - case 229: - if (lookahead == 'r') ADVANCE(284); + case 196: + if (lookahead == 'e') ADVANCE(287); END_STATE(); - case 230: - if (lookahead == 'i') ADVANCE(285); - END_STATE(); - case 231: - if (lookahead == 'a') ADVANCE(286); - END_STATE(); - case 232: - if (lookahead == 'a') ADVANCE(287); - END_STATE(); - case 233: + case 197: if (lookahead == 'l') ADVANCE(288); END_STATE(); - case 234: - if (lookahead == 'e') ADVANCE(264); + case 198: + if (lookahead == 'e') ADVANCE(289); END_STATE(); - case 235: - ACCEPT_TOKEN(aux_sym_keyword_temporary_token2); - if (lookahead == 'o') ADVANCE(289); + case 199: + if (lookahead == 't') ADVANCE(290); END_STATE(); - case 236: - ACCEPT_TOKEN(aux_sym__keyword_time_zone_token1); - if (lookahead == 's') ADVANCE(290); + case 200: + if (lookahead == 'c') ADVANCE(291); END_STATE(); - case 237: - if (lookahead == 'u') ADVANCE(291); + case 201: + if (lookahead == 'm') ADVANCE(292); END_STATE(); - case 238: - if (lookahead == 'g') ADVANCE(292); + case 202: + if (lookahead == 'l') ADVANCE(248); END_STATE(); - case 239: - if (lookahead == 'h') ADVANCE(293); + case 203: + if (lookahead == 'e') ADVANCE(293); END_STATE(); - case 240: - ACCEPT_TOKEN(aux_sym__with_time_zone_token1); - if (lookahead == 'o') ADVANCE(294); + case 204: + if (lookahead == 't') ADVANCE(294); END_STATE(); - case 241: - if (lookahead == 'T') ADVANCE(295); + case 205: + if (lookahead == 'i') ADVANCE(295); END_STATE(); - case 242: - if (lookahead == 'R') ADVANCE(296); + case 206: + if (lookahead == 'p') ADVANCE(296); END_STATE(); - case 243: - if (lookahead == 'A') ADVANCE(297); + case 207: + if (lookahead == 'l') ADVANCE(297); END_STATE(); - case 244: - ACCEPT_TOKEN(sym_keyword_bytea); + case 208: + if (lookahead == 'l') ADVANCE(298); END_STATE(); - case 245: - if (lookahead == 'C') ADVANCE(298); + case 209: + if (lookahead == 'p') ADVANCE(299); END_STATE(); - case 246: - if (lookahead == 'R') ADVANCE(299); + case 210: + if (lookahead == 't') ADVANCE(256); END_STATE(); - case 247: - if (lookahead == 'E') ADVANCE(300); - END_STATE(); - case 248: - if (lookahead == 'I') ADVANCE(301); - END_STATE(); - case 249: - if (lookahead == 'A') ADVANCE(302); - END_STATE(); - case 250: - if (lookahead == 'L') ADVANCE(303); - END_STATE(); - case 251: - if (lookahead == 'N') ADVANCE(304); - END_STATE(); - case 252: - if (lookahead == 'E') ADVANCE(305); - END_STATE(); - case 253: - if (lookahead == 'S') ADVANCE(306); - END_STATE(); - case 254: - ACCEPT_TOKEN(sym_keyword_false); - END_STATE(); - case 255: - if (lookahead == 'E') ADVANCE(307); - END_STATE(); - case 256: - ACCEPT_TOKEN(sym_keyword_jsonb); - END_STATE(); - case 257: - ACCEPT_TOKEN(sym_keyword_money); - END_STATE(); - case 258: - ACCEPT_TOKEN(sym_keyword_nulls); - END_STATE(); - case 259: - if (lookahead == 'I') ADVANCE(308); - END_STATE(); - case 260: - if (lookahead == 'S') ADVANCE(309); - END_STATE(); - case 261: - if (lookahead == 'R') ADVANCE(310); - END_STATE(); - case 262: - if (lookahead == 'L') ADVANCE(311); - END_STATE(); - case 263: - if (lookahead == 'I') ADVANCE(312); - if (lookahead == 'S') ADVANCE(313); - END_STATE(); - case 264: - ACCEPT_TOKEN(sym_keyword_table); - END_STATE(); - case 265: - if (lookahead == 'R') ADVANCE(314); - END_STATE(); - case 266: - if (lookahead == 'T') ADVANCE(315); - END_STATE(); - case 267: - if (lookahead == 'E') ADVANCE(316); - END_STATE(); - case 268: - if (lookahead == 'G') ADVANCE(317); - END_STATE(); - case 269: - if (lookahead == 'A') ADVANCE(318); - END_STATE(); - case 270: - if (lookahead == 'U') ADVANCE(319); - END_STATE(); - case 271: - if (lookahead == 't') ADVANCE(295); - END_STATE(); - case 272: - if (lookahead == 'r') ADVANCE(320); - END_STATE(); - case 273: - if (lookahead == 'a') ADVANCE(321); - END_STATE(); - case 274: - if (lookahead == 'c') ADVANCE(322); - END_STATE(); - case 275: - if (lookahead == 'r') ADVANCE(323); - END_STATE(); - case 276: + case 211: if (lookahead == 'e') ADVANCE(300); END_STATE(); + case 212: + if (lookahead == 'e') ADVANCE(258); + END_STATE(); + case 213: + if (lookahead == 'q') ADVANCE(301); + END_STATE(); + case 214: + if (lookahead == 'o') ADVANCE(302); + END_STATE(); + case 215: + if (lookahead == 'a') ADVANCE(303); + END_STATE(); + case 216: + if (lookahead == 'd') ADVANCE(262); + END_STATE(); + case 217: + if (lookahead == 'c') ADVANCE(304); + END_STATE(); + case 218: + if (lookahead == 'h') ADVANCE(305); + END_STATE(); + case 219: + if (lookahead == 'e') ADVANCE(265); + END_STATE(); + case 220: + if (lookahead == 'O') ADVANCE(306); + END_STATE(); + case 221: + if (lookahead == 'N') ADVANCE(307); + END_STATE(); + case 222: + if (lookahead == 'E') ADVANCE(308); + END_STATE(); + case 223: + if (lookahead == 'E') ADVANCE(309); + END_STATE(); + case 224: + if (lookahead == 'A') ADVANCE(310); + END_STATE(); + case 225: + if (lookahead == 'A') ADVANCE(311); + END_STATE(); + case 226: + ACCEPT_TOKEN(aux_sym_keyword_char_token2); + if (lookahead == 'A') ADVANCE(312); + END_STATE(); + case 227: + if (lookahead == 'T') ADVANCE(313); + END_STATE(); + case 228: + if (lookahead == 'T') ADVANCE(314); + END_STATE(); + case 229: + ACCEPT_TOKEN(sym_keyword_date); + if (lookahead == 'T') ADVANCE(315); + END_STATE(); + case 230: + if (lookahead == 'M') ADVANCE(316); + END_STATE(); + case 231: + if (lookahead == 'U') ADVANCE(317); + END_STATE(); + case 232: + if (lookahead == 'T') ADVANCE(318); + END_STATE(); + case 233: + if (lookahead == 'I') ADVANCE(319); + END_STATE(); + case 234: + if (lookahead == 'L') ADVANCE(320); + END_STATE(); + case 235: + if (lookahead == 'T') ADVANCE(321); + END_STATE(); + case 236: + if (lookahead == 'E') ADVANCE(322); + END_STATE(); + case 237: + if (lookahead == 'I') ADVANCE(323); + END_STATE(); + case 238: + ACCEPT_TOKEN(sym_keyword_full); + END_STATE(); + case 239: + if (lookahead == 'G') ADVANCE(324); + END_STATE(); + case 240: + ACCEPT_TOKEN(sym_keyword_json); + if (lookahead == 'B') ADVANCE(325); + END_STATE(); + case 241: + if (lookahead == 'H') ADVANCE(326); + END_STATE(); + case 242: + if (lookahead == 'Y') ADVANCE(327); + END_STATE(); + case 243: + ACCEPT_TOKEN(sym_keyword_null); + if (lookahead == 'S') ADVANCE(328); + END_STATE(); + case 244: + if (lookahead == 'R') ADVANCE(329); + END_STATE(); + case 245: + if (lookahead == 'I') ADVANCE(330); + END_STATE(); + case 246: + if (lookahead == 'I') ADVANCE(331); + END_STATE(); + case 247: + if (lookahead == 'A') ADVANCE(332); + END_STATE(); + case 248: + ACCEPT_TOKEN(sym_keyword_real); + END_STATE(); + case 249: + if (lookahead == 'R') ADVANCE(333); + END_STATE(); + case 250: + if (lookahead == 'R') ADVANCE(334); + END_STATE(); + case 251: + if (lookahead == 'A') ADVANCE(335); + END_STATE(); + case 252: + if (lookahead == 'L') ADVANCE(336); + END_STATE(); + case 253: + if (lookahead == 'L') ADVANCE(337); + END_STATE(); + case 254: + if (lookahead == 'E') ADVANCE(338); + END_STATE(); + case 255: + ACCEPT_TOKEN(aux_sym_keyword_temporary_token2); + if (lookahead == 'O') ADVANCE(339); + END_STATE(); + case 256: + ACCEPT_TOKEN(sym_keyword_text); + END_STATE(); + case 257: + ACCEPT_TOKEN(aux_sym__keyword_time_zone_token1); + if (lookahead == 'S') ADVANCE(340); + END_STATE(); + case 258: + ACCEPT_TOKEN(sym_keyword_true); + END_STATE(); + case 259: + if (lookahead == 'U') ADVANCE(341); + END_STATE(); + case 260: + if (lookahead == 'G') ADVANCE(342); + END_STATE(); + case 261: + if (lookahead == 'T') ADVANCE(343); + END_STATE(); + case 262: + ACCEPT_TOKEN(sym_keyword_uuid); + END_STATE(); + case 263: + if (lookahead == 'H') ADVANCE(344); + END_STATE(); + case 264: + ACCEPT_TOKEN(aux_sym__with_time_zone_token1); + if (lookahead == 'O') ADVANCE(345); + END_STATE(); + case 265: + ACCEPT_TOKEN(aux_sym__keyword_time_zone_token2); + END_STATE(); + case 266: + if (lookahead == 'o') ADVANCE(346); + END_STATE(); + case 267: + if (lookahead == 'n') ADVANCE(347); + END_STATE(); + case 268: + if (lookahead == 'e') ADVANCE(348); + END_STATE(); + case 269: + if (lookahead == 'e') ADVANCE(349); + END_STATE(); + case 270: + if (lookahead == 'a') ADVANCE(310); + END_STATE(); + case 271: + if (lookahead == 'a') ADVANCE(350); + END_STATE(); + case 272: + ACCEPT_TOKEN(aux_sym_keyword_char_token2); + if (lookahead == 'a') ADVANCE(351); + END_STATE(); + case 273: + if (lookahead == 't') ADVANCE(352); + END_STATE(); + case 274: + if (lookahead == 't') ADVANCE(353); + END_STATE(); + case 275: + ACCEPT_TOKEN(sym_keyword_date); + if (lookahead == 't') ADVANCE(354); + END_STATE(); + case 276: + if (lookahead == 'm') ADVANCE(355); + END_STATE(); case 277: - if (lookahead == 'i') ADVANCE(324); + if (lookahead == 'u') ADVANCE(356); END_STATE(); case 278: - if (lookahead == 'a') ADVANCE(325); - END_STATE(); - case 279: - if (lookahead == 'l') ADVANCE(326); - END_STATE(); - case 280: - if (lookahead == 'n') ADVANCE(327); - END_STATE(); - case 281: - if (lookahead == 'e') ADVANCE(305); - END_STATE(); - case 282: - if (lookahead == 's') ADVANCE(306); - END_STATE(); - case 283: - if (lookahead == 'e') ADVANCE(328); - END_STATE(); - case 284: - if (lookahead == 'i') ADVANCE(329); - END_STATE(); - case 285: - if (lookahead == 's') ADVANCE(330); - END_STATE(); - case 286: - if (lookahead == 'r') ADVANCE(331); - END_STATE(); - case 287: - if (lookahead == 'l') ADVANCE(311); - END_STATE(); - case 288: - if (lookahead == 'i') ADVANCE(332); - if (lookahead == 's') ADVANCE(333); - END_STATE(); - case 289: - if (lookahead == 'r') ADVANCE(334); - END_STATE(); - case 290: - if (lookahead == 't') ADVANCE(335); - END_STATE(); - case 291: - if (lookahead == 'e') ADVANCE(316); - END_STATE(); - case 292: - if (lookahead == 'g') ADVANCE(336); - END_STATE(); - case 293: - if (lookahead == 'a') ADVANCE(337); - END_STATE(); - case 294: - if (lookahead == 'u') ADVANCE(338); - END_STATE(); - case 295: - ACCEPT_TOKEN(sym_keyword_bigint); - END_STATE(); - case 296: - if (lookahead == 'I') ADVANCE(339); - END_STATE(); - case 297: - if (lookahead == 'N') ADVANCE(340); - END_STATE(); - case 298: - if (lookahead == 'T') ADVANCE(341); - END_STATE(); - case 299: - if (lookahead == 'A') ADVANCE(342); - END_STATE(); - case 300: - ACCEPT_TOKEN(sym_keyword_create); - END_STATE(); - case 301: - if (lookahead == 'M') ADVANCE(343); - END_STATE(); - case 302: - if (lookahead == 'L') ADVANCE(344); - END_STATE(); - case 303: - if (lookahead == 'T') ADVANCE(345); - END_STATE(); - case 304: - if (lookahead == 'C') ADVANCE(346); - END_STATE(); - case 305: - ACCEPT_TOKEN(aux_sym_double_token1); - END_STATE(); - case 306: - ACCEPT_TOKEN(sym_keyword_exists); - END_STATE(); - case 307: - if (lookahead == 'R') ADVANCE(347); - END_STATE(); - case 308: - if (lookahead == 'C') ADVANCE(348); - END_STATE(); - case 309: - if (lookahead == 'I') ADVANCE(349); - END_STATE(); - case 310: - if (lookahead == 'Y') ADVANCE(350); - END_STATE(); - case 311: - ACCEPT_TOKEN(sym_keyword_serial); - END_STATE(); - case 312: - if (lookahead == 'N') ADVANCE(351); - END_STATE(); - case 313: - if (lookahead == 'E') ADVANCE(352); - END_STATE(); - case 314: - if (lookahead == 'A') ADVANCE(353); - END_STATE(); - case 315: - if (lookahead == 'A') ADVANCE(354); - END_STATE(); - case 316: - ACCEPT_TOKEN(sym_keyword_unique); - END_STATE(); - case 317: - if (lookahead == 'E') ADVANCE(355); - END_STATE(); - case 318: - if (lookahead == 'R') ADVANCE(356); - END_STATE(); - case 319: - if (lookahead == 'T') ADVANCE(357); - END_STATE(); - case 320: - if (lookahead == 'i') ADVANCE(358); - END_STATE(); - case 321: - if (lookahead == 'n') ADVANCE(340); - END_STATE(); - case 322: - if (lookahead == 't') ADVANCE(359); - END_STATE(); - case 323: - if (lookahead == 'a') ADVANCE(360); - END_STATE(); - case 324: - if (lookahead == 'm') ADVANCE(361); - END_STATE(); - case 325: - if (lookahead == 'l') ADVANCE(344); - END_STATE(); - case 326: - if (lookahead == 't') ADVANCE(345); - END_STATE(); - case 327: - if (lookahead == 'c') ADVANCE(362); - END_STATE(); - case 328: - if (lookahead == 'r') ADVANCE(347); - END_STATE(); - case 329: - if (lookahead == 'c') ADVANCE(348); - END_STATE(); - case 330: - if (lookahead == 'i') ADVANCE(363); - END_STATE(); - case 331: - if (lookahead == 'y') ADVANCE(350); - END_STATE(); - case 332: - if (lookahead == 'n') ADVANCE(364); - END_STATE(); - case 333: - if (lookahead == 'e') ADVANCE(365); - END_STATE(); - case 334: - if (lookahead == 'a') ADVANCE(366); - END_STATE(); - case 335: - if (lookahead == 'a') ADVANCE(367); - END_STATE(); - case 336: - if (lookahead == 'e') ADVANCE(368); - END_STATE(); - case 337: - if (lookahead == 'r') ADVANCE(356); - END_STATE(); - case 338: if (lookahead == 't') ADVANCE(357); END_STATE(); - case 339: - if (lookahead == 'A') ADVANCE(369); + case 279: + if (lookahead == 'i') ADVANCE(358); END_STATE(); - case 340: - ACCEPT_TOKEN(sym_keyword_boolean); + case 280: + if (lookahead == 'l') ADVANCE(359); END_STATE(); - case 341: - if (lookahead == 'E') ADVANCE(370); + case 281: + if (lookahead == 't') ADVANCE(360); END_STATE(); - case 342: - if (lookahead == 'I') ADVANCE(371); + case 282: + if (lookahead == 'e') ADVANCE(322); END_STATE(); - case 343: - if (lookahead == 'E') ADVANCE(372); + case 283: + if (lookahead == 'i') ADVANCE(361); END_STATE(); - case 344: - ACCEPT_TOKEN(sym_keyword_decimal); + case 284: + if (lookahead == 'g') ADVANCE(362); END_STATE(); - case 345: - ACCEPT_TOKEN(sym_keyword_default); + case 285: + ACCEPT_TOKEN(sym_keyword_json); + if (lookahead == 'b') ADVANCE(325); END_STATE(); - case 346: - if (lookahead == 'T') ADVANCE(373); + case 286: + if (lookahead == 'h') ADVANCE(326); END_STATE(); - case 347: - ACCEPT_TOKEN(sym_keyword_integer); + case 287: + if (lookahead == 'y') ADVANCE(327); END_STATE(); - case 348: - ACCEPT_TOKEN(sym_keyword_numeric); + case 288: + ACCEPT_TOKEN(sym_keyword_null); + if (lookahead == 's') ADVANCE(328); END_STATE(); - case 349: - if (lookahead == 'O') ADVANCE(374); + case 289: + if (lookahead == 'r') ADVANCE(363); END_STATE(); - case 350: - ACCEPT_TOKEN(aux_sym_keyword_primary_key_token1); + case 290: + if (lookahead == 'i') ADVANCE(364); END_STATE(); - case 351: - if (lookahead == 'T') ADVANCE(375); + case 291: + if (lookahead == 'i') ADVANCE(365); END_STATE(); - case 352: - if (lookahead == 'R') ADVANCE(376); + case 292: + if (lookahead == 'a') ADVANCE(366); END_STATE(); - case 353: - if (lookahead == 'R') ADVANCE(377); + case 293: + if (lookahead == 'r') ADVANCE(367); END_STATE(); - case 354: - if (lookahead == 'M') ADVANCE(378); + case 294: + if (lookahead == 'r') ADVANCE(368); END_STATE(); - case 355: - if (lookahead == 'D') ADVANCE(379); + case 295: + if (lookahead == 'a') ADVANCE(369); END_STATE(); - case 356: - ACCEPT_TOKEN(aux_sym_keyword_varchar_token1); + case 296: + if (lookahead == 'l') ADVANCE(370); END_STATE(); - case 357: - ACCEPT_TOKEN(aux_sym__without_time_zone_token1); + case 297: + if (lookahead == 'l') ADVANCE(371); END_STATE(); - case 358: - if (lookahead == 'a') ADVANCE(380); + case 298: + if (lookahead == 'e') ADVANCE(338); END_STATE(); - case 359: - if (lookahead == 'e') ADVANCE(381); + case 299: + ACCEPT_TOKEN(aux_sym_keyword_temporary_token2); + if (lookahead == 'o') ADVANCE(372); END_STATE(); - case 360: - if (lookahead == 'i') ADVANCE(382); + case 300: + ACCEPT_TOKEN(aux_sym__keyword_time_zone_token1); + if (lookahead == 's') ADVANCE(373); END_STATE(); - case 361: - if (lookahead == 'e') ADVANCE(372); + case 301: + if (lookahead == 'u') ADVANCE(374); END_STATE(); - case 362: - if (lookahead == 't') ADVANCE(373); + case 302: + if (lookahead == 'g') ADVANCE(375); END_STATE(); - case 363: - if (lookahead == 'o') ADVANCE(383); + case 303: + if (lookahead == 't') ADVANCE(376); END_STATE(); - case 364: - if (lookahead == 't') ADVANCE(375); + case 304: + if (lookahead == 'h') ADVANCE(377); END_STATE(); - case 365: - if (lookahead == 'r') ADVANCE(384); + case 305: + ACCEPT_TOKEN(aux_sym__with_time_zone_token1); + if (lookahead == 'o') ADVANCE(378); END_STATE(); - case 366: - if (lookahead == 'r') ADVANCE(385); + case 306: + if (lookahead == 'N') ADVANCE(379); END_STATE(); - case 367: - if (lookahead == 'm') ADVANCE(386); + case 307: + if (lookahead == 'T') ADVANCE(380); END_STATE(); - case 368: - if (lookahead == 'd') ADVANCE(379); + case 308: + if (lookahead == 'R') ADVANCE(381); END_STATE(); - case 369: - if (lookahead == 'L') ADVANCE(387); + case 309: + if (lookahead == 'A') ADVANCE(382); END_STATE(); - case 370: - if (lookahead == 'R') ADVANCE(388); + case 310: + ACCEPT_TOKEN(sym_keyword_bytea); END_STATE(); - case 371: - if (lookahead == 'N') ADVANCE(389); + case 311: + if (lookahead == 'D') ADVANCE(383); END_STATE(); - case 372: - ACCEPT_TOKEN(sym_keyword_datetime); + case 312: + if (lookahead == 'C') ADVANCE(384); END_STATE(); - case 373: - ACCEPT_TOKEN(sym_keyword_distinct); + case 313: + if (lookahead == 'R') ADVANCE(385); END_STATE(); - case 374: - if (lookahead == 'N') ADVANCE(390); + case 314: + if (lookahead == 'E') ADVANCE(386); END_STATE(); - case 375: - ACCEPT_TOKEN(sym_keyword_smallint); + case 315: + if (lookahead == 'I') ADVANCE(387); END_STATE(); - case 376: - if (lookahead == 'I') ADVANCE(391); + case 316: + if (lookahead == 'A') ADVANCE(388); END_STATE(); - case 377: - if (lookahead == 'Y') ADVANCE(392); + case 317: + if (lookahead == 'L') ADVANCE(389); END_STATE(); - case 378: - if (lookahead == 'P') ADVANCE(393); + case 318: + if (lookahead == 'E') ADVANCE(390); END_STATE(); - case 379: - ACCEPT_TOKEN(sym_keyword_unlogged); + case 319: + if (lookahead == 'N') ADVANCE(391); END_STATE(); - case 380: - if (lookahead == 'l') ADVANCE(387); + case 320: + if (lookahead == 'E') ADVANCE(392); END_STATE(); - case 381: - if (lookahead == 'r') ADVANCE(388); + case 321: + if (lookahead == 'S') ADVANCE(393); END_STATE(); - case 382: - if (lookahead == 'n') ADVANCE(394); + case 322: + ACCEPT_TOKEN(sym_keyword_false); END_STATE(); - case 383: - if (lookahead == 'n') ADVANCE(390); + case 323: + if (lookahead == 'G') ADVANCE(394); END_STATE(); - case 384: - if (lookahead == 'i') ADVANCE(395); + case 324: + if (lookahead == 'E') ADVANCE(395); END_STATE(); - case 385: - if (lookahead == 'y') ADVANCE(392); + case 325: + ACCEPT_TOKEN(sym_keyword_jsonb); END_STATE(); - case 386: - if (lookahead == 'p') ADVANCE(396); + case 326: + ACCEPT_TOKEN(sym_keyword_match); END_STATE(); - case 387: - ACCEPT_TOKEN(sym_keyword_bigserial); + case 327: + ACCEPT_TOKEN(sym_keyword_money); END_STATE(); - case 388: - ACCEPT_TOKEN(aux_sym_keyword_char_token1); + case 328: + ACCEPT_TOKEN(sym_keyword_nulls); END_STATE(); - case 389: - if (lookahead == 'T') ADVANCE(397); + case 329: + if (lookahead == 'I') ADVANCE(396); END_STATE(); - case 390: - ACCEPT_TOKEN(aux_sym_double_token2); + case 330: + if (lookahead == 'A') ADVANCE(397); END_STATE(); - case 391: - if (lookahead == 'A') ADVANCE(398); + case 331: + if (lookahead == 'S') ADVANCE(398); END_STATE(); - case 392: - ACCEPT_TOKEN(aux_sym_keyword_temporary_token1); + case 332: + if (lookahead == 'R') ADVANCE(399); END_STATE(); - case 393: - ACCEPT_TOKEN(aux_sym_keyword_timestamp_token1); - if (lookahead == 'T') ADVANCE(399); + case 333: + if (lookahead == 'E') ADVANCE(400); END_STATE(); - case 394: - if (lookahead == 't') ADVANCE(397); + case 334: + if (lookahead == 'I') ADVANCE(401); END_STATE(); - case 395: - if (lookahead == 'a') ADVANCE(400); - END_STATE(); - case 396: - ACCEPT_TOKEN(aux_sym_keyword_timestamp_token1); - if (lookahead == 't') ADVANCE(401); - END_STATE(); - case 397: - ACCEPT_TOKEN(sym_keyword_constraint); - END_STATE(); - case 398: + case 335: if (lookahead == 'L') ADVANCE(402); END_STATE(); - case 399: - if (lookahead == 'Z') ADVANCE(403); + case 336: + if (lookahead == 'E') ADVANCE(403); END_STATE(); - case 400: + case 337: + if (lookahead == 'I') ADVANCE(404); + if (lookahead == 'S') ADVANCE(405); + END_STATE(); + case 338: + ACCEPT_TOKEN(sym_keyword_table); + END_STATE(); + case 339: + if (lookahead == 'R') ADVANCE(406); + END_STATE(); + case 340: + if (lookahead == 'T') ADVANCE(407); + END_STATE(); + case 341: + if (lookahead == 'E') ADVANCE(408); + END_STATE(); + case 342: + if (lookahead == 'G') ADVANCE(409); + END_STATE(); + case 343: + if (lookahead == 'E') ADVANCE(410); + END_STATE(); + case 344: + if (lookahead == 'A') ADVANCE(411); + END_STATE(); + case 345: + if (lookahead == 'U') ADVANCE(412); + END_STATE(); + case 346: + if (lookahead == 'n') ADVANCE(379); + END_STATE(); + case 347: + if (lookahead == 't') ADVANCE(380); + END_STATE(); + case 348: + if (lookahead == 'r') ADVANCE(413); + END_STATE(); + case 349: + if (lookahead == 'a') ADVANCE(414); + END_STATE(); + case 350: + if (lookahead == 'd') ADVANCE(415); + END_STATE(); + case 351: + if (lookahead == 'c') ADVANCE(416); + END_STATE(); + case 352: + if (lookahead == 'r') ADVANCE(417); + END_STATE(); + case 353: + if (lookahead == 'e') ADVANCE(386); + END_STATE(); + case 354: + if (lookahead == 'i') ADVANCE(418); + END_STATE(); + case 355: + if (lookahead == 'a') ADVANCE(419); + END_STATE(); + case 356: + if (lookahead == 'l') ADVANCE(420); + END_STATE(); + case 357: + if (lookahead == 'e') ADVANCE(390); + END_STATE(); + case 358: + if (lookahead == 'n') ADVANCE(421); + END_STATE(); + case 359: + if (lookahead == 'e') ADVANCE(392); + END_STATE(); + case 360: + if (lookahead == 's') ADVANCE(393); + END_STATE(); + case 361: + if (lookahead == 'g') ADVANCE(422); + END_STATE(); + case 362: + if (lookahead == 'e') ADVANCE(423); + END_STATE(); + case 363: + if (lookahead == 'i') ADVANCE(424); + END_STATE(); + case 364: + if (lookahead == 'a') ADVANCE(425); + END_STATE(); + case 365: + if (lookahead == 's') ADVANCE(426); + END_STATE(); + case 366: + if (lookahead == 'r') ADVANCE(427); + END_STATE(); + case 367: + if (lookahead == 'e') ADVANCE(428); + END_STATE(); + case 368: + if (lookahead == 'i') ADVANCE(429); + END_STATE(); + case 369: if (lookahead == 'l') ADVANCE(402); END_STATE(); + case 370: + if (lookahead == 'e') ADVANCE(403); + END_STATE(); + case 371: + if (lookahead == 'i') ADVANCE(430); + if (lookahead == 's') ADVANCE(431); + END_STATE(); + case 372: + if (lookahead == 'r') ADVANCE(432); + END_STATE(); + case 373: + if (lookahead == 't') ADVANCE(433); + END_STATE(); + case 374: + if (lookahead == 'e') ADVANCE(408); + END_STATE(); + case 375: + if (lookahead == 'g') ADVANCE(434); + END_STATE(); + case 376: + if (lookahead == 'e') ADVANCE(410); + END_STATE(); + case 377: + if (lookahead == 'a') ADVANCE(435); + END_STATE(); + case 378: + if (lookahead == 'u') ADVANCE(436); + END_STATE(); + case 379: + ACCEPT_TOKEN(sym_keyword_action); + END_STATE(); + case 380: + ACCEPT_TOKEN(sym_keyword_bigint); + END_STATE(); + case 381: + if (lookahead == 'I') ADVANCE(437); + END_STATE(); + case 382: + if (lookahead == 'N') ADVANCE(438); + END_STATE(); + case 383: + if (lookahead == 'E') ADVANCE(439); + END_STATE(); + case 384: + if (lookahead == 'T') ADVANCE(440); + END_STATE(); + case 385: + if (lookahead == 'A') ADVANCE(441); + END_STATE(); + case 386: + ACCEPT_TOKEN(sym_keyword_create); + END_STATE(); + case 387: + if (lookahead == 'M') ADVANCE(442); + END_STATE(); + case 388: + if (lookahead == 'L') ADVANCE(443); + END_STATE(); + case 389: + if (lookahead == 'T') ADVANCE(444); + END_STATE(); + case 390: + ACCEPT_TOKEN(sym_keyword_delete); + END_STATE(); + case 391: + if (lookahead == 'C') ADVANCE(445); + END_STATE(); + case 392: + ACCEPT_TOKEN(aux_sym_double_token1); + END_STATE(); + case 393: + ACCEPT_TOKEN(sym_keyword_exists); + END_STATE(); + case 394: + if (lookahead == 'N') ADVANCE(446); + END_STATE(); + case 395: + if (lookahead == 'R') ADVANCE(447); + END_STATE(); + case 396: + if (lookahead == 'C') ADVANCE(448); + END_STATE(); + case 397: + if (lookahead == 'L') ADVANCE(449); + END_STATE(); + case 398: + if (lookahead == 'I') ADVANCE(450); + END_STATE(); + case 399: + if (lookahead == 'Y') ADVANCE(451); + END_STATE(); + case 400: + if (lookahead == 'N') ADVANCE(452); + END_STATE(); case 401: - if (lookahead == 'z') ADVANCE(403); + if (lookahead == 'C') ADVANCE(453); END_STATE(); case 402: - ACCEPT_TOKEN(sym_keyword_smallserial); + ACCEPT_TOKEN(sym_keyword_serial); END_STATE(); case 403: + ACCEPT_TOKEN(sym_keyword_simple); + END_STATE(); + case 404: + if (lookahead == 'N') ADVANCE(454); + END_STATE(); + case 405: + if (lookahead == 'E') ADVANCE(455); + END_STATE(); + case 406: + if (lookahead == 'A') ADVANCE(456); + END_STATE(); + case 407: + if (lookahead == 'A') ADVANCE(457); + END_STATE(); + case 408: + ACCEPT_TOKEN(sym_keyword_unique); + END_STATE(); + case 409: + if (lookahead == 'E') ADVANCE(458); + END_STATE(); + case 410: + ACCEPT_TOKEN(sym_keyword_update); + END_STATE(); + case 411: + if (lookahead == 'R') ADVANCE(459); + END_STATE(); + case 412: + if (lookahead == 'T') ADVANCE(460); + END_STATE(); + case 413: + if (lookahead == 'i') ADVANCE(461); + END_STATE(); + case 414: + if (lookahead == 'n') ADVANCE(438); + END_STATE(); + case 415: + if (lookahead == 'e') ADVANCE(439); + END_STATE(); + case 416: + if (lookahead == 't') ADVANCE(462); + END_STATE(); + case 417: + if (lookahead == 'a') ADVANCE(463); + END_STATE(); + case 418: + if (lookahead == 'm') ADVANCE(464); + END_STATE(); + case 419: + if (lookahead == 'l') ADVANCE(443); + END_STATE(); + case 420: + if (lookahead == 't') ADVANCE(444); + END_STATE(); + case 421: + if (lookahead == 'c') ADVANCE(465); + END_STATE(); + case 422: + if (lookahead == 'n') ADVANCE(446); + END_STATE(); + case 423: + if (lookahead == 'r') ADVANCE(447); + END_STATE(); + case 424: + if (lookahead == 'c') ADVANCE(448); + END_STATE(); + case 425: + if (lookahead == 'l') ADVANCE(449); + END_STATE(); + case 426: + if (lookahead == 'i') ADVANCE(466); + END_STATE(); + case 427: + if (lookahead == 'y') ADVANCE(451); + END_STATE(); + case 428: + if (lookahead == 'n') ADVANCE(467); + END_STATE(); + case 429: + if (lookahead == 'c') ADVANCE(468); + END_STATE(); + case 430: + if (lookahead == 'n') ADVANCE(469); + END_STATE(); + case 431: + if (lookahead == 'e') ADVANCE(470); + END_STATE(); + case 432: + if (lookahead == 'a') ADVANCE(471); + END_STATE(); + case 433: + if (lookahead == 'a') ADVANCE(472); + END_STATE(); + case 434: + if (lookahead == 'e') ADVANCE(473); + END_STATE(); + case 435: + if (lookahead == 'r') ADVANCE(459); + END_STATE(); + case 436: + if (lookahead == 't') ADVANCE(460); + END_STATE(); + case 437: + if (lookahead == 'A') ADVANCE(474); + END_STATE(); + case 438: + ACCEPT_TOKEN(sym_keyword_boolean); + END_STATE(); + case 439: + ACCEPT_TOKEN(sym_keyword_cascade); + END_STATE(); + case 440: + if (lookahead == 'E') ADVANCE(475); + END_STATE(); + case 441: + if (lookahead == 'I') ADVANCE(476); + END_STATE(); + case 442: + if (lookahead == 'E') ADVANCE(477); + END_STATE(); + case 443: + ACCEPT_TOKEN(sym_keyword_decimal); + END_STATE(); + case 444: + ACCEPT_TOKEN(sym_keyword_default); + END_STATE(); + case 445: + if (lookahead == 'T') ADVANCE(478); + END_STATE(); + case 446: + ACCEPT_TOKEN(sym_keyword_foreign); + END_STATE(); + case 447: + ACCEPT_TOKEN(sym_keyword_integer); + END_STATE(); + case 448: + ACCEPT_TOKEN(sym_keyword_numeric); + END_STATE(); + case 449: + ACCEPT_TOKEN(sym_keyword_partial); + END_STATE(); + case 450: + if (lookahead == 'O') ADVANCE(479); + END_STATE(); + case 451: + ACCEPT_TOKEN(sym_keyword_primary); + END_STATE(); + case 452: + if (lookahead == 'C') ADVANCE(480); + END_STATE(); + case 453: + if (lookahead == 'T') ADVANCE(481); + END_STATE(); + case 454: + if (lookahead == 'T') ADVANCE(482); + END_STATE(); + case 455: + if (lookahead == 'R') ADVANCE(483); + END_STATE(); + case 456: + if (lookahead == 'R') ADVANCE(484); + END_STATE(); + case 457: + if (lookahead == 'M') ADVANCE(485); + END_STATE(); + case 458: + if (lookahead == 'D') ADVANCE(486); + END_STATE(); + case 459: + ACCEPT_TOKEN(aux_sym_keyword_varchar_token1); + END_STATE(); + case 460: + ACCEPT_TOKEN(aux_sym__without_time_zone_token1); + END_STATE(); + case 461: + if (lookahead == 'a') ADVANCE(487); + END_STATE(); + case 462: + if (lookahead == 'e') ADVANCE(488); + END_STATE(); + case 463: + if (lookahead == 'i') ADVANCE(489); + END_STATE(); + case 464: + if (lookahead == 'e') ADVANCE(477); + END_STATE(); + case 465: + if (lookahead == 't') ADVANCE(478); + END_STATE(); + case 466: + if (lookahead == 'o') ADVANCE(490); + END_STATE(); + case 467: + if (lookahead == 'c') ADVANCE(491); + END_STATE(); + case 468: + if (lookahead == 't') ADVANCE(481); + END_STATE(); + case 469: + if (lookahead == 't') ADVANCE(482); + END_STATE(); + case 470: + if (lookahead == 'r') ADVANCE(492); + END_STATE(); + case 471: + if (lookahead == 'r') ADVANCE(493); + END_STATE(); + case 472: + if (lookahead == 'm') ADVANCE(494); + END_STATE(); + case 473: + if (lookahead == 'd') ADVANCE(486); + END_STATE(); + case 474: + if (lookahead == 'L') ADVANCE(495); + END_STATE(); + case 475: + if (lookahead == 'R') ADVANCE(496); + END_STATE(); + case 476: + if (lookahead == 'N') ADVANCE(497); + END_STATE(); + case 477: + ACCEPT_TOKEN(sym_keyword_datetime); + END_STATE(); + case 478: + ACCEPT_TOKEN(sym_keyword_distinct); + END_STATE(); + case 479: + if (lookahead == 'N') ADVANCE(498); + END_STATE(); + case 480: + if (lookahead == 'E') ADVANCE(499); + END_STATE(); + case 481: + ACCEPT_TOKEN(sym_keyword_restrict); + END_STATE(); + case 482: + ACCEPT_TOKEN(sym_keyword_smallint); + END_STATE(); + case 483: + if (lookahead == 'I') ADVANCE(500); + END_STATE(); + case 484: + if (lookahead == 'Y') ADVANCE(501); + END_STATE(); + case 485: + if (lookahead == 'P') ADVANCE(502); + END_STATE(); + case 486: + ACCEPT_TOKEN(sym_keyword_unlogged); + END_STATE(); + case 487: + if (lookahead == 'l') ADVANCE(495); + END_STATE(); + case 488: + if (lookahead == 'r') ADVANCE(496); + END_STATE(); + case 489: + if (lookahead == 'n') ADVANCE(503); + END_STATE(); + case 490: + if (lookahead == 'n') ADVANCE(498); + END_STATE(); + case 491: + if (lookahead == 'e') ADVANCE(504); + END_STATE(); + case 492: + if (lookahead == 'i') ADVANCE(505); + END_STATE(); + case 493: + if (lookahead == 'y') ADVANCE(501); + END_STATE(); + case 494: + if (lookahead == 'p') ADVANCE(506); + END_STATE(); + case 495: + ACCEPT_TOKEN(sym_keyword_bigserial); + END_STATE(); + case 496: + ACCEPT_TOKEN(aux_sym_keyword_char_token1); + END_STATE(); + case 497: + if (lookahead == 'T') ADVANCE(507); + END_STATE(); + case 498: + ACCEPT_TOKEN(aux_sym_double_token2); + END_STATE(); + case 499: + if (lookahead == 'S') ADVANCE(508); + END_STATE(); + case 500: + if (lookahead == 'A') ADVANCE(509); + END_STATE(); + case 501: + ACCEPT_TOKEN(aux_sym_keyword_temporary_token1); + END_STATE(); + case 502: + ACCEPT_TOKEN(aux_sym_keyword_timestamp_token1); + if (lookahead == 'T') ADVANCE(510); + END_STATE(); + case 503: + if (lookahead == 't') ADVANCE(507); + END_STATE(); + case 504: + if (lookahead == 's') ADVANCE(508); + END_STATE(); + case 505: + if (lookahead == 'a') ADVANCE(511); + END_STATE(); + case 506: + ACCEPT_TOKEN(aux_sym_keyword_timestamp_token1); + if (lookahead == 't') ADVANCE(512); + END_STATE(); + case 507: + ACCEPT_TOKEN(sym_keyword_constraint); + END_STATE(); + case 508: + ACCEPT_TOKEN(sym_keyword_references); + END_STATE(); + case 509: + if (lookahead == 'L') ADVANCE(513); + END_STATE(); + case 510: + if (lookahead == 'Z') ADVANCE(514); + END_STATE(); + case 511: + if (lookahead == 'l') ADVANCE(513); + END_STATE(); + case 512: + if (lookahead == 'z') ADVANCE(514); + END_STATE(); + case 513: + ACCEPT_TOKEN(sym_keyword_smallserial); + END_STATE(); + case 514: ACCEPT_TOKEN(aux_sym_keyword_timestamptz_token1); END_STATE(); default: @@ -2719,17 +3284,17 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [88] = {.lex_state = 0}, [89] = {.lex_state = 0}, [90] = {.lex_state = 0}, - [91] = {.lex_state = 35}, + [91] = {.lex_state = 0}, [92] = {.lex_state = 0}, [93] = {.lex_state = 0}, [94] = {.lex_state = 0}, [95] = {.lex_state = 0}, - [96] = {.lex_state = 10}, + [96] = {.lex_state = 0}, [97] = {.lex_state = 0}, [98] = {.lex_state = 0}, [99] = {.lex_state = 0}, [100] = {.lex_state = 0}, - [101] = {.lex_state = 5}, + [101] = {.lex_state = 0}, [102] = {.lex_state = 0}, [103] = {.lex_state = 0}, [104] = {.lex_state = 0}, @@ -2743,14 +3308,72 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [112] = {.lex_state = 0}, [113] = {.lex_state = 0}, [114] = {.lex_state = 0}, - [115] = {.lex_state = 1}, + [115] = {.lex_state = 0}, [116] = {.lex_state = 0}, [117] = {.lex_state = 0}, [118] = {.lex_state = 0}, [119] = {.lex_state = 0}, [120] = {.lex_state = 0}, - [121] = {(TSStateId)(-1)}, - [122] = {(TSStateId)(-1)}, + [121] = {.lex_state = 0}, + [122] = {.lex_state = 0}, + [123] = {.lex_state = 0}, + [124] = {.lex_state = 0}, + [125] = {.lex_state = 0}, + [126] = {.lex_state = 0}, + [127] = {.lex_state = 0}, + [128] = {.lex_state = 0}, + [129] = {.lex_state = 0}, + [130] = {.lex_state = 0}, + [131] = {.lex_state = 0}, + [132] = {.lex_state = 0}, + [133] = {.lex_state = 0}, + [134] = {.lex_state = 0}, + [135] = {.lex_state = 0}, + [136] = {.lex_state = 0}, + [137] = {.lex_state = 0}, + [138] = {.lex_state = 0}, + [139] = {.lex_state = 0}, + [140] = {.lex_state = 0}, + [141] = {.lex_state = 0}, + [142] = {.lex_state = 0}, + [143] = {.lex_state = 0}, + [144] = {.lex_state = 0}, + [145] = {.lex_state = 0}, + [146] = {.lex_state = 0}, + [147] = {.lex_state = 10}, + [148] = {.lex_state = 0}, + [149] = {.lex_state = 0}, + [150] = {.lex_state = 0}, + [151] = {.lex_state = 0}, + [152] = {.lex_state = 0}, + [153] = {.lex_state = 0}, + [154] = {.lex_state = 0}, + [155] = {.lex_state = 0}, + [156] = {.lex_state = 0}, + [157] = {.lex_state = 0}, + [158] = {.lex_state = 0}, + [159] = {.lex_state = 0}, + [160] = {.lex_state = 5}, + [161] = {.lex_state = 0}, + [162] = {.lex_state = 0}, + [163] = {.lex_state = 0}, + [164] = {.lex_state = 0}, + [165] = {.lex_state = 0}, + [166] = {.lex_state = 0}, + [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 = 35}, + [174] = {.lex_state = 1}, + [175] = {.lex_state = 0}, + [176] = {.lex_state = 0}, + [177] = {.lex_state = 0}, + [178] = {.lex_state = 0}, + [179] = {(TSStateId)(-1)}, + [180] = {(TSStateId)(-1)}, }; static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { @@ -2786,8 +3409,22 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_keyword_nulls] = ACTIONS(1), [sym_keyword_distinct] = ACTIONS(1), [sym_keyword_unique] = ACTIONS(1), - [aux_sym_keyword_primary_key_token1] = ACTIONS(1), - [aux_sym_keyword_primary_key_token2] = ACTIONS(1), + [sym_keyword_primary] = ACTIONS(1), + [sym_keyword_foreign] = ACTIONS(1), + [sym_keyword_key] = ACTIONS(1), + [sym_keyword_references] = ACTIONS(1), + [sym_keyword_on] = ACTIONS(1), + [sym_keyword_no] = ACTIONS(1), + [sym_keyword_delete] = ACTIONS(1), + [sym_keyword_update] = ACTIONS(1), + [sym_keyword_match] = ACTIONS(1), + [sym_keyword_full] = ACTIONS(1), + [sym_keyword_partial] = ACTIONS(1), + [sym_keyword_simple] = ACTIONS(1), + [sym_keyword_action] = ACTIONS(1), + [sym_keyword_set] = ACTIONS(1), + [sym_keyword_restrict] = ACTIONS(1), + [sym_keyword_cascade] = ACTIONS(1), [sym_keyword_xml] = ACTIONS(1), [sym_keyword_uuid] = ACTIONS(1), [sym_keyword_json] = ACTIONS(1), @@ -2820,14 +3457,14 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_DQUOTE] = ACTIONS(1), }, [1] = { - [sym_source_file] = STATE(118), - [sym_statement] = STATE(68), - [sym__ddl_statement] = STATE(116), - [sym__create_statement] = STATE(114), - [sym_create_table] = STATE(111), + [sym_source_file] = STATE(175), + [sym_statement] = STATE(91), + [sym__ddl_statement] = STATE(169), + [sym__create_statement] = STATE(164), + [sym_create_table] = STATE(161), [sym_line_comment] = STATE(1), [sym_block_comment] = STATE(1), - [aux_sym_source_file_repeat1] = STATE(43), + [aux_sym_source_file_repeat1] = STATE(64), [ts_builtin_sym_end] = ACTIONS(7), [anon_sym_SEMI] = ACTIONS(9), [sym_keyword_create] = ACTIONS(11), @@ -2866,26 +3503,26 @@ static const uint16_t ts_small_parse_table[] = { aux_sym_keyword_timestamp_token1, ACTIONS(39), 1, aux_sym_keyword_timestamptz_token1, - STATE(6), 1, + STATE(9), 1, sym__type, - STATE(15), 1, - sym_keyword_varchar, - STATE(16), 1, + STATE(11), 1, sym_keyword_char, + STATE(22), 1, + sym_keyword_varchar, STATE(2), 2, sym_line_comment, sym_block_comment, STATE(51), 2, sym_char, sym_varchar, - STATE(26), 3, - sym_keyword_time, - sym_keyword_timestamp, - sym_keyword_timestamptz, STATE(48), 3, sym_double, sym_decimal, sym_numeric, + STATE(55), 3, + sym_keyword_time, + sym_keyword_timestamp, + sym_keyword_timestamptz, ACTIONS(17), 5, sym_keyword_xml, sym_keyword_uuid, @@ -2921,15 +3558,20 @@ static const uint16_t ts_small_parse_table[] = { aux_sym_keyword_char_token2, sym_keyword_date, aux_sym_keyword_timestamp_token1, - ACTIONS(41), 27, + ACTIONS(41), 32, anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_RPAREN, anon_sym_DOT, aux_sym_double_token1, sym_keyword_not, sym_keyword_null, sym_keyword_default, sym_keyword_unique, - aux_sym_keyword_primary_key_token1, + sym_keyword_primary, + sym_keyword_references, + sym_keyword_on, + sym_keyword_match, sym_keyword_xml, sym_keyword_uuid, sym_keyword_boolean, @@ -2949,7 +3591,7 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_bytea, sym_keyword_datetime, aux_sym_keyword_timestamptz_token1, - [141] = 5, + [146] = 5, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, @@ -2962,15 +3604,20 @@ static const uint16_t ts_small_parse_table[] = { aux_sym_keyword_char_token2, sym_keyword_date, aux_sym_keyword_timestamp_token1, - ACTIONS(45), 27, + ACTIONS(45), 32, anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_RPAREN, anon_sym_DOT, aux_sym_double_token1, sym_keyword_not, sym_keyword_null, sym_keyword_default, sym_keyword_unique, - aux_sym_keyword_primary_key_token1, + sym_keyword_primary, + sym_keyword_references, + sym_keyword_on, + sym_keyword_match, sym_keyword_xml, sym_keyword_uuid, sym_keyword_boolean, @@ -2990,7 +3637,7 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_bytea, sym_keyword_datetime, aux_sym_keyword_timestamptz_token1, - [187] = 7, + [197] = 8, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, @@ -2999,13 +3646,14 @@ static const uint16_t ts_small_parse_table[] = { aux_sym__without_time_zone_token1, ACTIONS(53), 1, aux_sym__with_time_zone_token1, + STATE(45), 1, + sym__with_time_zone, + STATE(49), 1, + sym__without_time_zone, STATE(5), 2, sym_line_comment, sym_block_comment, - STATE(39), 2, - sym__without_time_zone, - sym__with_time_zone, - ACTIONS(49), 8, + ACTIONS(49), 9, anon_sym_COMMA, anon_sym_RPAREN, sym_keyword_not, @@ -3013,8 +3661,9 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_constraint, sym_keyword_default, sym_keyword_unique, - aux_sym_keyword_primary_key_token1, - [218] = 13, + sym_keyword_primary, + sym_keyword_references, + [231] = 14, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, @@ -3030,10 +3679,12 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(65), 1, sym_keyword_unique, ACTIONS(67), 1, - aux_sym_keyword_primary_key_token1, - STATE(8), 1, + sym_keyword_primary, + ACTIONS(69), 1, + sym_keyword_references, + STATE(7), 1, aux_sym_column_definition_repeat1, - STATE(31), 1, + STATE(32), 1, sym_column_constraint, ACTIONS(55), 2, anon_sym_COMMA, @@ -3041,10 +3692,41 @@ static const uint16_t ts_small_parse_table[] = { STATE(6), 2, sym_line_comment, sym_block_comment, - STATE(34), 2, + STATE(42), 2, + sym__primary_key, sym__not_null, - sym_keyword_primary_key, - [261] = 8, + [277] = 13, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(73), 1, + sym_keyword_not, + ACTIONS(76), 1, + sym_keyword_null, + ACTIONS(79), 1, + sym_keyword_constraint, + ACTIONS(82), 1, + sym_keyword_default, + ACTIONS(85), 1, + sym_keyword_unique, + ACTIONS(88), 1, + sym_keyword_primary, + ACTIONS(91), 1, + sym_keyword_references, + STATE(32), 1, + sym_column_constraint, + ACTIONS(71), 2, + anon_sym_COMMA, + anon_sym_RPAREN, + STATE(42), 2, + sym__primary_key, + sym__not_null, + STATE(7), 3, + sym_line_comment, + sym_block_comment, + aux_sym_column_definition_repeat1, + [321] = 7, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, @@ -3053,14 +3735,13 @@ static const uint16_t ts_small_parse_table[] = { aux_sym__without_time_zone_token1, ACTIONS(53), 1, aux_sym__with_time_zone_token1, - STATE(20), 1, - sym__with_time_zone, - STATE(37), 1, - sym__without_time_zone, - STATE(7), 2, + STATE(8), 2, sym_line_comment, sym_block_comment, - ACTIONS(69), 8, + STATE(50), 2, + sym__without_time_zone, + sym__with_time_zone, + ACTIONS(94), 9, anon_sym_COMMA, anon_sym_RPAREN, sym_keyword_not, @@ -3068,8 +3749,9 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_constraint, sym_keyword_default, sym_keyword_unique, - aux_sym_keyword_primary_key_token1, - [294] = 13, + sym_keyword_primary, + sym_keyword_references, + [353] = 14, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, @@ -3085,59 +3767,33 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(65), 1, sym_keyword_unique, ACTIONS(67), 1, - aux_sym_keyword_primary_key_token1, - STATE(9), 1, + sym_keyword_primary, + ACTIONS(69), 1, + sym_keyword_references, + STATE(6), 1, aux_sym_column_definition_repeat1, - STATE(31), 1, + STATE(32), 1, sym_column_constraint, - ACTIONS(71), 2, + ACTIONS(96), 2, anon_sym_COMMA, anon_sym_RPAREN, - STATE(8), 2, + STATE(9), 2, sym_line_comment, sym_block_comment, - STATE(34), 2, + STATE(42), 2, + sym__primary_key, sym__not_null, - sym_keyword_primary_key, - [337] = 12, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(75), 1, - sym_keyword_not, - ACTIONS(78), 1, - sym_keyword_null, - ACTIONS(81), 1, - sym_keyword_constraint, - ACTIONS(84), 1, - sym_keyword_default, - ACTIONS(87), 1, - sym_keyword_unique, - ACTIONS(90), 1, - aux_sym_keyword_primary_key_token1, - STATE(31), 1, - sym_column_constraint, - ACTIONS(73), 2, - anon_sym_COMMA, - anon_sym_RPAREN, - STATE(34), 2, - sym__not_null, - sym_keyword_primary_key, - STATE(9), 3, - sym_line_comment, - sym_block_comment, - aux_sym_column_definition_repeat1, - [378] = 4, + [399] = 5, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, + ACTIONS(98), 1, + anon_sym_LPAREN, STATE(10), 2, sym_line_comment, sym_block_comment, - ACTIONS(93), 9, - anon_sym_LPAREN, + ACTIONS(100), 10, anon_sym_COMMA, anon_sym_RPAREN, sym_keyword_not, @@ -3145,17 +3801,20 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_constraint, sym_keyword_default, sym_keyword_unique, - aux_sym_keyword_primary_key_token1, - [400] = 4, + sym_keyword_primary, + sym_keyword_references, + sym_keyword_on, + [425] = 5, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, + ACTIONS(102), 1, + anon_sym_LPAREN, STATE(11), 2, sym_line_comment, sym_block_comment, - ACTIONS(95), 9, - anon_sym_LPAREN, + ACTIONS(104), 9, anon_sym_COMMA, anon_sym_RPAREN, sym_keyword_not, @@ -3163,8 +3822,9 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_constraint, sym_keyword_default, sym_keyword_unique, - aux_sym_keyword_primary_key_token1, - [422] = 4, + sym_keyword_primary, + sym_keyword_references, + [450] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, @@ -3172,7 +3832,7 @@ static const uint16_t ts_small_parse_table[] = { STATE(12), 2, sym_line_comment, sym_block_comment, - ACTIONS(97), 9, + ACTIONS(106), 10, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, @@ -3181,18 +3841,17 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_constraint, sym_keyword_default, sym_keyword_unique, - aux_sym_keyword_primary_key_token1, - [444] = 5, + sym_keyword_primary, + sym_keyword_references, + [473] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(100), 1, - anon_sym_LPAREN, STATE(13), 2, sym_line_comment, sym_block_comment, - ACTIONS(102), 8, + ACTIONS(100), 10, anon_sym_COMMA, anon_sym_RPAREN, sym_keyword_not, @@ -3200,18 +3859,19 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_constraint, sym_keyword_default, sym_keyword_unique, - aux_sym_keyword_primary_key_token1, - [468] = 5, + sym_keyword_primary, + sym_keyword_references, + sym_keyword_on, + [496] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(104), 1, - anon_sym_LPAREN, STATE(14), 2, sym_line_comment, sym_block_comment, - ACTIONS(106), 8, + ACTIONS(108), 10, + anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, sym_keyword_not, @@ -3219,18 +3879,18 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_constraint, sym_keyword_default, sym_keyword_unique, - aux_sym_keyword_primary_key_token1, - [492] = 5, + sym_keyword_primary, + sym_keyword_references, + [519] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(108), 1, - anon_sym_LPAREN, STATE(15), 2, sym_line_comment, sym_block_comment, - ACTIONS(110), 8, + ACTIONS(110), 10, + anon_sym_LPAREN, anon_sym_COMMA, anon_sym_RPAREN, sym_keyword_not, @@ -3238,18 +3898,19 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_constraint, sym_keyword_default, sym_keyword_unique, - aux_sym_keyword_primary_key_token1, - [516] = 5, + sym_keyword_primary, + sym_keyword_references, + [542] = 5, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(112), 1, + ACTIONS(113), 1, anon_sym_LPAREN, STATE(16), 2, sym_line_comment, sym_block_comment, - ACTIONS(114), 8, + ACTIONS(115), 9, anon_sym_COMMA, anon_sym_RPAREN, sym_keyword_not, @@ -3257,48 +3918,48 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_constraint, sym_keyword_default, sym_keyword_unique, - aux_sym_keyword_primary_key_token1, - [540] = 6, + sym_keyword_primary, + sym_keyword_references, + [567] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(118), 1, - sym_keyword_null, - ACTIONS(120), 1, - sym_keyword_nulls, STATE(17), 2, sym_line_comment, sym_block_comment, - ACTIONS(116), 7, + ACTIONS(117), 10, anon_sym_COMMA, anon_sym_RPAREN, sym_keyword_not, + sym_keyword_null, sym_keyword_constraint, sym_keyword_default, sym_keyword_unique, - aux_sym_keyword_primary_key_token1, - [566] = 6, + sym_keyword_primary, + sym_keyword_references, + sym_keyword_on, + [590] = 5, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(124), 1, - sym_keyword_null, - ACTIONS(126), 1, - sym_keyword_nulls, + ACTIONS(119), 1, + anon_sym_LPAREN, STATE(18), 2, sym_line_comment, sym_block_comment, - ACTIONS(122), 7, + ACTIONS(121), 9, anon_sym_COMMA, anon_sym_RPAREN, sym_keyword_not, + sym_keyword_null, sym_keyword_constraint, sym_keyword_default, sym_keyword_unique, - aux_sym_keyword_primary_key_token1, - [592] = 4, + sym_keyword_primary, + sym_keyword_references, + [615] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, @@ -3306,7 +3967,7 @@ static const uint16_t ts_small_parse_table[] = { STATE(19), 2, sym_line_comment, sym_block_comment, - ACTIONS(128), 8, + ACTIONS(123), 10, anon_sym_COMMA, anon_sym_RPAREN, sym_keyword_not, @@ -3314,8 +3975,10 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_constraint, sym_keyword_default, sym_keyword_unique, - aux_sym_keyword_primary_key_token1, - [613] = 4, + sym_keyword_primary, + sym_keyword_references, + sym_keyword_on, + [638] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, @@ -3323,7 +3986,7 @@ static const uint16_t ts_small_parse_table[] = { STATE(20), 2, sym_line_comment, sym_block_comment, - ACTIONS(130), 8, + ACTIONS(125), 10, anon_sym_COMMA, anon_sym_RPAREN, sym_keyword_not, @@ -3331,39 +3994,39 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_constraint, sym_keyword_default, sym_keyword_unique, - aux_sym_keyword_primary_key_token1, - [634] = 10, + sym_keyword_primary, + sym_keyword_references, + sym_keyword_on, + [661] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(132), 1, - ts_builtin_sym_end, - ACTIONS(134), 1, - anon_sym_SEMI, - ACTIONS(137), 1, - sym_keyword_create, - STATE(68), 1, - sym_statement, - STATE(111), 1, - sym_create_table, - STATE(114), 1, - sym__create_statement, - STATE(116), 1, - sym__ddl_statement, - STATE(21), 3, + STATE(21), 2, sym_line_comment, sym_block_comment, - aux_sym_source_file_repeat1, - [667] = 4, + ACTIONS(127), 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, + [684] = 5, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, + ACTIONS(129), 1, + anon_sym_LPAREN, STATE(22), 2, sym_line_comment, sym_block_comment, - ACTIONS(140), 8, + ACTIONS(131), 9, anon_sym_COMMA, anon_sym_RPAREN, sym_keyword_not, @@ -3371,42 +4034,51 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_constraint, sym_keyword_default, sym_keyword_unique, - aux_sym_keyword_primary_key_token1, - [688] = 4, + sym_keyword_primary, + sym_keyword_references, + [709] = 6, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, + ACTIONS(135), 1, + sym_keyword_null, + ACTIONS(137), 1, + sym_keyword_nulls, STATE(23), 2, sym_line_comment, sym_block_comment, - ACTIONS(142), 8, + ACTIONS(133), 8, anon_sym_COMMA, anon_sym_RPAREN, sym_keyword_not, - sym_keyword_null, sym_keyword_constraint, sym_keyword_default, sym_keyword_unique, - aux_sym_keyword_primary_key_token1, - [709] = 4, + sym_keyword_primary, + sym_keyword_references, + [736] = 6, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, + ACTIONS(141), 1, + sym_keyword_null, + ACTIONS(143), 1, + sym_keyword_nulls, STATE(24), 2, sym_line_comment, sym_block_comment, - ACTIONS(144), 8, + ACTIONS(139), 8, anon_sym_COMMA, anon_sym_RPAREN, sym_keyword_not, - sym_keyword_null, sym_keyword_constraint, sym_keyword_default, sym_keyword_unique, - aux_sym_keyword_primary_key_token1, - [730] = 4, + sym_keyword_primary, + sym_keyword_references, + [763] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, @@ -3414,7 +4086,7 @@ static const uint16_t ts_small_parse_table[] = { STATE(25), 2, sym_line_comment, sym_block_comment, - ACTIONS(146), 8, + ACTIONS(145), 10, anon_sym_COMMA, anon_sym_RPAREN, sym_keyword_not, @@ -3422,8 +4094,10 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_constraint, sym_keyword_default, sym_keyword_unique, - aux_sym_keyword_primary_key_token1, - [751] = 4, + sym_keyword_primary, + sym_keyword_references, + sym_keyword_on, + [786] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, @@ -3431,7 +4105,7 @@ static const uint16_t ts_small_parse_table[] = { STATE(26), 2, sym_line_comment, sym_block_comment, - ACTIONS(148), 8, + ACTIONS(147), 9, anon_sym_COMMA, anon_sym_RPAREN, sym_keyword_not, @@ -3439,8 +4113,9 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_constraint, sym_keyword_default, sym_keyword_unique, - aux_sym_keyword_primary_key_token1, - [772] = 4, + sym_keyword_primary, + sym_keyword_references, + [808] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, @@ -3448,7 +4123,7 @@ static const uint16_t ts_small_parse_table[] = { STATE(27), 2, sym_line_comment, sym_block_comment, - ACTIONS(150), 8, + ACTIONS(149), 9, anon_sym_COMMA, anon_sym_RPAREN, sym_keyword_not, @@ -3456,8 +4131,9 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_constraint, sym_keyword_default, sym_keyword_unique, - aux_sym_keyword_primary_key_token1, - [793] = 4, + sym_keyword_primary, + sym_keyword_references, + [830] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, @@ -3465,7 +4141,7 @@ static const uint16_t ts_small_parse_table[] = { STATE(28), 2, sym_line_comment, sym_block_comment, - ACTIONS(152), 8, + ACTIONS(151), 9, anon_sym_COMMA, anon_sym_RPAREN, sym_keyword_not, @@ -3473,8 +4149,9 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_constraint, sym_keyword_default, sym_keyword_unique, - aux_sym_keyword_primary_key_token1, - [814] = 4, + sym_keyword_primary, + sym_keyword_references, + [852] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, @@ -3482,7 +4159,7 @@ static const uint16_t ts_small_parse_table[] = { STATE(29), 2, sym_line_comment, sym_block_comment, - ACTIONS(154), 8, + ACTIONS(153), 9, anon_sym_COMMA, anon_sym_RPAREN, sym_keyword_not, @@ -3490,8 +4167,9 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_constraint, sym_keyword_default, sym_keyword_unique, - aux_sym_keyword_primary_key_token1, - [835] = 4, + sym_keyword_primary, + sym_keyword_references, + [874] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, @@ -3499,7 +4177,7 @@ static const uint16_t ts_small_parse_table[] = { STATE(30), 2, sym_line_comment, sym_block_comment, - ACTIONS(156), 8, + ACTIONS(155), 9, anon_sym_COMMA, anon_sym_RPAREN, sym_keyword_not, @@ -3507,8 +4185,9 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_constraint, sym_keyword_default, sym_keyword_unique, - aux_sym_keyword_primary_key_token1, - [856] = 4, + sym_keyword_primary, + sym_keyword_references, + [896] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, @@ -3516,7 +4195,7 @@ static const uint16_t ts_small_parse_table[] = { STATE(31), 2, sym_line_comment, sym_block_comment, - ACTIONS(158), 8, + ACTIONS(157), 9, anon_sym_COMMA, anon_sym_RPAREN, sym_keyword_not, @@ -3524,8 +4203,9 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_constraint, sym_keyword_default, sym_keyword_unique, - aux_sym_keyword_primary_key_token1, - [877] = 4, + sym_keyword_primary, + sym_keyword_references, + [918] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, @@ -3533,7 +4213,7 @@ static const uint16_t ts_small_parse_table[] = { STATE(32), 2, sym_line_comment, sym_block_comment, - ACTIONS(160), 8, + ACTIONS(159), 9, anon_sym_COMMA, anon_sym_RPAREN, sym_keyword_not, @@ -3541,29 +4221,27 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_constraint, sym_keyword_default, sym_keyword_unique, - aux_sym_keyword_primary_key_token1, - [898] = 8, + sym_keyword_primary, + sym_keyword_references, + [940] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(164), 1, - anon_sym_SQUOTE, - STATE(19), 1, - sym__literal_string, - STATE(24), 1, - sym_literal, - STATE(25), 1, - sym__expression, STATE(33), 2, sym_line_comment, sym_block_comment, - ACTIONS(162), 4, + ACTIONS(161), 9, + anon_sym_COMMA, + anon_sym_RPAREN, + sym_keyword_not, sym_keyword_null, - sym_keyword_true, - sym_keyword_false, - sym__number, - [927] = 4, + sym_keyword_constraint, + sym_keyword_default, + sym_keyword_unique, + sym_keyword_primary, + sym_keyword_references, + [962] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, @@ -3571,7 +4249,7 @@ static const uint16_t ts_small_parse_table[] = { STATE(34), 2, sym_line_comment, sym_block_comment, - ACTIONS(122), 8, + ACTIONS(163), 9, anon_sym_COMMA, anon_sym_RPAREN, sym_keyword_not, @@ -3579,8 +4257,9 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_constraint, sym_keyword_default, sym_keyword_unique, - aux_sym_keyword_primary_key_token1, - [948] = 4, + sym_keyword_primary, + sym_keyword_references, + [984] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, @@ -3588,7 +4267,7 @@ static const uint16_t ts_small_parse_table[] = { STATE(35), 2, sym_line_comment, sym_block_comment, - ACTIONS(116), 8, + ACTIONS(165), 9, anon_sym_COMMA, anon_sym_RPAREN, sym_keyword_not, @@ -3596,8 +4275,9 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_constraint, sym_keyword_default, sym_keyword_unique, - aux_sym_keyword_primary_key_token1, - [969] = 4, + sym_keyword_primary, + sym_keyword_references, + [1006] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, @@ -3605,7 +4285,7 @@ static const uint16_t ts_small_parse_table[] = { STATE(36), 2, sym_line_comment, sym_block_comment, - ACTIONS(166), 8, + ACTIONS(167), 9, anon_sym_COMMA, anon_sym_RPAREN, sym_keyword_not, @@ -3613,8 +4293,9 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_constraint, sym_keyword_default, sym_keyword_unique, - aux_sym_keyword_primary_key_token1, - [990] = 4, + sym_keyword_primary, + sym_keyword_references, + [1028] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, @@ -3622,7 +4303,7 @@ static const uint16_t ts_small_parse_table[] = { STATE(37), 2, sym_line_comment, sym_block_comment, - ACTIONS(168), 8, + ACTIONS(169), 9, anon_sym_COMMA, anon_sym_RPAREN, sym_keyword_not, @@ -3630,29 +4311,27 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_constraint, sym_keyword_default, sym_keyword_unique, - aux_sym_keyword_primary_key_token1, - [1011] = 8, + sym_keyword_primary, + sym_keyword_references, + [1050] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(164), 1, - anon_sym_SQUOTE, - STATE(19), 1, - sym__literal_string, - STATE(24), 1, - sym_literal, - STATE(46), 1, - sym__expression, STATE(38), 2, sym_line_comment, sym_block_comment, - ACTIONS(162), 4, + ACTIONS(171), 9, + anon_sym_COMMA, + anon_sym_RPAREN, + sym_keyword_not, sym_keyword_null, - sym_keyword_true, - sym_keyword_false, - sym__number, - [1040] = 4, + sym_keyword_constraint, + sym_keyword_default, + sym_keyword_unique, + sym_keyword_primary, + sym_keyword_references, + [1072] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, @@ -3660,7 +4339,7 @@ static const uint16_t ts_small_parse_table[] = { STATE(39), 2, sym_line_comment, sym_block_comment, - ACTIONS(170), 8, + ACTIONS(173), 9, anon_sym_COMMA, anon_sym_RPAREN, sym_keyword_not, @@ -3668,8 +4347,9 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_constraint, sym_keyword_default, sym_keyword_unique, - aux_sym_keyword_primary_key_token1, - [1061] = 4, + sym_keyword_primary, + sym_keyword_references, + [1094] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, @@ -3677,7 +4357,7 @@ static const uint16_t ts_small_parse_table[] = { STATE(40), 2, sym_line_comment, sym_block_comment, - ACTIONS(172), 8, + ACTIONS(175), 9, anon_sym_COMMA, anon_sym_RPAREN, sym_keyword_not, @@ -3685,8 +4365,9 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_constraint, sym_keyword_default, sym_keyword_unique, - aux_sym_keyword_primary_key_token1, - [1082] = 4, + sym_keyword_primary, + sym_keyword_references, + [1116] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, @@ -3694,7 +4375,7 @@ static const uint16_t ts_small_parse_table[] = { STATE(41), 2, sym_line_comment, sym_block_comment, - ACTIONS(174), 8, + ACTIONS(177), 9, anon_sym_COMMA, anon_sym_RPAREN, sym_keyword_not, @@ -3702,8 +4383,9 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_constraint, sym_keyword_default, sym_keyword_unique, - aux_sym_keyword_primary_key_token1, - [1103] = 4, + sym_keyword_primary, + sym_keyword_references, + [1138] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, @@ -3711,7 +4393,7 @@ static const uint16_t ts_small_parse_table[] = { STATE(42), 2, sym_line_comment, sym_block_comment, - ACTIONS(176), 8, + ACTIONS(139), 9, anon_sym_COMMA, anon_sym_RPAREN, sym_keyword_not, @@ -3719,8 +4401,387 @@ static const uint16_t ts_small_parse_table[] = { sym_keyword_constraint, sym_keyword_default, sym_keyword_unique, - aux_sym_keyword_primary_key_token1, - [1124] = 11, + sym_keyword_primary, + sym_keyword_references, + [1160] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + STATE(43), 2, + sym_line_comment, + sym_block_comment, + ACTIONS(179), 9, + anon_sym_COMMA, + anon_sym_RPAREN, + sym_keyword_not, + sym_keyword_null, + sym_keyword_constraint, + sym_keyword_default, + sym_keyword_unique, + sym_keyword_primary, + sym_keyword_references, + [1182] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + STATE(44), 2, + sym_line_comment, + sym_block_comment, + ACTIONS(181), 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, + [1204] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + STATE(45), 2, + sym_line_comment, + sym_block_comment, + ACTIONS(183), 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, + [1226] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + STATE(46), 2, + sym_line_comment, + sym_block_comment, + ACTIONS(185), 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, + [1248] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + STATE(47), 2, + sym_line_comment, + sym_block_comment, + ACTIONS(187), 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, + [1270] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + STATE(48), 2, + sym_line_comment, + sym_block_comment, + ACTIONS(189), 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, + [1292] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + STATE(49), 2, + sym_line_comment, + sym_block_comment, + ACTIONS(191), 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, + [1314] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + STATE(50), 2, + sym_line_comment, + sym_block_comment, + ACTIONS(193), 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, + [1336] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + STATE(51), 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, + [1358] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + STATE(52), 2, + sym_line_comment, + sym_block_comment, + ACTIONS(197), 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, + [1380] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + STATE(53), 2, + sym_line_comment, + sym_block_comment, + ACTIONS(199), 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, + [1402] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + STATE(54), 2, + sym_line_comment, + sym_block_comment, + ACTIONS(201), 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, + [1424] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + STATE(55), 2, + sym_line_comment, + sym_block_comment, + ACTIONS(203), 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, + [1446] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + STATE(56), 2, + sym_line_comment, + sym_block_comment, + ACTIONS(205), 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, + [1468] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + STATE(57), 2, + sym_line_comment, + sym_block_comment, + ACTIONS(207), 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, + [1490] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + STATE(58), 2, + sym_line_comment, + sym_block_comment, + ACTIONS(209), 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, + [1512] = 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(211), 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, + [1534] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + STATE(60), 2, + sym_line_comment, + sym_block_comment, + ACTIONS(213), 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, + [1556] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + STATE(61), 2, + sym_line_comment, + sym_block_comment, + ACTIONS(215), 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, + [1578] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + STATE(62), 2, + sym_line_comment, + sym_block_comment, + ACTIONS(133), 9, + anon_sym_COMMA, + anon_sym_RPAREN, + sym_keyword_not, + sym_keyword_null, + sym_keyword_constraint, + sym_keyword_default, + sym_keyword_unique, + sym_keyword_primary, + sym_keyword_references, + [1600] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + STATE(63), 2, + sym_line_comment, + sym_block_comment, + ACTIONS(217), 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, + [1622] = 11, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, @@ -3729,209 +4790,45 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_SEMI, ACTIONS(11), 1, sym_keyword_create, - ACTIONS(178), 1, + ACTIONS(219), 1, ts_builtin_sym_end, - STATE(21), 1, + STATE(65), 1, aux_sym_source_file_repeat1, - STATE(68), 1, + STATE(91), 1, sym_statement, - STATE(111), 1, + STATE(161), 1, sym_create_table, - STATE(114), 1, + STATE(164), 1, sym__create_statement, - STATE(116), 1, + STATE(169), 1, sym__ddl_statement, - STATE(43), 2, + STATE(64), 2, sym_line_comment, sym_block_comment, - [1159] = 4, + [1657] = 10, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - STATE(44), 2, + ACTIONS(221), 1, + ts_builtin_sym_end, + ACTIONS(223), 1, + anon_sym_SEMI, + ACTIONS(226), 1, + sym_keyword_create, + STATE(91), 1, + sym_statement, + STATE(161), 1, + sym_create_table, + STATE(164), 1, + sym__create_statement, + STATE(169), 1, + sym__ddl_statement, + STATE(65), 3, sym_line_comment, sym_block_comment, - ACTIONS(180), 8, - anon_sym_COMMA, - anon_sym_RPAREN, - sym_keyword_not, - sym_keyword_null, - sym_keyword_constraint, - sym_keyword_default, - sym_keyword_unique, - aux_sym_keyword_primary_key_token1, - [1180] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - STATE(45), 2, - sym_line_comment, - sym_block_comment, - ACTIONS(182), 8, - anon_sym_COMMA, - anon_sym_RPAREN, - sym_keyword_not, - sym_keyword_null, - sym_keyword_constraint, - sym_keyword_default, - sym_keyword_unique, - aux_sym_keyword_primary_key_token1, - [1201] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - STATE(46), 2, - sym_line_comment, - sym_block_comment, - ACTIONS(184), 8, - anon_sym_COMMA, - anon_sym_RPAREN, - sym_keyword_not, - sym_keyword_null, - sym_keyword_constraint, - sym_keyword_default, - sym_keyword_unique, - aux_sym_keyword_primary_key_token1, - [1222] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - STATE(47), 2, - sym_line_comment, - sym_block_comment, - ACTIONS(186), 8, - anon_sym_COMMA, - anon_sym_RPAREN, - sym_keyword_not, - sym_keyword_null, - sym_keyword_constraint, - sym_keyword_default, - sym_keyword_unique, - aux_sym_keyword_primary_key_token1, - [1243] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - STATE(48), 2, - sym_line_comment, - sym_block_comment, - ACTIONS(188), 8, - anon_sym_COMMA, - anon_sym_RPAREN, - sym_keyword_not, - sym_keyword_null, - sym_keyword_constraint, - sym_keyword_default, - sym_keyword_unique, - aux_sym_keyword_primary_key_token1, - [1264] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - STATE(49), 2, - sym_line_comment, - sym_block_comment, - ACTIONS(190), 8, - anon_sym_COMMA, - anon_sym_RPAREN, - sym_keyword_not, - sym_keyword_null, - sym_keyword_constraint, - sym_keyword_default, - sym_keyword_unique, - aux_sym_keyword_primary_key_token1, - [1285] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - STATE(50), 2, - sym_line_comment, - sym_block_comment, - ACTIONS(192), 8, - anon_sym_COMMA, - anon_sym_RPAREN, - sym_keyword_not, - sym_keyword_null, - sym_keyword_constraint, - sym_keyword_default, - sym_keyword_unique, - aux_sym_keyword_primary_key_token1, - [1306] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - STATE(51), 2, - sym_line_comment, - sym_block_comment, - ACTIONS(194), 8, - anon_sym_COMMA, - anon_sym_RPAREN, - sym_keyword_not, - sym_keyword_null, - sym_keyword_constraint, - sym_keyword_default, - sym_keyword_unique, - aux_sym_keyword_primary_key_token1, - [1327] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - STATE(52), 2, - sym_line_comment, - sym_block_comment, - ACTIONS(196), 8, - anon_sym_COMMA, - anon_sym_RPAREN, - sym_keyword_not, - sym_keyword_null, - sym_keyword_constraint, - sym_keyword_default, - sym_keyword_unique, - aux_sym_keyword_primary_key_token1, - [1348] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - STATE(53), 2, - sym_line_comment, - sym_block_comment, - ACTIONS(198), 8, - anon_sym_COMMA, - anon_sym_RPAREN, - sym_keyword_not, - sym_keyword_null, - sym_keyword_constraint, - sym_keyword_default, - sym_keyword_unique, - aux_sym_keyword_primary_key_token1, - [1369] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - STATE(54), 2, - sym_line_comment, - sym_block_comment, - ACTIONS(200), 8, - anon_sym_COMMA, - anon_sym_RPAREN, - sym_keyword_not, - sym_keyword_null, - sym_keyword_constraint, - sym_keyword_default, - sym_keyword_unique, - aux_sym_keyword_primary_key_token1, - [1390] = 9, + aux_sym_source_file_repeat1, + [1690] = 10, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, @@ -3939,1075 +4836,1812 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(57), 1, sym_keyword_not, ACTIONS(67), 1, - aux_sym_keyword_primary_key_token1, - ACTIONS(202), 1, + sym_keyword_primary, + ACTIONS(229), 1, sym_keyword_null, - ACTIONS(204), 1, - sym_keyword_default, - ACTIONS(206), 1, - sym_keyword_unique, - STATE(35), 2, - sym__not_null, - sym_keyword_primary_key, - STATE(55), 2, - sym_line_comment, - sym_block_comment, - [1420] = 9, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(208), 1, - sym__identifier, - ACTIONS(210), 1, - sym_keyword_if, - ACTIONS(212), 1, - anon_sym_DQUOTE, - STATE(62), 1, - sym__if_not_exists, - STATE(75), 1, - sym_table_reference, - STATE(77), 1, - sym_identifier, - STATE(56), 2, - sym_line_comment, - sym_block_comment, - [1449] = 9, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(208), 1, - sym__identifier, - ACTIONS(210), 1, - sym_keyword_if, - ACTIONS(212), 1, - anon_sym_DQUOTE, - STATE(61), 1, - sym__if_not_exists, - STATE(77), 1, - sym_identifier, - STATE(81), 1, - sym_table_reference, - STATE(57), 2, - sym_line_comment, - sym_block_comment, - [1478] = 8, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(212), 1, - anon_sym_DQUOTE, - ACTIONS(214), 1, - sym__identifier, - ACTIONS(216), 1, - anon_sym_RPAREN, - STATE(2), 1, - sym_identifier, - STATE(66), 1, - sym_column_definition, - STATE(58), 2, - sym_line_comment, - sym_block_comment, - [1504] = 8, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(218), 1, - sym_keyword_table, - ACTIONS(220), 1, - aux_sym_keyword_temporary_token1, - ACTIONS(222), 1, - aux_sym_keyword_temporary_token2, - ACTIONS(224), 1, - sym_keyword_unlogged, - STATE(104), 1, - sym_keyword_temporary, - STATE(59), 2, - sym_line_comment, - sym_block_comment, - [1530] = 7, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(212), 1, - anon_sym_DQUOTE, - ACTIONS(214), 1, - sym__identifier, - STATE(2), 1, - sym_identifier, - STATE(78), 1, - sym_column_definition, - STATE(60), 2, - sym_line_comment, - sym_block_comment, - [1553] = 7, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(212), 1, - anon_sym_DQUOTE, - ACTIONS(214), 1, - sym__identifier, - STATE(77), 1, - sym_identifier, - STATE(80), 1, - sym_table_reference, - STATE(61), 2, - sym_line_comment, - sym_block_comment, - [1576] = 7, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(212), 1, - anon_sym_DQUOTE, - ACTIONS(214), 1, - sym__identifier, - STATE(77), 1, - sym_identifier, - STATE(81), 1, - sym_table_reference, - STATE(62), 2, - sym_line_comment, - sym_block_comment, - [1599] = 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(226), 3, - ts_builtin_sym_end, - anon_sym_SEMI, - sym_keyword_create, - [1615] = 5, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(228), 1, - anon_sym_COMMA, ACTIONS(231), 1, - anon_sym_RPAREN, - STATE(64), 3, - sym_line_comment, - sym_block_comment, - aux_sym_column_definitions_repeat1, - [1633] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - STATE(65), 2, - sym_line_comment, - sym_block_comment, - ACTIONS(233), 3, - ts_builtin_sym_end, - anon_sym_SEMI, - sym_keyword_create, - [1649] = 6, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, + sym_keyword_default, + ACTIONS(233), 1, + sym_keyword_unique, ACTIONS(235), 1, - anon_sym_COMMA, - ACTIONS(237), 1, - anon_sym_RPAREN, - STATE(70), 1, - aux_sym_column_definitions_repeat1, + sym_keyword_references, + STATE(62), 2, + sym__primary_key, + sym__not_null, STATE(66), 2, sym_line_comment, sym_block_comment, - [1669] = 6, + [1723] = 8, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(212), 1, - anon_sym_DQUOTE, - ACTIONS(214), 1, - sym__identifier, - STATE(55), 1, - sym_identifier, + ACTIONS(239), 1, + anon_sym_SQUOTE, + STATE(33), 1, + sym__literal_string, + STATE(38), 1, + sym__expression, + STATE(43), 1, + sym_literal, STATE(67), 2, sym_line_comment, sym_block_comment, - [1689] = 4, + ACTIONS(237), 4, + sym_keyword_null, + sym_keyword_true, + sym_keyword_false, + sym__number, + [1752] = 8, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, + ACTIONS(239), 1, + anon_sym_SQUOTE, + STATE(33), 1, + sym__literal_string, + STATE(37), 1, + sym__expression, + STATE(43), 1, + sym_literal, STATE(68), 2, sym_line_comment, sym_block_comment, - ACTIONS(239), 3, - ts_builtin_sym_end, - anon_sym_SEMI, - sym_keyword_create, - [1705] = 6, + ACTIONS(237), 4, + sym_keyword_null, + sym_keyword_true, + sym_keyword_false, + sym__number, + [1781] = 9, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(212), 1, - anon_sym_DQUOTE, - ACTIONS(214), 1, + ACTIONS(241), 1, sym__identifier, - STATE(106), 1, + ACTIONS(243), 1, + sym_keyword_if, + ACTIONS(245), 1, + anon_sym_DQUOTE, + STATE(82), 1, sym_identifier, + STATE(84), 1, + sym__if_not_exists, + STATE(134), 1, + sym_table_reference, STATE(69), 2, sym_line_comment, sym_block_comment, - [1725] = 6, + [1810] = 9, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(235), 1, - anon_sym_COMMA, - ACTIONS(241), 1, - anon_sym_RPAREN, - STATE(64), 1, - aux_sym_column_definitions_repeat1, + ACTIONS(247), 1, + anon_sym_LPAREN, + ACTIONS(249), 1, + sym_keyword_on, + ACTIONS(251), 1, + sym_keyword_match, + STATE(103), 1, + sym__foreign_key_match, + STATE(120), 1, + sym__foreign_key_on_delete, + STATE(121), 1, + sym__foreign_key_on_update, STATE(70), 2, sym_line_comment, sym_block_comment, - [1745] = 5, + [1839] = 9, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, + ACTIONS(241), 1, + sym__identifier, ACTIONS(243), 1, - sym_keyword_not, + sym_keyword_if, ACTIONS(245), 1, - sym_keyword_distinct, + anon_sym_DQUOTE, + STATE(80), 1, + sym__if_not_exists, + STATE(82), 1, + sym_identifier, + STATE(130), 1, + sym_table_reference, STATE(71), 2, sym_line_comment, sym_block_comment, - [1762] = 5, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(247), 1, - aux_sym__keyword_time_zone_token1, - STATE(29), 1, - sym__keyword_time_zone, - STATE(72), 2, - sym_line_comment, - sym_block_comment, - [1779] = 5, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(247), 1, - aux_sym__keyword_time_zone_token1, - STATE(28), 1, - sym__keyword_time_zone, - STATE(73), 2, - sym_line_comment, - sym_block_comment, - [1796] = 5, + [1868] = 9, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(249), 1, - anon_sym_COMMA, + sym_keyword_on, ACTIONS(251), 1, - anon_sym_RPAREN, - STATE(74), 2, - sym_line_comment, - sym_block_comment, - [1813] = 5, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, + sym_keyword_match, ACTIONS(253), 1, anon_sym_LPAREN, - STATE(88), 1, - sym_column_definitions, - STATE(75), 2, + STATE(98), 1, + sym__foreign_key_match, + STATE(107), 1, + sym__foreign_key_on_delete, + STATE(135), 1, + sym__foreign_key_on_update, + STATE(72), 2, sym_line_comment, sym_block_comment, - [1830] = 5, + [1897] = 8, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(255), 1, - sym_keyword_not, + sym_keyword_table, ACTIONS(257), 1, - sym_keyword_distinct, + aux_sym_keyword_temporary_token1, + ACTIONS(259), 1, + aux_sym_keyword_temporary_token2, + ACTIONS(261), 1, + sym_keyword_unlogged, + STATE(151), 1, + sym_keyword_temporary, + STATE(73), 2, + sym_line_comment, + sym_block_comment, + [1923] = 8, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(249), 1, + sym_keyword_on, + ACTIONS(251), 1, + sym_keyword_match, + STATE(93), 1, + sym__foreign_key_match, + STATE(116), 1, + sym__foreign_key_on_update, + STATE(117), 1, + sym__foreign_key_on_delete, + STATE(74), 2, + sym_line_comment, + sym_block_comment, + [1949] = 8, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(249), 1, + sym_keyword_on, + ACTIONS(251), 1, + sym_keyword_match, + STATE(96), 1, + sym__foreign_key_match, + STATE(125), 1, + sym__foreign_key_on_update, + STATE(127), 1, + sym__foreign_key_on_delete, + STATE(75), 2, + sym_line_comment, + sym_block_comment, + [1975] = 8, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(245), 1, + anon_sym_DQUOTE, + ACTIONS(263), 1, + sym__identifier, + ACTIONS(265), 1, + anon_sym_RPAREN, + STATE(2), 1, + sym_identifier, + STATE(86), 1, + sym_column_definition, STATE(76), 2, sym_line_comment, sym_block_comment, - [1847] = 5, + [2001] = 7, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(259), 1, - anon_sym_LPAREN, - ACTIONS(261), 1, - anon_sym_DOT, + ACTIONS(267), 1, + sym_keyword_no, + ACTIONS(269), 1, + sym_keyword_set, + STATE(19), 1, + sym_referencial_action, + ACTIONS(271), 2, + sym_keyword_restrict, + sym_keyword_cascade, STATE(77), 2, sym_line_comment, sym_block_comment, - [1864] = 4, + [2025] = 7, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(231), 2, - anon_sym_COMMA, - anon_sym_RPAREN, + ACTIONS(267), 1, + sym_keyword_no, + ACTIONS(269), 1, + sym_keyword_set, + STATE(17), 1, + sym_referencial_action, + ACTIONS(271), 2, + sym_keyword_restrict, + sym_keyword_cascade, STATE(78), 2, sym_line_comment, sym_block_comment, - [1879] = 4, + [2049] = 7, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(263), 2, + ACTIONS(245), 1, anon_sym_DQUOTE, + ACTIONS(263), 1, sym__identifier, + STATE(2), 1, + sym_identifier, + STATE(113), 1, + sym_column_definition, STATE(79), 2, sym_line_comment, sym_block_comment, - [1894] = 5, + [2072] = 7, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(253), 1, - anon_sym_LPAREN, - STATE(119), 1, - sym_column_definitions, + ACTIONS(245), 1, + anon_sym_DQUOTE, + ACTIONS(263), 1, + sym__identifier, + STATE(82), 1, + sym_identifier, + STATE(122), 1, + sym_table_reference, STATE(80), 2, sym_line_comment, sym_block_comment, - [1911] = 5, + [2095] = 7, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(253), 1, - anon_sym_LPAREN, - STATE(94), 1, - sym_column_definitions, + ACTIONS(245), 1, + anon_sym_DQUOTE, + ACTIONS(263), 1, + sym__identifier, + STATE(70), 1, + sym_table_reference, + STATE(82), 1, + sym_identifier, STATE(81), 2, sym_line_comment, sym_block_comment, - [1928] = 5, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(265), 1, - anon_sym_COMMA, - ACTIONS(267), 1, - anon_sym_RPAREN, - STATE(82), 2, - sym_line_comment, - sym_block_comment, - [1945] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(269), 1, - anon_sym_DQUOTE, - STATE(83), 2, - sym_line_comment, - sym_block_comment, - [1959] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(271), 1, - sym__number, - STATE(84), 2, - sym_line_comment, - sym_block_comment, - [1973] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(273), 1, - sym__number, - STATE(85), 2, - sym_line_comment, - sym_block_comment, - [1987] = 4, + [2118] = 5, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(275), 1, - sym__number, - STATE(86), 2, + anon_sym_DOT, + STATE(82), 2, sym_line_comment, sym_block_comment, - [2001] = 4, + ACTIONS(273), 3, + anon_sym_LPAREN, + sym_keyword_on, + sym_keyword_match, + [2137] = 7, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(245), 1, + anon_sym_DQUOTE, + ACTIONS(263), 1, + sym__identifier, + STATE(72), 1, + sym_table_reference, + STATE(82), 1, + sym_identifier, + STATE(83), 2, + sym_line_comment, + sym_block_comment, + [2160] = 7, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(245), 1, + anon_sym_DQUOTE, + ACTIONS(263), 1, + sym__identifier, + STATE(82), 1, + sym_identifier, + STATE(130), 1, + sym_table_reference, + STATE(84), 2, + sym_line_comment, + sym_block_comment, + [2183] = 6, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(277), 1, - aux_sym__keyword_time_zone_token2, - STATE(87), 2, - sym_line_comment, - sym_block_comment, - [2015] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, + anon_sym_COMMA, ACTIONS(279), 1, - anon_sym_SEMI, - STATE(88), 2, + anon_sym_RPAREN, + STATE(105), 1, + aux_sym_column_definitions_repeat1, + STATE(85), 2, sym_line_comment, sym_block_comment, - [2029] = 4, + [2203] = 6, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, + ACTIONS(277), 1, + anon_sym_COMMA, ACTIONS(281), 1, - sym_keyword_exists, - STATE(89), 2, + anon_sym_RPAREN, + STATE(85), 1, + aux_sym_column_definitions_repeat1, + STATE(86), 2, sym_line_comment, sym_block_comment, - [2043] = 4, + [2223] = 5, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(283), 1, + anon_sym_COMMA, + ACTIONS(286), 1, + anon_sym_RPAREN, + STATE(87), 3, + sym_line_comment, + sym_block_comment, + aux_sym_referencial_action_repeat1, + [2241] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + STATE(88), 2, + sym_line_comment, + sym_block_comment, + ACTIONS(288), 3, + ts_builtin_sym_end, anon_sym_SEMI, + sym_keyword_create, + [2257] = 6, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(290), 1, + anon_sym_COMMA, + ACTIONS(292), 1, + anon_sym_RPAREN, + STATE(87), 1, + aux_sym_referencial_action_repeat1, + STATE(89), 2, + sym_line_comment, + sym_block_comment, + [2277] = 6, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(245), 1, + anon_sym_DQUOTE, + ACTIONS(263), 1, + sym__identifier, + STATE(109), 1, + sym_identifier, STATE(90), 2, sym_line_comment, sym_block_comment, - [2057] = 4, - ACTIONS(285), 1, + [2297] = 4, + ACTIONS(3), 1, anon_sym_DASH_DASH, - ACTIONS(287), 1, + ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(289), 1, - aux_sym__literal_string_token1, STATE(91), 2, sym_line_comment, sym_block_comment, - [2071] = 4, + ACTIONS(294), 3, + ts_builtin_sym_end, + anon_sym_SEMI, + sym_keyword_create, + [2313] = 6, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(291), 1, - anon_sym_SEMI, + ACTIONS(290), 1, + anon_sym_COMMA, + ACTIONS(296), 1, + anon_sym_RPAREN, + STATE(89), 1, + aux_sym_referencial_action_repeat1, STATE(92), 2, sym_line_comment, sym_block_comment, - [2085] = 4, + [2333] = 6, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(293), 1, - sym_keyword_null, + ACTIONS(249), 1, + sym_keyword_on, + STATE(114), 1, + sym__foreign_key_on_update, + STATE(115), 1, + sym__foreign_key_on_delete, STATE(93), 2, sym_line_comment, sym_block_comment, - [2099] = 4, + [2353] = 6, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(295), 1, - anon_sym_SEMI, + ACTIONS(245), 1, + anon_sym_DQUOTE, + ACTIONS(263), 1, + sym__identifier, + STATE(66), 1, + sym_identifier, STATE(94), 2, sym_line_comment, sym_block_comment, - [2113] = 4, + [2373] = 6, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(297), 1, - sym__number, + ACTIONS(245), 1, + anon_sym_DQUOTE, + ACTIONS(263), 1, + sym__identifier, + STATE(92), 1, + sym_identifier, STATE(95), 2, sym_line_comment, sym_block_comment, - [2127] = 4, - ACTIONS(285), 1, + [2393] = 6, + ACTIONS(3), 1, anon_sym_DASH_DASH, - ACTIONS(287), 1, + ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(299), 1, - aux_sym_identifier_token1, + ACTIONS(249), 1, + sym_keyword_on, + STATE(123), 1, + sym__foreign_key_on_update, + STATE(124), 1, + sym__foreign_key_on_delete, STATE(96), 2, sym_line_comment, sym_block_comment, - [2141] = 4, + [2413] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(301), 1, - anon_sym_RPAREN, STATE(97), 2, sym_line_comment, sym_block_comment, - [2155] = 4, + ACTIONS(298), 3, + ts_builtin_sym_end, + anon_sym_SEMI, + sym_keyword_create, + [2429] = 6, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(303), 1, - anon_sym_RPAREN, + ACTIONS(249), 1, + sym_keyword_on, + STATE(106), 1, + sym__foreign_key_on_update, + STATE(129), 1, + sym__foreign_key_on_delete, STATE(98), 2, sym_line_comment, sym_block_comment, - [2169] = 4, + [2449] = 6, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(305), 1, - sym_keyword_not, + ACTIONS(245), 1, + anon_sym_DQUOTE, + ACTIONS(263), 1, + sym__identifier, + STATE(152), 1, + sym_identifier, STATE(99), 2, sym_line_comment, sym_block_comment, - [2183] = 4, + [2469] = 6, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(307), 1, - sym__number, + ACTIONS(245), 1, + anon_sym_DQUOTE, + ACTIONS(263), 1, + sym__identifier, + STATE(156), 1, + sym_identifier, STATE(100), 2, sym_line_comment, sym_block_comment, - [2197] = 4, - ACTIONS(285), 1, + [2489] = 6, + ACTIONS(3), 1, anon_sym_DASH_DASH, - ACTIONS(287), 1, + ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(309), 1, - aux_sym_block_comment_token1, + ACTIONS(245), 1, + anon_sym_DQUOTE, + ACTIONS(263), 1, + sym__identifier, + STATE(104), 1, + sym_identifier, STATE(101), 2, sym_line_comment, sym_block_comment, - [2211] = 4, + [2509] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + STATE(102), 2, + sym_line_comment, + sym_block_comment, + ACTIONS(300), 3, + sym_keyword_full, + sym_keyword_partial, + sym_keyword_simple, + [2525] = 6, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(249), 1, + sym_keyword_on, + STATE(132), 1, + sym__foreign_key_on_delete, + STATE(133), 1, + sym__foreign_key_on_update, + STATE(103), 2, + sym_line_comment, + sym_block_comment, + [2545] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + STATE(104), 2, + sym_line_comment, + sym_block_comment, + ACTIONS(302), 3, + anon_sym_LPAREN, + sym_keyword_on, + sym_keyword_match, + [2561] = 5, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(304), 1, + anon_sym_COMMA, + ACTIONS(307), 1, + anon_sym_RPAREN, + STATE(105), 3, + sym_line_comment, + sym_block_comment, + aux_sym_column_definitions_repeat1, + [2579] = 5, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(309), 1, + sym_keyword_on, + STATE(59), 1, + sym__foreign_key_on_delete, + STATE(106), 2, + sym_line_comment, + sym_block_comment, + [2596] = 5, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(311), 1, - aux_sym_keyword_primary_key_token2, - STATE(102), 2, + sym_keyword_on, + STATE(53), 1, + sym__foreign_key_on_update, + STATE(107), 2, sym_line_comment, sym_block_comment, - [2225] = 4, + [2613] = 5, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(313), 1, - sym__number, - STATE(103), 2, + aux_sym__keyword_time_zone_token1, + STATE(31), 1, + sym__keyword_time_zone, + STATE(108), 2, sym_line_comment, sym_block_comment, - [2239] = 4, + [2630] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(286), 2, + anon_sym_COMMA, + anon_sym_RPAREN, + STATE(109), 2, + sym_line_comment, + sym_block_comment, + [2645] = 5, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(313), 1, + aux_sym__keyword_time_zone_token1, + STATE(63), 1, + sym__keyword_time_zone, + STATE(110), 2, + sym_line_comment, + sym_block_comment, + [2662] = 5, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(315), 1, - sym_keyword_table, - STATE(104), 2, - sym_line_comment, - sym_block_comment, - [2253] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, + anon_sym_COMMA, ACTIONS(317), 1, - sym_keyword_table, - STATE(105), 2, + anon_sym_RPAREN, + STATE(111), 2, sym_line_comment, sym_block_comment, - [2267] = 4, + [2679] = 5, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(319), 1, - anon_sym_LPAREN, - STATE(106), 2, + anon_sym_COMMA, + ACTIONS(321), 1, + anon_sym_RPAREN, + STATE(112), 2, sym_line_comment, sym_block_comment, - [2281] = 4, + [2696] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(321), 1, - anon_sym_SQUOTE, - STATE(107), 2, + ACTIONS(307), 2, + anon_sym_COMMA, + anon_sym_RPAREN, + STATE(113), 2, sym_line_comment, sym_block_comment, - [2295] = 4, + [2711] = 5, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(309), 1, + sym_keyword_on, + STATE(44), 1, + sym__foreign_key_on_delete, + STATE(114), 2, + sym_line_comment, + sym_block_comment, + [2728] = 5, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(311), 1, + sym_keyword_on, + STATE(44), 1, + sym__foreign_key_on_update, + STATE(115), 2, + sym_line_comment, + sym_block_comment, + [2745] = 5, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(309), 1, + sym_keyword_on, + STATE(35), 1, + sym__foreign_key_on_delete, + STATE(116), 2, + sym_line_comment, + sym_block_comment, + [2762] = 5, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(311), 1, + sym_keyword_on, + STATE(35), 1, + sym__foreign_key_on_update, + STATE(117), 2, + sym_line_comment, + sym_block_comment, + [2779] = 5, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(323), 1, - sym_keyword_distinct, - STATE(108), 2, - sym_line_comment, - sym_block_comment, - [2309] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, + sym_keyword_not, ACTIONS(325), 1, - anon_sym_SLASH, - STATE(109), 2, + sym_keyword_distinct, + STATE(118), 2, sym_line_comment, sym_block_comment, - [2323] = 4, + [2796] = 5, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(327), 1, - aux_sym_double_token2, - STATE(110), 2, + sym_keyword_delete, + ACTIONS(329), 1, + sym_keyword_update, + STATE(119), 2, sym_line_comment, sym_block_comment, - [2337] = 4, + [2813] = 5, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(329), 1, - anon_sym_SEMI, - STATE(111), 2, + ACTIONS(311), 1, + sym_keyword_on, + STATE(34), 1, + sym__foreign_key_on_update, + STATE(120), 2, sym_line_comment, sym_block_comment, - [2351] = 4, + [2830] = 5, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(309), 1, + sym_keyword_on, + STATE(34), 1, + sym__foreign_key_on_delete, + STATE(121), 2, + sym_line_comment, + sym_block_comment, + [2847] = 5, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(331), 1, - anon_sym_RPAREN, - STATE(112), 2, + anon_sym_LPAREN, + STATE(176), 1, + sym_column_definitions, + STATE(122), 2, sym_line_comment, sym_block_comment, - [2365] = 4, + [2864] = 5, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(309), 1, + sym_keyword_on, + STATE(54), 1, + sym__foreign_key_on_delete, + STATE(123), 2, + sym_line_comment, + sym_block_comment, + [2881] = 5, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(311), 1, + sym_keyword_on, + STATE(54), 1, + sym__foreign_key_on_update, + STATE(124), 2, + sym_line_comment, + sym_block_comment, + [2898] = 5, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(309), 1, + sym_keyword_on, + STATE(60), 1, + sym__foreign_key_on_delete, + STATE(125), 2, + sym_line_comment, + sym_block_comment, + [2915] = 5, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(333), 1, - anon_sym_RPAREN, - STATE(113), 2, - sym_line_comment, - sym_block_comment, - [2379] = 4, - ACTIONS(3), 1, - anon_sym_DASH_DASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, + sym_keyword_not, ACTIONS(335), 1, - anon_sym_SEMI, - STATE(114), 2, + sym_keyword_distinct, + STATE(126), 2, sym_line_comment, sym_block_comment, - [2393] = 4, - ACTIONS(285), 1, - anon_sym_DASH_DASH, - ACTIONS(287), 1, - anon_sym_SLASH_STAR, - ACTIONS(337), 1, - aux_sym_line_comment_token1, - STATE(115), 2, - sym_line_comment, - sym_block_comment, - [2407] = 4, + [2932] = 5, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(339), 1, - anon_sym_SEMI, - STATE(116), 2, + ACTIONS(311), 1, + sym_keyword_on, + STATE(60), 1, + sym__foreign_key_on_update, + STATE(127), 2, sym_line_comment, sym_block_comment, - [2421] = 4, + [2949] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(337), 2, + anon_sym_DQUOTE, + sym__identifier, + STATE(128), 2, + sym_line_comment, + sym_block_comment, + [2964] = 5, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(311), 1, + sym_keyword_on, + STATE(59), 1, + sym__foreign_key_on_update, + STATE(129), 2, + sym_line_comment, + sym_block_comment, + [2981] = 5, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(331), 1, + anon_sym_LPAREN, + STATE(162), 1, + sym_column_definitions, + STATE(130), 2, + sym_line_comment, + sym_block_comment, + [2998] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(339), 2, + sym_keyword_null, + sym_keyword_default, + STATE(131), 2, + sym_line_comment, + sym_block_comment, + [3013] = 5, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(311), 1, + sym_keyword_on, + STATE(52), 1, + sym__foreign_key_on_update, + STATE(132), 2, + sym_line_comment, + sym_block_comment, + [3030] = 5, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(309), 1, + sym_keyword_on, + STATE(52), 1, + sym__foreign_key_on_delete, + STATE(133), 2, + sym_line_comment, + sym_block_comment, + [3047] = 5, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(331), 1, + anon_sym_LPAREN, + STATE(138), 1, + sym_column_definitions, + STATE(134), 2, + sym_line_comment, + sym_block_comment, + [3064] = 5, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(309), 1, + sym_keyword_on, + STATE(53), 1, + sym__foreign_key_on_delete, + STATE(135), 2, + sym_line_comment, + sym_block_comment, + [3081] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(341), 1, - anon_sym_SEMI, - STATE(117), 2, + anon_sym_RPAREN, + STATE(136), 2, sym_line_comment, sym_block_comment, - [2435] = 4, + [3095] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(343), 1, - ts_builtin_sym_end, - STATE(118), 2, + anon_sym_SLASH, + STATE(137), 2, sym_line_comment, sym_block_comment, - [2449] = 4, + [3109] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(345), 1, anon_sym_SEMI, - STATE(119), 2, + STATE(138), 2, sym_line_comment, sym_block_comment, - [2463] = 4, + [3123] = 4, ACTIONS(3), 1, anon_sym_DASH_DASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(347), 1, - sym_keyword_distinct, - STATE(120), 2, + anon_sym_DQUOTE, + STATE(139), 2, sym_line_comment, sym_block_comment, - [2477] = 1, + [3137] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, ACTIONS(349), 1, - ts_builtin_sym_end, - [2481] = 1, + sym_keyword_distinct, + STATE(140), 2, + sym_line_comment, + sym_block_comment, + [3151] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, ACTIONS(351), 1, + sym_keyword_exists, + STATE(141), 2, + sym_line_comment, + sym_block_comment, + [3165] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(353), 1, + sym__number, + STATE(142), 2, + sym_line_comment, + sym_block_comment, + [3179] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(355), 1, + anon_sym_RPAREN, + STATE(143), 2, + sym_line_comment, + sym_block_comment, + [3193] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(357), 1, + sym__number, + STATE(144), 2, + sym_line_comment, + sym_block_comment, + [3207] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(359), 1, + sym_keyword_action, + STATE(145), 2, + sym_line_comment, + sym_block_comment, + [3221] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(329), 1, + sym_keyword_update, + STATE(146), 2, + sym_line_comment, + sym_block_comment, + [3235] = 4, + ACTIONS(361), 1, + anon_sym_DASH_DASH, + ACTIONS(363), 1, + anon_sym_SLASH_STAR, + ACTIONS(365), 1, + aux_sym_identifier_token1, + STATE(147), 2, + sym_line_comment, + sym_block_comment, + [3249] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(367), 1, + sym_keyword_not, + STATE(148), 2, + sym_line_comment, + sym_block_comment, + [3263] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(369), 1, + aux_sym__keyword_time_zone_token2, + STATE(149), 2, + sym_line_comment, + sym_block_comment, + [3277] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(371), 1, + sym__number, + STATE(150), 2, + sym_line_comment, + sym_block_comment, + [3291] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(373), 1, + sym_keyword_table, + STATE(151), 2, + sym_line_comment, + sym_block_comment, + [3305] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(375), 1, + anon_sym_RPAREN, + STATE(152), 2, + sym_line_comment, + sym_block_comment, + [3319] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(377), 1, + sym_keyword_on, + STATE(153), 2, + sym_line_comment, + sym_block_comment, + [3333] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(379), 1, + sym__number, + STATE(154), 2, + sym_line_comment, + sym_block_comment, + [3347] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(381), 1, + sym__number, + STATE(155), 2, + sym_line_comment, + sym_block_comment, + [3361] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(383), 1, + anon_sym_RPAREN, + STATE(156), 2, + sym_line_comment, + sym_block_comment, + [3375] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(385), 1, + anon_sym_SEMI, + STATE(157), 2, + sym_line_comment, + sym_block_comment, + [3389] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(387), 1, + sym_keyword_table, + STATE(158), 2, + sym_line_comment, + sym_block_comment, + [3403] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(327), 1, + sym_keyword_delete, + STATE(159), 2, + sym_line_comment, + sym_block_comment, + [3417] = 4, + ACTIONS(361), 1, + anon_sym_DASH_DASH, + ACTIONS(363), 1, + anon_sym_SLASH_STAR, + ACTIONS(389), 1, + aux_sym_block_comment_token1, + STATE(160), 2, + sym_line_comment, + sym_block_comment, + [3431] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(391), 1, + anon_sym_SEMI, + STATE(161), 2, + sym_line_comment, + sym_block_comment, + [3445] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(393), 1, + anon_sym_SEMI, + STATE(162), 2, + sym_line_comment, + sym_block_comment, + [3459] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(395), 1, + anon_sym_RPAREN, + STATE(163), 2, + sym_line_comment, + sym_block_comment, + [3473] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(397), 1, + anon_sym_SEMI, + STATE(164), 2, + sym_line_comment, + sym_block_comment, + [3487] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(399), 1, + sym_keyword_null, + STATE(165), 2, + sym_line_comment, + sym_block_comment, + [3501] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(401), 1, + anon_sym_RPAREN, + STATE(166), 2, + sym_line_comment, + sym_block_comment, + [3515] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(403), 1, + anon_sym_SEMI, + STATE(167), 2, + sym_line_comment, + sym_block_comment, + [3529] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(405), 1, + sym_keyword_distinct, + STATE(168), 2, + sym_line_comment, + sym_block_comment, + [3543] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(407), 1, + anon_sym_SEMI, + STATE(169), 2, + sym_line_comment, + sym_block_comment, + [3557] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(409), 1, + sym_keyword_key, + STATE(170), 2, + sym_line_comment, + sym_block_comment, + [3571] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(411), 1, + anon_sym_SQUOTE, + STATE(171), 2, + sym_line_comment, + sym_block_comment, + [3585] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(413), 1, + aux_sym_double_token2, + STATE(172), 2, + sym_line_comment, + sym_block_comment, + [3599] = 4, + ACTIONS(361), 1, + anon_sym_DASH_DASH, + ACTIONS(363), 1, + anon_sym_SLASH_STAR, + ACTIONS(415), 1, + aux_sym__literal_string_token1, + STATE(173), 2, + sym_line_comment, + sym_block_comment, + [3613] = 4, + ACTIONS(361), 1, + anon_sym_DASH_DASH, + ACTIONS(363), 1, + anon_sym_SLASH_STAR, + ACTIONS(417), 1, + aux_sym_line_comment_token1, + STATE(174), 2, + sym_line_comment, + sym_block_comment, + [3627] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(419), 1, + ts_builtin_sym_end, + STATE(175), 2, + sym_line_comment, + sym_block_comment, + [3641] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(421), 1, + anon_sym_SEMI, + STATE(176), 2, + sym_line_comment, + sym_block_comment, + [3655] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(423), 1, + anon_sym_SEMI, + STATE(177), 2, + sym_line_comment, + sym_block_comment, + [3669] = 4, + ACTIONS(3), 1, + anon_sym_DASH_DASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(425), 1, + sym__number, + STATE(178), 2, + sym_line_comment, + sym_block_comment, + [3683] = 1, + ACTIONS(427), 1, + ts_builtin_sym_end, + [3687] = 1, + ACTIONS(429), 1, ts_builtin_sym_end, }; static const uint32_t ts_small_parse_table_map[] = { [SMALL_STATE(2)] = 0, [SMALL_STATE(3)] = 95, - [SMALL_STATE(4)] = 141, - [SMALL_STATE(5)] = 187, - [SMALL_STATE(6)] = 218, - [SMALL_STATE(7)] = 261, - [SMALL_STATE(8)] = 294, - [SMALL_STATE(9)] = 337, - [SMALL_STATE(10)] = 378, - [SMALL_STATE(11)] = 400, - [SMALL_STATE(12)] = 422, - [SMALL_STATE(13)] = 444, - [SMALL_STATE(14)] = 468, - [SMALL_STATE(15)] = 492, - [SMALL_STATE(16)] = 516, - [SMALL_STATE(17)] = 540, - [SMALL_STATE(18)] = 566, - [SMALL_STATE(19)] = 592, - [SMALL_STATE(20)] = 613, - [SMALL_STATE(21)] = 634, - [SMALL_STATE(22)] = 667, - [SMALL_STATE(23)] = 688, - [SMALL_STATE(24)] = 709, - [SMALL_STATE(25)] = 730, - [SMALL_STATE(26)] = 751, - [SMALL_STATE(27)] = 772, - [SMALL_STATE(28)] = 793, - [SMALL_STATE(29)] = 814, - [SMALL_STATE(30)] = 835, - [SMALL_STATE(31)] = 856, - [SMALL_STATE(32)] = 877, - [SMALL_STATE(33)] = 898, - [SMALL_STATE(34)] = 927, - [SMALL_STATE(35)] = 948, - [SMALL_STATE(36)] = 969, - [SMALL_STATE(37)] = 990, - [SMALL_STATE(38)] = 1011, - [SMALL_STATE(39)] = 1040, - [SMALL_STATE(40)] = 1061, - [SMALL_STATE(41)] = 1082, - [SMALL_STATE(42)] = 1103, - [SMALL_STATE(43)] = 1124, - [SMALL_STATE(44)] = 1159, - [SMALL_STATE(45)] = 1180, - [SMALL_STATE(46)] = 1201, - [SMALL_STATE(47)] = 1222, - [SMALL_STATE(48)] = 1243, - [SMALL_STATE(49)] = 1264, - [SMALL_STATE(50)] = 1285, - [SMALL_STATE(51)] = 1306, - [SMALL_STATE(52)] = 1327, - [SMALL_STATE(53)] = 1348, - [SMALL_STATE(54)] = 1369, - [SMALL_STATE(55)] = 1390, - [SMALL_STATE(56)] = 1420, - [SMALL_STATE(57)] = 1449, - [SMALL_STATE(58)] = 1478, - [SMALL_STATE(59)] = 1504, - [SMALL_STATE(60)] = 1530, - [SMALL_STATE(61)] = 1553, - [SMALL_STATE(62)] = 1576, - [SMALL_STATE(63)] = 1599, - [SMALL_STATE(64)] = 1615, - [SMALL_STATE(65)] = 1633, - [SMALL_STATE(66)] = 1649, - [SMALL_STATE(67)] = 1669, - [SMALL_STATE(68)] = 1689, - [SMALL_STATE(69)] = 1705, - [SMALL_STATE(70)] = 1725, - [SMALL_STATE(71)] = 1745, - [SMALL_STATE(72)] = 1762, - [SMALL_STATE(73)] = 1779, - [SMALL_STATE(74)] = 1796, - [SMALL_STATE(75)] = 1813, - [SMALL_STATE(76)] = 1830, - [SMALL_STATE(77)] = 1847, - [SMALL_STATE(78)] = 1864, - [SMALL_STATE(79)] = 1879, - [SMALL_STATE(80)] = 1894, - [SMALL_STATE(81)] = 1911, - [SMALL_STATE(82)] = 1928, - [SMALL_STATE(83)] = 1945, - [SMALL_STATE(84)] = 1959, - [SMALL_STATE(85)] = 1973, - [SMALL_STATE(86)] = 1987, - [SMALL_STATE(87)] = 2001, - [SMALL_STATE(88)] = 2015, - [SMALL_STATE(89)] = 2029, - [SMALL_STATE(90)] = 2043, - [SMALL_STATE(91)] = 2057, - [SMALL_STATE(92)] = 2071, - [SMALL_STATE(93)] = 2085, - [SMALL_STATE(94)] = 2099, - [SMALL_STATE(95)] = 2113, - [SMALL_STATE(96)] = 2127, - [SMALL_STATE(97)] = 2141, - [SMALL_STATE(98)] = 2155, - [SMALL_STATE(99)] = 2169, - [SMALL_STATE(100)] = 2183, - [SMALL_STATE(101)] = 2197, - [SMALL_STATE(102)] = 2211, - [SMALL_STATE(103)] = 2225, - [SMALL_STATE(104)] = 2239, - [SMALL_STATE(105)] = 2253, - [SMALL_STATE(106)] = 2267, - [SMALL_STATE(107)] = 2281, - [SMALL_STATE(108)] = 2295, - [SMALL_STATE(109)] = 2309, - [SMALL_STATE(110)] = 2323, - [SMALL_STATE(111)] = 2337, - [SMALL_STATE(112)] = 2351, - [SMALL_STATE(113)] = 2365, - [SMALL_STATE(114)] = 2379, - [SMALL_STATE(115)] = 2393, - [SMALL_STATE(116)] = 2407, - [SMALL_STATE(117)] = 2421, - [SMALL_STATE(118)] = 2435, - [SMALL_STATE(119)] = 2449, - [SMALL_STATE(120)] = 2463, - [SMALL_STATE(121)] = 2477, - [SMALL_STATE(122)] = 2481, + [SMALL_STATE(4)] = 146, + [SMALL_STATE(5)] = 197, + [SMALL_STATE(6)] = 231, + [SMALL_STATE(7)] = 277, + [SMALL_STATE(8)] = 321, + [SMALL_STATE(9)] = 353, + [SMALL_STATE(10)] = 399, + [SMALL_STATE(11)] = 425, + [SMALL_STATE(12)] = 450, + [SMALL_STATE(13)] = 473, + [SMALL_STATE(14)] = 496, + [SMALL_STATE(15)] = 519, + [SMALL_STATE(16)] = 542, + [SMALL_STATE(17)] = 567, + [SMALL_STATE(18)] = 590, + [SMALL_STATE(19)] = 615, + [SMALL_STATE(20)] = 638, + [SMALL_STATE(21)] = 661, + [SMALL_STATE(22)] = 684, + [SMALL_STATE(23)] = 709, + [SMALL_STATE(24)] = 736, + [SMALL_STATE(25)] = 763, + [SMALL_STATE(26)] = 786, + [SMALL_STATE(27)] = 808, + [SMALL_STATE(28)] = 830, + [SMALL_STATE(29)] = 852, + [SMALL_STATE(30)] = 874, + [SMALL_STATE(31)] = 896, + [SMALL_STATE(32)] = 918, + [SMALL_STATE(33)] = 940, + [SMALL_STATE(34)] = 962, + [SMALL_STATE(35)] = 984, + [SMALL_STATE(36)] = 1006, + [SMALL_STATE(37)] = 1028, + [SMALL_STATE(38)] = 1050, + [SMALL_STATE(39)] = 1072, + [SMALL_STATE(40)] = 1094, + [SMALL_STATE(41)] = 1116, + [SMALL_STATE(42)] = 1138, + [SMALL_STATE(43)] = 1160, + [SMALL_STATE(44)] = 1182, + [SMALL_STATE(45)] = 1204, + [SMALL_STATE(46)] = 1226, + [SMALL_STATE(47)] = 1248, + [SMALL_STATE(48)] = 1270, + [SMALL_STATE(49)] = 1292, + [SMALL_STATE(50)] = 1314, + [SMALL_STATE(51)] = 1336, + [SMALL_STATE(52)] = 1358, + [SMALL_STATE(53)] = 1380, + [SMALL_STATE(54)] = 1402, + [SMALL_STATE(55)] = 1424, + [SMALL_STATE(56)] = 1446, + [SMALL_STATE(57)] = 1468, + [SMALL_STATE(58)] = 1490, + [SMALL_STATE(59)] = 1512, + [SMALL_STATE(60)] = 1534, + [SMALL_STATE(61)] = 1556, + [SMALL_STATE(62)] = 1578, + [SMALL_STATE(63)] = 1600, + [SMALL_STATE(64)] = 1622, + [SMALL_STATE(65)] = 1657, + [SMALL_STATE(66)] = 1690, + [SMALL_STATE(67)] = 1723, + [SMALL_STATE(68)] = 1752, + [SMALL_STATE(69)] = 1781, + [SMALL_STATE(70)] = 1810, + [SMALL_STATE(71)] = 1839, + [SMALL_STATE(72)] = 1868, + [SMALL_STATE(73)] = 1897, + [SMALL_STATE(74)] = 1923, + [SMALL_STATE(75)] = 1949, + [SMALL_STATE(76)] = 1975, + [SMALL_STATE(77)] = 2001, + [SMALL_STATE(78)] = 2025, + [SMALL_STATE(79)] = 2049, + [SMALL_STATE(80)] = 2072, + [SMALL_STATE(81)] = 2095, + [SMALL_STATE(82)] = 2118, + [SMALL_STATE(83)] = 2137, + [SMALL_STATE(84)] = 2160, + [SMALL_STATE(85)] = 2183, + [SMALL_STATE(86)] = 2203, + [SMALL_STATE(87)] = 2223, + [SMALL_STATE(88)] = 2241, + [SMALL_STATE(89)] = 2257, + [SMALL_STATE(90)] = 2277, + [SMALL_STATE(91)] = 2297, + [SMALL_STATE(92)] = 2313, + [SMALL_STATE(93)] = 2333, + [SMALL_STATE(94)] = 2353, + [SMALL_STATE(95)] = 2373, + [SMALL_STATE(96)] = 2393, + [SMALL_STATE(97)] = 2413, + [SMALL_STATE(98)] = 2429, + [SMALL_STATE(99)] = 2449, + [SMALL_STATE(100)] = 2469, + [SMALL_STATE(101)] = 2489, + [SMALL_STATE(102)] = 2509, + [SMALL_STATE(103)] = 2525, + [SMALL_STATE(104)] = 2545, + [SMALL_STATE(105)] = 2561, + [SMALL_STATE(106)] = 2579, + [SMALL_STATE(107)] = 2596, + [SMALL_STATE(108)] = 2613, + [SMALL_STATE(109)] = 2630, + [SMALL_STATE(110)] = 2645, + [SMALL_STATE(111)] = 2662, + [SMALL_STATE(112)] = 2679, + [SMALL_STATE(113)] = 2696, + [SMALL_STATE(114)] = 2711, + [SMALL_STATE(115)] = 2728, + [SMALL_STATE(116)] = 2745, + [SMALL_STATE(117)] = 2762, + [SMALL_STATE(118)] = 2779, + [SMALL_STATE(119)] = 2796, + [SMALL_STATE(120)] = 2813, + [SMALL_STATE(121)] = 2830, + [SMALL_STATE(122)] = 2847, + [SMALL_STATE(123)] = 2864, + [SMALL_STATE(124)] = 2881, + [SMALL_STATE(125)] = 2898, + [SMALL_STATE(126)] = 2915, + [SMALL_STATE(127)] = 2932, + [SMALL_STATE(128)] = 2949, + [SMALL_STATE(129)] = 2964, + [SMALL_STATE(130)] = 2981, + [SMALL_STATE(131)] = 2998, + [SMALL_STATE(132)] = 3013, + [SMALL_STATE(133)] = 3030, + [SMALL_STATE(134)] = 3047, + [SMALL_STATE(135)] = 3064, + [SMALL_STATE(136)] = 3081, + [SMALL_STATE(137)] = 3095, + [SMALL_STATE(138)] = 3109, + [SMALL_STATE(139)] = 3123, + [SMALL_STATE(140)] = 3137, + [SMALL_STATE(141)] = 3151, + [SMALL_STATE(142)] = 3165, + [SMALL_STATE(143)] = 3179, + [SMALL_STATE(144)] = 3193, + [SMALL_STATE(145)] = 3207, + [SMALL_STATE(146)] = 3221, + [SMALL_STATE(147)] = 3235, + [SMALL_STATE(148)] = 3249, + [SMALL_STATE(149)] = 3263, + [SMALL_STATE(150)] = 3277, + [SMALL_STATE(151)] = 3291, + [SMALL_STATE(152)] = 3305, + [SMALL_STATE(153)] = 3319, + [SMALL_STATE(154)] = 3333, + [SMALL_STATE(155)] = 3347, + [SMALL_STATE(156)] = 3361, + [SMALL_STATE(157)] = 3375, + [SMALL_STATE(158)] = 3389, + [SMALL_STATE(159)] = 3403, + [SMALL_STATE(160)] = 3417, + [SMALL_STATE(161)] = 3431, + [SMALL_STATE(162)] = 3445, + [SMALL_STATE(163)] = 3459, + [SMALL_STATE(164)] = 3473, + [SMALL_STATE(165)] = 3487, + [SMALL_STATE(166)] = 3501, + [SMALL_STATE(167)] = 3515, + [SMALL_STATE(168)] = 3529, + [SMALL_STATE(169)] = 3543, + [SMALL_STATE(170)] = 3557, + [SMALL_STATE(171)] = 3571, + [SMALL_STATE(172)] = 3585, + [SMALL_STATE(173)] = 3599, + [SMALL_STATE(174)] = 3613, + [SMALL_STATE(175)] = 3627, + [SMALL_STATE(176)] = 3641, + [SMALL_STATE(177)] = 3655, + [SMALL_STATE(178)] = 3669, + [SMALL_STATE(179)] = 3683, + [SMALL_STATE(180)] = 3687, }; 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(115), - [5] = {.entry = {.count = 1, .reusable = true}}, SHIFT(101), + [3] = {.entry = {.count = 1, .reusable = true}}, SHIFT(174), + [5] = {.entry = {.count = 1, .reusable = true}}, SHIFT(160), [7] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 0), - [9] = {.entry = {.count = 1, .reusable = true}}, SHIFT(65), - [11] = {.entry = {.count = 1, .reusable = true}}, SHIFT(59), - [13] = {.entry = {.count = 1, .reusable = true}}, SHIFT(110), - [15] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5), + [9] = {.entry = {.count = 1, .reusable = true}}, SHIFT(88), + [11] = {.entry = {.count = 1, .reusable = true}}, SHIFT(73), + [13] = {.entry = {.count = 1, .reusable = true}}, SHIFT(172), + [15] = {.entry = {.count = 1, .reusable = false}}, SHIFT(8), [17] = {.entry = {.count = 1, .reusable = true}}, SHIFT(47), [19] = {.entry = {.count = 1, .reusable = true}}, SHIFT(48), - [21] = {.entry = {.count = 1, .reusable = true}}, SHIFT(14), - [23] = {.entry = {.count = 1, .reusable = true}}, SHIFT(13), + [21] = {.entry = {.count = 1, .reusable = true}}, SHIFT(18), + [23] = {.entry = {.count = 1, .reusable = true}}, SHIFT(16), [25] = {.entry = {.count = 1, .reusable = true}}, SHIFT(51), - [27] = {.entry = {.count = 1, .reusable = true}}, SHIFT(12), - [29] = {.entry = {.count = 1, .reusable = false}}, SHIFT(11), - [31] = {.entry = {.count = 1, .reusable = true}}, SHIFT(10), - [33] = {.entry = {.count = 1, .reusable = false}}, SHIFT(26), - [35] = {.entry = {.count = 1, .reusable = true}}, SHIFT(26), - [37] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7), - [39] = {.entry = {.count = 1, .reusable = true}}, SHIFT(42), - [41] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_identifier, 1), - [43] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_identifier, 1), - [45] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_identifier, 3), - [47] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_identifier, 3), - [49] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_time, 1), - [51] = {.entry = {.count = 1, .reusable = true}}, SHIFT(72), - [53] = {.entry = {.count = 1, .reusable = false}}, SHIFT(73), - [55] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_definition, 2, .production_id = 3), - [57] = {.entry = {.count = 1, .reusable = true}}, SHIFT(93), - [59] = {.entry = {.count = 1, .reusable = true}}, SHIFT(34), - [61] = {.entry = {.count = 1, .reusable = true}}, SHIFT(67), - [63] = {.entry = {.count = 1, .reusable = true}}, SHIFT(33), - [65] = {.entry = {.count = 1, .reusable = true}}, SHIFT(18), - [67] = {.entry = {.count = 1, .reusable = true}}, SHIFT(102), - [69] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_timestamp, 1), - [71] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_definition, 3, .production_id = 3), - [73] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_column_definition_repeat1, 2), - [75] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_column_definition_repeat1, 2), SHIFT_REPEAT(93), - [78] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_column_definition_repeat1, 2), SHIFT_REPEAT(34), - [81] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_column_definition_repeat1, 2), SHIFT_REPEAT(67), - [84] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_column_definition_repeat1, 2), SHIFT_REPEAT(33), - [87] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_column_definition_repeat1, 2), SHIFT_REPEAT(18), - [90] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_column_definition_repeat1, 2), SHIFT_REPEAT(102), - [93] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_varchar, 1), - [95] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_char, 1), - [97] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_keyword_char, 1), REDUCE(sym_keyword_varchar, 1), - [100] = {.entry = {.count = 1, .reusable = true}}, SHIFT(95), - [102] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_numeric, 1), - [104] = {.entry = {.count = 1, .reusable = true}}, SHIFT(103), - [106] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_decimal, 1), - [108] = {.entry = {.count = 1, .reusable = true}}, SHIFT(86), - [110] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_varchar, 1), - [112] = {.entry = {.count = 1, .reusable = true}}, SHIFT(85), - [114] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_char, 1), - [116] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 3, .production_id = 5), - [118] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_column_constraint, 3, .production_id = 5), - [120] = {.entry = {.count = 1, .reusable = true}}, SHIFT(71), - [122] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 1), - [124] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_column_constraint, 1), - [126] = {.entry = {.count = 1, .reusable = true}}, SHIFT(76), - [128] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_literal, 1), - [130] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_timestamptz, 2), - [132] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2), - [134] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(65), - [137] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(59), - [140] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__keyword_time_zone, 2), - [142] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_primary_key, 2), - [144] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__expression, 1), - [146] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 2), - [148] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__type_datetime, 1), - [150] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__not_null, 2), - [152] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__with_time_zone, 2), - [154] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__without_time_zone, 2), - [156] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 6, .production_id = 5), - [158] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_column_definition_repeat1, 1), - [160] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_numeric, 4, .production_id = 4), - [162] = {.entry = {.count = 1, .reusable = true}}, SHIFT(19), - [164] = {.entry = {.count = 1, .reusable = true}}, SHIFT(91), - [166] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_decimal, 4, .production_id = 4), - [168] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_timestamp, 2), - [170] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_time, 2), - [172] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_double, 2), - [174] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 3), - [176] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_timestamptz, 1), - [178] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 1), - [180] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_char, 4, .production_id = 6), - [182] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_varchar, 4, .production_id = 6), - [184] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 4, .production_id = 5), - [186] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__type, 1), - [188] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__type_numeric, 1), - [190] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__literal_string, 3), - [192] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 4), - [194] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__type_character, 1), - [196] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_decimal, 6, .production_id = 7), - [198] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_numeric, 6, .production_id = 7), - [200] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 5, .production_id = 5), - [202] = {.entry = {.count = 1, .reusable = true}}, SHIFT(35), - [204] = {.entry = {.count = 1, .reusable = true}}, SHIFT(38), - [206] = {.entry = {.count = 1, .reusable = true}}, SHIFT(17), - [208] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3), - [210] = {.entry = {.count = 1, .reusable = false}}, SHIFT(99), - [212] = {.entry = {.count = 1, .reusable = true}}, SHIFT(96), - [214] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3), - [216] = {.entry = {.count = 1, .reusable = true}}, SHIFT(92), - [218] = {.entry = {.count = 1, .reusable = true}}, SHIFT(56), - [220] = {.entry = {.count = 1, .reusable = true}}, SHIFT(105), - [222] = {.entry = {.count = 1, .reusable = false}}, SHIFT(105), - [224] = {.entry = {.count = 1, .reusable = true}}, SHIFT(104), - [226] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_statement, 2), - [228] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_column_definitions_repeat1, 2), SHIFT_REPEAT(60), - [231] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_column_definitions_repeat1, 2), - [233] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_statement, 1), - [235] = {.entry = {.count = 1, .reusable = true}}, SHIFT(60), - [237] = {.entry = {.count = 1, .reusable = true}}, SHIFT(90), - [239] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 1), - [241] = {.entry = {.count = 1, .reusable = true}}, SHIFT(117), - [243] = {.entry = {.count = 1, .reusable = true}}, SHIFT(120), - [245] = {.entry = {.count = 1, .reusable = true}}, SHIFT(54), - [247] = {.entry = {.count = 1, .reusable = true}}, SHIFT(87), - [249] = {.entry = {.count = 1, .reusable = true}}, SHIFT(84), - [251] = {.entry = {.count = 1, .reusable = true}}, SHIFT(32), - [253] = {.entry = {.count = 1, .reusable = true}}, SHIFT(58), - [255] = {.entry = {.count = 1, .reusable = true}}, SHIFT(108), - [257] = {.entry = {.count = 1, .reusable = true}}, SHIFT(41), - [259] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_table_reference, 1, .production_id = 1), - [261] = {.entry = {.count = 1, .reusable = true}}, SHIFT(69), - [263] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__if_not_exists, 3), - [265] = {.entry = {.count = 1, .reusable = true}}, SHIFT(100), - [267] = {.entry = {.count = 1, .reusable = true}}, SHIFT(36), - [269] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4), - [271] = {.entry = {.count = 1, .reusable = true}}, SHIFT(113), - [273] = {.entry = {.count = 1, .reusable = true}}, SHIFT(97), - [275] = {.entry = {.count = 1, .reusable = true}}, SHIFT(98), - [277] = {.entry = {.count = 1, .reusable = true}}, SHIFT(22), - [279] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_create_table, 4), - [281] = {.entry = {.count = 1, .reusable = true}}, SHIFT(79), - [283] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_definitions, 3), - [285] = {.entry = {.count = 1, .reusable = false}}, SHIFT(115), - [287] = {.entry = {.count = 1, .reusable = false}}, SHIFT(101), - [289] = {.entry = {.count = 1, .reusable = false}}, SHIFT(107), - [291] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_definitions, 2), - [293] = {.entry = {.count = 1, .reusable = true}}, SHIFT(27), - [295] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_create_table, 5), - [297] = {.entry = {.count = 1, .reusable = true}}, SHIFT(74), - [299] = {.entry = {.count = 1, .reusable = false}}, SHIFT(83), - [301] = {.entry = {.count = 1, .reusable = true}}, SHIFT(44), - [303] = {.entry = {.count = 1, .reusable = true}}, SHIFT(45), - [305] = {.entry = {.count = 1, .reusable = true}}, SHIFT(89), - [307] = {.entry = {.count = 1, .reusable = true}}, SHIFT(112), - [309] = {.entry = {.count = 1, .reusable = false}}, SHIFT(109), - [311] = {.entry = {.count = 1, .reusable = true}}, SHIFT(23), - [313] = {.entry = {.count = 1, .reusable = true}}, SHIFT(82), - [315] = {.entry = {.count = 1, .reusable = true}}, SHIFT(57), - [317] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_temporary, 1), - [319] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_table_reference, 3, .production_id = 2), - [321] = {.entry = {.count = 1, .reusable = true}}, SHIFT(49), - [323] = {.entry = {.count = 1, .reusable = true}}, SHIFT(50), - [325] = {.entry = {.count = 1, .reusable = false}}, SHIFT(122), - [327] = {.entry = {.count = 1, .reusable = true}}, SHIFT(40), - [329] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__create_statement, 1), - [331] = {.entry = {.count = 1, .reusable = true}}, SHIFT(52), - [333] = {.entry = {.count = 1, .reusable = true}}, SHIFT(53), - [335] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__ddl_statement, 1), - [337] = {.entry = {.count = 1, .reusable = true}}, SHIFT(121), - [339] = {.entry = {.count = 1, .reusable = true}}, SHIFT(63), - [341] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_definitions, 4), - [343] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), - [345] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_create_table, 6), - [347] = {.entry = {.count = 1, .reusable = true}}, SHIFT(30), - [349] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_line_comment, 2), - [351] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block_comment, 3), + [27] = {.entry = {.count = 1, .reusable = true}}, SHIFT(15), + [29] = {.entry = {.count = 1, .reusable = false}}, SHIFT(14), + [31] = {.entry = {.count = 1, .reusable = true}}, SHIFT(12), + [33] = {.entry = {.count = 1, .reusable = false}}, SHIFT(55), + [35] = {.entry = {.count = 1, .reusable = true}}, SHIFT(55), + [37] = {.entry = {.count = 1, .reusable = false}}, SHIFT(5), + [39] = {.entry = {.count = 1, .reusable = true}}, SHIFT(57), + [41] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_identifier, 3), + [43] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_identifier, 3), + [45] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_identifier, 1), + [47] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_identifier, 1), + [49] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_timestamp, 1), + [51] = {.entry = {.count = 1, .reusable = true}}, SHIFT(110), + [53] = {.entry = {.count = 1, .reusable = false}}, SHIFT(108), + [55] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_definition, 3, .production_id = 3), + [57] = {.entry = {.count = 1, .reusable = true}}, SHIFT(165), + [59] = {.entry = {.count = 1, .reusable = true}}, SHIFT(42), + [61] = {.entry = {.count = 1, .reusable = true}}, SHIFT(94), + [63] = {.entry = {.count = 1, .reusable = true}}, SHIFT(68), + [65] = {.entry = {.count = 1, .reusable = true}}, SHIFT(24), + [67] = {.entry = {.count = 1, .reusable = true}}, SHIFT(170), + [69] = {.entry = {.count = 1, .reusable = true}}, SHIFT(81), + [71] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_column_definition_repeat1, 2), + [73] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_column_definition_repeat1, 2), SHIFT_REPEAT(165), + [76] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_column_definition_repeat1, 2), SHIFT_REPEAT(42), + [79] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_column_definition_repeat1, 2), SHIFT_REPEAT(94), + [82] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_column_definition_repeat1, 2), SHIFT_REPEAT(68), + [85] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_column_definition_repeat1, 2), SHIFT_REPEAT(24), + [88] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_column_definition_repeat1, 2), SHIFT_REPEAT(170), + [91] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_column_definition_repeat1, 2), SHIFT_REPEAT(81), + [94] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_time, 1), + [96] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_definition, 2, .production_id = 3), + [98] = {.entry = {.count = 1, .reusable = true}}, SHIFT(95), + [100] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_referencial_action, 2), + [102] = {.entry = {.count = 1, .reusable = true}}, SHIFT(154), + [104] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_char, 1), + [106] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_varchar, 1), + [108] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_char, 1), + [110] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_keyword_char, 1), REDUCE(sym_keyword_varchar, 1), + [113] = {.entry = {.count = 1, .reusable = true}}, SHIFT(155), + [115] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_numeric, 1), + [117] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__foreign_key_on_update, 3), + [119] = {.entry = {.count = 1, .reusable = true}}, SHIFT(150), + [121] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_decimal, 1), + [123] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__foreign_key_on_delete, 3), + [125] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_referencial_action, 1), + [127] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_referencial_action, 6), + [129] = {.entry = {.count = 1, .reusable = true}}, SHIFT(142), + [131] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_varchar, 1), + [133] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 3, .production_id = 5), + [135] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_column_constraint, 3, .production_id = 5), + [137] = {.entry = {.count = 1, .reusable = true}}, SHIFT(126), + [139] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 1), + [141] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_column_constraint, 1), + [143] = {.entry = {.count = 1, .reusable = true}}, SHIFT(118), + [145] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_referencial_action, 5), + [147] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_numeric, 4, .production_id = 4), + [149] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__primary_key, 2), + [151] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__not_null, 2), + [153] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_numeric, 6, .production_id = 7), + [155] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_decimal, 6, .production_id = 7), + [157] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__with_time_zone, 2), + [159] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_column_definition_repeat1, 1), + [161] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_literal, 1), + [163] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 4), + [165] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 9, .production_id = 9), + [167] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__literal_string, 3), + [169] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 2), + [171] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 4, .production_id = 5), + [173] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_varchar, 4, .production_id = 6), + [175] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_char, 4, .production_id = 6), + [177] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 3), + [179] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__expression, 1), + [181] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 10, .production_id = 9), + [183] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_timestamptz, 2), + [185] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 5, .production_id = 5), + [187] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__type, 1), + [189] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__type_numeric, 1), + [191] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_timestamp, 2), + [193] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_time, 2), + [195] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__type_character, 1), + [197] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 5), + [199] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 6, .production_id = 5), + [201] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 8, .production_id = 8), + [203] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__type_datetime, 1), + [205] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__keyword_time_zone, 2), + [207] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_timestamptz, 1), + [209] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_double, 2), + [211] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 7, .production_id = 5), + [213] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_constraint, 7, .production_id = 8), + [215] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_decimal, 4, .production_id = 4), + [217] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__without_time_zone, 2), + [219] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 1), + [221] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2), + [223] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(88), + [226] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(73), + [229] = {.entry = {.count = 1, .reusable = true}}, SHIFT(62), + [231] = {.entry = {.count = 1, .reusable = true}}, SHIFT(67), + [233] = {.entry = {.count = 1, .reusable = true}}, SHIFT(23), + [235] = {.entry = {.count = 1, .reusable = true}}, SHIFT(83), + [237] = {.entry = {.count = 1, .reusable = true}}, SHIFT(33), + [239] = {.entry = {.count = 1, .reusable = true}}, SHIFT(173), + [241] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4), + [243] = {.entry = {.count = 1, .reusable = false}}, SHIFT(148), + [245] = {.entry = {.count = 1, .reusable = true}}, SHIFT(147), + [247] = {.entry = {.count = 1, .reusable = true}}, SHIFT(100), + [249] = {.entry = {.count = 1, .reusable = true}}, SHIFT(119), + [251] = {.entry = {.count = 1, .reusable = true}}, SHIFT(102), + [253] = {.entry = {.count = 1, .reusable = true}}, SHIFT(99), + [255] = {.entry = {.count = 1, .reusable = true}}, SHIFT(69), + [257] = {.entry = {.count = 1, .reusable = true}}, SHIFT(158), + [259] = {.entry = {.count = 1, .reusable = false}}, SHIFT(158), + [261] = {.entry = {.count = 1, .reusable = true}}, SHIFT(151), + [263] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4), + [265] = {.entry = {.count = 1, .reusable = true}}, SHIFT(157), + [267] = {.entry = {.count = 1, .reusable = true}}, SHIFT(145), + [269] = {.entry = {.count = 1, .reusable = true}}, SHIFT(131), + [271] = {.entry = {.count = 1, .reusable = true}}, SHIFT(20), + [273] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_table_reference, 1, .production_id = 1), + [275] = {.entry = {.count = 1, .reusable = true}}, SHIFT(101), + [277] = {.entry = {.count = 1, .reusable = true}}, SHIFT(79), + [279] = {.entry = {.count = 1, .reusable = true}}, SHIFT(177), + [281] = {.entry = {.count = 1, .reusable = true}}, SHIFT(167), + [283] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_referencial_action_repeat1, 2), SHIFT_REPEAT(90), + [286] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_referencial_action_repeat1, 2), + [288] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_statement, 1), + [290] = {.entry = {.count = 1, .reusable = true}}, SHIFT(90), + [292] = {.entry = {.count = 1, .reusable = true}}, SHIFT(21), + [294] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 1), + [296] = {.entry = {.count = 1, .reusable = true}}, SHIFT(25), + [298] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_statement, 2), + [300] = {.entry = {.count = 1, .reusable = true}}, SHIFT(153), + [302] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_table_reference, 3, .production_id = 2), + [304] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_column_definitions_repeat1, 2), SHIFT_REPEAT(79), + [307] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_column_definitions_repeat1, 2), + [309] = {.entry = {.count = 1, .reusable = true}}, SHIFT(159), + [311] = {.entry = {.count = 1, .reusable = true}}, SHIFT(146), + [313] = {.entry = {.count = 1, .reusable = true}}, SHIFT(149), + [315] = {.entry = {.count = 1, .reusable = true}}, SHIFT(144), + [317] = {.entry = {.count = 1, .reusable = true}}, SHIFT(61), + [319] = {.entry = {.count = 1, .reusable = true}}, SHIFT(178), + [321] = {.entry = {.count = 1, .reusable = true}}, SHIFT(26), + [323] = {.entry = {.count = 1, .reusable = true}}, SHIFT(168), + [325] = {.entry = {.count = 1, .reusable = true}}, SHIFT(41), + [327] = {.entry = {.count = 1, .reusable = true}}, SHIFT(77), + [329] = {.entry = {.count = 1, .reusable = true}}, SHIFT(78), + [331] = {.entry = {.count = 1, .reusable = true}}, SHIFT(76), + [333] = {.entry = {.count = 1, .reusable = true}}, SHIFT(140), + [335] = {.entry = {.count = 1, .reusable = true}}, SHIFT(46), + [337] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__if_not_exists, 3), + [339] = {.entry = {.count = 1, .reusable = true}}, SHIFT(10), + [341] = {.entry = {.count = 1, .reusable = true}}, SHIFT(29), + [343] = {.entry = {.count = 1, .reusable = false}}, SHIFT(180), + [345] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_create_table, 4), + [347] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3), + [349] = {.entry = {.count = 1, .reusable = true}}, SHIFT(53), + [351] = {.entry = {.count = 1, .reusable = true}}, SHIFT(128), + [353] = {.entry = {.count = 1, .reusable = true}}, SHIFT(163), + [355] = {.entry = {.count = 1, .reusable = true}}, SHIFT(40), + [357] = {.entry = {.count = 1, .reusable = true}}, SHIFT(166), + [359] = {.entry = {.count = 1, .reusable = true}}, SHIFT(13), + [361] = {.entry = {.count = 1, .reusable = false}}, SHIFT(174), + [363] = {.entry = {.count = 1, .reusable = false}}, SHIFT(160), + [365] = {.entry = {.count = 1, .reusable = false}}, SHIFT(139), + [367] = {.entry = {.count = 1, .reusable = true}}, SHIFT(141), + [369] = {.entry = {.count = 1, .reusable = true}}, SHIFT(56), + [371] = {.entry = {.count = 1, .reusable = true}}, SHIFT(111), + [373] = {.entry = {.count = 1, .reusable = true}}, SHIFT(71), + [375] = {.entry = {.count = 1, .reusable = true}}, SHIFT(74), + [377] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__foreign_key_match, 2), + [379] = {.entry = {.count = 1, .reusable = true}}, SHIFT(143), + [381] = {.entry = {.count = 1, .reusable = true}}, SHIFT(112), + [383] = {.entry = {.count = 1, .reusable = true}}, SHIFT(75), + [385] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_definitions, 2), + [387] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_temporary, 1), + [389] = {.entry = {.count = 1, .reusable = false}}, SHIFT(137), + [391] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__create_statement, 1), + [393] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_create_table, 5), + [395] = {.entry = {.count = 1, .reusable = true}}, SHIFT(39), + [397] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__ddl_statement, 1), + [399] = {.entry = {.count = 1, .reusable = true}}, SHIFT(28), + [401] = {.entry = {.count = 1, .reusable = true}}, SHIFT(30), + [403] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_definitions, 3), + [405] = {.entry = {.count = 1, .reusable = true}}, SHIFT(34), + [407] = {.entry = {.count = 1, .reusable = true}}, SHIFT(97), + [409] = {.entry = {.count = 1, .reusable = true}}, SHIFT(27), + [411] = {.entry = {.count = 1, .reusable = true}}, SHIFT(36), + [413] = {.entry = {.count = 1, .reusable = true}}, SHIFT(58), + [415] = {.entry = {.count = 1, .reusable = false}}, SHIFT(171), + [417] = {.entry = {.count = 1, .reusable = true}}, SHIFT(179), + [419] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), + [421] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_create_table, 6), + [423] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_column_definitions, 4), + [425] = {.entry = {.count = 1, .reusable = true}}, SHIFT(136), + [427] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_line_comment, 2), + [429] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block_comment, 3), }; #ifdef __cplusplus diff --git a/test/corpus/create/table.txt b/test/corpus/create/table.txt index 1bacbca..7215fc4 100644 --- a/test/corpus/create/table.txt +++ b/test/corpus/create/table.txt @@ -192,7 +192,8 @@ create table foo ( name: (identifier) datatype: (keyword_uuid) (column_constraint - (keyword_primary_key) + (keyword_primary) + (keyword_key) ) ) (column_definition @@ -227,6 +228,62 @@ create table foo ( ) ) +================================================================================ +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) + datatype: (keyword_uuid) + (column_constraint + (keyword_primary) + (keyword_key) + ) + ) + (column_definition + name: (identifier) + datatype: (keyword_uuid) + (column_constraint + (keyword_null) + ) + (column_constraint + (keyword_references) + (table_reference + name: (identifier) + ) + refcolumn: (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 ================================================================================ @@ -254,7 +311,8 @@ create table foo ( (column_constraint (keyword_constraint) name: (identifier) - (keyword_primary_key) + (keyword_primary) + (keyword_key) ) ) (column_definition diff --git a/tree-sitter-plpgsql.wasm b/tree-sitter-plpgsql.wasm index 3adc6d4..e2cd634 100755 Binary files a/tree-sitter-plpgsql.wasm and b/tree-sitter-plpgsql.wasm differ