Struct transform::monotonic::MonotonicFlag [−][src]
pub struct MonotonicFlag {
recursion_guard: RecursionGuard,
}
Expand description
A struct that holds a recursive function that determines if a relation is monotonic, and applies any optimizations along the way.
Fields
recursion_guard: RecursionGuard
Implementations
pub fn apply(
&self,
expr: &mut MirRelationExpr,
sources: &HashSet<GlobalId>,
locals: &mut HashSet<LocalId>
) -> Result<bool, TransformError>
pub fn apply(
&self,
expr: &mut MirRelationExpr,
sources: &HashSet<GlobalId>,
locals: &mut HashSet<LocalId>
) -> Result<bool, TransformError>
Determines if a relation is monotonic, and applies any optimizations along the way.
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
Returns the “default value” for a type. Read more
Auto Trait Implementations
impl !RefUnwindSafe for MonotonicFlag
impl Send for MonotonicFlag
impl !Sync for MonotonicFlag
impl Unpin for MonotonicFlag
impl UnwindSafe for MonotonicFlag
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