pub struct Node {
pub id: Uuid,
pub function: Uuid,
pub inputs: Vec<Io>,
pub outputs: Vec<Io>,
pub children: Option<Vec<Uuid>>,
}Expand description
A node bound to a function, with its typed inputs/outputs and (optionally) ordered children.
One node kind, routed by function: an interpreter dispatches natively for
the ids it knows and calls a module for the rest — the same homogeneous split
the behavior tree already makes.
Fields§
§id: UuidThis node’s id.
function: UuidThe function bound to this node: a statically-known id or a module function id. The interpreter routes on it.
inputs: Vec<Io>Declared inputs.
outputs: Vec<Io>Declared outputs.
children: Option<Vec<Uuid>>Ordered children, for interpreters (like the tree) whose structure is a
child relation. None for a leaf.
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Node
impl<'de> Deserialize<'de> for Node
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl StructuralPartialEq for Node
Auto Trait Implementations§
impl Freeze for Node
impl RefUnwindSafe for Node
impl Send for Node
impl Sync for Node
impl Unpin for Node
impl UnsafeUnpin for Node
impl UnwindSafe for Node
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