PostgreSQL Source Code  git master
ExprEvalStep Struct Reference

#include <execExpr.h>

Data Fields

intptr_t opcode
 
Datumresvalue
 
boolresnull
 
union {
   struct {
      int   last_var
 
      bool   fixed
 
      TupleDesc   known_desc
 
      const TupleTableSlotOps *   kind
 
   }   fetch
 
   struct {
      int   attnum
 
      Oid   vartype
 
   }   var
 
   struct {
      Var *   var
 
      bool   first
 
      bool   slow
 
      TupleDesc   tupdesc
 
      JunkFilter *   junkFilter
 
   }   wholerow
 
   struct {
      int   resultnum
 
      int   attnum
 
   }   assign_var
 
   struct {
      int   resultnum
 
   }   assign_tmp
 
   struct {
      Datum   value
 
      bool   isnull
 
   }   constval
 
   struct {
      FmgrInfo *   finfo
 
      FunctionCallInfo   fcinfo_data
 
      PGFunction   fn_addr
 
      int   nargs
 
   }   func
 
   struct {
      bool *   anynull
 
      int   jumpdone
 
   }   boolexpr
 
   struct {
      int   jumpdone
 
   }   qualexpr
 
   struct {
      int   jumpdone
 
   }   jump
 
   struct {
      TupleDesc   argdesc
 
   }   nulltest_row
 
   struct {
      int   paramid
 
      Oid   paramtype
 
   }   param
 
   struct {
      ExecEvalSubroutine   paramfunc
 
      void *   paramarg
 
      int   paramid
 
      Oid   paramtype
 
   }   cparam
 
   struct {
      Datum *   value
 
      bool *   isnull
 
   }   casetest
 
   struct {
      Datum *   value
 
      bool *   isnull
 
   }   make_readonly
 
   struct {
      FmgrInfo *   finfo_out
 
      FunctionCallInfo   fcinfo_data_out
 
      FmgrInfo *   finfo_in
 
      FunctionCallInfo   fcinfo_data_in
 
   }   iocoerce
 
   struct {
      SQLValueFunction *   svf
 
   }   sqlvaluefunction
 
   struct {
      Oid   seqid
 
      Oid   seqtypid
 
   }   nextvalueexpr
 
   struct {
      Datum *   elemvalues
 
      bool *   elemnulls
 
      int   nelems
 
      Oid   elemtype
 
      int16   elemlength
 
      bool   elembyval
 
      char   elemalign
 
      bool   multidims
 
   }   arrayexpr
 
   struct {
      ExprState *   elemexprstate
 
      Oid   resultelemtype
 
      struct ArrayMapState *   amstate
 
   }   arraycoerce
 
   struct {
      TupleDesc   tupdesc
 
      Datum *   elemvalues
 
      bool *   elemnulls
 
   }   row
 
   struct {
      FmgrInfo *   finfo
 
      FunctionCallInfo   fcinfo_data
 
      PGFunction   fn_addr
 
      int   jumpnull
 
      int   jumpdone
 
   }   rowcompare_step
 
   struct {
      RowCompareType   rctype
 
   }   rowcompare_final
 
   struct {
      Datum *   values
 
      bool *   nulls
 
      int   nelems
 
      MinMaxOp   op
 
      FmgrInfo *   finfo
 
      FunctionCallInfo   fcinfo_data
 
   }   minmax
 
   struct {
      AttrNumber   fieldnum
 
      Oid   resulttype
 
      TupleDesc   argdesc
 
   }   fieldselect
 
   struct {
      FieldStore *   fstore
 
      TupleDesc *   argdesc
 
      Datum *   values
 
      bool *   nulls
 
      int   ncolumns
 
   }   fieldstore
 
   struct {
      struct SubscriptingRefState *   state
 
      int   off
 
      bool   isupper
 
      int   jumpdone
 
   }   sbsref_subscript
 
