PostgreSQL Source Code: contrib/btree_gist/btree_bytea.c Source File (original) (raw)

1

2

3

5

8#include "utils/fmgrprotos.h"

10

11

19

20

21

22

23static bool

25{

29}

30

31static bool

33{

37}

38

39static bool

41{

45}

46

47static bool

49{

53}

54

55static bool

57{

61}

62

65{

69}

70

72{

74 0,

75 true,

82 NULL

83};

84

85

86

87

88

89

92{

94

96}

97

100{

104

105

107 bool retval;

110

111

112 *recheck = false;

113

117}

118

121{

124

126 &tinfo, fcinfo->flinfo));

127}

128

131{

134

136 &tinfo, fcinfo->flinfo);

138}

139

142{

146

149}

150

153{

157

159 &tinfo, fcinfo->flinfo));

160}

161

162static int

164{

167

171

172

176

179

181}

182

185{

187

190

192}

static bool gbt_byteagt(const void *a, const void *b, Oid collation, FmgrInfo *flinfo)

Datum gbt_bytea_sortsupport(PG_FUNCTION_ARGS)

static bool gbt_byteage(const void *a, const void *b, Oid collation, FmgrInfo *flinfo)

Datum gbt_bytea_consistent(PG_FUNCTION_ARGS)

Datum gbt_bytea_compress(PG_FUNCTION_ARGS)

Datum gbt_bytea_union(PG_FUNCTION_ARGS)

Datum gbt_bytea_penalty(PG_FUNCTION_ARGS)

static const gbtree_vinfo tinfo

static bool gbt_byteaeq(const void *a, const void *b, Oid collation, FmgrInfo *flinfo)

static int gbt_bytea_ssup_cmp(Datum x, Datum y, SortSupport ssup)

Datum gbt_bytea_same(PG_FUNCTION_ARGS)

static int32 gbt_byteacmp(const void *a, const void *b, Oid collation, FmgrInfo *flinfo)

PG_FUNCTION_INFO_V1(gbt_bytea_compress)

static bool gbt_byteale(const void *a, const void *b, Oid collation, FmgrInfo *flinfo)

Datum gbt_bytea_picksplit(PG_FUNCTION_ARGS)

static bool gbt_bytealt(const void *a, const void *b, Oid collation, FmgrInfo *flinfo)

GBT_VARKEY * gbt_var_union(const GistEntryVector *entryvec, int32 *size, Oid collation, const gbtree_vinfo *tinfo, FmgrInfo *flinfo)

bool gbt_var_consistent(GBT_VARKEY_R *key, const void *query, StrategyNumber strategy, Oid collation, bool is_leaf, const gbtree_vinfo *tinfo, FmgrInfo *flinfo)

GISTENTRY * gbt_var_compress(GISTENTRY *entry, const gbtree_vinfo *tinfo)

GIST_SPLITVEC * gbt_var_picksplit(const GistEntryVector *entryvec, GIST_SPLITVEC *v, Oid collation, const gbtree_vinfo *tinfo, FmgrInfo *flinfo)

GBT_VARKEY_R gbt_var_key_readable(const GBT_VARKEY *k)

float * gbt_var_penalty(float *res, const GISTENTRY *o, const GISTENTRY *n, Oid collation, const gbtree_vinfo *tinfo, FmgrInfo *flinfo)

bool gbt_var_same(Datum d1, Datum d2, Oid collation, const gbtree_vinfo *tinfo, FmgrInfo *flinfo)

#define GBT_FREE_IF_COPY(ptr1, ptr2)

#define DirectFunctionCall2(func, arg1, arg2)

#define PG_GETARG_POINTER(n)

#define PG_GETARG_DATUM(n)

#define PG_GETARG_UINT16(n)

#define PG_DETOAST_DATUM(datum)

#define PG_RETURN_POINTER(x)

#define PG_GET_COLLATION()

#define PG_RETURN_BOOL(x)

#define DatumGetByteaP(X)

static bool DatumGetBool(Datum X)

static Datum PointerGetDatum(const void *X)

static Pointer DatumGetPointer(Datum X)

static int32 DatumGetInt32(Datum X)

struct SortSupportData * SortSupport

int(* comparator)(Datum x, Datum y, SortSupport ssup)

Datum byteaeq(PG_FUNCTION_ARGS)

Datum byteagt(PG_FUNCTION_ARGS)

Datum byteage(PG_FUNCTION_ARGS)

Datum byteacmp(PG_FUNCTION_ARGS)

Datum byteale(PG_FUNCTION_ARGS)

Datum bytealt(PG_FUNCTION_ARGS)