pub struct ExpressionNode {
pub id: u32,
pub expression: String,
pub children: Vec<ExpressionNode>,
}Expand description
Represents a node in the expression tree for flow diagram rendering.
Fields§
§id: u32Unique identifier for this node
expression: StringJSON string of this sub-expression
children: Vec<ExpressionNode>Child nodes (arguments/operands that are operators, not literals)
Implementations§
Source§impl ExpressionNode
impl ExpressionNode
Sourcepub fn build_from_compiled(
node: &CompiledNode,
) -> (ExpressionNode, HashMap<usize, u32>)
pub fn build_from_compiled( node: &CompiledNode, ) -> (ExpressionNode, HashMap<usize, u32>)
Build an expression tree from a CompiledNode, assigning unique IDs.
Returns the expression tree and a mapping from node pointers to IDs.
Trait Implementations§
Source§impl Clone for ExpressionNode
impl Clone for ExpressionNode
Source§fn clone(&self) -> ExpressionNode
fn clone(&self) -> ExpressionNode
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for ExpressionNode
impl Debug for ExpressionNode
Source§impl<'de> Deserialize<'de> for ExpressionNode
impl<'de> Deserialize<'de> for ExpressionNode
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
Auto Trait Implementations§
impl Freeze for ExpressionNode
impl RefUnwindSafe for ExpressionNode
impl Send for ExpressionNode
impl Sync for ExpressionNode
impl Unpin for ExpressionNode
impl UnwindSafe for ExpressionNode
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