diff options
author | Andrew Dunstan | 2017-03-21 13:12:46 +0000 |
---|---|---|
committer | Andrew Dunstan | 2017-03-21 14:43:27 +0000 |
commit | 4b1c68d63e8651094cfe0631682acd999652ea70 (patch) | |
tree | 472468b746c1b701c81635c56a05e25789d44d2b /contrib/btree_gist/btree_utils_num.h | |
parent | eb2a6131beccaad2b39629191508062b70d3a1c6 (diff) |
Use CallerFInfoFunctionCall with btree_gist for numeric types
None of the existing types actually need to use this mechanism, but this
will allow support for enum types which will need it. A separate patch
will adjust the varlena types support for consistency.
Reviewed by Tom Lane and Anastasia Lubennikova
Discussion: http://postgr.es/m/[email protected]
Diffstat (limited to 'contrib/btree_gist/btree_utils_num.h')
-rw-r--r-- | contrib/btree_gist/btree_utils_num.h | 26 |
1 files changed, 13 insertions, 13 deletions
diff --git a/contrib/btree_gist/btree_utils_num.h b/contrib/btree_gist/btree_utils_num.h index 67d4968ba7b..17561fa9e4e 100644 --- a/contrib/btree_gist/btree_utils_num.h +++ b/contrib/btree_gist/btree_utils_num.h @@ -42,13 +42,13 @@ typedef struct /* Methods */ - bool (*f_gt) (const void *, const void *); /* greater than */ - bool (*f_ge) (const void *, const void *); /* greater or equal */ - bool (*f_eq) (const void *, const void *); /* equal */ - bool (*f_le) (const void *, const void *); /* less or equal */ - bool (*f_lt) (const void *, const void *); /* less than */ - int (*f_cmp) (const void *, const void *); /* key compare function */ - float8 (*f_dist) (const void *, const void *); /* key distance function */ + bool (*f_gt) (const void *, const void *, FmgrInfo *); /* greater than */ + bool (*f_ge) (const void *, const void *, FmgrInfo *); /* greater or equal */ + bool (*f_eq) (const void *, const void *, FmgrInfo *); /* equal */ + bool (*f_le) (const void *, const void *, FmgrInfo *); /* less or equal */ + bool (*f_lt) (const void *, const void *, FmgrInfo *); /* less than */ + int (*f_cmp) (const void *, const void *, FmgrInfo *); /* key compare function */ + float8 (*f_dist) (const void *, const void *, FmgrInfo *); /* key distance function */ } gbtree_ninfo; @@ -113,25 +113,25 @@ extern Interval *abs_interval(Interval *a); extern bool gbt_num_consistent(const GBT_NUMKEY_R *key, const void *query, const StrategyNumber *strategy, bool is_leaf, - const gbtree_ninfo *tinfo); + const gbtree_ninfo *tinfo, FmgrInfo *flinfo); extern float8 gbt_num_distance(const GBT_NUMKEY_R *key, const void *query, - bool is_leaf, const gbtree_ninfo *tinfo); + bool is_leaf, const gbtree_ninfo *tinfo, FmgrInfo *flinfo); extern GIST_SPLITVEC *gbt_num_picksplit(const GistEntryVector *entryvec, GIST_SPLITVEC *v, - const gbtree_ninfo *tinfo); + const gbtree_ninfo *tinfo, FmgrInfo *flinfo); extern GISTENTRY *gbt_num_compress(GISTENTRY *entry, const gbtree_ninfo *tinfo); extern GISTENTRY *gbt_num_fetch(GISTENTRY *entry, const gbtree_ninfo *tinfo); extern void *gbt_num_union(GBT_NUMKEY *out, const GistEntryVector *entryvec, - const gbtree_ninfo *tinfo); + const gbtree_ninfo *tinfo, FmgrInfo *flinfo); extern bool gbt_num_same(const GBT_NUMKEY *a, const GBT_NUMKEY *b, - const gbtree_ninfo *tinfo); + const gbtree_ninfo *tinfo, FmgrInfo *flinfo); extern void gbt_num_bin_union(Datum *u, GBT_NUMKEY *e, - const gbtree_ninfo *tinfo); + const gbtree_ninfo *tinfo, FmgrInfo *flinfo); #endif |