   struct {
      struct SubscriptingRefState *   state
 
   }   sbsref
 
   struct {
      char *   constraintname
 
      Datum *   checkvalue
 
      bool *   checknull
 
      Oid   resulttype
 
   }   domaincheck
 
   struct {
      ConvertRowtypeExpr *   convert
 
      TupleDesc   indesc
 
      TupleDesc   outdesc
 
      TupleConversionMap *   map
 
      bool   initialized
 
   }   convert_rowtype
 
   struct {
      Oid   element_type
 
      bool   useOr
 
      int16   typlen
 
      bool   typbyval
 
      char   typalign
 
      FmgrInfo *   finfo
 
      FunctionCallInfo   fcinfo_data
 
      PGFunction   fn_addr
 
   }   scalararrayop
 
   struct {
      XmlExpr *   xexpr
 
      Datum *   named_argvalue
 
      bool *   named_argnull
 
      Datum *   argvalue
 
      bool *   argnull
 
   }   xmlexpr
 
   struct {
      AggrefExprState *   astate
 
   }   aggref
 
   struct {
      AggState *   parent
 
      List *   clauses
 
   }   grouping_func
 
   struct {
      WindowFuncExprState *   wfstate
 
   }   window_func
 
   struct {
      SubPlanState *   sstate
 
   }   subplan
 
   struct {
      AlternativeSubPlanState *   asstate
 
   }   alternative_subplan
 
   struct {
      AggState *   aggstate
 
      FunctionCallInfo   fcinfo_data
 
      int   jumpnull
 
   }   agg_deserialize
 
   struct {
      NullableDatum *   args
 
      bool *   nulls
 
      int   nargs
 
      int   jumpnull
 
   }   agg_strict_input_check
 
   struct {
      AggState *   aggstate
 
      AggStatePerTrans   pertrans
 
      ExprContext *   aggcontext
 
      int   setno
 
      int   transno
 
      int   setoff
 
      int   jumpnull
 
   }   agg_init_trans
 
   struct {
      AggState *   aggstate
 
      int   setno
 
      int   transno
 
      int   setoff
 
      int   jumpnull
 
   }   agg_strict_trans_check
 
   struct {
      AggState *   aggstate
 
      AggStatePerTrans   pertrans
 
      ExprContext *   aggcontext
 
      int   setno
 
      int   transno
 
