PostgreSQL Source Code
git master
|
#include "postgres.h"
#include "access/detoast.h"
#include "common/hashfn.h"
#include "fmgr.h"
#include "utils/datum.h"
#include "utils/expandeddatum.h"
#include "utils/fmgrprotos.h"
Go to the source code of this file.
Functions | |
Size | datumGetSize (Datum value, bool typByVal, int typLen) |
Datum | datumCopy (Datum value, bool typByVal, int typLen) |
Datum | datumTransfer (Datum value, bool typByVal, int typLen) |
bool | datumIsEqual (Datum value1, Datum value2, bool typByVal, int typLen) |
bool | datum_image_eq (Datum value1, Datum value2, bool typByVal, int typLen) |
uint32 | datum_image_hash (Datum value, bool typByVal, int typLen) |
Datum | btequalimage (PG_FUNCTION_ARGS) |
Size | datumEstimateSpace (Datum value, bool isnull, bool typByVal, int typLen) |
void | datumSerialize (Datum value, bool isnull, bool typByVal, int typLen, char **start_address) |
Datum | datumRestore (char **start_address, bool *isnull) |
Datum btequalimage | ( | PG_FUNCTION_ARGS | ) |
Definition at line 266 of file datum.c.
References DatumGetCString(), DatumGetPointer(), elog, ERROR, pfree(), PG_DETOAST_DATUM_PACKED, s1, s2, toast_raw_datum_size(), VARDATA_ANY, and VARHDRSZ.
Referenced by _bt_keep_natts_fast(), MemoizeHash_equal(), record_image_eq(), and ri_KeysEqual().
Definition at line 338 of file datum.c.
References DatumGetCString(), DatumGetPointer(), elog, ERROR, hash_bytes(), len, pfree(), PG_DETOAST_DATUM_PACKED, toast_raw_datum_size(), val, value, VARDATA_ANY, and VARHDRSZ.
Referenced by MemoizeHash_hash().
Definition at line 132 of file datum.c.
References DatumGetEOHP(), DatumGetPointer(), datumGetSize(), EOH_flatten_into(), EOH_get_flat_size(), palloc(), PointerGetDatum(), res, value, VARATT_IS_EXTERNAL_EXPANDED, and VARSIZE_ANY.
Referenced by _copyConst(), accumArrayResult(), advance_transition_function(), advance_windowaggregate(), advance_windowaggregate_base(), array_agg_combine(), array_set_element_expanded(), assign_simple_var(), brin_deform_tuple(), brin_inclusion_add_value(), brin_inclusion_union(), brin_minmax_add_value(), brin_minmax_union(), calculate_frame_offsets(), CatCacheCopyKeys(), collectMatchBitmap(), compute_array_stats(), compute_distinct_stats(), compute_expr_stats(), compute_index_stats(), compute_scalar_stats(), CopyIndexAttOptions(), copyParamList(), create_list_bounds(), create_range_bounds(), CreateTupleDescCopyConstr(), datumTransfer(), eval_const_expressions_mutator(), eval_windowaggregates(), eval_windowfunction(), evaluate_expr(), exec_eval_using_params(), ExecAggCopyTransValue(), ExecAggInitGroup(), ExecComputeStoredGenerated(), ExecEvalPreOrderedDistinctSingle(), expanded_record_set_field_internal(), expanded_record_set_fields(), get_actual_variable_endpoint(), get_attoptions(), get_qual_for_list(), get_stats_slot_range(), get_variable_range(), getDatumCopy(), getmissingattr(), initialize_aggregate(), initialize_windowaggregate(), partition_bounds_copy(), pattern_fixed_prefix(), postquel_get_single_result(), process_ordered_aggregate_single(), range_add_value(), RelationBuildTupleDesc(), reorderqueue_push(), spg_range_quad_inner_consistent(), spg_text_inner_consistent(), spgist_name_inner_consistent(), spgMakeInnerItem(), spgNewHeapItem(), tuplesort_getdatum(), tuplesort_putdatum(), and union_tuples().
Definition at line 412 of file datum.c.
References DatumGetEOHP(), DatumGetPointer(), datumGetSize(), EOH_get_flat_size(), value, and VARATT_IS_EXTERNAL_EXPANDED.
Referenced by EstimateParamExecSpace(), and EstimateParamListSpace().
Definition at line 65 of file datum.c.
References Assert, DatumGetPointer(), elog, ereport, errcode(), errmsg(), ERROR, PointerIsValid, size, value, and VARSIZE_ANY.
Referenced by datumCopy(), datumEstimateSpace(), datumIsEqual(), datumSerialize(), outDatum(), and writetup_datum().
Definition at line 223 of file datum.c.
References DatumGetPointer(), datumGetSize(), res, s1, and s2.
Referenced by _equalConst(), coerce_type(), equalTupleDescs(), find_compatible_trans(), heap_attr_equals(), and partition_bounds_equal().
Definition at line 521 of file datum.c.
References Assert, palloc(), PointerGetDatum(), and val.
Referenced by RestoreParamExecParams(), and RestoreParamList().
Definition at line 459 of file datum.c.
References DatumGetEOHP(), DatumGetPointer(), datumGetSize(), EOH_flatten_into(), EOH_get_flat_size(), palloc(), pfree(), value, and VARATT_IS_EXTERNAL_EXPANDED.
Referenced by SerializeParamExecParams(), and SerializeParamList().
Definition at line 194 of file datum.c.
References CurrentMemoryContext, datumCopy(), DatumGetPointer(), TransferExpandedObject(), value, and VARATT_IS_EXTERNAL_EXPANDED_RW.
Referenced by exec_assign_value(), exec_stmt_block(), and SPI_datumTransfer().