Header And Logo

PostgreSQL
| The world's most advanced open source database.

Data Structures | Defines | Typedefs | Enumerations

execnodes.h File Reference

#include "access/genam.h"
#include "access/heapam.h"
#include "executor/instrument.h"
#include "nodes/params.h"
#include "nodes/plannodes.h"
#include "utils/reltrigger.h"
#include "utils/sortsupport.h"
#include "utils/tuplestore.h"
Include dependency graph for execnodes.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  IndexInfo
struct  ExprContext_CB
struct  ExprContext
struct  ReturnSetInfo
struct  ProjectionInfo
struct  JunkFilter
struct  ResultRelInfo
struct  EState
struct  ExecRowMark
struct  ExecAuxRowMark
struct  TupleHashEntryData
struct  TupleHashTableData
struct  ExprState
struct  GenericExprState
struct  WholeRowVarExprState
struct  AggrefExprState
struct  WindowFuncExprState
struct  ArrayRefExprState
struct  FuncExprState
struct  ScalarArrayOpExprState
struct  BoolExprState
struct  SubPlanState
struct  AlternativeSubPlanState
struct  FieldSelectState
struct  FieldStoreState
struct  CoerceViaIOState
struct  ArrayCoerceExprState
struct  ConvertRowtypeExprState
struct  CaseExprState
struct  CaseWhenState
struct  ArrayExprState
struct  RowExprState
struct  RowCompareExprState
struct  CoalesceExprState
struct  MinMaxExprState
struct  XmlExprState
struct  NullTestState
struct  CoerceToDomainState
struct  DomainConstraintState
struct  PlanState
struct  EPQState
struct  ResultState
struct  ModifyTableState
struct  AppendState
struct  MergeAppendState
struct  RecursiveUnionState
struct  BitmapAndState
struct  BitmapOrState
struct  ScanState
struct  IndexRuntimeKeyInfo
struct  IndexArrayKeyInfo
struct  IndexScanState
struct  IndexOnlyScanState
struct  BitmapIndexScanState
struct  BitmapHeapScanState
struct  TidScanState
struct  SubqueryScanState
struct  FunctionScanState
struct  ValuesScanState
struct  CteScanState
struct  WorkTableScanState
struct  ForeignScanState
struct  JoinState
struct  NestLoopState
struct  MergeJoinState
struct  HashJoinState
struct  MaterialState
struct  SortState
struct  GroupState
struct  AggState
struct  WindowAggState
struct  UniqueState
struct  HashState
struct  SetOpState
struct  LockRowsState
struct  LimitState

Defines

#define InitTupleHashIterator(htable, iter)   hash_seq_init(iter, (htable)->hashtab)
#define TermTupleHashIterator(iter)   hash_seq_term(iter)
#define ResetTupleHashIterator(htable, iter)
#define ScanTupleHashTable(iter)   ((TupleHashEntry) hash_seq_search(iter))
#define innerPlanState(node)   (((PlanState *)(node))->righttree)
#define outerPlanState(node)   (((PlanState *)(node))->lefttree)
#define InstrCountFiltered1(node, delta)
#define InstrCountFiltered2(node, delta)

Typedefs

