#[non_exhaustive]pub struct PartialPath<'a> {
pub start: NodeId,
pub end: NodeId,
pub pre: PartialSymbolStack<'a>,
pub post: PartialSymbolStack<'a>,
pub edges: Vec<PathEdge>,
}Expand description
A walk from start to end: the symbol stack it needs on entry and the one it leaves.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.start: NodeIdThe node the walk starts at.
end: NodeIdThe node the walk ends at.
pre: PartialSymbolStack<'a>The symbol stack the walk needs on entry.
post: PartialSymbolStack<'a>The symbol stack the walk leaves.
edges: Vec<PathEdge>The edges followed, in order.
Implementations§
Source§impl PartialPath<'_>
impl PartialPath<'_>
Sourcepub fn concatenate(
&self,
graph: &StackGraph,
rhs: &Self,
) -> Result<Self, PathError>
pub fn concatenate( &self, graph: &StackGraph, rhs: &Self, ) -> Result<Self, PathError>
Source§impl<'a> PartialPath<'a>
impl<'a> PartialPath<'a>
Sourcepub fn seed(
graph: &'a StackGraph,
node: NodeId,
) -> Result<Self, TransitionError>
pub fn seed( graph: &'a StackGraph, node: NodeId, ) -> Result<Self, TransitionError>
The walk that only visits node: the symbol stack node needs on entry and the one it leaves.
§Errors
Returns TransitionError::UnknownNode when graph has no node.
Trait Implementations§
Source§impl<'a> Clone for PartialPath<'a>
impl<'a> Clone for PartialPath<'a>
Source§impl<'a> Debug for PartialPath<'a>
impl<'a> Debug for PartialPath<'a>
impl<'a> Eq for PartialPath<'a>
Source§impl<'a> PartialEq for PartialPath<'a>
impl<'a> PartialEq for PartialPath<'a>
impl<'a> StructuralPartialEq for PartialPath<'a>
Auto Trait Implementations§
impl<'a> Forget for PartialPath<'a>
impl<'a> Freeze for PartialPath<'a>
impl<'a> RefUnwindSafe for PartialPath<'a>
impl<'a> Send for PartialPath<'a>
impl<'a> Sync for PartialPath<'a>
impl<'a> Unpin for PartialPath<'a>
impl<'a> UnsafeUnpin for PartialPath<'a>
impl<'a> UnwindSafe for PartialPath<'a>
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