pub struct Node<C: Ctx, E: UserEvent> {
pub spec: Box<Expr>,
pub typ: Type<NoRefs>,
pub kind: NodeKind<C, E>,
}
Fields§
§spec: Box<Expr>
§typ: Type<NoRefs>
§kind: NodeKind<C, E>
Implementations§
Source§impl<C: Ctx, E: UserEvent> Node<C, E>
impl<C: Ctx, E: UserEvent> Node<C, E>
pub fn compile( ctx: &mut ExecCtx<C, E>, scope: &ModPath, spec: Expr, ) -> Result<Self>
pub fn delete(self, ctx: &mut ExecCtx<C, E>)
Sourcepub fn refs<'a>(&'a self, f: &'a mut (dyn FnMut(BindId) + 'a))
pub fn refs<'a>(&'a self, f: &'a mut (dyn FnMut(BindId) + 'a))
call f with the id of every variable referenced by self
pub fn update( &mut self, ctx: &mut ExecCtx<C, E>, event: &mut 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 try_to_compact_string(&self) -> Result<CompactString, ToCompactStringError>
fn try_to_compact_string(&self) -> Result<CompactString, ToCompactStringError>
Fallible version of
ToCompactString::to_compact_string()
Read moreSource§fn to_compact_string(&self) -> CompactString
fn to_compact_string(&self) -> CompactString
Converts the given value to a
CompactString
. Read more