|
PostgreSQL Source Code git master
|


Go to the source code of this file.
Data Structures | |
| struct | GBT_VARKEY_R |
| struct | gbtree_vinfo |
Macros | |
| #define | GBT_FREE_IF_COPY(ptr1, ptr2) |
Typedefs | |
| typedef bytea | GBT_VARKEY |
Functions | |
| GBT_VARKEY_R | gbt_var_key_readable (const GBT_VARKEY *k) |
| GBT_VARKEY * | gbt_var_key_copy (const GBT_VARKEY_R *u) |
| GISTENTRY * | gbt_var_compress (GISTENTRY *entry, const gbtree_vinfo *tinfo) |
| GBT_VARKEY * | gbt_var_union (const GistEntryVector *entryvec, int32 *size, Oid collation, const gbtree_vinfo *tinfo, FmgrInfo *flinfo) |
| bool | gbt_var_same (Datum d1, Datum d2, Oid collation, const gbtree_vinfo *tinfo, FmgrInfo *flinfo) |
| float * | gbt_var_penalty (float *res, const GISTENTRY *o, const GISTENTRY *n, 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) |
| GIST_SPLITVEC * | gbt_var_picksplit (const GistEntryVector *entryvec, GIST_SPLITVEC *v, Oid collation, const gbtree_vinfo *tinfo, FmgrInfo *flinfo) |
| void | gbt_var_bin_union (Datum *u, GBT_VARKEY *e, Oid collation, const gbtree_vinfo *tinfo, FmgrInfo *flinfo) |
| #define GBT_FREE_IF_COPY | ( | ptr1, | |
| ptr2 | |||
| ) |
Definition at line 50 of file btree_utils_var.h.
| typedef bytea GBT_VARKEY |
Definition at line 11 of file btree_utils_var.h.
| void gbt_var_bin_union | ( | Datum * | u, |
| GBT_VARKEY * | e, | ||
| Oid | collation, | ||
| const gbtree_vinfo * | tinfo, | ||
| FmgrInfo * | flinfo | ||
| ) |
Definition at line 233 of file btree_utils_var.c.
References DatumGetPointer(), gbtree_vinfo::f_cmp, gbt_var_key_copy(), gbt_var_key_readable(), gbt_var_leaf2node(), GBT_VARKEY_R::lower, PointerGetDatum(), tinfo, and GBT_VARKEY_R::upper.
Referenced by gbt_numeric_penalty(), gbt_var_penalty(), gbt_var_picksplit(), and gbt_var_union().
| GISTENTRY * gbt_var_compress | ( | GISTENTRY * | entry, |
| const gbtree_vinfo * | tinfo | ||
| ) |
Definition at line 281 of file btree_utils_var.c.
References gbt_var_key_from_datum(), gistentryinit, GISTENTRY::key, GISTENTRY::leafkey, GISTENTRY::offset, GISTENTRY::page, palloc(), PG_DETOAST_DATUM, PointerGetDatum(), and GISTENTRY::rel.
Referenced by gbt_bit_compress(), gbt_bytea_compress(), gbt_numeric_compress(), and gbt_text_compress().
| bool gbt_var_consistent | ( | GBT_VARKEY_R * | key, |
| const void * | query, | ||
| StrategyNumber | strategy, | ||
| Oid | collation, | ||
| bool | is_leaf, | ||
| const gbtree_vinfo * | tinfo, | ||
| FmgrInfo * | flinfo | ||
| ) |
Definition at line 554 of file btree_utils_var.c.
References BTEqualStrategyNumber, BTGreaterEqualStrategyNumber, BTGreaterStrategyNumber, BTLessEqualStrategyNumber, BTLessStrategyNumber, BtreeGistNotEqualStrategyNumber, gbtree_vinfo::f_cmp, gbtree_vinfo::f_eq, gbtree_vinfo::f_ge, gbtree_vinfo::f_gt, gbtree_vinfo::f_le, gbtree_vinfo::f_lt, gbt_var_node_pf_match(), sort-test::key, and tinfo.
Referenced by gbt_bit_consistent(), gbt_bpchar_consistent(), gbt_bytea_consistent(), gbt_numeric_consistent(), and gbt_text_consistent().
| GBT_VARKEY * gbt_var_key_copy | ( | const GBT_VARKEY_R * | u | ) |
Definition at line 90 of file btree_utils_var.c.
References INTALIGN, GBT_VARKEY_R::lower, palloc0(), SET_VARSIZE(), GBT_VARKEY_R::upper, VARDATA(), VARHDRSZ, and VARSIZE().
Referenced by gbt_bit_l2n(), gbt_numeric_penalty(), gbt_var_bin_union(), and gbt_var_union().
| GBT_VARKEY_R gbt_var_key_readable | ( | const GBT_VARKEY * | k | ) |
Definition at line 57 of file btree_utils_var.c.
References INTALIGN, GBT_VARKEY_R::lower, GBT_VARKEY_R::upper, VARHDRSZ, and VARSIZE().
Referenced by gbt_bit_consistent(), gbt_bit_l2n(), gbt_bit_ssup_cmp(), gbt_bpchar_consistent(), gbt_bpchar_ssup_cmp(), gbt_bytea_consistent(), gbt_bytea_ssup_cmp(), gbt_numeric_consistent(), gbt_numeric_penalty(), gbt_numeric_ssup_cmp(), gbt_text_consistent(), gbt_text_ssup_cmp(), gbt_var_bin_union(), gbt_var_fetch(), gbt_var_node_cp_len(), gbt_var_node_truncate(), gbt_var_penalty(), gbt_var_picksplit(), gbt_var_same(), gbt_var_union(), and gbt_vsrt_cmp().
| float * gbt_var_penalty | ( | float * | res, |
| const GISTENTRY * | o, | ||
| const GISTENTRY * | n, | ||
| Oid | collation, | ||
| const gbtree_vinfo * | tinfo, | ||
| FmgrInfo * | flinfo | ||
| ) |
Definition at line 378 of file btree_utils_var.c.
References DatumGetPointer(), gbtree_vinfo::f_cmp, gbt_bytea_pf_match(), gbt_var_bin_union(), gbt_var_key_readable(), gbt_var_leaf2node(), gbt_var_node_cp_len(), GISTENTRY::key, GBT_VARKEY_R::lower, TupleDescData::natts, PointerGetDatum(), RelationData::rd_att, GISTENTRY::rel, tinfo, GBT_VARKEY_R::upper, VARDATA(), VARHDRSZ, and VARSIZE().
Referenced by gbt_bit_penalty(), gbt_bytea_penalty(), and gbt_text_penalty().
| GIST_SPLITVEC * gbt_var_picksplit | ( | const GistEntryVector * | entryvec, |
| GIST_SPLITVEC * | v, | ||
| Oid | collation, | ||
| const gbtree_vinfo * | tinfo, | ||
| FmgrInfo * | flinfo | ||
| ) |
Definition at line 458 of file btree_utils_var.c.
References gbt_vsrt_arg::collation, cur, DatumGetPointer(), FirstOffsetNumber, gbt_vsrt_arg::flinfo, gbt_var_bin_union(), gbt_var_key_readable(), gbt_var_leaf2node(), gbt_var_node_cp_len(), gbt_var_node_truncate(), gbt_vsrt_cmp(), Vsrt::i, i, GISTENTRY::key, GBT_VARKEY_R::lower, Max, GistEntryVector::n, OffsetNumberNext, palloc(), PointerGetDatum(), qsort_arg(), GIST_SPLITVEC::spl_ldatum, GIST_SPLITVEC::spl_left, GIST_SPLITVEC::spl_nleft, GIST_SPLITVEC::spl_nright, GIST_SPLITVEC::spl_rdatum, GIST_SPLITVEC::spl_right, Vsrt::t, tinfo, gbt_vsrt_arg::tinfo, gbtree_vinfo::trnc, GBT_VARKEY_R::upper, and GistEntryVector::vector.
Referenced by gbt_bit_picksplit(), gbt_bytea_picksplit(), gbt_numeric_picksplit(), and gbt_text_picksplit().
| bool gbt_var_same | ( | Datum | d1, |
| Datum | d2, | ||
| Oid | collation, | ||
| const gbtree_vinfo * | tinfo, | ||
| FmgrInfo * | flinfo | ||
| ) |
Definition at line 361 of file btree_utils_var.c.
References DatumGetPointer(), gbtree_vinfo::f_cmp, gbt_var_key_readable(), GBT_VARKEY_R::lower, tinfo, and GBT_VARKEY_R::upper.
Referenced by gbt_bit_same(), gbt_bytea_same(), gbt_numeric_same(), and gbt_text_same().
| GBT_VARKEY * gbt_var_union | ( | const GistEntryVector * | entryvec, |
| int32 * | size, | ||
| Oid | collation, | ||
| const gbtree_vinfo * | tinfo, | ||
| FmgrInfo * | flinfo | ||
| ) |
Definition at line 322 of file btree_utils_var.c.
References cur, DatumGetPointer(), gbt_var_bin_union(), gbt_var_key_copy(), gbt_var_key_readable(), gbt_var_node_cp_len(), gbt_var_node_truncate(), i, GISTENTRY::key, GistEntryVector::n, PointerGetDatum(), tinfo, gbtree_vinfo::trnc, and GistEntryVector::vector.
Referenced by gbt_bit_union(), gbt_bytea_union(), gbt_numeric_union(), and gbt_text_union().