25 #include "utils/fmgroids.h"
137 elog(
ERROR,
"cache lookup failed for type %u", type_oid);
147 array_base_type = typeform->typelem;
149 if (IsTrueArrayType(typeform) &&
150 typeform->typstorage != TYPSTORAGE_PLAIN)
162 elog(
ERROR,
"cache lookup failed for type %u", type_oid);
165 type_oid = array_base_type;
293 buf =
printTypmod(
"character varying", typemod, typeform->typmodout);
451 int numargs = oidArray->
dim1;
456 total = 20 * numargs + 1;
461 for (num = 0; num < numargs; num++)
465 size_t slen = strlen(
typename);
467 if (left < (slen + 2))
476 strcat(result,
", ");
479 strcat(result,
typename);
int32 numeric_maximum_size(int32 typmod)
#define FORMAT_TYPE_ALLOW_INVALID
#define FORMAT_TYPE_INVALID_AS_NULL
#define FORMAT_TYPE_TYPEMOD_GIVEN
#define FORMAT_TYPE_FORCE_QUALIFY
#define Assert(condition)
static void PGresult * res
#define OidFunctionCall1(functionId, arg1)
#define PG_GETARG_POINTER(n)
#define PG_RETURN_TEXT_P(x)
#define PG_GETARG_INT32(n)
#define HeapTupleIsValid(tuple)
char * get_namespace_name_or_temp(Oid nspid)
int GetDatabaseEncoding(void)
char * pstrdup(const char *in)
void * repalloc(void *pointer, Size size)
bool TypeIsVisible(Oid typid)
FormData_pg_type * Form_pg_type
static char * DatumGetCString(Datum X)
static Datum ObjectIdGetDatum(Oid X)
static Datum Int32GetDatum(int32 X)
char * psprintf(const char *fmt,...)
char * quote_qualified_identifier(const char *qualifier, const char *ident)
Oid values[FLEXIBLE_ARRAY_MEMBER]
void ReleaseSysCache(HeapTuple tuple)
HeapTuple SearchSysCache1(int cacheId, Datum key1)
text * cstring_to_text(const char *s)
int pg_encoding_max_length(int encoding)