*/
#include "postgres.h"
-#include "btree_gist.h"
+#include "utils/builtins.h"
PG_MODULE_MAGIC;
Datum
gbtreekey_in(PG_FUNCTION_ARGS)
{
+ Oid typioparam = PG_GETARG_OID(1);
+
ereport(ERROR,
(errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
- errmsg("<datatype>key_in() not implemented")));
+ errmsg("cannot accept a value of type %s",
+ format_type_extended(typioparam, -1,
+ FORMAT_TYPE_ALLOW_INVALID))));
- PG_RETURN_POINTER(NULL);
+ PG_RETURN_VOID(); /* keep compiler quiet */
}
-#include "btree_utils_var.h"
-#include "utils/builtins.h"
Datum
gbtreekey_out(PG_FUNCTION_ARGS)
{
+ /* Sadly, we do not receive any indication of the specific type */
ereport(ERROR,
(errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
- errmsg("<datatype>key_out() not implemented")));
- PG_RETURN_POINTER(NULL);
+ errmsg("cannot display a value of type %s", "gbtreekey?")));
+
+ PG_RETURN_VOID(); /* keep compiler quiet */
}
Datum
ghstore_in(PG_FUNCTION_ARGS)
{
- elog(ERROR, "Not implemented");
- PG_RETURN_DATUM(0);
+ ereport(ERROR,
+ (errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
+ errmsg("cannot accept a value of type %s", "ghstore")));
+
+ PG_RETURN_VOID(); /* keep compiler quiet */
}
Datum
ghstore_out(PG_FUNCTION_ARGS)
{
- elog(ERROR, "Not implemented");
- PG_RETURN_DATUM(0);
+ ereport(ERROR,
+ (errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
+ errmsg("cannot display a value of type %s", "ghstore")));
+
+ PG_RETURN_VOID(); /* keep compiler quiet */
}
static GISTTYPE *
{
ereport(ERROR,
(errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
- errmsg("_intbig_in() not implemented")));
- PG_RETURN_DATUM(0);
+ errmsg("cannot accept a value of type %s", "intbig_gkey")));
+
+ PG_RETURN_VOID(); /* keep compiler quiet */
}
Datum
{
ereport(ERROR,
(errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
- errmsg("_intbig_out() not implemented")));
- PG_RETURN_DATUM(0);
+ errmsg("cannot display a value of type %s", "intbig_gkey")));
+
+ PG_RETURN_VOID(); /* keep compiler quiet */
}
static GISTTYPE *
{
ereport(ERROR,
(errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
- errmsg("ltree_gist_in() not implemented")));
- PG_RETURN_DATUM(0);
+ errmsg("cannot accept a value of type %s", "ltree_gist")));
+
+ PG_RETURN_VOID(); /* keep compiler quiet */
}
Datum
{
ereport(ERROR,
(errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
- errmsg("ltree_gist_out() not implemented")));
- PG_RETURN_DATUM(0);
+ errmsg("cannot display a value of type %s", "ltree_gist")));
+
+ PG_RETURN_VOID(); /* keep compiler quiet */
}
ltree_gist *
Datum
gtrgm_in(PG_FUNCTION_ARGS)
{
- elog(ERROR, "not implemented");
- PG_RETURN_DATUM(0);
+ ereport(ERROR,
+ (errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
+ errmsg("cannot accept a value of type %s", "gtrgm")));
+
+ PG_RETURN_VOID(); /* keep compiler quiet */
}
Datum
gtrgm_out(PG_FUNCTION_ARGS)
{
- elog(ERROR, "not implemented");
- PG_RETURN_DATUM(0);
+ ereport(ERROR,
+ (errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
+ errmsg("cannot display a value of type %s", "gtrgm")));
+
+ PG_RETURN_VOID(); /* keep compiler quiet */
}
static TRGM *
Datum
gtsvectorin(PG_FUNCTION_ARGS)
{
+ /* There's no need to support input of gtsvectors */
ereport(ERROR,
(errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
- errmsg("gtsvector_in not implemented")));
- PG_RETURN_DATUM(0);
+ errmsg("cannot accept a value of type %s", "gtsvector")));
+
+ PG_RETURN_VOID(); /* keep compiler quiet */
}
#define SINGOUTSTR "%d true bits, %d false bits"