pub struct NodeRef<'a, NodeData: Clone, EdgeData: Clone> { /* private fields */ }Expand description
Reference to a node in a Graph
The library guarantees that this references a valid node
Implementations§
Source§impl<'a, NodeData: Clone, EdgeData: Clone> NodeRef<'a, NodeData, EdgeData>
impl<'a, NodeData: Clone, EdgeData: Clone> NodeRef<'a, NodeData, EdgeData>
Sourcepub fn data(&self) -> &'a NodeData
pub fn data(&self) -> &'a NodeData
The data associated with the node
(a.k.a. the node weight)
Sourcepub fn id(&self) -> NodeId
pub fn id(&self) -> NodeId
The node’s identifier
You can use this to later reference the node in the graph (if it still exists)
Sourcepub fn iter_edges_from(&self) -> EdgesFrom<'a, NodeData, EdgeData> ⓘ
pub fn iter_edges_from(&self) -> EdgesFrom<'a, NodeData, EdgeData> ⓘ
Iterate over edges leaving this node
Order is unspecified.
Sourcepub fn iter_edges_to(&self) -> EdgesTo<'a, NodeData, EdgeData> ⓘ
pub fn iter_edges_to(&self) -> EdgesTo<'a, NodeData, EdgeData> ⓘ
Iterate over edges entering this node
Order is unspecified.
Trait Implementations§
Source§impl<'a, NodeData: Clone + Clone, EdgeData: Clone + Clone> Clone for NodeRef<'a, NodeData, EdgeData>
impl<'a, NodeData: Clone + Clone, EdgeData: Clone + Clone> Clone for NodeRef<'a, NodeData, EdgeData>
Source§impl<'a, NodeData: Debug + Clone, EdgeData: Debug + Clone> Debug for NodeRef<'a, NodeData, EdgeData>
impl<'a, NodeData: Debug + Clone, EdgeData: Debug + Clone> Debug for NodeRef<'a, NodeData, EdgeData>
impl<'a, NodeData: Clone, EdgeData: Clone> Copy for NodeRef<'a, NodeData, EdgeData>
Auto Trait Implementations§
impl<'a, NodeData, EdgeData> Freeze for NodeRef<'a, NodeData, EdgeData>
impl<'a, NodeData, EdgeData> RefUnwindSafe for NodeRef<'a, NodeData, EdgeData>where
NodeData: RefUnwindSafe,
EdgeData: RefUnwindSafe,
impl<'a, NodeData, EdgeData> Send for NodeRef<'a, NodeData, EdgeData>
impl<'a, NodeData, EdgeData> Sync for NodeRef<'a, NodeData, EdgeData>
impl<'a, NodeData, EdgeData> Unpin for NodeRef<'a, NodeData, EdgeData>
impl<'a, NodeData, EdgeData> UnwindSafe for NodeRef<'a, NodeData, EdgeData>where
NodeData: RefUnwindSafe,
EdgeData: RefUnwindSafe,
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