pub(crate) struct RootedEnv<'a> {
pub(crate) vars: Rt<ObjectMap<Slot<Symbol<'a>>, Slot<Gc<ObjectType<'a>>>>>,
pub(crate) props: Rt<ObjectMap<Slot<Symbol<'a>>, Vec<(Slot<Symbol<'a>>, Slot<Gc<ObjectType<'a>>>)>>>,
pub(crate) catch_stack: Rt<Vec<Slot<Gc<ObjectType<'a>>>>>,
exception: Rt<(Slot<Gc<ObjectType<'a>>>, Slot<Gc<ObjectType<'a>>>)>,
exception_id: u32,
binding_stack: Rt<Vec<(Slot<Symbol<'a>>, Option<Slot<Gc<ObjectType<'a>>>>)>>,
pub(crate) match_data: Rt<Slot<Gc<ObjectType<'a>>>>,
pub(crate) current_buffer: CurrentBuffer<'a>,
pub(crate) stack: Rt<LispStack<'a>>,
}
Expand description
Automatically derived from Env via #[derive(Trace)]
Fields§
§vars: Rt<ObjectMap<Slot<Symbol<'a>>, Slot<Gc<ObjectType<'a>>>>>
§props: Rt<ObjectMap<Slot<Symbol<'a>>, Vec<(Slot<Symbol<'a>>, Slot<Gc<ObjectType<'a>>>)>>>
§catch_stack: Rt<Vec<Slot<Gc<ObjectType<'a>>>>>
§exception: Rt<(Slot<Gc<ObjectType<'a>>>, Slot<Gc<ObjectType<'a>>>)>
§exception_id: u32
§binding_stack: Rt<Vec<(Slot<Symbol<'a>>, Option<Slot<Gc<ObjectType<'a>>>>)>>
§match_data: Rt<Slot<Gc<ObjectType<'a>>>>
§current_buffer: CurrentBuffer<'a>
§stack: Rt<LispStack<'a>>
Implementations§
Source§impl<'a> RootedEnv<'a>
impl<'a> RootedEnv<'a>
pub(crate) fn set_var( &mut self, sym: Symbol<'_>, value: Gc<ObjectType<'_>>, ) -> Result<()>
pub(crate) fn set_prop( &mut self, symbol: Symbol<'_>, propname: Symbol<'_>, value: Gc<ObjectType<'_>>, )
pub(crate) fn set_exception( &mut self, tag: Gc<ObjectType<'_>>, data: Gc<ObjectType<'_>>, ) -> u32
pub(crate) fn get_exception( &self, id: u32, ) -> Option<(&Rt<Slot<Gc<ObjectType<'a>>>>, &Rt<Slot<Gc<ObjectType<'a>>>>)>
pub(crate) fn varbind( &mut self, var: Symbol<'_>, value: Gc<ObjectType<'_>>, cx: &Context<'_>, )
pub(crate) fn unbind(&mut self, count: u16, cx: &Context<'_>)
pub(crate) fn defvar( &mut self, var: Symbol<'_>, value: Gc<ObjectType<'_>>, ) -> Result<()>
pub(crate) fn set_buffer(&mut self, buffer: &LispBuffer)
pub(crate) fn with_buffer<T>( &self, buffer: &LispBuffer, func: impl FnMut(&OpenBuffer<'_>) -> T, ) -> Result<T>
pub(crate) fn with_buffer_mut<T>( &mut self, buffer: &LispBuffer, func: impl FnMut(&mut OpenBuffer<'_>) -> T, ) -> Result<T>
Auto Trait Implementations§
impl<'a> !Freeze for RootedEnv<'a>
impl<'a> !RefUnwindSafe for RootedEnv<'a>
impl<'a> !Send for RootedEnv<'a>
impl<'a> !Sync for RootedEnv<'a>
impl<'a> !Unpin for RootedEnv<'a>
impl<'a> !UnwindSafe for RootedEnv<'a>
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