Struct transform::demand::Demand [−][src]
pub struct Demand {
recursion_guard: RecursionGuard,
}
Expand description
Drive demand from the root through operators.
This transform alerts operators to their columns that influence the ultimate output of the expression, and gives them permission to swap other columns for dummy values. As part of this, operators should not actually use any of these dummy values, lest they run-time error.
This transformation primarily informs the Join
operator, which can
simplify its intermediate state when it knows that certain columns are
not observed in its output. Internal arrangements need not maintain
columns that are no longer required in the join pipeline, which are
those columns not required by the output nor any further equalities.
Fields
recursion_guard: RecursionGuard
Implementations
Trait Implementations
Extracts a reference to the recursion guard embedded within the type.
fn checked_recur<F, T, E>(&self, f: F) -> Result<T, E> where
F: FnOnce(&Self) -> Result<T, E>,
E: From<RecursionLimitError>,
fn checked_recur<F, T, E>(&self, f: F) -> Result<T, E> where
F: FnOnce(&Self) -> Result<T, E>,
E: From<RecursionLimitError>,
Checks whether it is safe to recur and calls f
if so. Read more
fn checked_recur_mut<F, T, E>(&mut self, f: F) -> Result<T, E> where
F: FnOnce(&mut Self) -> Result<T, E>,
E: From<RecursionLimitError>,
fn checked_recur_mut<F, T, E>(&mut self, f: F) -> Result<T, E> where
F: FnOnce(&mut Self) -> Result<T, E>,
E: From<RecursionLimitError>,
Like CheckedRecursion::checked_recur
, but operates on a mutable
reference to Self
. Read more
fn transform(
&self,
relation: &mut MirRelationExpr,
_: TransformArgs<'_>
) -> Result<(), TransformError>
fn transform(
&self,
relation: &mut MirRelationExpr,
_: TransformArgs<'_>
) -> Result<(), TransformError>
Transform a relation into a functionally equivalent relation.
Auto Trait Implementations
impl !RefUnwindSafe for Demand
impl UnwindSafe for Demand
Blanket Implementations
Mutably borrows from an owned value. Read more
Attaches the provided Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more