クエリのパース処理。パースツリーの構造体

パースツリーで使われる構造体は parsenodes.h または primnodes.h に定義されている。

前回のパースツリーのところで登場したものだと以下のもの。

parsenodes.hに定義された構造体
  • SelectStmt
  • ResTarget
  • ColumnRef
  • A_Expr
  • A_Const
primnodes.hに定義された構造体
  • JoinExpr
  • RangeVar
  • Alias


だいたいはデバッグ出力されたノードの名前から構造体がわかる。ノードが組み立てられている処理が書かれているgram.yやデバッグ出力用のprint.cのコードを見るとより正確にわかる。