28 #define EEO_FLAG_INTERPRETER_INITIALIZED (1 << 1)
30 #define EEO_FLAG_DIRECT_THREADED (1 << 2)
697 "size of ExprEvalStep exceeds 64 bytes");
819 Datum newValue,
bool newValueIsNull,
820 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)
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)
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)
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 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 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_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_AGG_PRESORTED_DISTINCT_SINGLE
@ EEOP_BOOL_AND_STEP_FIRST
@ EEOP_BOOL_AND_STEP_LAST
@ EEOP_AGG_ORDERED_TRANS_DATUM
@ 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::@50::@90 agg_strict_input_check
struct ExprEvalStep::@50::@68 nextvalueexpr
ExprState * elemexprstate
struct ExprEvalStep::@50::@71 row
WindowFuncExprState * wfstate
struct ExprEvalStep::@50::@94 is_json
ExecEvalBoolSubroutine subscriptfunc
ExprEvalRowtypeCache * rowcache
struct ExprEvalStep::@50::@58 boolexpr
struct ExprEvalStep::@50::@51 fetch
struct ExprEvalStep::@50::@89 agg_deserialize
struct ExprEvalStep::@50::@86 grouping_func
struct ExprEvalStep::@50::@77 sbsref_subscript
struct ScalarArrayOpExprHashTable * elements_tab
struct SubscriptingRefState * state
struct ExprEvalStep::@50::@82 hashedscalararrayop
struct ExprEvalStep::@50::@53 wholerow
AggStatePerTrans pertrans
struct ExprEvalStep::@50::@52 var
struct ExprEvalStep::@50::@74 minmax
ExecEvalSubroutine paramfunc
FunctionCallInfo fcinfo_data_in
struct ExprEvalStep::@50::@88 subplan
struct ExprEvalStep::@50::@87 window_func
struct ExprEvalStep::@50::@61 nulltest_row
struct ExprEvalStep::@50::@59 qualexpr
ExprEvalRowtypeCache * incache
struct ExprEvalStep::@50::@85 aggref
const TupleTableSlotOps * kind
FunctionCallInfo fcinfo_data
struct ExprEvalStep::@50::@60 jump
struct ExprEvalStep::@50::@56 constval
struct ExprEvalStep::@50::@65 make_readonly
struct ExprEvalStep::@50::@57 func
union ExprEvalStep::@50 d
struct ExprEvalStep::@50::@84 json_constructor
struct ExprEvalStep::@50::@93 agg_trans
struct ExprEvalStep::@50::@63 cparam
struct ExprEvalStep::@50::@73 rowcompare_final
struct ExprEvalStep::@50::@54 assign_var
struct ExprEvalStep::@50::@75 fieldselect
struct ExprEvalStep::@50::@62 param
struct ExprEvalStep::@50::@67 sqlvaluefunction
struct ExprEvalStep::@50::@92 agg_presorted_distinctcheck
struct ExprEvalStep::@50::@69 arrayexpr
struct ExprEvalStep::@50::@83 xmlexpr
FunctionCallInfo fcinfo_data_out
ExecEvalSubroutine subscriptfunc
ExprEvalRowtypeCache * outcache
struct ExprEvalStep::@50::@81 scalararrayop
struct ExprEvalStep::@50::@76 fieldstore
struct ExprEvalStep::@50::@79 domaincheck
struct ExprEvalStep::@50::@66 iocoerce
struct ExprEvalStep::@50::@55 assign_tmp
ExprEvalRowtypeCache rowcache
struct JsonConstructorExprState * jcstate
struct ExprEvalStep::@50::@70 arraycoerce
struct ExprEvalStep::@50::@78 sbsref
struct ExprEvalStep::@50::@80 convert_rowtype
struct ExprEvalStep::@50::@72 rowcompare_step
struct ExprEvalStep::@50::@64 casetest
struct ArrayMapState * amstate
struct ExprEvalStep::@50::@91 agg_plain_pergroup_nullcheck
JsonConstructorExpr * constructor
struct JsonConstructorExprState::@95 * arg_type_cache
ExecEvalSubroutine sbs_fetch_old
ExecEvalBoolSubroutine sbs_check_subscripts
ExecEvalSubroutine sbs_assign
ExecEvalSubroutine sbs_fetch