pub struct EscribaVm { /* private fields */ }Expand description
escriba’s embedded tatara-lisp runtime. Build once, eval many times; the registered native fns (the editor capability surface) persist across calls.
Implementations§
Source§impl EscribaVm
impl EscribaVm
pub fn new() -> Self
Sourcepub fn eval(
&mut self,
src: &str,
host: &mut EscribaHost,
) -> Result<Value, VmError>
pub fn eval( &mut self, src: &str, host: &mut EscribaHost, ) -> Result<Value, VmError>
Evaluate Lisp src against host. Returns the last form’s
value; any effects the program requested accumulate on
host.effects (drain with EscribaHost::take_effects).
Trait Implementations§
Auto Trait Implementations§
impl !RefUnwindSafe for EscribaVm
impl !UnwindSafe for EscribaVm
impl Freeze for EscribaVm
impl Send for EscribaVm
impl Sync for EscribaVm
impl Unpin for EscribaVm
impl UnsafeUnpin for EscribaVm
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