Skip to main content

Module planner

Module planner 

Source

Re-exports§

pub use returning::resolve_returning_items;
pub use select::qualified_name;

Modules§

agg_bind
Binding aggregate calls in HAVING and post-aggregate ORDER BY.
agg_naming
Canonical output names for aggregate expressions.
aggregate
GROUP BY and aggregate planning over a single collection.
aggregate_clauses
The GROUP BY, aggregate, HAVING and output-order clauses of one SELECT, planned once for every aggregate source: a single collection or a join.
aggregate_cp_wrap
Control-Plane projection over grouped results.
aggregate_order
Records the SELECT-list interleaving of GROUP BY keys and aggregate expressions so the output-schema builder emits aggregate result columns in the user’s SELECT order rather than a hardcoded group-keys-first order.
array_ddl
Planner for CREATE ARRAY and DROP ARRAY.
array_dml
Planner for INSERT INTO ARRAY and DELETE FROM ARRAY.
array_fn
Planner for ARRAY_* table-valued / scalar functions.
ast_helpers
Shared AST manipulation helpers for DML planners.
bitmap_emit
Planner analysis passes for selective-predicate → bitmap pushdown.
catalog_expr_fold
Recursive catalog-dependent expression validation and folding.
catalog_fold
Plan-time catalog expression folding.
catalog_plan_shapes
Catalog folding for reusable projection, ordering, aggregate, and window shapes.
catalog_plan_validate
Catalog-dependent expression validation across nested SQL plan shapes.
collection_predicate
Plan a predicate against one collection the way a single-collection SELECT ... WHERE plans its WHERE.
const_fold
Plan-time constant folding for SqlExpr.
cp_projection
Control-Plane-computed SELECT-list items.
cte
CTE (WITH clause) and WITH RECURSIVE planning.
declared_type_coerce
Coerce literal DML values into the representation their declared column type requires, for engines that persist the planner’s values verbatim.
declared_vector_coerce
Coerce an array literal bound for a declared VECTOR(dim) column into an array of floats.
defaults
Column DEFAULT expression compilation and evaluation at insert time.
dml
INSERT, UPSERT, UPDATE, DELETE, and TRUNCATE planning.
dml_helpers
DML planning helpers, split by concern:
geometry_expr
group_by
GROUP BY key conversion and output naming.
grouping_sets
ROLLUP / CUBE / GROUPING SETS expansion and canonical key extraction.
having
HAVING planning: bind the predicate to computed aggregate columns.
index_ddl
Planners for CREATE INDEX / DROP INDEX parsed via sqlparser.
join
JOIN planning: extract left/right tables, equi-join keys, join type.
lateral
LATERAL subquery planning.
merge
MERGE statement planning.
predicate_coerce
Coerce the literals a predicate compares against a declared TIMESTAMP / TIMESTAMPTZ column into typed instants, once, at plan time.
returning
Resolution of a DML RETURNING item list against the write’s target.
search_scope
Plan-time refusal of index-owned search functions in row-evaluated positions.
select
SELECT query planning: FROM → WHERE → GROUP BY → HAVING → SELECT → ORDER BY → LIMIT.
sort
ORDER BY planning and sort key extraction.
subquery
WHERE-clause subquery planning: IN, EXISTS, and scalar subqueries rewritten into semi / anti / cross joins.
union
UNION / UNION ALL planning.
window
Window function planning: WINDOW-clause resolution, frame conversion, and extraction of <func>() OVER (...) specs from a SELECT projection.