diff --git a/__fixtures__/proto/output/enums2int.json b/__fixtures__/proto/output/enums2int.json new file mode 100644 index 0000000..112f878 --- /dev/null +++ b/__fixtures__/proto/output/enums2int.json @@ -0,0 +1,1135 @@ +{ + "OverridingKind": { + "OVERRIDING_KIND_UNDEFINED": 0, + "OVERRIDING_NOT_SET": 1, + "OVERRIDING_USER_VALUE": 2, + "OVERRIDING_SYSTEM_VALUE": 3 + }, + "QuerySource": { + "QUERY_SOURCE_UNDEFINED": 0, + "QSRC_ORIGINAL": 1, + "QSRC_PARSER": 2, + "QSRC_INSTEAD_RULE": 3, + "QSRC_QUAL_INSTEAD_RULE": 4, + "QSRC_NON_INSTEAD_RULE": 5 + }, + "SortByDir": { + "SORT_BY_DIR_UNDEFINED": 0, + "SORTBY_DEFAULT": 1, + "SORTBY_ASC": 2, + "SORTBY_DESC": 3, + "SORTBY_USING": 4 + }, + "SortByNulls": { + "SORT_BY_NULLS_UNDEFINED": 0, + "SORTBY_NULLS_DEFAULT": 1, + "SORTBY_NULLS_FIRST": 2, + "SORTBY_NULLS_LAST": 3 + }, + "SetQuantifier": { + "SET_QUANTIFIER_UNDEFINED": 0, + "SET_QUANTIFIER_DEFAULT": 1, + "SET_QUANTIFIER_ALL": 2, + "SET_QUANTIFIER_DISTINCT": 3 + }, + "A_Expr_Kind": { + "A_EXPR_KIND_UNDEFINED": 0, + "AEXPR_OP": 1, + "AEXPR_OP_ANY": 2, + "AEXPR_OP_ALL": 3, + "AEXPR_DISTINCT": 4, + "AEXPR_NOT_DISTINCT": 5, + "AEXPR_NULLIF": 6, + "AEXPR_IN": 7, + "AEXPR_LIKE": 8, + "AEXPR_ILIKE": 9, + "AEXPR_SIMILAR": 10, + "AEXPR_BETWEEN": 11, + "AEXPR_NOT_BETWEEN": 12, + "AEXPR_BETWEEN_SYM": 13, + "AEXPR_NOT_BETWEEN_SYM": 14 + }, + "RoleSpecType": { + "ROLE_SPEC_TYPE_UNDEFINED": 0, + "ROLESPEC_CSTRING": 1, + "ROLESPEC_CURRENT_ROLE": 2, + "ROLESPEC_CURRENT_USER": 3, + "ROLESPEC_SESSION_USER": 4, + "ROLESPEC_PUBLIC": 5 + }, + "TableLikeOption": { + "TABLE_LIKE_OPTION_UNDEFINED": 0, + "CREATE_TABLE_LIKE_COMMENTS": 1, + "CREATE_TABLE_LIKE_COMPRESSION": 2, + "CREATE_TABLE_LIKE_CONSTRAINTS": 3, + "CREATE_TABLE_LIKE_DEFAULTS": 4, + "CREATE_TABLE_LIKE_GENERATED": 5, + "CREATE_TABLE_LIKE_IDENTITY": 6, + "CREATE_TABLE_LIKE_INDEXES": 7, + "CREATE_TABLE_LIKE_STATISTICS": 8, + "CREATE_TABLE_LIKE_STORAGE": 9, + "CREATE_TABLE_LIKE_ALL": 10 + }, + "DefElemAction": { + "DEF_ELEM_ACTION_UNDEFINED": 0, + "DEFELEM_UNSPEC": 1, + "DEFELEM_SET": 2, + "DEFELEM_ADD": 3, + "DEFELEM_DROP": 4 + }, + "PartitionStrategy": { + "PARTITION_STRATEGY_UNDEFINED": 0, + "PARTITION_STRATEGY_LIST": 1, + "PARTITION_STRATEGY_RANGE": 2, + "PARTITION_STRATEGY_HASH": 3 + }, + "PartitionRangeDatumKind": { + "PARTITION_RANGE_DATUM_KIND_UNDEFINED": 0, + "PARTITION_RANGE_DATUM_MINVALUE": 1, + "PARTITION_RANGE_DATUM_VALUE": 2, + "PARTITION_RANGE_DATUM_MAXVALUE": 3 + }, + "RTEKind": { + "RTEKIND_UNDEFINED": 0, + "RTE_RELATION": 1, + "RTE_SUBQUERY": 2, + "RTE_JOIN": 3, + "RTE_FUNCTION": 4, + "RTE_TABLEFUNC": 5, + "RTE_VALUES": 6, + "RTE_CTE": 7, + "RTE_NAMEDTUPLESTORE": 8, + "RTE_RESULT": 9 + }, + "WCOKind": { + "WCOKIND_UNDEFINED": 0, + "WCO_VIEW_CHECK": 1, + "WCO_RLS_INSERT_CHECK": 2, + "WCO_RLS_UPDATE_CHECK": 3, + "WCO_RLS_CONFLICT_CHECK": 4, + "WCO_RLS_MERGE_UPDATE_CHECK": 5, + "WCO_RLS_MERGE_DELETE_CHECK": 6 + }, + "GroupingSetKind": { + "GROUPING_SET_KIND_UNDEFINED": 0, + "GROUPING_SET_EMPTY": 1, + "GROUPING_SET_SIMPLE": 2, + "GROUPING_SET_ROLLUP": 3, + "GROUPING_SET_CUBE": 4, + "GROUPING_SET_SETS": 5 + }, + "CTEMaterialize": { + "CTEMATERIALIZE_UNDEFINED": 0, + "CTEMaterializeDefault": 1, + "CTEMaterializeAlways": 2, + "CTEMaterializeNever": 3 + }, + "SetOperation": { + "SET_OPERATION_UNDEFINED": 0, + "SETOP_NONE": 1, + "SETOP_UNION": 2, + "SETOP_INTERSECT": 3, + "SETOP_EXCEPT": 4 + }, + "ObjectType": { + "OBJECT_TYPE_UNDEFINED": 0, + "OBJECT_ACCESS_METHOD": 1, + "OBJECT_AGGREGATE": 2, + "OBJECT_AMOP": 3, + "OBJECT_AMPROC": 4, + "OBJECT_ATTRIBUTE": 5, + "OBJECT_CAST": 6, + "OBJECT_COLUMN": 7, + "OBJECT_COLLATION": 8, + "OBJECT_CONVERSION": 9, + "OBJECT_DATABASE": 10, + "OBJECT_DEFAULT": 11, + "OBJECT_DEFACL": 12, + "OBJECT_DOMAIN": 13, + "OBJECT_DOMCONSTRAINT": 14, + "OBJECT_EVENT_TRIGGER": 15, + "OBJECT_EXTENSION": 16, + "OBJECT_FDW": 17, + "OBJECT_FOREIGN_SERVER": 18, + "OBJECT_FOREIGN_TABLE": 19, + "OBJECT_FUNCTION": 20, + "OBJECT_INDEX": 21, + "OBJECT_LANGUAGE": 22, + "OBJECT_LARGEOBJECT": 23, + "OBJECT_MATVIEW": 24, + "OBJECT_OPCLASS": 25, + "OBJECT_OPERATOR": 26, + "OBJECT_OPFAMILY": 27, + "OBJECT_PARAMETER_ACL": 28, + "OBJECT_POLICY": 29, + "OBJECT_PROCEDURE": 30, + "OBJECT_PUBLICATION": 31, + "OBJECT_PUBLICATION_NAMESPACE": 32, + "OBJECT_PUBLICATION_REL": 33, + "OBJECT_ROLE": 34, + "OBJECT_ROUTINE": 35, + "OBJECT_RULE": 36, + "OBJECT_SCHEMA": 37, + "OBJECT_SEQUENCE": 38, + "OBJECT_SUBSCRIPTION": 39, + "OBJECT_STATISTIC_EXT": 40, + "OBJECT_TABCONSTRAINT": 41, + "OBJECT_TABLE": 42, + "OBJECT_TABLESPACE": 43, + "OBJECT_TRANSFORM": 44, + "OBJECT_TRIGGER": 45, + "OBJECT_TSCONFIGURATION": 46, + "OBJECT_TSDICTIONARY": 47, + "OBJECT_TSPARSER": 48, + "OBJECT_TSTEMPLATE": 49, + "OBJECT_TYPE": 50, + "OBJECT_USER_MAPPING": 51, + "OBJECT_VIEW": 52 + }, + "DropBehavior": { + "DROP_BEHAVIOR_UNDEFINED": 0, + "DROP_RESTRICT": 1, + "DROP_CASCADE": 2 + }, + "AlterTableType": { + "ALTER_TABLE_TYPE_UNDEFINED": 0, + "AT_AddColumn": 1, + "AT_AddColumnToView": 2, + "AT_ColumnDefault": 3, + "AT_CookedColumnDefault": 4, + "AT_DropNotNull": 5, + "AT_SetNotNull": 6, + "AT_DropExpression": 7, + "AT_CheckNotNull": 8, + "AT_SetStatistics": 9, + "AT_SetOptions": 10, + "AT_ResetOptions": 11, + "AT_SetStorage": 12, + "AT_SetCompression": 13, + "AT_DropColumn": 14, + "AT_AddIndex": 15, + "AT_ReAddIndex": 16, + "AT_AddConstraint": 17, + "AT_ReAddConstraint": 18, + "AT_ReAddDomainConstraint": 19, + "AT_AlterConstraint": 20, + "AT_ValidateConstraint": 21, + "AT_AddIndexConstraint": 22, + "AT_DropConstraint": 23, + "AT_ReAddComment": 24, + "AT_AlterColumnType": 25, + "AT_AlterColumnGenericOptions": 26, + "AT_ChangeOwner": 27, + "AT_ClusterOn": 28, + "AT_DropCluster": 29, + "AT_SetLogged": 30, + "AT_SetUnLogged": 31, + "AT_DropOids": 32, + "AT_SetAccessMethod": 33, + "AT_SetTableSpace": 34, + "AT_SetRelOptions": 35, + "AT_ResetRelOptions": 36, + "AT_ReplaceRelOptions": 37, + "AT_EnableTrig": 38, + "AT_EnableAlwaysTrig": 39, + "AT_EnableReplicaTrig": 40, + "AT_DisableTrig": 41, + "AT_EnableTrigAll": 42, + "AT_DisableTrigAll": 43, + "AT_EnableTrigUser": 44, + "AT_DisableTrigUser": 45, + "AT_EnableRule": 46, + "AT_EnableAlwaysRule": 47, + "AT_EnableReplicaRule": 48, + "AT_DisableRule": 49, + "AT_AddInherit": 50, + "AT_DropInherit": 51, + "AT_AddOf": 52, + "AT_DropOf": 53, + "AT_ReplicaIdentity": 54, + "AT_EnableRowSecurity": 55, + "AT_DisableRowSecurity": 56, + "AT_ForceRowSecurity": 57, + "AT_NoForceRowSecurity": 58, + "AT_GenericOptions": 59, + "AT_AttachPartition": 60, + "AT_DetachPartition": 61, + "AT_DetachPartitionFinalize": 62, + "AT_AddIdentity": 63, + "AT_SetIdentity": 64, + "AT_DropIdentity": 65, + "AT_ReAddStatistics": 66 + }, + "GrantTargetType": { + "GRANT_TARGET_TYPE_UNDEFINED": 0, + "ACL_TARGET_OBJECT": 1, + "ACL_TARGET_ALL_IN_SCHEMA": 2, + "ACL_TARGET_DEFAULTS": 3 + }, + "VariableSetKind": { + "VARIABLE_SET_KIND_UNDEFINED": 0, + "VAR_SET_VALUE": 1, + "VAR_SET_DEFAULT": 2, + "VAR_SET_CURRENT": 3, + "VAR_SET_MULTI": 4, + "VAR_RESET": 5, + "VAR_RESET_ALL": 6 + }, + "ConstrType": { + "CONSTR_TYPE_UNDEFINED": 0, + "CONSTR_NULL": 1, + "CONSTR_NOTNULL": 2, + "CONSTR_DEFAULT": 3, + "CONSTR_IDENTITY": 4, + "CONSTR_GENERATED": 5, + "CONSTR_CHECK": 6, + "CONSTR_PRIMARY": 7, + "CONSTR_UNIQUE": 8, + "CONSTR_EXCLUSION": 9, + "CONSTR_FOREIGN": 10, + "CONSTR_ATTR_DEFERRABLE": 11, + "CONSTR_ATTR_NOT_DEFERRABLE": 12, + "CONSTR_ATTR_DEFERRED": 13, + "CONSTR_ATTR_IMMEDIATE": 14 + }, + "ImportForeignSchemaType": { + "IMPORT_FOREIGN_SCHEMA_TYPE_UNDEFINED": 0, + "FDW_IMPORT_SCHEMA_ALL": 1, + "FDW_IMPORT_SCHEMA_LIMIT_TO": 2, + "FDW_IMPORT_SCHEMA_EXCEPT": 3 + }, + "RoleStmtType": { + "ROLE_STMT_TYPE_UNDEFINED": 0, + "ROLESTMT_ROLE": 1, + "ROLESTMT_USER": 2, + "ROLESTMT_GROUP": 3 + }, + "FetchDirection": { + "FETCH_DIRECTION_UNDEFINED": 0, + "FETCH_FORWARD": 1, + "FETCH_BACKWARD": 2, + "FETCH_ABSOLUTE": 3, + "FETCH_RELATIVE": 4 + }, + "FunctionParameterMode": { + "FUNCTION_PARAMETER_MODE_UNDEFINED": 0, + "FUNC_PARAM_IN": 1, + "FUNC_PARAM_OUT": 2, + "FUNC_PARAM_INOUT": 3, + "FUNC_PARAM_VARIADIC": 4, + "FUNC_PARAM_TABLE": 5, + "FUNC_PARAM_DEFAULT": 6 + }, + "TransactionStmtKind": { + "TRANSACTION_STMT_KIND_UNDEFINED": 0, + "TRANS_STMT_BEGIN": 1, + "TRANS_STMT_START": 2, + "TRANS_STMT_COMMIT": 3, + "TRANS_STMT_ROLLBACK": 4, + "TRANS_STMT_SAVEPOINT": 5, + "TRANS_STMT_RELEASE": 6, + "TRANS_STMT_ROLLBACK_TO": 7, + "TRANS_STMT_PREPARE": 8, + "TRANS_STMT_COMMIT_PREPARED": 9, + "TRANS_STMT_ROLLBACK_PREPARED": 10 + }, + "ViewCheckOption": { + "VIEW_CHECK_OPTION_UNDEFINED": 0, + "NO_CHECK_OPTION": 1, + "LOCAL_CHECK_OPTION": 2, + "CASCADED_CHECK_OPTION": 3 + }, + "DiscardMode": { + "DISCARD_MODE_UNDEFINED": 0, + "DISCARD_ALL": 1, + "DISCARD_PLANS": 2, + "DISCARD_SEQUENCES": 3, + "DISCARD_TEMP": 4 + }, + "ReindexObjectType": { + "REINDEX_OBJECT_TYPE_UNDEFINED": 0, + "REINDEX_OBJECT_INDEX": 1, + "REINDEX_OBJECT_TABLE": 2, + "REINDEX_OBJECT_SCHEMA": 3, + "REINDEX_OBJECT_SYSTEM": 4, + "REINDEX_OBJECT_DATABASE": 5 + }, + "AlterTSConfigType": { + "ALTER_TSCONFIG_TYPE_UNDEFINED": 0, + "ALTER_TSCONFIG_ADD_MAPPING": 1, + "ALTER_TSCONFIG_ALTER_MAPPING_FOR_TOKEN": 2, + "ALTER_TSCONFIG_REPLACE_DICT": 3, + "ALTER_TSCONFIG_REPLACE_DICT_FOR_TOKEN": 4, + "ALTER_TSCONFIG_DROP_MAPPING": 5 + }, + "PublicationObjSpecType": { + "PUBLICATION_OBJ_SPEC_TYPE_UNDEFINED": 0, + "PUBLICATIONOBJ_TABLE": 1, + "PUBLICATIONOBJ_TABLES_IN_SCHEMA": 2, + "PUBLICATIONOBJ_TABLES_IN_CUR_SCHEMA": 3, + "PUBLICATIONOBJ_CONTINUATION": 4 + }, + "AlterPublicationAction": { + "ALTER_PUBLICATION_ACTION_UNDEFINED": 0, + "AP_AddObjects": 1, + "AP_DropObjects": 2, + "AP_SetObjects": 3 + }, + "AlterSubscriptionType": { + "ALTER_SUBSCRIPTION_TYPE_UNDEFINED": 0, + "ALTER_SUBSCRIPTION_OPTIONS": 1, + "ALTER_SUBSCRIPTION_CONNECTION": 2, + "ALTER_SUBSCRIPTION_SET_PUBLICATION": 3, + "ALTER_SUBSCRIPTION_ADD_PUBLICATION": 4, + "ALTER_SUBSCRIPTION_DROP_PUBLICATION": 5, + "ALTER_SUBSCRIPTION_REFRESH": 6, + "ALTER_SUBSCRIPTION_ENABLED": 7, + "ALTER_SUBSCRIPTION_SKIP": 8 + }, + "OnCommitAction": { + "ON_COMMIT_ACTION_UNDEFINED": 0, + "ONCOMMIT_NOOP": 1, + "ONCOMMIT_PRESERVE_ROWS": 2, + "ONCOMMIT_DELETE_ROWS": 3, + "ONCOMMIT_DROP": 4 + }, + "ParamKind": { + "PARAM_KIND_UNDEFINED": 0, + "PARAM_EXTERN": 1, + "PARAM_EXEC": 2, + "PARAM_SUBLINK": 3, + "PARAM_MULTIEXPR": 4 + }, + "CoercionContext": { + "COERCION_CONTEXT_UNDEFINED": 0, + "COERCION_IMPLICIT": 1, + "COERCION_ASSIGNMENT": 2, + "COERCION_PLPGSQL": 3, + "COERCION_EXPLICIT": 4 + }, + "CoercionForm": { + "COERCION_FORM_UNDEFINED": 0, + "COERCE_EXPLICIT_CALL": 1, + "COERCE_EXPLICIT_CAST": 2, + "COERCE_IMPLICIT_CAST": 3, + "COERCE_SQL_SYNTAX": 4 + }, + "BoolExprType": { + "BOOL_EXPR_TYPE_UNDEFINED": 0, + "AND_EXPR": 1, + "OR_EXPR": 2, + "NOT_EXPR": 3 + }, + "SubLinkType": { + "SUB_LINK_TYPE_UNDEFINED": 0, + "EXISTS_SUBLINK": 1, + "ALL_SUBLINK": 2, + "ANY_SUBLINK": 3, + "ROWCOMPARE_SUBLINK": 4, + "EXPR_SUBLINK": 5, + "MULTIEXPR_SUBLINK": 6, + "ARRAY_SUBLINK": 7, + "CTE_SUBLINK": 8 + }, + "RowCompareType": { + "ROW_COMPARE_TYPE_UNDEFINED": 0, + "ROWCOMPARE_LT": 1, + "ROWCOMPARE_LE": 2, + "ROWCOMPARE_EQ": 3, + "ROWCOMPARE_GE": 4, + "ROWCOMPARE_GT": 5, + "ROWCOMPARE_NE": 6 + }, + "MinMaxOp": { + "MIN_MAX_OP_UNDEFINED": 0, + "IS_GREATEST": 1, + "IS_LEAST": 2 + }, + "SQLValueFunctionOp": { + "SQLVALUE_FUNCTION_OP_UNDEFINED": 0, + "SVFOP_CURRENT_DATE": 1, + "SVFOP_CURRENT_TIME": 2, + "SVFOP_CURRENT_TIME_N": 3, + "SVFOP_CURRENT_TIMESTAMP": 4, + "SVFOP_CURRENT_TIMESTAMP_N": 5, + "SVFOP_LOCALTIME": 6, + "SVFOP_LOCALTIME_N": 7, + "SVFOP_LOCALTIMESTAMP": 8, + "SVFOP_LOCALTIMESTAMP_N": 9, + "SVFOP_CURRENT_ROLE": 10, + "SVFOP_CURRENT_USER": 11, + "SVFOP_USER": 12, + "SVFOP_SESSION_USER": 13, + "SVFOP_CURRENT_CATALOG": 14, + "SVFOP_CURRENT_SCHEMA": 15 + }, + "XmlExprOp": { + "XML_EXPR_OP_UNDEFINED": 0, + "IS_XMLCONCAT": 1, + "IS_XMLELEMENT": 2, + "IS_XMLFOREST": 3, + "IS_XMLPARSE": 4, + "IS_XMLPI": 5, + "IS_XMLROOT": 6, + "IS_XMLSERIALIZE": 7, + "IS_DOCUMENT": 8 + }, + "XmlOptionType": { + "XML_OPTION_TYPE_UNDEFINED": 0, + "XMLOPTION_DOCUMENT": 1, + "XMLOPTION_CONTENT": 2 + }, + "JsonEncoding": { + "JSON_ENCODING_UNDEFINED": 0, + "JS_ENC_DEFAULT": 1, + "JS_ENC_UTF8": 2, + "JS_ENC_UTF16": 3, + "JS_ENC_UTF32": 4 + }, + "JsonFormatType": { + "JSON_FORMAT_TYPE_UNDEFINED": 0, + "JS_FORMAT_DEFAULT": 1, + "JS_FORMAT_JSON": 2, + "JS_FORMAT_JSONB": 3 + }, + "JsonConstructorType": { + "JSON_CONSTRUCTOR_TYPE_UNDEFINED": 0, + "JSCTOR_JSON_OBJECT": 1, + "JSCTOR_JSON_ARRAY": 2, + "JSCTOR_JSON_OBJECTAGG": 3, + "JSCTOR_JSON_ARRAYAGG": 4 + }, + "JsonValueType": { + "JSON_VALUE_TYPE_UNDEFINED": 0, + "JS_TYPE_ANY": 1, + "JS_TYPE_OBJECT": 2, + "JS_TYPE_ARRAY": 3, + "JS_TYPE_SCALAR": 4 + }, + "NullTestType": { + "NULL_TEST_TYPE_UNDEFINED": 0, + "IS_NULL": 1, + "IS_NOT_NULL": 2 + }, + "BoolTestType": { + "BOOL_TEST_TYPE_UNDEFINED": 0, + "IS_TRUE": 1, + "IS_NOT_TRUE": 2, + "IS_FALSE": 3, + "IS_NOT_FALSE": 4, + "IS_UNKNOWN": 5, + "IS_NOT_UNKNOWN": 6 + }, + "CmdType": { + "CMD_TYPE_UNDEFINED": 0, + "CMD_UNKNOWN": 1, + "CMD_SELECT": 2, + "CMD_UPDATE": 3, + "CMD_INSERT": 4, + "CMD_DELETE": 5, + "CMD_MERGE": 6, + "CMD_UTILITY": 7, + "CMD_NOTHING": 8 + }, + "JoinType": { + "JOIN_TYPE_UNDEFINED": 0, + "JOIN_INNER": 1, + "JOIN_LEFT": 2, + "JOIN_FULL": 3, + "JOIN_RIGHT": 4, + "JOIN_SEMI": 5, + "JOIN_ANTI": 6, + "JOIN_RIGHT_ANTI": 7, + "JOIN_UNIQUE_OUTER": 8, + "JOIN_UNIQUE_INNER": 9 + }, + "AggStrategy": { + "AGG_STRATEGY_UNDEFINED": 0, + "AGG_PLAIN": 1, + "AGG_SORTED": 2, + "AGG_HASHED": 3, + "AGG_MIXED": 4 + }, + "AggSplit": { + "AGG_SPLIT_UNDEFINED": 0, + "AGGSPLIT_SIMPLE": 1, + "AGGSPLIT_INITIAL_SERIAL": 2, + "AGGSPLIT_FINAL_DESERIAL": 3 + }, + "SetOpCmd": { + "SET_OP_CMD_UNDEFINED": 0, + "SETOPCMD_INTERSECT": 1, + "SETOPCMD_INTERSECT_ALL": 2, + "SETOPCMD_EXCEPT": 3, + "SETOPCMD_EXCEPT_ALL": 4 + }, + "SetOpStrategy": { + "SET_OP_STRATEGY_UNDEFINED": 0, + "SETOP_SORTED": 1, + "SETOP_HASHED": 2 + }, + "OnConflictAction": { + "ON_CONFLICT_ACTION_UNDEFINED": 0, + "ONCONFLICT_NONE": 1, + "ONCONFLICT_NOTHING": 2, + "ONCONFLICT_UPDATE": 3 + }, + "LimitOption": { + "LIMIT_OPTION_UNDEFINED": 0, + "LIMIT_OPTION_DEFAULT": 1, + "LIMIT_OPTION_COUNT": 2, + "LIMIT_OPTION_WITH_TIES": 3 + }, + "LockClauseStrength": { + "LOCK_CLAUSE_STRENGTH_UNDEFINED": 0, + "LCS_NONE": 1, + "LCS_FORKEYSHARE": 2, + "LCS_FORSHARE": 3, + "LCS_FORNOKEYUPDATE": 4, + "LCS_FORUPDATE": 5 + }, + "LockWaitPolicy": { + "LOCK_WAIT_POLICY_UNDEFINED": 0, + "LockWaitBlock": 1, + "LockWaitSkip": 2, + "LockWaitError": 3 + }, + "LockTupleMode": { + "LOCK_TUPLE_MODE_UNDEFINED": 0, + "LockTupleKeyShare": 1, + "LockTupleShare": 2, + "LockTupleNoKeyExclusive": 3, + "LockTupleExclusive": 4 + }, + "KeywordKind": { + "NO_KEYWORD": 0, + "UNRESERVED_KEYWORD": 1, + "COL_NAME_KEYWORD": 2, + "TYPE_FUNC_NAME_KEYWORD": 3, + "RESERVED_KEYWORD": 4 + }, + "Token": { + "NUL": 0, + "ASCII_36": 36, + "ASCII_37": 37, + "ASCII_40": 40, + "ASCII_41": 41, + "ASCII_42": 42, + "ASCII_43": 43, + "ASCII_44": 44, + "ASCII_45": 45, + "ASCII_46": 46, + "ASCII_47": 47, + "ASCII_58": 58, + "ASCII_59": 59, + "ASCII_60": 60, + "ASCII_61": 61, + "ASCII_62": 62, + "ASCII_63": 63, + "ASCII_91": 91, + "ASCII_92": 92, + "ASCII_93": 93, + "ASCII_94": 94, + "IDENT": 258, + "UIDENT": 259, + "FCONST": 260, + "SCONST": 261, + "USCONST": 262, + "BCONST": 263, + "XCONST": 264, + "Op": 265, + "ICONST": 266, + "PARAM": 267, + "TYPECAST": 268, + "DOT_DOT": 269, + "COLON_EQUALS": 270, + "EQUALS_GREATER": 271, + "LESS_EQUALS": 272, + "GREATER_EQUALS": 273, + "NOT_EQUALS": 274, + "SQL_COMMENT": 275, + "C_COMMENT": 276, + "ABORT_P": 277, + "ABSENT": 278, + "ABSOLUTE_P": 279, + "ACCESS": 280, + "ACTION": 281, + "ADD_P": 282, + "ADMIN": 283, + "AFTER": 284, + "AGGREGATE": 285, + "ALL": 286, + "ALSO": 287, + "ALTER": 288, + "ALWAYS": 289, + "ANALYSE": 290, + "ANALYZE": 291, + "AND": 292, + "ANY": 293, + "ARRAY": 294, + "AS": 295, + "ASC": 296, + "ASENSITIVE": 297, + "ASSERTION": 298, + "ASSIGNMENT": 299, + "ASYMMETRIC": 300, + "ATOMIC": 301, + "AT": 302, + "ATTACH": 303, + "ATTRIBUTE": 304, + "AUTHORIZATION": 305, + "BACKWARD": 306, + "BEFORE": 307, + "BEGIN_P": 308, + "BETWEEN": 309, + "BIGINT": 310, + "BINARY": 311, + "BIT": 312, + "BOOLEAN_P": 313, + "BOTH": 314, + "BREADTH": 315, + "BY": 316, + "CACHE": 317, + "CALL": 318, + "CALLED": 319, + "CASCADE": 320, + "CASCADED": 321, + "CASE": 322, + "CAST": 323, + "CATALOG_P": 324, + "CHAIN": 325, + "CHAR_P": 326, + "CHARACTER": 327, + "CHARACTERISTICS": 328, + "CHECK": 329, + "CHECKPOINT": 330, + "CLASS": 331, + "CLOSE": 332, + "CLUSTER": 333, + "COALESCE": 334, + "COLLATE": 335, + "COLLATION": 336, + "COLUMN": 337, + "COLUMNS": 338, + "COMMENT": 339, + "COMMENTS": 340, + "COMMIT": 341, + "COMMITTED": 342, + "COMPRESSION": 343, + "CONCURRENTLY": 344, + "CONFIGURATION": 345, + "CONFLICT": 346, + "CONNECTION": 347, + "CONSTRAINT": 348, + "CONSTRAINTS": 349, + "CONTENT_P": 350, + "CONTINUE_P": 351, + "CONVERSION_P": 352, + "COPY": 353, + "COST": 354, + "CREATE": 355, + "CROSS": 356, + "CSV": 357, + "CUBE": 358, + "CURRENT_P": 359, + "CURRENT_CATALOG": 360, + "CURRENT_DATE": 361, + "CURRENT_ROLE": 362, + "CURRENT_SCHEMA": 363, + "CURRENT_TIME": 364, + "CURRENT_TIMESTAMP": 365, + "CURRENT_USER": 366, + "CURSOR": 367, + "CYCLE": 368, + "DATA_P": 369, + "DATABASE": 370, + "DAY_P": 371, + "DEALLOCATE": 372, + "DEC": 373, + "DECIMAL_P": 374, + "DECLARE": 375, + "DEFAULT": 376, + "DEFAULTS": 377, + "DEFERRABLE": 378, + "DEFERRED": 379, + "DEFINER": 380, + "DELETE_P": 381, + "DELIMITER": 382, + "DELIMITERS": 383, + "DEPENDS": 384, + "DEPTH": 385, + "DESC": 386, + "DETACH": 387, + "DICTIONARY": 388, + "DISABLE_P": 389, + "DISCARD": 390, + "DISTINCT": 391, + "DO": 392, + "DOCUMENT_P": 393, + "DOMAIN_P": 394, + "DOUBLE_P": 395, + "DROP": 396, + "EACH": 397, + "ELSE": 398, + "ENABLE_P": 399, + "ENCODING": 400, + "ENCRYPTED": 401, + "END_P": 402, + "ENUM_P": 403, + "ESCAPE": 404, + "EVENT": 405, + "EXCEPT": 406, + "EXCLUDE": 407, + "EXCLUDING": 408, + "EXCLUSIVE": 409, + "EXECUTE": 410, + "EXISTS": 411, + "EXPLAIN": 412, + "EXPRESSION": 413, + "EXTENSION": 414, + "EXTERNAL": 415, + "EXTRACT": 416, + "FALSE_P": 417, + "FAMILY": 418, + "FETCH": 419, + "FILTER": 420, + "FINALIZE": 421, + "FIRST_P": 422, + "FLOAT_P": 423, + "FOLLOWING": 424, + "FOR": 425, + "FORCE": 426, + "FOREIGN": 427, + "FORMAT": 428, + "FORWARD": 429, + "FREEZE": 430, + "FROM": 431, + "FULL": 432, + "FUNCTION": 433, + "FUNCTIONS": 434, + "GENERATED": 435, + "GLOBAL": 436, + "GRANT": 437, + "GRANTED": 438, + "GREATEST": 439, + "GROUP_P": 440, + "GROUPING": 441, + "GROUPS": 442, + "HANDLER": 443, + "HAVING": 444, + "HEADER_P": 445, + "HOLD": 446, + "HOUR_P": 447, + "IDENTITY_P": 448, + "IF_P": 449, + "ILIKE": 450, + "IMMEDIATE": 451, + "IMMUTABLE": 452, + "IMPLICIT_P": 453, + "IMPORT_P": 454, + "IN_P": 455, + "INCLUDE": 456, + "INCLUDING": 457, + "INCREMENT": 458, + "INDENT": 459, + "INDEX": 460, + "INDEXES": 461, + "INHERIT": 462, + "INHERITS": 463, + "INITIALLY": 464, + "INLINE_P": 465, + "INNER_P": 466, + "INOUT": 467, + "INPUT_P": 468, + "INSENSITIVE": 469, + "INSERT": 470, + "INSTEAD": 471, + "INT_P": 472, + "INTEGER": 473, + "INTERSECT": 474, + "INTERVAL": 475, + "INTO": 476, + "INVOKER": 477, + "IS": 478, + "ISNULL": 479, + "ISOLATION": 480, + "JOIN": 481, + "JSON": 482, + "JSON_ARRAY": 483, + "JSON_ARRAYAGG": 484, + "JSON_OBJECT": 485, + "JSON_OBJECTAGG": 486, + "KEY": 487, + "KEYS": 488, + "LABEL": 489, + "LANGUAGE": 490, + "LARGE_P": 491, + "LAST_P": 492, + "LATERAL_P": 493, + "LEADING": 494, + "LEAKPROOF": 495, + "LEAST": 496, + "LEFT": 497, + "LEVEL": 498, + "LIKE": 499, + "LIMIT": 500, + "LISTEN": 501, + "LOAD": 502, + "LOCAL": 503, + "LOCALTIME": 504, + "LOCALTIMESTAMP": 505, + "LOCATION": 506, + "LOCK_P": 507, + "LOCKED": 508, + "LOGGED": 509, + "MAPPING": 510, + "MATCH": 511, + "MATCHED": 512, + "MATERIALIZED": 513, + "MAXVALUE": 514, + "MERGE": 515, + "METHOD": 516, + "MINUTE_P": 517, + "MINVALUE": 518, + "MODE": 519, + "MONTH_P": 520, + "MOVE": 521, + "NAME_P": 522, + "NAMES": 523, + "NATIONAL": 524, + "NATURAL": 525, + "NCHAR": 526, + "NEW": 527, + "NEXT": 528, + "NFC": 529, + "NFD": 530, + "NFKC": 531, + "NFKD": 532, + "NO": 533, + "NONE": 534, + "NORMALIZE": 535, + "NORMALIZED": 536, + "NOT": 537, + "NOTHING": 538, + "NOTIFY": 539, + "NOTNULL": 540, + "NOWAIT": 541, + "NULL_P": 542, + "NULLIF": 543, + "NULLS_P": 544, + "NUMERIC": 545, + "OBJECT_P": 546, + "OF": 547, + "OFF": 548, + "OFFSET": 549, + "OIDS": 550, + "OLD": 551, + "ON": 552, + "ONLY": 553, + "OPERATOR": 554, + "OPTION": 555, + "OPTIONS": 556, + "OR": 557, + "ORDER": 558, + "ORDINALITY": 559, + "OTHERS": 560, + "OUT_P": 561, + "OUTER_P": 562, + "OVER": 563, + "OVERLAPS": 564, + "OVERLAY": 565, + "OVERRIDING": 566, + "OWNED": 567, + "OWNER": 568, + "PARALLEL": 569, + "PARAMETER": 570, + "PARSER": 571, + "PARTIAL": 572, + "PARTITION": 573, + "PASSING": 574, + "PASSWORD": 575, + "PLACING": 576, + "PLANS": 577, + "POLICY": 578, + "POSITION": 579, + "PRECEDING": 580, + "PRECISION": 581, + "PRESERVE": 582, + "PREPARE": 583, + "PREPARED": 584, + "PRIMARY": 585, + "PRIOR": 586, + "PRIVILEGES": 587, + "PROCEDURAL": 588, + "PROCEDURE": 589, + "PROCEDURES": 590, + "PROGRAM": 591, + "PUBLICATION": 592, + "QUOTE": 593, + "RANGE": 594, + "READ": 595, + "REAL": 596, + "REASSIGN": 597, + "RECHECK": 598, + "RECURSIVE": 599, + "REF_P": 600, + "REFERENCES": 601, + "REFERENCING": 602, + "REFRESH": 603, + "REINDEX": 604, + "RELATIVE_P": 605, + "RELEASE": 606, + "RENAME": 607, + "REPEATABLE": 608, + "REPLACE": 609, + "REPLICA": 610, + "RESET": 611, + "RESTART": 612, + "RESTRICT": 613, + "RETURN": 614, + "RETURNING": 615, + "RETURNS": 616, + "REVOKE": 617, + "RIGHT": 618, + "ROLE": 619, + "ROLLBACK": 620, + "ROLLUP": 621, + "ROUTINE": 622, + "ROUTINES": 623, + "ROW": 624, + "ROWS": 625, + "RULE": 626, + "SAVEPOINT": 627, + "SCALAR": 628, + "SCHEMA": 629, + "SCHEMAS": 630, + "SCROLL": 631, + "SEARCH": 632, + "SECOND_P": 633, + "SECURITY": 634, + "SELECT": 635, + "SEQUENCE": 636, + "SEQUENCES": 637, + "SERIALIZABLE": 638, + "SERVER": 639, + "SESSION": 640, + "SESSION_USER": 641, + "SET": 642, + "SETS": 643, + "SETOF": 644, + "SHARE": 645, + "SHOW": 646, + "SIMILAR": 647, + "SIMPLE": 648, + "SKIP": 649, + "SMALLINT": 650, + "SNAPSHOT": 651, + "SOME": 652, + "SQL_P": 653, + "STABLE": 654, + "STANDALONE_P": 655, + "START": 656, + "STATEMENT": 657, + "STATISTICS": 658, + "STDIN": 659, + "STDOUT": 660, + "STORAGE": 661, + "STORED": 662, + "STRICT_P": 663, + "STRIP_P": 664, + "SUBSCRIPTION": 665, + "SUBSTRING": 666, + "SUPPORT": 667, + "SYMMETRIC": 668, + "SYSID": 669, + "SYSTEM_P": 670, + "SYSTEM_USER": 671, + "TABLE": 672, + "TABLES": 673, + "TABLESAMPLE": 674, + "TABLESPACE": 675, + "TEMP": 676, + "TEMPLATE": 677, + "TEMPORARY": 678, + "TEXT_P": 679, + "THEN": 680, + "TIES": 681, + "TIME": 682, + "TIMESTAMP": 683, + "TO": 684, + "TRAILING": 685, + "TRANSACTION": 686, + "TRANSFORM": 687, + "TREAT": 688, + "TRIGGER": 689, + "TRIM": 690, + "TRUE_P": 691, + "TRUNCATE": 692, + "TRUSTED": 693, + "TYPE_P": 694, + "TYPES_P": 695, + "UESCAPE": 696, + "UNBOUNDED": 697, + "UNCOMMITTED": 698, + "UNENCRYPTED": 699, + "UNION": 700, + "UNIQUE": 701, + "UNKNOWN": 702, + "UNLISTEN": 703, + "UNLOGGED": 704, + "UNTIL": 705, + "UPDATE": 706, + "USER": 707, + "USING": 708, + "VACUUM": 709, + "VALID": 710, + "VALIDATE": 711, + "VALIDATOR": 712, + "VALUE_P": 713, + "VALUES": 714, + "VARCHAR": 715, + "VARIADIC": 716, + "VARYING": 717, + "VERBOSE": 718, + "VERSION_P": 719, + "VIEW": 720, + "VIEWS": 721, + "VOLATILE": 722, + "WHEN": 723, + "WHERE": 724, + "WHITESPACE_P": 725, + "WINDOW": 726, + "WITH": 727, + "WITHIN": 728, + "WITHOUT": 729, + "WORK": 730, + "WRAPPER": 731, + "WRITE": 732, + "XML_P": 733, + "XMLATTRIBUTES": 734, + "XMLCONCAT": 735, + "XMLELEMENT": 736, + "XMLEXISTS": 737, + "XMLFOREST": 738, + "XMLNAMESPACES": 739, + "XMLPARSE": 740, + "XMLPI": 741, + "XMLROOT": 742, + "XMLSERIALIZE": 743, + "XMLTABLE": 744, + "YEAR_P": 745, + "YES_P": 746, + "ZONE": 747, + "FORMAT_LA": 748, + "NOT_LA": 749, + "NULLS_LA": 750, + "WITH_LA": 751, + "WITHOUT_LA": 752, + "MODE_TYPE_NAME": 753, + "MODE_PLPGSQL_EXPR": 754, + "MODE_PLPGSQL_ASSIGN1": 755, + "MODE_PLPGSQL_ASSIGN2": 756, + "MODE_PLPGSQL_ASSIGN3": 757, + "UMINUS": 758 + } +} \ No newline at end of file diff --git a/__fixtures__/proto/output/enums2str.json b/__fixtures__/proto/output/enums2str.json new file mode 100644 index 0000000..7ac434c --- /dev/null +++ b/__fixtures__/proto/output/enums2str.json @@ -0,0 +1,1135 @@ +{ + "OverridingKind": { + "0": "OVERRIDING_KIND_UNDEFINED", + "1": "OVERRIDING_NOT_SET", + "2": "OVERRIDING_USER_VALUE", + "3": "OVERRIDING_SYSTEM_VALUE" + }, + "QuerySource": { + "0": "QUERY_SOURCE_UNDEFINED", + "1": "QSRC_ORIGINAL", + "2": "QSRC_PARSER", + "3": "QSRC_INSTEAD_RULE", + "4": "QSRC_QUAL_INSTEAD_RULE", + "5": "QSRC_NON_INSTEAD_RULE" + }, + "SortByDir": { + "0": "SORT_BY_DIR_UNDEFINED", + "1": "SORTBY_DEFAULT", + "2": "SORTBY_ASC", + "3": "SORTBY_DESC", + "4": "SORTBY_USING" + }, + "SortByNulls": { + "0": "SORT_BY_NULLS_UNDEFINED", + "1": "SORTBY_NULLS_DEFAULT", + "2": "SORTBY_NULLS_FIRST", + "3": "SORTBY_NULLS_LAST" + }, + "SetQuantifier": { + "0": "SET_QUANTIFIER_UNDEFINED", + "1": "SET_QUANTIFIER_DEFAULT", + "2": "SET_QUANTIFIER_ALL", + "3": "SET_QUANTIFIER_DISTINCT" + }, + "A_Expr_Kind": { + "0": "A_EXPR_KIND_UNDEFINED", + "1": "AEXPR_OP", + "2": "AEXPR_OP_ANY", + "3": "AEXPR_OP_ALL", + "4": "AEXPR_DISTINCT", + "5": "AEXPR_NOT_DISTINCT", + "6": "AEXPR_NULLIF", + "7": "AEXPR_IN", + "8": "AEXPR_LIKE", + "9": "AEXPR_ILIKE", + "10": "AEXPR_SIMILAR", + "11": "AEXPR_BETWEEN", + "12": "AEXPR_NOT_BETWEEN", + "13": "AEXPR_BETWEEN_SYM", + "14": "AEXPR_NOT_BETWEEN_SYM" + }, + "RoleSpecType": { + "0": "ROLE_SPEC_TYPE_UNDEFINED", + "1": "ROLESPEC_CSTRING", + "2": "ROLESPEC_CURRENT_ROLE", + "3": "ROLESPEC_CURRENT_USER", + "4": "ROLESPEC_SESSION_USER", + "5": "ROLESPEC_PUBLIC" + }, + "TableLikeOption": { + "0": "TABLE_LIKE_OPTION_UNDEFINED", + "1": "CREATE_TABLE_LIKE_COMMENTS", + "2": "CREATE_TABLE_LIKE_COMPRESSION", + "3": "CREATE_TABLE_LIKE_CONSTRAINTS", + "4": "CREATE_TABLE_LIKE_DEFAULTS", + "5": "CREATE_TABLE_LIKE_GENERATED", + "6": "CREATE_TABLE_LIKE_IDENTITY", + "7": "CREATE_TABLE_LIKE_INDEXES", + "8": "CREATE_TABLE_LIKE_STATISTICS", + "9": "CREATE_TABLE_LIKE_STORAGE", + "10": "CREATE_TABLE_LIKE_ALL" + }, + "DefElemAction": { + "0": "DEF_ELEM_ACTION_UNDEFINED", + "1": "DEFELEM_UNSPEC", + "2": "DEFELEM_SET", + "3": "DEFELEM_ADD", + "4": "DEFELEM_DROP" + }, + "PartitionStrategy": { + "0": "PARTITION_STRATEGY_UNDEFINED", + "1": "PARTITION_STRATEGY_LIST", + "2": "PARTITION_STRATEGY_RANGE", + "3": "PARTITION_STRATEGY_HASH" + }, + "PartitionRangeDatumKind": { + "0": "PARTITION_RANGE_DATUM_KIND_UNDEFINED", + "1": "PARTITION_RANGE_DATUM_MINVALUE", + "2": "PARTITION_RANGE_DATUM_VALUE", + "3": "PARTITION_RANGE_DATUM_MAXVALUE" + }, + "RTEKind": { + "0": "RTEKIND_UNDEFINED", + "1": "RTE_RELATION", + "2": "RTE_SUBQUERY", + "3": "RTE_JOIN", + "4": "RTE_FUNCTION", + "5": "RTE_TABLEFUNC", + "6": "RTE_VALUES", + "7": "RTE_CTE", + "8": "RTE_NAMEDTUPLESTORE", + "9": "RTE_RESULT" + }, + "WCOKind": { + "0": "WCOKIND_UNDEFINED", + "1": "WCO_VIEW_CHECK", + "2": "WCO_RLS_INSERT_CHECK", + "3": "WCO_RLS_UPDATE_CHECK", + "4": "WCO_RLS_CONFLICT_CHECK", + "5": "WCO_RLS_MERGE_UPDATE_CHECK", + "6": "WCO_RLS_MERGE_DELETE_CHECK" + }, + "GroupingSetKind": { + "0": "GROUPING_SET_KIND_UNDEFINED", + "1": "GROUPING_SET_EMPTY", + "2": "GROUPING_SET_SIMPLE", + "3": "GROUPING_SET_ROLLUP", + "4": "GROUPING_SET_CUBE", + "5": "GROUPING_SET_SETS" + }, + "CTEMaterialize": { + "0": "CTEMATERIALIZE_UNDEFINED", + "1": "CTEMaterializeDefault", + "2": "CTEMaterializeAlways", + "3": "CTEMaterializeNever" + }, + "SetOperation": { + "0": "SET_OPERATION_UNDEFINED", + "1": "SETOP_NONE", + "2": "SETOP_UNION", + "3": "SETOP_INTERSECT", + "4": "SETOP_EXCEPT" + }, + "ObjectType": { + "0": "OBJECT_TYPE_UNDEFINED", + "1": "OBJECT_ACCESS_METHOD", + "2": "OBJECT_AGGREGATE", + "3": "OBJECT_AMOP", + "4": "OBJECT_AMPROC", + "5": "OBJECT_ATTRIBUTE", + "6": "OBJECT_CAST", + "7": "OBJECT_COLUMN", + "8": "OBJECT_COLLATION", + "9": "OBJECT_CONVERSION", + "10": "OBJECT_DATABASE", + "11": "OBJECT_DEFAULT", + "12": "OBJECT_DEFACL", + "13": "OBJECT_DOMAIN", + "14": "OBJECT_DOMCONSTRAINT", + "15": "OBJECT_EVENT_TRIGGER", + "16": "OBJECT_EXTENSION", + "17": "OBJECT_FDW", + "18": "OBJECT_FOREIGN_SERVER", + "19": "OBJECT_FOREIGN_TABLE", + "20": "OBJECT_FUNCTION", + "21": "OBJECT_INDEX", + "22": "OBJECT_LANGUAGE", + "23": "OBJECT_LARGEOBJECT", + "24": "OBJECT_MATVIEW", + "25": "OBJECT_OPCLASS", + "26": "OBJECT_OPERATOR", + "27": "OBJECT_OPFAMILY", + "28": "OBJECT_PARAMETER_ACL", + "29": "OBJECT_POLICY", + "30": "OBJECT_PROCEDURE", + "31": "OBJECT_PUBLICATION", + "32": "OBJECT_PUBLICATION_NAMESPACE", + "33": "OBJECT_PUBLICATION_REL", + "34": "OBJECT_ROLE", + "35": "OBJECT_ROUTINE", + "36": "OBJECT_RULE", + "37": "OBJECT_SCHEMA", + "38": "OBJECT_SEQUENCE", + "39": "OBJECT_SUBSCRIPTION", + "40": "OBJECT_STATISTIC_EXT", + "41": "OBJECT_TABCONSTRAINT", + "42": "OBJECT_TABLE", + "43": "OBJECT_TABLESPACE", + "44": "OBJECT_TRANSFORM", + "45": "OBJECT_TRIGGER", + "46": "OBJECT_TSCONFIGURATION", + "47": "OBJECT_TSDICTIONARY", + "48": "OBJECT_TSPARSER", + "49": "OBJECT_TSTEMPLATE", + "50": "OBJECT_TYPE", + "51": "OBJECT_USER_MAPPING", + "52": "OBJECT_VIEW" + }, + "DropBehavior": { + "0": "DROP_BEHAVIOR_UNDEFINED", + "1": "DROP_RESTRICT", + "2": "DROP_CASCADE" + }, + "AlterTableType": { + "0": "ALTER_TABLE_TYPE_UNDEFINED", + "1": "AT_AddColumn", + "2": "AT_AddColumnToView", + "3": "AT_ColumnDefault", + "4": "AT_CookedColumnDefault", + "5": "AT_DropNotNull", + "6": "AT_SetNotNull", + "7": "AT_DropExpression", + "8": "AT_CheckNotNull", + "9": "AT_SetStatistics", + "10": "AT_SetOptions", + "11": "AT_ResetOptions", + "12": "AT_SetStorage", + "13": "AT_SetCompression", + "14": "AT_DropColumn", + "15": "AT_AddIndex", + "16": "AT_ReAddIndex", + "17": "AT_AddConstraint", + "18": "AT_ReAddConstraint", + "19": "AT_ReAddDomainConstraint", + "20": "AT_AlterConstraint", + "21": "AT_ValidateConstraint", + "22": "AT_AddIndexConstraint", + "23": "AT_DropConstraint", + "24": "AT_ReAddComment", + "25": "AT_AlterColumnType", + "26": "AT_AlterColumnGenericOptions", + "27": "AT_ChangeOwner", + "28": "AT_ClusterOn", + "29": "AT_DropCluster", + "30": "AT_SetLogged", + "31": "AT_SetUnLogged", + "32": "AT_DropOids", + "33": "AT_SetAccessMethod", + "34": "AT_SetTableSpace", + "35": "AT_SetRelOptions", + "36": "AT_ResetRelOptions", + "37": "AT_ReplaceRelOptions", + "38": "AT_EnableTrig", + "39": "AT_EnableAlwaysTrig", + "40": "AT_EnableReplicaTrig", + "41": "AT_DisableTrig", + "42": "AT_EnableTrigAll", + "43": "AT_DisableTrigAll", + "44": "AT_EnableTrigUser", + "45": "AT_DisableTrigUser", + "46": "AT_EnableRule", + "47": "AT_EnableAlwaysRule", + "48": "AT_EnableReplicaRule", + "49": "AT_DisableRule", + "50": "AT_AddInherit", + "51": "AT_DropInherit", + "52": "AT_AddOf", + "53": "AT_DropOf", + "54": "AT_ReplicaIdentity", + "55": "AT_EnableRowSecurity", + "56": "AT_DisableRowSecurity", + "57": "AT_ForceRowSecurity", + "58": "AT_NoForceRowSecurity", + "59": "AT_GenericOptions", + "60": "AT_AttachPartition", + "61": "AT_DetachPartition", + "62": "AT_DetachPartitionFinalize", + "63": "AT_AddIdentity", + "64": "AT_SetIdentity", + "65": "AT_DropIdentity", + "66": "AT_ReAddStatistics" + }, + "GrantTargetType": { + "0": "GRANT_TARGET_TYPE_UNDEFINED", + "1": "ACL_TARGET_OBJECT", + "2": "ACL_TARGET_ALL_IN_SCHEMA", + "3": "ACL_TARGET_DEFAULTS" + }, + "VariableSetKind": { + "0": "VARIABLE_SET_KIND_UNDEFINED", + "1": "VAR_SET_VALUE", + "2": "VAR_SET_DEFAULT", + "3": "VAR_SET_CURRENT", + "4": "VAR_SET_MULTI", + "5": "VAR_RESET", + "6": "VAR_RESET_ALL" + }, + "ConstrType": { + "0": "CONSTR_TYPE_UNDEFINED", + "1": "CONSTR_NULL", + "2": "CONSTR_NOTNULL", + "3": "CONSTR_DEFAULT", + "4": "CONSTR_IDENTITY", + "5": "CONSTR_GENERATED", + "6": "CONSTR_CHECK", + "7": "CONSTR_PRIMARY", + "8": "CONSTR_UNIQUE", + "9": "CONSTR_EXCLUSION", + "10": "CONSTR_FOREIGN", + "11": "CONSTR_ATTR_DEFERRABLE", + "12": "CONSTR_ATTR_NOT_DEFERRABLE", + "13": "CONSTR_ATTR_DEFERRED", + "14": "CONSTR_ATTR_IMMEDIATE" + }, + "ImportForeignSchemaType": { + "0": "IMPORT_FOREIGN_SCHEMA_TYPE_UNDEFINED", + "1": "FDW_IMPORT_SCHEMA_ALL", + "2": "FDW_IMPORT_SCHEMA_LIMIT_TO", + "3": "FDW_IMPORT_SCHEMA_EXCEPT" + }, + "RoleStmtType": { + "0": "ROLE_STMT_TYPE_UNDEFINED", + "1": "ROLESTMT_ROLE", + "2": "ROLESTMT_USER", + "3": "ROLESTMT_GROUP" + }, + "FetchDirection": { + "0": "FETCH_DIRECTION_UNDEFINED", + "1": "FETCH_FORWARD", + "2": "FETCH_BACKWARD", + "3": "FETCH_ABSOLUTE", + "4": "FETCH_RELATIVE" + }, + "FunctionParameterMode": { + "0": "FUNCTION_PARAMETER_MODE_UNDEFINED", + "1": "FUNC_PARAM_IN", + "2": "FUNC_PARAM_OUT", + "3": "FUNC_PARAM_INOUT", + "4": "FUNC_PARAM_VARIADIC", + "5": "FUNC_PARAM_TABLE", + "6": "FUNC_PARAM_DEFAULT" + }, + "TransactionStmtKind": { + "0": "TRANSACTION_STMT_KIND_UNDEFINED", + "1": "TRANS_STMT_BEGIN", + "2": "TRANS_STMT_START", + "3": "TRANS_STMT_COMMIT", + "4": "TRANS_STMT_ROLLBACK", + "5": "TRANS_STMT_SAVEPOINT", + "6": "TRANS_STMT_RELEASE", + "7": "TRANS_STMT_ROLLBACK_TO", + "8": "TRANS_STMT_PREPARE", + "9": "TRANS_STMT_COMMIT_PREPARED", + "10": "TRANS_STMT_ROLLBACK_PREPARED" + }, + "ViewCheckOption": { + "0": "VIEW_CHECK_OPTION_UNDEFINED", + "1": "NO_CHECK_OPTION", + "2": "LOCAL_CHECK_OPTION", + "3": "CASCADED_CHECK_OPTION" + }, + "DiscardMode": { + "0": "DISCARD_MODE_UNDEFINED", + "1": "DISCARD_ALL", + "2": "DISCARD_PLANS", + "3": "DISCARD_SEQUENCES", + "4": "DISCARD_TEMP" + }, + "ReindexObjectType": { + "0": "REINDEX_OBJECT_TYPE_UNDEFINED", + "1": "REINDEX_OBJECT_INDEX", + "2": "REINDEX_OBJECT_TABLE", + "3": "REINDEX_OBJECT_SCHEMA", + "4": "REINDEX_OBJECT_SYSTEM", + "5": "REINDEX_OBJECT_DATABASE" + }, + "AlterTSConfigType": { + "0": "ALTER_TSCONFIG_TYPE_UNDEFINED", + "1": "ALTER_TSCONFIG_ADD_MAPPING", + "2": "ALTER_TSCONFIG_ALTER_MAPPING_FOR_TOKEN", + "3": "ALTER_TSCONFIG_REPLACE_DICT", + "4": "ALTER_TSCONFIG_REPLACE_DICT_FOR_TOKEN", + "5": "ALTER_TSCONFIG_DROP_MAPPING" + }, + "PublicationObjSpecType": { + "0": "PUBLICATION_OBJ_SPEC_TYPE_UNDEFINED", + "1": "PUBLICATIONOBJ_TABLE", + "2": "PUBLICATIONOBJ_TABLES_IN_SCHEMA", + "3": "PUBLICATIONOBJ_TABLES_IN_CUR_SCHEMA", + "4": "PUBLICATIONOBJ_CONTINUATION" + }, + "AlterPublicationAction": { + "0": "ALTER_PUBLICATION_ACTION_UNDEFINED", + "1": "AP_AddObjects", + "2": "AP_DropObjects", + "3": "AP_SetObjects" + }, + "AlterSubscriptionType": { + "0": "ALTER_SUBSCRIPTION_TYPE_UNDEFINED", + "1": "ALTER_SUBSCRIPTION_OPTIONS", + "2": "ALTER_SUBSCRIPTION_CONNECTION", + "3": "ALTER_SUBSCRIPTION_SET_PUBLICATION", + "4": "ALTER_SUBSCRIPTION_ADD_PUBLICATION", + "5": "ALTER_SUBSCRIPTION_DROP_PUBLICATION", + "6": "ALTER_SUBSCRIPTION_REFRESH", + "7": "ALTER_SUBSCRIPTION_ENABLED", + "8": "ALTER_SUBSCRIPTION_SKIP" + }, + "OnCommitAction": { + "0": "ON_COMMIT_ACTION_UNDEFINED", + "1": "ONCOMMIT_NOOP", + "2": "ONCOMMIT_PRESERVE_ROWS", + "3": "ONCOMMIT_DELETE_ROWS", + "4": "ONCOMMIT_DROP" + }, + "ParamKind": { + "0": "PARAM_KIND_UNDEFINED", + "1": "PARAM_EXTERN", + "2": "PARAM_EXEC", + "3": "PARAM_SUBLINK", + "4": "PARAM_MULTIEXPR" + }, + "CoercionContext": { + "0": "COERCION_CONTEXT_UNDEFINED", + "1": "COERCION_IMPLICIT", + "2": "COERCION_ASSIGNMENT", + "3": "COERCION_PLPGSQL", + "4": "COERCION_EXPLICIT" + }, + "CoercionForm": { + "0": "COERCION_FORM_UNDEFINED", + "1": "COERCE_EXPLICIT_CALL", + "2": "COERCE_EXPLICIT_CAST", + "3": "COERCE_IMPLICIT_CAST", + "4": "COERCE_SQL_SYNTAX" + }, + "BoolExprType": { + "0": "BOOL_EXPR_TYPE_UNDEFINED", + "1": "AND_EXPR", + "2": "OR_EXPR", + "3": "NOT_EXPR" + }, + "SubLinkType": { + "0": "SUB_LINK_TYPE_UNDEFINED", + "1": "EXISTS_SUBLINK", + "2": "ALL_SUBLINK", + "3": "ANY_SUBLINK", + "4": "ROWCOMPARE_SUBLINK", + "5": "EXPR_SUBLINK", + "6": "MULTIEXPR_SUBLINK", + "7": "ARRAY_SUBLINK", + "8": "CTE_SUBLINK" + }, + "RowCompareType": { + "0": "ROW_COMPARE_TYPE_UNDEFINED", + "1": "ROWCOMPARE_LT", + "2": "ROWCOMPARE_LE", + "3": "ROWCOMPARE_EQ", + "4": "ROWCOMPARE_GE", + "5": "ROWCOMPARE_GT", + "6": "ROWCOMPARE_NE" + }, + "MinMaxOp": { + "0": "MIN_MAX_OP_UNDEFINED", + "1": "IS_GREATEST", + "2": "IS_LEAST" + }, + "SQLValueFunctionOp": { + "0": "SQLVALUE_FUNCTION_OP_UNDEFINED", + "1": "SVFOP_CURRENT_DATE", + "2": "SVFOP_CURRENT_TIME", + "3": "SVFOP_CURRENT_TIME_N", + "4": "SVFOP_CURRENT_TIMESTAMP", + "5": "SVFOP_CURRENT_TIMESTAMP_N", + "6": "SVFOP_LOCALTIME", + "7": "SVFOP_LOCALTIME_N", + "8": "SVFOP_LOCALTIMESTAMP", + "9": "SVFOP_LOCALTIMESTAMP_N", + "10": "SVFOP_CURRENT_ROLE", + "11": "SVFOP_CURRENT_USER", + "12": "SVFOP_USER", + "13": "SVFOP_SESSION_USER", + "14": "SVFOP_CURRENT_CATALOG", + "15": "SVFOP_CURRENT_SCHEMA" + }, + "XmlExprOp": { + "0": "XML_EXPR_OP_UNDEFINED", + "1": "IS_XMLCONCAT", + "2": "IS_XMLELEMENT", + "3": "IS_XMLFOREST", + "4": "IS_XMLPARSE", + "5": "IS_XMLPI", + "6": "IS_XMLROOT", + "7": "IS_XMLSERIALIZE", + "8": "IS_DOCUMENT" + }, + "XmlOptionType": { + "0": "XML_OPTION_TYPE_UNDEFINED", + "1": "XMLOPTION_DOCUMENT", + "2": "XMLOPTION_CONTENT" + }, + "JsonEncoding": { + "0": "JSON_ENCODING_UNDEFINED", + "1": "JS_ENC_DEFAULT", + "2": "JS_ENC_UTF8", + "3": "JS_ENC_UTF16", + "4": "JS_ENC_UTF32" + }, + "JsonFormatType": { + "0": "JSON_FORMAT_TYPE_UNDEFINED", + "1": "JS_FORMAT_DEFAULT", + "2": "JS_FORMAT_JSON", + "3": "JS_FORMAT_JSONB" + }, + "JsonConstructorType": { + "0": "JSON_CONSTRUCTOR_TYPE_UNDEFINED", + "1": "JSCTOR_JSON_OBJECT", + "2": "JSCTOR_JSON_ARRAY", + "3": "JSCTOR_JSON_OBJECTAGG", + "4": "JSCTOR_JSON_ARRAYAGG" + }, + "JsonValueType": { + "0": "JSON_VALUE_TYPE_UNDEFINED", + "1": "JS_TYPE_ANY", + "2": "JS_TYPE_OBJECT", + "3": "JS_TYPE_ARRAY", + "4": "JS_TYPE_SCALAR" + }, + "NullTestType": { + "0": "NULL_TEST_TYPE_UNDEFINED", + "1": "IS_NULL", + "2": "IS_NOT_NULL" + }, + "BoolTestType": { + "0": "BOOL_TEST_TYPE_UNDEFINED", + "1": "IS_TRUE", + "2": "IS_NOT_TRUE", + "3": "IS_FALSE", + "4": "IS_NOT_FALSE", + "5": "IS_UNKNOWN", + "6": "IS_NOT_UNKNOWN" + }, + "CmdType": { + "0": "CMD_TYPE_UNDEFINED", + "1": "CMD_UNKNOWN", + "2": "CMD_SELECT", + "3": "CMD_UPDATE", + "4": "CMD_INSERT", + "5": "CMD_DELETE", + "6": "CMD_MERGE", + "7": "CMD_UTILITY", + "8": "CMD_NOTHING" + }, + "JoinType": { + "0": "JOIN_TYPE_UNDEFINED", + "1": "JOIN_INNER", + "2": "JOIN_LEFT", + "3": "JOIN_FULL", + "4": "JOIN_RIGHT", + "5": "JOIN_SEMI", + "6": "JOIN_ANTI", + "7": "JOIN_RIGHT_ANTI", + "8": "JOIN_UNIQUE_OUTER", + "9": "JOIN_UNIQUE_INNER" + }, + "AggStrategy": { + "0": "AGG_STRATEGY_UNDEFINED", + "1": "AGG_PLAIN", + "2": "AGG_SORTED", + "3": "AGG_HASHED", + "4": "AGG_MIXED" + }, + "AggSplit": { + "0": "AGG_SPLIT_UNDEFINED", + "1": "AGGSPLIT_SIMPLE", + "2": "AGGSPLIT_INITIAL_SERIAL", + "3": "AGGSPLIT_FINAL_DESERIAL" + }, + "SetOpCmd": { + "0": "SET_OP_CMD_UNDEFINED", + "1": "SETOPCMD_INTERSECT", + "2": "SETOPCMD_INTERSECT_ALL", + "3": "SETOPCMD_EXCEPT", + "4": "SETOPCMD_EXCEPT_ALL" + }, + "SetOpStrategy": { + "0": "SET_OP_STRATEGY_UNDEFINED", + "1": "SETOP_SORTED", + "2": "SETOP_HASHED" + }, + "OnConflictAction": { + "0": "ON_CONFLICT_ACTION_UNDEFINED", + "1": "ONCONFLICT_NONE", + "2": "ONCONFLICT_NOTHING", + "3": "ONCONFLICT_UPDATE" + }, + "LimitOption": { + "0": "LIMIT_OPTION_UNDEFINED", + "1": "LIMIT_OPTION_DEFAULT", + "2": "LIMIT_OPTION_COUNT", + "3": "LIMIT_OPTION_WITH_TIES" + }, + "LockClauseStrength": { + "0": "LOCK_CLAUSE_STRENGTH_UNDEFINED", + "1": "LCS_NONE", + "2": "LCS_FORKEYSHARE", + "3": "LCS_FORSHARE", + "4": "LCS_FORNOKEYUPDATE", + "5": "LCS_FORUPDATE" + }, + "LockWaitPolicy": { + "0": "LOCK_WAIT_POLICY_UNDEFINED", + "1": "LockWaitBlock", + "2": "LockWaitSkip", + "3": "LockWaitError" + }, + "LockTupleMode": { + "0": "LOCK_TUPLE_MODE_UNDEFINED", + "1": "LockTupleKeyShare", + "2": "LockTupleShare", + "3": "LockTupleNoKeyExclusive", + "4": "LockTupleExclusive" + }, + "KeywordKind": { + "0": "NO_KEYWORD", + "1": "UNRESERVED_KEYWORD", + "2": "COL_NAME_KEYWORD", + "3": "TYPE_FUNC_NAME_KEYWORD", + "4": "RESERVED_KEYWORD" + }, + "Token": { + "0": "NUL", + "36": "ASCII_36", + "37": "ASCII_37", + "40": "ASCII_40", + "41": "ASCII_41", + "42": "ASCII_42", + "43": "ASCII_43", + "44": "ASCII_44", + "45": "ASCII_45", + "46": "ASCII_46", + "47": "ASCII_47", + "58": "ASCII_58", + "59": "ASCII_59", + "60": "ASCII_60", + "61": "ASCII_61", + "62": "ASCII_62", + "63": "ASCII_63", + "91": "ASCII_91", + "92": "ASCII_92", + "93": "ASCII_93", + "94": "ASCII_94", + "258": "IDENT", + "259": "UIDENT", + "260": "FCONST", + "261": "SCONST", + "262": "USCONST", + "263": "BCONST", + "264": "XCONST", + "265": "Op", + "266": "ICONST", + "267": "PARAM", + "268": "TYPECAST", + "269": "DOT_DOT", + "270": "COLON_EQUALS", + "271": "EQUALS_GREATER", + "272": "LESS_EQUALS", + "273": "GREATER_EQUALS", + "274": "NOT_EQUALS", + "275": "SQL_COMMENT", + "276": "C_COMMENT", + "277": "ABORT_P", + "278": "ABSENT", + "279": "ABSOLUTE_P", + "280": "ACCESS", + "281": "ACTION", + "282": "ADD_P", + "283": "ADMIN", + "284": "AFTER", + "285": "AGGREGATE", + "286": "ALL", + "287": "ALSO", + "288": "ALTER", + "289": "ALWAYS", + "290": "ANALYSE", + "291": "ANALYZE", + "292": "AND", + "293": "ANY", + "294": "ARRAY", + "295": "AS", + "296": "ASC", + "297": "ASENSITIVE", + "298": "ASSERTION", + "299": "ASSIGNMENT", + "300": "ASYMMETRIC", + "301": "ATOMIC", + "302": "AT", + "303": "ATTACH", + "304": "ATTRIBUTE", + "305": "AUTHORIZATION", + "306": "BACKWARD", + "307": "BEFORE", + "308": "BEGIN_P", + "309": "BETWEEN", + "310": "BIGINT", + "311": "BINARY", + "312": "BIT", + "313": "BOOLEAN_P", + "314": "BOTH", + "315": "BREADTH", + "316": "BY", + "317": "CACHE", + "318": "CALL", + "319": "CALLED", + "320": "CASCADE", + "321": "CASCADED", + "322": "CASE", + "323": "CAST", + "324": "CATALOG_P", + "325": "CHAIN", + "326": "CHAR_P", + "327": "CHARACTER", + "328": "CHARACTERISTICS", + "329": "CHECK", + "330": "CHECKPOINT", + "331": "CLASS", + "332": "CLOSE", + "333": "CLUSTER", + "334": "COALESCE", + "335": "COLLATE", + "336": "COLLATION", + "337": "COLUMN", + "338": "COLUMNS", + "339": "COMMENT", + "340": "COMMENTS", + "341": "COMMIT", + "342": "COMMITTED", + "343": "COMPRESSION", + "344": "CONCURRENTLY", + "345": "CONFIGURATION", + "346": "CONFLICT", + "347": "CONNECTION", + "348": "CONSTRAINT", + "349": "CONSTRAINTS", + "350": "CONTENT_P", + "351": "CONTINUE_P", + "352": "CONVERSION_P", + "353": "COPY", + "354": "COST", + "355": "CREATE", + "356": "CROSS", + "357": "CSV", + "358": "CUBE", + "359": "CURRENT_P", + "360": "CURRENT_CATALOG", + "361": "CURRENT_DATE", + "362": "CURRENT_ROLE", + "363": "CURRENT_SCHEMA", + "364": "CURRENT_TIME", + "365": "CURRENT_TIMESTAMP", + "366": "CURRENT_USER", + "367": "CURSOR", + "368": "CYCLE", + "369": "DATA_P", + "370": "DATABASE", + "371": "DAY_P", + "372": "DEALLOCATE", + "373": "DEC", + "374": "DECIMAL_P", + "375": "DECLARE", + "376": "DEFAULT", + "377": "DEFAULTS", + "378": "DEFERRABLE", + "379": "DEFERRED", + "380": "DEFINER", + "381": "DELETE_P", + "382": "DELIMITER", + "383": "DELIMITERS", + "384": "DEPENDS", + "385": "DEPTH", + "386": "DESC", + "387": "DETACH", + "388": "DICTIONARY", + "389": "DISABLE_P", + "390": "DISCARD", + "391": "DISTINCT", + "392": "DO", + "393": "DOCUMENT_P", + "394": "DOMAIN_P", + "395": "DOUBLE_P", + "396": "DROP", + "397": "EACH", + "398": "ELSE", + "399": "ENABLE_P", + "400": "ENCODING", + "401": "ENCRYPTED", + "402": "END_P", + "403": "ENUM_P", + "404": "ESCAPE", + "405": "EVENT", + "406": "EXCEPT", + "407": "EXCLUDE", + "408": "EXCLUDING", + "409": "EXCLUSIVE", + "410": "EXECUTE", + "411": "EXISTS", + "412": "EXPLAIN", + "413": "EXPRESSION", + "414": "EXTENSION", + "415": "EXTERNAL", + "416": "EXTRACT", + "417": "FALSE_P", + "418": "FAMILY", + "419": "FETCH", + "420": "FILTER", + "421": "FINALIZE", + "422": "FIRST_P", + "423": "FLOAT_P", + "424": "FOLLOWING", + "425": "FOR", + "426": "FORCE", + "427": "FOREIGN", + "428": "FORMAT", + "429": "FORWARD", + "430": "FREEZE", + "431": "FROM", + "432": "FULL", + "433": "FUNCTION", + "434": "FUNCTIONS", + "435": "GENERATED", + "436": "GLOBAL", + "437": "GRANT", + "438": "GRANTED", + "439": "GREATEST", + "440": "GROUP_P", + "441": "GROUPING", + "442": "GROUPS", + "443": "HANDLER", + "444": "HAVING", + "445": "HEADER_P", + "446": "HOLD", + "447": "HOUR_P", + "448": "IDENTITY_P", + "449": "IF_P", + "450": "ILIKE", + "451": "IMMEDIATE", + "452": "IMMUTABLE", + "453": "IMPLICIT_P", + "454": "IMPORT_P", + "455": "IN_P", + "456": "INCLUDE", + "457": "INCLUDING", + "458": "INCREMENT", + "459": "INDENT", + "460": "INDEX", + "461": "INDEXES", + "462": "INHERIT", + "463": "INHERITS", + "464": "INITIALLY", + "465": "INLINE_P", + "466": "INNER_P", + "467": "INOUT", + "468": "INPUT_P", + "469": "INSENSITIVE", + "470": "INSERT", + "471": "INSTEAD", + "472": "INT_P", + "473": "INTEGER", + "474": "INTERSECT", + "475": "INTERVAL", + "476": "INTO", + "477": "INVOKER", + "478": "IS", + "479": "ISNULL", + "480": "ISOLATION", + "481": "JOIN", + "482": "JSON", + "483": "JSON_ARRAY", + "484": "JSON_ARRAYAGG", + "485": "JSON_OBJECT", + "486": "JSON_OBJECTAGG", + "487": "KEY", + "488": "KEYS", + "489": "LABEL", + "490": "LANGUAGE", + "491": "LARGE_P", + "492": "LAST_P", + "493": "LATERAL_P", + "494": "LEADING", + "495": "LEAKPROOF", + "496": "LEAST", + "497": "LEFT", + "498": "LEVEL", + "499": "LIKE", + "500": "LIMIT", + "501": "LISTEN", + "502": "LOAD", + "503": "LOCAL", + "504": "LOCALTIME", + "505": "LOCALTIMESTAMP", + "506": "LOCATION", + "507": "LOCK_P", + "508": "LOCKED", + "509": "LOGGED", + "510": "MAPPING", + "511": "MATCH", + "512": "MATCHED", + "513": "MATERIALIZED", + "514": "MAXVALUE", + "515": "MERGE", + "516": "METHOD", + "517": "MINUTE_P", + "518": "MINVALUE", + "519": "MODE", + "520": "MONTH_P", + "521": "MOVE", + "522": "NAME_P", + "523": "NAMES", + "524": "NATIONAL", + "525": "NATURAL", + "526": "NCHAR", + "527": "NEW", + "528": "NEXT", + "529": "NFC", + "530": "NFD", + "531": "NFKC", + "532": "NFKD", + "533": "NO", + "534": "NONE", + "535": "NORMALIZE", + "536": "NORMALIZED", + "537": "NOT", + "538": "NOTHING", + "539": "NOTIFY", + "540": "NOTNULL", + "541": "NOWAIT", + "542": "NULL_P", + "543": "NULLIF", + "544": "NULLS_P", + "545": "NUMERIC", + "546": "OBJECT_P", + "547": "OF", + "548": "OFF", + "549": "OFFSET", + "550": "OIDS", + "551": "OLD", + "552": "ON", + "553": "ONLY", + "554": "OPERATOR", + "555": "OPTION", + "556": "OPTIONS", + "557": "OR", + "558": "ORDER", + "559": "ORDINALITY", + "560": "OTHERS", + "561": "OUT_P", + "562": "OUTER_P", + "563": "OVER", + "564": "OVERLAPS", + "565": "OVERLAY", + "566": "OVERRIDING", + "567": "OWNED", + "568": "OWNER", + "569": "PARALLEL", + "570": "PARAMETER", + "571": "PARSER", + "572": "PARTIAL", + "573": "PARTITION", + "574": "PASSING", + "575": "PASSWORD", + "576": "PLACING", + "577": "PLANS", + "578": "POLICY", + "579": "POSITION", + "580": "PRECEDING", + "581": "PRECISION", + "582": "PRESERVE", + "583": "PREPARE", + "584": "PREPARED", + "585": "PRIMARY", + "586": "PRIOR", + "587": "PRIVILEGES", + "588": "PROCEDURAL", + "589": "PROCEDURE", + "590": "PROCEDURES", + "591": "PROGRAM", + "592": "PUBLICATION", + "593": "QUOTE", + "594": "RANGE", + "595": "READ", + "596": "REAL", + "597": "REASSIGN", + "598": "RECHECK", + "599": "RECURSIVE", + "600": "REF_P", + "601": "REFERENCES", + "602": "REFERENCING", + "603": "REFRESH", + "604": "REINDEX", + "605": "RELATIVE_P", + "606": "RELEASE", + "607": "RENAME", + "608": "REPEATABLE", + "609": "REPLACE", + "610": "REPLICA", + "611": "RESET", + "612": "RESTART", + "613": "RESTRICT", + "614": "RETURN", + "615": "RETURNING", + "616": "RETURNS", + "617": "REVOKE", + "618": "RIGHT", + "619": "ROLE", + "620": "ROLLBACK", + "621": "ROLLUP", + "622": "ROUTINE", + "623": "ROUTINES", + "624": "ROW", + "625": "ROWS", + "626": "RULE", + "627": "SAVEPOINT", + "628": "SCALAR", + "629": "SCHEMA", + "630": "SCHEMAS", + "631": "SCROLL", + "632": "SEARCH", + "633": "SECOND_P", + "634": "SECURITY", + "635": "SELECT", + "636": "SEQUENCE", + "637": "SEQUENCES", + "638": "SERIALIZABLE", + "639": "SERVER", + "640": "SESSION", + "641": "SESSION_USER", + "642": "SET", + "643": "SETS", + "644": "SETOF", + "645": "SHARE", + "646": "SHOW", + "647": "SIMILAR", + "648": "SIMPLE", + "649": "SKIP", + "650": "SMALLINT", + "651": "SNAPSHOT", + "652": "SOME", + "653": "SQL_P", + "654": "STABLE", + "655": "STANDALONE_P", + "656": "START", + "657": "STATEMENT", + "658": "STATISTICS", + "659": "STDIN", + "660": "STDOUT", + "661": "STORAGE", + "662": "STORED", + "663": "STRICT_P", + "664": "STRIP_P", + "665": "SUBSCRIPTION", + "666": "SUBSTRING", + "667": "SUPPORT", + "668": "SYMMETRIC", + "669": "SYSID", + "670": "SYSTEM_P", + "671": "SYSTEM_USER", + "672": "TABLE", + "673": "TABLES", + "674": "TABLESAMPLE", + "675": "TABLESPACE", + "676": "TEMP", + "677": "TEMPLATE", + "678": "TEMPORARY", + "679": "TEXT_P", + "680": "THEN", + "681": "TIES", + "682": "TIME", + "683": "TIMESTAMP", + "684": "TO", + "685": "TRAILING", + "686": "TRANSACTION", + "687": "TRANSFORM", + "688": "TREAT", + "689": "TRIGGER", + "690": "TRIM", + "691": "TRUE_P", + "692": "TRUNCATE", + "693": "TRUSTED", + "694": "TYPE_P", + "695": "TYPES_P", + "696": "UESCAPE", + "697": "UNBOUNDED", + "698": "UNCOMMITTED", + "699": "UNENCRYPTED", + "700": "UNION", + "701": "UNIQUE", + "702": "UNKNOWN", + "703": "UNLISTEN", + "704": "UNLOGGED", + "705": "UNTIL", + "706": "UPDATE", + "707": "USER", + "708": "USING", + "709": "VACUUM", + "710": "VALID", + "711": "VALIDATE", + "712": "VALIDATOR", + "713": "VALUE_P", + "714": "VALUES", + "715": "VARCHAR", + "716": "VARIADIC", + "717": "VARYING", + "718": "VERBOSE", + "719": "VERSION_P", + "720": "VIEW", + "721": "VIEWS", + "722": "VOLATILE", + "723": "WHEN", + "724": "WHERE", + "725": "WHITESPACE_P", + "726": "WINDOW", + "727": "WITH", + "728": "WITHIN", + "729": "WITHOUT", + "730": "WORK", + "731": "WRAPPER", + "732": "WRITE", + "733": "XML_P", + "734": "XMLATTRIBUTES", + "735": "XMLCONCAT", + "736": "XMLELEMENT", + "737": "XMLEXISTS", + "738": "XMLFOREST", + "739": "XMLNAMESPACES", + "740": "XMLPARSE", + "741": "XMLPI", + "742": "XMLROOT", + "743": "XMLSERIALIZE", + "744": "XMLTABLE", + "745": "YEAR_P", + "746": "YES_P", + "747": "ZONE", + "748": "FORMAT_LA", + "749": "NOT_LA", + "750": "NULLS_LA", + "751": "WITH_LA", + "752": "WITHOUT_LA", + "753": "MODE_TYPE_NAME", + "754": "MODE_PLPGSQL_EXPR", + "755": "MODE_PLPGSQL_ASSIGN1", + "756": "MODE_PLPGSQL_ASSIGN2", + "757": "MODE_PLPGSQL_ASSIGN3", + "758": "UMINUS" + } +} \ No newline at end of file diff --git a/__fixtures__/proto/output/types.ts b/__fixtures__/proto/output/types.ts new file mode 100644 index 0000000..587bb3b --- /dev/null +++ b/__fixtures__/proto/output/types.ts @@ -0,0 +1,3196 @@ +export enum OverridingKind { + OVERRIDING_KIND_UNDEFINED = 0, + OVERRIDING_NOT_SET = 1, + OVERRIDING_USER_VALUE = 2, + OVERRIDING_SYSTEM_VALUE = 3, +} +export enum QuerySource { + QUERY_SOURCE_UNDEFINED = 0, + QSRC_ORIGINAL = 1, + QSRC_PARSER = 2, + QSRC_INSTEAD_RULE = 3, + QSRC_QUAL_INSTEAD_RULE = 4, + QSRC_NON_INSTEAD_RULE = 5, +} +export enum SortByDir { + SORT_BY_DIR_UNDEFINED = 0, + SORTBY_DEFAULT = 1, + SORTBY_ASC = 2, + SORTBY_DESC = 3, + SORTBY_USING = 4, +} +export enum SortByNulls { + SORT_BY_NULLS_UNDEFINED = 0, + SORTBY_NULLS_DEFAULT = 1, + SORTBY_NULLS_FIRST = 2, + SORTBY_NULLS_LAST = 3, +} +export enum SetQuantifier { + SET_QUANTIFIER_UNDEFINED = 0, + SET_QUANTIFIER_DEFAULT = 1, + SET_QUANTIFIER_ALL = 2, + SET_QUANTIFIER_DISTINCT = 3, +} +export enum A_Expr_Kind { + A_EXPR_KIND_UNDEFINED = 0, + AEXPR_OP = 1, + AEXPR_OP_ANY = 2, + AEXPR_OP_ALL = 3, + AEXPR_DISTINCT = 4, + AEXPR_NOT_DISTINCT = 5, + AEXPR_NULLIF = 6, + AEXPR_IN = 7, + AEXPR_LIKE = 8, + AEXPR_ILIKE = 9, + AEXPR_SIMILAR = 10, + AEXPR_BETWEEN = 11, + AEXPR_NOT_BETWEEN = 12, + AEXPR_BETWEEN_SYM = 13, + AEXPR_NOT_BETWEEN_SYM = 14, +} +export enum RoleSpecType { + ROLE_SPEC_TYPE_UNDEFINED = 0, + ROLESPEC_CSTRING = 1, + ROLESPEC_CURRENT_ROLE = 2, + ROLESPEC_CURRENT_USER = 3, + ROLESPEC_SESSION_USER = 4, + ROLESPEC_PUBLIC = 5, +} +export enum TableLikeOption { + TABLE_LIKE_OPTION_UNDEFINED = 0, + CREATE_TABLE_LIKE_COMMENTS = 1, + CREATE_TABLE_LIKE_COMPRESSION = 2, + CREATE_TABLE_LIKE_CONSTRAINTS = 3, + CREATE_TABLE_LIKE_DEFAULTS = 4, + CREATE_TABLE_LIKE_GENERATED = 5, + CREATE_TABLE_LIKE_IDENTITY = 6, + CREATE_TABLE_LIKE_INDEXES = 7, + CREATE_TABLE_LIKE_STATISTICS = 8, + CREATE_TABLE_LIKE_STORAGE = 9, + CREATE_TABLE_LIKE_ALL = 10, +} +export enum DefElemAction { + DEF_ELEM_ACTION_UNDEFINED = 0, + DEFELEM_UNSPEC = 1, + DEFELEM_SET = 2, + DEFELEM_ADD = 3, + DEFELEM_DROP = 4, +} +export enum PartitionStrategy { + PARTITION_STRATEGY_UNDEFINED = 0, + PARTITION_STRATEGY_LIST = 1, + PARTITION_STRATEGY_RANGE = 2, + PARTITION_STRATEGY_HASH = 3, +} +export enum PartitionRangeDatumKind { + PARTITION_RANGE_DATUM_KIND_UNDEFINED = 0, + PARTITION_RANGE_DATUM_MINVALUE = 1, + PARTITION_RANGE_DATUM_VALUE = 2, + PARTITION_RANGE_DATUM_MAXVALUE = 3, +} +export enum RTEKind { + RTEKIND_UNDEFINED = 0, + RTE_RELATION = 1, + RTE_SUBQUERY = 2, + RTE_JOIN = 3, + RTE_FUNCTION = 4, + RTE_TABLEFUNC = 5, + RTE_VALUES = 6, + RTE_CTE = 7, + RTE_NAMEDTUPLESTORE = 8, + RTE_RESULT = 9, +} +export enum WCOKind { + WCOKIND_UNDEFINED = 0, + WCO_VIEW_CHECK = 1, + WCO_RLS_INSERT_CHECK = 2, + WCO_RLS_UPDATE_CHECK = 3, + WCO_RLS_CONFLICT_CHECK = 4, + WCO_RLS_MERGE_UPDATE_CHECK = 5, + WCO_RLS_MERGE_DELETE_CHECK = 6, +} +export enum GroupingSetKind { + GROUPING_SET_KIND_UNDEFINED = 0, + GROUPING_SET_EMPTY = 1, + GROUPING_SET_SIMPLE = 2, + GROUPING_SET_ROLLUP = 3, + GROUPING_SET_CUBE = 4, + GROUPING_SET_SETS = 5, +} +export enum CTEMaterialize { + CTEMATERIALIZE_UNDEFINED = 0, + CTEMaterializeDefault = 1, + CTEMaterializeAlways = 2, + CTEMaterializeNever = 3, +} +export enum SetOperation { + SET_OPERATION_UNDEFINED = 0, + SETOP_NONE = 1, + SETOP_UNION = 2, + SETOP_INTERSECT = 3, + SETOP_EXCEPT = 4, +} +export enum ObjectType { + OBJECT_TYPE_UNDEFINED = 0, + OBJECT_ACCESS_METHOD = 1, + OBJECT_AGGREGATE = 2, + OBJECT_AMOP = 3, + OBJECT_AMPROC = 4, + OBJECT_ATTRIBUTE = 5, + OBJECT_CAST = 6, + OBJECT_COLUMN = 7, + OBJECT_COLLATION = 8, + OBJECT_CONVERSION = 9, + OBJECT_DATABASE = 10, + OBJECT_DEFAULT = 11, + OBJECT_DEFACL = 12, + OBJECT_DOMAIN = 13, + OBJECT_DOMCONSTRAINT = 14, + OBJECT_EVENT_TRIGGER = 15, + OBJECT_EXTENSION = 16, + OBJECT_FDW = 17, + OBJECT_FOREIGN_SERVER = 18, + OBJECT_FOREIGN_TABLE = 19, + OBJECT_FUNCTION = 20, + OBJECT_INDEX = 21, + OBJECT_LANGUAGE = 22, + OBJECT_LARGEOBJECT = 23, + OBJECT_MATVIEW = 24, + OBJECT_OPCLASS = 25, + OBJECT_OPERATOR = 26, + OBJECT_OPFAMILY = 27, + OBJECT_PARAMETER_ACL = 28, + OBJECT_POLICY = 29, + OBJECT_PROCEDURE = 30, + OBJECT_PUBLICATION = 31, + OBJECT_PUBLICATION_NAMESPACE = 32, + OBJECT_PUBLICATION_REL = 33, + OBJECT_ROLE = 34, + OBJECT_ROUTINE = 35, + OBJECT_RULE = 36, + OBJECT_SCHEMA = 37, + OBJECT_SEQUENCE = 38, + OBJECT_SUBSCRIPTION = 39, + OBJECT_STATISTIC_EXT = 40, + OBJECT_TABCONSTRAINT = 41, + OBJECT_TABLE = 42, + OBJECT_TABLESPACE = 43, + OBJECT_TRANSFORM = 44, + OBJECT_TRIGGER = 45, + OBJECT_TSCONFIGURATION = 46, + OBJECT_TSDICTIONARY = 47, + OBJECT_TSPARSER = 48, + OBJECT_TSTEMPLATE = 49, + OBJECT_TYPE = 50, + OBJECT_USER_MAPPING = 51, + OBJECT_VIEW = 52, +} +export enum DropBehavior { + DROP_BEHAVIOR_UNDEFINED = 0, + DROP_RESTRICT = 1, + DROP_CASCADE = 2, +} +export enum AlterTableType { + ALTER_TABLE_TYPE_UNDEFINED = 0, + AT_AddColumn = 1, + AT_AddColumnToView = 2, + AT_ColumnDefault = 3, + AT_CookedColumnDefault = 4, + AT_DropNotNull = 5, + AT_SetNotNull = 6, + AT_DropExpression = 7, + AT_CheckNotNull = 8, + AT_SetStatistics = 9, + AT_SetOptions = 10, + AT_ResetOptions = 11, + AT_SetStorage = 12, + AT_SetCompression = 13, + AT_DropColumn = 14, + AT_AddIndex = 15, + AT_ReAddIndex = 16, + AT_AddConstraint = 17, + AT_ReAddConstraint = 18, + AT_ReAddDomainConstraint = 19, + AT_AlterConstraint = 20, + AT_ValidateConstraint = 21, + AT_AddIndexConstraint = 22, + AT_DropConstraint = 23, + AT_ReAddComment = 24, + AT_AlterColumnType = 25, + AT_AlterColumnGenericOptions = 26, + AT_ChangeOwner = 27, + AT_ClusterOn = 28, + AT_DropCluster = 29, + AT_SetLogged = 30, + AT_SetUnLogged = 31, + AT_DropOids = 32, + AT_SetAccessMethod = 33, + AT_SetTableSpace = 34, + AT_SetRelOptions = 35, + AT_ResetRelOptions = 36, + AT_ReplaceRelOptions = 37, + AT_EnableTrig = 38, + AT_EnableAlwaysTrig = 39, + AT_EnableReplicaTrig = 40, + AT_DisableTrig = 41, + AT_EnableTrigAll = 42, + AT_DisableTrigAll = 43, + AT_EnableTrigUser = 44, + AT_DisableTrigUser = 45, + AT_EnableRule = 46, + AT_EnableAlwaysRule = 47, + AT_EnableReplicaRule = 48, + AT_DisableRule = 49, + AT_AddInherit = 50, + AT_DropInherit = 51, + AT_AddOf = 52, + AT_DropOf = 53, + AT_ReplicaIdentity = 54, + AT_EnableRowSecurity = 55, + AT_DisableRowSecurity = 56, + AT_ForceRowSecurity = 57, + AT_NoForceRowSecurity = 58, + AT_GenericOptions = 59, + AT_AttachPartition = 60, + AT_DetachPartition = 61, + AT_DetachPartitionFinalize = 62, + AT_AddIdentity = 63, + AT_SetIdentity = 64, + AT_DropIdentity = 65, + AT_ReAddStatistics = 66, +} +export enum GrantTargetType { + GRANT_TARGET_TYPE_UNDEFINED = 0, + ACL_TARGET_OBJECT = 1, + ACL_TARGET_ALL_IN_SCHEMA = 2, + ACL_TARGET_DEFAULTS = 3, +} +export enum VariableSetKind { + VARIABLE_SET_KIND_UNDEFINED = 0, + VAR_SET_VALUE = 1, + VAR_SET_DEFAULT = 2, + VAR_SET_CURRENT = 3, + VAR_SET_MULTI = 4, + VAR_RESET = 5, + VAR_RESET_ALL = 6, +} +export enum ConstrType { + CONSTR_TYPE_UNDEFINED = 0, + CONSTR_NULL = 1, + CONSTR_NOTNULL = 2, + CONSTR_DEFAULT = 3, + CONSTR_IDENTITY = 4, + CONSTR_GENERATED = 5, + CONSTR_CHECK = 6, + CONSTR_PRIMARY = 7, + CONSTR_UNIQUE = 8, + CONSTR_EXCLUSION = 9, + CONSTR_FOREIGN = 10, + CONSTR_ATTR_DEFERRABLE = 11, + CONSTR_ATTR_NOT_DEFERRABLE = 12, + CONSTR_ATTR_DEFERRED = 13, + CONSTR_ATTR_IMMEDIATE = 14, +} +export enum ImportForeignSchemaType { + IMPORT_FOREIGN_SCHEMA_TYPE_UNDEFINED = 0, + FDW_IMPORT_SCHEMA_ALL = 1, + FDW_IMPORT_SCHEMA_LIMIT_TO = 2, + FDW_IMPORT_SCHEMA_EXCEPT = 3, +} +export enum RoleStmtType { + ROLE_STMT_TYPE_UNDEFINED = 0, + ROLESTMT_ROLE = 1, + ROLESTMT_USER = 2, + ROLESTMT_GROUP = 3, +} +export enum FetchDirection { + FETCH_DIRECTION_UNDEFINED = 0, + FETCH_FORWARD = 1, + FETCH_BACKWARD = 2, + FETCH_ABSOLUTE = 3, + FETCH_RELATIVE = 4, +} +export enum FunctionParameterMode { + FUNCTION_PARAMETER_MODE_UNDEFINED = 0, + FUNC_PARAM_IN = 1, + FUNC_PARAM_OUT = 2, + FUNC_PARAM_INOUT = 3, + FUNC_PARAM_VARIADIC = 4, + FUNC_PARAM_TABLE = 5, + FUNC_PARAM_DEFAULT = 6, +} +export enum TransactionStmtKind { + TRANSACTION_STMT_KIND_UNDEFINED = 0, + TRANS_STMT_BEGIN = 1, + TRANS_STMT_START = 2, + TRANS_STMT_COMMIT = 3, + TRANS_STMT_ROLLBACK = 4, + TRANS_STMT_SAVEPOINT = 5, + TRANS_STMT_RELEASE = 6, + TRANS_STMT_ROLLBACK_TO = 7, + TRANS_STMT_PREPARE = 8, + TRANS_STMT_COMMIT_PREPARED = 9, + TRANS_STMT_ROLLBACK_PREPARED = 10, +} +export enum ViewCheckOption { + VIEW_CHECK_OPTION_UNDEFINED = 0, + NO_CHECK_OPTION = 1, + LOCAL_CHECK_OPTION = 2, + CASCADED_CHECK_OPTION = 3, +} +export enum DiscardMode { + DISCARD_MODE_UNDEFINED = 0, + DISCARD_ALL = 1, + DISCARD_PLANS = 2, + DISCARD_SEQUENCES = 3, + DISCARD_TEMP = 4, +} +export enum ReindexObjectType { + REINDEX_OBJECT_TYPE_UNDEFINED = 0, + REINDEX_OBJECT_INDEX = 1, + REINDEX_OBJECT_TABLE = 2, + REINDEX_OBJECT_SCHEMA = 3, + REINDEX_OBJECT_SYSTEM = 4, + REINDEX_OBJECT_DATABASE = 5, +} +export enum AlterTSConfigType { + ALTER_TSCONFIG_TYPE_UNDEFINED = 0, + ALTER_TSCONFIG_ADD_MAPPING = 1, + ALTER_TSCONFIG_ALTER_MAPPING_FOR_TOKEN = 2, + ALTER_TSCONFIG_REPLACE_DICT = 3, + ALTER_TSCONFIG_REPLACE_DICT_FOR_TOKEN = 4, + ALTER_TSCONFIG_DROP_MAPPING = 5, +} +export enum PublicationObjSpecType { + PUBLICATION_OBJ_SPEC_TYPE_UNDEFINED = 0, + PUBLICATIONOBJ_TABLE = 1, + PUBLICATIONOBJ_TABLES_IN_SCHEMA = 2, + PUBLICATIONOBJ_TABLES_IN_CUR_SCHEMA = 3, + PUBLICATIONOBJ_CONTINUATION = 4, +} +export enum AlterPublicationAction { + ALTER_PUBLICATION_ACTION_UNDEFINED = 0, + AP_AddObjects = 1, + AP_DropObjects = 2, + AP_SetObjects = 3, +} +export enum AlterSubscriptionType { + ALTER_SUBSCRIPTION_TYPE_UNDEFINED = 0, + ALTER_SUBSCRIPTION_OPTIONS = 1, + ALTER_SUBSCRIPTION_CONNECTION = 2, + ALTER_SUBSCRIPTION_SET_PUBLICATION = 3, + ALTER_SUBSCRIPTION_ADD_PUBLICATION = 4, + ALTER_SUBSCRIPTION_DROP_PUBLICATION = 5, + ALTER_SUBSCRIPTION_REFRESH = 6, + ALTER_SUBSCRIPTION_ENABLED = 7, + ALTER_SUBSCRIPTION_SKIP = 8, +} +export enum OnCommitAction { + ON_COMMIT_ACTION_UNDEFINED = 0, + ONCOMMIT_NOOP = 1, + ONCOMMIT_PRESERVE_ROWS = 2, + ONCOMMIT_DELETE_ROWS = 3, + ONCOMMIT_DROP = 4, +} +export enum ParamKind { + PARAM_KIND_UNDEFINED = 0, + PARAM_EXTERN = 1, + PARAM_EXEC = 2, + PARAM_SUBLINK = 3, + PARAM_MULTIEXPR = 4, +} +export enum CoercionContext { + COERCION_CONTEXT_UNDEFINED = 0, + COERCION_IMPLICIT = 1, + COERCION_ASSIGNMENT = 2, + COERCION_PLPGSQL = 3, + COERCION_EXPLICIT = 4, +} +export enum CoercionForm { + COERCION_FORM_UNDEFINED = 0, + COERCE_EXPLICIT_CALL = 1, + COERCE_EXPLICIT_CAST = 2, + COERCE_IMPLICIT_CAST = 3, + COERCE_SQL_SYNTAX = 4, +} +export enum BoolExprType { + BOOL_EXPR_TYPE_UNDEFINED = 0, + AND_EXPR = 1, + OR_EXPR = 2, + NOT_EXPR = 3, +} +export enum SubLinkType { + SUB_LINK_TYPE_UNDEFINED = 0, + EXISTS_SUBLINK = 1, + ALL_SUBLINK = 2, + ANY_SUBLINK = 3, + ROWCOMPARE_SUBLINK = 4, + EXPR_SUBLINK = 5, + MULTIEXPR_SUBLINK = 6, + ARRAY_SUBLINK = 7, + CTE_SUBLINK = 8, +} +export enum RowCompareType { + ROW_COMPARE_TYPE_UNDEFINED = 0, + ROWCOMPARE_LT = 1, + ROWCOMPARE_LE = 2, + ROWCOMPARE_EQ = 3, + ROWCOMPARE_GE = 4, + ROWCOMPARE_GT = 5, + ROWCOMPARE_NE = 6, +} +export enum MinMaxOp { + MIN_MAX_OP_UNDEFINED = 0, + IS_GREATEST = 1, + IS_LEAST = 2, +} +export enum SQLValueFunctionOp { + SQLVALUE_FUNCTION_OP_UNDEFINED = 0, + SVFOP_CURRENT_DATE = 1, + SVFOP_CURRENT_TIME = 2, + SVFOP_CURRENT_TIME_N = 3, + SVFOP_CURRENT_TIMESTAMP = 4, + SVFOP_CURRENT_TIMESTAMP_N = 5, + SVFOP_LOCALTIME = 6, + SVFOP_LOCALTIME_N = 7, + SVFOP_LOCALTIMESTAMP = 8, + SVFOP_LOCALTIMESTAMP_N = 9, + SVFOP_CURRENT_ROLE = 10, + SVFOP_CURRENT_USER = 11, + SVFOP_USER = 12, + SVFOP_SESSION_USER = 13, + SVFOP_CURRENT_CATALOG = 14, + SVFOP_CURRENT_SCHEMA = 15, +} +export enum XmlExprOp { + XML_EXPR_OP_UNDEFINED = 0, + IS_XMLCONCAT = 1, + IS_XMLELEMENT = 2, + IS_XMLFOREST = 3, + IS_XMLPARSE = 4, + IS_XMLPI = 5, + IS_XMLROOT = 6, + IS_XMLSERIALIZE = 7, + IS_DOCUMENT = 8, +} +export enum XmlOptionType { + XML_OPTION_TYPE_UNDEFINED = 0, + XMLOPTION_DOCUMENT = 1, + XMLOPTION_CONTENT = 2, +} +export enum JsonEncoding { + JSON_ENCODING_UNDEFINED = 0, + JS_ENC_DEFAULT = 1, + JS_ENC_UTF8 = 2, + JS_ENC_UTF16 = 3, + JS_ENC_UTF32 = 4, +} +export enum JsonFormatType { + JSON_FORMAT_TYPE_UNDEFINED = 0, + JS_FORMAT_DEFAULT = 1, + JS_FORMAT_JSON = 2, + JS_FORMAT_JSONB = 3, +} +export enum JsonConstructorType { + JSON_CONSTRUCTOR_TYPE_UNDEFINED = 0, + JSCTOR_JSON_OBJECT = 1, + JSCTOR_JSON_ARRAY = 2, + JSCTOR_JSON_OBJECTAGG = 3, + JSCTOR_JSON_ARRAYAGG = 4, +} +export enum JsonValueType { + JSON_VALUE_TYPE_UNDEFINED = 0, + JS_TYPE_ANY = 1, + JS_TYPE_OBJECT = 2, + JS_TYPE_ARRAY = 3, + JS_TYPE_SCALAR = 4, +} +export enum NullTestType { + NULL_TEST_TYPE_UNDEFINED = 0, + IS_NULL = 1, + IS_NOT_NULL = 2, +} +export enum BoolTestType { + BOOL_TEST_TYPE_UNDEFINED = 0, + IS_TRUE = 1, + IS_NOT_TRUE = 2, + IS_FALSE = 3, + IS_NOT_FALSE = 4, + IS_UNKNOWN = 5, + IS_NOT_UNKNOWN = 6, +} +export enum CmdType { + CMD_TYPE_UNDEFINED = 0, + CMD_UNKNOWN = 1, + CMD_SELECT = 2, + CMD_UPDATE = 3, + CMD_INSERT = 4, + CMD_DELETE = 5, + CMD_MERGE = 6, + CMD_UTILITY = 7, + CMD_NOTHING = 8, +} +export enum JoinType { + JOIN_TYPE_UNDEFINED = 0, + JOIN_INNER = 1, + JOIN_LEFT = 2, + JOIN_FULL = 3, + JOIN_RIGHT = 4, + JOIN_SEMI = 5, + JOIN_ANTI = 6, + JOIN_RIGHT_ANTI = 7, + JOIN_UNIQUE_OUTER = 8, + JOIN_UNIQUE_INNER = 9, +} +export enum AggStrategy { + AGG_STRATEGY_UNDEFINED = 0, + AGG_PLAIN = 1, + AGG_SORTED = 2, + AGG_HASHED = 3, + AGG_MIXED = 4, +} +export enum AggSplit { + AGG_SPLIT_UNDEFINED = 0, + AGGSPLIT_SIMPLE = 1, + AGGSPLIT_INITIAL_SERIAL = 2, + AGGSPLIT_FINAL_DESERIAL = 3, +} +export enum SetOpCmd { + SET_OP_CMD_UNDEFINED = 0, + SETOPCMD_INTERSECT = 1, + SETOPCMD_INTERSECT_ALL = 2, + SETOPCMD_EXCEPT = 3, + SETOPCMD_EXCEPT_ALL = 4, +} +export enum SetOpStrategy { + SET_OP_STRATEGY_UNDEFINED = 0, + SETOP_SORTED = 1, + SETOP_HASHED = 2, +} +export enum OnConflictAction { + ON_CONFLICT_ACTION_UNDEFINED = 0, + ONCONFLICT_NONE = 1, + ONCONFLICT_NOTHING = 2, + ONCONFLICT_UPDATE = 3, +} +export enum LimitOption { + LIMIT_OPTION_UNDEFINED = 0, + LIMIT_OPTION_DEFAULT = 1, + LIMIT_OPTION_COUNT = 2, + LIMIT_OPTION_WITH_TIES = 3, +} +export enum LockClauseStrength { + LOCK_CLAUSE_STRENGTH_UNDEFINED = 0, + LCS_NONE = 1, + LCS_FORKEYSHARE = 2, + LCS_FORSHARE = 3, + LCS_FORNOKEYUPDATE = 4, + LCS_FORUPDATE = 5, +} +export enum LockWaitPolicy { + LOCK_WAIT_POLICY_UNDEFINED = 0, + LockWaitBlock = 1, + LockWaitSkip = 2, + LockWaitError = 3, +} +export enum LockTupleMode { + LOCK_TUPLE_MODE_UNDEFINED = 0, + LockTupleKeyShare = 1, + LockTupleShare = 2, + LockTupleNoKeyExclusive = 3, + LockTupleExclusive = 4, +} +export enum KeywordKind { + NO_KEYWORD = 0, + UNRESERVED_KEYWORD = 1, + COL_NAME_KEYWORD = 2, + TYPE_FUNC_NAME_KEYWORD = 3, + RESERVED_KEYWORD = 4, +} +export enum Token { + NUL = 0, + ASCII_36 = 36, + ASCII_37 = 37, + ASCII_40 = 40, + ASCII_41 = 41, + ASCII_42 = 42, + ASCII_43 = 43, + ASCII_44 = 44, + ASCII_45 = 45, + ASCII_46 = 46, + ASCII_47 = 47, + ASCII_58 = 58, + ASCII_59 = 59, + ASCII_60 = 60, + ASCII_61 = 61, + ASCII_62 = 62, + ASCII_63 = 63, + ASCII_91 = 91, + ASCII_92 = 92, + ASCII_93 = 93, + ASCII_94 = 94, + IDENT = 258, + UIDENT = 259, + FCONST = 260, + SCONST = 261, + USCONST = 262, + BCONST = 263, + XCONST = 264, + Op = 265, + ICONST = 266, + PARAM = 267, + TYPECAST = 268, + DOT_DOT = 269, + COLON_EQUALS = 270, + EQUALS_GREATER = 271, + LESS_EQUALS = 272, + GREATER_EQUALS = 273, + NOT_EQUALS = 274, + SQL_COMMENT = 275, + C_COMMENT = 276, + ABORT_P = 277, + ABSENT = 278, + ABSOLUTE_P = 279, + ACCESS = 280, + ACTION = 281, + ADD_P = 282, + ADMIN = 283, + AFTER = 284, + AGGREGATE = 285, + ALL = 286, + ALSO = 287, + ALTER = 288, + ALWAYS = 289, + ANALYSE = 290, + ANALYZE = 291, + AND = 292, + ANY = 293, + ARRAY = 294, + AS = 295, + ASC = 296, + ASENSITIVE = 297, + ASSERTION = 298, + ASSIGNMENT = 299, + ASYMMETRIC = 300, + ATOMIC = 301, + AT = 302, + ATTACH = 303, + ATTRIBUTE = 304, + AUTHORIZATION = 305, + BACKWARD = 306, + BEFORE = 307, + BEGIN_P = 308, + BETWEEN = 309, + BIGINT = 310, + BINARY = 311, + BIT = 312, + BOOLEAN_P = 313, + BOTH = 314, + BREADTH = 315, + BY = 316, + CACHE = 317, + CALL = 318, + CALLED = 319, + CASCADE = 320, + CASCADED = 321, + CASE = 322, + CAST = 323, + CATALOG_P = 324, + CHAIN = 325, + CHAR_P = 326, + CHARACTER = 327, + CHARACTERISTICS = 328, + CHECK = 329, + CHECKPOINT = 330, + CLASS = 331, + CLOSE = 332, + CLUSTER = 333, + COALESCE = 334, + COLLATE = 335, + COLLATION = 336, + COLUMN = 337, + COLUMNS = 338, + COMMENT = 339, + COMMENTS = 340, + COMMIT = 341, + COMMITTED = 342, + COMPRESSION = 343, + CONCURRENTLY = 344, + CONFIGURATION = 345, + CONFLICT = 346, + CONNECTION = 347, + CONSTRAINT = 348, + CONSTRAINTS = 349, + CONTENT_P = 350, + CONTINUE_P = 351, + CONVERSION_P = 352, + COPY = 353, + COST = 354, + CREATE = 355, + CROSS = 356, + CSV = 357, + CUBE = 358, + CURRENT_P = 359, + CURRENT_CATALOG = 360, + CURRENT_DATE = 361, + CURRENT_ROLE = 362, + CURRENT_SCHEMA = 363, + CURRENT_TIME = 364, + CURRENT_TIMESTAMP = 365, + CURRENT_USER = 366, + CURSOR = 367, + CYCLE = 368, + DATA_P = 369, + DATABASE = 370, + DAY_P = 371, + DEALLOCATE = 372, + DEC = 373, + DECIMAL_P = 374, + DECLARE = 375, + DEFAULT = 376, + DEFAULTS = 377, + DEFERRABLE = 378, + DEFERRED = 379, + DEFINER = 380, + DELETE_P = 381, + DELIMITER = 382, + DELIMITERS = 383, + DEPENDS = 384, + DEPTH = 385, + DESC = 386, + DETACH = 387, + DICTIONARY = 388, + DISABLE_P = 389, + DISCARD = 390, + DISTINCT = 391, + DO = 392, + DOCUMENT_P = 393, + DOMAIN_P = 394, + DOUBLE_P = 395, + DROP = 396, + EACH = 397, + ELSE = 398, + ENABLE_P = 399, + ENCODING = 400, + ENCRYPTED = 401, + END_P = 402, + ENUM_P = 403, + ESCAPE = 404, + EVENT = 405, + EXCEPT = 406, + EXCLUDE = 407, + EXCLUDING = 408, + EXCLUSIVE = 409, + EXECUTE = 410, + EXISTS = 411, + EXPLAIN = 412, + EXPRESSION = 413, + EXTENSION = 414, + EXTERNAL = 415, + EXTRACT = 416, + FALSE_P = 417, + FAMILY = 418, + FETCH = 419, + FILTER = 420, + FINALIZE = 421, + FIRST_P = 422, + FLOAT_P = 423, + FOLLOWING = 424, + FOR = 425, + FORCE = 426, + FOREIGN = 427, + FORMAT = 428, + FORWARD = 429, + FREEZE = 430, + FROM = 431, + FULL = 432, + FUNCTION = 433, + FUNCTIONS = 434, + GENERATED = 435, + GLOBAL = 436, + GRANT = 437, + GRANTED = 438, + GREATEST = 439, + GROUP_P = 440, + GROUPING = 441, + GROUPS = 442, + HANDLER = 443, + HAVING = 444, + HEADER_P = 445, + HOLD = 446, + HOUR_P = 447, + IDENTITY_P = 448, + IF_P = 449, + ILIKE = 450, + IMMEDIATE = 451, + IMMUTABLE = 452, + IMPLICIT_P = 453, + IMPORT_P = 454, + IN_P = 455, + INCLUDE = 456, + INCLUDING = 457, + INCREMENT = 458, + INDENT = 459, + INDEX = 460, + INDEXES = 461, + INHERIT = 462, + INHERITS = 463, + INITIALLY = 464, + INLINE_P = 465, + INNER_P = 466, + INOUT = 467, + INPUT_P = 468, + INSENSITIVE = 469, + INSERT = 470, + INSTEAD = 471, + INT_P = 472, + INTEGER = 473, + INTERSECT = 474, + INTERVAL = 475, + INTO = 476, + INVOKER = 477, + IS = 478, + ISNULL = 479, + ISOLATION = 480, + JOIN = 481, + JSON = 482, + JSON_ARRAY = 483, + JSON_ARRAYAGG = 484, + JSON_OBJECT = 485, + JSON_OBJECTAGG = 486, + KEY = 487, + KEYS = 488, + LABEL = 489, + LANGUAGE = 490, + LARGE_P = 491, + LAST_P = 492, + LATERAL_P = 493, + LEADING = 494, + LEAKPROOF = 495, + LEAST = 496, + LEFT = 497, + LEVEL = 498, + LIKE = 499, + LIMIT = 500, + LISTEN = 501, + LOAD = 502, + LOCAL = 503, + LOCALTIME = 504, + LOCALTIMESTAMP = 505, + LOCATION = 506, + LOCK_P = 507, + LOCKED = 508, + LOGGED = 509, + MAPPING = 510, + MATCH = 511, + MATCHED = 512, + MATERIALIZED = 513, + MAXVALUE = 514, + MERGE = 515, + METHOD = 516, + MINUTE_P = 517, + MINVALUE = 518, + MODE = 519, + MONTH_P = 520, + MOVE = 521, + NAME_P = 522, + NAMES = 523, + NATIONAL = 524, + NATURAL = 525, + NCHAR = 526, + NEW = 527, + NEXT = 528, + NFC = 529, + NFD = 530, + NFKC = 531, + NFKD = 532, + NO = 533, + NONE = 534, + NORMALIZE = 535, + NORMALIZED = 536, + NOT = 537, + NOTHING = 538, + NOTIFY = 539, + NOTNULL = 540, + NOWAIT = 541, + NULL_P = 542, + NULLIF = 543, + NULLS_P = 544, + NUMERIC = 545, + OBJECT_P = 546, + OF = 547, + OFF = 548, + OFFSET = 549, + OIDS = 550, + OLD = 551, + ON = 552, + ONLY = 553, + OPERATOR = 554, + OPTION = 555, + OPTIONS = 556, + OR = 557, + ORDER = 558, + ORDINALITY = 559, + OTHERS = 560, + OUT_P = 561, + OUTER_P = 562, + OVER = 563, + OVERLAPS = 564, + OVERLAY = 565, + OVERRIDING = 566, + OWNED = 567, + OWNER = 568, + PARALLEL = 569, + PARAMETER = 570, + PARSER = 571, + PARTIAL = 572, + PARTITION = 573, + PASSING = 574, + PASSWORD = 575, + PLACING = 576, + PLANS = 577, + POLICY = 578, + POSITION = 579, + PRECEDING = 580, + PRECISION = 581, + PRESERVE = 582, + PREPARE = 583, + PREPARED = 584, + PRIMARY = 585, + PRIOR = 586, + PRIVILEGES = 587, + PROCEDURAL = 588, + PROCEDURE = 589, + PROCEDURES = 590, + PROGRAM = 591, + PUBLICATION = 592, + QUOTE = 593, + RANGE = 594, + READ = 595, + REAL = 596, + REASSIGN = 597, + RECHECK = 598, + RECURSIVE = 599, + REF_P = 600, + REFERENCES = 601, + REFERENCING = 602, + REFRESH = 603, + REINDEX = 604, + RELATIVE_P = 605, + RELEASE = 606, + RENAME = 607, + REPEATABLE = 608, + REPLACE = 609, + REPLICA = 610, + RESET = 611, + RESTART = 612, + RESTRICT = 613, + RETURN = 614, + RETURNING = 615, + RETURNS = 616, + REVOKE = 617, + RIGHT = 618, + ROLE = 619, + ROLLBACK = 620, + ROLLUP = 621, + ROUTINE = 622, + ROUTINES = 623, + ROW = 624, + ROWS = 625, + RULE = 626, + SAVEPOINT = 627, + SCALAR = 628, + SCHEMA = 629, + SCHEMAS = 630, + SCROLL = 631, + SEARCH = 632, + SECOND_P = 633, + SECURITY = 634, + SELECT = 635, + SEQUENCE = 636, + SEQUENCES = 637, + SERIALIZABLE = 638, + SERVER = 639, + SESSION = 640, + SESSION_USER = 641, + SET = 642, + SETS = 643, + SETOF = 644, + SHARE = 645, + SHOW = 646, + SIMILAR = 647, + SIMPLE = 648, + SKIP = 649, + SMALLINT = 650, + SNAPSHOT = 651, + SOME = 652, + SQL_P = 653, + STABLE = 654, + STANDALONE_P = 655, + START = 656, + STATEMENT = 657, + STATISTICS = 658, + STDIN = 659, + STDOUT = 660, + STORAGE = 661, + STORED = 662, + STRICT_P = 663, + STRIP_P = 664, + SUBSCRIPTION = 665, + SUBSTRING = 666, + SUPPORT = 667, + SYMMETRIC = 668, + SYSID = 669, + SYSTEM_P = 670, + SYSTEM_USER = 671, + TABLE = 672, + TABLES = 673, + TABLESAMPLE = 674, + TABLESPACE = 675, + TEMP = 676, + TEMPLATE = 677, + TEMPORARY = 678, + TEXT_P = 679, + THEN = 680, + TIES = 681, + TIME = 682, + TIMESTAMP = 683, + TO = 684, + TRAILING = 685, + TRANSACTION = 686, + TRANSFORM = 687, + TREAT = 688, + TRIGGER = 689, + TRIM = 690, + TRUE_P = 691, + TRUNCATE = 692, + TRUSTED = 693, + TYPE_P = 694, + TYPES_P = 695, + UESCAPE = 696, + UNBOUNDED = 697, + UNCOMMITTED = 698, + UNENCRYPTED = 699, + UNION = 700, + UNIQUE = 701, + UNKNOWN = 702, + UNLISTEN = 703, + UNLOGGED = 704, + UNTIL = 705, + UPDATE = 706, + USER = 707, + USING = 708, + VACUUM = 709, + VALID = 710, + VALIDATE = 711, + VALIDATOR = 712, + VALUE_P = 713, + VALUES = 714, + VARCHAR = 715, + VARIADIC = 716, + VARYING = 717, + VERBOSE = 718, + VERSION_P = 719, + VIEW = 720, + VIEWS = 721, + VOLATILE = 722, + WHEN = 723, + WHERE = 724, + WHITESPACE_P = 725, + WINDOW = 726, + WITH = 727, + WITHIN = 728, + WITHOUT = 729, + WORK = 730, + WRAPPER = 731, + WRITE = 732, + XML_P = 733, + XMLATTRIBUTES = 734, + XMLCONCAT = 735, + XMLELEMENT = 736, + XMLEXISTS = 737, + XMLFOREST = 738, + XMLNAMESPACES = 739, + XMLPARSE = 740, + XMLPI = 741, + XMLROOT = 742, + XMLSERIALIZE = 743, + XMLTABLE = 744, + YEAR_P = 745, + YES_P = 746, + ZONE = 747, + FORMAT_LA = 748, + NOT_LA = 749, + NULLS_LA = 750, + WITH_LA = 751, + WITHOUT_LA = 752, + MODE_TYPE_NAME = 753, + MODE_PLPGSQL_EXPR = 754, + MODE_PLPGSQL_ASSIGN1 = 755, + MODE_PLPGSQL_ASSIGN2 = 756, + MODE_PLPGSQL_ASSIGN3 = 757, + UMINUS = 758, +} +export interface ParseResult { + version: number; + stmts: RawStmt[]; +} +export interface ScanResult { + version: number; + tokens: ScanToken[]; +} +export interface Node { + alias: Alias; + range_var: RangeVar; + table_func: TableFunc; + into_clause: IntoClause; + var: Var; + param: Param; + aggref: Aggref; + grouping_func: GroupingFunc; + window_func: WindowFunc; + subscripting_ref: SubscriptingRef; + func_expr: FuncExpr; + named_arg_expr: NamedArgExpr; + op_expr: OpExpr; + distinct_expr: DistinctExpr; + null_if_expr: NullIfExpr; + scalar_array_op_expr: ScalarArrayOpExpr; + bool_expr: BoolExpr; + sub_link: SubLink; + sub_plan: SubPlan; + alternative_sub_plan: AlternativeSubPlan; + field_select: FieldSelect; + field_store: FieldStore; + relabel_type: RelabelType; + coerce_via_io: CoerceViaIO; + array_coerce_expr: ArrayCoerceExpr; + convert_rowtype_expr: ConvertRowtypeExpr; + collate_expr: CollateExpr; + case_expr: CaseExpr; + case_when: CaseWhen; + case_test_expr: CaseTestExpr; + array_expr: ArrayExpr; + row_expr: RowExpr; + row_compare_expr: RowCompareExpr; + coalesce_expr: CoalesceExpr; + min_max_expr: MinMaxExpr; + sqlvalue_function: SQLValueFunction; + xml_expr: XmlExpr; + json_format: JsonFormat; + json_returning: JsonReturning; + json_value_expr: JsonValueExpr; + json_constructor_expr: JsonConstructorExpr; + json_is_predicate: JsonIsPredicate; + null_test: NullTest; + boolean_test: BooleanTest; + coerce_to_domain: CoerceToDomain; + coerce_to_domain_value: CoerceToDomainValue; + set_to_default: SetToDefault; + current_of_expr: CurrentOfExpr; + next_value_expr: NextValueExpr; + inference_elem: InferenceElem; + target_entry: TargetEntry; + range_tbl_ref: RangeTblRef; + join_expr: JoinExpr; + from_expr: FromExpr; + on_conflict_expr: OnConflictExpr; + query: Query; + type_name: TypeName; + column_ref: ColumnRef; + param_ref: ParamRef; + a_expr: A_Expr; + type_cast: TypeCast; + collate_clause: CollateClause; + role_spec: RoleSpec; + func_call: FuncCall; + a_star: A_Star; + a_indices: A_Indices; + a_indirection: A_Indirection; + a_array_expr: A_ArrayExpr; + res_target: ResTarget; + multi_assign_ref: MultiAssignRef; + sort_by: SortBy; + window_def: WindowDef; + range_subselect: RangeSubselect; + range_function: RangeFunction; + range_table_func: RangeTableFunc; + range_table_func_col: RangeTableFuncCol; + range_table_sample: RangeTableSample; + column_def: ColumnDef; + table_like_clause: TableLikeClause; + index_elem: IndexElem; + def_elem: DefElem; + locking_clause: LockingClause; + xml_serialize: XmlSerialize; + partition_elem: PartitionElem; + partition_spec: PartitionSpec; + partition_bound_spec: PartitionBoundSpec; + partition_range_datum: PartitionRangeDatum; + partition_cmd: PartitionCmd; + range_tbl_entry: RangeTblEntry; + rtepermission_info: RTEPermissionInfo; + range_tbl_function: RangeTblFunction; + table_sample_clause: TableSampleClause; + with_check_option: WithCheckOption; + sort_group_clause: SortGroupClause; + grouping_set: GroupingSet; + window_clause: WindowClause; + row_mark_clause: RowMarkClause; + with_clause: WithClause; + infer_clause: InferClause; + on_conflict_clause: OnConflictClause; + ctesearch_clause: CTESearchClause; + ctecycle_clause: CTECycleClause; + common_table_expr: CommonTableExpr; + merge_when_clause: MergeWhenClause; + merge_action: MergeAction; + trigger_transition: TriggerTransition; + json_output: JsonOutput; + json_key_value: JsonKeyValue; + json_object_constructor: JsonObjectConstructor; + json_array_constructor: JsonArrayConstructor; + json_array_query_constructor: JsonArrayQueryConstructor; + json_agg_constructor: JsonAggConstructor; + json_object_agg: JsonObjectAgg; + json_array_agg: JsonArrayAgg; + raw_stmt: RawStmt; + insert_stmt: InsertStmt; + delete_stmt: DeleteStmt; + update_stmt: UpdateStmt; + merge_stmt: MergeStmt; + select_stmt: SelectStmt; + set_operation_stmt: SetOperationStmt; + return_stmt: ReturnStmt; + plassign_stmt: PLAssignStmt; + create_schema_stmt: CreateSchemaStmt; + alter_table_stmt: AlterTableStmt; + replica_identity_stmt: ReplicaIdentityStmt; + alter_table_cmd: AlterTableCmd; + alter_collation_stmt: AlterCollationStmt; + alter_domain_stmt: AlterDomainStmt; + grant_stmt: GrantStmt; + object_with_args: ObjectWithArgs; + access_priv: AccessPriv; + grant_role_stmt: GrantRoleStmt; + alter_default_privileges_stmt: AlterDefaultPrivilegesStmt; + copy_stmt: CopyStmt; + variable_set_stmt: VariableSetStmt; + variable_show_stmt: VariableShowStmt; + create_stmt: CreateStmt; + constraint: Constraint; + create_table_space_stmt: CreateTableSpaceStmt; + drop_table_space_stmt: DropTableSpaceStmt; + alter_table_space_options_stmt: AlterTableSpaceOptionsStmt; + alter_table_move_all_stmt: AlterTableMoveAllStmt; + create_extension_stmt: CreateExtensionStmt; + alter_extension_stmt: AlterExtensionStmt; + alter_extension_contents_stmt: AlterExtensionContentsStmt; + create_fdw_stmt: CreateFdwStmt; + alter_fdw_stmt: AlterFdwStmt; + create_foreign_server_stmt: CreateForeignServerStmt; + alter_foreign_server_stmt: AlterForeignServerStmt; + create_foreign_table_stmt: CreateForeignTableStmt; + create_user_mapping_stmt: CreateUserMappingStmt; + alter_user_mapping_stmt: AlterUserMappingStmt; + drop_user_mapping_stmt: DropUserMappingStmt; + import_foreign_schema_stmt: ImportForeignSchemaStmt; + create_policy_stmt: CreatePolicyStmt; + alter_policy_stmt: AlterPolicyStmt; + create_am_stmt: CreateAmStmt; + create_trig_stmt: CreateTrigStmt; + create_event_trig_stmt: CreateEventTrigStmt; + alter_event_trig_stmt: AlterEventTrigStmt; + create_plang_stmt: CreatePLangStmt; + create_role_stmt: CreateRoleStmt; + alter_role_stmt: AlterRoleStmt; + alter_role_set_stmt: AlterRoleSetStmt; + drop_role_stmt: DropRoleStmt; + create_seq_stmt: CreateSeqStmt; + alter_seq_stmt: AlterSeqStmt; + define_stmt: DefineStmt; + create_domain_stmt: CreateDomainStmt; + create_op_class_stmt: CreateOpClassStmt; + create_op_class_item: CreateOpClassItem; + create_op_family_stmt: CreateOpFamilyStmt; + alter_op_family_stmt: AlterOpFamilyStmt; + drop_stmt: DropStmt; + truncate_stmt: TruncateStmt; + comment_stmt: CommentStmt; + sec_label_stmt: SecLabelStmt; + declare_cursor_stmt: DeclareCursorStmt; + close_portal_stmt: ClosePortalStmt; + fetch_stmt: FetchStmt; + index_stmt: IndexStmt; + create_stats_stmt: CreateStatsStmt; + stats_elem: StatsElem; + alter_stats_stmt: AlterStatsStmt; + create_function_stmt: CreateFunctionStmt; + function_parameter: FunctionParameter; + alter_function_stmt: AlterFunctionStmt; + do_stmt: DoStmt; + inline_code_block: InlineCodeBlock; + call_stmt: CallStmt; + call_context: CallContext; + rename_stmt: RenameStmt; + alter_object_depends_stmt: AlterObjectDependsStmt; + alter_object_schema_stmt: AlterObjectSchemaStmt; + alter_owner_stmt: AlterOwnerStmt; + alter_operator_stmt: AlterOperatorStmt; + alter_type_stmt: AlterTypeStmt; + rule_stmt: RuleStmt; + notify_stmt: NotifyStmt; + listen_stmt: ListenStmt; + unlisten_stmt: UnlistenStmt; + transaction_stmt: TransactionStmt; + composite_type_stmt: CompositeTypeStmt; + create_enum_stmt: CreateEnumStmt; + create_range_stmt: CreateRangeStmt; + alter_enum_stmt: AlterEnumStmt; + view_stmt: ViewStmt; + load_stmt: LoadStmt; + createdb_stmt: CreatedbStmt; + alter_database_stmt: AlterDatabaseStmt; + alter_database_refresh_coll_stmt: AlterDatabaseRefreshCollStmt; + alter_database_set_stmt: AlterDatabaseSetStmt; + dropdb_stmt: DropdbStmt; + alter_system_stmt: AlterSystemStmt; + cluster_stmt: ClusterStmt; + vacuum_stmt: VacuumStmt; + vacuum_relation: VacuumRelation; + explain_stmt: ExplainStmt; + create_table_as_stmt: CreateTableAsStmt; + refresh_mat_view_stmt: RefreshMatViewStmt; + check_point_stmt: CheckPointStmt; + discard_stmt: DiscardStmt; + lock_stmt: LockStmt; + constraints_set_stmt: ConstraintsSetStmt; + reindex_stmt: ReindexStmt; + create_conversion_stmt: CreateConversionStmt; + create_cast_stmt: CreateCastStmt; + create_transform_stmt: CreateTransformStmt; + prepare_stmt: PrepareStmt; + execute_stmt: ExecuteStmt; + deallocate_stmt: DeallocateStmt; + drop_owned_stmt: DropOwnedStmt; + reassign_owned_stmt: ReassignOwnedStmt; + alter_tsdictionary_stmt: AlterTSDictionaryStmt; + alter_tsconfiguration_stmt: AlterTSConfigurationStmt; + publication_table: PublicationTable; + publication_obj_spec: PublicationObjSpec; + create_publication_stmt: CreatePublicationStmt; + alter_publication_stmt: AlterPublicationStmt; + create_subscription_stmt: CreateSubscriptionStmt; + alter_subscription_stmt: AlterSubscriptionStmt; + drop_subscription_stmt: DropSubscriptionStmt; + integer: Integer; + float: Float; + boolean: Boolean; + string: String; + bit_string: BitString; + list: List; + int_list: IntList; + oid_list: OidList; + a_const: A_Const; +} +export interface Integer { + ival: number; +} +export interface Float { + fval: string; +} +export interface Boolean { + boolval: boolean; +} +export interface String { + sval: string; +} +export interface BitString { + bsval: string; +} +export interface List { + items: Node[]; +} +export interface OidList { + items: Node[]; +} +export interface IntList { + items: Node[]; +} +export interface A_Const { + ival: Integer; + fval: Float; + boolval: Boolean; + sval: String; + bsval: BitString; + isnull: boolean; + location: number; +} +export interface Alias { + aliasname: string; + colnames: Node[]; +} +export interface RangeVar { + catalogname: string; + schemaname: string; + relname: string; + inh: boolean; + relpersistence: string; + alias: Alias; + location: number; +} +export interface TableFunc { + ns_uris: Node[]; + ns_names: Node[]; + docexpr: Node; + rowexpr: Node; + colnames: Node[]; + coltypes: Node[]; + coltypmods: Node[]; + colcollations: Node[]; + colexprs: Node[]; + coldefexprs: Node[]; + notnulls: bigint[]; + ordinalitycol: number; + location: number; +} +export interface IntoClause { + rel: RangeVar; + col_names: Node[]; + access_method: string; + options: Node[]; + on_commit: OnCommitAction; + table_space_name: string; + view_query: Node; + skip_data: boolean; +} +export interface Var { + xpr: Node; + varno: number; + varattno: number; + vartype: number; + vartypmod: number; + varcollid: number; + varnullingrels: bigint[]; + varlevelsup: number; + location: number; +} +export interface Param { + xpr: Node; + paramkind: ParamKind; + paramid: number; + paramtype: number; + paramtypmod: number; + paramcollid: number; + location: number; +} +export interface Aggref { + xpr: Node; + aggfnoid: number; + aggtype: number; + aggcollid: number; + inputcollid: number; + aggargtypes: Node[]; + aggdirectargs: Node[]; + args: Node[]; + aggorder: Node[]; + aggdistinct: Node[]; + aggfilter: Node; + aggstar: boolean; + aggvariadic: boolean; + aggkind: string; + agglevelsup: number; + aggsplit: AggSplit; + aggno: number; + aggtransno: number; + location: number; +} +export interface GroupingFunc { + xpr: Node; + args: Node[]; + refs: Node[]; + agglevelsup: number; + location: number; +} +export interface WindowFunc { + xpr: Node; + winfnoid: number; + wintype: number; + wincollid: number; + inputcollid: number; + args: Node[]; + aggfilter: Node; + winref: number; + winstar: boolean; + winagg: boolean; + location: number; +} +export interface SubscriptingRef { + xpr: Node; + refcontainertype: number; + refelemtype: number; + refrestype: number; + reftypmod: number; + refcollid: number; + refupperindexpr: Node[]; + reflowerindexpr: Node[]; + refexpr: Node; + refassgnexpr: Node; +} +export interface FuncExpr { + xpr: Node; + funcid: number; + funcresulttype: number; + funcretset: boolean; + funcvariadic: boolean; + funcformat: CoercionForm; + funccollid: number; + inputcollid: number; + args: Node[]; + location: number; +} +export interface NamedArgExpr { + xpr: Node; + arg: Node; + name: string; + argnumber: number; + location: number; +} +export interface OpExpr { + xpr: Node; + opno: number; + opresulttype: number; + opretset: boolean; + opcollid: number; + inputcollid: number; + args: Node[]; + location: number; +} +export interface DistinctExpr { + xpr: Node; + opno: number; + opresulttype: number; + opretset: boolean; + opcollid: number; + inputcollid: number; + args: Node[]; + location: number; +} +export interface NullIfExpr { + xpr: Node; + opno: number; + opresulttype: number; + opretset: boolean; + opcollid: number; + inputcollid: number; + args: Node[]; + location: number; +} +export interface ScalarArrayOpExpr { + xpr: Node; + opno: number; + use_or: boolean; + inputcollid: number; + args: Node[]; + location: number; +} +export interface BoolExpr { + xpr: Node; + boolop: BoolExprType; + args: Node[]; + location: number; +} +export interface SubLink { + xpr: Node; + sub_link_type: SubLinkType; + sub_link_id: number; + testexpr: Node; + oper_name: Node[]; + subselect: Node; + location: number; +} +export interface SubPlan { + xpr: Node; + sub_link_type: SubLinkType; + testexpr: Node; + param_ids: Node[]; + plan_id: number; + plan_name: string; + first_col_type: number; + first_col_typmod: number; + first_col_collation: number; + use_hash_table: boolean; + unknown_eq_false: boolean; + parallel_safe: boolean; + set_param: Node[]; + par_param: Node[]; + args: Node[]; + startup_cost: number; + per_call_cost: number; +} +export interface AlternativeSubPlan { + xpr: Node; + subplans: Node[]; +} +export interface FieldSelect { + xpr: Node; + arg: Node; + fieldnum: number; + resulttype: number; + resulttypmod: number; + resultcollid: number; +} +export interface FieldStore { + xpr: Node; + arg: Node; + newvals: Node[]; + fieldnums: Node[]; + resulttype: number; +} +export interface RelabelType { + xpr: Node; + arg: Node; + resulttype: number; + resulttypmod: number; + resultcollid: number; + relabelformat: CoercionForm; + location: number; +} +export interface CoerceViaIO { + xpr: Node; + arg: Node; + resulttype: number; + resultcollid: number; + coerceformat: CoercionForm; + location: number; +} +export interface ArrayCoerceExpr { + xpr: Node; + arg: Node; + elemexpr: Node; + resulttype: number; + resulttypmod: number; + resultcollid: number; + coerceformat: CoercionForm; + location: number; +} +export interface ConvertRowtypeExpr { + xpr: Node; + arg: Node; + resulttype: number; + convertformat: CoercionForm; + location: number; +} +export interface CollateExpr { + xpr: Node; + arg: Node; + coll_oid: number; + location: number; +} +export interface CaseExpr { + xpr: Node; + casetype: number; + casecollid: number; + arg: Node; + args: Node[]; + defresult: Node; + location: number; +} +export interface CaseWhen { + xpr: Node; + expr: Node; + result: Node; + location: number; +} +export interface CaseTestExpr { + xpr: Node; + type_id: number; + type_mod: number; + collation: number; +} +export interface ArrayExpr { + xpr: Node; + array_typeid: number; + array_collid: number; + element_typeid: number; + elements: Node[]; + multidims: boolean; + location: number; +} +export interface RowExpr { + xpr: Node; + args: Node[]; + row_typeid: number; + row_format: CoercionForm; + colnames: Node[]; + location: number; +} +export interface RowCompareExpr { + xpr: Node; + rctype: RowCompareType; + opnos: Node[]; + opfamilies: Node[]; + inputcollids: Node[]; + largs: Node[]; + rargs: Node[]; +} +export interface CoalesceExpr { + xpr: Node; + coalescetype: number; + coalescecollid: number; + args: Node[]; + location: number; +} +export interface MinMaxExpr { + xpr: Node; + minmaxtype: number; + minmaxcollid: number; + inputcollid: number; + op: MinMaxOp; + args: Node[]; + location: number; +} +export interface SQLValueFunction { + xpr: Node; + op: SQLValueFunctionOp; + type: number; + typmod: number; + location: number; +} +export interface XmlExpr { + xpr: Node; + op: XmlExprOp; + name: string; + named_args: Node[]; + arg_names: Node[]; + args: Node[]; + xmloption: XmlOptionType; + indent: boolean; + type: number; + typmod: number; + location: number; +} +export interface JsonFormat { + format_type: JsonFormatType; + encoding: JsonEncoding; + location: number; +} +export interface JsonReturning { + format: JsonFormat; + typid: number; + typmod: number; +} +export interface JsonValueExpr { + raw_expr: Node; + formatted_expr: Node; + format: JsonFormat; +} +export interface JsonConstructorExpr { + xpr: Node; + type: JsonConstructorType; + args: Node[]; + func: Node; + coercion: Node; + returning: JsonReturning; + absent_on_null: boolean; + unique: boolean; + location: number; +} +export interface JsonIsPredicate { + expr: Node; + format: JsonFormat; + item_type: JsonValueType; + unique_keys: boolean; + location: number; +} +export interface NullTest { + xpr: Node; + arg: Node; + nulltesttype: NullTestType; + argisrow: boolean; + location: number; +} +export interface BooleanTest { + xpr: Node; + arg: Node; + booltesttype: BoolTestType; + location: number; +} +export interface CoerceToDomain { + xpr: Node; + arg: Node; + resulttype: number; + resulttypmod: number; + resultcollid: number; + coercionformat: CoercionForm; + location: number; +} +export interface CoerceToDomainValue { + xpr: Node; + type_id: number; + type_mod: number; + collation: number; + location: number; +} +export interface SetToDefault { + xpr: Node; + type_id: number; + type_mod: number; + collation: number; + location: number; +} +export interface CurrentOfExpr { + xpr: Node; + cvarno: number; + cursor_name: string; + cursor_param: number; +} +export interface NextValueExpr { + xpr: Node; + seqid: number; + type_id: number; +} +export interface InferenceElem { + xpr: Node; + expr: Node; + infercollid: number; + inferopclass: number; +} +export interface TargetEntry { + xpr: Node; + expr: Node; + resno: number; + resname: string; + ressortgroupref: number; + resorigtbl: number; + resorigcol: number; + resjunk: boolean; +} +export interface RangeTblRef { + rtindex: number; +} +export interface JoinExpr { + jointype: JoinType; + is_natural: boolean; + larg: Node; + rarg: Node; + using_clause: Node[]; + join_using_alias: Alias; + quals: Node; + alias: Alias; + rtindex: number; +} +export interface FromExpr { + fromlist: Node[]; + quals: Node; +} +export interface OnConflictExpr { + action: OnConflictAction; + arbiter_elems: Node[]; + arbiter_where: Node; + constraint: number; + on_conflict_set: Node[]; + on_conflict_where: Node; + excl_rel_index: number; + excl_rel_tlist: Node[]; +} +export interface Query { + command_type: CmdType; + query_source: QuerySource; + can_set_tag: boolean; + utility_stmt: Node; + result_relation: number; + has_aggs: boolean; + has_window_funcs: boolean; + has_target_srfs: boolean; + has_sub_links: boolean; + has_distinct_on: boolean; + has_recursive: boolean; + has_modifying_cte: boolean; + has_for_update: boolean; + has_row_security: boolean; + is_return: boolean; + cte_list: Node[]; + rtable: Node[]; + rteperminfos: Node[]; + jointree: FromExpr; + merge_action_list: Node[]; + merge_use_outer_join: boolean; + target_list: Node[]; + override: OverridingKind; + on_conflict: OnConflictExpr; + returning_list: Node[]; + group_clause: Node[]; + group_distinct: boolean; + grouping_sets: Node[]; + having_qual: Node; + window_clause: Node[]; + distinct_clause: Node[]; + sort_clause: Node[]; + limit_offset: Node; + limit_count: Node; + limit_option: LimitOption; + row_marks: Node[]; + set_operations: Node; + constraint_deps: Node[]; + with_check_options: Node[]; + stmt_location: number; + stmt_len: number; +} +export interface TypeName { + names: Node[]; + type_oid: number; + setof: boolean; + pct_type: boolean; + typmods: Node[]; + typemod: number; + array_bounds: Node[]; + location: number; +} +export interface ColumnRef { + fields: Node[]; + location: number; +} +export interface ParamRef { + number: number; + location: number; +} +export interface A_Expr { + kind: A_Expr_Kind; + name: Node[]; + lexpr: Node; + rexpr: Node; + location: number; +} +export interface TypeCast { + arg: Node; + type_name: TypeName; + location: number; +} +export interface CollateClause { + arg: Node; + collname: Node[]; + location: number; +} +export interface RoleSpec { + roletype: RoleSpecType; + rolename: string; + location: number; +} +export interface FuncCall { + funcname: Node[]; + args: Node[]; + agg_order: Node[]; + agg_filter: Node; + over: WindowDef; + agg_within_group: boolean; + agg_star: boolean; + agg_distinct: boolean; + func_variadic: boolean; + funcformat: CoercionForm; + location: number; +} +export interface A_Star {} +export interface A_Indices { + is_slice: boolean; + lidx: Node; + uidx: Node; +} +export interface A_Indirection { + arg: Node; + indirection: Node[]; +} +export interface A_ArrayExpr { + elements: Node[]; + location: number; +} +export interface ResTarget { + name: string; + indirection: Node[]; + val: Node; + location: number; +} +export interface MultiAssignRef { + source: Node; + colno: number; + ncolumns: number; +} +export interface SortBy { + node: Node; + sortby_dir: SortByDir; + sortby_nulls: SortByNulls; + use_op: Node[]; + location: number; +} +export interface WindowDef { + name: string; + refname: string; + partition_clause: Node[]; + order_clause: Node[]; + frame_options: number; + start_offset: Node; + end_offset: Node; + location: number; +} +export interface RangeSubselect { + lateral: boolean; + subquery: Node; + alias: Alias; +} +export interface RangeFunction { + lateral: boolean; + ordinality: boolean; + is_rowsfrom: boolean; + functions: Node[]; + alias: Alias; + coldeflist: Node[]; +} +export interface RangeTableFunc { + lateral: boolean; + docexpr: Node; + rowexpr: Node; + namespaces: Node[]; + columns: Node[]; + alias: Alias; + location: number; +} +export interface RangeTableFuncCol { + colname: string; + type_name: TypeName; + for_ordinality: boolean; + is_not_null: boolean; + colexpr: Node; + coldefexpr: Node; + location: number; +} +export interface RangeTableSample { + relation: Node; + method: Node[]; + args: Node[]; + repeatable: Node; + location: number; +} +export interface ColumnDef { + colname: string; + type_name: TypeName; + compression: string; + inhcount: number; + is_local: boolean; + is_not_null: boolean; + is_from_type: boolean; + storage: string; + storage_name: string; + raw_default: Node; + cooked_default: Node; + identity: string; + identity_sequence: RangeVar; + generated: string; + coll_clause: CollateClause; + coll_oid: number; + constraints: Node[]; + fdwoptions: Node[]; + location: number; +} +export interface TableLikeClause { + relation: RangeVar; + options: number; + relation_oid: number; +} +export interface IndexElem { + name: string; + expr: Node; + indexcolname: string; + collation: Node[]; + opclass: Node[]; + opclassopts: Node[]; + ordering: SortByDir; + nulls_ordering: SortByNulls; +} +export interface DefElem { + defnamespace: string; + defname: string; + arg: Node; + defaction: DefElemAction; + location: number; +} +export interface LockingClause { + locked_rels: Node[]; + strength: LockClauseStrength; + wait_policy: LockWaitPolicy; +} +export interface XmlSerialize { + xmloption: XmlOptionType; + expr: Node; + type_name: TypeName; + indent: boolean; + location: number; +} +export interface PartitionElem { + name: string; + expr: Node; + collation: Node[]; + opclass: Node[]; + location: number; +} +export interface PartitionSpec { + strategy: PartitionStrategy; + part_params: Node[]; + location: number; +} +export interface PartitionBoundSpec { + strategy: string; + is_default: boolean; + modulus: number; + remainder: number; + listdatums: Node[]; + lowerdatums: Node[]; + upperdatums: Node[]; + location: number; +} +export interface PartitionRangeDatum { + kind: PartitionRangeDatumKind; + value: Node; + location: number; +} +export interface PartitionCmd { + name: RangeVar; + bound: PartitionBoundSpec; + concurrent: boolean; +} +export interface RangeTblEntry { + rtekind: RTEKind; + relid: number; + relkind: string; + rellockmode: number; + tablesample: TableSampleClause; + perminfoindex: number; + subquery: Query; + security_barrier: boolean; + jointype: JoinType; + joinmergedcols: number; + joinaliasvars: Node[]; + joinleftcols: Node[]; + joinrightcols: Node[]; + join_using_alias: Alias; + functions: Node[]; + funcordinality: boolean; + tablefunc: TableFunc; + values_lists: Node[]; + ctename: string; + ctelevelsup: number; + self_reference: boolean; + coltypes: Node[]; + coltypmods: Node[]; + colcollations: Node[]; + enrname: string; + enrtuples: number; + alias: Alias; + eref: Alias; + lateral: boolean; + inh: boolean; + in_from_cl: boolean; + security_quals: Node[]; +} +export interface RTEPermissionInfo { + relid: number; + inh: boolean; + required_perms: bigint; + check_as_user: number; + selected_cols: bigint[]; + inserted_cols: bigint[]; + updated_cols: bigint[]; +} +export interface RangeTblFunction { + funcexpr: Node; + funccolcount: number; + funccolnames: Node[]; + funccoltypes: Node[]; + funccoltypmods: Node[]; + funccolcollations: Node[]; + funcparams: bigint[]; +} +export interface TableSampleClause { + tsmhandler: number; + args: Node[]; + repeatable: Node; +} +export interface WithCheckOption { + kind: WCOKind; + relname: string; + polname: string; + qual: Node; + cascaded: boolean; +} +export interface SortGroupClause { + tle_sort_group_ref: number; + eqop: number; + sortop: number; + nulls_first: boolean; + hashable: boolean; +} +export interface GroupingSet { + kind: GroupingSetKind; + content: Node[]; + location: number; +} +export interface WindowClause { + name: string; + refname: string; + partition_clause: Node[]; + order_clause: Node[]; + frame_options: number; + start_offset: Node; + end_offset: Node; + run_condition: Node[]; + start_in_range_func: number; + end_in_range_func: number; + in_range_coll: number; + in_range_asc: boolean; + in_range_nulls_first: boolean; + winref: number; + copied_order: boolean; +} +export interface RowMarkClause { + rti: number; + strength: LockClauseStrength; + wait_policy: LockWaitPolicy; + pushed_down: boolean; +} +export interface WithClause { + ctes: Node[]; + recursive: boolean; + location: number; +} +export interface InferClause { + index_elems: Node[]; + where_clause: Node; + conname: string; + location: number; +} +export interface OnConflictClause { + action: OnConflictAction; + infer: InferClause; + target_list: Node[]; + where_clause: Node; + location: number; +} +export interface CTESearchClause { + search_col_list: Node[]; + search_breadth_first: boolean; + search_seq_column: string; + location: number; +} +export interface CTECycleClause { + cycle_col_list: Node[]; + cycle_mark_column: string; + cycle_mark_value: Node; + cycle_mark_default: Node; + cycle_path_column: string; + location: number; + cycle_mark_type: number; + cycle_mark_typmod: number; + cycle_mark_collation: number; + cycle_mark_neop: number; +} +export interface CommonTableExpr { + ctename: string; + aliascolnames: Node[]; + ctematerialized: CTEMaterialize; + ctequery: Node; + search_clause: CTESearchClause; + cycle_clause: CTECycleClause; + location: number; + cterecursive: boolean; + cterefcount: number; + ctecolnames: Node[]; + ctecoltypes: Node[]; + ctecoltypmods: Node[]; + ctecolcollations: Node[]; +} +export interface MergeWhenClause { + matched: boolean; + command_type: CmdType; + override: OverridingKind; + condition: Node; + target_list: Node[]; + values: Node[]; +} +export interface MergeAction { + matched: boolean; + command_type: CmdType; + override: OverridingKind; + qual: Node; + target_list: Node[]; + update_colnos: Node[]; +} +export interface TriggerTransition { + name: string; + is_new: boolean; + is_table: boolean; +} +export interface JsonOutput { + type_name: TypeName; + returning: JsonReturning; +} +export interface JsonKeyValue { + key: Node; + value: JsonValueExpr; +} +export interface JsonObjectConstructor { + exprs: Node[]; + output: JsonOutput; + absent_on_null: boolean; + unique: boolean; + location: number; +} +export interface JsonArrayConstructor { + exprs: Node[]; + output: JsonOutput; + absent_on_null: boolean; + location: number; +} +export interface JsonArrayQueryConstructor { + query: Node; + output: JsonOutput; + format: JsonFormat; + absent_on_null: boolean; + location: number; +} +export interface JsonAggConstructor { + output: JsonOutput; + agg_filter: Node; + agg_order: Node[]; + over: WindowDef; + location: number; +} +export interface JsonObjectAgg { + constructor: JsonAggConstructor; + arg: JsonKeyValue; + absent_on_null: boolean; + unique: boolean; +} +export interface JsonArrayAgg { + constructor: JsonAggConstructor; + arg: JsonValueExpr; + absent_on_null: boolean; +} +export interface RawStmt { + stmt: Node; + stmt_location: number; + stmt_len: number; +} +export interface InsertStmt { + relation: RangeVar; + cols: Node[]; + select_stmt: Node; + on_conflict_clause: OnConflictClause; + returning_list: Node[]; + with_clause: WithClause; + override: OverridingKind; +} +export interface DeleteStmt { + relation: RangeVar; + using_clause: Node[]; + where_clause: Node; + returning_list: Node[]; + with_clause: WithClause; +} +export interface UpdateStmt { + relation: RangeVar; + target_list: Node[]; + where_clause: Node; + from_clause: Node[]; + returning_list: Node[]; + with_clause: WithClause; +} +export interface MergeStmt { + relation: RangeVar; + source_relation: Node; + join_condition: Node; + merge_when_clauses: Node[]; + with_clause: WithClause; +} +export interface SelectStmt { + distinct_clause: Node[]; + into_clause: IntoClause; + target_list: Node[]; + from_clause: Node[]; + where_clause: Node; + group_clause: Node[]; + group_distinct: boolean; + having_clause: Node; + window_clause: Node[]; + values_lists: Node[]; + sort_clause: Node[]; + limit_offset: Node; + limit_count: Node; + limit_option: LimitOption; + locking_clause: Node[]; + with_clause: WithClause; + op: SetOperation; + all: boolean; + larg: SelectStmt; + rarg: SelectStmt; +} +export interface SetOperationStmt { + op: SetOperation; + all: boolean; + larg: Node; + rarg: Node; + col_types: Node[]; + col_typmods: Node[]; + col_collations: Node[]; + group_clauses: Node[]; +} +export interface ReturnStmt { + returnval: Node; +} +export interface PLAssignStmt { + name: string; + indirection: Node[]; + nnames: number; + val: SelectStmt; + location: number; +} +export interface CreateSchemaStmt { + schemaname: string; + authrole: RoleSpec; + schema_elts: Node[]; + if_not_exists: boolean; +} +export interface AlterTableStmt { + relation: RangeVar; + cmds: Node[]; + objtype: ObjectType; + missing_ok: boolean; +} +export interface ReplicaIdentityStmt { + identity_type: string; + name: string; +} +export interface AlterTableCmd { + subtype: AlterTableType; + name: string; + num: number; + newowner: RoleSpec; + def: Node; + behavior: DropBehavior; + missing_ok: boolean; + recurse: boolean; +} +export interface AlterCollationStmt { + collname: Node[]; +} +export interface AlterDomainStmt { + subtype: string; + type_name: Node[]; + name: string; + def: Node; + behavior: DropBehavior; + missing_ok: boolean; +} +export interface GrantStmt { + is_grant: boolean; + targtype: GrantTargetType; + objtype: ObjectType; + objects: Node[]; + privileges: Node[]; + grantees: Node[]; + grant_option: boolean; + grantor: RoleSpec; + behavior: DropBehavior; +} +export interface ObjectWithArgs { + objname: Node[]; + objargs: Node[]; + objfuncargs: Node[]; + args_unspecified: boolean; +} +export interface AccessPriv { + priv_name: string; + cols: Node[]; +} +export interface GrantRoleStmt { + granted_roles: Node[]; + grantee_roles: Node[]; + is_grant: boolean; + opt: Node[]; + grantor: RoleSpec; + behavior: DropBehavior; +} +export interface AlterDefaultPrivilegesStmt { + options: Node[]; + action: GrantStmt; +} +export interface CopyStmt { + relation: RangeVar; + query: Node; + attlist: Node[]; + is_from: boolean; + is_program: boolean; + filename: string; + options: Node[]; + where_clause: Node; +} +export interface VariableSetStmt { + kind: VariableSetKind; + name: string; + args: Node[]; + is_local: boolean; +} +export interface VariableShowStmt { + name: string; +} +export interface CreateStmt { + relation: RangeVar; + table_elts: Node[]; + inh_relations: Node[]; + partbound: PartitionBoundSpec; + partspec: PartitionSpec; + of_typename: TypeName; + constraints: Node[]; + options: Node[]; + oncommit: OnCommitAction; + tablespacename: string; + access_method: string; + if_not_exists: boolean; +} +export interface Constraint { + contype: ConstrType; + conname: string; + deferrable: boolean; + initdeferred: boolean; + location: number; + is_no_inherit: boolean; + raw_expr: Node; + cooked_expr: string; + generated_when: string; + nulls_not_distinct: boolean; + keys: Node[]; + including: Node[]; + exclusions: Node[]; + options: Node[]; + indexname: string; + indexspace: string; + reset_default_tblspc: boolean; + access_method: string; + where_clause: Node; + pktable: RangeVar; + fk_attrs: Node[]; + pk_attrs: Node[]; + fk_matchtype: string; + fk_upd_action: string; + fk_del_action: string; + fk_del_set_cols: Node[]; + old_conpfeqop: Node[]; + old_pktable_oid: number; + skip_validation: boolean; + initially_valid: boolean; +} +export interface CreateTableSpaceStmt { + tablespacename: string; + owner: RoleSpec; + location: string; + options: Node[]; +} +export interface DropTableSpaceStmt { + tablespacename: string; + missing_ok: boolean; +} +export interface AlterTableSpaceOptionsStmt { + tablespacename: string; + options: Node[]; + is_reset: boolean; +} +export interface AlterTableMoveAllStmt { + orig_tablespacename: string; + objtype: ObjectType; + roles: Node[]; + new_tablespacename: string; + nowait: boolean; +} +export interface CreateExtensionStmt { + extname: string; + if_not_exists: boolean; + options: Node[]; +} +export interface AlterExtensionStmt { + extname: string; + options: Node[]; +} +export interface AlterExtensionContentsStmt { + extname: string; + action: number; + objtype: ObjectType; + object: Node; +} +export interface CreateFdwStmt { + fdwname: string; + func_options: Node[]; + options: Node[]; +} +export interface AlterFdwStmt { + fdwname: string; + func_options: Node[]; + options: Node[]; +} +export interface CreateForeignServerStmt { + servername: string; + servertype: string; + version: string; + fdwname: string; + if_not_exists: boolean; + options: Node[]; +} +export interface AlterForeignServerStmt { + servername: string; + version: string; + options: Node[]; + has_version: boolean; +} +export interface CreateForeignTableStmt { + base_stmt: CreateStmt; + servername: string; + options: Node[]; +} +export interface CreateUserMappingStmt { + user: RoleSpec; + servername: string; + if_not_exists: boolean; + options: Node[]; +} +export interface AlterUserMappingStmt { + user: RoleSpec; + servername: string; + options: Node[]; +} +export interface DropUserMappingStmt { + user: RoleSpec; + servername: string; + missing_ok: boolean; +} +export interface ImportForeignSchemaStmt { + server_name: string; + remote_schema: string; + local_schema: string; + list_type: ImportForeignSchemaType; + table_list: Node[]; + options: Node[]; +} +export interface CreatePolicyStmt { + policy_name: string; + table: RangeVar; + cmd_name: string; + permissive: boolean; + roles: Node[]; + qual: Node; + with_check: Node; +} +export interface AlterPolicyStmt { + policy_name: string; + table: RangeVar; + roles: Node[]; + qual: Node; + with_check: Node; +} +export interface CreateAmStmt { + amname: string; + handler_name: Node[]; + amtype: string; +} +export interface CreateTrigStmt { + replace: boolean; + isconstraint: boolean; + trigname: string; + relation: RangeVar; + funcname: Node[]; + args: Node[]; + row: boolean; + timing: number; + events: number; + columns: Node[]; + when_clause: Node; + transition_rels: Node[]; + deferrable: boolean; + initdeferred: boolean; + constrrel: RangeVar; +} +export interface CreateEventTrigStmt { + trigname: string; + eventname: string; + whenclause: Node[]; + funcname: Node[]; +} +export interface AlterEventTrigStmt { + trigname: string; + tgenabled: string; +} +export interface CreatePLangStmt { + replace: boolean; + plname: string; + plhandler: Node[]; + plinline: Node[]; + plvalidator: Node[]; + pltrusted: boolean; +} +export interface CreateRoleStmt { + stmt_type: RoleStmtType; + role: string; + options: Node[]; +} +export interface AlterRoleStmt { + role: RoleSpec; + options: Node[]; + action: number; +} +export interface AlterRoleSetStmt { + role: RoleSpec; + database: string; + setstmt: VariableSetStmt; +} +export interface DropRoleStmt { + roles: Node[]; + missing_ok: boolean; +} +export interface CreateSeqStmt { + sequence: RangeVar; + options: Node[]; + owner_id: number; + for_identity: boolean; + if_not_exists: boolean; +} +export interface AlterSeqStmt { + sequence: RangeVar; + options: Node[]; + for_identity: boolean; + missing_ok: boolean; +} +export interface DefineStmt { + kind: ObjectType; + oldstyle: boolean; + defnames: Node[]; + args: Node[]; + definition: Node[]; + if_not_exists: boolean; + replace: boolean; +} +export interface CreateDomainStmt { + domainname: Node[]; + type_name: TypeName; + coll_clause: CollateClause; + constraints: Node[]; +} +export interface CreateOpClassStmt { + opclassname: Node[]; + opfamilyname: Node[]; + amname: string; + datatype: TypeName; + items: Node[]; + is_default: boolean; +} +export interface CreateOpClassItem { + itemtype: number; + name: ObjectWithArgs; + number: number; + order_family: Node[]; + class_args: Node[]; + storedtype: TypeName; +} +export interface CreateOpFamilyStmt { + opfamilyname: Node[]; + amname: string; +} +export interface AlterOpFamilyStmt { + opfamilyname: Node[]; + amname: string; + is_drop: boolean; + items: Node[]; +} +export interface DropStmt { + objects: Node[]; + remove_type: ObjectType; + behavior: DropBehavior; + missing_ok: boolean; + concurrent: boolean; +} +export interface TruncateStmt { + relations: Node[]; + restart_seqs: boolean; + behavior: DropBehavior; +} +export interface CommentStmt { + objtype: ObjectType; + object: Node; + comment: string; +} +export interface SecLabelStmt { + objtype: ObjectType; + object: Node; + provider: string; + label: string; +} +export interface DeclareCursorStmt { + portalname: string; + options: number; + query: Node; +} +export interface ClosePortalStmt { + portalname: string; +} +export interface FetchStmt { + direction: FetchDirection; + how_many: bigint; + portalname: string; + ismove: boolean; +} +export interface IndexStmt { + idxname: string; + relation: RangeVar; + access_method: string; + table_space: string; + index_params: Node[]; + index_including_params: Node[]; + options: Node[]; + where_clause: Node; + exclude_op_names: Node[]; + idxcomment: string; + index_oid: number; + old_number: number; + old_create_subid: number; + old_first_relfilelocator_subid: number; + unique: boolean; + nulls_not_distinct: boolean; + primary: boolean; + isconstraint: boolean; + deferrable: boolean; + initdeferred: boolean; + transformed: boolean; + concurrent: boolean; + if_not_exists: boolean; + reset_default_tblspc: boolean; +} +export interface CreateStatsStmt { + defnames: Node[]; + stat_types: Node[]; + exprs: Node[]; + relations: Node[]; + stxcomment: string; + transformed: boolean; + if_not_exists: boolean; +} +export interface StatsElem { + name: string; + expr: Node; +} +export interface AlterStatsStmt { + defnames: Node[]; + stxstattarget: number; + missing_ok: boolean; +} +export interface CreateFunctionStmt { + is_procedure: boolean; + replace: boolean; + funcname: Node[]; + parameters: Node[]; + return_type: TypeName; + options: Node[]; + sql_body: Node; +} +export interface FunctionParameter { + name: string; + arg_type: TypeName; + mode: FunctionParameterMode; + defexpr: Node; +} +export interface AlterFunctionStmt { + objtype: ObjectType; + func: ObjectWithArgs; + actions: Node[]; +} +export interface DoStmt { + args: Node[]; +} +export interface InlineCodeBlock { + source_text: string; + lang_oid: number; + lang_is_trusted: boolean; + atomic: boolean; +} +export interface CallStmt { + funccall: FuncCall; + funcexpr: FuncExpr; + outargs: Node[]; +} +export interface CallContext { + atomic: boolean; +} +export interface RenameStmt { + rename_type: ObjectType; + relation_type: ObjectType; + relation: RangeVar; + object: Node; + subname: string; + newname: string; + behavior: DropBehavior; + missing_ok: boolean; +} +export interface AlterObjectDependsStmt { + object_type: ObjectType; + relation: RangeVar; + object: Node; + extname: String; + remove: boolean; +} +export interface AlterObjectSchemaStmt { + object_type: ObjectType; + relation: RangeVar; + object: Node; + newschema: string; + missing_ok: boolean; +} +export interface AlterOwnerStmt { + object_type: ObjectType; + relation: RangeVar; + object: Node; + newowner: RoleSpec; +} +export interface AlterOperatorStmt { + opername: ObjectWithArgs; + options: Node[]; +} +export interface AlterTypeStmt { + type_name: Node[]; + options: Node[]; +} +export interface RuleStmt { + relation: RangeVar; + rulename: string; + where_clause: Node; + event: CmdType; + instead: boolean; + actions: Node[]; + replace: boolean; +} +export interface NotifyStmt { + conditionname: string; + payload: string; +} +export interface ListenStmt { + conditionname: string; +} +export interface UnlistenStmt { + conditionname: string; +} +export interface TransactionStmt { + kind: TransactionStmtKind; + options: Node[]; + savepoint_name: string; + gid: string; + chain: boolean; +} +export interface CompositeTypeStmt { + typevar: RangeVar; + coldeflist: Node[]; +} +export interface CreateEnumStmt { + type_name: Node[]; + vals: Node[]; +} +export interface CreateRangeStmt { + type_name: Node[]; + params: Node[]; +} +export interface AlterEnumStmt { + type_name: Node[]; + old_val: string; + new_val: string; + new_val_neighbor: string; + new_val_is_after: boolean; + skip_if_new_val_exists: boolean; +} +export interface ViewStmt { + view: RangeVar; + aliases: Node[]; + query: Node; + replace: boolean; + options: Node[]; + with_check_option: ViewCheckOption; +} +export interface LoadStmt { + filename: string; +} +export interface CreatedbStmt { + dbname: string; + options: Node[]; +} +export interface AlterDatabaseStmt { + dbname: string; + options: Node[]; +} +export interface AlterDatabaseRefreshCollStmt { + dbname: string; +} +export interface AlterDatabaseSetStmt { + dbname: string; + setstmt: VariableSetStmt; +} +export interface DropdbStmt { + dbname: string; + missing_ok: boolean; + options: Node[]; +} +export interface AlterSystemStmt { + setstmt: VariableSetStmt; +} +export interface ClusterStmt { + relation: RangeVar; + indexname: string; + params: Node[]; +} +export interface VacuumStmt { + options: Node[]; + rels: Node[]; + is_vacuumcmd: boolean; +} +export interface VacuumRelation { + relation: RangeVar; + oid: number; + va_cols: Node[]; +} +export interface ExplainStmt { + query: Node; + options: Node[]; +} +export interface CreateTableAsStmt { + query: Node; + into: IntoClause; + objtype: ObjectType; + is_select_into: boolean; + if_not_exists: boolean; +} +export interface RefreshMatViewStmt { + concurrent: boolean; + skip_data: boolean; + relation: RangeVar; +} +export interface CheckPointStmt {} +export interface DiscardStmt { + target: DiscardMode; +} +export interface LockStmt { + relations: Node[]; + mode: number; + nowait: boolean; +} +export interface ConstraintsSetStmt { + constraints: Node[]; + deferred: boolean; +} +export interface ReindexStmt { + kind: ReindexObjectType; + relation: RangeVar; + name: string; + params: Node[]; +} +export interface CreateConversionStmt { + conversion_name: Node[]; + for_encoding_name: string; + to_encoding_name: string; + func_name: Node[]; + def: boolean; +} +export interface CreateCastStmt { + sourcetype: TypeName; + targettype: TypeName; + func: ObjectWithArgs; + context: CoercionContext; + inout: boolean; +} +export interface CreateTransformStmt { + replace: boolean; + type_name: TypeName; + lang: string; + fromsql: ObjectWithArgs; + tosql: ObjectWithArgs; +} +export interface PrepareStmt { + name: string; + argtypes: Node[]; + query: Node; +} +export interface ExecuteStmt { + name: string; + params: Node[]; +} +export interface DeallocateStmt { + name: string; +} +export interface DropOwnedStmt { + roles: Node[]; + behavior: DropBehavior; +} +export interface ReassignOwnedStmt { + roles: Node[]; + newrole: RoleSpec; +} +export interface AlterTSDictionaryStmt { + dictname: Node[]; + options: Node[]; +} +export interface AlterTSConfigurationStmt { + kind: AlterTSConfigType; + cfgname: Node[]; + tokentype: Node[]; + dicts: Node[]; + override: boolean; + replace: boolean; + missing_ok: boolean; +} +export interface PublicationTable { + relation: RangeVar; + where_clause: Node; + columns: Node[]; +} +export interface PublicationObjSpec { + pubobjtype: PublicationObjSpecType; + name: string; + pubtable: PublicationTable; + location: number; +} +export interface CreatePublicationStmt { + pubname: string; + options: Node[]; + pubobjects: Node[]; + for_all_tables: boolean; +} +export interface AlterPublicationStmt { + pubname: string; + options: Node[]; + pubobjects: Node[]; + for_all_tables: boolean; + action: AlterPublicationAction; +} +export interface CreateSubscriptionStmt { + subname: string; + conninfo: string; + publication: Node[]; + options: Node[]; +} +export interface AlterSubscriptionStmt { + kind: AlterSubscriptionType; + subname: string; + conninfo: string; + publication: Node[]; + options: Node[]; +} +export interface DropSubscriptionStmt { + subname: string; + missing_ok: boolean; + behavior: DropBehavior; +} +export interface ScanToken { + start: number; + end: number; + token: Token; + keyword_kind: KeywordKind; +} \ No newline at end of file diff --git a/__fixtures__/proto/output/utils.ts b/__fixtures__/proto/output/utils.ts new file mode 100644 index 0000000..c9b2675 --- /dev/null +++ b/__fixtures__/proto/output/utils.ts @@ -0,0 +1,4475 @@ +export type EnumType = "OverridingKind" | "QuerySource" | "SortByDir" | "SortByNulls" | "SetQuantifier" | "A_Expr_Kind" | "RoleSpecType" | "TableLikeOption" | "DefElemAction" | "PartitionStrategy" | "PartitionRangeDatumKind" | "RTEKind" | "WCOKind" | "GroupingSetKind" | "CTEMaterialize" | "SetOperation" | "ObjectType" | "DropBehavior" | "AlterTableType" | "GrantTargetType" | "VariableSetKind" | "ConstrType" | "ImportForeignSchemaType" | "RoleStmtType" | "FetchDirection" | "FunctionParameterMode" | "TransactionStmtKind" | "ViewCheckOption" | "DiscardMode" | "ReindexObjectType" | "AlterTSConfigType" | "PublicationObjSpecType" | "AlterPublicationAction" | "AlterSubscriptionType" | "OnCommitAction" | "ParamKind" | "CoercionContext" | "CoercionForm" | "BoolExprType" | "SubLinkType" | "RowCompareType" | "MinMaxOp" | "SQLValueFunctionOp" | "XmlExprOp" | "XmlOptionType" | "JsonEncoding" | "JsonFormatType" | "JsonConstructorType" | "JsonValueType" | "NullTestType" | "BoolTestType" | "CmdType" | "JoinType" | "AggStrategy" | "AggSplit" | "SetOpCmd" | "SetOpStrategy" | "OnConflictAction" | "LimitOption" | "LockClauseStrength" | "LockWaitPolicy" | "LockTupleMode" | "KeywordKind" | "Token"; +export const getEnumValue = (enumType: EnumType, key: string | number) => { + switch (enumType) { + case "OverridingKind": + { + switch (key) { + case "OVERRIDING_KIND_UNDEFINED": + return 0; + case "OVERRIDING_NOT_SET": + return 1; + case "OVERRIDING_USER_VALUE": + return 2; + case "OVERRIDING_SYSTEM_VALUE": + return 3; + case 0: + return "OVERRIDING_KIND_UNDEFINED"; + case 1: + return "OVERRIDING_NOT_SET"; + case 2: + return "OVERRIDING_USER_VALUE"; + case 3: + return "OVERRIDING_SYSTEM_VALUE"; + default: + throw new Error("Key not recognized in enum OverridingKind"); + } + } + case "QuerySource": + { + switch (key) { + case "QUERY_SOURCE_UNDEFINED": + return 0; + case "QSRC_ORIGINAL": + return 1; + case "QSRC_PARSER": + return 2; + case "QSRC_INSTEAD_RULE": + return 3; + case "QSRC_QUAL_INSTEAD_RULE": + return 4; + case "QSRC_NON_INSTEAD_RULE": + return 5; + case 0: + return "QUERY_SOURCE_UNDEFINED"; + case 1: + return "QSRC_ORIGINAL"; + case 2: + return "QSRC_PARSER"; + case 3: + return "QSRC_INSTEAD_RULE"; + case 4: + return "QSRC_QUAL_INSTEAD_RULE"; + case 5: + return "QSRC_NON_INSTEAD_RULE"; + default: + throw new Error("Key not recognized in enum QuerySource"); + } + } + case "SortByDir": + { + switch (key) { + case "SORT_BY_DIR_UNDEFINED": + return 0; + case "SORTBY_DEFAULT": + return 1; + case "SORTBY_ASC": + return 2; + case "SORTBY_DESC": + return 3; + case "SORTBY_USING": + return 4; + case 0: + return "SORT_BY_DIR_UNDEFINED"; + case 1: + return "SORTBY_DEFAULT"; + case 2: + return "SORTBY_ASC"; + case 3: + return "SORTBY_DESC"; + case 4: + return "SORTBY_USING"; + default: + throw new Error("Key not recognized in enum SortByDir"); + } + } + case "SortByNulls": + { + switch (key) { + case "SORT_BY_NULLS_UNDEFINED": + return 0; + case "SORTBY_NULLS_DEFAULT": + return 1; + case "SORTBY_NULLS_FIRST": + return 2; + case "SORTBY_NULLS_LAST": + return 3; + case 0: + return "SORT_BY_NULLS_UNDEFINED"; + case 1: + return "SORTBY_NULLS_DEFAULT"; + case 2: + return "SORTBY_NULLS_FIRST"; + case 3: + return "SORTBY_NULLS_LAST"; + default: + throw new Error("Key not recognized in enum SortByNulls"); + } + } + case "SetQuantifier": + { + switch (key) { + case "SET_QUANTIFIER_UNDEFINED": + return 0; + case "SET_QUANTIFIER_DEFAULT": + return 1; + case "SET_QUANTIFIER_ALL": + return 2; + case "SET_QUANTIFIER_DISTINCT": + return 3; + case 0: + return "SET_QUANTIFIER_UNDEFINED"; + case 1: + return "SET_QUANTIFIER_DEFAULT"; + case 2: + return "SET_QUANTIFIER_ALL"; + case 3: + return "SET_QUANTIFIER_DISTINCT"; + default: + throw new Error("Key not recognized in enum SetQuantifier"); + } + } + case "A_Expr_Kind": + { + switch (key) { + case "A_EXPR_KIND_UNDEFINED": + return 0; + case "AEXPR_OP": + return 1; + case "AEXPR_OP_ANY": + return 2; + case "AEXPR_OP_ALL": + return 3; + case "AEXPR_DISTINCT": + return 4; + case "AEXPR_NOT_DISTINCT": + return 5; + case "AEXPR_NULLIF": + return 6; + case "AEXPR_IN": + return 7; + case "AEXPR_LIKE": + return 8; + case "AEXPR_ILIKE": + return 9; + case "AEXPR_SIMILAR": + return 10; + case "AEXPR_BETWEEN": + return 11; + case "AEXPR_NOT_BETWEEN": + return 12; + case "AEXPR_BETWEEN_SYM": + return 13; + case "AEXPR_NOT_BETWEEN_SYM": + return 14; + case 0: + return "A_EXPR_KIND_UNDEFINED"; + case 1: + return "AEXPR_OP"; + case 2: + return "AEXPR_OP_ANY"; + case 3: + return "AEXPR_OP_ALL"; + case 4: + return "AEXPR_DISTINCT"; + case 5: + return "AEXPR_NOT_DISTINCT"; + case 6: + return "AEXPR_NULLIF"; + case 7: + return "AEXPR_IN"; + case 8: + return "AEXPR_LIKE"; + case 9: + return "AEXPR_ILIKE"; + case 10: + return "AEXPR_SIMILAR"; + case 11: + return "AEXPR_BETWEEN"; + case 12: + return "AEXPR_NOT_BETWEEN"; + case 13: + return "AEXPR_BETWEEN_SYM"; + case 14: + return "AEXPR_NOT_BETWEEN_SYM"; + default: + throw new Error("Key not recognized in enum A_Expr_Kind"); + } + } + case "RoleSpecType": + { + switch (key) { + case "ROLE_SPEC_TYPE_UNDEFINED": + return 0; + case "ROLESPEC_CSTRING": + return 1; + case "ROLESPEC_CURRENT_ROLE": + return 2; + case "ROLESPEC_CURRENT_USER": + return 3; + case "ROLESPEC_SESSION_USER": + return 4; + case "ROLESPEC_PUBLIC": + return 5; + case 0: + return "ROLE_SPEC_TYPE_UNDEFINED"; + case 1: + return "ROLESPEC_CSTRING"; + case 2: + return "ROLESPEC_CURRENT_ROLE"; + case 3: + return "ROLESPEC_CURRENT_USER"; + case 4: + return "ROLESPEC_SESSION_USER"; + case 5: + return "ROLESPEC_PUBLIC"; + default: + throw new Error("Key not recognized in enum RoleSpecType"); + } + } + case "TableLikeOption": + { + switch (key) { + case "TABLE_LIKE_OPTION_UNDEFINED": + return 0; + case "CREATE_TABLE_LIKE_COMMENTS": + return 1; + case "CREATE_TABLE_LIKE_COMPRESSION": + return 2; + case "CREATE_TABLE_LIKE_CONSTRAINTS": + return 3; + case "CREATE_TABLE_LIKE_DEFAULTS": + return 4; + case "CREATE_TABLE_LIKE_GENERATED": + return 5; + case "CREATE_TABLE_LIKE_IDENTITY": + return 6; + case "CREATE_TABLE_LIKE_INDEXES": + return 7; + case "CREATE_TABLE_LIKE_STATISTICS": + return 8; + case "CREATE_TABLE_LIKE_STORAGE": + return 9; + case "CREATE_TABLE_LIKE_ALL": + return 10; + case 0: + return "TABLE_LIKE_OPTION_UNDEFINED"; + case 1: + return "CREATE_TABLE_LIKE_COMMENTS"; + case 2: + return "CREATE_TABLE_LIKE_COMPRESSION"; + case 3: + return "CREATE_TABLE_LIKE_CONSTRAINTS"; + case 4: + return "CREATE_TABLE_LIKE_DEFAULTS"; + case 5: + return "CREATE_TABLE_LIKE_GENERATED"; + case 6: + return "CREATE_TABLE_LIKE_IDENTITY"; + case 7: + return "CREATE_TABLE_LIKE_INDEXES"; + case 8: + return "CREATE_TABLE_LIKE_STATISTICS"; + case 9: + return "CREATE_TABLE_LIKE_STORAGE"; + case 10: + return "CREATE_TABLE_LIKE_ALL"; + default: + throw new Error("Key not recognized in enum TableLikeOption"); + } + } + case "DefElemAction": + { + switch (key) { + case "DEF_ELEM_ACTION_UNDEFINED": + return 0; + case "DEFELEM_UNSPEC": + return 1; + case "DEFELEM_SET": + return 2; + case "DEFELEM_ADD": + return 3; + case "DEFELEM_DROP": + return 4; + case 0: + return "DEF_ELEM_ACTION_UNDEFINED"; + case 1: + return "DEFELEM_UNSPEC"; + case 2: + return "DEFELEM_SET"; + case 3: + return "DEFELEM_ADD"; + case 4: + return "DEFELEM_DROP"; + default: + throw new Error("Key not recognized in enum DefElemAction"); + } + } + case "PartitionStrategy": + { + switch (key) { + case "PARTITION_STRATEGY_UNDEFINED": + return 0; + case "PARTITION_STRATEGY_LIST": + return 1; + case "PARTITION_STRATEGY_RANGE": + return 2; + case "PARTITION_STRATEGY_HASH": + return 3; + case 0: + return "PARTITION_STRATEGY_UNDEFINED"; + case 1: + return "PARTITION_STRATEGY_LIST"; + case 2: + return "PARTITION_STRATEGY_RANGE"; + case 3: + return "PARTITION_STRATEGY_HASH"; + default: + throw new Error("Key not recognized in enum PartitionStrategy"); + } + } + case "PartitionRangeDatumKind": + { + switch (key) { + case "PARTITION_RANGE_DATUM_KIND_UNDEFINED": + return 0; + case "PARTITION_RANGE_DATUM_MINVALUE": + return 1; + case "PARTITION_RANGE_DATUM_VALUE": + return 2; + case "PARTITION_RANGE_DATUM_MAXVALUE": + return 3; + case 0: + return "PARTITION_RANGE_DATUM_KIND_UNDEFINED"; + case 1: + return "PARTITION_RANGE_DATUM_MINVALUE"; + case 2: + return "PARTITION_RANGE_DATUM_VALUE"; + case 3: + return "PARTITION_RANGE_DATUM_MAXVALUE"; + default: + throw new Error("Key not recognized in enum PartitionRangeDatumKind"); + } + } + case "RTEKind": + { + switch (key) { + case "RTEKIND_UNDEFINED": + return 0; + case "RTE_RELATION": + return 1; + case "RTE_SUBQUERY": + return 2; + case "RTE_JOIN": + return 3; + case "RTE_FUNCTION": + return 4; + case "RTE_TABLEFUNC": + return 5; + case "RTE_VALUES": + return 6; + case "RTE_CTE": + return 7; + case "RTE_NAMEDTUPLESTORE": + return 8; + case "RTE_RESULT": + return 9; + case 0: + return "RTEKIND_UNDEFINED"; + case 1: + return "RTE_RELATION"; + case 2: + return "RTE_SUBQUERY"; + case 3: + return "RTE_JOIN"; + case 4: + return "RTE_FUNCTION"; + case 5: + return "RTE_TABLEFUNC"; + case 6: + return "RTE_VALUES"; + case 7: + return "RTE_CTE"; + case 8: + return "RTE_NAMEDTUPLESTORE"; + case 9: + return "RTE_RESULT"; + default: + throw new Error("Key not recognized in enum RTEKind"); + } + } + case "WCOKind": + { + switch (key) { + case "WCOKIND_UNDEFINED": + return 0; + case "WCO_VIEW_CHECK": + return 1; + case "WCO_RLS_INSERT_CHECK": + return 2; + case "WCO_RLS_UPDATE_CHECK": + return 3; + case "WCO_RLS_CONFLICT_CHECK": + return 4; + case "WCO_RLS_MERGE_UPDATE_CHECK": + return 5; + case "WCO_RLS_MERGE_DELETE_CHECK": + return 6; + case 0: + return "WCOKIND_UNDEFINED"; + case 1: + return "WCO_VIEW_CHECK"; + case 2: + return "WCO_RLS_INSERT_CHECK"; + case 3: + return "WCO_RLS_UPDATE_CHECK"; + case 4: + return "WCO_RLS_CONFLICT_CHECK"; + case 5: + return "WCO_RLS_MERGE_UPDATE_CHECK"; + case 6: + return "WCO_RLS_MERGE_DELETE_CHECK"; + default: + throw new Error("Key not recognized in enum WCOKind"); + } + } + case "GroupingSetKind": + { + switch (key) { + case "GROUPING_SET_KIND_UNDEFINED": + return 0; + case "GROUPING_SET_EMPTY": + return 1; + case "GROUPING_SET_SIMPLE": + return 2; + case "GROUPING_SET_ROLLUP": + return 3; + case "GROUPING_SET_CUBE": + return 4; + case "GROUPING_SET_SETS": + return 5; + case 0: + return "GROUPING_SET_KIND_UNDEFINED"; + case 1: + return "GROUPING_SET_EMPTY"; + case 2: + return "GROUPING_SET_SIMPLE"; + case 3: + return "GROUPING_SET_ROLLUP"; + case 4: + return "GROUPING_SET_CUBE"; + case 5: + return "GROUPING_SET_SETS"; + default: + throw new Error("Key not recognized in enum GroupingSetKind"); + } + } + case "CTEMaterialize": + { + switch (key) { + case "CTEMATERIALIZE_UNDEFINED": + return 0; + case "CTEMaterializeDefault": + return 1; + case "CTEMaterializeAlways": + return 2; + case "CTEMaterializeNever": + return 3; + case 0: + return "CTEMATERIALIZE_UNDEFINED"; + case 1: + return "CTEMaterializeDefault"; + case 2: + return "CTEMaterializeAlways"; + case 3: + return "CTEMaterializeNever"; + default: + throw new Error("Key not recognized in enum CTEMaterialize"); + } + } + case "SetOperation": + { + switch (key) { + case "SET_OPERATION_UNDEFINED": + return 0; + case "SETOP_NONE": + return 1; + case "SETOP_UNION": + return 2; + case "SETOP_INTERSECT": + return 3; + case "SETOP_EXCEPT": + return 4; + case 0: + return "SET_OPERATION_UNDEFINED"; + case 1: + return "SETOP_NONE"; + case 2: + return "SETOP_UNION"; + case 3: + return "SETOP_INTERSECT"; + case 4: + return "SETOP_EXCEPT"; + default: + throw new Error("Key not recognized in enum SetOperation"); + } + } + case "ObjectType": + { + switch (key) { + case "OBJECT_TYPE_UNDEFINED": + return 0; + case "OBJECT_ACCESS_METHOD": + return 1; + case "OBJECT_AGGREGATE": + return 2; + case "OBJECT_AMOP": + return 3; + case "OBJECT_AMPROC": + return 4; + case "OBJECT_ATTRIBUTE": + return 5; + case "OBJECT_CAST": + return 6; + case "OBJECT_COLUMN": + return 7; + case "OBJECT_COLLATION": + return 8; + case "OBJECT_CONVERSION": + return 9; + case "OBJECT_DATABASE": + return 10; + case "OBJECT_DEFAULT": + return 11; + case "OBJECT_DEFACL": + return 12; + case "OBJECT_DOMAIN": + return 13; + case "OBJECT_DOMCONSTRAINT": + return 14; + case "OBJECT_EVENT_TRIGGER": + return 15; + case "OBJECT_EXTENSION": + return 16; + case "OBJECT_FDW": + return 17; + case "OBJECT_FOREIGN_SERVER": + return 18; + case "OBJECT_FOREIGN_TABLE": + return 19; + case "OBJECT_FUNCTION": + return 20; + case "OBJECT_INDEX": + return 21; + case "OBJECT_LANGUAGE": + return 22; + case "OBJECT_LARGEOBJECT": + return 23; + case "OBJECT_MATVIEW": + return 24; + case "OBJECT_OPCLASS": + return 25; + case "OBJECT_OPERATOR": + return 26; + case "OBJECT_OPFAMILY": + return 27; + case "OBJECT_PARAMETER_ACL": + return 28; + case "OBJECT_POLICY": + return 29; + case "OBJECT_PROCEDURE": + return 30; + case "OBJECT_PUBLICATION": + return 31; + case "OBJECT_PUBLICATION_NAMESPACE": + return 32; + case "OBJECT_PUBLICATION_REL": + return 33; + case "OBJECT_ROLE": + return 34; + case "OBJECT_ROUTINE": + return 35; + case "OBJECT_RULE": + return 36; + case "OBJECT_SCHEMA": + return 37; + case "OBJECT_SEQUENCE": + return 38; + case "OBJECT_SUBSCRIPTION": + return 39; + case "OBJECT_STATISTIC_EXT": + return 40; + case "OBJECT_TABCONSTRAINT": + return 41; + case "OBJECT_TABLE": + return 42; + case "OBJECT_TABLESPACE": + return 43; + case "OBJECT_TRANSFORM": + return 44; + case "OBJECT_TRIGGER": + return 45; + case "OBJECT_TSCONFIGURATION": + return 46; + case "OBJECT_TSDICTIONARY": + return 47; + case "OBJECT_TSPARSER": + return 48; + case "OBJECT_TSTEMPLATE": + return 49; + case "OBJECT_TYPE": + return 50; + case "OBJECT_USER_MAPPING": + return 51; + case "OBJECT_VIEW": + return 52; + case 0: + return "OBJECT_TYPE_UNDEFINED"; + case 1: + return "OBJECT_ACCESS_METHOD"; + case 2: + return "OBJECT_AGGREGATE"; + case 3: + return "OBJECT_AMOP"; + case 4: + return "OBJECT_AMPROC"; + case 5: + return "OBJECT_ATTRIBUTE"; + case 6: + return "OBJECT_CAST"; + case 7: + return "OBJECT_COLUMN"; + case 8: + return "OBJECT_COLLATION"; + case 9: + return "OBJECT_CONVERSION"; + case 10: + return "OBJECT_DATABASE"; + case 11: + return "OBJECT_DEFAULT"; + case 12: + return "OBJECT_DEFACL"; + case 13: + return "OBJECT_DOMAIN"; + case 14: + return "OBJECT_DOMCONSTRAINT"; + case 15: + return "OBJECT_EVENT_TRIGGER"; + case 16: + return "OBJECT_EXTENSION"; + case 17: + return "OBJECT_FDW"; + case 18: + return "OBJECT_FOREIGN_SERVER"; + case 19: + return "OBJECT_FOREIGN_TABLE"; + case 20: + return "OBJECT_FUNCTION"; + case 21: + return "OBJECT_INDEX"; + case 22: + return "OBJECT_LANGUAGE"; + case 23: + return "OBJECT_LARGEOBJECT"; + case 24: + return "OBJECT_MATVIEW"; + case 25: + return "OBJECT_OPCLASS"; + case 26: + return "OBJECT_OPERATOR"; + case 27: + return "OBJECT_OPFAMILY"; + case 28: + return "OBJECT_PARAMETER_ACL"; + case 29: + return "OBJECT_POLICY"; + case 30: + return "OBJECT_PROCEDURE"; + case 31: + return "OBJECT_PUBLICATION"; + case 32: + return "OBJECT_PUBLICATION_NAMESPACE"; + case 33: + return "OBJECT_PUBLICATION_REL"; + case 34: + return "OBJECT_ROLE"; + case 35: + return "OBJECT_ROUTINE"; + case 36: + return "OBJECT_RULE"; + case 37: + return "OBJECT_SCHEMA"; + case 38: + return "OBJECT_SEQUENCE"; + case 39: + return "OBJECT_SUBSCRIPTION"; + case 40: + return "OBJECT_STATISTIC_EXT"; + case 41: + return "OBJECT_TABCONSTRAINT"; + case 42: + return "OBJECT_TABLE"; + case 43: + return "OBJECT_TABLESPACE"; + case 44: + return "OBJECT_TRANSFORM"; + case 45: + return "OBJECT_TRIGGER"; + case 46: + return "OBJECT_TSCONFIGURATION"; + case 47: + return "OBJECT_TSDICTIONARY"; + case 48: + return "OBJECT_TSPARSER"; + case 49: + return "OBJECT_TSTEMPLATE"; + case 50: + return "OBJECT_TYPE"; + case 51: + return "OBJECT_USER_MAPPING"; + case 52: + return "OBJECT_VIEW"; + default: + throw new Error("Key not recognized in enum ObjectType"); + } + } + case "DropBehavior": + { + switch (key) { + case "DROP_BEHAVIOR_UNDEFINED": + return 0; + case "DROP_RESTRICT": + return 1; + case "DROP_CASCADE": + return 2; + case 0: + return "DROP_BEHAVIOR_UNDEFINED"; + case 1: + return "DROP_RESTRICT"; + case 2: + return "DROP_CASCADE"; + default: + throw new Error("Key not recognized in enum DropBehavior"); + } + } + case "AlterTableType": + { + switch (key) { + case "ALTER_TABLE_TYPE_UNDEFINED": + return 0; + case "AT_AddColumn": + return 1; + case "AT_AddColumnToView": + return 2; + case "AT_ColumnDefault": + return 3; + case "AT_CookedColumnDefault": + return 4; + case "AT_DropNotNull": + return 5; + case "AT_SetNotNull": + return 6; + case "AT_DropExpression": + return 7; + case "AT_CheckNotNull": + return 8; + case "AT_SetStatistics": + return 9; + case "AT_SetOptions": + return 10; + case "AT_ResetOptions": + return 11; + case "AT_SetStorage": + return 12; + case "AT_SetCompression": + return 13; + case "AT_DropColumn": + return 14; + case "AT_AddIndex": + return 15; + case "AT_ReAddIndex": + return 16; + case "AT_AddConstraint": + return 17; + case "AT_ReAddConstraint": + return 18; + case "AT_ReAddDomainConstraint": + return 19; + case "AT_AlterConstraint": + return 20; + case "AT_ValidateConstraint": + return 21; + case "AT_AddIndexConstraint": + return 22; + case "AT_DropConstraint": + return 23; + case "AT_ReAddComment": + return 24; + case "AT_AlterColumnType": + return 25; + case "AT_AlterColumnGenericOptions": + return 26; + case "AT_ChangeOwner": + return 27; + case "AT_ClusterOn": + return 28; + case "AT_DropCluster": + return 29; + case "AT_SetLogged": + return 30; + case "AT_SetUnLogged": + return 31; + case "AT_DropOids": + return 32; + case "AT_SetAccessMethod": + return 33; + case "AT_SetTableSpace": + return 34; + case "AT_SetRelOptions": + return 35; + case "AT_ResetRelOptions": + return 36; + case "AT_ReplaceRelOptions": + return 37; + case "AT_EnableTrig": + return 38; + case "AT_EnableAlwaysTrig": + return 39; + case "AT_EnableReplicaTrig": + return 40; + case "AT_DisableTrig": + return 41; + case "AT_EnableTrigAll": + return 42; + case "AT_DisableTrigAll": + return 43; + case "AT_EnableTrigUser": + return 44; + case "AT_DisableTrigUser": + return 45; + case "AT_EnableRule": + return 46; + case "AT_EnableAlwaysRule": + return 47; + case "AT_EnableReplicaRule": + return 48; + case "AT_DisableRule": + return 49; + case "AT_AddInherit": + return 50; + case "AT_DropInherit": + return 51; + case "AT_AddOf": + return 52; + case "AT_DropOf": + return 53; + case "AT_ReplicaIdentity": + return 54; + case "AT_EnableRowSecurity": + return 55; + case "AT_DisableRowSecurity": + return 56; + case "AT_ForceRowSecurity": + return 57; + case "AT_NoForceRowSecurity": + return 58; + case "AT_GenericOptions": + return 59; + case "AT_AttachPartition": + return 60; + case "AT_DetachPartition": + return 61; + case "AT_DetachPartitionFinalize": + return 62; + case "AT_AddIdentity": + return 63; + case "AT_SetIdentity": + return 64; + case "AT_DropIdentity": + return 65; + case "AT_ReAddStatistics": + return 66; + case 0: + return "ALTER_TABLE_TYPE_UNDEFINED"; + case 1: + return "AT_AddColumn"; + case 2: + return "AT_AddColumnToView"; + case 3: + return "AT_ColumnDefault"; + case 4: + return "AT_CookedColumnDefault"; + case 5: + return "AT_DropNotNull"; + case 6: + return "AT_SetNotNull"; + case 7: + return "AT_DropExpression"; + case 8: + return "AT_CheckNotNull"; + case 9: + return "AT_SetStatistics"; + case 10: + return "AT_SetOptions"; + case 11: + return "AT_ResetOptions"; + case 12: + return "AT_SetStorage"; + case 13: + return "AT_SetCompression"; + case 14: + return "AT_DropColumn"; + case 15: + return "AT_AddIndex"; + case 16: + return "AT_ReAddIndex"; + case 17: + return "AT_AddConstraint"; + case 18: + return "AT_ReAddConstraint"; + case 19: + return "AT_ReAddDomainConstraint"; + case 20: + return "AT_AlterConstraint"; + case 21: + return "AT_ValidateConstraint"; + case 22: + return "AT_AddIndexConstraint"; + case 23: + return "AT_DropConstraint"; + case 24: + return "AT_ReAddComment"; + case 25: + return "AT_AlterColumnType"; + case 26: + return "AT_AlterColumnGenericOptions"; + case 27: + return "AT_ChangeOwner"; + case 28: + return "AT_ClusterOn"; + case 29: + return "AT_DropCluster"; + case 30: + return "AT_SetLogged"; + case 31: + return "AT_SetUnLogged"; + case 32: + return "AT_DropOids"; + case 33: + return "AT_SetAccessMethod"; + case 34: + return "AT_SetTableSpace"; + case 35: + return "AT_SetRelOptions"; + case 36: + return "AT_ResetRelOptions"; + case 37: + return "AT_ReplaceRelOptions"; + case 38: + return "AT_EnableTrig"; + case 39: + return "AT_EnableAlwaysTrig"; + case 40: + return "AT_EnableReplicaTrig"; + case 41: + return "AT_DisableTrig"; + case 42: + return "AT_EnableTrigAll"; + case 43: + return "AT_DisableTrigAll"; + case 44: + return "AT_EnableTrigUser"; + case 45: + return "AT_DisableTrigUser"; + case 46: + return "AT_EnableRule"; + case 47: + return "AT_EnableAlwaysRule"; + case 48: + return "AT_EnableReplicaRule"; + case 49: + return "AT_DisableRule"; + case 50: + return "AT_AddInherit"; + case 51: + return "AT_DropInherit"; + case 52: + return "AT_AddOf"; + case 53: + return "AT_DropOf"; + case 54: + return "AT_ReplicaIdentity"; + case 55: + return "AT_EnableRowSecurity"; + case 56: + return "AT_DisableRowSecurity"; + case 57: + return "AT_ForceRowSecurity"; + case 58: + return "AT_NoForceRowSecurity"; + case 59: + return "AT_GenericOptions"; + case 60: + return "AT_AttachPartition"; + case 61: + return "AT_DetachPartition"; + case 62: + return "AT_DetachPartitionFinalize"; + case 63: + return "AT_AddIdentity"; + case 64: + return "AT_SetIdentity"; + case 65: + return "AT_DropIdentity"; + case 66: + return "AT_ReAddStatistics"; + default: + throw new Error("Key not recognized in enum AlterTableType"); + } + } + case "GrantTargetType": + { + switch (key) { + case "GRANT_TARGET_TYPE_UNDEFINED": + return 0; + case "ACL_TARGET_OBJECT": + return 1; + case "ACL_TARGET_ALL_IN_SCHEMA": + return 2; + case "ACL_TARGET_DEFAULTS": + return 3; + case 0: + return "GRANT_TARGET_TYPE_UNDEFINED"; + case 1: + return "ACL_TARGET_OBJECT"; + case 2: + return "ACL_TARGET_ALL_IN_SCHEMA"; + case 3: + return "ACL_TARGET_DEFAULTS"; + default: + throw new Error("Key not recognized in enum GrantTargetType"); + } + } + case "VariableSetKind": + { + switch (key) { + case "VARIABLE_SET_KIND_UNDEFINED": + return 0; + case "VAR_SET_VALUE": + return 1; + case "VAR_SET_DEFAULT": + return 2; + case "VAR_SET_CURRENT": + return 3; + case "VAR_SET_MULTI": + return 4; + case "VAR_RESET": + return 5; + case "VAR_RESET_ALL": + return 6; + case 0: + return "VARIABLE_SET_KIND_UNDEFINED"; + case 1: + return "VAR_SET_VALUE"; + case 2: + return "VAR_SET_DEFAULT"; + case 3: + return "VAR_SET_CURRENT"; + case 4: + return "VAR_SET_MULTI"; + case 5: + return "VAR_RESET"; + case 6: + return "VAR_RESET_ALL"; + default: + throw new Error("Key not recognized in enum VariableSetKind"); + } + } + case "ConstrType": + { + switch (key) { + case "CONSTR_TYPE_UNDEFINED": + return 0; + case "CONSTR_NULL": + return 1; + case "CONSTR_NOTNULL": + return 2; + case "CONSTR_DEFAULT": + return 3; + case "CONSTR_IDENTITY": + return 4; + case "CONSTR_GENERATED": + return 5; + case "CONSTR_CHECK": + return 6; + case "CONSTR_PRIMARY": + return 7; + case "CONSTR_UNIQUE": + return 8; + case "CONSTR_EXCLUSION": + return 9; + case "CONSTR_FOREIGN": + return 10; + case "CONSTR_ATTR_DEFERRABLE": + return 11; + case "CONSTR_ATTR_NOT_DEFERRABLE": + return 12; + case "CONSTR_ATTR_DEFERRED": + return 13; + case "CONSTR_ATTR_IMMEDIATE": + return 14; + case 0: + return "CONSTR_TYPE_UNDEFINED"; + case 1: + return "CONSTR_NULL"; + case 2: + return "CONSTR_NOTNULL"; + case 3: + return "CONSTR_DEFAULT"; + case 4: + return "CONSTR_IDENTITY"; + case 5: + return "CONSTR_GENERATED"; + case 6: + return "CONSTR_CHECK"; + case 7: + return "CONSTR_PRIMARY"; + case 8: + return "CONSTR_UNIQUE"; + case 9: + return "CONSTR_EXCLUSION"; + case 10: + return "CONSTR_FOREIGN"; + case 11: + return "CONSTR_ATTR_DEFERRABLE"; + case 12: + return "CONSTR_ATTR_NOT_DEFERRABLE"; + case 13: + return "CONSTR_ATTR_DEFERRED"; + case 14: + return "CONSTR_ATTR_IMMEDIATE"; + default: + throw new Error("Key not recognized in enum ConstrType"); + } + } + case "ImportForeignSchemaType": + { + switch (key) { + case "IMPORT_FOREIGN_SCHEMA_TYPE_UNDEFINED": + return 0; + case "FDW_IMPORT_SCHEMA_ALL": + return 1; + case "FDW_IMPORT_SCHEMA_LIMIT_TO": + return 2; + case "FDW_IMPORT_SCHEMA_EXCEPT": + return 3; + case 0: + return "IMPORT_FOREIGN_SCHEMA_TYPE_UNDEFINED"; + case 1: + return "FDW_IMPORT_SCHEMA_ALL"; + case 2: + return "FDW_IMPORT_SCHEMA_LIMIT_TO"; + case 3: + return "FDW_IMPORT_SCHEMA_EXCEPT"; + default: + throw new Error("Key not recognized in enum ImportForeignSchemaType"); + } + } + case "RoleStmtType": + { + switch (key) { + case "ROLE_STMT_TYPE_UNDEFINED": + return 0; + case "ROLESTMT_ROLE": + return 1; + case "ROLESTMT_USER": + return 2; + case "ROLESTMT_GROUP": + return 3; + case 0: + return "ROLE_STMT_TYPE_UNDEFINED"; + case 1: + return "ROLESTMT_ROLE"; + case 2: + return "ROLESTMT_USER"; + case 3: + return "ROLESTMT_GROUP"; + default: + throw new Error("Key not recognized in enum RoleStmtType"); + } + } + case "FetchDirection": + { + switch (key) { + case "FETCH_DIRECTION_UNDEFINED": + return 0; + case "FETCH_FORWARD": + return 1; + case "FETCH_BACKWARD": + return 2; + case "FETCH_ABSOLUTE": + return 3; + case "FETCH_RELATIVE": + return 4; + case 0: + return "FETCH_DIRECTION_UNDEFINED"; + case 1: + return "FETCH_FORWARD"; + case 2: + return "FETCH_BACKWARD"; + case 3: + return "FETCH_ABSOLUTE"; + case 4: + return "FETCH_RELATIVE"; + default: + throw new Error("Key not recognized in enum FetchDirection"); + } + } + case "FunctionParameterMode": + { + switch (key) { + case "FUNCTION_PARAMETER_MODE_UNDEFINED": + return 0; + case "FUNC_PARAM_IN": + return 1; + case "FUNC_PARAM_OUT": + return 2; + case "FUNC_PARAM_INOUT": + return 3; + case "FUNC_PARAM_VARIADIC": + return 4; + case "FUNC_PARAM_TABLE": + return 5; + case "FUNC_PARAM_DEFAULT": + return 6; + case 0: + return "FUNCTION_PARAMETER_MODE_UNDEFINED"; + case 1: + return "FUNC_PARAM_IN"; + case 2: + return "FUNC_PARAM_OUT"; + case 3: + return "FUNC_PARAM_INOUT"; + case 4: + return "FUNC_PARAM_VARIADIC"; + case 5: + return "FUNC_PARAM_TABLE"; + case 6: + return "FUNC_PARAM_DEFAULT"; + default: + throw new Error("Key not recognized in enum FunctionParameterMode"); + } + } + case "TransactionStmtKind": + { + switch (key) { + case "TRANSACTION_STMT_KIND_UNDEFINED": + return 0; + case "TRANS_STMT_BEGIN": + return 1; + case "TRANS_STMT_START": + return 2; + case "TRANS_STMT_COMMIT": + return 3; + case "TRANS_STMT_ROLLBACK": + return 4; + case "TRANS_STMT_SAVEPOINT": + return 5; + case "TRANS_STMT_RELEASE": + return 6; + case "TRANS_STMT_ROLLBACK_TO": + return 7; + case "TRANS_STMT_PREPARE": + return 8; + case "TRANS_STMT_COMMIT_PREPARED": + return 9; + case "TRANS_STMT_ROLLBACK_PREPARED": + return 10; + case 0: + return "TRANSACTION_STMT_KIND_UNDEFINED"; + case 1: + return "TRANS_STMT_BEGIN"; + case 2: + return "TRANS_STMT_START"; + case 3: + return "TRANS_STMT_COMMIT"; + case 4: + return "TRANS_STMT_ROLLBACK"; + case 5: + return "TRANS_STMT_SAVEPOINT"; + case 6: + return "TRANS_STMT_RELEASE"; + case 7: + return "TRANS_STMT_ROLLBACK_TO"; + case 8: + return "TRANS_STMT_PREPARE"; + case 9: + return "TRANS_STMT_COMMIT_PREPARED"; + case 10: + return "TRANS_STMT_ROLLBACK_PREPARED"; + default: + throw new Error("Key not recognized in enum TransactionStmtKind"); + } + } + case "ViewCheckOption": + { + switch (key) { + case "VIEW_CHECK_OPTION_UNDEFINED": + return 0; + case "NO_CHECK_OPTION": + return 1; + case "LOCAL_CHECK_OPTION": + return 2; + case "CASCADED_CHECK_OPTION": + return 3; + case 0: + return "VIEW_CHECK_OPTION_UNDEFINED"; + case 1: + return "NO_CHECK_OPTION"; + case 2: + return "LOCAL_CHECK_OPTION"; + case 3: + return "CASCADED_CHECK_OPTION"; + default: + throw new Error("Key not recognized in enum ViewCheckOption"); + } + } + case "DiscardMode": + { + switch (key) { + case "DISCARD_MODE_UNDEFINED": + return 0; + case "DISCARD_ALL": + return 1; + case "DISCARD_PLANS": + return 2; + case "DISCARD_SEQUENCES": + return 3; + case "DISCARD_TEMP": + return 4; + case 0: + return "DISCARD_MODE_UNDEFINED"; + case 1: + return "DISCARD_ALL"; + case 2: + return "DISCARD_PLANS"; + case 3: + return "DISCARD_SEQUENCES"; + case 4: + return "DISCARD_TEMP"; + default: + throw new Error("Key not recognized in enum DiscardMode"); + } + } + case "ReindexObjectType": + { + switch (key) { + case "REINDEX_OBJECT_TYPE_UNDEFINED": + return 0; + case "REINDEX_OBJECT_INDEX": + return 1; + case "REINDEX_OBJECT_TABLE": + return 2; + case "REINDEX_OBJECT_SCHEMA": + return 3; + case "REINDEX_OBJECT_SYSTEM": + return 4; + case "REINDEX_OBJECT_DATABASE": + return 5; + case 0: + return "REINDEX_OBJECT_TYPE_UNDEFINED"; + case 1: + return "REINDEX_OBJECT_INDEX"; + case 2: + return "REINDEX_OBJECT_TABLE"; + case 3: + return "REINDEX_OBJECT_SCHEMA"; + case 4: + return "REINDEX_OBJECT_SYSTEM"; + case 5: + return "REINDEX_OBJECT_DATABASE"; + default: + throw new Error("Key not recognized in enum ReindexObjectType"); + } + } + case "AlterTSConfigType": + { + switch (key) { + case "ALTER_TSCONFIG_TYPE_UNDEFINED": + return 0; + case "ALTER_TSCONFIG_ADD_MAPPING": + return 1; + case "ALTER_TSCONFIG_ALTER_MAPPING_FOR_TOKEN": + return 2; + case "ALTER_TSCONFIG_REPLACE_DICT": + return 3; + case "ALTER_TSCONFIG_REPLACE_DICT_FOR_TOKEN": + return 4; + case "ALTER_TSCONFIG_DROP_MAPPING": + return 5; + case 0: + return "ALTER_TSCONFIG_TYPE_UNDEFINED"; + case 1: + return "ALTER_TSCONFIG_ADD_MAPPING"; + case 2: + return "ALTER_TSCONFIG_ALTER_MAPPING_FOR_TOKEN"; + case 3: + return "ALTER_TSCONFIG_REPLACE_DICT"; + case 4: + return "ALTER_TSCONFIG_REPLACE_DICT_FOR_TOKEN"; + case 5: + return "ALTER_TSCONFIG_DROP_MAPPING"; + default: + throw new Error("Key not recognized in enum AlterTSConfigType"); + } + } + case "PublicationObjSpecType": + { + switch (key) { + case "PUBLICATION_OBJ_SPEC_TYPE_UNDEFINED": + return 0; + case "PUBLICATIONOBJ_TABLE": + return 1; + case "PUBLICATIONOBJ_TABLES_IN_SCHEMA": + return 2; + case "PUBLICATIONOBJ_TABLES_IN_CUR_SCHEMA": + return 3; + case "PUBLICATIONOBJ_CONTINUATION": + return 4; + case 0: + return "PUBLICATION_OBJ_SPEC_TYPE_UNDEFINED"; + case 1: + return "PUBLICATIONOBJ_TABLE"; + case 2: + return "PUBLICATIONOBJ_TABLES_IN_SCHEMA"; + case 3: + return "PUBLICATIONOBJ_TABLES_IN_CUR_SCHEMA"; + case 4: + return "PUBLICATIONOBJ_CONTINUATION"; + default: + throw new Error("Key not recognized in enum PublicationObjSpecType"); + } + } + case "AlterPublicationAction": + { + switch (key) { + case "ALTER_PUBLICATION_ACTION_UNDEFINED": + return 0; + case "AP_AddObjects": + return 1; + case "AP_DropObjects": + return 2; + case "AP_SetObjects": + return 3; + case 0: + return "ALTER_PUBLICATION_ACTION_UNDEFINED"; + case 1: + return "AP_AddObjects"; + case 2: + return "AP_DropObjects"; + case 3: + return "AP_SetObjects"; + default: + throw new Error("Key not recognized in enum AlterPublicationAction"); + } + } + case "AlterSubscriptionType": + { + switch (key) { + case "ALTER_SUBSCRIPTION_TYPE_UNDEFINED": + return 0; + case "ALTER_SUBSCRIPTION_OPTIONS": + return 1; + case "ALTER_SUBSCRIPTION_CONNECTION": + return 2; + case "ALTER_SUBSCRIPTION_SET_PUBLICATION": + return 3; + case "ALTER_SUBSCRIPTION_ADD_PUBLICATION": + return 4; + case "ALTER_SUBSCRIPTION_DROP_PUBLICATION": + return 5; + case "ALTER_SUBSCRIPTION_REFRESH": + return 6; + case "ALTER_SUBSCRIPTION_ENABLED": + return 7; + case "ALTER_SUBSCRIPTION_SKIP": + return 8; + case 0: + return "ALTER_SUBSCRIPTION_TYPE_UNDEFINED"; + case 1: + return "ALTER_SUBSCRIPTION_OPTIONS"; + case 2: + return "ALTER_SUBSCRIPTION_CONNECTION"; + case 3: + return "ALTER_SUBSCRIPTION_SET_PUBLICATION"; + case 4: + return "ALTER_SUBSCRIPTION_ADD_PUBLICATION"; + case 5: + return "ALTER_SUBSCRIPTION_DROP_PUBLICATION"; + case 6: + return "ALTER_SUBSCRIPTION_REFRESH"; + case 7: + return "ALTER_SUBSCRIPTION_ENABLED"; + case 8: + return "ALTER_SUBSCRIPTION_SKIP"; + default: + throw new Error("Key not recognized in enum AlterSubscriptionType"); + } + } + case "OnCommitAction": + { + switch (key) { + case "ON_COMMIT_ACTION_UNDEFINED": + return 0; + case "ONCOMMIT_NOOP": + return 1; + case "ONCOMMIT_PRESERVE_ROWS": + return 2; + case "ONCOMMIT_DELETE_ROWS": + return 3; + case "ONCOMMIT_DROP": + return 4; + case 0: + return "ON_COMMIT_ACTION_UNDEFINED"; + case 1: + return "ONCOMMIT_NOOP"; + case 2: + return "ONCOMMIT_PRESERVE_ROWS"; + case 3: + return "ONCOMMIT_DELETE_ROWS"; + case 4: + return "ONCOMMIT_DROP"; + default: + throw new Error("Key not recognized in enum OnCommitAction"); + } + } + case "ParamKind": + { + switch (key) { + case "PARAM_KIND_UNDEFINED": + return 0; + case "PARAM_EXTERN": + return 1; + case "PARAM_EXEC": + return 2; + case "PARAM_SUBLINK": + return 3; + case "PARAM_MULTIEXPR": + return 4; + case 0: + return "PARAM_KIND_UNDEFINED"; + case 1: + return "PARAM_EXTERN"; + case 2: + return "PARAM_EXEC"; + case 3: + return "PARAM_SUBLINK"; + case 4: + return "PARAM_MULTIEXPR"; + default: + throw new Error("Key not recognized in enum ParamKind"); + } + } + case "CoercionContext": + { + switch (key) { + case "COERCION_CONTEXT_UNDEFINED": + return 0; + case "COERCION_IMPLICIT": + return 1; + case "COERCION_ASSIGNMENT": + return 2; + case "COERCION_PLPGSQL": + return 3; + case "COERCION_EXPLICIT": + return 4; + case 0: + return "COERCION_CONTEXT_UNDEFINED"; + case 1: + return "COERCION_IMPLICIT"; + case 2: + return "COERCION_ASSIGNMENT"; + case 3: + return "COERCION_PLPGSQL"; + case 4: + return "COERCION_EXPLICIT"; + default: + throw new Error("Key not recognized in enum CoercionContext"); + } + } + case "CoercionForm": + { + switch (key) { + case "COERCION_FORM_UNDEFINED": + return 0; + case "COERCE_EXPLICIT_CALL": + return 1; + case "COERCE_EXPLICIT_CAST": + return 2; + case "COERCE_IMPLICIT_CAST": + return 3; + case "COERCE_SQL_SYNTAX": + return 4; + case 0: + return "COERCION_FORM_UNDEFINED"; + case 1: + return "COERCE_EXPLICIT_CALL"; + case 2: + return "COERCE_EXPLICIT_CAST"; + case 3: + return "COERCE_IMPLICIT_CAST"; + case 4: + return "COERCE_SQL_SYNTAX"; + default: + throw new Error("Key not recognized in enum CoercionForm"); + } + } + case "BoolExprType": + { + switch (key) { + case "BOOL_EXPR_TYPE_UNDEFINED": + return 0; + case "AND_EXPR": + return 1; + case "OR_EXPR": + return 2; + case "NOT_EXPR": + return 3; + case 0: + return "BOOL_EXPR_TYPE_UNDEFINED"; + case 1: + return "AND_EXPR"; + case 2: + return "OR_EXPR"; + case 3: + return "NOT_EXPR"; + default: + throw new Error("Key not recognized in enum BoolExprType"); + } + } + case "SubLinkType": + { + switch (key) { + case "SUB_LINK_TYPE_UNDEFINED": + return 0; + case "EXISTS_SUBLINK": + return 1; + case "ALL_SUBLINK": + return 2; + case "ANY_SUBLINK": + return 3; + case "ROWCOMPARE_SUBLINK": + return 4; + case "EXPR_SUBLINK": + return 5; + case "MULTIEXPR_SUBLINK": + return 6; + case "ARRAY_SUBLINK": + return 7; + case "CTE_SUBLINK": + return 8; + case 0: + return "SUB_LINK_TYPE_UNDEFINED"; + case 1: + return "EXISTS_SUBLINK"; + case 2: + return "ALL_SUBLINK"; + case 3: + return "ANY_SUBLINK"; + case 4: + return "ROWCOMPARE_SUBLINK"; + case 5: + return "EXPR_SUBLINK"; + case 6: + return "MULTIEXPR_SUBLINK"; + case 7: + return "ARRAY_SUBLINK"; + case 8: + return "CTE_SUBLINK"; + default: + throw new Error("Key not recognized in enum SubLinkType"); + } + } + case "RowCompareType": + { + switch (key) { + case "ROW_COMPARE_TYPE_UNDEFINED": + return 0; + case "ROWCOMPARE_LT": + return 1; + case "ROWCOMPARE_LE": + return 2; + case "ROWCOMPARE_EQ": + return 3; + case "ROWCOMPARE_GE": + return 4; + case "ROWCOMPARE_GT": + return 5; + case "ROWCOMPARE_NE": + return 6; + case 0: + return "ROW_COMPARE_TYPE_UNDEFINED"; + case 1: + return "ROWCOMPARE_LT"; + case 2: + return "ROWCOMPARE_LE"; + case 3: + return "ROWCOMPARE_EQ"; + case 4: + return "ROWCOMPARE_GE"; + case 5: + return "ROWCOMPARE_GT"; + case 6: + return "ROWCOMPARE_NE"; + default: + throw new Error("Key not recognized in enum RowCompareType"); + } + } + case "MinMaxOp": + { + switch (key) { + case "MIN_MAX_OP_UNDEFINED": + return 0; + case "IS_GREATEST": + return 1; + case "IS_LEAST": + return 2; + case 0: + return "MIN_MAX_OP_UNDEFINED"; + case 1: + return "IS_GREATEST"; + case 2: + return "IS_LEAST"; + default: + throw new Error("Key not recognized in enum MinMaxOp"); + } + } + case "SQLValueFunctionOp": + { + switch (key) { + case "SQLVALUE_FUNCTION_OP_UNDEFINED": + return 0; + case "SVFOP_CURRENT_DATE": + return 1; + case "SVFOP_CURRENT_TIME": + return 2; + case "SVFOP_CURRENT_TIME_N": + return 3; + case "SVFOP_CURRENT_TIMESTAMP": + return 4; + case "SVFOP_CURRENT_TIMESTAMP_N": + return 5; + case "SVFOP_LOCALTIME": + return 6; + case "SVFOP_LOCALTIME_N": + return 7; + case "SVFOP_LOCALTIMESTAMP": + return 8; + case "SVFOP_LOCALTIMESTAMP_N": + return 9; + case "SVFOP_CURRENT_ROLE": + return 10; + case "SVFOP_CURRENT_USER": + return 11; + case "SVFOP_USER": + return 12; + case "SVFOP_SESSION_USER": + return 13; + case "SVFOP_CURRENT_CATALOG": + return 14; + case "SVFOP_CURRENT_SCHEMA": + return 15; + case 0: + return "SQLVALUE_FUNCTION_OP_UNDEFINED"; + case 1: + return "SVFOP_CURRENT_DATE"; + case 2: + return "SVFOP_CURRENT_TIME"; + case 3: + return "SVFOP_CURRENT_TIME_N"; + case 4: + return "SVFOP_CURRENT_TIMESTAMP"; + case 5: + return "SVFOP_CURRENT_TIMESTAMP_N"; + case 6: + return "SVFOP_LOCALTIME"; + case 7: + return "SVFOP_LOCALTIME_N"; + case 8: + return "SVFOP_LOCALTIMESTAMP"; + case 9: + return "SVFOP_LOCALTIMESTAMP_N"; + case 10: + return "SVFOP_CURRENT_ROLE"; + case 11: + return "SVFOP_CURRENT_USER"; + case 12: + return "SVFOP_USER"; + case 13: + return "SVFOP_SESSION_USER"; + case 14: + return "SVFOP_CURRENT_CATALOG"; + case 15: + return "SVFOP_CURRENT_SCHEMA"; + default: + throw new Error("Key not recognized in enum SQLValueFunctionOp"); + } + } + case "XmlExprOp": + { + switch (key) { + case "XML_EXPR_OP_UNDEFINED": + return 0; + case "IS_XMLCONCAT": + return 1; + case "IS_XMLELEMENT": + return 2; + case "IS_XMLFOREST": + return 3; + case "IS_XMLPARSE": + return 4; + case "IS_XMLPI": + return 5; + case "IS_XMLROOT": + return 6; + case "IS_XMLSERIALIZE": + return 7; + case "IS_DOCUMENT": + return 8; + case 0: + return "XML_EXPR_OP_UNDEFINED"; + case 1: + return "IS_XMLCONCAT"; + case 2: + return "IS_XMLELEMENT"; + case 3: + return "IS_XMLFOREST"; + case 4: + return "IS_XMLPARSE"; + case 5: + return "IS_XMLPI"; + case 6: + return "IS_XMLROOT"; + case 7: + return "IS_XMLSERIALIZE"; + case 8: + return "IS_DOCUMENT"; + default: + throw new Error("Key not recognized in enum XmlExprOp"); + } + } + case "XmlOptionType": + { + switch (key) { + case "XML_OPTION_TYPE_UNDEFINED": + return 0; + case "XMLOPTION_DOCUMENT": + return 1; + case "XMLOPTION_CONTENT": + return 2; + case 0: + return "XML_OPTION_TYPE_UNDEFINED"; + case 1: + return "XMLOPTION_DOCUMENT"; + case 2: + return "XMLOPTION_CONTENT"; + default: + throw new Error("Key not recognized in enum XmlOptionType"); + } + } + case "JsonEncoding": + { + switch (key) { + case "JSON_ENCODING_UNDEFINED": + return 0; + case "JS_ENC_DEFAULT": + return 1; + case "JS_ENC_UTF8": + return 2; + case "JS_ENC_UTF16": + return 3; + case "JS_ENC_UTF32": + return 4; + case 0: + return "JSON_ENCODING_UNDEFINED"; + case 1: + return "JS_ENC_DEFAULT"; + case 2: + return "JS_ENC_UTF8"; + case 3: + return "JS_ENC_UTF16"; + case 4: + return "JS_ENC_UTF32"; + default: + throw new Error("Key not recognized in enum JsonEncoding"); + } + } + case "JsonFormatType": + { + switch (key) { + case "JSON_FORMAT_TYPE_UNDEFINED": + return 0; + case "JS_FORMAT_DEFAULT": + return 1; + case "JS_FORMAT_JSON": + return 2; + case "JS_FORMAT_JSONB": + return 3; + case 0: + return "JSON_FORMAT_TYPE_UNDEFINED"; + case 1: + return "JS_FORMAT_DEFAULT"; + case 2: + return "JS_FORMAT_JSON"; + case 3: + return "JS_FORMAT_JSONB"; + default: + throw new Error("Key not recognized in enum JsonFormatType"); + } + } + case "JsonConstructorType": + { + switch (key) { + case "JSON_CONSTRUCTOR_TYPE_UNDEFINED": + return 0; + case "JSCTOR_JSON_OBJECT": + return 1; + case "JSCTOR_JSON_ARRAY": + return 2; + case "JSCTOR_JSON_OBJECTAGG": + return 3; + case "JSCTOR_JSON_ARRAYAGG": + return 4; + case 0: + return "JSON_CONSTRUCTOR_TYPE_UNDEFINED"; + case 1: + return "JSCTOR_JSON_OBJECT"; + case 2: + return "JSCTOR_JSON_ARRAY"; + case 3: + return "JSCTOR_JSON_OBJECTAGG"; + case 4: + return "JSCTOR_JSON_ARRAYAGG"; + default: + throw new Error("Key not recognized in enum JsonConstructorType"); + } + } + case "JsonValueType": + { + switch (key) { + case "JSON_VALUE_TYPE_UNDEFINED": + return 0; + case "JS_TYPE_ANY": + return 1; + case "JS_TYPE_OBJECT": + return 2; + case "JS_TYPE_ARRAY": + return 3; + case "JS_TYPE_SCALAR": + return 4; + case 0: + return "JSON_VALUE_TYPE_UNDEFINED"; + case 1: + return "JS_TYPE_ANY"; + case 2: + return "JS_TYPE_OBJECT"; + case 3: + return "JS_TYPE_ARRAY"; + case 4: + return "JS_TYPE_SCALAR"; + default: + throw new Error("Key not recognized in enum JsonValueType"); + } + } + case "NullTestType": + { + switch (key) { + case "NULL_TEST_TYPE_UNDEFINED": + return 0; + case "IS_NULL": + return 1; + case "IS_NOT_NULL": + return 2; + case 0: + return "NULL_TEST_TYPE_UNDEFINED"; + case 1: + return "IS_NULL"; + case 2: + return "IS_NOT_NULL"; + default: + throw new Error("Key not recognized in enum NullTestType"); + } + } + case "BoolTestType": + { + switch (key) { + case "BOOL_TEST_TYPE_UNDEFINED": + return 0; + case "IS_TRUE": + return 1; + case "IS_NOT_TRUE": + return 2; + case "IS_FALSE": + return 3; + case "IS_NOT_FALSE": + return 4; + case "IS_UNKNOWN": + return 5; + case "IS_NOT_UNKNOWN": + return 6; + case 0: + return "BOOL_TEST_TYPE_UNDEFINED"; + case 1: + return "IS_TRUE"; + case 2: + return "IS_NOT_TRUE"; + case 3: + return "IS_FALSE"; + case 4: + return "IS_NOT_FALSE"; + case 5: + return "IS_UNKNOWN"; + case 6: + return "IS_NOT_UNKNOWN"; + default: + throw new Error("Key not recognized in enum BoolTestType"); + } + } + case "CmdType": + { + switch (key) { + case "CMD_TYPE_UNDEFINED": + return 0; + case "CMD_UNKNOWN": + return 1; + case "CMD_SELECT": + return 2; + case "CMD_UPDATE": + return 3; + case "CMD_INSERT": + return 4; + case "CMD_DELETE": + return 5; + case "CMD_MERGE": + return 6; + case "CMD_UTILITY": + return 7; + case "CMD_NOTHING": + return 8; + case 0: + return "CMD_TYPE_UNDEFINED"; + case 1: + return "CMD_UNKNOWN"; + case 2: + return "CMD_SELECT"; + case 3: + return "CMD_UPDATE"; + case 4: + return "CMD_INSERT"; + case 5: + return "CMD_DELETE"; + case 6: + return "CMD_MERGE"; + case 7: + return "CMD_UTILITY"; + case 8: + return "CMD_NOTHING"; + default: + throw new Error("Key not recognized in enum CmdType"); + } + } + case "JoinType": + { + switch (key) { + case "JOIN_TYPE_UNDEFINED": + return 0; + case "JOIN_INNER": + return 1; + case "JOIN_LEFT": + return 2; + case "JOIN_FULL": + return 3; + case "JOIN_RIGHT": + return 4; + case "JOIN_SEMI": + return 5; + case "JOIN_ANTI": + return 6; + case "JOIN_RIGHT_ANTI": + return 7; + case "JOIN_UNIQUE_OUTER": + return 8; + case "JOIN_UNIQUE_INNER": + return 9; + case 0: + return "JOIN_TYPE_UNDEFINED"; + case 1: + return "JOIN_INNER"; + case 2: + return "JOIN_LEFT"; + case 3: + return "JOIN_FULL"; + case 4: + return "JOIN_RIGHT"; + case 5: + return "JOIN_SEMI"; + case 6: + return "JOIN_ANTI"; + case 7: + return "JOIN_RIGHT_ANTI"; + case 8: + return "JOIN_UNIQUE_OUTER"; + case 9: + return "JOIN_UNIQUE_INNER"; + default: + throw new Error("Key not recognized in enum JoinType"); + } + } + case "AggStrategy": + { + switch (key) { + case "AGG_STRATEGY_UNDEFINED": + return 0; + case "AGG_PLAIN": + return 1; + case "AGG_SORTED": + return 2; + case "AGG_HASHED": + return 3; + case "AGG_MIXED": + return 4; + case 0: + return "AGG_STRATEGY_UNDEFINED"; + case 1: + return "AGG_PLAIN"; + case 2: + return "AGG_SORTED"; + case 3: + return "AGG_HASHED"; + case 4: + return "AGG_MIXED"; + default: + throw new Error("Key not recognized in enum AggStrategy"); + } + } + case "AggSplit": + { + switch (key) { + case "AGG_SPLIT_UNDEFINED": + return 0; + case "AGGSPLIT_SIMPLE": + return 1; + case "AGGSPLIT_INITIAL_SERIAL": + return 2; + case "AGGSPLIT_FINAL_DESERIAL": + return 3; + case 0: + return "AGG_SPLIT_UNDEFINED"; + case 1: + return "AGGSPLIT_SIMPLE"; + case 2: + return "AGGSPLIT_INITIAL_SERIAL"; + case 3: + return "AGGSPLIT_FINAL_DESERIAL"; + default: + throw new Error("Key not recognized in enum AggSplit"); + } + } + case "SetOpCmd": + { + switch (key) { + case "SET_OP_CMD_UNDEFINED": + return 0; + case "SETOPCMD_INTERSECT": + return 1; + case "SETOPCMD_INTERSECT_ALL": + return 2; + case "SETOPCMD_EXCEPT": + return 3; + case "SETOPCMD_EXCEPT_ALL": + return 4; + case 0: + return "SET_OP_CMD_UNDEFINED"; + case 1: + return "SETOPCMD_INTERSECT"; + case 2: + return "SETOPCMD_INTERSECT_ALL"; + case 3: + return "SETOPCMD_EXCEPT"; + case 4: + return "SETOPCMD_EXCEPT_ALL"; + default: + throw new Error("Key not recognized in enum SetOpCmd"); + } + } + case "SetOpStrategy": + { + switch (key) { + case "SET_OP_STRATEGY_UNDEFINED": + return 0; + case "SETOP_SORTED": + return 1; + case "SETOP_HASHED": + return 2; + case 0: + return "SET_OP_STRATEGY_UNDEFINED"; + case 1: + return "SETOP_SORTED"; + case 2: + return "SETOP_HASHED"; + default: + throw new Error("Key not recognized in enum SetOpStrategy"); + } + } + case "OnConflictAction": + { + switch (key) { + case "ON_CONFLICT_ACTION_UNDEFINED": + return 0; + case "ONCONFLICT_NONE": + return 1; + case "ONCONFLICT_NOTHING": + return 2; + case "ONCONFLICT_UPDATE": + return 3; + case 0: + return "ON_CONFLICT_ACTION_UNDEFINED"; + case 1: + return "ONCONFLICT_NONE"; + case 2: + return "ONCONFLICT_NOTHING"; + case 3: + return "ONCONFLICT_UPDATE"; + default: + throw new Error("Key not recognized in enum OnConflictAction"); + } + } + case "LimitOption": + { + switch (key) { + case "LIMIT_OPTION_UNDEFINED": + return 0; + case "LIMIT_OPTION_DEFAULT": + return 1; + case "LIMIT_OPTION_COUNT": + return 2; + case "LIMIT_OPTION_WITH_TIES": + return 3; + case 0: + return "LIMIT_OPTION_UNDEFINED"; + case 1: + return "LIMIT_OPTION_DEFAULT"; + case 2: + return "LIMIT_OPTION_COUNT"; + case 3: + return "LIMIT_OPTION_WITH_TIES"; + default: + throw new Error("Key not recognized in enum LimitOption"); + } + } + case "LockClauseStrength": + { + switch (key) { + case "LOCK_CLAUSE_STRENGTH_UNDEFINED": + return 0; + case "LCS_NONE": + return 1; + case "LCS_FORKEYSHARE": + return 2; + case "LCS_FORSHARE": + return 3; + case "LCS_FORNOKEYUPDATE": + return 4; + case "LCS_FORUPDATE": + return 5; + case 0: + return "LOCK_CLAUSE_STRENGTH_UNDEFINED"; + case 1: + return "LCS_NONE"; + case 2: + return "LCS_FORKEYSHARE"; + case 3: + return "LCS_FORSHARE"; + case 4: + return "LCS_FORNOKEYUPDATE"; + case 5: + return "LCS_FORUPDATE"; + default: + throw new Error("Key not recognized in enum LockClauseStrength"); + } + } + case "LockWaitPolicy": + { + switch (key) { + case "LOCK_WAIT_POLICY_UNDEFINED": + return 0; + case "LockWaitBlock": + return 1; + case "LockWaitSkip": + return 2; + case "LockWaitError": + return 3; + case 0: + return "LOCK_WAIT_POLICY_UNDEFINED"; + case 1: + return "LockWaitBlock"; + case 2: + return "LockWaitSkip"; + case 3: + return "LockWaitError"; + default: + throw new Error("Key not recognized in enum LockWaitPolicy"); + } + } + case "LockTupleMode": + { + switch (key) { + case "LOCK_TUPLE_MODE_UNDEFINED": + return 0; + case "LockTupleKeyShare": + return 1; + case "LockTupleShare": + return 2; + case "LockTupleNoKeyExclusive": + return 3; + case "LockTupleExclusive": + return 4; + case 0: + return "LOCK_TUPLE_MODE_UNDEFINED"; + case 1: + return "LockTupleKeyShare"; + case 2: + return "LockTupleShare"; + case 3: + return "LockTupleNoKeyExclusive"; + case 4: + return "LockTupleExclusive"; + default: + throw new Error("Key not recognized in enum LockTupleMode"); + } + } + case "KeywordKind": + { + switch (key) { + case "NO_KEYWORD": + return 0; + case "UNRESERVED_KEYWORD": + return 1; + case "COL_NAME_KEYWORD": + return 2; + case "TYPE_FUNC_NAME_KEYWORD": + return 3; + case "RESERVED_KEYWORD": + return 4; + case 0: + return "NO_KEYWORD"; + case 1: + return "UNRESERVED_KEYWORD"; + case 2: + return "COL_NAME_KEYWORD"; + case 3: + return "TYPE_FUNC_NAME_KEYWORD"; + case 4: + return "RESERVED_KEYWORD"; + default: + throw new Error("Key not recognized in enum KeywordKind"); + } + } + case "Token": + { + switch (key) { + case "NUL": + return 0; + case "ASCII_36": + return 36; + case "ASCII_37": + return 37; + case "ASCII_40": + return 40; + case "ASCII_41": + return 41; + case "ASCII_42": + return 42; + case "ASCII_43": + return 43; + case "ASCII_44": + return 44; + case "ASCII_45": + return 45; + case "ASCII_46": + return 46; + case "ASCII_47": + return 47; + case "ASCII_58": + return 58; + case "ASCII_59": + return 59; + case "ASCII_60": + return 60; + case "ASCII_61": + return 61; + case "ASCII_62": + return 62; + case "ASCII_63": + return 63; + case "ASCII_91": + return 91; + case "ASCII_92": + return 92; + case "ASCII_93": + return 93; + case "ASCII_94": + return 94; + case "IDENT": + return 258; + case "UIDENT": + return 259; + case "FCONST": + return 260; + case "SCONST": + return 261; + case "USCONST": + return 262; + case "BCONST": + return 263; + case "XCONST": + return 264; + case "Op": + return 265; + case "ICONST": + return 266; + case "PARAM": + return 267; + case "TYPECAST": + return 268; + case "DOT_DOT": + return 269; + case "COLON_EQUALS": + return 270; + case "EQUALS_GREATER": + return 271; + case "LESS_EQUALS": + return 272; + case "GREATER_EQUALS": + return 273; + case "NOT_EQUALS": + return 274; + case "SQL_COMMENT": + return 275; + case "C_COMMENT": + return 276; + case "ABORT_P": + return 277; + case "ABSENT": + return 278; + case "ABSOLUTE_P": + return 279; + case "ACCESS": + return 280; + case "ACTION": + return 281; + case "ADD_P": + return 282; + case "ADMIN": + return 283; + case "AFTER": + return 284; + case "AGGREGATE": + return 285; + case "ALL": + return 286; + case "ALSO": + return 287; + case "ALTER": + return 288; + case "ALWAYS": + return 289; + case "ANALYSE": + return 290; + case "ANALYZE": + return 291; + case "AND": + return 292; + case "ANY": + return 293; + case "ARRAY": + return 294; + case "AS": + return 295; + case "ASC": + return 296; + case "ASENSITIVE": + return 297; + case "ASSERTION": + return 298; + case "ASSIGNMENT": + return 299; + case "ASYMMETRIC": + return 300; + case "ATOMIC": + return 301; + case "AT": + return 302; + case "ATTACH": + return 303; + case "ATTRIBUTE": + return 304; + case "AUTHORIZATION": + return 305; + case "BACKWARD": + return 306; + case "BEFORE": + return 307; + case "BEGIN_P": + return 308; + case "BETWEEN": + return 309; + case "BIGINT": + return 310; + case "BINARY": + return 311; + case "BIT": + return 312; + case "BOOLEAN_P": + return 313; + case "BOTH": + return 314; + case "BREADTH": + return 315; + case "BY": + return 316; + case "CACHE": + return 317; + case "CALL": + return 318; + case "CALLED": + return 319; + case "CASCADE": + return 320; + case "CASCADED": + return 321; + case "CASE": + return 322; + case "CAST": + return 323; + case "CATALOG_P": + return 324; + case "CHAIN": + return 325; + case "CHAR_P": + return 326; + case "CHARACTER": + return 327; + case "CHARACTERISTICS": + return 328; + case "CHECK": + return 329; + case "CHECKPOINT": + return 330; + case "CLASS": + return 331; + case "CLOSE": + return 332; + case "CLUSTER": + return 333; + case "COALESCE": + return 334; + case "COLLATE": + return 335; + case "COLLATION": + return 336; + case "COLUMN": + return 337; + case "COLUMNS": + return 338; + case "COMMENT": + return 339; + case "COMMENTS": + return 340; + case "COMMIT": + return 341; + case "COMMITTED": + return 342; + case "COMPRESSION": + return 343; + case "CONCURRENTLY": + return 344; + case "CONFIGURATION": + return 345; + case "CONFLICT": + return 346; + case "CONNECTION": + return 347; + case "CONSTRAINT": + return 348; + case "CONSTRAINTS": + return 349; + case "CONTENT_P": + return 350; + case "CONTINUE_P": + return 351; + case "CONVERSION_P": + return 352; + case "COPY": + return 353; + case "COST": + return 354; + case "CREATE": + return 355; + case "CROSS": + return 356; + case "CSV": + return 357; + case "CUBE": + return 358; + case "CURRENT_P": + return 359; + case "CURRENT_CATALOG": + return 360; + case "CURRENT_DATE": + return 361; + case "CURRENT_ROLE": + return 362; + case "CURRENT_SCHEMA": + return 363; + case "CURRENT_TIME": + return 364; + case "CURRENT_TIMESTAMP": + return 365; + case "CURRENT_USER": + return 366; + case "CURSOR": + return 367; + case "CYCLE": + return 368; + case "DATA_P": + return 369; + case "DATABASE": + return 370; + case "DAY_P": + return 371; + case "DEALLOCATE": + return 372; + case "DEC": + return 373; + case "DECIMAL_P": + return 374; + case "DECLARE": + return 375; + case "DEFAULT": + return 376; + case "DEFAULTS": + return 377; + case "DEFERRABLE": + return 378; + case "DEFERRED": + return 379; + case "DEFINER": + return 380; + case "DELETE_P": + return 381; + case "DELIMITER": + return 382; + case "DELIMITERS": + return 383; + case "DEPENDS": + return 384; + case "DEPTH": + return 385; + case "DESC": + return 386; + case "DETACH": + return 387; + case "DICTIONARY": + return 388; + case "DISABLE_P": + return 389; + case "DISCARD": + return 390; + case "DISTINCT": + return 391; + case "DO": + return 392; + case "DOCUMENT_P": + return 393; + case "DOMAIN_P": + return 394; + case "DOUBLE_P": + return 395; + case "DROP": + return 396; + case "EACH": + return 397; + case "ELSE": + return 398; + case "ENABLE_P": + return 399; + case "ENCODING": + return 400; + case "ENCRYPTED": + return 401; + case "END_P": + return 402; + case "ENUM_P": + return 403; + case "ESCAPE": + return 404; + case "EVENT": + return 405; + case "EXCEPT": + return 406; + case "EXCLUDE": + return 407; + case "EXCLUDING": + return 408; + case "EXCLUSIVE": + return 409; + case "EXECUTE": + return 410; + case "EXISTS": + return 411; + case "EXPLAIN": + return 412; + case "EXPRESSION": + return 413; + case "EXTENSION": + return 414; + case "EXTERNAL": + return 415; + case "EXTRACT": + return 416; + case "FALSE_P": + return 417; + case "FAMILY": + return 418; + case "FETCH": + return 419; + case "FILTER": + return 420; + case "FINALIZE": + return 421; + case "FIRST_P": + return 422; + case "FLOAT_P": + return 423; + case "FOLLOWING": + return 424; + case "FOR": + return 425; + case "FORCE": + return 426; + case "FOREIGN": + return 427; + case "FORMAT": + return 428; + case "FORWARD": + return 429; + case "FREEZE": + return 430; + case "FROM": + return 431; + case "FULL": + return 432; + case "FUNCTION": + return 433; + case "FUNCTIONS": + return 434; + case "GENERATED": + return 435; + case "GLOBAL": + return 436; + case "GRANT": + return 437; + case "GRANTED": + return 438; + case "GREATEST": + return 439; + case "GROUP_P": + return 440; + case "GROUPING": + return 441; + case "GROUPS": + return 442; + case "HANDLER": + return 443; + case "HAVING": + return 444; + case "HEADER_P": + return 445; + case "HOLD": + return 446; + case "HOUR_P": + return 447; + case "IDENTITY_P": + return 448; + case "IF_P": + return 449; + case "ILIKE": + return 450; + case "IMMEDIATE": + return 451; + case "IMMUTABLE": + return 452; + case "IMPLICIT_P": + return 453; + case "IMPORT_P": + return 454; + case "IN_P": + return 455; + case "INCLUDE": + return 456; + case "INCLUDING": + return 457; + case "INCREMENT": + return 458; + case "INDENT": + return 459; + case "INDEX": + return 460; + case "INDEXES": + return 461; + case "INHERIT": + return 462; + case "INHERITS": + return 463; + case "INITIALLY": + return 464; + case "INLINE_P": + return 465; + case "INNER_P": + return 466; + case "INOUT": + return 467; + case "INPUT_P": + return 468; + case "INSENSITIVE": + return 469; + case "INSERT": + return 470; + case "INSTEAD": + return 471; + case "INT_P": + return 472; + case "INTEGER": + return 473; + case "INTERSECT": + return 474; + case "INTERVAL": + return 475; + case "INTO": + return 476; + case "INVOKER": + return 477; + case "IS": + return 478; + case "ISNULL": + return 479; + case "ISOLATION": + return 480; + case "JOIN": + return 481; + case "JSON": + return 482; + case "JSON_ARRAY": + return 483; + case "JSON_ARRAYAGG": + return 484; + case "JSON_OBJECT": + return 485; + case "JSON_OBJECTAGG": + return 486; + case "KEY": + return 487; + case "KEYS": + return 488; + case "LABEL": + return 489; + case "LANGUAGE": + return 490; + case "LARGE_P": + return 491; + case "LAST_P": + return 492; + case "LATERAL_P": + return 493; + case "LEADING": + return 494; + case "LEAKPROOF": + return 495; + case "LEAST": + return 496; + case "LEFT": + return 497; + case "LEVEL": + return 498; + case "LIKE": + return 499; + case "LIMIT": + return 500; + case "LISTEN": + return 501; + case "LOAD": + return 502; + case "LOCAL": + return 503; + case "LOCALTIME": + return 504; + case "LOCALTIMESTAMP": + return 505; + case "LOCATION": + return 506; + case "LOCK_P": + return 507; + case "LOCKED": + return 508; + case "LOGGED": + return 509; + case "MAPPING": + return 510; + case "MATCH": + return 511; + case "MATCHED": + return 512; + case "MATERIALIZED": + return 513; + case "MAXVALUE": + return 514; + case "MERGE": + return 515; + case "METHOD": + return 516; + case "MINUTE_P": + return 517; + case "MINVALUE": + return 518; + case "MODE": + return 519; + case "MONTH_P": + return 520; + case "MOVE": + return 521; + case "NAME_P": + return 522; + case "NAMES": + return 523; + case "NATIONAL": + return 524; + case "NATURAL": + return 525; + case "NCHAR": + return 526; + case "NEW": + return 527; + case "NEXT": + return 528; + case "NFC": + return 529; + case "NFD": + return 530; + case "NFKC": + return 531; + case "NFKD": + return 532; + case "NO": + return 533; + case "NONE": + return 534; + case "NORMALIZE": + return 535; + case "NORMALIZED": + return 536; + case "NOT": + return 537; + case "NOTHING": + return 538; + case "NOTIFY": + return 539; + case "NOTNULL": + return 540; + case "NOWAIT": + return 541; + case "NULL_P": + return 542; + case "NULLIF": + return 543; + case "NULLS_P": + return 544; + case "NUMERIC": + return 545; + case "OBJECT_P": + return 546; + case "OF": + return 547; + case "OFF": + return 548; + case "OFFSET": + return 549; + case "OIDS": + return 550; + case "OLD": + return 551; + case "ON": + return 552; + case "ONLY": + return 553; + case "OPERATOR": + return 554; + case "OPTION": + return 555; + case "OPTIONS": + return 556; + case "OR": + return 557; + case "ORDER": + return 558; + case "ORDINALITY": + return 559; + case "OTHERS": + return 560; + case "OUT_P": + return 561; + case "OUTER_P": + return 562; + case "OVER": + return 563; + case "OVERLAPS": + return 564; + case "OVERLAY": + return 565; + case "OVERRIDING": + return 566; + case "OWNED": + return 567; + case "OWNER": + return 568; + case "PARALLEL": + return 569; + case "PARAMETER": + return 570; + case "PARSER": + return 571; + case "PARTIAL": + return 572; + case "PARTITION": + return 573; + case "PASSING": + return 574; + case "PASSWORD": + return 575; + case "PLACING": + return 576; + case "PLANS": + return 577; + case "POLICY": + return 578; + case "POSITION": + return 579; + case "PRECEDING": + return 580; + case "PRECISION": + return 581; + case "PRESERVE": + return 582; + case "PREPARE": + return 583; + case "PREPARED": + return 584; + case "PRIMARY": + return 585; + case "PRIOR": + return 586; + case "PRIVILEGES": + return 587; + case "PROCEDURAL": + return 588; + case "PROCEDURE": + return 589; + case "PROCEDURES": + return 590; + case "PROGRAM": + return 591; + case "PUBLICATION": + return 592; + case "QUOTE": + return 593; + case "RANGE": + return 594; + case "READ": + return 595; + case "REAL": + return 596; + case "REASSIGN": + return 597; + case "RECHECK": + return 598; + case "RECURSIVE": + return 599; + case "REF_P": + return 600; + case "REFERENCES": + return 601; + case "REFERENCING": + return 602; + case "REFRESH": + return 603; + case "REINDEX": + return 604; + case "RELATIVE_P": + return 605; + case "RELEASE": + return 606; + case "RENAME": + return 607; + case "REPEATABLE": + return 608; + case "REPLACE": + return 609; + case "REPLICA": + return 610; + case "RESET": + return 611; + case "RESTART": + return 612; + case "RESTRICT": + return 613; + case "RETURN": + return 614; + case "RETURNING": + return 615; + case "RETURNS": + return 616; + case "REVOKE": + return 617; + case "RIGHT": + return 618; + case "ROLE": + return 619; + case "ROLLBACK": + return 620; + case "ROLLUP": + return 621; + case "ROUTINE": + return 622; + case "ROUTINES": + return 623; + case "ROW": + return 624; + case "ROWS": + return 625; + case "RULE": + return 626; + case "SAVEPOINT": + return 627; + case "SCALAR": + return 628; + case "SCHEMA": + return 629; + case "SCHEMAS": + return 630; + case "SCROLL": + return 631; + case "SEARCH": + return 632; + case "SECOND_P": + return 633; + case "SECURITY": + return 634; + case "SELECT": + return 635; + case "SEQUENCE": + return 636; + case "SEQUENCES": + return 637; + case "SERIALIZABLE": + return 638; + case "SERVER": + return 639; + case "SESSION": + return 640; + case "SESSION_USER": + return 641; + case "SET": + return 642; + case "SETS": + return 643; + case "SETOF": + return 644; + case "SHARE": + return 645; + case "SHOW": + return 646; + case "SIMILAR": + return 647; + case "SIMPLE": + return 648; + case "SKIP": + return 649; + case "SMALLINT": + return 650; + case "SNAPSHOT": + return 651; + case "SOME": + return 652; + case "SQL_P": + return 653; + case "STABLE": + return 654; + case "STANDALONE_P": + return 655; + case "START": + return 656; + case "STATEMENT": + return 657; + case "STATISTICS": + return 658; + case "STDIN": + return 659; + case "STDOUT": + return 660; + case "STORAGE": + return 661; + case "STORED": + return 662; + case "STRICT_P": + return 663; + case "STRIP_P": + return 664; + case "SUBSCRIPTION": + return 665; + case "SUBSTRING": + return 666; + case "SUPPORT": + return 667; + case "SYMMETRIC": + return 668; + case "SYSID": + return 669; + case "SYSTEM_P": + return 670; + case "SYSTEM_USER": + return 671; + case "TABLE": + return 672; + case "TABLES": + return 673; + case "TABLESAMPLE": + return 674; + case "TABLESPACE": + return 675; + case "TEMP": + return 676; + case "TEMPLATE": + return 677; + case "TEMPORARY": + return 678; + case "TEXT_P": + return 679; + case "THEN": + return 680; + case "TIES": + return 681; + case "TIME": + return 682; + case "TIMESTAMP": + return 683; + case "TO": + return 684; + case "TRAILING": + return 685; + case "TRANSACTION": + return 686; + case "TRANSFORM": + return 687; + case "TREAT": + return 688; + case "TRIGGER": + return 689; + case "TRIM": + return 690; + case "TRUE_P": + return 691; + case "TRUNCATE": + return 692; + case "TRUSTED": + return 693; + case "TYPE_P": + return 694; + case "TYPES_P": + return 695; + case "UESCAPE": + return 696; + case "UNBOUNDED": + return 697; + case "UNCOMMITTED": + return 698; + case "UNENCRYPTED": + return 699; + case "UNION": + return 700; + case "UNIQUE": + return 701; + case "UNKNOWN": + return 702; + case "UNLISTEN": + return 703; + case "UNLOGGED": + return 704; + case "UNTIL": + return 705; + case "UPDATE": + return 706; + case "USER": + return 707; + case "USING": + return 708; + case "VACUUM": + return 709; + case "VALID": + return 710; + case "VALIDATE": + return 711; + case "VALIDATOR": + return 712; + case "VALUE_P": + return 713; + case "VALUES": + return 714; + case "VARCHAR": + return 715; + case "VARIADIC": + return 716; + case "VARYING": + return 717; + case "VERBOSE": + return 718; + case "VERSION_P": + return 719; + case "VIEW": + return 720; + case "VIEWS": + return 721; + case "VOLATILE": + return 722; + case "WHEN": + return 723; + case "WHERE": + return 724; + case "WHITESPACE_P": + return 725; + case "WINDOW": + return 726; + case "WITH": + return 727; + case "WITHIN": + return 728; + case "WITHOUT": + return 729; + case "WORK": + return 730; + case "WRAPPER": + return 731; + case "WRITE": + return 732; + case "XML_P": + return 733; + case "XMLATTRIBUTES": + return 734; + case "XMLCONCAT": + return 735; + case "XMLELEMENT": + return 736; + case "XMLEXISTS": + return 737; + case "XMLFOREST": + return 738; + case "XMLNAMESPACES": + return 739; + case "XMLPARSE": + return 740; + case "XMLPI": + return 741; + case "XMLROOT": + return 742; + case "XMLSERIALIZE": + return 743; + case "XMLTABLE": + return 744; + case "YEAR_P": + return 745; + case "YES_P": + return 746; + case "ZONE": + return 747; + case "FORMAT_LA": + return 748; + case "NOT_LA": + return 749; + case "NULLS_LA": + return 750; + case "WITH_LA": + return 751; + case "WITHOUT_LA": + return 752; + case "MODE_TYPE_NAME": + return 753; + case "MODE_PLPGSQL_EXPR": + return 754; + case "MODE_PLPGSQL_ASSIGN1": + return 755; + case "MODE_PLPGSQL_ASSIGN2": + return 756; + case "MODE_PLPGSQL_ASSIGN3": + return 757; + case "UMINUS": + return 758; + case 0: + return "NUL"; + case 36: + return "ASCII_36"; + case 37: + return "ASCII_37"; + case 40: + return "ASCII_40"; + case 41: + return "ASCII_41"; + case 42: + return "ASCII_42"; + case 43: + return "ASCII_43"; + case 44: + return "ASCII_44"; + case 45: + return "ASCII_45"; + case 46: + return "ASCII_46"; + case 47: + return "ASCII_47"; + case 58: + return "ASCII_58"; + case 59: + return "ASCII_59"; + case 60: + return "ASCII_60"; + case 61: + return "ASCII_61"; + case 62: + return "ASCII_62"; + case 63: + return "ASCII_63"; + case 91: + return "ASCII_91"; + case 92: + return "ASCII_92"; + case 93: + return "ASCII_93"; + case 94: + return "ASCII_94"; + case 258: + return "IDENT"; + case 259: + return "UIDENT"; + case 260: + return "FCONST"; + case 261: + return "SCONST"; + case 262: + return "USCONST"; + case 263: + return "BCONST"; + case 264: + return "XCONST"; + case 265: + return "Op"; + case 266: + return "ICONST"; + case 267: + return "PARAM"; + case 268: + return "TYPECAST"; + case 269: + return "DOT_DOT"; + case 270: + return "COLON_EQUALS"; + case 271: + return "EQUALS_GREATER"; + case 272: + return "LESS_EQUALS"; + case 273: + return "GREATER_EQUALS"; + case 274: + return "NOT_EQUALS"; + case 275: + return "SQL_COMMENT"; + case 276: + return "C_COMMENT"; + case 277: + return "ABORT_P"; + case 278: + return "ABSENT"; + case 279: + return "ABSOLUTE_P"; + case 280: + return "ACCESS"; + case 281: + return "ACTION"; + case 282: + return "ADD_P"; + case 283: + return "ADMIN"; + case 284: + return "AFTER"; + case 285: + return "AGGREGATE"; + case 286: + return "ALL"; + case 287: + return "ALSO"; + case 288: + return "ALTER"; + case 289: + return "ALWAYS"; + case 290: + return "ANALYSE"; + case 291: + return "ANALYZE"; + case 292: + return "AND"; + case 293: + return "ANY"; + case 294: + return "ARRAY"; + case 295: + return "AS"; + case 296: + return "ASC"; + case 297: + return "ASENSITIVE"; + case 298: + return "ASSERTION"; + case 299: + return "ASSIGNMENT"; + case 300: + return "ASYMMETRIC"; + case 301: + return "ATOMIC"; + case 302: + return "AT"; + case 303: + return "ATTACH"; + case 304: + return "ATTRIBUTE"; + case 305: + return "AUTHORIZATION"; + case 306: + return "BACKWARD"; + case 307: + return "BEFORE"; + case 308: + return "BEGIN_P"; + case 309: + return "BETWEEN"; + case 310: + return "BIGINT"; + case 311: + return "BINARY"; + case 312: + return "BIT"; + case 313: + return "BOOLEAN_P"; + case 314: + return "BOTH"; + case 315: + return "BREADTH"; + case 316: + return "BY"; + case 317: + return "CACHE"; + case 318: + return "CALL"; + case 319: + return "CALLED"; + case 320: + return "CASCADE"; + case 321: + return "CASCADED"; + case 322: + return "CASE"; + case 323: + return "CAST"; + case 324: + return "CATALOG_P"; + case 325: + return "CHAIN"; + case 326: + return "CHAR_P"; + case 327: + return "CHARACTER"; + case 328: + return "CHARACTERISTICS"; + case 329: + return "CHECK"; + case 330: + return "CHECKPOINT"; + case 331: + return "CLASS"; + case 332: + return "CLOSE"; + case 333: + return "CLUSTER"; + case 334: + return "COALESCE"; + case 335: + return "COLLATE"; + case 336: + return "COLLATION"; + case 337: + return "COLUMN"; + case 338: + return "COLUMNS"; + case 339: + return "COMMENT"; + case 340: + return "COMMENTS"; + case 341: + return "COMMIT"; + case 342: + return "COMMITTED"; + case 343: + return "COMPRESSION"; + case 344: + return "CONCURRENTLY"; + case 345: + return "CONFIGURATION"; + case 346: + return "CONFLICT"; + case 347: + return "CONNECTION"; + case 348: + return "CONSTRAINT"; + case 349: + return "CONSTRAINTS"; + case 350: + return "CONTENT_P"; + case 351: + return "CONTINUE_P"; + case 352: + return "CONVERSION_P"; + case 353: + return "COPY"; + case 354: + return "COST"; + case 355: + return "CREATE"; + case 356: + return "CROSS"; + case 357: + return "CSV"; + case 358: + return "CUBE"; + case 359: + return "CURRENT_P"; + case 360: + return "CURRENT_CATALOG"; + case 361: + return "CURRENT_DATE"; + case 362: + return "CURRENT_ROLE"; + case 363: + return "CURRENT_SCHEMA"; + case 364: + return "CURRENT_TIME"; + case 365: + return "CURRENT_TIMESTAMP"; + case 366: + return "CURRENT_USER"; + case 367: + return "CURSOR"; + case 368: + return "CYCLE"; + case 369: + return "DATA_P"; + case 370: + return "DATABASE"; + case 371: + return "DAY_P"; + case 372: + return "DEALLOCATE"; + case 373: + return "DEC"; + case 374: + return "DECIMAL_P"; + case 375: + return "DECLARE"; + case 376: + return "DEFAULT"; + case 377: + return "DEFAULTS"; + case 378: + return "DEFERRABLE"; + case 379: + return "DEFERRED"; + case 380: + return "DEFINER"; + case 381: + return "DELETE_P"; + case 382: + return "DELIMITER"; + case 383: + return "DELIMITERS"; + case 384: + return "DEPENDS"; + case 385: + return "DEPTH"; + case 386: + return "DESC"; + case 387: + return "DETACH"; + case 388: + return "DICTIONARY"; + case 389: + return "DISABLE_P"; + case 390: + return "DISCARD"; + case 391: + return "DISTINCT"; + case 392: + return "DO"; + case 393: + return "DOCUMENT_P"; + case 394: + return "DOMAIN_P"; + case 395: + return "DOUBLE_P"; + case 396: + return "DROP"; + case 397: + return "EACH"; + case 398: + return "ELSE"; + case 399: + return "ENABLE_P"; + case 400: + return "ENCODING"; + case 401: + return "ENCRYPTED"; + case 402: + return "END_P"; + case 403: + return "ENUM_P"; + case 404: + return "ESCAPE"; + case 405: + return "EVENT"; + case 406: + return "EXCEPT"; + case 407: + return "EXCLUDE"; + case 408: + return "EXCLUDING"; + case 409: + return "EXCLUSIVE"; + case 410: + return "EXECUTE"; + case 411: + return "EXISTS"; + case 412: + return "EXPLAIN"; + case 413: + return "EXPRESSION"; + case 414: + return "EXTENSION"; + case 415: + return "EXTERNAL"; + case 416: + return "EXTRACT"; + case 417: + return "FALSE_P"; + case 418: + return "FAMILY"; + case 419: + return "FETCH"; + case 420: + return "FILTER"; + case 421: + return "FINALIZE"; + case 422: + return "FIRST_P"; + case 423: + return "FLOAT_P"; + case 424: + return "FOLLOWING"; + case 425: + return "FOR"; + case 426: + return "FORCE"; + case 427: + return "FOREIGN"; + case 428: + return "FORMAT"; + case 429: + return "FORWARD"; + case 430: + return "FREEZE"; + case 431: + return "FROM"; + case 432: + return "FULL"; + case 433: + return "FUNCTION"; + case 434: + return "FUNCTIONS"; + case 435: + return "GENERATED"; + case 436: + return "GLOBAL"; + case 437: + return "GRANT"; + case 438: + return "GRANTED"; + case 439: + return "GREATEST"; + case 440: + return "GROUP_P"; + case 441: + return "GROUPING"; + case 442: + return "GROUPS"; + case 443: + return "HANDLER"; + case 444: + return "HAVING"; + case 445: + return "HEADER_P"; + case 446: + return "HOLD"; + case 447: + return "HOUR_P"; + case 448: + return "IDENTITY_P"; + case 449: + return "IF_P"; + case 450: + return "ILIKE"; + case 451: + return "IMMEDIATE"; + case 452: + return "IMMUTABLE"; + case 453: + return "IMPLICIT_P"; + case 454: + return "IMPORT_P"; + case 455: + return "IN_P"; + case 456: + return "INCLUDE"; + case 457: + return "INCLUDING"; + case 458: + return "INCREMENT"; + case 459: + return "INDENT"; + case 460: + return "INDEX"; + case 461: + return "INDEXES"; + case 462: + return "INHERIT"; + case 463: + return "INHERITS"; + case 464: + return "INITIALLY"; + case 465: + return "INLINE_P"; + case 466: + return "INNER_P"; + case 467: + return "INOUT"; + case 468: + return "INPUT_P"; + case 469: + return "INSENSITIVE"; + case 470: + return "INSERT"; + case 471: + return "INSTEAD"; + case 472: + return "INT_P"; + case 473: + return "INTEGER"; + case 474: + return "INTERSECT"; + case 475: + return "INTERVAL"; + case 476: + return "INTO"; + case 477: + return "INVOKER"; + case 478: + return "IS"; + case 479: + return "ISNULL"; + case 480: + return "ISOLATION"; + case 481: + return "JOIN"; + case 482: + return "JSON"; + case 483: + return "JSON_ARRAY"; + case 484: + return "JSON_ARRAYAGG"; + case 485: + return "JSON_OBJECT"; + case 486: + return "JSON_OBJECTAGG"; + case 487: + return "KEY"; + case 488: + return "KEYS"; + case 489: + return "LABEL"; + case 490: + return "LANGUAGE"; + case 491: + return "LARGE_P"; + case 492: + return "LAST_P"; + case 493: + return "LATERAL_P"; + case 494: + return "LEADING"; + case 495: + return "LEAKPROOF"; + case 496: + return "LEAST"; + case 497: + return "LEFT"; + case 498: + return "LEVEL"; + case 499: + return "LIKE"; + case 500: + return "LIMIT"; + case 501: + return "LISTEN"; + case 502: + return "LOAD"; + case 503: + return "LOCAL"; + case 504: + return "LOCALTIME"; + case 505: + return "LOCALTIMESTAMP"; + case 506: + return "LOCATION"; + case 507: + return "LOCK_P"; + case 508: + return "LOCKED"; + case 509: + return "LOGGED"; + case 510: + return "MAPPING"; + case 511: + return "MATCH"; + case 512: + return "MATCHED"; + case 513: + return "MATERIALIZED"; + case 514: + return "MAXVALUE"; + case 515: + return "MERGE"; + case 516: + return "METHOD"; + case 517: + return "MINUTE_P"; + case 518: + return "MINVALUE"; + case 519: + return "MODE"; + case 520: + return "MONTH_P"; + case 521: + return "MOVE"; + case 522: + return "NAME_P"; + case 523: + return "NAMES"; + case 524: + return "NATIONAL"; + case 525: + return "NATURAL"; + case 526: + return "NCHAR"; + case 527: + return "NEW"; + case 528: + return "NEXT"; + case 529: + return "NFC"; + case 530: + return "NFD"; + case 531: + return "NFKC"; + case 532: + return "NFKD"; + case 533: + return "NO"; + case 534: + return "NONE"; + case 535: + return "NORMALIZE"; + case 536: + return "NORMALIZED"; + case 537: + return "NOT"; + case 538: + return "NOTHING"; + case 539: + return "NOTIFY"; + case 540: + return "NOTNULL"; + case 541: + return "NOWAIT"; + case 542: + return "NULL_P"; + case 543: + return "NULLIF"; + case 544: + return "NULLS_P"; + case 545: + return "NUMERIC"; + case 546: + return "OBJECT_P"; + case 547: + return "OF"; + case 548: + return "OFF"; + case 549: + return "OFFSET"; + case 550: + return "OIDS"; + case 551: + return "OLD"; + case 552: + return "ON"; + case 553: + return "ONLY"; + case 554: + return "OPERATOR"; + case 555: + return "OPTION"; + case 556: + return "OPTIONS"; + case 557: + return "OR"; + case 558: + return "ORDER"; + case 559: + return "ORDINALITY"; + case 560: + return "OTHERS"; + case 561: + return "OUT_P"; + case 562: + return "OUTER_P"; + case 563: + return "OVER"; + case 564: + return "OVERLAPS"; + case 565: + return "OVERLAY"; + case 566: + return "OVERRIDING"; + case 567: + return "OWNED"; + case 568: + return "OWNER"; + case 569: + return "PARALLEL"; + case 570: + return "PARAMETER"; + case 571: + return "PARSER"; + case 572: + return "PARTIAL"; + case 573: + return "PARTITION"; + case 574: + return "PASSING"; + case 575: + return "PASSWORD"; + case 576: + return "PLACING"; + case 577: + return "PLANS"; + case 578: + return "POLICY"; + case 579: + return "POSITION"; + case 580: + return "PRECEDING"; + case 581: + return "PRECISION"; + case 582: + return "PRESERVE"; + case 583: + return "PREPARE"; + case 584: + return "PREPARED"; + case 585: + return "PRIMARY"; + case 586: + return "PRIOR"; + case 587: + return "PRIVILEGES"; + case 588: + return "PROCEDURAL"; + case 589: + return "PROCEDURE"; + case 590: + return "PROCEDURES"; + case 591: + return "PROGRAM"; + case 592: + return "PUBLICATION"; + case 593: + return "QUOTE"; + case 594: + return "RANGE"; + case 595: + return "READ"; + case 596: + return "REAL"; + case 597: + return "REASSIGN"; + case 598: + return "RECHECK"; + case 599: + return "RECURSIVE"; + case 600: + return "REF_P"; + case 601: + return "REFERENCES"; + case 602: + return "REFERENCING"; + case 603: + return "REFRESH"; + case 604: + return "REINDEX"; + case 605: + return "RELATIVE_P"; + case 606: + return "RELEASE"; + case 607: + return "RENAME"; + case 608: + return "REPEATABLE"; + case 609: + return "REPLACE"; + case 610: + return "REPLICA"; + case 611: + return "RESET"; + case 612: + return "RESTART"; + case 613: + return "RESTRICT"; + case 614: + return "RETURN"; + case 615: + return "RETURNING"; + case 616: + return "RETURNS"; + case 617: + return "REVOKE"; + case 618: + return "RIGHT"; + case 619: + return "ROLE"; + case 620: + return "ROLLBACK"; + case 621: + return "ROLLUP"; + case 622: + return "ROUTINE"; + case 623: + return "ROUTINES"; + case 624: + return "ROW"; + case 625: + return "ROWS"; + case 626: + return "RULE"; + case 627: + return "SAVEPOINT"; + case 628: + return "SCALAR"; + case 629: + return "SCHEMA"; + case 630: + return "SCHEMAS"; + case 631: + return "SCROLL"; + case 632: + return "SEARCH"; + case 633: + return "SECOND_P"; + case 634: + return "SECURITY"; + case 635: + return "SELECT"; + case 636: + return "SEQUENCE"; + case 637: + return "SEQUENCES"; + case 638: + return "SERIALIZABLE"; + case 639: + return "SERVER"; + case 640: + return "SESSION"; + case 641: + return "SESSION_USER"; + case 642: + return "SET"; + case 643: + return "SETS"; + case 644: + return "SETOF"; + case 645: + return "SHARE"; + case 646: + return "SHOW"; + case 647: + return "SIMILAR"; + case 648: + return "SIMPLE"; + case 649: + return "SKIP"; + case 650: + return "SMALLINT"; + case 651: + return "SNAPSHOT"; + case 652: + return "SOME"; + case 653: + return "SQL_P"; + case 654: + return "STABLE"; + case 655: + return "STANDALONE_P"; + case 656: + return "START"; + case 657: + return "STATEMENT"; + case 658: + return "STATISTICS"; + case 659: + return "STDIN"; + case 660: + return "STDOUT"; + case 661: + return "STORAGE"; + case 662: + return "STORED"; + case 663: + return "STRICT_P"; + case 664: + return "STRIP_P"; + case 665: + return "SUBSCRIPTION"; + case 666: + return "SUBSTRING"; + case 667: + return "SUPPORT"; + case 668: + return "SYMMETRIC"; + case 669: + return "SYSID"; + case 670: + return "SYSTEM_P"; + case 671: + return "SYSTEM_USER"; + case 672: + return "TABLE"; + case 673: + return "TABLES"; + case 674: + return "TABLESAMPLE"; + case 675: + return "TABLESPACE"; + case 676: + return "TEMP"; + case 677: + return "TEMPLATE"; + case 678: + return "TEMPORARY"; + case 679: + return "TEXT_P"; + case 680: + return "THEN"; + case 681: + return "TIES"; + case 682: + return "TIME"; + case 683: + return "TIMESTAMP"; + case 684: + return "TO"; + case 685: + return "TRAILING"; + case 686: + return "TRANSACTION"; + case 687: + return "TRANSFORM"; + case 688: + return "TREAT"; + case 689: + return "TRIGGER"; + case 690: + return "TRIM"; + case 691: + return "TRUE_P"; + case 692: + return "TRUNCATE"; + case 693: + return "TRUSTED"; + case 694: + return "TYPE_P"; + case 695: + return "TYPES_P"; + case 696: + return "UESCAPE"; + case 697: + return "UNBOUNDED"; + case 698: + return "UNCOMMITTED"; + case 699: + return "UNENCRYPTED"; + case 700: + return "UNION"; + case 701: + return "UNIQUE"; + case 702: + return "UNKNOWN"; + case 703: + return "UNLISTEN"; + case 704: + return "UNLOGGED"; + case 705: + return "UNTIL"; + case 706: + return "UPDATE"; + case 707: + return "USER"; + case 708: + return "USING"; + case 709: + return "VACUUM"; + case 710: + return "VALID"; + case 711: + return "VALIDATE"; + case 712: + return "VALIDATOR"; + case 713: + return "VALUE_P"; + case 714: + return "VALUES"; + case 715: + return "VARCHAR"; + case 716: + return "VARIADIC"; + case 717: + return "VARYING"; + case 718: + return "VERBOSE"; + case 719: + return "VERSION_P"; + case 720: + return "VIEW"; + case 721: + return "VIEWS"; + case 722: + return "VOLATILE"; + case 723: + return "WHEN"; + case 724: + return "WHERE"; + case 725: + return "WHITESPACE_P"; + case 726: + return "WINDOW"; + case 727: + return "WITH"; + case 728: + return "WITHIN"; + case 729: + return "WITHOUT"; + case 730: + return "WORK"; + case 731: + return "WRAPPER"; + case 732: + return "WRITE"; + case 733: + return "XML_P"; + case 734: + return "XMLATTRIBUTES"; + case 735: + return "XMLCONCAT"; + case 736: + return "XMLELEMENT"; + case 737: + return "XMLEXISTS"; + case 738: + return "XMLFOREST"; + case 739: + return "XMLNAMESPACES"; + case 740: + return "XMLPARSE"; + case 741: + return "XMLPI"; + case 742: + return "XMLROOT"; + case 743: + return "XMLSERIALIZE"; + case 744: + return "XMLTABLE"; + case 745: + return "YEAR_P"; + case 746: + return "YES_P"; + case 747: + return "ZONE"; + case 748: + return "FORMAT_LA"; + case 749: + return "NOT_LA"; + case 750: + return "NULLS_LA"; + case 751: + return "WITH_LA"; + case 752: + return "WITHOUT_LA"; + case 753: + return "MODE_TYPE_NAME"; + case 754: + return "MODE_PLPGSQL_EXPR"; + case 755: + return "MODE_PLPGSQL_ASSIGN1"; + case 756: + return "MODE_PLPGSQL_ASSIGN2"; + case 757: + return "MODE_PLPGSQL_ASSIGN3"; + case 758: + return "UMINUS"; + default: + throw new Error("Key not recognized in enum Token"); + } + } + default: + throw new Error("Enum type not recognized"); + } +}; \ No newline at end of file diff --git a/packages/parser/__tests__/parse.test.ts b/packages/parser/__tests__/parse.test.ts index 9a800fa..5962aaf 100644 --- a/packages/parser/__tests__/parse.test.ts +++ b/packages/parser/__tests__/parse.test.ts @@ -15,13 +15,10 @@ const protoParseOptionsDefaults = { preferTrailingComment: false }; -// https://raw.githubusercontent.com/pganalyze/libpg_query/15-latest/protobuf/pg_query.proto +// https://raw.githubusercontent.com/pganalyze/libpg_query/16-latest/protobuf/pg_query.proto const testProtoFile = resolve(join(__dirname, '../../../__fixtures__/proto/16-latest.proto')); -const outProtoFile = resolve(join(__dirname, '../../../__fixtures__/proto/16-latest.json')); -const outTSFile = resolve(join(__dirname, '../../../__fixtures__/proto/16-latest.ts')); -const out2StrJSONFile = resolve(join(__dirname, '../../../__fixtures__/proto/16-latest.2str.json')); -const out2IntJSONFile = resolve(join(__dirname, '../../../__fixtures__/proto/16-latest.2int.json')); -const outEnumFuncFile = resolve(join(__dirname, '../../../__fixtures__/proto/16-latest.enumUtils.ts')); + +const outputDir = resolve(join(__dirname, '../../../__fixtures__/proto', 'output')); export const parseProtoFile = (filepath, options?: ParseProtoOptions) => { return parseProto(readFileSync(filepath, 'utf-8'), options); @@ -34,16 +31,8 @@ export const parseProto = (content, options?: ParseProtoOptions) => { return parse(content, options); }; -it('works', () => { +it('convert protos to typescript', () => { const ast = parseProtoFile(testProtoFile); -// console.log(JSON.stringify(ast, null, 2)); - - const store = new ProtoStore(ast.root); -// console.log(store.print()); - -// writeFileSync(outProtoFile, JSON.stringify(ast, null, 2)); - writeFileSync(outTSFile, store.print()); - writeFileSync(out2IntJSONFile, JSON.stringify(store.printEnum2IntJSON(), null, 2)); - writeFileSync(out2StrJSONFile, JSON.stringify(store.printEnum2StrJSON(), null, 2)); - writeFileSync(outEnumFuncFile, store.printEnumsFn()); + const store = new ProtoStore(ast.root, outputDir); + store.write(); }); \ No newline at end of file diff --git a/packages/parser/src/store.ts b/packages/parser/src/store.ts index 593e6bd..4964c15 100644 --- a/packages/parser/src/store.ts +++ b/packages/parser/src/store.ts @@ -1,89 +1,85 @@ -import { Service, Type, Field, Enum, Root, Namespace, ReflectionObject } from '@launchql/protobufjs'; +import { Service, Type, Field, Enum, Namespace, ReflectionObject } from '@launchql/protobufjs'; import { generateTSEnums, generateTSInterfaces, generateTSEnumFunction } from './ast'; -import { generateEnum2IntJSON, generateEnum2StrJSON } from './json'; - -interface IProtoStore { - root: ReflectionObject; - - services: Service[]; - types: Type[]; - fields: Field[]; - enums: Enum[]; - namespaces: Namespace[]; - - _parse(node: ReflectionObject): void; -} +import { generateEnum2IntJSON, generateEnum2StrJSON } from './json'; +import { sync as mkdirp } from 'mkdirp'; +import { writeFileSync } from 'fs'; const cloneAndNameNode = (node: ReflectionObject, name: string) => { - const clone = JSON.parse(JSON.stringify(node)); - return { - name, - ...clone - } + const clone = JSON.parse(JSON.stringify(node)); + return { + name, + ...clone + } +} +interface IProtoStore { + outputDir: string; + root: ReflectionObject; + services: Service[]; + types: Type[]; + fields: Field[]; + enums: Enum[]; + namespaces: Namespace[]; + + _parse(node: ReflectionObject): void; } - export class ProtoStore implements IProtoStore { - root: ReflectionObject; - - services: Service[]; - types: Type[]; - fields: Field[]; - enums: Enum[]; - namespaces: Namespace[]; - - constructor(root: ReflectionObject) { - this.root = root; - this.services = []; - this.types = []; - this.fields = []; - this.enums = []; - this.namespaces = []; - - this._parse(this.root); - } - - _parse(node: ReflectionObject, name: string = '') { - if (node instanceof Service) { - this.services.push(cloneAndNameNode(node, name)); - } else if (node instanceof Type) { - this.types.push(cloneAndNameNode(node, name)); - node.fieldsArray.forEach(field => this.fields.push(field)); - } else if (node instanceof Enum) { - this.enums.push(cloneAndNameNode(node, name)); - } - - if (node instanceof Namespace) { - this.namespaces.push(node); - Object.entries(node.nested || {}).forEach(([key, child]) => { - this._parse(child, key); - }); - } - } - - print() { - return this.printEnums() + '\n' + - this.printInterfaces() - } - - printEnum2IntJSON() { - return generateEnum2IntJSON(this.enums); - } - - printEnum2StrJSON() { - return generateEnum2StrJSON(this.enums); - } - - printInterfaces() { - return generateTSInterfaces(this.types); - } - - printEnums() { - return generateTSEnums(this.enums); + outputDir: string; + root: ReflectionObject; + services: Service[]; + types: Type[]; + fields: Field[]; + enums: Enum[]; + namespaces: Namespace[]; + + constructor( + root: ReflectionObject, + outDir: string = `${process.cwd()}/out` + ) { + this.outputDir = outDir; + this.root = root; + this.services = []; + this.types = []; + this.fields = []; + this.enums = []; + this.namespaces = []; + + this._parse(this.root); + } + + _parse(node: ReflectionObject, name: string = '') { + if (node instanceof Service) { + this.services.push(cloneAndNameNode(node, name)); + } else if (node instanceof Type) { + this.types.push(cloneAndNameNode(node, name)); + node.fieldsArray.forEach(field => this.fields.push(field)); + } else if (node instanceof Enum) { + this.enums.push(cloneAndNameNode(node, name)); } - printEnumsFn() { - return generateTSEnumFunction(this.enums); + if (node instanceof Namespace) { + this.namespaces.push(node); + Object.entries(node.nested || {}).forEach(([key, child]) => { + this._parse(child, key); + }); } + } + + write() { + // Ensure the output directory exists + mkdirp(this.outputDir); + + const enums2int = generateEnum2IntJSON(this.enums); + const enums2str = generateEnum2StrJSON(this.enums); + const typesTS = generateTSInterfaces(this.types); + const enumsTS = generateTSEnums(this.enums); + const utilsTS = generateTSEnumFunction(this.enums); + + // Write the files + writeFileSync(`${this.outputDir}/enums2int.json`, JSON.stringify(enums2int, null, 2)); + writeFileSync(`${this.outputDir}/enums2str.json`, JSON.stringify(enums2str, null, 2)); + writeFileSync(`${this.outputDir}/types.ts`, `${enumsTS}\n${typesTS}`); + writeFileSync(`${this.outputDir}/utils.ts`, utilsTS); + } }