typedef struct IndexInfo IndexInfo
typedef void(* ExprContextCallbackFunction )(Datum arg)
typedef struct ExprContext_CB ExprContext_CB
typedef struct ExprContext ExprContext
typedef struct ReturnSetInfo ReturnSetInfo
typedef struct ProjectionInfo ProjectionInfo
typedef struct JunkFilter JunkFilter
typedef struct ResultRelInfo ResultRelInfo
typedef struct EState EState
typedef struct ExecRowMark ExecRowMark
typedef struct ExecAuxRowMark ExecAuxRowMark
typedef struct TupleHashEntryDataTupleHashEntry
typedef struct TupleHashTableDataTupleHashTable
typedef struct TupleHashEntryData TupleHashEntryData
typedef struct TupleHashTableData TupleHashTableData
typedef HASH_SEQ_STATUS TupleHashIterator
typedef struct ExprState ExprState
typedef Datum(* ExprStateEvalFunc )(ExprState *expression, ExprContext *econtext, bool *isNull, ExprDoneCond *isDone)
typedef struct GenericExprState GenericExprState
typedef struct WholeRowVarExprState WholeRowVarExprState
typedef struct AggrefExprState AggrefExprState
typedef struct WindowFuncExprState WindowFuncExprState
typedef struct ArrayRefExprState ArrayRefExprState
typedef struct FuncExprState FuncExprState
typedef struct
ScalarArrayOpExprState 
ScalarArrayOpExprState
typedef struct BoolExprState BoolExprState
typedef struct SubPlanState SubPlanState
typedef struct
AlternativeSubPlanState 
AlternativeSubPlanState
typedef struct FieldSelectState FieldSelectState
typedef struct FieldStoreState FieldStoreState
typedef struct CoerceViaIOState CoerceViaIOState
typedef struct ArrayCoerceExprState ArrayCoerceExprState
typedef struct
ConvertRowtypeExprState 
ConvertRowtypeExprState
typedef struct CaseExprState CaseExprState
typedef struct CaseWhenState CaseWhenState
typedef struct ArrayExprState ArrayExprState
typedef struct RowExprState RowExprState
typedef struct RowCompareExprState RowCompareExprState
typedef struct CoalesceExprState CoalesceExprState
typedef struct MinMaxExprState MinMaxExprState
typedef struct XmlExprState XmlExprState
typedef struct NullTestState NullTestState
typedef struct CoerceToDomainState CoerceToDomainState
typedef enum DomainConstraintType DomainConstraintType
typedef struct
DomainConstraintState 
DomainConstraintState
typedef struct PlanState PlanState
typedef struct EPQState EPQState
typedef struct ResultState ResultState
typedef struct ModifyTableState ModifyTableState
typedef struct AppendState AppendState
typedef struct MergeAppendState MergeAppendState
typedef struct RecursiveUnionState RecursiveUnionState
typedef struct BitmapAndState BitmapAndState
typedef struct BitmapOrState BitmapOrState
typedef struct ScanState ScanState
typedef ScanState SeqScanState
typedef struct IndexScanState IndexScanState
typedef struct IndexOnlyScanState IndexOnlyScanState
typedef struct BitmapIndexScanState BitmapIndexScanState
typedef struct BitmapHeapScanState BitmapHeapScanState
typedef struct TidScanState TidScanState
typedef struct SubqueryScanState SubqueryScanState
typedef struct FunctionScanState FunctionScanState
typedef struct ValuesScanState ValuesScanState
typedef struct CteScanState CteScanState
typedef struct WorkTableScanState WorkTableScanState
typedef struct ForeignScanState ForeignScanState
typedef struct JoinState JoinState
typedef struct NestLoopState NestLoopState
typedef struct
MergeJoinClauseData
MergeJoinClause
typedef struct MergeJoinState MergeJoinState
typedef struct HashJoinTupleDataHashJoinTuple
typedef struct HashJoinTableDataHashJoinTable
typedef struct HashJoinState HashJoinState
typedef struct MaterialState MaterialState
typedef struct SortState SortState
typedef struct GroupState GroupState
typedef struct AggStatePerAggDataAggStatePerAgg
typedef struct
AggStatePerGroupData
AggStatePerGroup
typedef struct AggState AggState
typedef struct
WindowStatePerFuncData
WindowStatePerFunc
typedef struct
WindowStatePerAggData
WindowStatePerAgg
typedef struct WindowAggState WindowAggState
typedef struct UniqueState UniqueState
typedef struct HashState HashState
typedef struct
SetOpStatePerGroupData
SetOpStatePerGroup
typedef struct SetOpState SetOpState
typedef struct LockRowsState LockRowsState
typedef struct LimitState LimitState

Enumerations

enum  ExprDoneCond { ExprSingleResult, ExprMultipleResult, ExprEndResult }
enum  SetFunctionReturnMode { SFRM_ValuePerCall = 0x01, SFRM_Materialize = 0x02, SFRM_Materialize_Random = 0x04, SFRM_Materialize_Preferred = 0x08 }
enum  DomainConstraintType { DOM_CONSTRAINT_NOTNULL, DOM_CONSTRAINT_CHECK }
enum  LimitStateCond {
  LIMIT_INITIAL, LIMIT_RESCAN, LIMIT_EMPTY, LIMIT_INWINDOW,
  LIMIT_SUBPLANEOF, LIMIT_WINDOWEND, LIMIT_WINDOWSTART
}

Define Documentation

#define InitTupleHashIterator (   htable,
  iter 
)    hash_seq_init(iter, (htable)->hashtab)

Definition at line 503 of file execnodes.h.

Referenced by findPartialMatch().

#define innerPlanState (   node  )     (((PlanState *)(node))->righttree)
#define InstrCountFiltered1 (   node,
  delta 
)
Value:
do { \
        if (((PlanState *)(node))->instrument) \
            ((PlanState *)(node))->instrument->nfiltered1 += (delta); \
    } while(0)

Definition at line 1028 of file execnodes.h.

Referenced by agg_retrieve_direct(), agg_retrieve_hash_table(), ExecGroup(), ExecHashJoin(), ExecMergeJoin(), ExecNestLoop(), and ExecScan().

#define InstrCountFiltered2 (   node,
  delta 
)
Value:
do { \
        if (((PlanState *)(node))->instrument) \
            ((PlanState *)(node))->instrument->nfiltered2 += (delta); \
    } while(0)

Definition at line 1033 of file execnodes.h.

Referenced by BitmapHeapNext(), ExecHashJoin(), ExecMergeJoin(), ExecNestLoop(), IndexNext(), IndexOnlyNext(), MJFillInner(), and MJFillOuter().

#define outerPlanState (   node  )     (((PlanState *)(node))->lefttree)
#define ResetTupleHashIterator (   htable,
  iter 
)
Value:
do { \
        hash_freeze((htable)->hashtab); \
        hash_seq_init(iter, (htable)->hashtab); \
    } while (0)

