pub struct AvailableExpr {
pub key: ExprKey,
pub var_id: LcnfVarId,
pub name_hint: String,
pub depth: usize,
}Expand description
An expression that is currently available at a program point.
“Available” means the expression has already been computed and its
result is held in var_id. Any subsequent identical computation
can be replaced by a reference to var_id.
Fields§
§key: ExprKeyThe canonical key for this expression.
var_id: LcnfVarIdThe variable that already holds the computed result.
name_hint: StringHuman-readable name hint of the defining binding.
depth: usizeDepth (let-binding nesting level) at which this was introduced.
Trait Implementations§
Source§impl Clone for AvailableExpr
impl Clone for AvailableExpr
Source§fn clone(&self) -> AvailableExpr
fn clone(&self) -> AvailableExpr
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for AvailableExpr
impl RefUnwindSafe for AvailableExpr
impl Send for AvailableExpr
impl Sync for AvailableExpr
impl Unpin for AvailableExpr
impl UnsafeUnpin for AvailableExpr
impl UnwindSafe for AvailableExpr
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more