Trait mz_transform::Transform
source · pub trait Transform: Debug {
fn transform(
&self,
relation: &mut MirRelationExpr,
args: TransformArgs<'_>
) -> Result<(), TransformError>;
fn recursion_safe(&self) -> bool { ... }
fn debug(&self) -> String { ... }
}
Expand description
Types capable of transforming relation expressions.
Required Methods§
sourcefn transform(
&self,
relation: &mut MirRelationExpr,
args: TransformArgs<'_>
) -> Result<(), TransformError>
fn transform(
&self,
relation: &mut MirRelationExpr,
args: TransformArgs<'_>
) -> Result<(), TransformError>
Transform a relation into a functionally equivalent relation.
Provided Methods§
sourcefn recursion_safe(&self) -> bool
fn recursion_safe(&self) -> bool
Indicates if the transform can be safely applied to expressions containing
LetRec
AST nodes.