Definition at line 507 of file execnodes.h.

Referenced by agg_fill_hash_table(), ExecReScanAgg(), ExecReScanSetOp(), and setop_fill_hash_table().

#define ScanTupleHashTable (   iter  )     ((TupleHashEntry) hash_seq_search(iter))
#define TermTupleHashIterator (   iter  )     hash_seq_term(iter)

Definition at line 505 of file execnodes.h.

Referenced by findPartialMatch().


Typedef Documentation

typedef struct AggState AggState

Definition at line 1680 of file execnodes.h.

Definition at line 1681 of file execnodes.h.

typedef struct AppendState AppendState
typedef struct BitmapOrState BitmapOrState
typedef struct BoolExprState BoolExprState
typedef struct CaseExprState CaseExprState
typedef struct CaseWhenState CaseWhenState
typedef struct CteScanState CteScanState
typedef struct EPQState EPQState
typedef struct EState EState
typedef struct ExecRowMark ExecRowMark
typedef struct ExprContext ExprContext

Definition at line 77 of file execnodes.h.

typedef struct ExprState ExprState

Definition at line 541 of file execnodes.h.

typedef Datum(* ExprStateEvalFunc)(ExprState *expression, ExprContext *econtext, bool *isNull, ExprDoneCond *isDone)

Definition at line 543 of file execnodes.h.

typedef struct FuncExprState FuncExprState
typedef struct GroupState GroupState
typedef struct HashJoinState HashJoinState

Definition at line 1593 of file execnodes.h.

Definition at line 1592 of file execnodes.h.

typedef struct HashState HashState
typedef struct IndexInfo IndexInfo
typedef struct JoinState JoinState
typedef struct JunkFilter JunkFilter
typedef struct LimitState LimitState
typedef struct LockRowsState LockRowsState
typedef struct MaterialState MaterialState

Definition at line 1541 of file execnodes.h.

typedef struct NestLoopState NestLoopState
typedef struct NullTestState NullTestState
typedef struct PlanState PlanState
typedef struct ResultRelInfo ResultRelInfo
typedef struct ResultState ResultState
typedef struct ReturnSetInfo ReturnSetInfo
typedef struct RowExprState RowExprState
typedef struct ScanState ScanState

Definition at line 1203 of file execnodes.h.

typedef struct SetOpState SetOpState

Definition at line 1809 of file execnodes.h.

typedef struct SortState SortState
typedef struct SubPlanState SubPlanState
typedef struct TidScanState TidScanState

Definition at line 469 of file execnodes.h.

Definition at line 496 of file execnodes.h.

Definition at line 470 of file execnodes.h.

typedef struct UniqueState UniqueState

Definition at line 1711 of file execnodes.h.

Definition at line 1710 of file execnodes.h.

typedef struct XmlExprState XmlExprState

Enumeration Type Documentation

Enumerator:
DOM_CONSTRAINT_NOTNULL 
DOM_CONSTRAINT_CHECK 

Definition at line 947 of file execnodes.h.

{
    DOM_CONSTRAINT_NOTNULL,
    DOM_CONSTRAINT_CHECK
} DomainConstraintType;

Enumerator:
ExprSingleResult 
ExprMultipleResult 
ExprEndResult 

Definition at line 151 of file execnodes.h.

{
    ExprSingleResult,           /* expression does not return a set */
    ExprMultipleResult,         /* this result is an element of a set */
    ExprEndResult               /* there are no more elements in the set */
} ExprDoneCond;

Enumerator:
LIMIT_INITIAL 
LIMIT_RESCAN 
LIMIT_EMPTY 
LIMIT_INWINDOW 
LIMIT_SUBPLANEOF 
LIMIT_WINDOWEND 
LIMIT_WINDOWSTART 

Definition at line 1854 of file execnodes.h.

{
    LIMIT_INITIAL,              /* initial state for LIMIT node */
    LIMIT_RESCAN,               /* rescan after recomputing parameters */
    LIMIT_EMPTY,                /* there are no returnable rows */
    LIMIT_INWINDOW,             /* have returned a row in the window */
    LIMIT_SUBPLANEOF,           /* at EOF of subplan (within window) */
    LIMIT_WINDOWEND,            /* stepped off end of window */
    LIMIT_WINDOWSTART           /* stepped off beginning of window */
} LimitStateCond;

Enumerator:
SFRM_ValuePerCall 
SFRM_Materialize 
SFRM_Materialize_Random 
SFRM_Materialize_Preferred 

Definition at line 164 of file execnodes.h.

{
    SFRM_ValuePerCall = 0x01,   /* one value returned per call */
    SFRM_Materialize = 0x02,    /* result set instantiated in Tuplestore */
    SFRM_Materialize_Random = 0x04,     /* Tuplestore needs randomAccess */
    SFRM_Materialize_Preferred = 0x08   /* caller prefers Tuplestore */
} SetFunctionReturnMode;