mirror of
https://git.postgresql.org/git/postgresql.git
synced 2025-02-23 19:39:53 +08:00
Use C99 designated initializers for some structs
These are just a few particularly egregious cases that were hard to read and write, and error prone because of many similar adjacent types. Discussion: https://www.postgresql.org/message-id/flat/4c9f01be-9245-2148-b569-61a8562ef190%402ndquadrant.com
This commit is contained in:
parent
75f7855369
commit
98afa68d93
@ -199,27 +199,8 @@ typedef TransactionStateData *TransactionState;
|
||||
* transaction at all, or when in a top-level transaction.
|
||||
*/
|
||||
static TransactionStateData TopTransactionStateData = {
|
||||
0, /* transaction id */
|
||||
0, /* subtransaction id */
|
||||
NULL, /* savepoint name */
|
||||
0, /* savepoint level */
|
||||
TRANS_DEFAULT, /* transaction state */
|
||||
TBLOCK_DEFAULT, /* transaction block state from the client
|
||||
* perspective */
|
||||
0, /* transaction nesting depth */
|
||||
0, /* GUC context nesting depth */
|
||||
NULL, /* cur transaction context */
|
||||
NULL, /* cur transaction resource owner */
|
||||
NULL, /* subcommitted child Xids */
|
||||
0, /* # of subcommitted child Xids */
|
||||
0, /* allocated size of childXids[] */
|
||||
InvalidOid, /* previous CurrentUserId setting */
|
||||
0, /* previous SecurityRestrictionContext */
|
||||
false, /* entry-time xact r/o state */
|
||||
false, /* startedInRecovery */
|
||||
false, /* didLogXid */
|
||||
0, /* parallelModeLevel */
|
||||
NULL /* link to parent state block */
|
||||
.state = TRANS_DEFAULT,
|
||||
.blockState = TBLOCK_DEFAULT,
|
||||
};
|
||||
|
||||
/*
|
||||
|
@ -145,39 +145,87 @@ static List *insert_ordered_unique_oid(List *list, Oid datum);
|
||||
*/
|
||||
|
||||
static FormData_pg_attribute a1 = {
|
||||
0, {"ctid"}, TIDOID, 0, sizeof(ItemPointerData),
|
||||
SelfItemPointerAttributeNumber, 0, -1, -1,
|
||||
false, 'p', 's', true, false, false, '\0', false, true, 0
|
||||
.attname = {"ctid"},
|
||||
.atttypid = TIDOID,
|
||||
.attlen = sizeof(ItemPointerData),
|
||||
.attnum = SelfItemPointerAttributeNumber,
|
||||
.attcacheoff = -1,
|
||||
.atttypmod = -1,
|
||||
.attbyval = false,
|
||||
.attstorage = 'p',
|
||||
.attalign = 's',
|
||||
.attnotnull = true,
|
||||
.attislocal = true,
|
||||
};
|
||||
|
||||
static FormData_pg_attribute a2 = {
|
||||
0, {"oid"}, OIDOID, 0, sizeof(Oid),
|
||||
ObjectIdAttributeNumber, 0, -1, -1,
|
||||
true, 'p', 'i', true, false, false, '\0', false, true, 0
|
||||
.attname = {"oid"},
|
||||
.atttypid = OIDOID,
|
||||
.attlen = sizeof(Oid),
|
||||
.attnum = ObjectIdAttributeNumber,
|
||||
.attcacheoff = -1,
|
||||
.atttypmod = -1,
|
||||
.attbyval = true,
|
||||
.attstorage = 'p',
|
||||
.attalign = 'i',
|
||||
.attnotnull = true,
|
||||
.attislocal = true,
|
||||
};
|
||||
|
||||
static FormData_pg_attribute a3 = {
|
||||
0, {"xmin"}, XIDOID, 0, sizeof(TransactionId),
|
||||
MinTransactionIdAttributeNumber, 0, -1, -1,
|
||||
true, 'p', 'i', true, false, false, '\0', false, true, 0
|
||||
.attname = {"xmin"},
|
||||
.atttypid = XIDOID,
|
||||
.attlen = sizeof(TransactionId),
|
||||
.attnum = MinTransactionIdAttributeNumber,
|
||||
.attcacheoff = -1,
|
||||
.atttypmod = -1,
|
||||
.attbyval = true,
|
||||
.attstorage = 'p',
|
||||
.attalign = 'i',
|
||||
.attnotnull = true,
|
||||
.attislocal = true,
|
||||
};
|
||||
|
||||
static FormData_pg_attribute a4 = {
|
||||
0, {"cmin"}, CIDOID, 0, sizeof(CommandId),
|
||||
MinCommandIdAttributeNumber, 0, -1, -1,
|
||||
true, 'p', 'i', true, false, false, '\0', false, true, 0
|
||||
.attname = {"cmin"},
|
||||
.atttypid = CIDOID,
|
||||
.attlen = sizeof(CommandId),
|
||||
.attnum = MinCommandIdAttributeNumber,
|
||||
.attcacheoff = -1,
|
||||
.atttypmod = -1,
|
||||
.attbyval = true,
|
||||
.attstorage = 'p',
|
||||
.attalign = 'i',
|
||||
.attnotnull = true,
|
||||
.attislocal = true,
|
||||
};
|
||||
|
||||
static FormData_pg_attribute a5 = {
|
||||
0, {"xmax"}, XIDOID, 0, sizeof(TransactionId),
|
||||
MaxTransactionIdAttributeNumber, 0, -1, -1,
|
||||
true, 'p', 'i', true, false, false, '\0', false, true, 0
|
||||
.attname = {"xmax"},
|
||||
.atttypid = XIDOID,
|
||||
.attlen = sizeof(TransactionId),
|
||||
.attnum = MaxTransactionIdAttributeNumber,
|
||||
.attcacheoff = -1,
|
||||
.atttypmod = -1,
|
||||
.attbyval = true,
|
||||
.attstorage = 'p',
|
||||
.attalign = 'i',
|
||||
.attnotnull = true,
|
||||
.attislocal = true,
|
||||
};
|
||||
|
||||
static FormData_pg_attribute a6 = {
|
||||
0, {"cmax"}, CIDOID, 0, sizeof(CommandId),
|
||||
MaxCommandIdAttributeNumber, 0, -1, -1,
|
||||
true, 'p', 'i', true, false, false, '\0', false, true, 0
|
||||
.attname = {"cmax"},
|
||||
.atttypid = CIDOID,
|
||||
.attlen = sizeof(CommandId),
|
||||
.attnum = MaxCommandIdAttributeNumber,
|
||||
.attcacheoff = -1,
|
||||
.atttypmod = -1,
|
||||
.attbyval = true,
|
||||
.attstorage = 'p',
|
||||
.attalign = 'i',
|
||||
.attnotnull = true,
|
||||
.attislocal = true,
|
||||
};
|
||||
|
||||
/*
|
||||
@ -187,9 +235,17 @@ static FormData_pg_attribute a6 = {
|
||||
* used in SQL.
|
||||
*/
|
||||
static FormData_pg_attribute a7 = {
|
||||
0, {"tableoid"}, OIDOID, 0, sizeof(Oid),
|
||||
TableOidAttributeNumber, 0, -1, -1,
|
||||
true, 'p', 'i', true, false, false, '\0', false, true, 0
|
||||
.attname = {"tableoid"},
|
||||
.atttypid = OIDOID,
|
||||
.attlen = sizeof(Oid),
|
||||
.attnum = TableOidAttributeNumber,
|
||||
.attcacheoff = -1,
|
||||
.atttypmod = -1,
|
||||
.attbyval = true,
|
||||
.attstorage = 'p',
|
||||
.attalign = 'i',
|
||||
.attnotnull = true,
|
||||
.attislocal = true,
|
||||
};
|
||||
|
||||
static const Form_pg_attribute SysAtt[] = {&a1, &a2, &a3, &a4, &a5, &a6, &a7};
|
||||
|
@ -391,418 +391,222 @@ do { \
|
||||
|
||||
static const SchemaQuery Query_for_list_of_aggregates[] = {
|
||||
{
|
||||
/* min_server_version */
|
||||
110000,
|
||||
/* catname */
|
||||
"pg_catalog.pg_proc p",
|
||||
/* selcondition */
|
||||
"p.prokind = 'a'",
|
||||
/* viscondition */
|
||||
"pg_catalog.pg_function_is_visible(p.oid)",
|
||||
/* namespace */
|
||||
"p.pronamespace",
|
||||
/* result */
|
||||
"pg_catalog.quote_ident(p.proname)",
|
||||
/* qualresult */
|
||||
NULL
|
||||
.min_server_version = 110000,
|
||||
.catname = "pg_catalog.pg_proc p",
|
||||
.selcondition = "p.prokind = 'a'",
|
||||
.viscondition = "pg_catalog.pg_function_is_visible(p.oid)",
|
||||
.namespace = "p.pronamespace",
|
||||
.result = "pg_catalog.quote_ident(p.proname)",
|
||||
},
|
||||
{
|
||||
/* min_server_version */
|
||||
0,
|
||||
/* catname */
|
||||
"pg_catalog.pg_proc p",
|
||||
/* selcondition */
|
||||
"p.proisagg",
|
||||
/* viscondition */
|
||||
"pg_catalog.pg_function_is_visible(p.oid)",
|
||||
/* namespace */
|
||||
"p.pronamespace",
|
||||
/* result */
|
||||
"pg_catalog.quote_ident(p.proname)",
|
||||
/* qualresult */
|
||||
NULL
|
||||
.catname = "pg_catalog.pg_proc p",
|
||||
.selcondition = "p.proisagg",
|
||||
.viscondition = "pg_catalog.pg_function_is_visible(p.oid)",
|
||||
.namespace = "p.pronamespace",
|
||||
.result = "pg_catalog.quote_ident(p.proname)",
|
||||
}
|
||||
};
|
||||
|
||||
static const SchemaQuery Query_for_list_of_datatypes = {
|
||||
/* min_server_version */
|
||||
0,
|
||||
/* catname */
|
||||
"pg_catalog.pg_type t",
|
||||
.catname = "pg_catalog.pg_type t",
|
||||
/* selcondition --- ignore table rowtypes and array types */
|
||||
"(t.typrelid = 0 "
|
||||
.selcondition = "(t.typrelid = 0 "
|
||||
" OR (SELECT c.relkind = " CppAsString2(RELKIND_COMPOSITE_TYPE)
|
||||
" FROM pg_catalog.pg_class c WHERE c.oid = t.typrelid)) "
|
||||
"AND t.typname !~ '^_'",
|
||||
/* viscondition */
|
||||
"pg_catalog.pg_type_is_visible(t.oid)",
|
||||
/* namespace */
|
||||
"t.typnamespace",
|
||||
/* result */
|
||||
"pg_catalog.format_type(t.oid, NULL)",
|
||||
/* qualresult */
|
||||
"pg_catalog.quote_ident(t.typname)"
|
||||
.viscondition = "pg_catalog.pg_type_is_visible(t.oid)",
|
||||
.namespace = "t.typnamespace",
|
||||
.result = "pg_catalog.format_type(t.oid, NULL)",
|
||||
.qualresult = "pg_catalog.quote_ident(t.typname)",
|
||||
};
|
||||
|
||||
static const SchemaQuery Query_for_list_of_domains = {
|
||||
/* min_server_version */
|
||||
0,
|
||||
/* catname */
|
||||
"pg_catalog.pg_type t",
|
||||
/* selcondition */
|
||||
"t.typtype = 'd'",
|
||||
/* viscondition */
|
||||
"pg_catalog.pg_type_is_visible(t.oid)",
|
||||
/* namespace */
|
||||
"t.typnamespace",
|
||||
/* result */
|
||||
"pg_catalog.quote_ident(t.typname)",
|
||||
/* qualresult */
|
||||
NULL
|
||||
.catname = "pg_catalog.pg_type t",
|
||||
.selcondition = "t.typtype = 'd'",
|
||||
.viscondition = "pg_catalog.pg_type_is_visible(t.oid)",
|
||||
.namespace = "t.typnamespace",
|
||||
.result = "pg_catalog.quote_ident(t.typname)",
|
||||
};
|
||||
|
||||
/* Note: this intentionally accepts aggregates as well as plain functions */
|
||||
static const SchemaQuery Query_for_list_of_functions[] = {
|
||||
{
|
||||
/* min_server_version */
|
||||
110000,
|
||||
/* catname */
|
||||
"pg_catalog.pg_proc p",
|
||||
/* selcondition */
|
||||
"p.prokind != 'p'",
|
||||
/* viscondition */
|
||||
"pg_catalog.pg_function_is_visible(p.oid)",
|
||||
/* namespace */
|
||||
"p.pronamespace",
|
||||
/* result */
|
||||
"pg_catalog.quote_ident(p.proname)",
|
||||
/* qualresult */
|
||||
NULL
|
||||
.min_server_version = 110000,
|
||||
.catname = "pg_catalog.pg_proc p",
|
||||
.selcondition = "p.prokind != 'p'",
|
||||
.viscondition = "pg_catalog.pg_function_is_visible(p.oid)",
|
||||
.namespace = "p.pronamespace",
|
||||
.result = "pg_catalog.quote_ident(p.proname)",
|
||||
},
|
||||
{
|
||||
/* min_server_version */
|
||||
0,
|
||||
/* catname */
|
||||
"pg_catalog.pg_proc p",
|
||||
/* selcondition */
|
||||
NULL,
|
||||
/* viscondition */
|
||||
"pg_catalog.pg_function_is_visible(p.oid)",
|
||||
/* namespace */
|
||||
"p.pronamespace",
|
||||
/* result */
|
||||
"pg_catalog.quote_ident(p.proname)",
|
||||
/* qualresult */
|
||||
NULL
|
||||
.catname = "pg_catalog.pg_proc p",
|
||||
.viscondition = "pg_catalog.pg_function_is_visible(p.oid)",
|
||||
.namespace = "p.pronamespace",
|
||||
.result = "pg_catalog.quote_ident(p.proname)",
|
||||
}
|
||||
};
|
||||
|
||||
static const SchemaQuery Query_for_list_of_indexes = {
|
||||
/* min_server_version */
|
||||
0,
|
||||
/* catname */
|
||||
"pg_catalog.pg_class c",
|
||||
/* selcondition */
|
||||
.catname = "pg_catalog.pg_class c",
|
||||
.selcondition =
|
||||
"c.relkind IN (" CppAsString2(RELKIND_INDEX) ", "
|
||||
CppAsString2(RELKIND_PARTITIONED_INDEX) ")",
|
||||
/* viscondition */
|
||||
"pg_catalog.pg_table_is_visible(c.oid)",
|
||||
/* namespace */
|
||||
"c.relnamespace",
|
||||
/* result */
|
||||
"pg_catalog.quote_ident(c.relname)",
|
||||
/* qualresult */
|
||||
NULL
|
||||
.viscondition = "pg_catalog.pg_table_is_visible(c.oid)",
|
||||
.namespace = "c.relnamespace",
|
||||
.result = "pg_catalog.quote_ident(c.relname)",
|
||||
};
|
||||
|
||||
static const SchemaQuery Query_for_list_of_procedures[] = {
|
||||
{
|
||||
/* min_server_version */
|
||||
110000,
|
||||
/* catname */
|
||||
"pg_catalog.pg_proc p",
|
||||
/* selcondition */
|
||||
"p.prokind = 'p'",
|
||||
/* viscondition */
|
||||
"pg_catalog.pg_function_is_visible(p.oid)",
|
||||
/* namespace */
|
||||
"p.pronamespace",
|
||||
/* result */
|
||||
"pg_catalog.quote_ident(p.proname)",
|
||||
/* qualresult */
|
||||
NULL
|
||||
.min_server_version = 110000,
|
||||
.catname = "pg_catalog.pg_proc p",
|
||||
.selcondition = "p.prokind = 'p'",
|
||||
.viscondition = "pg_catalog.pg_function_is_visible(p.oid)",
|
||||
.namespace = "p.pronamespace",
|
||||
.result = "pg_catalog.quote_ident(p.proname)",
|
||||
},
|
||||
{0, NULL}
|
||||
{
|
||||
/* not supported in older versions */
|
||||
.catname = NULL,
|
||||
}
|
||||
};
|
||||
|
||||
static const SchemaQuery Query_for_list_of_routines = {
|
||||
/* min_server_version */
|
||||
0,
|
||||
/* catname */
|
||||
"pg_catalog.pg_proc p",
|
||||
/* selcondition */
|
||||
NULL,
|
||||
/* viscondition */
|
||||
"pg_catalog.pg_function_is_visible(p.oid)",
|
||||
/* namespace */
|
||||
"p.pronamespace",
|
||||
/* result */
|
||||
"pg_catalog.quote_ident(p.proname)",
|
||||
/* qualresult */
|
||||
NULL
|
||||
.catname = "pg_catalog.pg_proc p",
|
||||
.viscondition = "pg_catalog.pg_function_is_visible(p.oid)",
|
||||
.namespace = "p.pronamespace",
|
||||
.result = "pg_catalog.quote_ident(p.proname)",
|
||||
};
|
||||
|
||||
static const SchemaQuery Query_for_list_of_sequences = {
|
||||
/* min_server_version */
|
||||
0,
|
||||
/* catname */
|
||||
"pg_catalog.pg_class c",
|
||||
/* selcondition */
|
||||
"c.relkind IN (" CppAsString2(RELKIND_SEQUENCE) ")",
|
||||
/* viscondition */
|
||||
"pg_catalog.pg_table_is_visible(c.oid)",
|
||||
/* namespace */
|
||||
"c.relnamespace",
|
||||
/* result */
|
||||
"pg_catalog.quote_ident(c.relname)",
|
||||
/* qualresult */
|
||||
NULL
|
||||
.catname = "pg_catalog.pg_class c",
|
||||
.selcondition = "c.relkind IN (" CppAsString2(RELKIND_SEQUENCE) ")",
|
||||
.viscondition = "pg_catalog.pg_table_is_visible(c.oid)",
|
||||
.namespace = "c.relnamespace",
|
||||
.result = "pg_catalog.quote_ident(c.relname)",
|
||||
};
|
||||
|
||||
static const SchemaQuery Query_for_list_of_foreign_tables = {
|
||||
/* min_server_version */
|
||||
0,
|
||||
/* catname */
|
||||
"pg_catalog.pg_class c",
|
||||
/* selcondition */
|
||||
"c.relkind IN (" CppAsString2(RELKIND_FOREIGN_TABLE) ")",
|
||||
/* viscondition */
|
||||
"pg_catalog.pg_table_is_visible(c.oid)",
|
||||
/* namespace */
|
||||
"c.relnamespace",
|
||||
/* result */
|
||||
"pg_catalog.quote_ident(c.relname)",
|
||||
/* qualresult */
|
||||
NULL
|
||||
.catname = "pg_catalog.pg_class c",
|
||||
.selcondition = "c.relkind IN (" CppAsString2(RELKIND_FOREIGN_TABLE) ")",
|
||||
.viscondition = "pg_catalog.pg_table_is_visible(c.oid)",
|
||||
.namespace = "c.relnamespace",
|
||||
.result = "pg_catalog.quote_ident(c.relname)",
|
||||
};
|
||||
|
||||
static const SchemaQuery Query_for_list_of_tables = {
|
||||
/* min_server_version */
|
||||
0,
|
||||
/* catname */
|
||||
"pg_catalog.pg_class c",
|
||||
/* selcondition */
|
||||
.catname = "pg_catalog.pg_class c",
|
||||
.selcondition =
|
||||
"c.relkind IN (" CppAsString2(RELKIND_RELATION) ", "
|
||||
CppAsString2(RELKIND_PARTITIONED_TABLE) ")",
|
||||
/* viscondition */
|
||||
"pg_catalog.pg_table_is_visible(c.oid)",
|
||||
/* namespace */
|
||||
"c.relnamespace",
|
||||
/* result */
|
||||
"pg_catalog.quote_ident(c.relname)",
|
||||
/* qualresult */
|
||||
NULL
|
||||
.viscondition = "pg_catalog.pg_table_is_visible(c.oid)",
|
||||
.namespace = "c.relnamespace",
|
||||
.result = "pg_catalog.quote_ident(c.relname)",
|
||||
};
|
||||
|
||||
static const SchemaQuery Query_for_list_of_partitioned_tables = {
|
||||
/* min_server_version */
|
||||
0,
|
||||
/* catname */
|
||||
"pg_catalog.pg_class c",
|
||||
/* selcondition */
|
||||
"c.relkind IN (" CppAsString2(RELKIND_PARTITIONED_TABLE) ")",
|
||||
/* viscondition */
|
||||
"pg_catalog.pg_table_is_visible(c.oid)",
|
||||
/* namespace */
|
||||
"c.relnamespace",
|
||||
/* result */
|
||||
"pg_catalog.quote_ident(c.relname)",
|
||||
/* qualresult */
|
||||
NULL
|
||||
.catname = "pg_catalog.pg_class c",
|
||||
.selcondition = "c.relkind IN (" CppAsString2(RELKIND_PARTITIONED_TABLE) ")",
|
||||
.viscondition = "pg_catalog.pg_table_is_visible(c.oid)",
|
||||
.namespace = "c.relnamespace",
|
||||
.result = "pg_catalog.quote_ident(c.relname)",
|
||||
};
|
||||
|
||||
static const SchemaQuery Query_for_list_of_constraints_with_schema = {
|
||||
/* min_server_version */
|
||||
0,
|
||||
/* catname */
|
||||
"pg_catalog.pg_constraint c",
|
||||
/* selcondition */
|
||||
"c.conrelid <> 0",
|
||||
/* viscondition */
|
||||
"true", /* there is no pg_constraint_is_visible */
|
||||
/* namespace */
|
||||
"c.connamespace",
|
||||
/* result */
|
||||
"pg_catalog.quote_ident(c.conname)",
|
||||
/* qualresult */
|
||||
NULL
|
||||
.catname = "pg_catalog.pg_constraint c",
|
||||
.selcondition = "c.conrelid <> 0",
|
||||
.viscondition = "true", /* there is no pg_constraint_is_visible */
|
||||
.namespace = "c.connamespace",
|
||||
.result = "pg_catalog.quote_ident(c.conname)",
|
||||
};
|
||||
|
||||
/* Relations supporting INSERT, UPDATE or DELETE */
|
||||
static const SchemaQuery Query_for_list_of_updatables = {
|
||||
/* min_server_version */
|
||||
0,
|
||||
/* catname */
|
||||
"pg_catalog.pg_class c",
|
||||
/* selcondition */
|
||||
.catname = "pg_catalog.pg_class c",
|
||||
.selcondition =
|
||||
"c.relkind IN (" CppAsString2(RELKIND_RELATION) ", "
|
||||
CppAsString2(RELKIND_FOREIGN_TABLE) ", "
|
||||
CppAsString2(RELKIND_VIEW) ", "
|
||||
CppAsString2(RELKIND_PARTITIONED_TABLE) ")",
|
||||
/* viscondition */
|
||||
"pg_catalog.pg_table_is_visible(c.oid)",
|
||||
/* namespace */
|
||||
"c.relnamespace",
|
||||
/* result */
|
||||
"pg_catalog.quote_ident(c.relname)",
|
||||
/* qualresult */
|
||||
NULL
|
||||
.viscondition = "pg_catalog.pg_table_is_visible(c.oid)",
|
||||
.namespace = "c.relnamespace",
|
||||
.result = "pg_catalog.quote_ident(c.relname)",
|
||||
};
|
||||
|
||||
static const SchemaQuery Query_for_list_of_relations = {
|
||||
/* min_server_version */
|
||||
0,
|
||||
/* catname */
|
||||
"pg_catalog.pg_class c",
|
||||
/* selcondition */
|
||||
NULL,
|
||||
/* viscondition */
|
||||
"pg_catalog.pg_table_is_visible(c.oid)",
|
||||
/* namespace */
|
||||
"c.relnamespace",
|
||||
/* result */
|
||||
"pg_catalog.quote_ident(c.relname)",
|
||||
/* qualresult */
|
||||
NULL
|
||||
.catname = "pg_catalog.pg_class c",
|
||||
.viscondition = "pg_catalog.pg_table_is_visible(c.oid)",
|
||||
.namespace = "c.relnamespace",
|
||||
.result = "pg_catalog.quote_ident(c.relname)",
|
||||
};
|
||||
|
||||
static const SchemaQuery Query_for_list_of_tsvmf = {
|
||||
/* min_server_version */
|
||||
0,
|
||||
/* catname */
|
||||
"pg_catalog.pg_class c",
|
||||
/* selcondition */
|
||||
.catname = "pg_catalog.pg_class c",
|
||||
.selcondition =
|
||||
"c.relkind IN (" CppAsString2(RELKIND_RELATION) ", "
|
||||
CppAsString2(RELKIND_SEQUENCE) ", "
|
||||
CppAsString2(RELKIND_VIEW) ", "
|
||||
CppAsString2(RELKIND_MATVIEW) ", "
|
||||
CppAsString2(RELKIND_FOREIGN_TABLE) ", "
|
||||
CppAsString2(RELKIND_PARTITIONED_TABLE) ")",
|
||||
/* viscondition */
|
||||
"pg_catalog.pg_table_is_visible(c.oid)",
|
||||
/* namespace */
|
||||
"c.relnamespace",
|
||||
/* result */
|
||||
"pg_catalog.quote_ident(c.relname)",
|
||||
/* qualresult */
|
||||
NULL
|
||||
.viscondition = "pg_catalog.pg_table_is_visible(c.oid)",
|
||||
.namespace = "c.relnamespace",
|
||||
.result = "pg_catalog.quote_ident(c.relname)",
|
||||
};
|
||||
|
||||
static const SchemaQuery Query_for_list_of_tmf = {
|
||||
/* min_server_version */
|
||||
0,
|
||||
/* catname */
|
||||
"pg_catalog.pg_class c",
|
||||
/* selcondition */
|
||||
.catname = "pg_catalog.pg_class c",
|
||||
.selcondition =
|
||||
"c.relkind IN (" CppAsString2(RELKIND_RELATION) ", "
|
||||
CppAsString2(RELKIND_MATVIEW) ", "
|
||||
CppAsString2(RELKIND_FOREIGN_TABLE) ")",
|
||||
/* viscondition */
|
||||
"pg_catalog.pg_table_is_visible(c.oid)",
|
||||
/* namespace */
|
||||
"c.relnamespace",
|
||||
/* result */
|
||||
"pg_catalog.quote_ident(c.relname)",
|
||||
/* qualresult */
|
||||
NULL
|
||||
.viscondition = "pg_catalog.pg_table_is_visible(c.oid)",
|
||||
.namespace = "c.relnamespace",
|
||||
.result = "pg_catalog.quote_ident(c.relname)",
|
||||
};
|
||||
|
||||
static const SchemaQuery Query_for_list_of_tpm = {
|
||||
/* min_server_version */
|
||||
0,
|
||||
/* catname */
|
||||
"pg_catalog.pg_class c",
|
||||
/* selcondition */
|
||||
.catname = "pg_catalog.pg_class c",
|
||||
.selcondition =
|
||||
"c.relkind IN (" CppAsString2(RELKIND_RELATION) ", "
|
||||
CppAsString2(RELKIND_PARTITIONED_TABLE) ", "
|
||||
CppAsString2(RELKIND_MATVIEW) ")",
|
||||
/* viscondition */
|
||||
"pg_catalog.pg_table_is_visible(c.oid)",
|
||||
/* namespace */
|
||||
"c.relnamespace",
|
||||
/* result */
|
||||
"pg_catalog.quote_ident(c.relname)",
|
||||
/* qualresult */
|
||||
NULL
|
||||
.viscondition = "pg_catalog.pg_table_is_visible(c.oid)",
|
||||
.namespace = "c.relnamespace",
|
||||
.result = "pg_catalog.quote_ident(c.relname)",
|
||||
};
|
||||
|
||||
static const SchemaQuery Query_for_list_of_tm = {
|
||||
/* min_server_version */
|
||||
0,
|
||||
/* catname */
|
||||
"pg_catalog.pg_class c",
|
||||
/* selcondition */
|
||||
.catname = "pg_catalog.pg_class c",
|
||||
.selcondition =
|
||||
"c.relkind IN (" CppAsString2(RELKIND_RELATION) ", "
|
||||
CppAsString2(RELKIND_MATVIEW) ")",
|
||||
/* viscondition */
|
||||
"pg_catalog.pg_table_is_visible(c.oid)",
|
||||
/* namespace */
|
||||
"c.relnamespace",
|
||||
/* result */
|
||||
"pg_catalog.quote_ident(c.relname)",
|
||||
/* qualresult */
|
||||
NULL
|
||||
.viscondition = "pg_catalog.pg_table_is_visible(c.oid)",
|
||||
.namespace = "c.relnamespace",
|
||||
.result = "pg_catalog.quote_ident(c.relname)",
|
||||
};
|
||||
|
||||
static const SchemaQuery Query_for_list_of_views = {
|
||||
/* min_server_version */
|
||||
0,
|
||||
/* catname */
|
||||
"pg_catalog.pg_class c",
|
||||
/* selcondition */
|
||||
"c.relkind IN (" CppAsString2(RELKIND_VIEW) ")",
|
||||
/* viscondition */
|
||||
"pg_catalog.pg_table_is_visible(c.oid)",
|
||||
/* namespace */
|
||||
"c.relnamespace",
|
||||
/* result */
|
||||
"pg_catalog.quote_ident(c.relname)",
|
||||
/* qualresult */
|
||||
NULL
|
||||
.catname = "pg_catalog.pg_class c",
|
||||
.selcondition = "c.relkind IN (" CppAsString2(RELKIND_VIEW) ")",
|
||||
.viscondition = "pg_catalog.pg_table_is_visible(c.oid)",
|
||||
.namespace = "c.relnamespace",
|
||||
.result = "pg_catalog.quote_ident(c.relname)",
|
||||
};
|
||||
|
||||
static const SchemaQuery Query_for_list_of_matviews = {
|
||||
/* min_server_version */
|
||||
0,
|
||||
/* catname */
|
||||
"pg_catalog.pg_class c",
|
||||
/* selcondition */
|
||||
"c.relkind IN (" CppAsString2(RELKIND_MATVIEW) ")",
|
||||
/* viscondition */
|
||||
"pg_catalog.pg_table_is_visible(c.oid)",
|
||||
/* namespace */
|
||||
"c.relnamespace",
|
||||
/* result */
|
||||
"pg_catalog.quote_ident(c.relname)",
|
||||
/* qualresult */
|
||||
NULL
|
||||
.catname = "pg_catalog.pg_class c",
|
||||
.selcondition = "c.relkind IN (" CppAsString2(RELKIND_MATVIEW) ")",
|
||||
.viscondition = "pg_catalog.pg_table_is_visible(c.oid)",
|
||||
.namespace = "c.relnamespace",
|
||||
.result = "pg_catalog.quote_ident(c.relname)",
|
||||
};
|
||||
|
||||
static const SchemaQuery Query_for_list_of_statistics = {
|
||||
/* min_server_version */
|
||||
0,
|
||||
/* catname */
|
||||
"pg_catalog.pg_statistic_ext s",
|
||||
/* selcondition */
|
||||
NULL,
|
||||
/* viscondition */
|
||||
"pg_catalog.pg_statistics_obj_is_visible(s.oid)",
|
||||
/* namespace */
|
||||
"s.stxnamespace",
|
||||
/* result */
|
||||
"pg_catalog.quote_ident(s.stxname)",
|
||||
/* qualresult */
|
||||
NULL
|
||||
.catname = "pg_catalog.pg_statistic_ext s",
|
||||
.viscondition = "pg_catalog.pg_statistics_obj_is_visible(s.oid)",
|
||||
.namespace = "s.stxnamespace",
|
||||
.result = "pg_catalog.quote_ident(s.stxname)",
|
||||
};
|
||||
|
||||
|
||||
|
@ -43,37 +43,14 @@ static PyMethodDef PLy_cursor_methods[] = {
|
||||
|
||||
static PyTypeObject PLy_CursorType = {
|
||||
PyVarObject_HEAD_INIT(NULL, 0)
|
||||
"PLyCursor", /* tp_name */
|
||||
sizeof(PLyCursorObject), /* tp_size */
|
||||
0, /* tp_itemsize */
|
||||
|
||||
/*
|
||||
* methods
|
||||
*/
|
||||
PLy_cursor_dealloc, /* tp_dealloc */
|
||||
0, /* tp_print */
|
||||
0, /* tp_getattr */
|
||||
0, /* tp_setattr */
|
||||
0, /* tp_compare */
|
||||
0, /* tp_repr */
|
||||
0, /* tp_as_number */
|
||||
0, /* tp_as_sequence */
|
||||
0, /* tp_as_mapping */
|
||||
0, /* tp_hash */
|
||||
0, /* tp_call */
|
||||
0, /* tp_str */
|
||||
0, /* tp_getattro */
|
||||
0, /* tp_setattro */
|
||||
0, /* tp_as_buffer */
|
||||
Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE | Py_TPFLAGS_HAVE_ITER, /* tp_flags */
|
||||
PLy_cursor_doc, /* tp_doc */
|
||||
0, /* tp_traverse */
|
||||
0, /* tp_clear */
|
||||
0, /* tp_richcompare */
|
||||
0, /* tp_weaklistoffset */
|
||||
PyObject_SelfIter, /* tp_iter */
|
||||
PLy_cursor_iternext, /* tp_iternext */
|
||||
PLy_cursor_methods, /* tp_tpmethods */
|
||||
.tp_name = "PLyCursor",
|
||||
.tp_basicsize = sizeof(PLyCursorObject),
|
||||
.tp_dealloc = PLy_cursor_dealloc,
|
||||
.tp_flags = Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE | Py_TPFLAGS_HAVE_ITER,
|
||||
.tp_doc = PLy_cursor_doc,
|
||||
.tp_iter = PyObject_SelfIter,
|
||||
.tp_iternext = PLy_cursor_iternext,
|
||||
.tp_methods = PLy_cursor_methods,
|
||||
};
|
||||
|
||||
void
|
||||
|
@ -34,37 +34,12 @@ static PyMethodDef PLy_plan_methods[] = {
|
||||
|
||||
static PyTypeObject PLy_PlanType = {
|
||||
PyVarObject_HEAD_INIT(NULL, 0)
|
||||
"PLyPlan", /* tp_name */
|
||||
sizeof(PLyPlanObject), /* tp_size */
|
||||
0, /* tp_itemsize */
|
||||
|
||||
/*
|
||||
* methods
|
||||
*/
|
||||
PLy_plan_dealloc, /* tp_dealloc */
|
||||
0, /* tp_print */
|
||||
0, /* tp_getattr */
|
||||
0, /* tp_setattr */
|
||||
0, /* tp_compare */
|
||||
0, /* tp_repr */
|
||||
0, /* tp_as_number */
|
||||
0, /* tp_as_sequence */
|
||||
0, /* tp_as_mapping */
|
||||
0, /* tp_hash */
|
||||
0, /* tp_call */
|
||||
0, /* tp_str */
|
||||
0, /* tp_getattro */
|
||||
0, /* tp_setattro */
|
||||
0, /* tp_as_buffer */
|
||||
Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE, /* tp_flags */
|
||||
PLy_plan_doc, /* tp_doc */
|
||||
0, /* tp_traverse */
|
||||
0, /* tp_clear */
|
||||
0, /* tp_richcompare */
|
||||
0, /* tp_weaklistoffset */
|
||||
0, /* tp_iter */
|
||||
0, /* tp_iternext */
|
||||
PLy_plan_methods, /* tp_tpmethods */
|
||||
.tp_name = "PLyPlan",
|
||||
.tp_basicsize = sizeof(PLyPlanObject),
|
||||
.tp_dealloc = PLy_plan_dealloc,
|
||||
.tp_flags = Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE,
|
||||
.tp_doc = PLy_plan_doc,
|
||||
.tp_methods = PLy_plan_methods,
|
||||
};
|
||||
|
||||
void
|
||||
|
@ -115,23 +115,17 @@ static PyMethodDef PLy_exc_methods[] = {
|
||||
|
||||
#if PY_MAJOR_VERSION >= 3
|
||||
static PyModuleDef PLy_module = {
|
||||
PyModuleDef_HEAD_INIT, /* m_base */
|
||||
"plpy", /* m_name */
|
||||
NULL, /* m_doc */
|
||||
-1, /* m_size */
|
||||
PLy_methods, /* m_methods */
|
||||
PyModuleDef_HEAD_INIT,
|
||||
.m_name = "plpy",
|
||||
.m_size = -1,
|
||||
.m_methods = PLy_methods,
|
||||
};
|
||||
|
||||
static PyModuleDef PLy_exc_module = {
|
||||
PyModuleDef_HEAD_INIT, /* m_base */
|
||||
"spiexceptions", /* m_name */
|
||||
NULL, /* m_doc */
|
||||
-1, /* m_size */
|
||||
PLy_exc_methods, /* m_methods */
|
||||
NULL, /* m_reload */
|
||||
NULL, /* m_traverse */
|
||||
NULL, /* m_clear */
|
||||
NULL /* m_free */
|
||||
PyModuleDef_HEAD_INIT,
|
||||
.m_name = "spiexceptions",
|
||||
.m_size = -1,
|
||||
.m_methods = PLy_exc_methods,
|
||||
};
|
||||
|
||||
/*
|
||||
|
@ -29,19 +29,14 @@ static char PLy_result_doc[] = {
|
||||
};
|
||||
|
||||
static PySequenceMethods PLy_result_as_sequence = {
|
||||
PLy_result_length, /* sq_length */
|
||||
NULL, /* sq_concat */
|
||||
NULL, /* sq_repeat */
|
||||
PLy_result_item, /* sq_item */
|
||||
NULL, /* sq_slice */
|
||||
NULL, /* sq_ass_item */
|
||||
NULL, /* sq_ass_slice */
|
||||
.sq_length = PLy_result_length,
|
||||
.sq_item = PLy_result_item,
|
||||
};
|
||||
|
||||
static PyMappingMethods PLy_result_as_mapping = {
|
||||
PLy_result_length, /* mp_length */
|
||||
PLy_result_subscript, /* mp_subscript */
|
||||
PLy_result_ass_subscript, /* mp_ass_subscript */
|
||||
.mp_length = PLy_result_length,
|
||||
.mp_subscript = PLy_result_subscript,
|
||||
.mp_ass_subscript = PLy_result_ass_subscript,
|
||||
};
|
||||
|
||||
static PyMethodDef PLy_result_methods[] = {
|
||||
@ -55,37 +50,15 @@ static PyMethodDef PLy_result_methods[] = {
|
||||
|
||||
static PyTypeObject PLy_ResultType = {
|
||||
PyVarObject_HEAD_INIT(NULL, 0)
|
||||
"PLyResult", /* tp_name */
|
||||
sizeof(PLyResultObject), /* tp_size */
|
||||
0, /* tp_itemsize */
|
||||
|
||||
/*
|
||||
* methods
|
||||
*/
|
||||
PLy_result_dealloc, /* tp_dealloc */
|
||||
0, /* tp_print */
|
||||
0, /* tp_getattr */
|
||||
0, /* tp_setattr */
|
||||
0, /* tp_compare */
|
||||
0, /* tp_repr */
|
||||
0, /* tp_as_number */
|
||||
&PLy_result_as_sequence, /* tp_as_sequence */
|
||||
&PLy_result_as_mapping, /* tp_as_mapping */
|
||||
0, /* tp_hash */
|
||||
0, /* tp_call */
|
||||
&PLy_result_str, /* tp_str */
|
||||
0, /* tp_getattro */
|
||||
0, /* tp_setattro */
|
||||
0, /* tp_as_buffer */
|
||||
Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE, /* tp_flags */
|
||||
PLy_result_doc, /* tp_doc */
|
||||
0, /* tp_traverse */
|
||||
0, /* tp_clear */
|
||||
0, /* tp_richcompare */
|
||||
0, /* tp_weaklistoffset */
|
||||
0, /* tp_iter */
|
||||
0, /* tp_iternext */
|
||||
PLy_result_methods, /* tp_tpmethods */
|
||||
.tp_name = "PLyResult",
|
||||
.tp_basicsize = sizeof(PLyResultObject),
|
||||
.tp_dealloc = PLy_result_dealloc,
|
||||
.tp_as_sequence = &PLy_result_as_sequence,
|
||||
.tp_as_mapping = &PLy_result_as_mapping,
|
||||
.tp_str = &PLy_result_str,
|
||||
.tp_flags = Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE,
|
||||
.tp_doc = PLy_result_doc,
|
||||
.tp_methods = PLy_result_methods,
|
||||
};
|
||||
|
||||
void
|
||||
|
@ -38,37 +38,12 @@ static PyMethodDef PLy_subtransaction_methods[] = {
|
||||
|
||||
static PyTypeObject PLy_SubtransactionType = {
|
||||
PyVarObject_HEAD_INIT(NULL, 0)
|
||||
"PLySubtransaction", /* tp_name */
|
||||
sizeof(PLySubtransactionObject), /* tp_size */
|
||||
0, /* tp_itemsize */
|
||||
|
||||
/*
|
||||
* methods
|
||||
*/
|
||||
PLy_subtransaction_dealloc, /* tp_dealloc */
|
||||
0, /* tp_print */
|
||||
0, /* tp_getattr */
|
||||
0, /* tp_setattr */
|
||||
0, /* tp_compare */
|
||||
0, /* tp_repr */
|
||||
0, /* tp_as_number */
|
||||
0, /* tp_as_sequence */
|
||||
0, /* tp_as_mapping */
|
||||
0, /* tp_hash */
|
||||
0, /* tp_call */
|
||||
0, /* tp_str */
|
||||
0, /* tp_getattro */
|
||||
0, /* tp_setattro */
|
||||
0, /* tp_as_buffer */
|
||||
Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE, /* tp_flags */
|
||||
PLy_subtransaction_doc, /* tp_doc */
|
||||
0, /* tp_traverse */
|
||||
0, /* tp_clear */
|
||||
0, /* tp_richcompare */
|
||||
0, /* tp_weaklistoffset */
|
||||
0, /* tp_iter */
|
||||
0, /* tp_iternext */
|
||||
PLy_subtransaction_methods, /* tp_tpmethods */
|
||||
.tp_name = "PLySubtransaction",
|
||||
.tp_basicsize = sizeof(PLySubtransactionObject),
|
||||
.tp_dealloc = PLy_subtransaction_dealloc,
|
||||
.tp_flags = Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE,
|
||||
.tp_doc = PLy_subtransaction_doc,
|
||||
.tp_methods = PLy_subtransaction_methods,
|
||||
};
|
||||
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user