Expr

Expr

ノードの一つ。全ての実行可能な評価ノードの基底ノードになっており、その実体はNodeTagのみをメンバに持つ簡素なノードである。Exprを継承するノードはエグゼキュータにおいてexecQual.cに記述された処理を行い、タプルを生成する。Exprそのものは抽象的な存在なので、何かの値を処理したりすることはない。

Exprはパーサ~エグゼキュータまで利用される。

include/primnode.hで宣言。

主なExprを基底とするノード:

  • Const
  • Var
  • Aggref
  • ArrayRef
  • FuncExpr
  • OpExpr
  • BoolExpr
  • SubPlan
  • CaseExpr
  • ArrayExpr
  • RowExpr
  • XmlExpr

など。