PostgreSQL Source Code: src/backend/access/nbtree/nbtcompare.c File Reference (original) (raw)
#include "[postgres.h](postgres%5F8h%5Fsource.html)"
#include <limits.h>
#include "utils/fmgrprotos.h"
#include "[utils/skipsupport.h](skipsupport%5F8h%5Fsource.html)"
#include "[utils/sortsupport.h](sortsupport%5F8h%5Fsource.html)"
Go to the source code of this file.
◆ A_GREATER_THAN_B
#define A_GREATER_THAN_B 1
◆ A_LESS_THAN_B
#define A_LESS_THAN_B (-1)
◆ bool_decrement()
◆ bool_increment()
◆ btboolcmp()
◆ btboolskipsupport()
Definition at line 115 of file nbtcompare.c.
116{
118
123
125}
#define PG_GETARG_POINTER(n)
static Datum bool_increment(Relation rel, Datum existing, bool *overflow)
static Datum bool_decrement(Relation rel, Datum existing, bool *underflow)
struct SkipSupportData * SkipSupport
SkipSupportIncDec decrement
SkipSupportIncDec increment
References bool_decrement(), bool_increment(), BoolGetDatum(), SkipSupportData::decrement, SkipSupportData::high_elem, SkipSupportData::increment, SkipSupportData::low_elem, PG_GETARG_POINTER, and PG_RETURN_VOID.
◆ btcharcmp()
◆ btcharskipsupport()
Definition at line 588 of file nbtcompare.c.
589{
591
594
595
598
600}
static Datum char_decrement(Relation rel, Datum existing, bool *underflow)
static Datum char_increment(Relation rel, Datum existing, bool *overflow)
static Datum UInt8GetDatum(uint8 X)
References char_decrement(), char_increment(), SkipSupportData::decrement, SkipSupportData::high_elem, SkipSupportData::increment, SkipSupportData::low_elem, PG_GETARG_POINTER, PG_RETURN_VOID, and UInt8GetDatum().
◆ btint24cmp()
◆ btint28cmp()
◆ btint2cmp()
◆ btint2fastcmp()
◆ btint2skipsupport()
Definition at line 187 of file nbtcompare.c.
188{
190
195
197}
static Datum int2_decrement(Relation rel, Datum existing, bool *underflow)
static Datum int2_increment(Relation rel, Datum existing, bool *overflow)
static Datum Int16GetDatum(int16 X)
References SkipSupportData::decrement, SkipSupportData::high_elem, SkipSupportData::increment, Int16GetDatum(), int2_decrement(), int2_increment(), SkipSupportData::low_elem, PG_GETARG_POINTER, PG_INT16_MAX, PG_INT16_MIN, and PG_RETURN_VOID.
◆ btint2sortsupport()
◆ btint42cmp()
◆ btint48cmp()
◆ btint4cmp()
◆ btint4skipsupport()
Definition at line 255 of file nbtcompare.c.
256{
258
263
265}
static Datum int4_increment(Relation rel, Datum existing, bool *overflow)
static Datum int4_decrement(Relation rel, Datum existing, bool *underflow)
static Datum Int32GetDatum(int32 X)
References SkipSupportData::decrement, SkipSupportData::high_elem, SkipSupportData::increment, Int32GetDatum(), int4_decrement(), int4_increment(), SkipSupportData::low_elem, PG_GETARG_POINTER, PG_INT32_MAX, PG_INT32_MIN, and PG_RETURN_VOID.
◆ btint4sortsupport()
◆ btint82cmp()
◆ btint84cmp()
◆ btint8cmp()
◆ btint8fastcmp()
◆ btint8skipsupport()
Definition at line 343 of file nbtcompare.c.
344{
346
351
353}
Datum Int64GetDatum(int64 X)
static Datum int8_decrement(Relation rel, Datum existing, bool *underflow)
static Datum int8_increment(Relation rel, Datum existing, bool *overflow)
References SkipSupportData::decrement, SkipSupportData::high_elem, SkipSupportData::increment, Int64GetDatum(), int8_decrement(), int8_increment(), SkipSupportData::low_elem, PG_GETARG_POINTER, PG_INT64_MAX, PG_INT64_MIN, and PG_RETURN_VOID.
◆ btint8sortsupport()
◆ btoidcmp()
◆ btoidfastcmp()
◆ btoidskipsupport()
Definition at line 509 of file nbtcompare.c.
510{
512
517
519}
static Datum oid_increment(Relation rel, Datum existing, bool *overflow)
static Datum oid_decrement(Relation rel, Datum existing, bool *underflow)
static Datum ObjectIdGetDatum(Oid X)
References SkipSupportData::decrement, SkipSupportData::high_elem, SkipSupportData::increment, InvalidOid, SkipSupportData::low_elem, ObjectIdGetDatum(), oid_decrement(), oid_increment(), OID_MAX, PG_GETARG_POINTER, and PG_RETURN_VOID.
◆ btoidsortsupport()
◆ btoidvectorcmp()
Definition at line 522 of file nbtcompare.c.
523{
526 int i;
527
528
531
532 for (i = 0; i < a->dim1; i++)
533 {
534 if (a->values[i] != b->values[i])
535 {
536 if (a->values[i] > b->values[i])
538 else
540 }
541 }
543}
References a, A_GREATER_THAN_B, A_LESS_THAN_B, b, i, PG_GETARG_POINTER, and PG_RETURN_INT32.
Referenced by oidvectoreq(), oidvectorge(), oidvectorgt(), oidvectorle(), oidvectorlt(), and oidvectorne().