      int   setoff
 
   }   agg_trans
 
d
 

Detailed Description

Definition at line 240 of file execExpr.h.

Field Documentation

◆ agg_deserialize

struct { ... } ExprEvalStep::agg_deserialize

◆ agg_init_trans

struct { ... } ExprEvalStep::agg_init_trans

◆ agg_strict_input_check

struct { ... } ExprEvalStep::agg_strict_input_check

◆ agg_strict_trans_check

struct { ... } ExprEvalStep::agg_strict_trans_check

◆ agg_trans

◆ aggcontext

ExprContext* ExprEvalStep::aggcontext

Definition at line 630 of file execExpr.h.

◆ aggref

struct { ... } ExprEvalStep::aggref

◆ aggstate

AggState* ExprEvalStep::aggstate

Definition at line 600 of file execExpr.h.

◆ alternative_subplan

struct { ... } ExprEvalStep::alternative_subplan

◆ amstate

struct ArrayMapState* ExprEvalStep::amstate

Definition at line 425 of file execExpr.h.

◆ anynull

bool* ExprEvalStep::anynull

Definition at line 330 of file execExpr.h.

◆ argdesc [1/2]

TupleDesc ExprEvalStep::argdesc

Definition at line 350 of file execExpr.h.

◆ argdesc [2/2]

TupleDesc* ExprEvalStep::argdesc

Definition at line 487 of file execExpr.h.

◆ argnull

bool* ExprEvalStep::argnull

Definition at line 559 of file execExpr.h.

◆ args

NullableDatum* ExprEvalStep::args

Definition at line 619 of file execExpr.h.

◆ argvalue

Datum* ExprEvalStep::argvalue

Definition at line 558 of file execExpr.h.

◆ arraycoerce

struct { ... } ExprEvalStep::arraycoerce

◆ arrayexpr

struct { ... } ExprEvalStep::arrayexpr

◆ assign_tmp

struct { ... } ExprEvalStep::assign_tmp

◆ assign_var

◆ asstate

AlternativeSubPlanState* ExprEvalStep::asstate

Definition at line 594 of file execExpr.h.

◆ astate

AggrefExprState* ExprEvalStep::astate

Definition at line 566 of file execExpr.h.

◆ attnum

int ExprEvalStep::attnum

Definition at line 279 of file execExpr.h.

◆ boolexpr

struct { ... } ExprEvalStep::boolexpr

◆ casetest

◆ checknull

bool* ExprEvalStep::checknull

Definition at line 519 of file execExpr.h.

◆ checkvalue

Datum* ExprEvalStep::checkvalue

Definition at line 518 of file execExpr.h.

◆ clauses

List* ExprEvalStep::clauses

Definition at line 573 of file execExpr.h.

◆ constraintname

char* ExprEvalStep::constraintname

Definition at line 516 of file execExpr.h.

◆ constval

struct { ... } ExprEvalStep::constval

◆ convert

ConvertRowtypeExpr* ExprEvalStep::convert

Definition at line 527 of file execExpr.h.

◆ convert_rowtype

struct { ... } ExprEvalStep::convert_rowtype

◆ cparam

◆ d

union { ... } ExprEvalStep::d

◆ domaincheck

struct { ... } ExprEvalStep::domaincheck

◆ elemalign

char ExprEvalStep::elemalign

Definition at line 416 of file execExpr.h.

◆ elembyval

bool ExprEvalStep::elembyval

Definition at line 415 of file execExpr.h.

◆ element_type

Oid ExprEvalStep::element_type

Definition at line 539 of file execExpr.h.

◆ elemexprstate

ExprState* ExprEvalStep::elemexprstate

Definition at line 423 of file execExpr.h.

◆ elemlength

int16 ExprEvalStep::elemlength

Definition at line 414 of file execExpr.h.

◆ elemnulls

bool* ExprEvalStep::elemnulls

Definition at line 411 of file execExpr.h.

◆ elemtype

Oid ExprEvalStep::elemtype

Definition at line 413 of file execExpr.h.

◆ elemvalues

Datum* ExprEvalStep::elemvalues

Definition at line 410 of file execExpr.h.

◆ fcinfo_data

FunctionCallInfo ExprEvalStep::fcinfo_data

Definition at line 321 of file execExpr.h.

◆ fcinfo_data_in

FunctionCallInfo ExprEvalStep::fcinfo_data_in

Definition at line 391 of file execExpr.h.

◆ fcinfo_data_out

FunctionCallInfo ExprEvalStep::fcinfo_data_out

Definition at line 388 of file execExpr.h.

◆ fetch

◆ fieldnum

AttrNumber ExprEvalStep::fieldnum

Definition at line 473 of file execExpr.h.

◆ fieldselect

struct { ... } ExprEvalStep::fieldselect

◆ fieldstore

struct { ... } ExprEvalStep::fieldstore

◆ finfo

FmgrInfo* ExprEvalStep::finfo

Definition at line 320 of file execExpr.h.

◆ finfo_in

FmgrInfo* ExprEvalStep::finfo_in

Definition at line 390 of file execExpr.h.

◆ finfo_out

FmgrInfo* ExprEvalStep::finfo_out

Definition at line 387 of file execExpr.h.

◆ first

bool ExprEvalStep::first

Definition at line 287 of file execExpr.h.

◆ fixed

bool ExprEvalStep::fixed

Definition at line 267 of file execExpr.h.

◆ fn_addr

PGFunction ExprEvalStep::fn_addr

Definition at line 323 of file execExpr.h.

◆ fstore

FieldStore* ExprEvalStep::fstore

Definition at line 483 of file execExpr.h.

◆ func

◆ grouping_func

struct { ... } ExprEvalStep::grouping_func

◆ indesc

TupleDesc ExprEvalStep::indesc

Definition at line 529 of file execExpr.h.

◆ initialized

bool ExprEvalStep::initialized

Definition at line 532 of file execExpr.h.

◆ iocoerce

struct { ... } ExprEvalStep::iocoerce

◆ isnull [1/2]

bool ExprEvalStep::isnull

Definition at line 314 of file execExpr.h.

◆ isnull [2/2]

bool* ExprEvalStep::isnull

Definition at line 373 of file execExpr.h.

◆ isupper

bool ExprEvalStep::isupper

Definition at line 501 of file execExpr.h.

◆ jump

◆ jumpdone

int ExprEvalStep::jumpdone

Definition at line 331 of file execExpr.h.

◆ jumpnull

int ExprEvalStep::jumpnull

Definition at line 445 of file execExpr.h.

◆ junkFilter

JunkFilter* ExprEvalStep::junkFilter

Definition at line 290 of file execExpr.h.

◆ kind

const TupleTableSlotOps* ExprEvalStep::kind

Definition at line 271 of file execExpr.h.

◆ known_desc

TupleDesc ExprEvalStep::known_desc

Definition at line 269 of file execExpr.h.

◆ last_var

int ExprEvalStep::last_var

Definition at line 265 of file execExpr.h.

◆ make_readonly

struct { ... } ExprEvalStep::make_readonly

◆ map

TupleConversionMap* ExprEvalStep::map

Definition at line 531 of file execExpr.h.

◆ minmax

struct { ... } ExprEvalStep::minmax

Referenced by ExecEvalMinMax(), and ExecInitExprRec().

◆ multidims

bool ExprEvalStep::multidims

Definition at line 417 of file execExpr.h.

◆ named_argnull

bool* ExprEvalStep::named_argnull

Definition at line 556 of file execExpr.h.

◆ named_argvalue

Datum* ExprEvalStep::named_argvalue

Definition at line 555 of file execExpr.h.

◆ nargs

int ExprEvalStep::nargs

Definition at line 324 of file execExpr.h.

◆ ncolumns

int ExprEvalStep::ncolumns

Definition at line 492 of file execExpr.h.

◆ nelems

int ExprEvalStep::nelems

Definition at line 412 of file execExpr.h.

◆ nextvalueexpr

struct { ... } ExprEvalStep::nextvalueexpr

◆ nulls

bool* ExprEvalStep::nulls

Definition at line 461 of file execExpr.h.

◆ nulltest_row

struct { ... } ExprEvalStep::nulltest_row

◆ off

int ExprEvalStep::off

Definition at line 500 of file execExpr.h.

◆ op

MinMaxOp ExprEvalStep::op

Definition at line 464 of file execExpr.h.

◆ opcode

◆ outdesc

TupleDesc ExprEvalStep::outdesc

Definition at line 530 of file execExpr.h.

◆ param

struct { ... } ExprEvalStep::param

◆ paramarg

void* ExprEvalStep::paramarg

Definition at line 364 of file execExpr.h.

◆ paramfunc

ExecEvalSubroutine ExprEvalStep::paramfunc

Definition at line 363 of file execExpr.h.

◆ paramid

int ExprEvalStep::paramid

Definition at line 356 of file execExpr.h.

◆ paramtype

Oid ExprEvalStep::paramtype

Definition at line 357 of file execExpr.h.

◆ parent

AggState* ExprEvalStep::parent

Definition at line 572 of file execExpr.h.

◆ pertrans

AggStatePerTrans ExprEvalStep::pertrans

Definition at line 629 of file execExpr.h.

◆ qualexpr

struct { ... } ExprEvalStep::qualexpr

◆ rctype

RowCompareType ExprEvalStep::rctype

Definition at line 453 of file execExpr.h.

◆ resnull

◆ resultelemtype

Oid ExprEvalStep::resultelemtype

Definition at line 424 of file execExpr.h.

◆ resultnum

int ExprEvalStep::resultnum

Definition at line 297 of file execExpr.h.

◆ resulttype

Oid ExprEvalStep::resulttype

Definition at line 474 of file execExpr.h.

◆ resvalue

◆ row

struct { ... } ExprEvalStep::row

Referenced by ExecEvalRow(), and ExecInitExprRec().

◆ rowcompare_final

struct { ... } ExprEvalStep::rowcompare_final

◆ rowcompare_step

struct { ... } ExprEvalStep::rowcompare_step

◆ sbsref

struct { ... } ExprEvalStep::sbsref

◆ sbsref_subscript

◆ scalararrayop

struct { ... } ExprEvalStep::scalararrayop

◆ seqid

Oid ExprEvalStep::seqid

Definition at line 403 of file execExpr.h.

◆ seqtypid

Oid ExprEvalStep::seqtypid

Definition at line 404 of file execExpr.h.

◆ setno

int ExprEvalStep::setno

Definition at line 631 of file execExpr.h.

◆ setoff

int ExprEvalStep::setoff

Definition at line 633 of file execExpr.h.

◆ slow

bool ExprEvalStep::slow

Definition at line 288 of file execExpr.h.

◆ sqlvaluefunction

struct { ... } ExprEvalStep::sqlvaluefunction

◆ sstate

SubPlanState* ExprEvalStep::sstate

Definition at line 587 of file execExpr.h.

◆ state

struct SubscriptingRefState* ExprEvalStep::state

Definition at line 499 of file execExpr.h.

◆ subplan

struct { ... } ExprEvalStep::subplan

Referenced by ExecEvalSubPlan(), and ExecInitExprRec().

◆ svf

SQLValueFunction* ExprEvalStep::svf

Definition at line 397 of file execExpr.h.

◆ transno

int ExprEvalStep::transno

Definition at line 632 of file execExpr.h.

◆ tupdesc

TupleDesc ExprEvalStep::tupdesc

Definition at line 289 of file execExpr.h.

◆ typalign

char ExprEvalStep::typalign

Definition at line 543 of file execExpr.h.

◆ typbyval

bool ExprEvalStep::typbyval

Definition at line 542 of file execExpr.h.

◆ typlen

int16 ExprEvalStep::typlen

Definition at line 541 of file execExpr.h.

◆ useOr

bool ExprEvalStep::useOr

Definition at line 540 of file execExpr.h.

◆ value [1/2]

Datum ExprEvalStep::value

Definition at line 313 of file execExpr.h.

◆ value [2/2]

Datum* ExprEvalStep::value

Definition at line 372 of file execExpr.h.

◆ values

Datum* ExprEvalStep::values

Definition at line 460 of file execExpr.h.

◆ var [1/2]

◆ var [2/2]

Var* ExprEvalStep::var

Definition at line 286 of file execExpr.h.

◆ vartype

Oid ExprEvalStep::vartype

Definition at line 280 of file execExpr.h.

◆ wfstate

WindowFuncExprState* ExprEvalStep::wfstate

Definition at line 580 of file execExpr.h.

◆ wholerow

struct { ... } ExprEvalStep::wholerow

◆ window_func

struct { ... } ExprEvalStep::window_func

◆ xexpr

XmlExpr* ExprEvalStep::xexpr

Definition at line 553 of file execExpr.h.

◆ xmlexpr

struct { ... } ExprEvalStep::xmlexpr

Referenced by ExecEvalXmlExpr(), and ExecInitExprRec().


The documentation for this struct was generated from the following file: