Expand description
Lowers IR (PlanNode/SqlExpr) to a concrete SQL string for a given
Dialect.
The emitter expects each plan tree to have a PlanNode::Project at the
top (directly, or under a PlanNode::Union). Beneath the project lives a
chain of PlanNode::Filter and PlanNode::LateralUnnest nodes, rooted
in a PlanNode::Scan. The emitter walks that chain to assemble FROM /
JOIN / WHERE / SELECT in dialect-appropriate syntax, then concatenates them.
Stages 2–5 progressively add IR-variant coverage. Anything the emitter
doesn’t yet understand returns SofError::Uncompilable.
Structs§
- Emitted
Sql - Compiled output for a single ViewDefinition.
Functions§
- emit_
plan - Lowers a plan tree to SQL for the given dialect.