pub struct Env(/* private fields */);Expand description
A shared, persistent environment: a nameless cons list of the running
activation’s bindings (innermost first) on top of the closure’s captured
Frame. A resolved reference (Expr::Local)
reaches its value by walking its de Bruijn index over next links and
cloning the cell’s value — a pointer chase without name comparison or
per-link cloning. Indices beyond the consed cells land in the frame array.
The resolver (resolve.rs) assigns each reference the exact number of cells
between it and its binder.
Implementations§
Trait Implementations§
Auto Trait Implementations§
impl !RefUnwindSafe for Env
impl !Send for Env
impl !Sync for Env
impl !UnwindSafe for Env
impl Freeze for Env
impl Unpin for Env
impl UnsafeUnpin for Env
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