pub enum SearchTreeNode {
Root {
label: Label,
children: HashSet<Label>,
direction: Direction,
},
Branch {
label: Label,
incoming_edge: EdgeTraversal,
parent: Label,
children: HashSet<Label>,
direction: Direction,
},
}Expand description
A node in the search tree containing parent/child relationships and traversal data
Variants§
Implementations§
Source§impl SearchTreeNode
impl SearchTreeNode
pub fn new_root(label: Label, orientation: Direction) -> Self
pub fn new_child( label: Label, edge_traversal: EdgeTraversal, parent: Label, direction: Direction, ) -> Self
pub fn label(&self) -> &Label
pub fn vertex_id(&self) -> &VertexId
pub fn parent_label(&self) -> Option<&Label>
pub fn children(&self) -> &HashSet<Label>
pub fn incoming_edge(&self) -> Option<&EdgeTraversal>
pub fn is_root(&self) -> bool
pub fn add_child(&mut self, child_label: Label)
pub fn remove_child(&mut self, child_label: &Label)
Trait Implementations§
Source§impl Allocative for SearchTreeNode
impl Allocative for SearchTreeNode
Source§impl Clone for SearchTreeNode
impl Clone for SearchTreeNode
Source§fn clone(&self) -> SearchTreeNode
fn clone(&self) -> SearchTreeNode
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 SearchTreeNode
impl Debug for SearchTreeNode
Auto Trait Implementations§
impl Freeze for SearchTreeNode
impl RefUnwindSafe for SearchTreeNode
impl Send for SearchTreeNode
impl Sync for SearchTreeNode
impl Unpin for SearchTreeNode
impl UnwindSafe for SearchTreeNode
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more