37 #define PSEUDOTYPE_DUMMY_INPUT_FUNC(typname) \
39 typname##_in(PG_FUNCTION_ARGS) \
42 (errcode(ERRCODE_FEATURE_NOT_SUPPORTED), \
43 errmsg("cannot accept a value of type %s", #typname))); \
48 extern int no_such_variable
50 #define PSEUDOTYPE_DUMMY_IO_FUNCS(typname) \
51 PSEUDOTYPE_DUMMY_INPUT_FUNC(typname); \
54 typname##_out(PG_FUNCTION_ARGS) \
57 (errcode(ERRCODE_FEATURE_NOT_SUPPORTED), \
58 errmsg("cannot display a value of type %s", #typname))); \
63 extern int no_such_variable
71 #define PSEUDOTYPE_DUMMY_RECEIVE_FUNC(typname) \
73 typname##_recv(PG_FUNCTION_ARGS) \
76 (errcode(ERRCODE_FEATURE_NOT_SUPPORTED), \
77 errmsg("cannot accept a value of type %s", #typname))); \
82 extern int no_such_variable
84 #define PSEUDOTYPE_DUMMY_BINARY_IO_FUNCS(typname) \
85 PSEUDOTYPE_DUMMY_RECEIVE_FUNC(typname); \
88 typname##_send(PG_FUNCTION_ARGS) \
91 (errcode(ERRCODE_FEATURE_NOT_SUPPORTED), \
92 errmsg("cannot display a value of type %s", #typname))); \
97 extern int no_such_variable
309 (
errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
310 errmsg(
"cannot accept a value of a shell type")));
319 (
errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
320 errmsg(
"cannot display a value of a shell type")));
Datum array_send(PG_FUNCTION_ARGS)
Datum array_out(PG_FUNCTION_ARGS)
int errcode(int sqlerrcode)
int errmsg(const char *fmt,...)
#define ereport(elevel,...)
Datum enum_out(PG_FUNCTION_ARGS)
#define PG_RETURN_BYTEA_P(x)
#define PG_GETARG_POINTER(n)
#define PG_RETURN_CSTRING(x)
#define PG_GETARG_CSTRING(n)
char * pstrdup(const char *in)
Datum multirange_out(PG_FUNCTION_ARGS)
Datum anyrange_out(PG_FUNCTION_ARGS)
Datum pg_node_tree_send(PG_FUNCTION_ARGS)
Datum anymultirange_out(PG_FUNCTION_ARGS)
#define PSEUDOTYPE_DUMMY_RECEIVE_FUNC(typname)
Datum cstring_out(PG_FUNCTION_ARGS)
Datum anycompatiblearray_send(PG_FUNCTION_ARGS)
Datum shell_in(PG_FUNCTION_ARGS)
Datum void_send(PG_FUNCTION_ARGS)
Datum void_in(PG_FUNCTION_ARGS)
Datum void_recv(PG_FUNCTION_ARGS)
Datum anycompatiblemultirange_out(PG_FUNCTION_ARGS)
#define PSEUDOTYPE_DUMMY_INPUT_FUNC(typname)
Datum cstring_recv(PG_FUNCTION_ARGS)
Datum anyarray_out(PG_FUNCTION_ARGS)
Datum pg_node_tree_out(PG_FUNCTION_ARGS)
#define PSEUDOTYPE_DUMMY_BINARY_IO_FUNCS(typname)
#define PSEUDOTYPE_DUMMY_IO_FUNCS(typname)
Datum void_out(PG_FUNCTION_ARGS)
Datum anyarray_send(PG_FUNCTION_ARGS)
Datum cstring_in(PG_FUNCTION_ARGS)
Datum anycompatiblerange_out(PG_FUNCTION_ARGS)
Datum anyenum_out(PG_FUNCTION_ARGS)
Datum shell_out(PG_FUNCTION_ARGS)
Datum anycompatiblearray_out(PG_FUNCTION_ARGS)
Datum cstring_send(PG_FUNCTION_ARGS)
Datum range_out(PG_FUNCTION_ARGS)
StringInfoData * StringInfo
Datum textsend(PG_FUNCTION_ARGS)
Datum textout(PG_FUNCTION_ARGS)