pub struct EffectMachine<'a> { /* private fields */ }Implementations§
Source§impl<'a> EffectMachine<'a>
impl<'a> EffectMachine<'a>
pub fn new( table: &'a DataConTable, heap: &'a mut dyn Heap, ) -> Result<Self, EffectError>
Sourcepub fn run<H: DispatchEffect>(
&mut self,
expr: &CoreExpr,
handlers: &mut H,
) -> Result<Value, EffectError>
pub fn run<H: DispatchEffect>( &mut self, expr: &CoreExpr, handlers: &mut H, ) -> Result<Value, EffectError>
Run an Eff expression to completion with the given handler HList. Backward-compatible: uses U=() (no user data).
Sourcepub fn run_with_user<U, H: DispatchEffect<U>>(
&mut self,
expr: &CoreExpr,
handlers: &mut H,
user: &U,
) -> Result<Value, EffectError>
pub fn run_with_user<U, H: DispatchEffect<U>>( &mut self, expr: &CoreExpr, handlers: &mut H, user: &U, ) -> Result<Value, EffectError>
Run an Eff expression with user data threaded through to handlers.
Auto Trait Implementations§
impl<'a> Freeze for EffectMachine<'a>
impl<'a> !RefUnwindSafe for EffectMachine<'a>
impl<'a> !Send for EffectMachine<'a>
impl<'a> !Sync for EffectMachine<'a>
impl<'a> Unpin for EffectMachine<'a>
impl<'a> UnsafeUnpin for EffectMachine<'a>
impl<'a> !UnwindSafe for EffectMachine<'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