#include "catalog/genbki.h"
Go to the source code of this file.
Defines | |
#define | TypeRelationId 1247 |
#define | TypeRelation_Rowtype_Id 71 |
#define | Natts_pg_type 30 |
#define | Anum_pg_type_typname 1 |
#define | Anum_pg_type_typnamespace 2 |
#define | Anum_pg_type_typowner 3 |
#define | Anum_pg_type_typlen 4 |
#define | Anum_pg_type_typbyval 5 |
#define | Anum_pg_type_typtype 6 |
#define | Anum_pg_type_typcategory 7 |
#define | Anum_pg_type_typispreferred 8 |
#define | Anum_pg_type_typisdefined 9 |
#define | Anum_pg_type_typdelim 10 |
#define | Anum_pg_type_typrelid 11 |
#define | Anum_pg_type_typelem 12 |
#define | Anum_pg_type_typarray 13 |
#define | Anum_pg_type_typinput 14 |
#define | Anum_pg_type_typoutput 15 |
#define | Anum_pg_type_typreceive 16 |
#define | Anum_pg_type_typsend 17 |
#define | Anum_pg_type_typmodin 18 |
#define | Anum_pg_type_typmodout 19 |
#define | Anum_pg_type_typanalyze 20 |
#define | Anum_pg_type_typalign 21 |
#define | Anum_pg_type_typstorage 22 |
#define | Anum_pg_type_typnotnull 23 |
#define | Anum_pg_type_typbasetype 24 |
#define | Anum_pg_type_typtypmod 25 |
#define | Anum_pg_type_typndims 26 |
#define | Anum_pg_type_typcollation 27 |
#define | Anum_pg_type_typdefaultbin 28 |
#define | Anum_pg_type_typdefault 29 |
#define | Anum_pg_type_typacl 30 |
#define | BOOLOID 16 |
#define | BYTEAOID 17 |
#define | CHAROID 18 |
#define | NAMEOID 19 |
#define | INT8OID 20 |
#define | INT2OID 21 |
#define | INT2VECTOROID 22 |
#define | INT4OID 23 |
#define | REGPROCOID 24 |
#define | TEXTOID 25 |
#define | OIDOID 26 |
#define | TIDOID 27 |
#define | XIDOID 28 |
#define | CIDOID 29 |
#define | OIDVECTOROID 30 |
#define | JSONOID 114 |
#define | XMLOID 142 |
#define | PGNODETREEOID 194 |
#define | POINTOID 600 |
#define | LSEGOID 601 |
#define | PATHOID 602 |
#define | BOXOID 603 |
#define | POLYGONOID 604 |
#define | LINEOID 628 |
#define | FLOAT4OID 700 |
#define | FLOAT8OID 701 |
#define | ABSTIMEOID 702 |
#define | RELTIMEOID 703 |
#define | TINTERVALOID 704 |
#define | UNKNOWNOID 705 |
#define | CIRCLEOID 718 |
#define | CASHOID 790 |
#define | MACADDROID 829 |
#define | INETOID 869 |
#define | CIDROID 650 |
#define | INT4ARRAYOID 1007 |
#define | TEXTARRAYOID 1009 |
#define | FLOAT4ARRAYOID 1021 |
#define | ACLITEMOID 1033 |
#define | CSTRINGARRAYOID 1263 |
#define | BPCHAROID 1042 |
#define | VARCHAROID 1043 |
#define | DATEOID 1082 |
#define | TIMEOID 1083 |
#define | TIMESTAMPOID 1114 |
#define | TIMESTAMPTZOID 1184 |
#define | INTERVALOID 1186 |
#define | TIMETZOID 1266 |
#define | BITOID 1560 |
#define | VARBITOID 1562 |
#define | NUMERICOID 1700 |
#define | REFCURSOROID 1790 |
#define | REGPROCEDUREOID 2202 |
#define | REGOPEROID 2203 |
#define | REGOPERATOROID 2204 |
#define | REGCLASSOID 2205 |
#define | REGTYPEOID 2206 |
#define | REGTYPEARRAYOID 2211 |
#define | UUIDOID 2950 |
#define | TSVECTOROID 3614 |
#define | GTSVECTOROID 3642 |
#define | TSQUERYOID 3615 |
#define | REGCONFIGOID 3734 |
#define | REGDICTIONARYOID 3769 |
#define | INT4RANGEOID 3904 |
#define | RECORDOID 2249 |
#define | RECORDARRAYOID 2287 |
#define | CSTRINGOID 2275 |
#define | ANYOID 2276 |
#define | ANYARRAYOID 2277 |
#define | VOIDOID 2278 |
#define | TRIGGEROID 2279 |
#define | EVTTRIGGEROID 3838 |
#define | LANGUAGE_HANDLEROID 2280 |
#define | INTERNALOID 2281 |
#define | OPAQUEOID 2282 |
#define | ANYELEMENTOID 2283 |
#define | ANYNONARRAYOID 2776 |
#define | ANYENUMOID 3500 |
#define | FDW_HANDLEROID 3115 |
#define | ANYRANGEOID 3831 |
#define | TYPTYPE_BASE 'b' |
#define | TYPTYPE_COMPOSITE 'c' |
#define | TYPTYPE_DOMAIN 'd' |
#define | TYPTYPE_ENUM 'e' |
#define | TYPTYPE_PSEUDO 'p' |
#define | TYPTYPE_RANGE 'r' |
#define | TYPCATEGORY_INVALID '\0' |
#define | TYPCATEGORY_ARRAY 'A' |
#define | TYPCATEGORY_BOOLEAN 'B' |
#define | TYPCATEGORY_COMPOSITE 'C' |
#define | TYPCATEGORY_DATETIME 'D' |
#define | TYPCATEGORY_ENUM 'E' |
#define | TYPCATEGORY_GEOMETRIC 'G' |
#define | TYPCATEGORY_NETWORK 'I' |
#define | TYPCATEGORY_NUMERIC 'N' |
#define | TYPCATEGORY_PSEUDOTYPE 'P' |
#define | TYPCATEGORY_RANGE 'R' |
#define | TYPCATEGORY_STRING 'S' |
#define | TYPCATEGORY_TIMESPAN 'T' |
#define | TYPCATEGORY_USER 'U' |
#define | TYPCATEGORY_BITSTRING 'V' |
#define | TYPCATEGORY_UNKNOWN 'X' |
#define | IsPolymorphicType(typid) |
Typedefs | |
typedef FormData_pg_type * | Form_pg_type |
Functions | |
CATALOG (pg_type, 1247) BKI_BOOTSTRAP BKI_ROWTYPE_OID(71) BKI_SCHEMA_MACRO | |
DATA (insert OID=16(boolPGNSP PGUID 1 t b B t t\054 00 1000 boolin boolout boolrecv boolsend---c p f 0-1 0 0 _null_ _null_ _null_)) | |
DESCR ("boolean, 'true'/'false'") | |
DESCR ("variable-length string, binary values escaped") | |
DESCR ("single character") | |
DESCR ("63-byte type for storing system identifiers") | |
DESCR ("~18 digit integer, 8-byte storage") | |
DESCR ("-32 thousand to 32 thousand, 2-byte storage") | |
DESCR ("array of int2, used in system tables") | |
DESCR ("-2 billion to 2 billion integer, 4-byte storage") | |
DESCR ("registered procedure") | |
DESCR ("variable-length string, no limit specified") | |
DESCR ("object identifier(oid), maximum 4 billion") | |
DESCR ("(block, offset), physical location of tuple") | |
DESCR ("transaction id") | |
DESCR ("command identifier type, sequence in transaction id") | |
DESCR ("XML content") | |
DESCR ("string representing an internal node tree") | |
DESCR ("storage manager") | |
DESCR ("geometric point '(x, y)'") | |
DESCR ("geometric line segment '(pt1,pt2)'") | |
DESCR ("geometric path '(pt1,...)'") | |
DESCR ("geometric box '(lower left,upper right)'") | |
DESCR ("geometric polygon '(pt1,...)'") | |
DESCR ("geometric line (not implemented)") | |
DESCR ("") | |
DESCR ("single-precision floating point number, 4-byte storage") | |
DESCR ("double-precision floating point number, 8-byte storage") | |
DESCR ("absolute, limited-range date and time (Unix system time)") | |
DESCR ("relative, limited-range time interval (Unix delta time)") | |
DESCR ("(abstime,abstime), time interval") | |
DESCR ("geometric circle '(center,radius)'") | |
DESCR ("monetary amounts, $d,ddd.cc") | |
DESCR ("XX:XX:XX:XX:XX:XX, MAC address") | |
DESCR ("IP address/netmask, host address, netmask optional") | |
DESCR ("network IP address/netmask, network address") | |
DESCR ("access control list") | |
DESCR ("char(length), blank-padded string, fixed storage length") | |
DESCR ("varchar(length), non-blank-padded string, variable storage length") | |
DESCR ("date") | |
DESCR ("time of day") | |
DESCR ("date and time") | |
DESCR ("date and time with time zone") | |
DESCR ("@ <number> <units>, time interval") | |
DESCR ("time of day with time zone") | |
DESCR ("fixed-length bit string") | |
DESCR ("variable-length bit string") | |
DESCR ("numeric(precision, decimal), arbitrary precision number") | |
DESCR ("reference to cursor (portal name)") | |
DESCR ("registered procedure (with args)") | |
DESCR ("registered operator") | |
DESCR ("registered operator (with args)") | |
DESCR ("registered class") | |
DESCR ("registered type") | |
DESCR ("UUID datatype") | |
DESCR ("text representation for text search") | |
DESCR ("GiST index internal text representation for text search") | |
DESCR ("query representation for text search") | |
DESCR ("registered text search configuration") | |
DESCR ("registered text search dictionary") | |
DESCR ("txid snapshot") | |
DESCR ("range of integers") | |
DESCR ("range of numerics") | |
DESCR ("range of timestamps without time zone") | |
DESCR ("range of timestamps with time zone") | |
DESCR ("range of dates") | |
DESCR ("range of bigints") | |
Variables | |
FormData_pg_type |
#define ABSTIMEOID 702 |
Definition at line 411 of file pg_type.h.
Referenced by convert_timevalue_to_scalar(), convert_to_scalar(), ecpg_is_type_an_array(), and timetravel().
#define ACLITEMOID 1033 |
Definition at line 477 of file pg_type.h.
Referenced by check_acl().
#define Anum_pg_type_typacl 30 |
Definition at line 269 of file pg_type.h.
Referenced by ExecGrant_Type(), pg_type_aclmask(), TypeCreate(), and TypeShellMake().
#define Anum_pg_type_typalign 21 |
Definition at line 260 of file pg_type.h.
Referenced by TypeCreate(), and TypeShellMake().
#define Anum_pg_type_typanalyze 20 |
Definition at line 259 of file pg_type.h.
Referenced by TypeCreate(), and TypeShellMake().
#define Anum_pg_type_typarray 13 |
Definition at line 252 of file pg_type.h.
Referenced by TypeCreate(), and TypeShellMake().
#define Anum_pg_type_typbasetype 24 |
Definition at line 263 of file pg_type.h.
Referenced by TypeCreate(), and TypeShellMake().
#define Anum_pg_type_typbyval 5 |
Definition at line 244 of file pg_type.h.
Referenced by TypeCreate(), and TypeShellMake().
#define Anum_pg_type_typcategory 7 |
Definition at line 246 of file pg_type.h.
Referenced by TypeCreate(), and TypeShellMake().
#define Anum_pg_type_typcollation 27 |
Definition at line 266 of file pg_type.h.
Referenced by TypeCreate(), and TypeShellMake().
#define Anum_pg_type_typdefault 29 |
Definition at line 268 of file pg_type.h.
Referenced by AlterDomainDefault(), DefineDomain(), get_typdefault(), TypeCreate(), and TypeShellMake().
#define Anum_pg_type_typdefaultbin 28 |
Definition at line 267 of file pg_type.h.
Referenced by AlterDomainDefault(), DefineDomain(), get_typdefault(), TypeCreate(), and TypeShellMake().
#define Anum_pg_type_typdelim 10 |
Definition at line 249 of file pg_type.h.
Referenced by TypeCreate(), and TypeShellMake().
#define Anum_pg_type_typelem 12 |
Definition at line 251 of file pg_type.h.
Referenced by TypeCreate(), and TypeShellMake().
#define Anum_pg_type_typinput 14 |
Definition at line 253 of file pg_type.h.
Referenced by TypeCreate(), and TypeShellMake().
#define Anum_pg_type_typisdefined 9 |
Definition at line 248 of file pg_type.h.
Referenced by TypeCreate(), and TypeShellMake().
#define Anum_pg_type_typispreferred 8 |
Definition at line 247 of file pg_type.h.
Referenced by TypeCreate(), and TypeShellMake().
#define Anum_pg_type_typlen 4 |
Definition at line 243 of file pg_type.h.
Referenced by TypeCreate(), and TypeShellMake().
#define Anum_pg_type_typmodin 18 |
Definition at line 257 of file pg_type.h.
Referenced by TypeCreate(), and TypeShellMake().
#define Anum_pg_type_typmodout 19 |
Definition at line 258 of file pg_type.h.
Referenced by TypeCreate(), and TypeShellMake().
#define Anum_pg_type_typname 1 |
Definition at line 240 of file pg_type.h.
Referenced by regtypein(), TypeCreate(), and TypeShellMake().
#define Anum_pg_type_typnamespace 2 |
Definition at line 241 of file pg_type.h.
Referenced by TypeCreate(), and TypeShellMake().
#define Anum_pg_type_typndims 26 |
Definition at line 265 of file pg_type.h.
Referenced by TypeCreate(), and TypeShellMake().
#define Anum_pg_type_typnotnull 23 |
Definition at line 262 of file pg_type.h.
Referenced by TypeCreate(), and TypeShellMake().
#define Anum_pg_type_typoutput 15 |
Definition at line 254 of file pg_type.h.
Referenced by TypeCreate(), and TypeShellMake().
#define Anum_pg_type_typowner 3 |
Definition at line 242 of file pg_type.h.
Referenced by TypeCreate(), and TypeShellMake().
#define Anum_pg_type_typreceive 16 |
Definition at line 255 of file pg_type.h.
Referenced by TypeCreate(), and TypeShellMake().
#define Anum_pg_type_typrelid 11 |
Definition at line 250 of file pg_type.h.
Referenced by TypeCreate(), and TypeShellMake().
#define Anum_pg_type_typsend 17 |
Definition at line 256 of file pg_type.h.
Referenced by TypeCreate(), and TypeShellMake().
#define Anum_pg_type_typstorage 22 |
Definition at line 261 of file pg_type.h.
Referenced by TypeCreate(), and TypeShellMake().
#define Anum_pg_type_typtype 6 |
Definition at line 245 of file pg_type.h.
Referenced by TypeCreate(), and TypeShellMake().
#define Anum_pg_type_typtypmod 25 |
Definition at line 264 of file pg_type.h.
Referenced by TypeCreate(), and TypeShellMake().
#define ANYARRAYOID 2277 |
Definition at line 649 of file pg_type.h.
Referenced by check_generic_type_consistency(), CheckAttributeType(), coerce_type(), do_compile(), enforce_generic_type_consistency(), examine_parameter_list(), IsBinaryCoercible(), plpgsql_resolve_polymorphic_argtypes(), ProcedureCreate(), resolve_generic_type(), resolve_polymorphic_argtypes(), and resolve_polymorphic_tupdesc().
#define ANYELEMENTOID 2283 |
Definition at line 663 of file pg_type.h.
Referenced by check_generic_type_consistency(), coerce_type(), enforce_generic_type_consistency(), plpgsql_resolve_polymorphic_argtypes(), ProcedureCreate(), resolve_generic_type(), resolve_polymorphic_argtypes(), and resolve_polymorphic_tupdesc().
#define ANYENUMOID 3500 |
Definition at line 667 of file pg_type.h.
Referenced by check_generic_type_consistency(), coerce_type(), enforce_generic_type_consistency(), IsBinaryCoercible(), plpgsql_resolve_polymorphic_argtypes(), ProcedureCreate(), resolve_generic_type(), resolve_polymorphic_argtypes(), and resolve_polymorphic_tupdesc().
#define ANYNONARRAYOID 2776 |
Definition at line 665 of file pg_type.h.
Referenced by check_generic_type_consistency(), coerce_type(), enforce_generic_type_consistency(), IsBinaryCoercible(), plpgsql_resolve_polymorphic_argtypes(), ProcedureCreate(), resolve_generic_type(), resolve_polymorphic_argtypes(), and resolve_polymorphic_tupdesc().
#define ANYOID 2276 |
Definition at line 647 of file pg_type.h.
Referenced by can_coerce_type(), coerce_type(), deparseFuncExpr(), examine_parameter_list(), generate_function_name(), ParseFuncOrColumn(), and ProcedureCreate().
#define ANYRANGEOID 3831 |
Definition at line 671 of file pg_type.h.
Referenced by check_generic_type_consistency(), coerce_type(), do_compile(), enforce_generic_type_consistency(), IsBinaryCoercible(), plpgsql_resolve_polymorphic_argtypes(), ProcedureCreate(), resolve_generic_type(), resolve_polymorphic_argtypes(), and resolve_polymorphic_tupdesc().
#define BITOID 1560 |
Definition at line 525 of file pg_type.h.
Referenced by deparseConst(), dumpTableData_insert(), format_type_internal(), get_const_expr(), and type_maximum_size().
#define BOOLOID 16 |
Definition at line 288 of file pg_type.h.
Referenced by aclexplode(), adjust_rowcompare_for_index(), assignOperTypes(), btree_predicate_proof(), build_coercion_expression(), build_implied_join_equality(), build_subplan(), coerce_to_boolean(), convert_EXISTS_to_ANY(), convert_numeric_to_scalar(), convert_to_scalar(), CreateCast(), dblink_close(), dblink_exec(), dblink_fetch(), dblink_open(), dblink_record_internal(), DefineSequence(), deparseConst(), do_compile(), dumpTableData_insert(), ecpg_dynamic_type(), ecpg_is_type_an_array(), exec_eval_boolean(), expand_boolean_index_clause(), findTypeAnalyzeFunction(), format_type_internal(), get_const_expr(), get_variable_numdistinct(), GetCCHashEqFuncs(), make_distinct_op(), make_row_comparison_op(), make_scalar_array_op(), makeBoolConst(), map_sql_type_to_xml_name(), map_sql_type_to_xmlschema_type(), map_sql_value_to_xml_value(), network_prefix_quals(), OperatorCreate(), pg_buffercache_pages(), pg_cursor(), pg_lock_status(), pg_prepared_statement(), pg_sequence_parameters(), pg_stat_file(), pg_stat_get_activity(), pg_timezone_abbrevs(), pg_timezone_names(), plpgsql_compile_inline(), PLy_input_datum_func2(), PLy_output_datum_func2(), prefix_quals(), process_implied_equality(), and transformAExprNullIf().
#define BOXOID 603 |
Definition at line 390 of file pg_type.h.
Referenced by ecpg_is_type_an_array().
#define BPCHAROID 1042 |
Definition at line 487 of file pg_type.h.
Referenced by convert_string_datum(), convert_to_scalar(), ecpg_dynamic_type(), ecpg_is_type_an_array(), format_type_internal(), get_typavgwidth(), is_text_type(), map_sql_type_to_xml_name(), map_sql_type_to_xmlschema_type(), patternsel(), sqlda_dynamic_type(), string_to_const(), and type_maximum_size().
#define BYTEAOID 17 |
Definition at line 292 of file pg_type.h.
Referenced by convert_to_scalar(), create_toast_table(), DefineType(), ecpg_is_type_an_array(), like_fixed_prefix(), make_greater_string(), map_sql_type_to_xmlschema_type(), map_sql_value_to_xml_value(), patternsel(), PLy_input_datum_func2(), PLy_output_datum_func2(), prefix_quals(), regex_fixed_prefix(), SendTimeLineHistory(), string_to_bytea_const(), string_to_const(), and string_to_datum().
#define CASHOID 790 |
Definition at line 428 of file pg_type.h.
Referenced by ecpg_is_type_an_array(), and printQuery().
#define CHAROID 18 |
Definition at line 296 of file pg_type.h.
Referenced by build_function_result_tupdesc_d(), convert_string_datum(), convert_to_scalar(), ecpg_is_type_an_array(), examine_parameter_list(), get_func_arg_info(), get_func_input_arg_names(), get_func_result_name(), GetCCHashEqFuncs(), pg_get_keywords(), and sqlda_dynamic_type().
#define CIDOID 29 |
Definition at line 340 of file pg_type.h.
Referenced by ecpg_is_type_an_array(), and printQuery().
#define CIDROID 650 |
Definition at line 440 of file pg_type.h.
Referenced by convert_network_to_scalar(), convert_to_scalar(), and ecpg_is_type_an_array().
#define CIRCLEOID 718 |
Definition at line 424 of file pg_type.h.
Referenced by ecpg_is_type_an_array().
#define CSTRINGOID 2275 |
Definition at line 645 of file pg_type.h.
Referenced by ArrayGetIntegerTypmods(), DefineType(), eval_const_expressions_mutator(), findTypeInputFunction(), findTypeTypmodoutFunction(), get_type_func_class(), and typenameTypeMod().
#define DATEOID 1082 |
Definition at line 494 of file pg_type.h.
Referenced by convert_timevalue_to_scalar(), convert_to_scalar(), ecpg_dynamic_type(), ecpg_dynamic_type_DDT(), ecpg_is_type_an_array(), map_sql_type_to_xml_name(), map_sql_type_to_xmlschema_type(), map_sql_value_to_xml_value(), and sqlda_dynamic_type().
#define EVTTRIGGEROID 3838 |
Definition at line 655 of file pg_type.h.
Referenced by CreateEventTrigger(), do_compile(), and plpgsql_validator().
#define FDW_HANDLEROID 3115 |
Definition at line 669 of file pg_type.h.
Referenced by lookup_fdw_handler_func().
#define FLOAT4OID 700 |
Definition at line 405 of file pg_type.h.
Referenced by convert_numeric_to_scalar(), convert_to_scalar(), deparseConst(), dumpTableData_insert(), ecpg_dynamic_type(), ecpg_is_type_an_array(), format_type_internal(), get_attstatsslot(), get_const_expr(), map_sql_type_to_xml_name(), map_sql_type_to_xmlschema_type(), PLy_input_datum_func2(), printQuery(), sqlda_dynamic_type(), and update_attstats().
#define FLOAT8OID 701 |
Definition at line 408 of file pg_type.h.
Referenced by check_float8_array(), convert_numeric_to_scalar(), convert_to_scalar(), DefineOperator(), deparseConst(), dumpTableData_insert(), ecpg_dynamic_type(), ecpg_is_type_an_array(), findRangeSubtypeDiffFunction(), float4_accum(), float8_accum(), float8_regr_accum(), format_type_internal(), get_const_expr(), map_sql_type_to_xml_name(), map_sql_type_to_xmlschema_type(), PLy_input_datum_func2(), printQuery(), and sqlda_dynamic_type().
#define INETOID 869 |
Definition at line 437 of file pg_type.h.
Referenced by convert_network_to_scalar(), convert_to_scalar(), ecpg_is_type_an_array(), gbt_inet_compress(), gbt_inet_consistent(), and pg_stat_get_activity().
#define INT2OID 21 |
Definition at line 308 of file pg_type.h.
Referenced by check_functional_grouping(), convert_numeric_to_scalar(), convert_to_scalar(), CreateConstraintEntry(), decompile_column_index_array(), deparseConst(), dumpTableData_insert(), ecpg_dynamic_type(), ecpg_is_type_an_array(), format_type_internal(), get_const_expr(), GetCCHashEqFuncs(), initGinState(), int2vectorrecv(), map_sql_type_to_xml_name(), map_sql_type_to_xmlschema_type(), pg_buffercache_pages(), pg_lock_status(), PLy_input_datum_func2(), printQuery(), ri_LoadConstraintInfo(), sqlda_dynamic_type(), and text_format().
#define INT2VECTOROID 22 |
Definition at line 312 of file pg_type.h.
Referenced by ecpg_is_type_an_array(), find_coercion_pathway(), and GetCCHashEqFuncs().
#define INT4OID 23 |
Definition at line 316 of file pg_type.h.
Referenced by AcquireRewriteLocks(), assignProcTypes(), autoinc(), build_coercion_expression(), check_sql_fn_retval(), coerce_record_to_complex(), convert_numeric_to_scalar(), convert_to_scalar(), create_toast_table(), CreateCast(), dblink_get_notify(), dblink_get_pkey(), deparseConst(), do_compile(), dumpTableData_insert(), ecpg_dynamic_type(), ecpg_is_type_an_array(), eval_const_expressions_mutator(), exec_eval_integer(), exec_stmt_getdiag(), ExecInitExpr(), expand_targetlist(), expandTupleDesc(), exprIsLengthCoercion(), findTypeTypmodinFunction(), format_type_internal(), generate_append_tlist(), generate_setop_tlist(), get_const_expr(), GetCCHashEqFuncs(), IdentifySystem(), map_sql_type_to_xml_name(), map_sql_type_to_xmlschema_type(), pg_buffercache_pages(), pg_lock_status(), pg_stat_get_activity(), pg_xlogfile_name_offset(), PLy_input_datum_func2(), printQuery(), prs_setup_firstcall(), show_all_settings(), sqlda_dynamic_type(), text_format(), transformArraySubscripts(), transformXmlExpr(), ts_setup_firstcall(), tt_setup_firstcall(), ttdummy(), and validateConnectbyTupleDesc().
#define INT8OID 20 |
Definition at line 304 of file pg_type.h.
Referenced by build_minmax_path(), convert_numeric_to_scalar(), convert_to_scalar(), DefineSequence(), deparseConst(), dumpTableData_insert(), ecpg_is_type_an_array(), format_type_internal(), get_const_expr(), map_sql_type_to_xml_name(), map_sql_type_to_xmlschema_type(), pg_buffercache_pages(), pg_sequence_parameters(), pg_stat_file(), PLy_input_datum_func2(), printQuery(), SendBackupHeader(), SendXlogRecPtrResult(), sqlda_dynamic_type(), StartReplication(), transformFrameOffset(), and transformLimitClause().
#define INTERNALOID 2281 |
Definition at line 659 of file pg_type.h.
Referenced by AggregateCreate(), assignProcTypes(), count_agg_clauses_walker(), DefineAggregate(), and ProcedureCreate().
#define INTERVALOID 1186 |
Definition at line 512 of file pg_type.h.
Referenced by coerce_type(), convert_timevalue_to_scalar(), convert_to_scalar(), ecpg_is_type_an_array(), flatten_set_variable_args(), format_type_internal(), interval_accum(), interval_avg(), pg_timezone_abbrevs(), pg_timezone_names(), and sqlda_dynamic_type().
#define IsPolymorphicType | ( | typid | ) |
((typid) == ANYELEMENTOID || \ (typid) == ANYARRAYOID || \ (typid) == ANYNONARRAYOID || \ (typid) == ANYENUMOID || \ (typid) == ANYRANGEOID)
Definition at line 702 of file pg_type.h.
Referenced by AggregateCreate(), ATAddForeignKeyConstraint(), can_coerce_type(), canonicalize_ec_expression(), check_sql_fn_retval(), CheckIndexCompatible(), count_agg_clauses_walker(), DefineAggregate(), do_compile(), ExecInitAgg(), fmgr_sql_validator(), init_sql_fcache(), initialize_peragg(), internal_get_result_type(), lookup_agg_function(), make_scalar_array_op(), plpgsql_validator(), prepare_sql_fn_parse_info(), ProcedureCreate(), and ri_HashCompareOp().
#define JSONOID 114 |
Definition at line 356 of file pg_type.h.
Referenced by array_to_json_internal(), composite_to_json(), json_agg_transfn(), and to_json().
#define LANGUAGE_HANDLEROID 2280 |
Definition at line 657 of file pg_type.h.
Referenced by CreateProceduralLanguage().
#define LINEOID 628 |
Definition at line 397 of file pg_type.h.
Referenced by ecpg_is_type_an_array().
#define LSEGOID 601 |
Definition at line 384 of file pg_type.h.
Referenced by ecpg_is_type_an_array().
#define MACADDROID 829 |
Definition at line 434 of file pg_type.h.
Referenced by convert_network_to_scalar(), and convert_to_scalar().
#define NAMEOID 19 |
Definition at line 300 of file pg_type.h.
Referenced by convert_string_datum(), convert_to_scalar(), current_schemas(), DefineSequence(), do_compile(), ecpg_is_type_an_array(), get_available_versions_for_extension(), GetCCHashEqFuncs(), make_greater_string(), patternsel(), string_to_const(), and string_to_datum().
#define Natts_pg_type 30 |
Definition at line 239 of file pg_type.h.
Referenced by RelationCacheInitializePhase3().
#define NUMERICOID 1700 |
Definition at line 537 of file pg_type.h.
Referenced by convert_numeric_to_scalar(), convert_to_scalar(), deparseConst(), do_numeric_accum(), do_numeric_avg_accum(), dumpTableData_insert(), ecpg_dynamic_type(), ecpg_is_type_an_array(), format_type_internal(), get_const_expr(), map_sql_type_to_xml_name(), map_sql_type_to_xmlschema_type(), numeric_avg(), numeric_stddev_internal(), PLy_input_datum_func2(), printQuery(), sqlda_dynamic_type(), and type_maximum_size().
#define OIDOID 26 |
Definition at line 328 of file pg_type.h.
Referenced by aclexplode(), ATPrepAddOids(), BeginCopyFrom(), build_function_result_tupdesc_d(), convert_numeric_to_scalar(), convert_to_scalar(), create_toast_table(), CreateConstraintEntry(), deparseConst(), do_compile(), dumpTableData_insert(), ecpg_is_type_an_array(), eval_const_expressions_mutator(), examine_parameter_list(), exec_stmt_getdiag(), extension_config_remove(), generateClonedIndexStmt(), get_const_expr(), get_func_arg_info(), GetCCHashEqFuncs(), oidvectorrecv(), pg_buffercache_pages(), pg_extension_config_dump(), pg_get_constraintdef_worker(), pg_lock_status(), pg_prepared_xact(), pg_stat_get_activity(), PLy_input_datum_func2(), preprocess_targetlist(), printQuery(), ProcedureCreate(), RelationGetExclusionInfo(), ri_LoadConstraintInfo(), SendBackupHeader(), and TryReuseForeignKey().
#define OIDVECTOROID 30 |
Definition at line 344 of file pg_type.h.
Referenced by ecpg_is_type_an_array(), find_coercion_pathway(), and GetCCHashEqFuncs().
#define OPAQUEOID 2282 |
Definition at line 661 of file pg_type.h.
Referenced by CreateProceduralLanguage(), CreateTrigger(), DefineType(), plperl_validator(), plpgsql_validator(), PLy_procedure_is_trigger(), SetFunctionArgType(), and SetFunctionReturnType().
#define PATHOID 602 |
Definition at line 387 of file pg_type.h.
Referenced by ecpg_is_type_an_array().
#define POINTOID 600 |
Definition at line 381 of file pg_type.h.
Referenced by ecpg_is_type_an_array().
#define POLYGONOID 604 |
Definition at line 393 of file pg_type.h.
Referenced by ecpg_is_type_an_array().
#define RECORDARRAYOID 2287 |
Definition at line 643 of file pg_type.h.
Referenced by can_coerce_type(), coerce_type(), composite_to_json(), IsBinaryCoercible(), json_agg_transfn(), and to_json().
#define RECORDOID 2249 |
Definition at line 641 of file pg_type.h.
Referenced by array_to_json_internal(), assign_record_type_typmod(), BlessTupleDesc(), build_datatype(), build_function_result_tupdesc_t(), cache_record_field_properties(), can_coerce_type(), check_sql_fn_retval(), coerce_record_to_complex(), coerce_type(), compile_plperl_function(), composite_to_json(), count_rowexpr_columns(), do_compile(), evaluate_function(), ExecEvalWholeRowFast(), ExecEvalWholeRowSlow(), ExecEvalWholeRowVar(), ExecInitExpr(), expandRecordVariable(), ExpandRowReference(), fmgr_sql_validator(), func_get_detail(), get_name_for_var_field(), get_rule_expr(), get_type_func_class(), inline_function(), inline_set_returning_function(), internal_get_result_type(), IsBinaryCoercible(), json_agg_transfn(), lookup_rowtype_tupdesc_internal(), makeWholeRowVar(), ParseComplexProjection(), ParseFuncOrColumn(), plperl_validator(), plpgsql_validator(), PLy_exec_function(), PLy_function_build_args(), PLy_input_tuple_funcs(), PLy_output_tuple_funcs(), PLy_procedure_create(), ProcedureCreate(), pullup_replace_vars_callback(), record_in(), record_recv(), ReplaceVarsFromTargetList_callback(), rowtype_field_matches(), SPI_returntuple(), to_json(), type_is_rowtype(), and unknown_attribute().
#define REFCURSOROID 1790 |
Definition at line 541 of file pg_type.h.
Referenced by fetch_cursor_param_value(), and transformCurrentOfExpr().
#define REGCLASSOID 2205 |
Definition at line 560 of file pg_type.h.
Referenced by convert_numeric_to_scalar(), convert_to_scalar(), find_expr_references_walker(), and GetCCHashEqFuncs().
#define REGCONFIGOID 3734 |
Definition at line 591 of file pg_type.h.
Referenced by convert_numeric_to_scalar(), convert_to_scalar(), find_expr_references_walker(), GetCCHashEqFuncs(), and tsvector_update_trigger().
#define REGDICTIONARYOID 3769 |
Definition at line 594 of file pg_type.h.
Referenced by convert_numeric_to_scalar(), convert_to_scalar(), find_expr_references_walker(), and GetCCHashEqFuncs().
#define REGOPERATOROID 2204 |
Definition at line 556 of file pg_type.h.
Referenced by convert_numeric_to_scalar(), convert_to_scalar(), find_expr_references_walker(), and GetCCHashEqFuncs().
#define REGOPEROID 2203 |
Definition at line 552 of file pg_type.h.
Referenced by convert_numeric_to_scalar(), convert_to_scalar(), find_expr_references_walker(), and GetCCHashEqFuncs().
#define REGPROCEDUREOID 2202 |
Definition at line 548 of file pg_type.h.
Referenced by convert_numeric_to_scalar(), convert_to_scalar(), find_expr_references_walker(), and GetCCHashEqFuncs().
#define REGPROCOID 24 |
Definition at line 320 of file pg_type.h.
Referenced by convert_numeric_to_scalar(), convert_to_scalar(), ecpg_is_type_an_array(), find_expr_references_walker(), and GetCCHashEqFuncs().
#define REGTYPEARRAYOID 2211 |
Definition at line 571 of file pg_type.h.
Referenced by pg_prepared_statement().
#define REGTYPEOID 2206 |
Definition at line 564 of file pg_type.h.
Referenced by build_regtype_array(), convert_numeric_to_scalar(), convert_to_scalar(), find_expr_references_walker(), and GetCCHashEqFuncs().
#define RELTIMEOID 703 |
Definition at line 414 of file pg_type.h.
Referenced by convert_timevalue_to_scalar(), convert_to_scalar(), and ecpg_is_type_an_array().
#define TEXTARRAYOID 1009 |
Definition at line 455 of file pg_type.h.
Referenced by do_compile(), and show_all_settings().
#define TEXTOID 25 |
Definition at line 324 of file pg_type.h.
Referenced by aclexplode(), build_function_result_tupdesc_d(), build_regexp_matches_result(), convert_string_datum(), convert_to_scalar(), create_empty_extension(), dblink_get_connections(), dblink_get_notify(), dblink_get_pkey(), DecodeTextArrayToCString(), do_compile(), ecpg_dynamic_type(), ecpg_is_type_an_array(), examine_parameter_list(), exec_assign_c_string(), extension_config_remove(), filter_list_to_array(), get_func_arg_info(), get_func_input_arg_names(), get_func_result_name(), get_path_all(), get_text_array_contents(), GetCCHashEqFuncs(), GetPGVariableResultDesc(), ghstore_consistent(), gin_extract_hstore_query(), GUCArrayAdd(), GUCArrayDelete(), GUCArrayReset(), hstore_akeys(), hstore_avals(), hstore_from_array(), hstore_from_arrays(), hstore_slice_to_array(), hstore_to_array_internal(), hstoreArrayToPairs(), IdentifySystem(), insert_username(), is_text_type(), like_fixed_prefix(), map_sql_type_to_xmlschema_type(), materializeQueryResult(), materializeResult(), optionListToArray(), parseRelOptions(), patternsel(), pg_cursor(), pg_extension_config_dump(), pg_get_functiondef(), pg_get_keywords(), pg_get_multixact_members(), pg_identify_object(), pg_lock_status(), pg_logdir_ls(), pg_prepared_statement(), pg_prepared_xact(), pg_stat_get_activity(), pg_timezone_abbrevs(), pg_timezone_names(), pg_xlogfile_name_offset(), plpgsql_exec_trigger(), prefix_quals(), ProcessGUCArray(), prs_setup_firstcall(), regexp_split_to_array(), SendBackupHeader(), SendTimeLineHistory(), SendXlogRecPtrResult(), show_all_settings(), show_trgm(), ShowAllGUCConfig(), ShowGUCConfigOption(), sqlda_dynamic_type(), string_to_const(), text_to_array_internal(), timetravel(), transformCaseExpr(), transformGenericOptions(), transformRelOptions(), transformXmlExpr(), transformXmlSerialize(), ts_lexize(), ts_setup_firstcall(), tsquerysel(), tt_setup_firstcall(), untransformRelOptions(), and validateConnectbyTupleDesc().
#define TIDOID 27 |
Definition at line 332 of file pg_type.h.
Referenced by currtid_for_view(), ecpg_is_type_an_array(), IsTidEqualAnyClause(), IsTidEqualClause(), postgresAddForeignUpdateTargets(), postgresBeginForeignModify(), preprocess_targetlist(), rewriteTargetListUD(), TidListCreate(), and validate_index().
#define TIMEOID 1083 |
Definition at line 497 of file pg_type.h.
Referenced by convert_timevalue_to_scalar(), convert_to_scalar(), ecpg_dynamic_type(), ecpg_dynamic_type_DDT(), ecpg_is_type_an_array(), format_type_internal(), map_sql_type_to_xml_name(), and map_sql_type_to_xmlschema_type().
#define TIMESTAMPOID 1114 |
Definition at line 502 of file pg_type.h.
Referenced by convert_timevalue_to_scalar(), convert_to_scalar(), ecpg_dynamic_type(), ecpg_dynamic_type_DDT(), ecpg_is_type_an_array(), format_type_internal(), map_sql_type_to_xml_name(), map_sql_type_to_xmlschema_type(), map_sql_value_to_xml_value(), moddatetime(), pg_logdir_ls(), and sqlda_dynamic_type().
#define TIMESTAMPTZOID 1184 |
Definition at line 508 of file pg_type.h.
Referenced by convert_timevalue_to_scalar(), convert_to_scalar(), ecpg_dynamic_type_DDT(), ecpg_is_type_an_array(), format_type_internal(), map_sql_type_to_xml_name(), map_sql_type_to_xmlschema_type(), map_sql_value_to_xml_value(), moddatetime(), pg_cursor(), pg_prepared_statement(), pg_prepared_xact(), pg_stat_file(), pg_stat_get_activity(), and sqlda_dynamic_type().
#define TIMETZOID 1266 |
Definition at line 519 of file pg_type.h.
Referenced by convert_timevalue_to_scalar(), convert_to_scalar(), ecpg_dynamic_type_DDT(), ecpg_is_type_an_array(), format_type_internal(), map_sql_type_to_xml_name(), and map_sql_type_to_xmlschema_type().
#define TINTERVALOID 704 |
Definition at line 417 of file pg_type.h.
Referenced by convert_timevalue_to_scalar(), convert_to_scalar(), and ecpg_is_type_an_array().
#define TRIGGEROID 2279 |
Definition at line 653 of file pg_type.h.
Referenced by compile_plperl_function(), compile_pltcl_function(), CreateTrigger(), do_compile(), plperl_validator(), plpgsql_validator(), PLy_procedure_create(), and PLy_procedure_is_trigger().
#define TSQUERYOID 3615 |
Definition at line 588 of file pg_type.h.
Referenced by tsa_rewrite_accum(), tsmatchsel(), and tsquery_rewrite_query().
#define TSVECTOROID 3614 |
Definition at line 582 of file pg_type.h.
Referenced by ts_stat_sql(), tsmatchsel(), and tsvector_update_trigger().
#define TYPCATEGORY_ARRAY 'A' |
Definition at line 685 of file pg_type.h.
Referenced by datum_to_json(), DefineEnum(), DefineRange(), DefineType(), heap_create_with_catalog(), and json_agg_transfn().
#define TYPCATEGORY_BOOLEAN 'B' |
Definition at line 686 of file pg_type.h.
Referenced by datum_to_json().
#define TYPCATEGORY_COMPOSITE 'C' |
Definition at line 687 of file pg_type.h.
Referenced by AddNewRelationType(), datum_to_json(), and json_agg_transfn().
#define TYPCATEGORY_ENUM 'E' |
Definition at line 689 of file pg_type.h.
Referenced by DefineEnum().
#define TYPCATEGORY_INVALID '\0' |
Definition at line 684 of file pg_type.h.
Referenced by func_select_candidate(), IsPreferredType(), and TypeCategory().
#define TYPCATEGORY_NUMERIC 'N' |
Definition at line 692 of file pg_type.h.
Referenced by datum_to_json().
#define TYPCATEGORY_PSEUDOTYPE 'P' |
Definition at line 693 of file pg_type.h.
Referenced by TypeShellMake().
#define TYPCATEGORY_RANGE 'R' |
Definition at line 694 of file pg_type.h.
Referenced by DefineRange().
#define TYPCATEGORY_STRING 'S' |
Definition at line 695 of file pg_type.h.
Referenced by find_coercion_pathway(), func_get_detail(), and func_select_candidate().
#define TypeRelation_Rowtype_Id 71 |
Definition at line 35 of file pg_type.h.
Referenced by RelationCacheInitializePhase3().
#define TypeRelationId 1247 |
Definition at line 34 of file pg_type.h.
Referenced by AddEnumLabel(), AlterDomainAddConstraint(), AlterDomainDefault(), AlterDomainDropConstraint(), AlterDomainNotNull(), AlterDomainValidateConstraint(), AlterEnum(), AlterTypeNamespaceInternal(), AlterTypeOwner(), AlterTypeOwnerInternal(), AssignTypeArrayOid(), ATExecAddOf(), ATExecAlterColumnType(), ATExecDropOf(), boot_openrel(), ExecGrant_Type(), find_composite_type_dependencies(), GenerateTypeDependencies(), get_rels_with_domain(), getObjectClass(), gettype(), makeArrayTypeName(), regtypein(), RelationBuildLocalRelation(), RemoveRoleFromObjectACL(), RemoveTypeById(), RenameConstraint(), RenameType(), RenameTypeInternal(), shdepReassignOwned(), TypeCreate(), and TypeShellMake().
#define TYPTYPE_BASE 'b' |
Definition at line 677 of file pg_type.h.
Referenced by build_datatype(), check_sql_fn_retval(), DefineDomain(), DefineEnum(), DefineRange(), DefineType(), dumpType(), get_type_func_class(), getTypes(), and heap_create_with_catalog().
#define TYPTYPE_COMPOSITE 'c' |
Definition at line 678 of file pg_type.h.
Referenced by AddNewRelationType(), AlterTypeNamespaceInternal(), AlterTypeOwner(), build_datatype(), cache_record_field_properties(), check_of_type(), check_sql_fn_retval(), CheckAttributeType(), compile_plperl_function(), compile_pltcl_function(), CreateCast(), dumpType(), get_type_func_class(), inline_set_returning_function(), lookup_type_cache(), PLy_output_datum_func2(), PLy_procedure_create(), PLy_spi_prepare(), RenameType(), type_is_rowtype(), and TypeCacheRelCallback().
#define TYPTYPE_DOMAIN 'd' |
Definition at line 679 of file pg_type.h.
Referenced by AlterTypeNamespace(), AlterTypeNamespaceInternal(), AlterTypeOwner(), build_datatype(), check_sql_fn_retval(), CheckAttributeType(), checkDomainOwner(), CreateCast(), DefineDomain(), dumpType(), ExecGrant_Type(), get_base_element_type(), get_object_address_type(), get_rels_with_domain(), get_type_func_class(), getBaseTypeAndTypmod(), GetDomainConstraints(), getTypes(), map_sql_type_to_xml_name(), map_sql_type_to_xmlschema_type(), PLyObject_ToBool(), PLyObject_ToBytea(), and RenameType().
#define TYPTYPE_ENUM 'e' |
Definition at line 680 of file pg_type.h.
Referenced by build_datatype(), check_sql_fn_retval(), checkEnumOwner(), CreateCast(), DefineDomain(), DefineEnum(), dumpType(), get_type_func_class(), load_enum_cache_data(), RemoveTypeById(), and type_is_enum().
#define TYPTYPE_PSEUDO 'p' |
Definition at line 681 of file pg_type.h.
Referenced by build_datatype(), CheckAttributeType(), compile_plperl_function(), compile_pltcl_function(), CreateCast(), DefineAggregate(), DefineRange(), DefineType(), do_compile(), fmgr_sql_validator(), get_type_func_class(), plperl_validator(), plpgsql_validator(), PLy_procedure_create(), and TypeShellMake().
#define TYPTYPE_RANGE 'r' |
Definition at line 682 of file pg_type.h.
Referenced by build_datatype(), check_sql_fn_retval(), DefineDomain(), DefineRange(), dumpType(), get_type_func_class(), getTypes(), lookup_type_cache(), RemoveTypeById(), and type_is_range().
#define UNKNOWNOID 705 |
Definition at line 420 of file pg_type.h.
Referenced by addTargetToGroupList(), addTargetToSortList(), analyzeCTETargetList(), binary_oper_exact(), can_coerce_type(), check_generic_type_consistency(), CheckAttributeType(), coerce_type(), deparseConst(), ecpg_is_type_an_array(), enforce_generic_type_consistency(), exec_eval_using_params(), exec_parse_message(), exec_stmt_block(), func_get_detail(), func_select_candidate(), get_const_expr(), make_const(), make_scalar_array_op(), pg_collation_for(), PrepareQuery(), select_common_type(), transformCaseExpr(), transformCollateClause(), transformSetOperationTree(), and variable_coerce_param_hook().
#define VARBITOID 1562 |
Definition at line 529 of file pg_type.h.
Referenced by deparseConst(), dumpTableData_insert(), ecpg_is_type_an_array(), format_type_internal(), get_const_expr(), and type_maximum_size().
#define VARCHAROID 1043 |
Definition at line 490 of file pg_type.h.
Referenced by convert_string_datum(), convert_to_scalar(), ecpg_dynamic_type(), ecpg_is_type_an_array(), format_type_internal(), is_text_type(), map_sql_type_to_xml_name(), map_sql_type_to_xmlschema_type(), sqlda_dynamic_type(), string_to_const(), and type_maximum_size().
#define VOIDOID 2278 |
Definition at line 651 of file pg_type.h.
Referenced by assignProcTypes(), check_sql_fn_retval(), compile_plperl_function(), compile_pltcl_function(), CreateConversionCommand(), CreateProceduralLanguage(), do_compile(), exec_stmt_return(), fmgr_sql(), fmgr_sql_validator(), get_type_func_class(), ParseFuncOrColumn(), plperl_sv_to_datum(), plperl_validator(), plpgsql_compile_inline(), plpgsql_validator(), PLy_exec_function(), and PLy_procedure_create().
#define XIDOID 28 |
Definition at line 336 of file pg_type.h.
Referenced by ecpg_is_type_an_array(), pg_get_multixact_members(), pg_lock_status(), pg_prepared_xact(), and printQuery().
#define XMLOID 142 |
Definition at line 359 of file pg_type.h.
Referenced by map_sql_type_to_xml_name(), map_sql_type_to_xmlschema_type(), map_sql_value_to_xml_value(), transformXmlExpr(), transformXmlSerialize(), and xpath().
typedef FormData_pg_type* Form_pg_type |
CATALOG | ( | pg_type | , | |
1247 | ||||
) |
Definition at line 37 of file pg_type.h.
{ NameData typname; /* type name */ Oid typnamespace; /* OID of namespace containing this type */ Oid typowner; /* type owner */ /* * For a fixed-size type, typlen is the number of bytes we use to * represent a value of this type, e.g. 4 for an int4. But for a * variable-length type, typlen is negative. We use -1 to indicate a * "varlena" type (one that has a length word), -2 to indicate a * null-terminated C string. */ int16 typlen; /* * typbyval determines whether internal Postgres routines pass a value of * this type by value or by reference. typbyval had better be FALSE if * the length is not 1, 2, or 4 (or 8 on 8-byte-Datum machines). * Variable-length types are always passed by reference. Note that * typbyval can be false even if the length would allow pass-by-value; * this is currently true for type float4, for example. */ bool typbyval; /* * typtype is 'b' for a base type, 'c' for a composite type (e.g., a * table's rowtype), 'd' for a domain, 'e' for an enum type, 'p' for a * pseudo-type, or 'r' for a range type. (Use the TYPTYPE macros below.) * * If typtype is 'c', typrelid is the OID of the class' entry in pg_class. */ char typtype; /* * typcategory and typispreferred help the parser distinguish preferred * and non-preferred coercions. The category can be any single ASCII * character (but not \0). The categories used for built-in types are * identified by the TYPCATEGORY macros below. */ char typcategory; /* arbitrary type classification */ bool typispreferred; /* is type "preferred" within its category? */ /* * If typisdefined is false, the entry is only a placeholder (forward * reference). We know the type name, but not yet anything else about it. */ bool typisdefined; char typdelim; /* delimiter for arrays of this type */ Oid typrelid; /* 0 if not a composite type */ /* * If typelem is not 0 then it identifies another row in pg_type. The * current type can then be subscripted like an array yielding values of * type typelem. A non-zero typelem does not guarantee this type to be a * "real" array type; some ordinary fixed-length types can also be * subscripted (e.g., name, point). Variable-length types can *not* be * turned into pseudo-arrays like that. Hence, the way to determine * whether a type is a "true" array type is if: * * typelem != 0 and typlen == -1. */ Oid typelem; /* * If there is a "true" array type having this type as element type, * typarray links to it. Zero if no associated "true" array type. */ Oid typarray; /* * I/O conversion procedures for the datatype. */ regproc typinput; /* text format (required) */ regproc typoutput; regproc typreceive; /* binary format (optional) */ regproc typsend; /* * I/O functions for optional type modifiers. */ regproc typmodin; regproc typmodout; /* * Custom ANALYZE procedure for the datatype (0 selects the default). */ regproc typanalyze; /* ---------------- * typalign is the alignment required when storing a value of this * type. It applies to storage on disk as well as most * representations of the value inside Postgres. When multiple values * are stored consecutively, such as in the representation of a * complete row on disk, padding is inserted before a datum of this * type so that it begins on the specified boundary. The alignment * reference is the beginning of the first datum in the sequence. * * 'c' = CHAR alignment, ie no alignment needed. * 's' = SHORT alignment (2 bytes on most machines). * 'i' = INT alignment (4 bytes on most machines). * 'd' = DOUBLE alignment (8 bytes on many machines, but by no means all). * * See include/access/tupmacs.h for the macros that compute these * alignment requirements. Note also that we allow the nominal alignment * to be violated when storing "packed" varlenas; the TOAST mechanism * takes care of hiding that from most code. * * NOTE: for types used in system tables, it is critical that the * size and alignment defined in pg_type agree with the way that the * compiler will lay out the field in a struct representing a table row. * ---------------- */ char typalign; /* ---------------- * typstorage tells if the type is prepared for toasting and what * the default strategy for attributes of this type should be. * * 'p' PLAIN type not prepared for toasting * 'e' EXTERNAL external storage possible, don't try to compress * 'x' EXTENDED try to compress and store external if required * 'm' MAIN like 'x' but try to keep in main tuple * ---------------- */ char typstorage; /* * This flag represents a "NOT NULL" constraint against this datatype. * * If true, the attnotnull column for a corresponding table column using * this datatype will always enforce the NOT NULL constraint. * * Used primarily for domain types. */ bool typnotnull; /* * Domains use typbasetype to show the base (or domain) type that the * domain is based on. Zero if the type is not a domain. */ Oid typbasetype; /* * Domains use typtypmod to record the typmod to be applied to their base * type (-1 if base type does not use a typmod). -1 if this type is not a * domain. */ int32 typtypmod; /* * typndims is the declared number of dimensions for an array domain type * (i.e., typbasetype is an array type). Otherwise zero. */ int32 typndims; /* * Collation: 0 if type cannot use collations, DEFAULT_COLLATION_OID for * collatable base types, possibly other OID for domains */ Oid typcollation; #ifdef CATALOG_VARLEN /* variable-length fields start here */ /* * If typdefaultbin is not NULL, it is the nodeToString representation of * a default expression for the type. Currently this is only used for * domains. */ pg_node_tree typdefaultbin; /* * typdefault is NULL if the type has no associated default value. If * typdefaultbin is not NULL, typdefault must contain a human-readable * version of the default expression represented by typdefaultbin. If * typdefaultbin is NULL and typdefault is not, then typdefault is the * external representation of the type's default value, which may be fed * to the type's input converter to produce a constant. */ text typdefault; /* * Access permissions */ aclitem typacl[1]; #endif } FormData_pg_type;
DATA | ( | insert | OID = 16(boolPGNSP PGUID 1 t b B t t\054 00 1000 boolin boolout boolrecv boolsend---c p f 0-1 0 0 _null_ _null_ _null_) |
) |
DESCR | ( | "range of dates" | ) |
DESCR | ( | "range of timestamps with time zone" | ) |
DESCR | ( | "range of timestamps without time zone" | ) |
DESCR | ( | "range of numerics" | ) |
DESCR | ( | "range of integers" | ) |
DESCR | ( | "txid snapshot" | ) |
DESCR | ( | "registered text search dictionary" | ) |
DESCR | ( | "registered text search configuration" | ) |
DESCR | ( | "query representation for text search" | ) |
DESCR | ( | "text representation for text search" | ) |
DESCR | ( | "UUID datatype" | ) |
DESCR | ( | "registered type" | ) |
DESCR | ( | "registered class" | ) |
DESCR | ( | "registered operator (with args)" | ) |
DESCR | ( | "registered operator" | ) |
DESCR | ( | "registered procedure (with args)" | ) |
DESCR | ( | " | numericprecision, decimal, | |
arbitrary precision number" | ||||
) |
DESCR | ( | "variable-length bit string" | ) |
DESCR | ( | "fixed-length bit string" | ) |
DESCR | ( | "time of day with time zone" | ) |
DESCR | ( | "@ <number> <units> | , | |
time interval" | ||||
) |
DESCR | ( | "date and time with time zone" | ) |
DESCR | ( | "date and time" | ) |
DESCR | ( | "time of day" | ) |
DESCR | ( | "date" | ) |
DESCR | ( | " | varcharlength, | |
non-blank-padded | string, | |||
variable storage length" | ||||
) |
DESCR | ( | " | charlength, | |
blank-padded | string, | |||
fixed storage length" | ||||
) |
DESCR | ( | "access control list" | ) |
DESCR | ( | "network IP address/ | netmask, | |
network address" | ||||
) |
DESCR | ( | "IP address/ | netmask, | |
host | address, | |||
netmask optional" | ||||
) |
DESCR | ( | "XX:XX:XX:XX:XX:XX | , | |
MAC address" | ||||
) |
DESCR | ( | "monetary | amounts, | |
$ | d, | |||
ddd.cc" | ||||
) |
DESCR | ( | "geometric circle '(center,radius)'" | ) |
DESCR | ( | " | abstime,abstime, | |
time interval" | ||||
) |
DESCR | ( | " | relative, | |
limited-range time interval(Unix delta time)" | ||||
) |
DESCR | ( | " | absolute, | |
limited-range date and time(Unix system time)" | ||||
) |
DESCR | ( | "double-precision floating point | number, | |
8-byte storage" | ||||
) |
DESCR | ( | "single-precision floating point | number, | |
4-byte storage" | ||||
) |
DESCR | ( | "" | ) |
DESCR | ( | "geometric line (not implemented)" | ) |
DESCR | ( | "geometric polygon '(pt1,...)'" | ) |
DESCR | ( | "geometric box '(lower left,upper right)'" | ) |
DESCR | ( | "geometric path '(pt1,...)'" | ) |
DESCR | ( | "geometric line segment '(pt1,pt2)'" | ) |
DESCR | ( | "geometric point '(x, y)'" | ) |
DESCR | ( | "storage manager" | ) |
DESCR | ( | "string representing an internal node tree" | ) |
DESCR | ( | "XML content" | ) |
DESCR | ( | "command identifier | type, | |
sequence in transaction id" | ||||
) |
DESCR | ( | "transaction id" | ) |
DESCR | ( | " | block, offset, | |
physical location of tuple" | ||||
) |
DESCR | ( | "object | identifieroid, | |
maximum 4 billion" | ||||
) |
DESCR | ( | "variable-length | string, | |
no limit specified" | ||||
) |
DESCR | ( | "registered procedure" | ) |
DESCR | ( | "-2 billion to 2 billion | integer, | |
4-byte storage" | ||||
) |
DESCR | ( | "array of | int2, | |
used in system tables" | ||||
) |
DESCR | ( | "-32 thousand to 32 | thousand, | |
2-byte storage" | ||||
) |
DESCR | ( | "~18 digit | integer, | |
8-byte storage" | ||||
) |
DESCR | ( | "63-byte type for storing system identifiers" | ) |
DESCR | ( | "single character" | ) |
DESCR | ( | "variable-length | string, | |
binary values escaped" | ||||
) |
DESCR | ( | " | boolean, | |
'true'/'false'" | ||||
) |
DESCR | ( | "range of bigints" | ) |