PostgreSQL Source Code git master
Loading...
Searching...
No Matches
parse_param.h File Reference
Include dependency graph for parse_param.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

void setup_parse_fixed_parameters (ParseState *pstate, const Oid *paramTypes, int numParams)
 
void setup_parse_variable_parameters (ParseState *pstate, Oid **paramTypes, int *numParams)
 
void check_variable_parameters (ParseState *pstate, Query *query)
 
bool query_contains_extern_params (Query *query)
 

Function Documentation

◆ check_variable_parameters()

void check_variable_parameters ( ParseState pstate,
Query query 
)
extern

Definition at line 269 of file parse_param.c.

270{
272
273 /* If numParams is zero then no Params were generated, so no work */
274 if (*parstate->numParams > 0)
275 (void) query_tree_walker(query,
277 pstate, 0);
278}
#define query_tree_walker(q, w, c, f)
Definition nodeFuncs.h:158
static bool check_parameter_resolution_walker(Node *node, ParseState *pstate)
static int fb(int x)
void * p_ref_hook_state
Definition parse_node.h:242

References check_parameter_resolution_walker(), fb(), ParseState::p_ref_hook_state, and query_tree_walker.

Referenced by parse_analyze_varparams(), and transformExplainStmt().

◆ query_contains_extern_params()

bool query_contains_extern_params ( Query query)
extern

Definition at line 331 of file parse_param.c.

332{
333 return query_tree_walker(query,
335 NULL, 0);
336}
static bool query_contains_extern_params_walker(Node *node, void *context)

References fb(), query_contains_extern_params_walker(), and query_tree_walker.

Referenced by transformCreateTableAsStmt().

◆ setup_parse_fixed_parameters()

void setup_parse_fixed_parameters ( ParseState pstate,
const Oid paramTypes,
int  numParams 
)
extern

Definition at line 68 of file parse_param.c.

70{
72
73 parstate->paramTypes = paramTypes;
74 parstate->numParams = numParams;
75 pstate->p_ref_hook_state = parstate;
77 /* no need to use p_coerce_param_hook */
78}
#define palloc_object(type)
Definition fe_memutils.h:74
static Node * fixed_paramref_hook(ParseState *pstate, ParamRef *pref)
ParseParamRefHook p_paramref_hook
Definition parse_node.h:240

References fb(), fixed_paramref_hook(), ParseState::p_paramref_hook, ParseState::p_ref_hook_state, and palloc_object.

Referenced by parse_analyze_fixedparams().

◆ setup_parse_variable_parameters()

void setup_parse_variable_parameters ( ParseState pstate,
Oid **  paramTypes,
int numParams 
)
extern

Definition at line 84 of file parse_param.c.

86{
88
89 parstate->paramTypes = paramTypes;
90 parstate->numParams = numParams;
91 pstate->p_ref_hook_state = parstate;
94}
static Node * variable_coerce_param_hook(ParseState *pstate, Param *param, Oid targetTypeId, int32 targetTypeMod, int location)
static Node * variable_paramref_hook(ParseState *pstate, ParamRef *pref)
CoerceParamHook p_coerce_param_hook
Definition parse_node.h:241

References fb(), ParseState::p_coerce_param_hook, ParseState::p_paramref_hook, ParseState::p_ref_hook_state, palloc_object, variable_coerce_param_hook(), and variable_paramref_hook().

Referenced by parse_analyze_varparams(), and transformExplainStmt().