diff options
Diffstat (limited to 'src/include/utils/typcache.h')
| -rw-r--r-- | src/include/utils/typcache.h | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/src/include/utils/typcache.h b/src/include/utils/typcache.h index 41b645a58f8..ea799a8894f 100644 --- a/src/include/utils/typcache.h +++ b/src/include/utils/typcache.h @@ -92,6 +92,13 @@ typedef struct TypeCacheEntry FmgrInfo rng_subdiff_finfo; /* difference function, if any */ /* + * Domain's base type and typmod if it's a domain type. Zeroes if not + * domain, or if information hasn't been requested. + */ + Oid domainBaseType; + int32 domainBaseTypmod; + + /* * Domain constraint data if it's a domain type. NULL if not domain, or * if domain has no constraints, or if information hasn't been requested. */ @@ -123,9 +130,10 @@ typedef struct TypeCacheEntry #define TYPECACHE_BTREE_OPFAMILY 0x0200 #define TYPECACHE_HASH_OPFAMILY 0x0400 #define TYPECACHE_RANGE_INFO 0x0800 -#define TYPECACHE_DOMAIN_INFO 0x1000 -#define TYPECACHE_HASH_EXTENDED_PROC 0x2000 -#define TYPECACHE_HASH_EXTENDED_PROC_FINFO 0x4000 +#define TYPECACHE_DOMAIN_BASE_INFO 0x1000 +#define TYPECACHE_DOMAIN_CONSTR_INFO 0x2000 +#define TYPECACHE_HASH_EXTENDED_PROC 0x4000 +#define TYPECACHE_HASH_EXTENDED_PROC_FINFO 0x8000 /* * Callers wishing to maintain a long-lived reference to a domain's constraint @@ -163,6 +171,9 @@ extern TupleDesc lookup_rowtype_tupdesc_noerror(Oid type_id, int32 typmod, extern TupleDesc lookup_rowtype_tupdesc_copy(Oid type_id, int32 typmod); +extern TupleDesc lookup_rowtype_tupdesc_domain(Oid type_id, int32 typmod, + bool noError); + extern void assign_record_type_typmod(TupleDesc tupDesc); extern int compare_values_of_enum(TypeCacheEntry *tcache, Oid arg1, Oid arg2); |
