29 #define EEO_FLAG_INTERPRETER_INITIALIZED (1 << 1)
31 #define EEO_FLAG_DIRECT_THREADED (1 << 2)
751 "size of ExprEvalStep exceeds 64 bytes");
883 Datum newValue,
bool newValueIsNull,
884 Datum oldValue,
bool oldValueIsNull);
void ExecEvalParamExtern(ExprState *state, ExprEvalStep *op, ExprContext *econtext)
void ExecEvalFieldStoreForm(ExprState *state, ExprEvalStep *op, ExprContext *econtext)
void ExecEvalGroupingFunc(ExprState *state, ExprEvalStep *op)
struct SubscriptExecSteps SubscriptExecSteps
void ExecEvalRow(ExprState *state, ExprEvalStep *op)
void ExecEvalFieldStoreDeForm(ExprState *state, ExprEvalStep *op, ExprContext *econtext)
void ExecEvalCurrentOfExpr(ExprState *state, ExprEvalStep *op)
void ExecEvalSQLValueFunction(ExprState *state, ExprEvalStep *op)
void ExecEvalRowNull(ExprState *state, ExprEvalStep *op, ExprContext *econtext)
struct SubscriptingRefState SubscriptingRefState
void ExecEvalArrayExpr(ExprState *state, ExprEvalStep *op)
void ExecEvalParamSet(ExprState *state, ExprEvalStep *op, ExprContext *econtext)
void ExecEvalCoerceViaIOSafe(ExprState *state, ExprEvalStep *op)
Datum ExecInterpExprStillValid(ExprState *state, ExprContext *econtext, bool *isNull)
void ExecEvalConvertRowtype(ExprState *state, ExprEvalStep *op, ExprContext *econtext)
bool ExecEvalPreOrderedDistinctMulti(AggState *aggstate, AggStatePerTrans pertrans)
void ExecEvalFieldSelect(ExprState *state, ExprEvalStep *op, ExprContext *econtext)
int ExecEvalJsonExprPath(ExprState *state, ExprEvalStep *op, ExprContext *econtext)
void ExecEvalConstraintNotNull(ExprState *state, ExprEvalStep *op)
void ExprEvalPushStep(ExprState *es, const ExprEvalStep *s)
void ExecEvalScalarArrayOp(ExprState *state, ExprEvalStep *op)
void ExecEvalAggOrderedTransDatum(ExprState *state, ExprEvalStep *op, ExprContext *econtext)
void ExecEvalParamExec(ExprState *state, ExprEvalStep *op, ExprContext *econtext)
void ExecEvalJsonCoercion(ExprState *state, ExprEvalStep *op, ExprContext *econtext)
struct ExprEvalRowtypeCache ExprEvalRowtypeCache
void ExecAggInitGroup(AggState *aggstate, AggStatePerTrans pertrans, AggStatePerGroup pergroup, ExprContext *aggcontext)
void ExecEvalNextValueExpr(ExprState *state, ExprEvalStep *op)
void ExecEvalSysVar(ExprState *state, ExprEvalStep *op, ExprContext *econtext, TupleTableSlot *slot)
void ExecEvalMinMax(ExprState *state, ExprEvalStep *op)
void ExecEvalSubPlan(ExprState *state, ExprEvalStep *op, ExprContext *econtext)
void ExecEvalJsonIsPredicate(ExprState *state, ExprEvalStep *op)
bool(* ExecEvalBoolSubroutine)(ExprState *state, struct ExprEvalStep *op, ExprContext *econtext)
Datum ExecAggCopyTransValue(AggState *aggstate, AggStatePerTrans pertrans, Datum newValue, bool newValueIsNull, Datum oldValue, bool oldValueIsNull)
struct ExprEvalStep ExprEvalStep
void ExecEvalMergeSupportFunc(ExprState *state, ExprEvalStep *op, ExprContext *econtext)
void CheckExprStillValid(ExprState *state, ExprContext *econtext)
void ExecEvalJsonConstructor(ExprState *state, ExprEvalStep *op, ExprContext *econtext)
void ExecEvalWholeRowVar(ExprState *state, ExprEvalStep *op, ExprContext *econtext)
void ExecEvalHashedScalarArrayOp(ExprState *state, ExprEvalStep *op, ExprContext *econtext)
void ExecEvalJsonCoercionFinish(ExprState *state, ExprEvalStep *op)
void ExecReadyInterpretedExpr(ExprState *state)
void ExecEvalRowNotNull(ExprState *state, ExprEvalStep *op, ExprContext *econtext)
ExprEvalOp ExecEvalStepOp(ExprState *state, ExprEvalStep *op)
void(* ExecEvalSubroutine)(ExprState *state, struct ExprEvalStep *op, ExprContext *econtext)
@ EEOP_FUNCEXPR_STRICT_FUSAGE
@ EEOP_HASHDATUM_NEXT32_STRICT
@ EEOP_JSONEXPR_COERCION_FINISH
@ EEOP_HASHDATUM_FIRST_STRICT
@ EEOP_AGG_PLAIN_PERGROUP_NULLCHECK
@ EEOP_AGG_STRICT_DESERIALIZE
@ EEOP_BOOLTEST_IS_NOT_FALSE
@ EEOP_AGG_PLAIN_TRANS_BYREF
@ EEOP_AGG_PRESORTED_DISTINCT_MULTI
@ EEOP_AGG_PLAIN_TRANS_BYVAL
@ EEOP_NULLTEST_ROWISNOTNULL
@ EEOP_ASSIGN_TMP_MAKE_RO
@ EEOP_BOOL_OR_STEP_FIRST
@ EEOP_AGG_STRICT_INPUT_CHECK_NULLS
@ EEOP_AGG_STRICT_INPUT_CHECK_ARGS
@ EEOP_NULLTEST_ROWISNULL
@ EEOP_NULLTEST_ISNOTNULL
@ EEOP_MERGE_SUPPORT_FUNC
@ EEOP_AGG_PRESORTED_DISTINCT_SINGLE
@ EEOP_BOOL_AND_STEP_FIRST
@ EEOP_BOOL_AND_STEP_LAST
@ EEOP_AGG_ORDERED_TRANS_DATUM
@ EEOP_HASHDATUM_SET_INITVAL
@ EEOP_AGG_PLAIN_TRANS_STRICT_BYREF
@ EEOP_BOOLTEST_IS_NOT_TRUE
@ EEOP_AGG_PLAIN_TRANS_INIT_STRICT_BYVAL
@ EEOP_AGG_PLAIN_TRANS_STRICT_BYVAL
@ EEOP_AGG_PLAIN_TRANS_INIT_STRICT_BYREF
@ EEOP_HASHED_SCALARARRAYOP
@ EEOP_AGG_ORDERED_TRANS_TUPLE
void ExecEvalConstraintCheck(ExprState *state, ExprEvalStep *op)
StaticAssertDecl(sizeof(ExprEvalStep)<=64, "size of ExprEvalStep exceeds 64 bytes")
void ExecEvalArrayCoerce(ExprState *state, ExprEvalStep *op, ExprContext *econtext)
void ExecEvalFuncExprStrictFusage(ExprState *state, ExprEvalStep *op, ExprContext *econtext)
void ExecEvalFuncExprFusage(ExprState *state, ExprEvalStep *op, ExprContext *econtext)
void ExecEvalXmlExpr(ExprState *state, ExprEvalStep *op)
bool ExecEvalPreOrderedDistinctSingle(AggState *aggstate, AggStatePerTrans pertrans)
struct JsonConstructorExprState JsonConstructorExprState
void ExecEvalAggOrderedTransTuple(ExprState *state, ExprEvalStep *op, ExprContext *econtext)
Datum(* PGFunction)(FunctionCallInfo fcinfo)
struct ExprEvalStep::@55::@95 subplan
struct ExprEvalStep::@55::@65 jump
struct ExprEvalStep::@55::@93 grouping_func
ExprState * elemexprstate
struct ExprEvalStep::@55::@80 fieldselect
WindowFuncExprState * wfstate
void * json_coercion_cache
ExecEvalBoolSubroutine subscriptfunc
ExprEvalRowtypeCache * rowcache
struct ExprEvalStep::@55::@78 rowcompare_final
struct ExprEvalStep::@55::@86 hashdatum
struct ExprEvalStep::@55::@60 assign_tmp
struct ExprEvalStep::@55::@100 agg_trans
struct ExprEvalStep::@55::@57 var
struct ExprEvalStep::@55::@63 boolexpr
struct ExprEvalStep::@55::@98 agg_plain_pergroup_nullcheck
struct ExprEvalStep::@55::@101 is_json
struct ExprEvalStep::@55::@91 json_constructor
struct ScalarArrayOpExprHashTable * elements_tab
struct SubscriptingRefState * state
struct ExprEvalStep::@55::@88 scalararrayop
struct ExprEvalStep::@55::@92 aggref
AggStatePerTrans pertrans
struct JsonExprState * jsestate
struct ExprEvalStep::@55::@64 qualexpr
ExecEvalSubroutine paramfunc
FunctionCallInfo fcinfo_data_in
struct ExprEvalStep::@55::@75 arraycoerce
struct ExprEvalStep::@55::@82 sbsref_subscript
struct ExprEvalStep::@55::@76 row
struct ExprEvalStep::@55::@62 func
struct ExprEvalStep::@55::@94 window_func
struct ExprEvalStep::@55::@77 rowcompare_step
struct ExprEvalStep::@55::@74 arrayexpr
ExprEvalRowtypeCache * incache
const TupleTableSlotOps * kind
struct ExprEvalStep::@55::@102 jsonexpr
FunctionCallInfo fcinfo_data
struct ExprEvalStep::@55::@66 nulltest_row
struct ExprEvalStep::@55::@84 domaincheck
struct ExprEvalStep::@55::@103 jsonexpr_coercion
struct ExprEvalStep::@55::@70 make_readonly
ErrorSaveContext * escontext
union ExprEvalStep::@55 d
struct ExprEvalStep::@55::@87 convert_rowtype
struct ExprEvalStep::@55::@73 nextvalueexpr
struct ExprEvalStep::@55::@90 xmlexpr
struct ExprEvalStep::@55::@71 iocoerce
struct ExprEvalStep::@55::@68 cparam
struct ExprEvalStep::@55::@58 wholerow
struct ExprEvalStep::@55::@69 casetest
FunctionCallInfo fcinfo_data_out
ExecEvalSubroutine subscriptfunc
ExprEvalRowtypeCache * outcache
struct ExprEvalStep::@55::@83 sbsref
struct ExprEvalStep::@55::@72 sqlvaluefunction
struct ExprEvalStep::@55::@97 agg_strict_input_check
struct ExprEvalStep::@55::@61 constval
ExprEvalRowtypeCache rowcache
struct ExprEvalStep::@55::@81 fieldstore
struct JsonConstructorExprState * jcstate
struct ExprEvalStep::@55::@89 hashedscalararrayop
struct ExprEvalStep::@55::@56 fetch
struct ExprEvalStep::@55::@67 param
struct ExprEvalStep::@55::@85 hashdatum_initvalue
struct ExprEvalStep::@55::@59 assign_var
struct ExprEvalStep::@55::@99 agg_presorted_distinctcheck
struct ExprEvalStep::@55::@79 minmax
struct ArrayMapState * amstate
struct ExprEvalStep::@55::@96 agg_deserialize
JsonConstructorExpr * constructor
struct JsonConstructorExprState::@104 * arg_type_cache
ExecEvalSubroutine sbs_fetch_old
ExecEvalBoolSubroutine sbs_check_subscripts
ExecEvalSubroutine sbs_assign
ExecEvalSubroutine sbs_fetch