pub enum Node<C: Ctx, E> {
Error(Expr, Value),
Constant(Expr, Value),
Apply {
spec: Expr,
args: Vec<Node<C, E>>,
function: Box<dyn Apply<C, E> + Send + Sync>,
},
}
Variants§
Implementations§
Source§impl<C: Ctx, E: Clone> Node<C, E>
impl<C: Ctx, E: Clone> Node<C, E>
pub fn compile_int( ctx: &mut ExecCtx<C, E>, spec: Expr, scope: Path, top_id: ExprId, ) -> Self
pub fn compile(ctx: &mut ExecCtx<C, E>, scope: Path, spec: Expr) -> Self
pub fn current(&self, ctx: &mut ExecCtx<C, E>) -> Option<Value>
pub fn update( &mut self, ctx: &mut ExecCtx<C, E>, event: &Event<E>, ) -> Option<Value>
Trait Implementations§
Auto Trait Implementations§
impl<C, E> !Freeze for Node<C, E>
impl<C, E> !RefUnwindSafe for Node<C, E>
impl<C, E> Send for Node<C, E>
impl<C, E> Sync for Node<C, E>
impl<C, E> Unpin for Node<C, E>
impl<C, E> !UnwindSafe for Node<C, E>
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
Source§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> ToCompactString for Twhere
T: Display,
impl<T> ToCompactString for Twhere
T: Display,
Source§fn to_compact_string(&self) -> CompactString
fn to_compact_string(&self) -> CompactString
Converts the given value to a
CompactString
. Read more