pub struct MapQ<C: Ctx, E: UserEvent, T: MapFn<C, E>> { /* private fields */ }
Trait Implementations§
Source§impl<C: Ctx, E: UserEvent, T: MapFn<C, E>> Apply<C, E> for MapQ<C, E, T>
impl<C: Ctx, E: UserEvent, T: MapFn<C, E>> Apply<C, E> for MapQ<C, E, T>
fn update( &mut self, ctx: &mut ExecCtx<C, E>, from: &mut [Node<C, E>], event: &mut Event<E>, ) -> Option<Value>
Source§fn typecheck(
&mut self,
ctx: &mut ExecCtx<C, E>,
from: &mut [Node<C, E>],
) -> Result<()>
fn typecheck( &mut self, ctx: &mut ExecCtx<C, E>, from: &mut [Node<C, E>], ) -> Result<()>
apply custom typechecking to the lambda, only needed for
builtins that take lambdas as arguments
Source§fn refs<'a>(&'a self, f: &'a mut (dyn FnMut(BindId) + 'a))
fn refs<'a>(&'a self, f: &'a mut (dyn FnMut(BindId) + 'a))
push a list of variables the lambda references in addition to
it’s arguments. Builtins only need to implement this if they
lookup and reference variables from the environment that were
not explicitly passed in.
Auto Trait Implementations§
impl<C, E, T> Freeze for MapQ<C, E, T>where
T: Freeze,
impl<C, E, T> !RefUnwindSafe for MapQ<C, E, T>
impl<C, E, T> Send for MapQ<C, E, T>
impl<C, E, T> Sync for MapQ<C, E, T>
impl<C, E, T> Unpin for MapQ<C, E, T>where
T: Unpin,
impl<C, E, T> !UnwindSafe for MapQ<C, E, T>
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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