Struct transform::update_let::UpdateLet [−][src]
pub struct UpdateLet {
recursion_guard: RecursionGuard,
}
Expand description
Refreshes identifiers and types for local let bindings.
The analysis is caapable of handling shadowing of identifiers, which shouldn’t happen, but if it does and we wanted to kick and scream, this is one place we could do that. Instead, we’ll just come up with guaranteed unique names for each let binding.
Fields
recursion_guard: RecursionGuard
Implementations
pub fn action(
&self,
relation: &mut MirRelationExpr,
remap: &mut HashMap<LocalId, (LocalId, RelationType)>,
id_gen: &mut IdGen
) -> Result<(), TransformError>
pub fn action(
&self,
relation: &mut MirRelationExpr,
remap: &mut HashMap<LocalId, (LocalId, RelationType)>,
id_gen: &mut IdGen
) -> Result<(), TransformError>
Re-assign type information and identifier to each Get
.
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,
args: TransformArgs<'_>
) -> Result<(), TransformError>
fn transform(
&self,
relation: &mut MirRelationExpr,
args: TransformArgs<'_>
) -> Result<(), TransformError>
Transform a relation into a functionally equivalent relation.
Auto Trait Implementations
impl !RefUnwindSafe for UpdateLet
impl UnwindSafe for UpdateLet
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