nodedb-sql 0.4.0

SQL parser, planner, and optimizer for NodeDB
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
// SPDX-License-Identifier: Apache-2.0

pub mod constant_fold;
pub mod point_get;
pub mod predicate_pushdown;

use crate::catalog::SqlCatalog;
use crate::types::SqlPlan;

/// Apply all optimization passes to a plan.
pub fn optimize(plan: SqlPlan, catalog: &dyn SqlCatalog) -> SqlPlan {
    let plan = point_get::optimize(plan, catalog);
    predicate_pushdown::optimize(plan)
}