---
source: crates/squawk_parser/tests/tests.rs
input_file: crates/squawk_parser/tests/data/ok/create_table.sql
---
SOURCE_FILE
CREATE_TABLE
COMMENT "-- create_table"
WHITESPACE "\n"
COMMENT "-- simple"
WHITESPACE "\n"
CREATE_KW "create"
WHITESPACE " "
TABLE_KW "table"
WHITESPACE " "
PATH
PATH_SEGMENT
NAME
IDENT "t"
WHITESPACE " "
TABLE_ARG_LIST
L_PAREN "("
WHITESPACE "\n "
COLUMN
NAME
IDENT "a"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
TEXT_KW "text"
COMMA ","
WHITESPACE "\n "
COLUMN
NAME
IDENT "b"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
INTEGER_KW "integer"
WHITESPACE "\n"
R_PAREN ")"
SEMICOLON ";"
WHITESPACE "\n\n"
CREATE_TABLE
COMMENT "-- with schema prefix"
WHITESPACE "\n"
CREATE_KW "create"
WHITESPACE " "
TABLE_KW "table"
WHITESPACE " "
PATH
PATH
PATH_SEGMENT
NAME_REF
IDENT "foo"
DOT "."
PATH_SEGMENT
NAME
IDENT "t"
WHITESPACE " "
TABLE_ARG_LIST
L_PAREN "("
WHITESPACE "\n "
COLUMN
NAME
IDENT "a"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
TEXT_KW "text"
COMMA ","
WHITESPACE "\n "
COLUMN
NAME
IDENT "b"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
INTEGER_KW "integer"
WHITESPACE "\n"
R_PAREN ")"
SEMICOLON ";"
WHITESPACE "\n\n"
CREATE_TABLE
COMMENT "-- like source_table"
WHITESPACE "\n"
CREATE_KW "create"
WHITESPACE " "
TABLE_KW "table"
WHITESPACE " "
PATH
PATH_SEGMENT
NAME
IDENT "t"
WHITESPACE " "
TABLE_ARG_LIST
L_PAREN "("
WHITESPACE "\n "
COLUMN
NAME
IDENT "a"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
TEXT_KW "text"
COMMA ","
WHITESPACE "\n "
LIKE_CLAUSE
LIKE_KW "like"
WHITESPACE " "
PATH
PATH_SEGMENT
NAME_REF
IDENT "large_data_table"
COMMA ","
WHITESPACE "\n "
COLUMN
NAME
IDENT "b"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
INTEGER_KW "integer"
WHITESPACE "\n"
R_PAREN ")"
SEMICOLON ";"
WHITESPACE "\n\n"
CREATE_TABLE
COMMENT "-- like option"
WHITESPACE "\n"
CREATE_KW "create"
WHITESPACE " "
TABLE_KW "table"
WHITESPACE " "
PATH
PATH_SEGMENT
NAME
IDENT "t"
WHITESPACE " "
TABLE_ARG_LIST
L_PAREN "("
WHITESPACE "\n "
COLUMN
NAME
IDENT "a"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
TEXT_KW "text"
COMMA ","
WHITESPACE "\n "
LIKE_CLAUSE
LIKE_KW "like"
WHITESPACE " "
PATH
PATH
PATH_SEGMENT
NAME_REF
IDENT "bar"
DOT "."
PATH_SEGMENT
NAME_REF
IDENT "b"
WHITESPACE " "
LIKE_OPTION
INCLUDING_KW "including"
WHITESPACE " "
COMMENTS_KW "comments"
WHITESPACE "\n"
R_PAREN ")"
SEMICOLON ";"
WHITESPACE "\n\n"
CREATE_TABLE
COMMENT "-- like options"
WHITESPACE "\n"
CREATE_KW "create"
WHITESPACE " "
TABLE_KW "table"
WHITESPACE " "
PATH
PATH_SEGMENT
NAME
IDENT "t"
WHITESPACE " "
TABLE_ARG_LIST
L_PAREN "("
WHITESPACE "\n "
COLUMN
NAME
IDENT "a"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
TEXT_KW "text"
COMMA ","
WHITESPACE "\n "
LIKE_CLAUSE
LIKE_KW "like"
WHITESPACE " "
PATH
PATH
PATH_SEGMENT
NAME_REF
IDENT "bar"
DOT "."
PATH_SEGMENT
NAME_REF
IDENT "b"
WHITESPACE " "
LIKE_OPTION
INCLUDING_KW "including"
WHITESPACE " "
COMMENTS_KW "comments"
WHITESPACE " "
LIKE_OPTION
INCLUDING_KW "including"
WHITESPACE " "
CONSTRAINTS_KW "constraints"
WHITESPACE " "
LIKE_OPTION
EXCLUDING_KW "excluding"
WHITESPACE " "
DEFAULTS_KW "defaults"
WHITESPACE " "
LIKE_OPTION
EXCLUDING_KW "excluding"
WHITESPACE " "
GENERATED_KW "generated"
WHITESPACE " "
LIKE_OPTION
EXCLUDING_KW "excluding"
WHITESPACE " "
IDENTITY_KW "identity"
WHITESPACE " "
LIKE_OPTION
EXCLUDING_KW "excluding"
WHITESPACE " "
INDEXES_KW "indexes"
WHITESPACE " "
LIKE_OPTION
EXCLUDING_KW "excluding"
WHITESPACE " "
STATISTICS_KW "statistics"
WHITESPACE " "
LIKE_OPTION
INCLUDING_KW "including"
WHITESPACE " "
STORAGE_KW "storage"
WHITESPACE " "
LIKE_OPTION
EXCLUDING_KW "excluding"
WHITESPACE " "
ALL_KW "all"
WHITESPACE "\n"
R_PAREN ")"
SEMICOLON ";"
WHITESPACE "\n\n"
CREATE_TABLE
COMMENT "-- with prefix options"
WHITESPACE "\n"
CREATE_KW "create"
WHITESPACE " "
TEMP
GLOBAL_KW "global"
WHITESPACE " "
TEMPORARY_KW "temporary"
WHITESPACE " "
TABLE_KW "table"
WHITESPACE " "
IF_NOT_EXISTS
IF_KW "if"
WHITESPACE " "
NOT_KW "not"
WHITESPACE " "
EXISTS_KW "exists"
WHITESPACE " "
PATH
PATH_SEGMENT
NAME
IDENT "t"
WHITESPACE " "
TABLE_ARG_LIST
L_PAREN "("
WHITESPACE "\n "
COLUMN
NAME
IDENT "a"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
TEXT_KW "text"
WHITESPACE "\n"
R_PAREN ")"
SEMICOLON ";"
WHITESPACE "\n"
CREATE_TABLE
CREATE_KW "create"
WHITESPACE " "
TEMP
LOCAL_KW "local"
WHITESPACE " "
TEMP_KW "temp"
WHITESPACE " "
TABLE_KW "table"
WHITESPACE " "
PATH
PATH_SEGMENT
NAME
IDENT "t"
WHITESPACE " "
TABLE_ARG_LIST
L_PAREN "("
WHITESPACE "\n "
COLUMN
NAME
IDENT "a"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
TEXT_KW "text"
WHITESPACE "\n"
R_PAREN ")"
SEMICOLON ";"
WHITESPACE "\n\n"
CREATE_TABLE
COMMENT "-- unlogged"
WHITESPACE "\n"
CREATE_KW "create"
WHITESPACE " "
UNLOGGED
UNLOGGED_KW "unlogged"
WHITESPACE " "
TABLE_KW "table"
WHITESPACE " "
PATH
PATH_SEGMENT
NAME
IDENT "t"
WHITESPACE " "
TABLE_ARG_LIST
L_PAREN "("
WHITESPACE "\n "
COLUMN
NAME
IDENT "a"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
TEXT_KW "text"
WHITESPACE "\n"
R_PAREN ")"
SEMICOLON ";"
WHITESPACE "\n\n"
CREATE_TABLE
COMMENT "-- inherits from parent"
WHITESPACE "\n"
CREATE_KW "create"
WHITESPACE " "
TABLE_KW "table"
WHITESPACE " "
PATH
PATH_SEGMENT
NAME
IDENT "t"
WHITESPACE " "
TABLE_ARG_LIST
L_PAREN "("
COLUMN
NAME
IDENT "a"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
INT_KW "int"
R_PAREN ")"
WHITESPACE "\n"
INHERITS
INHERITS_KW "inherits"
WHITESPACE " "
L_PAREN "("
PATH
PATH
PATH_SEGMENT
NAME_REF
IDENT "foo"
DOT "."
PATH_SEGMENT
NAME_REF
IDENT "bar"
COMMA ","
WHITESPACE " "
PATH
PATH_SEGMENT
NAME_REF
IDENT "bar"
COMMA ","
WHITESPACE " "
PATH
PATH_SEGMENT
NAME_REF
IDENT "buzz"
R_PAREN ")"
SEMICOLON ";"
WHITESPACE "\n\n"
CREATE_TABLE
COMMENT "-- partition range"
WHITESPACE "\n"
CREATE_KW "create"
WHITESPACE " "
TABLE_KW "table"
WHITESPACE " "
PATH
PATH_SEGMENT
NAME
IDENT "t"
WHITESPACE " "
TABLE_ARG_LIST
L_PAREN "("
COLUMN
NAME
IDENT "a"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
INT_KW "int"
R_PAREN ")"
WHITESPACE "\n"
PARTITION_BY
PARTITION_KW "partition"
WHITESPACE " "
BY_KW "by"
WHITESPACE " "
RANGE_KW "range"
WHITESPACE " "
PARTITION_ITEM_LIST
L_PAREN "("
WHITESPACE "\n "
PARTITION_ITEM
BIN_EXPR
NAME_REF
IDENT "foo"
WHITESPACE " "
COLLATE_KW "collate"
WHITESPACE " "
NAME_REF
IDENT "\"fr_FR\""
WHITESPACE " "
IDENT "text_pattern_ops"
COMMA ","
WHITESPACE " \n "
PARTITION_ITEM
NAME_REF
IDENT "bar"
COMMA ","
WHITESPACE "\n "
PARTITION_ITEM
CALL_EXPR
EXTRACT_FN
EXTRACT_KW "extract"
L_PAREN "("
MONTH_KW "month"
WHITESPACE " "
FROM_KW "from"
WHITESPACE " "
NAME_REF
IDENT "b"
R_PAREN ")"
COMMA ","
WHITESPACE "\n "
PARTITION_ITEM
BIN_EXPR
PAREN_EXPR
L_PAREN "("
BIN_EXPR
NAME_REF
IDENT "a"
WHITESPACE " "
CUSTOM_OP
PIPE "|"
PIPE "|"
WHITESPACE " "
NAME_REF
IDENT "b"
R_PAREN ")"
WHITESPACE " "
COLLATE_KW "collate"
WHITESPACE " "
NAME_REF
IDENT "buzz"
WHITESPACE "\n"
R_PAREN ")"
SEMICOLON ";"
WHITESPACE "\n\n"
CREATE_TABLE
COMMENT "-- partition list"
WHITESPACE "\n"
CREATE_KW "create"
WHITESPACE " "
TABLE_KW "table"
WHITESPACE " "
PATH
PATH_SEGMENT
NAME
IDENT "t"
WHITESPACE " "
TABLE_ARG_LIST
L_PAREN "("
COLUMN
NAME
IDENT "b"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
INT_KW "int"
R_PAREN ")"
WHITESPACE "\n"
PARTITION_BY
PARTITION_KW "partition"
WHITESPACE " "
BY_KW "by"
WHITESPACE " "
IDENT "hash"
WHITESPACE " "
PARTITION_ITEM_LIST
L_PAREN "("
PARTITION_ITEM
NAME_REF
IDENT "z"
R_PAREN ")"
SEMICOLON ";"
WHITESPACE "\n\n"
CREATE_TABLE
COMMENT "-- partition hash"
WHITESPACE "\n"
CREATE_KW "create"
WHITESPACE " "
TABLE_KW "table"
WHITESPACE " "
PATH
PATH_SEGMENT
NAME
IDENT "t"
WHITESPACE " "
TABLE_ARG_LIST
L_PAREN "("
COLUMN
NAME
IDENT "b"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
INT_KW "int"
R_PAREN ")"
WHITESPACE "\n"
PARTITION_BY
PARTITION_KW "partition"
WHITESPACE " "
BY_KW "by"
WHITESPACE " "
IDENT "list"
WHITESPACE " "
PARTITION_ITEM_LIST
L_PAREN "("
PARTITION_ITEM
NAME_REF
IDENT "z"
COMMA ","
WHITESPACE " "
PARTITION_ITEM
NAME_REF
IDENT "b"
R_PAREN ")"
SEMICOLON ";"
WHITESPACE "\n\n"
CREATE_TABLE
COMMENT "-- using"
WHITESPACE "\n"
CREATE_KW "create"
WHITESPACE " "
TABLE_KW "table"
WHITESPACE " "
PATH
PATH_SEGMENT
NAME
IDENT "t"
WHITESPACE " "
TABLE_ARG_LIST
L_PAREN "("
COLUMN
NAME
IDENT "a"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
INT_KW "int"
R_PAREN ")"
WHITESPACE "\n"
USING_METHOD
USING_KW "using"
WHITESPACE " "
NAME_REF
IDENT "bar"
SEMICOLON ";"
WHITESPACE "\n\n"
CREATE_TABLE
COMMENT "-- with"
WHITESPACE "\n"
CREATE_KW "create"
WHITESPACE " "
TABLE_KW "table"
WHITESPACE " "
PATH
PATH_SEGMENT
NAME
IDENT "t"
WHITESPACE " "
TABLE_ARG_LIST
L_PAREN "("
COLUMN
NAME
IDENT "a"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
INT_KW "int"
R_PAREN ")"
WHITESPACE "\n"
WITH_PARAMS
WITH_KW "with"
WHITESPACE " "
ATTRIBUTE_LIST
L_PAREN "("
WHITESPACE "\n "
ATTRIBUTE_OPTION
NAME
IDENT "foo"
COMMA ","
WHITESPACE "\n "
ATTRIBUTE_OPTION
NAME
IDENT "bar"
WHITESPACE " "
EQ "="
WHITESPACE " "
ATTRIBUTE_VALUE
LITERAL
INT_NUMBER "1"
COMMA ","
WHITESPACE "\n "
ATTRIBUTE_OPTION
NAME
IDENT "buzz"
DOT "."
NAME
IDENT "bar"
WHITESPACE " "
EQ "="
WHITESPACE " "
ATTRIBUTE_VALUE
LITERAL
FALSE_KW "false"
WHITESPACE "\n"
R_PAREN ")"
SEMICOLON ";"
WHITESPACE "\n\n"
CREATE_TABLE
COMMENT "-- without"
WHITESPACE "\n"
CREATE_KW "create"
WHITESPACE " "
TABLE_KW "table"
WHITESPACE " "
PATH
PATH_SEGMENT
NAME
IDENT "t"
WHITESPACE " "
TABLE_ARG_LIST
L_PAREN "("
COLUMN
NAME
IDENT "a"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
INT_KW "int"
R_PAREN ")"
WHITESPACE "\n"
WITHOUT_OIDS
WITHOUT_KW "without"
WHITESPACE " "
OIDS_KW "OIDS"
SEMICOLON ";"
WHITESPACE "\n\n"
CREATE_TABLE
COMMENT "-- on commit"
WHITESPACE "\n"
CREATE_KW "create"
WHITESPACE " "
TABLE_KW "table"
WHITESPACE " "
PATH
PATH_SEGMENT
NAME
IDENT "t"
WHITESPACE " "
TABLE_ARG_LIST
L_PAREN "("
COLUMN
NAME
IDENT "a"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
INT_KW "int"
R_PAREN ")"
WHITESPACE "\n"
ON_COMMIT
ON_KW "on"
WHITESPACE " "
COMMIT_KW "commit"
WHITESPACE " "
PRESERVE_ROWS
PRESERVE_KW "preserve"
WHITESPACE " "
ROWS_KW "rows"
SEMICOLON ";"
WHITESPACE "\n\n"
CREATE_TABLE
CREATE_KW "create"
WHITESPACE " "
TABLE_KW "table"
WHITESPACE " "
PATH
PATH_SEGMENT
NAME
IDENT "t"
WHITESPACE " "
TABLE_ARG_LIST
L_PAREN "("
COLUMN
NAME
IDENT "a"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
INT_KW "int"
R_PAREN ")"
WHITESPACE "\n"
ON_COMMIT
ON_KW "on"
WHITESPACE " "
COMMIT_KW "commit"
WHITESPACE " "
DELETE_ROWS
DELETE_KW "delete"
WHITESPACE " "
ROWS_KW "rows"
SEMICOLON ";"
WHITESPACE "\n\n"
CREATE_TABLE
CREATE_KW "create"
WHITESPACE " "
TABLE_KW "table"
WHITESPACE " "
PATH
PATH_SEGMENT
NAME
IDENT "t"
WHITESPACE " "
TABLE_ARG_LIST
L_PAREN "("
COLUMN
NAME
IDENT "a"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
INT_KW "int"
R_PAREN ")"
WHITESPACE "\n"
ON_COMMIT
ON_KW "on"
WHITESPACE " "
COMMIT_KW "commit"
WHITESPACE " "
DROP
DROP_KW "drop"
SEMICOLON ";"
WHITESPACE "\n\n"
CREATE_TABLE
COMMENT "-- tablespace"
WHITESPACE "\n"
CREATE_KW "create"
WHITESPACE " "
TABLE_KW "table"
WHITESPACE " "
PATH
PATH_SEGMENT
NAME
IDENT "t"
WHITESPACE " "
TABLE_ARG_LIST
L_PAREN "("
COLUMN
NAME
IDENT "a"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
INT_KW "int"
R_PAREN ")"
WHITESPACE "\n"
TABLESPACE
TABLESPACE_KW "tablespace"
WHITESPACE " "
NAME_REF
IDENT "bar"
SEMICOLON ";"
WHITESPACE "\n\n\n"
CREATE_TABLE
COMMENT "-- like_column"
WHITESPACE "\n"
CREATE_KW "create"
WHITESPACE " "
TABLE_KW "table"
WHITESPACE " "
PATH
PATH_SEGMENT
NAME
IDENT "u"
WHITESPACE " "
TABLE_ARG_LIST
L_PAREN "("
WHITESPACE "\n "
COLUMN
NAME
IDENT "a"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
TEXT_KW "text"
COMMA ","
WHITESPACE " \n "
COLUMN
NAME
IDENT "\"like\""
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
IDENT "a"
COMMA ","
WHITESPACE " \n "
LIKE_CLAUSE
LIKE_KW "like"
WHITESPACE " "
PATH
PATH_SEGMENT
NAME_REF
IDENT "t"
WHITESPACE "\n"
R_PAREN ")"
SEMICOLON ";"
WHITESPACE "\n\n"
CREATE_TABLE
COMMENT "-- create_table_column_constraints"
WHITESPACE "\n"
COMMENT "-- not null"
WHITESPACE "\n"
CREATE_KW "create"
WHITESPACE " "
TABLE_KW "table"
WHITESPACE " "
PATH
PATH_SEGMENT
NAME
IDENT "t"
WHITESPACE " "
TABLE_ARG_LIST
L_PAREN "("
WHITESPACE "\n "
COLUMN
NAME
IDENT "b"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
INT_KW "int"
WHITESPACE " "
NOT_NULL_CONSTRAINT
NOT_KW "not"
WHITESPACE " "
NULL_KW "null"
WHITESPACE "\n"
R_PAREN ")"
SEMICOLON ";"
WHITESPACE "\n\n"
CREATE_TABLE
COMMENT "-- null"
WHITESPACE "\n"
CREATE_KW "create"
WHITESPACE " "
TABLE_KW "table"
WHITESPACE " "
PATH
PATH_SEGMENT
NAME
IDENT "t"
WHITESPACE " "
TABLE_ARG_LIST
L_PAREN "("
WHITESPACE "\n "
COLUMN
NAME
IDENT "b"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
INT_KW "int"
WHITESPACE " "
NULL_CONSTRAINT
NULL_KW "null"
WHITESPACE "\n"
R_PAREN ")"
SEMICOLON ";"
WHITESPACE "\n\n"
CREATE_TABLE
COMMENT "-- default"
WHITESPACE "\n"
CREATE_KW "create"
WHITESPACE " "
TABLE_KW "table"
WHITESPACE " "
PATH
PATH_SEGMENT
NAME
IDENT "t"
WHITESPACE " "
TABLE_ARG_LIST
L_PAREN "("
WHITESPACE "\n "
COLUMN
NAME
IDENT "b"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
INT_KW "int"
WHITESPACE " "
DEFAULT_CONSTRAINT
DEFAULT_KW "default"
WHITESPACE " "
LITERAL
INT_NUMBER "100"
WHITESPACE "\n"
R_PAREN ")"
SEMICOLON ";"
WHITESPACE "\n\n"
CREATE_TABLE
COMMENT "-- unique constraint"
WHITESPACE "\n"
CREATE_KW "create"
WHITESPACE " "
TABLE_KW "table"
WHITESPACE " "
PATH
PATH_SEGMENT
NAME
IDENT "t"
WHITESPACE " "
TABLE_ARG_LIST
L_PAREN "("
WHITESPACE "\n "
COLUMN
NAME
IDENT "a"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
INT_KW "int"
WHITESPACE " "
UNIQUE_CONSTRAINT
UNIQUE_KW "unique"
COMMA ","
WHITESPACE "\n "
COLUMN
NAME
IDENT "b"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
INT_KW "int"
WHITESPACE " "
UNIQUE_CONSTRAINT
UNIQUE_KW "unique"
WHITESPACE " "
NULLS_NOT_DISTINCT
NULLS_KW "nulls"
WHITESPACE " "
NOT_KW "not"
WHITESPACE " "
DISTINCT_KW "distinct"
COMMA ","
WHITESPACE "\n "
COLUMN
NAME
IDENT "c"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
INT_KW "int"
WHITESPACE " "
UNIQUE_CONSTRAINT
UNIQUE_KW "unique"
WHITESPACE " "
WITH_PARAMS
WITH_KW "with"
WHITESPACE " "
ATTRIBUTE_LIST
L_PAREN "("
WHITESPACE "\n "
ATTRIBUTE_OPTION
NAME
IDENT "fillfactor"
COMMA ","
WHITESPACE "\n "
ATTRIBUTE_OPTION
NAME
IDENT "toast_tuple_target"
WHITESPACE " "
EQ "="
WHITESPACE " "
ATTRIBUTE_VALUE
LITERAL
INT_NUMBER "100"
COMMA ","
WHITESPACE "\n "
ATTRIBUTE_OPTION
NAME
IDENT "parallel_workers"
WHITESPACE " "
EQ "="
WHITESPACE " "
ATTRIBUTE_VALUE
LITERAL
INT_NUMBER "5"
COMMA ","
WHITESPACE "\n "
ATTRIBUTE_OPTION
NAME
IDENT "autovacuum_enabled"
WHITESPACE " "
EQ "="
WHITESPACE " "
ATTRIBUTE_VALUE
LITERAL
FALSE_KW "false"
COMMA ","
WHITESPACE "\n "
ATTRIBUTE_OPTION
NAME
IDENT "autovacuum_vacuum_cost_delay"
WHITESPACE " "
EQ "="
WHITESPACE " "
ATTRIBUTE_VALUE
LITERAL
FLOAT_NUMBER "10.1"
WHITESPACE "\n "
COMMENT "-- others omitted"
WHITESPACE "\n "
R_PAREN ")"
COMMA ","
WHITESPACE "\n "
COLUMN
NAME
IDENT "d"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
INT_KW "int"
WHITESPACE " "
UNIQUE_CONSTRAINT
UNIQUE_KW "unique"
WHITESPACE " "
CONSTRAINT_INDEX_TABLESPACE
USING_KW "using"
WHITESPACE " "
INDEX_KW "index"
WHITESPACE " "
TABLESPACE_KW "tablespace"
WHITESPACE " "
NAME_REF
IDENT "foo"
WHITESPACE "\n"
R_PAREN ")"
SEMICOLON ";"
WHITESPACE "\n\n"
CREATE_TABLE
COMMENT "-- references actions order"
WHITESPACE "\n"
CREATE_KW "create"
WHITESPACE " "
TABLE_KW "table"
WHITESPACE " "
PATH
PATH_SEGMENT
NAME
IDENT "t"
WHITESPACE " "
TABLE_ARG_LIST
L_PAREN "("
WHITESPACE "\n "
COLUMN
NAME
IDENT "b"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
INT_KW "int"
WHITESPACE " "
REFERENCES_CONSTRAINT
REFERENCES_KW "references"
WHITESPACE " "
PATH
PATH_SEGMENT
NAME_REF
IDENT "foo"
WHITESPACE "\n "
ON_UPDATE_ACTION
ON_KW "on"
WHITESPACE " "
UPDATE_KW "update"
WHITESPACE " "
NO_ACTION
NO_KW "no"
WHITESPACE " "
ACTION_KW "action"
WHITESPACE "\n "
ON_DELETE_ACTION
ON_KW "on"
WHITESPACE " "
DELETE_KW "delete"
WHITESPACE " "
NO_ACTION
NO_KW "no"
WHITESPACE " "
ACTION_KW "action"
WHITESPACE "\n"
R_PAREN ")"
SEMICOLON ";"
WHITESPACE "\n\n"
CREATE_TABLE
COMMENT "-- order swapped"
WHITESPACE "\n"
CREATE_KW "create"
WHITESPACE " "
TABLE_KW "table"
WHITESPACE " "
PATH
PATH_SEGMENT
NAME
IDENT "t"
WHITESPACE " "
TABLE_ARG_LIST
L_PAREN "("
WHITESPACE "\n "
COLUMN
NAME
IDENT "b"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
INT_KW "int"
WHITESPACE " "
REFERENCES_CONSTRAINT
REFERENCES_KW "references"
WHITESPACE " "
PATH
PATH_SEGMENT
NAME_REF
IDENT "foo"
WHITESPACE "\n "
ON_DELETE_ACTION
ON_KW "on"
WHITESPACE " "
DELETE_KW "delete"
WHITESPACE " "
NO_ACTION
NO_KW "no"
WHITESPACE " "
ACTION_KW "action"
WHITESPACE "\n "
ON_UPDATE_ACTION
ON_KW "on"
WHITESPACE " "
UPDATE_KW "update"
WHITESPACE " "
NO_ACTION
NO_KW "no"
WHITESPACE " "
ACTION_KW "action"
WHITESPACE "\n"
R_PAREN ")"
SEMICOLON ";"
WHITESPACE "\n\n"
CREATE_TABLE
COMMENT "-- primary key"
WHITESPACE "\n"
CREATE_KW "create"
WHITESPACE " "
TABLE_KW "table"
WHITESPACE " "
PATH
PATH_SEGMENT
NAME
IDENT "t"
WHITESPACE " "
TABLE_ARG_LIST
L_PAREN "("
WHITESPACE "\n "
COLUMN
NAME
IDENT "a"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
INT_KW "int"
WHITESPACE " "
PRIMARY_KEY_CONSTRAINT
PRIMARY_KW "primary"
WHITESPACE " "
KEY_KW "key"
WHITESPACE " "
WITH_PARAMS
WITH_KW "with"
WHITESPACE " "
ATTRIBUTE_LIST
L_PAREN "("
WHITESPACE " "
ATTRIBUTE_OPTION
NAME
IDENT "autovacuum_enabled"
WHITESPACE " "
R_PAREN ")"
COMMA ","
WHITESPACE "\n "
COLUMN
NAME
IDENT "a"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
INT_KW "int"
WHITESPACE " "
PRIMARY_KEY_CONSTRAINT
PRIMARY_KW "primary"
WHITESPACE " "
KEY_KW "key"
WHITESPACE "\n"
R_PAREN ")"
SEMICOLON ";"
WHITESPACE "\n\n"
CREATE_TABLE
COMMENT "-- check constraint"
WHITESPACE "\n"
CREATE_KW "create"
WHITESPACE " "
TABLE_KW "table"
WHITESPACE " "
PATH
PATH_SEGMENT
NAME
IDENT "t"
WHITESPACE " "
TABLE_ARG_LIST
L_PAREN "("
WHITESPACE "\n "
COLUMN
NAME
IDENT "b"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
INT_KW "int"
WHITESPACE " "
CHECK_CONSTRAINT
CHECK_KW "check"
WHITESPACE " "
L_PAREN "("
BIN_EXPR
NAME_REF
IDENT "b"
WHITESPACE " "
R_ANGLE ">"
WHITESPACE " "
LITERAL
INT_NUMBER "10"
R_PAREN ")"
COMMA ","
WHITESPACE "\n "
COLUMN
NAME
IDENT "c"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
INT_KW "int"
WHITESPACE " "
CHECK_CONSTRAINT
CHECK_KW "check"
WHITESPACE " "
L_PAREN "("
BIN_EXPR
NAME_REF
IDENT "c"
WHITESPACE " "
R_ANGLE ">"
WHITESPACE " "
LITERAL
INT_NUMBER "10"
R_PAREN ")"
WHITESPACE " "
NO_INHERIT
NO_KW "no"
WHITESPACE " "
INHERIT_KW "inherit"
WHITESPACE "\n"
R_PAREN ")"
SEMICOLON ";"
WHITESPACE "\n\n"
CREATE_TABLE
COMMENT "-- defer"
WHITESPACE "\n"
CREATE_KW "create"
WHITESPACE " "
TABLE_KW "table"
WHITESPACE " "
PATH
PATH_SEGMENT
NAME
IDENT "t"
WHITESPACE " "
TABLE_ARG_LIST
L_PAREN "("
WHITESPACE "\n "
COLUMN
NAME
IDENT "a"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
INT_KW "int"
WHITESPACE " "
CHECK_CONSTRAINT
CHECK_KW "check"
WHITESPACE " "
L_PAREN "("
BIN_EXPR
NAME_REF
IDENT "a"
WHITESPACE " "
R_ANGLE ">"
WHITESPACE " "
LITERAL
INT_NUMBER "10"
R_PAREN ")"
WHITESPACE " "
DEFERRABLE_CONSTRAINT_OPTION
DEFERRABLE_KW "deferrable"
COMMA ","
WHITESPACE "\n "
COLUMN
NAME
IDENT "b"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
INT_KW "int"
WHITESPACE " "
NOT_NULL_CONSTRAINT
NOT_KW "not"
WHITESPACE " "
NULL_KW "null"
WHITESPACE " "
NOT_DEFERRABLE_CONSTRAINT_OPTION
NOT_KW "not"
WHITESPACE " "
DEFERRABLE_KW "deferrable"
COMMA ","
WHITESPACE "\n "
COLUMN
NAME
IDENT "c"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
INT_KW "int"
WHITESPACE " "
NOT_NULL_CONSTRAINT
NOT_KW "not"
WHITESPACE " "
NULL_KW "null"
WHITESPACE " "
INITIALLY_DEFERRED_CONSTRAINT_OPTION
INITIALLY_KW "initially"
WHITESPACE " "
DEFERRED_KW "deferred"
COMMA ","
WHITESPACE "\n "
COLUMN
NAME
IDENT "d"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
INT_KW "int"
WHITESPACE " "
NOT_NULL_CONSTRAINT
NOT_KW "not"
WHITESPACE " "
NULL_KW "null"
WHITESPACE " "
INITIALLY_IMMEDIATE_CONSTRAINT_OPTION
INITIALLY_KW "initially"
WHITESPACE " "
IMMEDIATE_KW "immediate"
WHITESPACE "\n"
R_PAREN ")"
SEMICOLON ";"
WHITESPACE "\n\n"
CREATE_TABLE
COMMENT "-- constraint"
WHITESPACE "\n"
CREATE_KW "create"
WHITESPACE " "
TABLE_KW "table"
WHITESPACE " "
PATH
PATH_SEGMENT
NAME
IDENT "t"
WHITESPACE " "
TABLE_ARG_LIST
L_PAREN "("
WHITESPACE "\n "
COLUMN
NAME
IDENT "b"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
INT_KW "int"
WHITESPACE " "
NULL_CONSTRAINT
CONSTRAINT_NAME
CONSTRAINT_KW "constraint"
WHITESPACE " "
NAME
IDENT "foo"
WHITESPACE " "
NULL_KW "null"
WHITESPACE "\n"
R_PAREN ")"
SEMICOLON ";"
WHITESPACE "\n\n"
CREATE_TABLE
COMMENT "-- generated stored"
WHITESPACE "\n"
CREATE_KW "create"
WHITESPACE " "
UNLOGGED
UNLOGGED_KW "unlogged"
WHITESPACE " "
TABLE_KW "table"
WHITESPACE " "
PATH
PATH_SEGMENT
NAME
IDENT "t"
WHITESPACE " "
TABLE_ARG_LIST
L_PAREN "("
WHITESPACE "\n "
COLUMN
NAME
IDENT "a"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
INT_KW "int"
COMMA ","
WHITESPACE "\n "
COLUMN
NAME
IDENT "b"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
INT_KW "int"
WHITESPACE " "
GENERATED_CONSTRAINT
GENERATED_KW "generated"
WHITESPACE " "
ALWAYS_KW "always"
WHITESPACE " "
AS_KW "as"
WHITESPACE " "
L_PAREN "("
WHITESPACE "\n "
BIN_EXPR
NAME_REF
IDENT "a"
WHITESPACE " "
STAR "*"
WHITESPACE " "
LITERAL
INT_NUMBER "2"
WHITESPACE "\n "
R_PAREN ")"
WHITESPACE " "
STORED_KW "stored"
WHITESPACE "\n"
R_PAREN ")"
SEMICOLON ";"
WHITESPACE "\n\n"
COMMENT "-- create_table_table_constraints"
WHITESPACE "\n\n"
CREATE_TABLE
COMMENT "-- named constraint"
WHITESPACE "\n"
CREATE_KW "create"
WHITESPACE " "
TABLE_KW "table"
WHITESPACE " "
PATH
PATH_SEGMENT
NAME
IDENT "t"
WHITESPACE " "
TABLE_ARG_LIST
L_PAREN "("
WHITESPACE "\n "
COLUMN
NAME
IDENT "a"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
INT_KW "int"
COMMA ","
WHITESPACE "\n "
COLUMN
NAME
IDENT "b"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
TEXT_KW "text"
COMMA ","
WHITESPACE "\n "
CHECK_CONSTRAINT
CONSTRAINT_NAME
CONSTRAINT_KW "constraint"
WHITESPACE " "
NAME
IDENT "foo"
WHITESPACE " "
CHECK_KW "check"
WHITESPACE " "
L_PAREN "("
BIN_EXPR
NAME_REF
IDENT "a"
WHITESPACE " "
R_ANGLE ">"
WHITESPACE " "
NAME_REF
IDENT "b"
R_PAREN ")"
WHITESPACE " "
NO_INHERIT
NO_KW "no"
WHITESPACE " "
INHERIT_KW "inherit"
WHITESPACE "\n"
R_PAREN ")"
SEMICOLON ";"
WHITESPACE "\n\n"
CREATE_TABLE
COMMENT "-- check constraint"
WHITESPACE "\n"
CREATE_KW "create"
WHITESPACE " "
TABLE_KW "table"
WHITESPACE " "
PATH
PATH_SEGMENT
NAME
IDENT "t"
WHITESPACE " "
TABLE_ARG_LIST
L_PAREN "("
WHITESPACE "\n "
COLUMN
NAME
IDENT "a"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
INT_KW "int"
COMMA ","
WHITESPACE "\n "
COLUMN
NAME
IDENT "b"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
TEXT_KW "text"
COMMA ","
WHITESPACE "\n "
CHECK_CONSTRAINT
CHECK_KW "check"
WHITESPACE " "
L_PAREN "("
BIN_EXPR
NAME_REF
IDENT "a"
WHITESPACE " "
R_ANGLE ">"
WHITESPACE " "
NAME_REF
IDENT "b"
R_PAREN ")"
WHITESPACE "\n"
R_PAREN ")"
SEMICOLON ";"
WHITESPACE "\n\n"
CREATE_TABLE
COMMENT "-- unique constraint"
WHITESPACE "\n"
CREATE_KW "create"
WHITESPACE " "
TABLE_KW "table"
WHITESPACE " "
PATH
PATH_SEGMENT
NAME
IDENT "t"
WHITESPACE " "
TABLE_ARG_LIST
L_PAREN "("
WHITESPACE "\n "
COLUMN
NAME
IDENT "a"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
INT_KW "int"
COMMA ","
WHITESPACE "\n "
COLUMN
NAME
IDENT "b"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
TEXT_KW "text"
COMMA ","
WHITESPACE "\n "
UNIQUE_CONSTRAINT
UNIQUE_KW "unique"
WHITESPACE " "
NULLS_NOT_DISTINCT
NULLS_KW "nulls"
WHITESPACE " "
NOT_KW "not"
WHITESPACE " "
DISTINCT_KW "distinct"
WHITESPACE " "
COLUMN_LIST
L_PAREN "("
COLUMN
NAME_REF
IDENT "a"
COMMA ","
WHITESPACE " "
COLUMN
NAME_REF
IDENT "b"
R_PAREN ")"
WHITESPACE " "
WITH_PARAMS
WITH_KW "with"
WHITESPACE " "
ATTRIBUTE_LIST
L_PAREN "("
WHITESPACE " "
ATTRIBUTE_OPTION
NAME
IDENT "bar"
WHITESPACE " "
EQ "="
WHITESPACE " "
ATTRIBUTE_VALUE
LITERAL
FALSE_KW "false"
WHITESPACE " "
R_PAREN ")"
WHITESPACE "\n"
R_PAREN ")"
SEMICOLON ";"
WHITESPACE "\n\n"
CREATE_TABLE
COMMENT "-- unique with name constraint"
WHITESPACE "\n"
CREATE_KW "create"
WHITESPACE " "
TABLE_KW "table"
WHITESPACE " "
PATH
PATH_SEGMENT
NAME
IDENT "t"
WHITESPACE " "
TABLE_ARG_LIST
L_PAREN "("
WHITESPACE "\n "
COLUMN
NAME
IDENT "a"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
INT_KW "int"
COMMA ","
WHITESPACE "\n "
COLUMN
NAME
IDENT "b"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
TEXT_KW "text"
COMMA ","
WHITESPACE "\n "
UNIQUE_CONSTRAINT
UNIQUE_KW "unique"
WHITESPACE " "
COLUMN_LIST
L_PAREN "("
COLUMN
NAME_REF
IDENT "a"
R_PAREN ")"
WHITESPACE " "
DEFERRABLE_CONSTRAINT_OPTION
DEFERRABLE_KW "deferrable"
WHITESPACE " "
INITIALLY_DEFERRED_CONSTRAINT_OPTION
INITIALLY_KW "initially"
WHITESPACE " "
DEFERRED_KW "deferred"
WHITESPACE "\n"
R_PAREN ")"
SEMICOLON ";"
WHITESPACE "\n\n"
CREATE_TABLE
COMMENT "-- primary key constraint"
WHITESPACE "\n"
CREATE_KW "create"
WHITESPACE " "
TABLE_KW "table"
WHITESPACE " "
PATH
PATH_SEGMENT
NAME
IDENT "t"
WHITESPACE " "
TABLE_ARG_LIST
L_PAREN "("
WHITESPACE "\n "
COLUMN
NAME
IDENT "a"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
INT_KW "int"
COMMA ","
WHITESPACE "\n "
COLUMN
NAME
IDENT "b"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
TEXT_KW "text"
COMMA ","
WHITESPACE "\n "
PRIMARY_KEY_CONSTRAINT
PRIMARY_KW "primary"
WHITESPACE " "
KEY_KW "key"
WHITESPACE " "
COLUMN_LIST
L_PAREN "("
COLUMN
NAME_REF
IDENT "a"
COMMA ","
WHITESPACE " "
COLUMN
NAME_REF
IDENT "b"
R_PAREN ")"
WHITESPACE " "
CONSTRAINT_INDEX_TABLESPACE
USING_KW "using"
WHITESPACE " "
INDEX_KW "index"
WHITESPACE " "
TABLESPACE_KW "tablespace"
WHITESPACE " "
NAME_REF
IDENT "bar"
WHITESPACE "\n"
R_PAREN ")"
SEMICOLON ";"
WHITESPACE "\n\n"
CREATE_TABLE
COMMENT "-- exclude constraint"
WHITESPACE "\n"
CREATE_KW "create"
WHITESPACE " "
TABLE_KW "table"
WHITESPACE " "
PATH
PATH_SEGMENT
NAME
IDENT "t"
WHITESPACE " "
TABLE_ARG_LIST
L_PAREN "("
WHITESPACE "\n "
COLUMN
NAME
IDENT "a"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
INT_KW "int"
COMMA ","
WHITESPACE "\n "
COLUMN
NAME
IDENT "b"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
TEXT_KW "text"
COMMA ","
WHITESPACE "\n "
EXCLUDE_CONSTRAINT
EXCLUDE_KW "exclude"
WHITESPACE " "
CONSTRAINT_INDEX_METHOD
USING_KW "using"
WHITESPACE " "
NAME_REF
IDENT "btree"
WHITESPACE " "
CONSTRAINT_EXCLUSION_LIST
L_PAREN "("
WHITESPACE " "
CONSTRAINT_EXCLUSION
NAME_REF
IDENT "a"
WHITESPACE " "
WITH_KW "with"
WHITESPACE " "
OP
PATH
PATH
PATH
PATH_SEGMENT
NAME_REF
IDENT "f"
DOT "."
PATH_SEGMENT
NAME_REF
IDENT "buzz"
DOT "."
PATH_SEGMENT
R_ANGLE ">"
WHITESPACE " "
R_PAREN ")"
WHITESPACE " "
WHERE_CONDITION_CLAUSE
WHERE_KW "where"
WHITESPACE " "
L_PAREN "("
WHITESPACE " "
BIN_EXPR
NAME_REF
IDENT "a"
WHITESPACE " "
R_ANGLE ">"
WHITESPACE " "
LITERAL
INT_NUMBER "10"
WHITESPACE " "
R_PAREN ")"
WHITESPACE "\n"
R_PAREN ")"
SEMICOLON ";"
WHITESPACE "\n\n"
CREATE_TABLE
COMMENT "-- exclude constraint multiple exclusions"
WHITESPACE "\n"
CREATE_KW "create"
WHITESPACE " "
TABLE_KW "table"
WHITESPACE " "
PATH
PATH_SEGMENT
NAME
IDENT "t"
WHITESPACE " "
TABLE_ARG_LIST
L_PAREN "("
WHITESPACE "\n "
COLUMN
NAME
IDENT "a"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
INT_KW "int"
COMMA ","
WHITESPACE "\n "
COLUMN
NAME
IDENT "b"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
TEXT_KW "text"
COMMA ","
WHITESPACE "\n "
EXCLUDE_CONSTRAINT
EXCLUDE_KW "exclude"
WHITESPACE " "
CONSTRAINT_INDEX_METHOD
USING_KW "using"
WHITESPACE " "
NAME_REF
IDENT "btree"
WHITESPACE " "
CONSTRAINT_EXCLUSION_LIST
L_PAREN "("
WHITESPACE " "
CONSTRAINT_EXCLUSION
NAME_REF
IDENT "a"
WHITESPACE " "
WITH_KW "with"
WHITESPACE " "
OP
PATH
PATH
PATH_SEGMENT
NAME_REF
IDENT "buzz"
DOT "."
PATH_SEGMENT
R_ANGLE ">"
COMMA ","
WHITESPACE " "
CONSTRAINT_EXCLUSION
NAME_REF
IDENT "b"
WHITESPACE " "
WITH_KW "with"
WHITESPACE " "
OP
L_ANGLE "<"
WHITESPACE " "
R_PAREN ")"
WHITESPACE " \n "
WHERE_CONDITION_CLAUSE
WHERE_KW "where"
WHITESPACE " "
L_PAREN "("
WHITESPACE " "
BIN_EXPR
BIN_EXPR
NAME_REF
IDENT "a"
WHITESPACE " "
R_ANGLE ">"
WHITESPACE " "
LITERAL
INT_NUMBER "10"
WHITESPACE " "
AND_KW "and"
WHITESPACE " "
BIN_EXPR
NAME_REF
IDENT "b"
WHITESPACE " "
LIKE_KW "like"
WHITESPACE " "
LITERAL
STRING "'%foo'"
WHITESPACE " "
R_PAREN ")"
WHITESPACE "\n"
R_PAREN ")"
SEMICOLON ";"
WHITESPACE "\n\n"
CREATE_TABLE
COMMENT "-- exclude constraint all clauses exclusions"
WHITESPACE "\n"
CREATE_KW "create"
WHITESPACE " "
TABLE_KW "table"
WHITESPACE " "
PATH
PATH_SEGMENT
NAME
IDENT "t"
WHITESPACE " "
TABLE_ARG_LIST
L_PAREN "("
WHITESPACE "\n "
COLUMN
NAME
IDENT "a"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
INT_KW "int"
COMMA ","
WHITESPACE "\n "
COLUMN
NAME
IDENT "b"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
TEXT_KW "text"
COMMA ","
WHITESPACE "\n "
EXCLUDE_CONSTRAINT
EXCLUDE_KW "exclude"
WHITESPACE " "
CONSTRAINT_INDEX_METHOD
USING_KW "using"
WHITESPACE " "
NAME_REF
IDENT "btree"
WHITESPACE " "
CONSTRAINT_EXCLUSION_LIST
L_PAREN "("
WHITESPACE " "
CONSTRAINT_EXCLUSION
NAME_REF
IDENT "a"
WHITESPACE " "
WITH_KW "with"
WHITESPACE " "
OP
R_ANGLE ">"
WHITESPACE " "
R_PAREN ")"
WHITESPACE " \n "
CONSTRAINT_INCLUDE_CLAUSE
INCLUDE_KW "include"
WHITESPACE " "
COLUMN_LIST
L_PAREN "("
COLUMN
NAME_REF
IDENT "a"
COMMA ","
WHITESPACE " "
COLUMN
NAME_REF
IDENT "b"
R_PAREN ")"
WHITESPACE "\n "
WITH_PARAMS
WITH_KW "with"
WHITESPACE " "
ATTRIBUTE_LIST
L_PAREN "("
ATTRIBUTE_OPTION
NAME
IDENT "x"
WHITESPACE " "
EQ "="
WHITESPACE " "
ATTRIBUTE_VALUE
LITERAL
INT_NUMBER "10"
COMMA ","
WHITESPACE " "
ATTRIBUTE_OPTION
NAME
IDENT "z"
R_PAREN ")"
WHITESPACE "\n "
CONSTRAINT_INDEX_TABLESPACE
USING_KW "using"
WHITESPACE " "
INDEX_KW "index"
WHITESPACE " "
TABLESPACE_KW "tablespace"
WHITESPACE " "
NAME_REF
IDENT "foo"
WHITESPACE "\n "
WHERE_CONDITION_CLAUSE
WHERE_KW "where"
WHITESPACE " "
L_PAREN "("
WHITESPACE " "
BIN_EXPR
BIN_EXPR
NAME_REF
IDENT "a"
WHITESPACE " "
R_ANGLE ">"
WHITESPACE " "
LITERAL
INT_NUMBER "10"
WHITESPACE " "
AND_KW "and"
WHITESPACE " "
BIN_EXPR
NAME_REF
IDENT "b"
WHITESPACE " "
LIKE_KW "like"
WHITESPACE " "
LITERAL
STRING "'%foo'"
WHITESPACE " "
R_PAREN ")"
WHITESPACE "\n "
DEFERRABLE_CONSTRAINT_OPTION
DEFERRABLE_KW "deferrable"
WHITESPACE "\n"
R_PAREN ")"
SEMICOLON ";"
WHITESPACE "\n\n"
CREATE_TABLE
COMMENT "-- foreign key constraint"
WHITESPACE "\n"
CREATE_KW "create"
WHITESPACE " "
TABLE_KW "table"
WHITESPACE " "
PATH
PATH_SEGMENT
NAME
IDENT "t"
WHITESPACE " "
TABLE_ARG_LIST
L_PAREN "("
WHITESPACE "\n "
COLUMN
NAME
IDENT "a"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
INT_KW "int"
COMMA ","
WHITESPACE "\n "
COLUMN
NAME
IDENT "b"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
TEXT_KW "text"
COMMA ","
WHITESPACE "\n "
FOREIGN_KEY_CONSTRAINT
FOREIGN_KW "foreign"
WHITESPACE " "
KEY_KW "key"
WHITESPACE " "
COLUMN_LIST
L_PAREN "("
WHITESPACE " "
COLUMN
NAME_REF
IDENT "a"
COMMA ","
WHITESPACE " "
COLUMN
NAME_REF
IDENT "b"
WHITESPACE " "
R_PAREN ")"
WHITESPACE " "
REFERENCES_KW "references"
WHITESPACE " "
PATH
PATH
PATH_SEGMENT
NAME_REF
IDENT "bizz"
DOT "."
PATH_SEGMENT
NAME_REF
IDENT "bar"
WHITESPACE " "
COLUMN_LIST
L_PAREN "("
WHITESPACE " "
COLUMN
NAME_REF
IDENT "a"
COMMA ","
WHITESPACE " "
COLUMN
NAME_REF
IDENT "b"
WHITESPACE " "
R_PAREN ")"
WHITESPACE "\n"
R_PAREN ")"
SEMICOLON ";"
WHITESPACE "\n\n"
CREATE_TABLE
COMMENT "-- everything"
WHITESPACE "\n"
CREATE_KW "create"
WHITESPACE " "
TABLE_KW "table"
WHITESPACE " "
PATH
PATH_SEGMENT
NAME
IDENT "t"
WHITESPACE " "
TABLE_ARG_LIST
L_PAREN "("
WHITESPACE "\n "
COLUMN
NAME
IDENT "a"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
INT_KW "int"
COMMA ","
WHITESPACE "\n "
COLUMN
NAME
IDENT "b"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
TEXT_KW "text"
COMMA ","
WHITESPACE "\n "
CHECK_CONSTRAINT
CONSTRAINT_NAME
CONSTRAINT_KW "constraint"
WHITESPACE " "
NAME
IDENT "foo"
WHITESPACE " "
CHECK_KW "check"
WHITESPACE " "
L_PAREN "("
BIN_EXPR
NAME_REF
IDENT "a"
WHITESPACE " "
R_ANGLE ">"
WHITESPACE " "
NAME_REF
IDENT "b"
R_PAREN ")"
WHITESPACE " "
NO_INHERIT
NO_KW "no"
WHITESPACE " "
INHERIT_KW "inherit"
COMMA ","
WHITESPACE "\n "
CHECK_CONSTRAINT
CHECK_KW "check"
WHITESPACE " "
L_PAREN "("
BIN_EXPR
NAME_REF
IDENT "a"
WHITESPACE " "
R_ANGLE ">"
WHITESPACE " "
NAME_REF
IDENT "b"
R_PAREN ")"
COMMA ","
WHITESPACE "\n "
UNIQUE_CONSTRAINT
UNIQUE_KW "unique"
WHITESPACE " "
NULLS_NOT_DISTINCT
NULLS_KW "nulls"
WHITESPACE " "
NOT_KW "not"
WHITESPACE " "
DISTINCT_KW "distinct"
WHITESPACE " "
COLUMN_LIST
L_PAREN "("
COLUMN
NAME_REF
IDENT "a"
COMMA ","
WHITESPACE " "
COLUMN
NAME_REF
IDENT "b"
R_PAREN ")"
WHITESPACE " "
WITH_PARAMS
WITH_KW "with"
WHITESPACE " "
ATTRIBUTE_LIST
L_PAREN "("
WHITESPACE " "
ATTRIBUTE_OPTION
NAME
IDENT "bar"
WHITESPACE " "
EQ "="
WHITESPACE " "
ATTRIBUTE_VALUE
LITERAL
FALSE_KW "false"
WHITESPACE " "
R_PAREN ")"
COMMA ","
WHITESPACE "\n "
PRIMARY_KEY_CONSTRAINT
PRIMARY_KW "primary"
WHITESPACE " "
KEY_KW "key"
WHITESPACE " "
COLUMN_LIST
L_PAREN "("
COLUMN
NAME_REF
IDENT "a"
COMMA ","
WHITESPACE " "
COLUMN
NAME_REF
IDENT "b"
R_PAREN ")"
WHITESPACE " "
CONSTRAINT_INDEX_TABLESPACE
USING_KW "using"
WHITESPACE " "
INDEX_KW "index"
WHITESPACE " "
TABLESPACE_KW "tablespace"
WHITESPACE " "
NAME_REF
IDENT "bar"
COMMA ","
WHITESPACE "\n "
EXCLUDE_CONSTRAINT
EXCLUDE_KW "exclude"
WHITESPACE " "
CONSTRAINT_INDEX_METHOD
USING_KW "using"
WHITESPACE " "
NAME_REF
IDENT "btree"
WHITESPACE " "
CONSTRAINT_EXCLUSION_LIST
L_PAREN "("
WHITESPACE " "
CONSTRAINT_EXCLUSION
NAME_REF
IDENT "a"
WHITESPACE " "
WITH_KW "with"
WHITESPACE " "
OP
PATH
PATH
PATH_SEGMENT
NAME_REF
IDENT "buzz"
DOT "."
PATH_SEGMENT
R_ANGLE ">"
WHITESPACE " "
R_PAREN ")"
WHITESPACE " "
WHERE_CONDITION_CLAUSE
WHERE_KW "where"
WHITESPACE " "
L_PAREN "("
WHITESPACE " "
BIN_EXPR
NAME_REF
IDENT "a"
WHITESPACE " "
R_ANGLE ">"
WHITESPACE " "
LITERAL
INT_NUMBER "10"
WHITESPACE " "
R_PAREN ")"
COMMA ","
WHITESPACE "\n "
FOREIGN_KEY_CONSTRAINT
FOREIGN_KW "foreign"
WHITESPACE " "
KEY_KW "key"
WHITESPACE " "
COLUMN_LIST
L_PAREN "("
WHITESPACE " "
COLUMN
NAME_REF
IDENT "a"
COMMA ","
WHITESPACE " "
COLUMN
NAME_REF
IDENT "b"
WHITESPACE " "
R_PAREN ")"
WHITESPACE " "
REFERENCES_KW "references"
WHITESPACE " "
PATH
PATH
PATH_SEGMENT
NAME_REF
IDENT "bizz"
DOT "."
PATH_SEGMENT
NAME_REF
IDENT "bar"
WHITESPACE " "
COLUMN_LIST
L_PAREN "("
WHITESPACE " "
COLUMN
NAME_REF
IDENT "a"
COMMA ","
WHITESPACE " "
COLUMN
NAME_REF
IDENT "b"
WHITESPACE " "
R_PAREN ")"
COMMA ","
WHITESPACE "\n "
UNIQUE_CONSTRAINT
UNIQUE_KW "unique"
WHITESPACE " "
COLUMN_LIST
L_PAREN "("
COLUMN
NAME_REF
IDENT "a"
R_PAREN ")"
WHITESPACE " "
DEFERRABLE_CONSTRAINT_OPTION
DEFERRABLE_KW "deferrable"
WHITESPACE " "
INITIALLY_DEFERRED_CONSTRAINT_OPTION
INITIALLY_KW "initially"
WHITESPACE " "
DEFERRED_KW "deferred"
COMMA ","
WHITESPACE "\n "
CHECK_CONSTRAINT
CHECK_KW "check"
WHITESPACE " "
L_PAREN "("
BIN_EXPR
BIN_EXPR
NAME_REF
IDENT "i"
WHITESPACE " "
STAR "*"
WHITESPACE " "
LITERAL
INT_NUMBER "2"
WHITESPACE " "
GTEQ ">="
WHITESPACE " "
NAME_REF
IDENT "o"
R_PAREN ")"
WHITESPACE " "
NOT_DEFERRABLE_CONSTRAINT_OPTION
NOT_KW "not"
WHITESPACE " "
DEFERRABLE_KW "deferrable"
WHITESPACE " "
INITIALLY_IMMEDIATE_CONSTRAINT_OPTION
INITIALLY_KW "initially"
WHITESPACE " "
IMMEDIATE_KW "immediate"
WHITESPACE "\n"
R_PAREN ")"
SEMICOLON ";"
WHITESPACE "\n\n\n"
CREATE_TABLE
COMMENT "-- multi_dimensional_arrays"
WHITESPACE "\n"
CREATE_KW "CREATE"
WHITESPACE " "
TABLE_KW "TABLE"
WHITESPACE " "
PATH
PATH_SEGMENT
NAME
IDENT "sal_emp"
WHITESPACE " "
TABLE_ARG_LIST
L_PAREN "("
WHITESPACE "\n "
COLUMN
NAME
NAME_KW "name"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
TEXT_KW "text"
COMMA ","
WHITESPACE "\n "
COLUMN
NAME
IDENT "pay_by_quarter"
WHITESPACE " "
ARRAY_TYPE
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
INTEGER_KW "integer"
L_BRACK "["
R_BRACK "]"
COMMA ","
WHITESPACE "\n "
COLUMN
NAME
IDENT "schedule"
WHITESPACE " "
ARRAY_TYPE
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
TEXT_KW "text"
L_BRACK "["
R_BRACK "]"
L_BRACK "["
R_BRACK "]"
WHITESPACE "\n"
R_PAREN ")"
SEMICOLON ";"
WHITESPACE "\n\n"
CREATE_TABLE
COMMENT "-- array_with_params"
WHITESPACE "\n"
CREATE_KW "CREATE"
WHITESPACE " "
TABLE_KW "TABLE"
WHITESPACE " "
PATH
PATH_SEGMENT
NAME
IDENT "tictactoe"
WHITESPACE " "
TABLE_ARG_LIST
L_PAREN "("
WHITESPACE "\n "
COLUMN
NAME
IDENT "squares"
WHITESPACE " "
ARRAY_TYPE
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
INTEGER_KW "integer"
L_BRACK "["
LITERAL
INT_NUMBER "3"
R_BRACK "]"
L_BRACK "["
LITERAL
INT_NUMBER "3"
R_BRACK "]"
WHITESPACE "\n"
R_PAREN ")"
SEMICOLON ";"
WHITESPACE "\n\n"
CREATE_TABLE
COMMENT "-- array_alt_syntax"
WHITESPACE "\n"
CREATE_KW "CREATE"
WHITESPACE " "
TABLE_KW "TABLE"
WHITESPACE " "
PATH
PATH_SEGMENT
NAME
IDENT "tictactoe"
WHITESPACE " "
TABLE_ARG_LIST
L_PAREN "("
WHITESPACE "\n "
COLUMN
NAME
IDENT "pay_by_quarter"
WHITESPACE " "
ARRAY_TYPE
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
INTEGER_KW "integer"
WHITESPACE " "
ARRAY_KW "ARRAY"
L_BRACK "["
LITERAL
INT_NUMBER "4"
R_BRACK "]"
COMMA ","
WHITESPACE "\n "
COLUMN
NAME
IDENT "pay_by_quarter"
WHITESPACE " "
ARRAY_TYPE
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
INTEGER_KW "integer"
WHITESPACE " "
ARRAY_KW "ARRAY"
WHITESPACE "\n"
R_PAREN ")"
SEMICOLON ";"
WHITESPACE "\n\n"
CREATE_TABLE
COMMENT "-- create_table_of_type"
WHITESPACE "\n"
COMMENT "-- simple"
WHITESPACE "\n"
CREATE_KW "create"
WHITESPACE " "
TABLE_KW "table"
WHITESPACE " "
PATH
PATH_SEGMENT
NAME
IDENT "t"
WHITESPACE " "
OF_TYPE
OF_KW "of"
WHITESPACE " "
PATH_TYPE
PATH
PATH
PATH_SEGMENT
NAME_REF
IDENT "bar"
DOT "."
PATH_SEGMENT
NAME_REF
IDENT "foo"
SEMICOLON ";"
WHITESPACE "\n\n"
CREATE_TABLE
COMMENT "-- with column defs"
WHITESPACE "\n"
CREATE_KW "create"
WHITESPACE " "
TABLE_KW "table"
WHITESPACE " "
PATH
PATH_SEGMENT
NAME
IDENT "t"
WHITESPACE " "
OF_TYPE
OF_KW "of"
WHITESPACE " "
PATH_TYPE
PATH
PATH
PATH_SEGMENT
NAME_REF
IDENT "bar"
DOT "."
PATH_SEGMENT
NAME_REF
IDENT "foo"
WHITESPACE " "
TABLE_ARG_LIST
L_PAREN "("
WHITESPACE "\n "
COLUMN
NAME
IDENT "a"
COMMA ","
WHITESPACE "\n "
COLUMN
NAME
IDENT "b"
WHITESPACE " "
NOT_NULL_CONSTRAINT
NOT_KW "not"
WHITESPACE " "
NULL_KW "null"
COMMA ","
WHITESPACE "\n "
COLUMN
NAME
IDENT "c"
WHITESPACE " "
WITH_OPTIONS
WITH_KW "with"
WHITESPACE " "
OPTIONS_KW "options"
WHITESPACE " "
NOT_NULL_CONSTRAINT
NOT_KW "not"
WHITESPACE " "
NULL_KW "null"
COMMA ","
WHITESPACE "\n "
CHECK_CONSTRAINT
CHECK_KW "check"
WHITESPACE " "
L_PAREN "("
BIN_EXPR
NAME_REF
IDENT "a"
WHITESPACE " "
R_ANGLE ">"
WHITESPACE " "
NAME_REF
IDENT "b"
R_PAREN ")"
WHITESPACE "\n"
R_PAREN ")"
SEMICOLON ";"
WHITESPACE "\n\n"
CREATE_TABLE
COMMENT "-- create_table_partition_of"
WHITESPACE "\n"
COMMENT "-- default"
WHITESPACE "\n"
CREATE_KW "create"
WHITESPACE " "
TABLE_KW "table"
WHITESPACE " "
PATH
PATH_SEGMENT
NAME
IDENT "t"
WHITESPACE "\n"
PARTITION_OF
PARTITION_KW "partition"
WHITESPACE " "
OF_KW "of"
WHITESPACE " "
PATH
PATH
PATH_SEGMENT
NAME_REF
IDENT "foo"
DOT "."
PATH_SEGMENT
NAME_REF
IDENT "bar"
WHITESPACE " "
PARTITION_DEFAULT
DEFAULT_KW "default"
SEMICOLON ";"
WHITESPACE "\n\n"
CREATE_TABLE
COMMENT "-- partition with some columns"
WHITESPACE "\n"
CREATE_KW "create"
WHITESPACE " "
TABLE_KW "table"
WHITESPACE " "
PATH
PATH_SEGMENT
NAME
IDENT "t"
WHITESPACE " "
PARTITION_OF
PARTITION_KW "partition"
WHITESPACE " "
OF_KW "of"
WHITESPACE " "
PATH
PATH
PATH_SEGMENT
NAME_REF
IDENT "foo"
DOT "."
PATH_SEGMENT
NAME_REF
IDENT "bar"
WHITESPACE " "
TABLE_ARG_LIST
L_PAREN "("
WHITESPACE "\n "
COLUMN
NAME
IDENT "a"
COMMA ","
WHITESPACE "\n "
COLUMN
NAME
IDENT "b"
WHITESPACE " "
WITH_OPTIONS
WITH_KW "with"
WHITESPACE " "
OPTIONS_KW "options"
COMMA ","
WHITESPACE "\n "
COLUMN
NAME
IDENT "c"
WHITESPACE " "
NOT_NULL_CONSTRAINT
NOT_KW "not"
WHITESPACE " "
NULL_KW "null"
WHITESPACE "\n"
R_PAREN ")"
WHITESPACE " "
PARTITION_DEFAULT
DEFAULT_KW "default"
SEMICOLON ";"
WHITESPACE "\n\n"
CREATE_TABLE
COMMENT "-- partition with"
WHITESPACE "\n"
CREATE_KW "create"
WHITESPACE " "
TABLE_KW "table"
WHITESPACE " "
PATH
PATH_SEGMENT
NAME
IDENT "t"
WHITESPACE "\n"
PARTITION_OF
PARTITION_KW "partition"
WHITESPACE " "
OF_KW "of"
WHITESPACE " "
PATH
PATH
PATH_SEGMENT
NAME_REF
IDENT "foo"
DOT "."
PATH_SEGMENT
NAME_REF
IDENT "bar"
WHITESPACE " \n"
PARTITION_FOR_VALUES_WITH
FOR_KW "for"
WHITESPACE " "
VALUES_KW "values"
WHITESPACE " "
WITH_KW "with"
WHITESPACE " "
L_PAREN "("
IDENT "modulus"
WHITESPACE " "
INT_NUMBER "1"
COMMA ","
WHITESPACE " "
IDENT "remainder"
WHITESPACE " "
INT_NUMBER "1"
R_PAREN ")"
SEMICOLON ";"
WHITESPACE "\n\n"
CREATE_TABLE
COMMENT "-- partition in"
WHITESPACE "\n"
CREATE_KW "create"
WHITESPACE " "
TABLE_KW "table"
WHITESPACE " "
PATH
PATH_SEGMENT
NAME
IDENT "t"
WHITESPACE "\n"
PARTITION_OF
PARTITION_KW "partition"
WHITESPACE " "
OF_KW "of"
WHITESPACE " "
PATH
PATH
PATH_SEGMENT
NAME_REF
IDENT "foo"
DOT "."
PATH_SEGMENT
NAME_REF
IDENT "bar"
WHITESPACE " \n"
PARTITION_FOR_VALUES_IN
FOR_KW "for"
WHITESPACE " "
VALUES_KW "values"
WHITESPACE " "
IN_KW "in"
WHITESPACE " "
L_PAREN "("
LITERAL
STRING "'bar'"
COMMA ","
WHITESPACE " "
LITERAL
STRING "'buzz'"
R_PAREN ")"
SEMICOLON ";"
WHITESPACE "\n\n"
CREATE_TABLE
COMMENT "-- partition from to"
WHITESPACE "\n"
CREATE_KW "create"
WHITESPACE " "
TABLE_KW "table"
WHITESPACE " "
PATH
PATH_SEGMENT
NAME
IDENT "t"
WHITESPACE "\n"
PARTITION_OF
PARTITION_KW "partition"
WHITESPACE " "
OF_KW "of"
WHITESPACE " "
PATH
PATH
PATH_SEGMENT
NAME_REF
IDENT "foo"
DOT "."
PATH_SEGMENT
NAME_REF
IDENT "bar"
WHITESPACE "\n"
PARTITION_FOR_VALUES_FROM
FOR_KW "for"
WHITESPACE " "
VALUES_KW "values"
WHITESPACE " "
FROM_KW "from"
WHITESPACE " "
L_PAREN "("
LITERAL
STRING "'bar'"
R_PAREN ")"
WHITESPACE " "
TO_KW "to"
WHITESPACE " "
L_PAREN "("
LITERAL
STRING "'buzz'"
R_PAREN ")"
SEMICOLON ";"
WHITESPACE "\n\n"
CREATE_TABLE
CREATE_KW "create"
WHITESPACE " "
TABLE_KW "table"
WHITESPACE " "
PATH
PATH_SEGMENT
NAME
IDENT "t"
WHITESPACE " "
PARTITION_OF
PARTITION_KW "partition"
WHITESPACE " "
OF_KW "of"
WHITESPACE " "
PATH
PATH_SEGMENT
NAME_REF
IDENT "u"
WHITESPACE " "
TABLE_ARG_LIST
L_PAREN "("
WHITESPACE "\n "
COLUMN
NAME
IDENT "c"
WHITESPACE " "
GENERATED_CONSTRAINT
GENERATED_KW "generated"
WHITESPACE " "
ALWAYS_KW "always"
WHITESPACE " "
AS_KW "as"
WHITESPACE " "
L_PAREN "("
BIN_EXPR
NAME_REF
IDENT "b"
WHITESPACE " "
STAR "*"
WHITESPACE " "
LITERAL
INT_NUMBER "2"
R_PAREN ")"
WHITESPACE " "
STORED_KW "stored"
WHITESPACE "\n"
R_PAREN ")"
WHITESPACE " "
PARTITION_FOR_VALUES_FROM
FOR_KW "for"
WHITESPACE " "
VALUES_KW "values"
WHITESPACE " "
FROM_KW "from"
WHITESPACE " "
L_PAREN "("
LITERAL
STRING "'2016-09-01'"
R_PAREN ")"
WHITESPACE " "
TO_KW "to"
WHITESPACE " "
L_PAREN "("
LITERAL
STRING "'2016-10-01'"
R_PAREN ")"
SEMICOLON ";"
WHITESPACE "\n\n"
CREATE_TABLE
COMMENT "-- missing entries"
WHITESPACE "\n"
CREATE_KW "create"
WHITESPACE " "
TABLE_KW "table"
WHITESPACE " "
PATH
PATH_SEGMENT
NAME
IDENT "t"
WHITESPACE " "
TABLE_ARG_LIST
L_PAREN "("
R_PAREN ")"
SEMICOLON ";"
WHITESPACE "\n\n"
CREATE_TABLE
COMMENT "-- regression"
WHITESPACE "\n"
CREATE_KW "CREATE"
WHITESPACE " "
TABLE_KW "TABLE"
WHITESPACE " "
PATH
PATH_SEGMENT
NAME
IDENT "sensors_uncompressed"
WHITESPACE " "
TABLE_ARG_LIST
L_PAREN "("
WHITESPACE "\n "
COLUMN
NAME
IDENT "sensor_id"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
INTEGER_KW "INTEGER"
COMMA ","
WHITESPACE " \n "
COLUMN
NAME
IDENT "ts"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
IDENT "TIMESTAMPTZ"
WHITESPACE " "
NOT_NULL_CONSTRAINT
NOT_KW "NOT"
WHITESPACE " "
NULL_KW "NULL"
COMMA ","
WHITESPACE " \n "
COLUMN
NAME
VALUE_KW "value"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
REAL_KW "REAL"
WHITESPACE "\n"
R_PAREN ")"
SEMICOLON ";"
WHITESPACE "\n\n"
CREATE_TABLE
COMMENT "-- compression method"
WHITESPACE "\n"
CREATE_KW "create"
WHITESPACE " "
TABLE_KW "table"
WHITESPACE " "
PATH
PATH_SEGMENT
NAME
IDENT "t"
WHITESPACE " "
TABLE_ARG_LIST
L_PAREN "("
WHITESPACE "\n "
COLUMN
NAME
IDENT "a"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
INT_KW "int"
WHITESPACE " "
COMPRESSION_METHOD
COMPRESSION_KW "compression"
WHITESPACE " "
IDENT "pglz"
COMMA ","
WHITESPACE "\n "
COLUMN
NAME
IDENT "b"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
INT_KW "int"
WHITESPACE " "
COMPRESSION_METHOD
COMPRESSION_KW "compression"
WHITESPACE " "
DEFAULT_KW "default"
WHITESPACE "\n"
R_PAREN ")"
SEMICOLON ";"
WHITESPACE "\n\n"
CREATE_TABLE
COMMENT "-- storage"
WHITESPACE "\n"
CREATE_KW "create"
WHITESPACE " "
TABLE_KW "table"
WHITESPACE " "
PATH
PATH_SEGMENT
NAME
IDENT "t"
WHITESPACE " "
TABLE_ARG_LIST
L_PAREN "("
WHITESPACE "\n "
COLUMN
NAME
IDENT "a"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
INT_KW "int"
WHITESPACE " "
STORAGE
STORAGE_KW "storage"
WHITESPACE " "
IDENT "plain"
COMMA ","
WHITESPACE "\n "
COLUMN
NAME
IDENT "b"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
INT_KW "int"
WHITESPACE " "
STORAGE
STORAGE_KW "storage"
WHITESPACE " "
EXTERNAL_KW "external"
COMMA ","
WHITESPACE "\n "
COLUMN
NAME
IDENT "c"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
INT_KW "int"
WHITESPACE " "
STORAGE
STORAGE_KW "storage"
WHITESPACE " "
IDENT "extended"
COMMA ","
WHITESPACE "\n "
COLUMN
NAME
IDENT "d"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
INT_KW "int"
WHITESPACE " "
STORAGE
STORAGE_KW "storage"
WHITESPACE " "
IDENT "main"
COMMA ","
WHITESPACE "\n "
COLUMN
NAME
IDENT "e"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
INT_KW "int"
WHITESPACE " "
STORAGE
STORAGE_KW "storage"
WHITESPACE " "
DEFAULT_KW "default"
WHITESPACE "\n"
R_PAREN ")"
SEMICOLON ";"
WHITESPACE "\n\n"
CREATE_TABLE
CREATE_KW "create"
WHITESPACE " "
TABLE_KW "table"
WHITESPACE " "
PATH
PATH_SEGMENT
NAME
OPERATOR_KW "operator"
WHITESPACE " "
TABLE_ARG_LIST
L_PAREN "("
WHITESPACE "\n "
COLUMN
NAME
IDENT "x"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
INT_KW "int"
WHITESPACE "\n"
R_PAREN ")"
SEMICOLON ";"
WHITESPACE "\n\n"
CREATE_TABLE
COMMENT "-- match partial not implemented yet"
WHITESPACE "\n"
CREATE_KW "create"
WHITESPACE " "
TABLE_KW "table"
WHITESPACE " "
PATH
PATH_SEGMENT
NAME
IDENT "t"
WHITESPACE " "
TABLE_ARG_LIST
L_PAREN "("
WHITESPACE "\n "
COLUMN
NAME
IDENT "a"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
INT_KW "int"
COMMA ","
WHITESPACE "\n "
COLUMN
NAME
IDENT "b"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
INT_KW "int"
WHITESPACE " "
REFERENCES_CONSTRAINT
REFERENCES_KW "references"
WHITESPACE " "
PATH
PATH
PATH_SEGMENT
NAME_REF
IDENT "foo"
DOT "."
PATH_SEGMENT
NAME_REF
IDENT "bar"
WHITESPACE " "
L_PAREN "("
WHITESPACE " "
NAME_REF
IDENT "bar"
WHITESPACE " "
R_PAREN ")"
WHITESPACE " "
MATCH_PARTIAL
MATCH_KW "match"
WHITESPACE " "
PARTIAL_KW "partial"
WHITESPACE "\n "
ON_DELETE_ACTION
ON_KW "on"
WHITESPACE " "
DELETE_KW "delete"
WHITESPACE " "
NO_ACTION
NO_KW "no"
WHITESPACE " "
ACTION_KW "action"
WHITESPACE "\n "
ON_UPDATE_ACTION
ON_KW "on"
WHITESPACE " "
UPDATE_KW "update"
WHITESPACE " "
SET_NULL_COLUMNS
SET_KW "set"
WHITESPACE " "
NULL_KW "null"
WHITESPACE " "
COLUMN_LIST
L_PAREN "("
WHITESPACE " "
COLUMN
NAME_REF
IDENT "a"
COMMA ","
WHITESPACE " "
COLUMN
NAME_REF
IDENT "b"
WHITESPACE " "
R_PAREN ")"
WHITESPACE "\n"
R_PAREN ")"
SEMICOLON ";"
WHITESPACE "\n\n\n"
CREATE_TABLE
COMMENT "-- temporal_foreign_key"
WHITESPACE "\n"
CREATE_KW "CREATE"
WHITESPACE " "
TABLE_KW "TABLE"
WHITESPACE " "
PATH
PATH_SEGMENT
NAME
IDENT "orders"
WHITESPACE " "
TABLE_ARG_LIST
L_PAREN "("
WHITESPACE "\n "
COLUMN
NAME
IDENT "id"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
IDENT "int8"
WHITESPACE " "
GENERATED_CONSTRAINT
GENERATED_KW "generated"
WHITESPACE " "
BY_KW "BY"
WHITESPACE " "
DEFAULT_KW "DEFAULT"
WHITESPACE " "
AS_KW "AS"
WHITESPACE " "
IDENTITY_KW "IDENTITY"
COMMA ","
WHITESPACE "\n "
COLUMN
NAME
IDENT "address_id"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
IDENT "int8"
WHITESPACE " "
NOT_NULL_CONSTRAINT
NOT_KW "NOT"
WHITESPACE " "
NULL_KW "NULL"
COMMA ","
WHITESPACE "\n "
COLUMN
NAME
IDENT "address_valid_at"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
IDENT "tstzrange"
WHITESPACE " "
NOT_NULL_CONSTRAINT
NOT_KW "NOT"
WHITESPACE " "
NULL_KW "NULL"
COMMA ","
WHITESPACE "\n "
COLUMN
NAME
CONTENT_KW "content"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
TEXT_KW "text"
COMMA ","
WHITESPACE "\n "
FOREIGN_KEY_CONSTRAINT
CONSTRAINT_NAME
CONSTRAINT_KW "CONSTRAINT"
WHITESPACE " "
NAME
IDENT "order_address"
WHITESPACE " "
FOREIGN_KW "FOREIGN"
WHITESPACE " "
KEY_KW "KEY"
WHITESPACE " "
COLUMN_LIST
L_PAREN "("
WHITESPACE " "
COLUMN
NAME_REF
IDENT "address_id"
COMMA ","
WHITESPACE " "
COLUMN
PERIOD_KW "PERIOD"
WHITESPACE " "
NAME_REF
IDENT "address_valid_at"
WHITESPACE " "
R_PAREN ")"
WHITESPACE " "
REFERENCES_KW "REFERENCES"
WHITESPACE " "
PATH
PATH_SEGMENT
NAME_REF
IDENT "addresses"
WHITESPACE " "
COLUMN_LIST
L_PAREN "("
WHITESPACE " "
COLUMN
NAME_REF
IDENT "id"
COMMA ","
WHITESPACE " "
COLUMN
PERIOD_KW "PERIOD"
WHITESPACE " "
NAME_REF
IDENT "valid_range"
WHITESPACE " "
R_PAREN ")"
WHITESPACE "\n"
R_PAREN ")"
SEMICOLON ";"
WHITESPACE "\n\n"
CREATE_TABLE
COMMENT "-- unique_constraint_without_overlaps"
WHITESPACE "\n"
CREATE_KW "create"
WHITESPACE " "
TABLE_KW "table"
WHITESPACE " "
PATH
PATH_SEGMENT
NAME
IDENT "t"
WHITESPACE " "
TABLE_ARG_LIST
L_PAREN "("
WHITESPACE "\n "
COLUMN
NAME
IDENT "a"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
INT_KW "int"
COMMA ","
WHITESPACE "\n "
COLUMN
NAME
IDENT "b"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
TEXT_KW "text"
COMMA ","
WHITESPACE "\n "
UNIQUE_CONSTRAINT
UNIQUE_KW "unique"
WHITESPACE " "
COLUMN_LIST
L_PAREN "("
COLUMN
NAME_REF
IDENT "a"
WHITESPACE " "
WITHOUT_KW "without"
WHITESPACE " "
OVERLAPS_KW "overlaps"
R_PAREN ")"
WHITESPACE "\n"
R_PAREN ")"
SEMICOLON ";"
WHITESPACE "\n\n\n"
CREATE_TABLE
COMMENT "-- primary key without overlaps"
WHITESPACE "\n"
CREATE_KW "create"
WHITESPACE " "
TABLE_KW "table"
WHITESPACE " "
PATH
PATH_SEGMENT
NAME
IDENT "t"
WHITESPACE " "
TABLE_ARG_LIST
L_PAREN "("
WHITESPACE "\n "
COLUMN
NAME
IDENT "a"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
TEXT_KW "text"
COMMA ","
WHITESPACE "\n "
COLUMN
NAME
IDENT "b"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
TEXT_KW "text"
COMMA ","
WHITESPACE "\n "
COLUMN
NAME
IDENT "c"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
TEXT_KW "text"
COMMA ","
WHITESPACE "\n "
PRIMARY_KEY_CONSTRAINT
CONSTRAINT_NAME
CONSTRAINT_KW "constraint"
WHITESPACE " "
NAME
IDENT "pk"
WHITESPACE " \n "
PRIMARY_KW "primary"
WHITESPACE " "
KEY_KW "key"
WHITESPACE " "
COLUMN_LIST
L_PAREN "("
COLUMN
NAME_REF
IDENT "a"
COMMA ","
WHITESPACE " "
COLUMN
NAME_REF
IDENT "b"
COMMA ","
WHITESPACE " "
COLUMN
NAME_REF
IDENT "c"
WHITESPACE " "
WITHOUT_KW "without"
WHITESPACE " "
OVERLAPS_KW "overlaps"
R_PAREN ")"
WHITESPACE "\n"
R_PAREN ")"
SEMICOLON ";"
WHITESPACE "\n\n"
CREATE_TABLE
COMMENT "-- temporal_primary_key"
WHITESPACE "\n"
CREATE_KW "CREATE"
WHITESPACE " "
TABLE_KW "TABLE"
WHITESPACE " "
PATH
PATH_SEGMENT
NAME
IDENT "addresses"
WHITESPACE " "
TABLE_ARG_LIST
L_PAREN "("
WHITESPACE "\n "
COLUMN
NAME
IDENT "id"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
IDENT "int8"
WHITESPACE " "
GENERATED_CONSTRAINT
GENERATED_KW "generated"
WHITESPACE " "
BY_KW "BY"
WHITESPACE " "
DEFAULT_KW "DEFAULT"
WHITESPACE " "
AS_KW "AS"
WHITESPACE " "
IDENTITY_KW "IDENTITY"
COMMA ","
WHITESPACE "\n "
COLUMN
NAME
IDENT "valid_range"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
IDENT "tstzrange"
WHITESPACE " "
NOT_NULL_CONSTRAINT
NOT_KW "NOT"
WHITESPACE " "
NULL_KW "NULL"
WHITESPACE " "
DEFAULT_CONSTRAINT
DEFAULT_KW "DEFAULT"
WHITESPACE " "
CALL_EXPR
NAME_REF
IDENT "tstzrange"
ARG_LIST
L_PAREN "("
CALL_EXPR
NAME_REF
IDENT "now"
ARG_LIST
L_PAREN "("
R_PAREN ")"
COMMA ","
WHITESPACE " "
LITERAL
STRING "'infinity'"
COMMA ","
WHITESPACE " "
LITERAL
STRING "'[)'"
R_PAREN ")"
COMMA ","
WHITESPACE "\n "
COLUMN
NAME
IDENT "recipient"
WHITESPACE " "
PATH_TYPE
PATH
PATH_SEGMENT
NAME_REF
TEXT_KW "text"
WHITESPACE " "
NOT_NULL_CONSTRAINT
NOT_KW "NOT"
WHITESPACE " "
NULL_KW "NULL"
COMMA ","
WHITESPACE "\n "
PRIMARY_KEY_CONSTRAINT
PRIMARY_KW "PRIMARY"
WHITESPACE " "
KEY_KW "KEY"
WHITESPACE " "
COLUMN_LIST
L_PAREN "("
COLUMN
NAME_REF
IDENT "id"
COMMA ","
WHITESPACE " "
COLUMN
NAME_REF
IDENT "valid_range"
WHITESPACE " "
WITHOUT_KW "WITHOUT"
WHITESPACE " "
OVERLAPS_KW "OVERLAPS"
R_PAREN ")"
WHITESPACE "\n"
R_PAREN ")"
SEMICOLON ";"
WHITESPACE "\n"