Expand description
IR-level expression types and the flat ExprArena that stores them.
Expressions are represented as a flat vector of IrExpr nodes indexed by
ExprId. This avoids deep recursive types and makes expression sharing,
substitution, and serialisation straightforward.
Unlike the AST expression types in graphforge-ast, these types:
Structs§
- CaseArm
- A single WHEN/THEN arm in a
IrExpr::Caseexpression. - Expr
Arena - Flat, index-addressed storage for all
IrExprnodes in a query plan.
Enums§
- Binary
OpKind - The operator in a
IrExpr::BinaryOpexpression. - IrExpr
- A single node in the
ExprArena. - IrLiteral
- A scalar constant value in the Graph IR.
- Unary
OpKind - The operator in a
IrExpr::UnaryOpexpression.