mz_transform/movement.rs
1// Copyright Materialize, Inc. and contributors. All rights reserved.
2//
3// Use of this software is governed by the Business Source License
4// included in the LICENSE file.
5//
6// As of the Change Date specified in that file, in accordance with
7// the Business Source License, use of this software will be governed
8// by the Apache License, Version 2.0.
9
10//! Transformations that move relation expressions up (lifting) and down
11//! (pushdown) the tree.
12//!
13//! Transformations inhabiting this module can be used both as part of a
14//! normalization pass and as a stand-alone optimization. The former is usually
15//! achieved by implementing a more restricted form of the latter.
16
17mod projection_lifting;
18mod projection_pushdown;
19
20pub use projection_lifting::ProjectionLifting;
21pub use projection_pushdown::ProjectionPushdown;