PostgreSQL Source Code git master
|
#include "postgres.h"
#include "access/xact.h"
#include "fmgr.h"
#include "mb/stringinfo_mb.h"
#include "nodes/params.h"
#include "parser/parse_node.h"
#include "storage/shmem.h"
#include "utils/datum.h"
#include "utils/lsyscache.h"
#include "utils/memutils.h"
Go to the source code of this file.
Functions | |
static void | paramlist_parser_setup (ParseState *pstate, void *arg) |
static Node * | paramlist_param_ref (ParseState *pstate, ParamRef *pref) |
ParamListInfo | makeParamList (int numParams) |
ParamListInfo | copyParamList (ParamListInfo from) |
Size | EstimateParamListSpace (ParamListInfo paramLI) |
void | SerializeParamList (ParamListInfo paramLI, char **start_address) |
ParamListInfo | RestoreParamList (char **start_address) |
char * | BuildParamLogString (ParamListInfo params, char **knownTextValues, int maxlen) |
void | ParamsErrorCallback (void *arg) |
char * BuildParamLogString | ( | ParamListInfo | params, |
char ** | knownTextValues, | ||
int | maxlen | ||
) |
Definition at line 335 of file params.c.
References ALLOCSET_DEFAULT_SIZES, AllocSetContextCreate, appendStringInfo(), appendStringInfoString(), appendStringInfoStringQuoted(), buf, CurrentMemoryContext, getTypeOutputInfo(), initStringInfo(), IsAbortedTransactionBlockState(), ParamExternData::isnull, MemoryContextDelete(), MemoryContextSwitchTo(), ParamListInfoData::numParams, OidIsValid, OidOutputFunctionCall(), ParamListInfoData::paramFetch, ParamListInfoData::params, ParamExternData::ptype, and ParamExternData::value.
Referenced by errdetail_params(), exec_bind_message(), and ExplainQueryParameters().
ParamListInfo copyParamList | ( | ParamListInfo | from | ) |
Definition at line 78 of file params.c.
References datumCopy(), get_typlenbyval(), i, ParamExternData::isnull, makeParamList(), ParamListInfoData::numParams, OidIsValid, ParamListInfoData::paramFetch, ParamListInfoData::params, ParamExternData::ptype, and ParamExternData::value.
Referenced by PerformCursorOpen(), and SPI_cursor_open_internal().
Size EstimateParamListSpace | ( | ParamListInfo | paramLI | ) |
Definition at line 167 of file params.c.
References add_size(), datumEstimateSpace(), get_typlenbyval(), i, ParamExternData::isnull, ParamListInfoData::numParams, OidIsValid, ParamListInfoData::paramFetch, ParamListInfoData::params, ParamExternData::ptype, and ParamExternData::value.
Referenced by ExecInitParallelPlan().
ParamListInfo makeParamList | ( | int | numParams | ) |
Definition at line 44 of file params.c.
References ParamListInfoData::numParams, palloc(), ParamListInfoData::paramCompile, ParamListInfoData::paramCompileArg, ParamListInfoData::paramFetch, ParamListInfoData::paramFetchArg, paramlist_parser_setup(), ParamListInfoData::paramValuesStr, ParamListInfoData::parserSetup, ParamListInfoData::parserSetupArg, and size.
Referenced by _SPI_convert_params(), copyParamList(), EvaluateParams(), exec_bind_message(), exec_eval_using_params(), plpgsql_estate_setup(), postquel_sub_params(), and RestoreParamList().
|
static |
Definition at line 131 of file params.c.
References get_typcollation(), if(), ParamRef::location, makeNode, ParamRef::number, ParamListInfoData::numParams, OidIsValid, ParseState::p_ref_hook_state, PARAM_EXTERN, ParamListInfoData::paramFetch, and ParamListInfoData::params.
Referenced by paramlist_parser_setup().
|
static |
Definition at line 120 of file params.c.
References arg, ParseState::p_paramref_hook, ParseState::p_ref_hook_state, and paramlist_param_ref().
Referenced by makeParamList().
void ParamsErrorCallback | ( | void * | arg | ) |
Definition at line 407 of file params.c.
References arg, data, and errcontext.
Referenced by exec_bind_message(), and exec_execute_message().
ParamListInfo RestoreParamList | ( | char ** | start_address | ) |
Definition at line 292 of file params.c.
References datumRestore(), i, ParamExternData::isnull, makeParamList(), ParamListInfoData::params, ParamExternData::pflags, ParamExternData::ptype, and ParamExternData::value.
Referenced by ExecParallelGetQueryDesc().
void SerializeParamList | ( | ParamListInfo | paramLI, |
char ** | start_address | ||
) |
Definition at line 229 of file params.c.
References datumSerialize(), get_typlenbyval(), i, ParamExternData::isnull, ParamListInfoData::numParams, OidIsValid, ParamListInfoData::paramFetch, ParamListInfoData::params, ParamExternData::pflags, ParamExternData::ptype, and ParamExternData::value.
Referenced by ExecInitParallelPlan().