60#include "utils/fmgrprotos.h"
64#ifdef STRESS_SORT_INT_MIN
65#define A_LESS_THAN_B INT_MIN
66#define A_GREATER_THAN_B INT_MAX
68#define A_LESS_THAN_B (-1)
69#define A_GREATER_THAN_B 1
87 if (bexisting ==
false)
103 if (bexisting ==
true)
142 return (
int)
a - (int)
b;
509 if (
a->dim1 !=
b->dim1)
512 for (
i = 0;
i <
a->dim1;
i++)
514 if (
a->values[
i] !=
b->values[
i])
516 if (
a->values[
i] >
b->values[
i])
556 if (cexisting == UCHAR_MAX)
#define PG_GETARG_CHAR(n)
#define PG_GETARG_POINTER(n)
#define PG_GETARG_INT64(n)
#define PG_RETURN_INT32(x)
#define PG_GETARG_INT32(n)
#define PG_GETARG_BOOL(n)
#define PG_GETARG_INT16(n)
Datum btoidvectorcmp(PG_FUNCTION_ARGS)
Datum btint4cmp(PG_FUNCTION_ARGS)
static Datum char_decrement(Relation rel, Datum existing, bool *underflow)
Datum btint4skipsupport(PG_FUNCTION_ARGS)
static Datum int8_decrement(Relation rel, Datum existing, bool *underflow)
Datum btboolcmp(PG_FUNCTION_ARGS)
static Datum bool_increment(Relation rel, Datum existing, bool *overflow)
static Datum int2_decrement(Relation rel, Datum existing, bool *underflow)
Datum btint2cmp(PG_FUNCTION_ARGS)
Datum btint24cmp(PG_FUNCTION_ARGS)
static Datum int4_increment(Relation rel, Datum existing, bool *overflow)
static Datum int4_decrement(Relation rel, Datum existing, bool *underflow)
static Datum oid_increment(Relation rel, Datum existing, bool *overflow)
Datum btoidcmp(PG_FUNCTION_ARGS)
Datum btoidskipsupport(PG_FUNCTION_ARGS)
static Datum bool_decrement(Relation rel, Datum existing, bool *underflow)
Datum btint2skipsupport(PG_FUNCTION_ARGS)
static Datum oid_decrement(Relation rel, Datum existing, bool *underflow)
static int btint2fastcmp(Datum x, Datum y, SortSupport ssup)
Datum btint84cmp(PG_FUNCTION_ARGS)
Datum btoidsortsupport(PG_FUNCTION_ARGS)
Datum btcharcmp(PG_FUNCTION_ARGS)
Datum btboolskipsupport(PG_FUNCTION_ARGS)
static int btoidfastcmp(Datum x, Datum y, SortSupport ssup)
Datum btint8sortsupport(PG_FUNCTION_ARGS)
Datum btint82cmp(PG_FUNCTION_ARGS)
static Datum int8_increment(Relation rel, Datum existing, bool *overflow)
Datum btint8skipsupport(PG_FUNCTION_ARGS)
Datum btint48cmp(PG_FUNCTION_ARGS)
static Datum int2_increment(Relation rel, Datum existing, bool *overflow)
static Datum char_increment(Relation rel, Datum existing, bool *overflow)
Datum btcharskipsupport(PG_FUNCTION_ARGS)
Datum btint8cmp(PG_FUNCTION_ARGS)
Datum btint4sortsupport(PG_FUNCTION_ARGS)
Datum btint42cmp(PG_FUNCTION_ARGS)
Datum btint28cmp(PG_FUNCTION_ARGS)
Datum btint2sortsupport(PG_FUNCTION_ARGS)
static Datum Int64GetDatum(int64 X)
static bool DatumGetBool(Datum X)
static int64 DatumGetInt64(Datum X)
static Oid DatumGetObjectId(Datum X)
static Datum Int16GetDatum(int16 X)
static Datum BoolGetDatum(bool X)
static Datum ObjectIdGetDatum(Oid X)
static uint8 DatumGetUInt8(Datum X)
static Datum UInt8GetDatum(uint8 X)
static Datum Int32GetDatum(int32 X)
static int16 DatumGetInt16(Datum X)
static int32 DatumGetInt32(Datum X)
static Datum CharGetDatum(char X)
struct SkipSupportData * SkipSupport
struct SortSupportData * SortSupport
SkipSupportIncDec decrement
SkipSupportIncDec increment
int(* comparator)(Datum x, Datum y, SortSupport ssup)
int ssup_datum_signed_cmp(Datum x, Datum y, SortSupport ssup)
int ssup_datum_int32_cmp(Datum x, Datum y, SortSupport ssup)