Struct graph::walkers::bidirectional::Bidirectional
source · pub struct Bidirectional<'a, I, N, E, Ty, Ix, M1, M2> { /* private fields */ }
Expand description
The Bidirectional strategy. Performs the seach operation with two (may be different) state machines
Rules: Each machine needs to be totally opposite to the other one. Thus:
- The target node of the a machine m1 needs to be the starting node of the machine m2
- The starting node of the a walker m1 needs to be the target node of a machine m2
- The direction of the walker m1 needs to be
petgraph::Outgoing
and the m2 must bepetgraph::Incoming
Implementations§
Trait Implementations§
Auto Trait Implementations§
impl<'a, I, N, E, Ty, Ix, M1, M2> RefUnwindSafe for Bidirectional<'a, I, N, E, Ty, Ix, M1, M2>where E: RefUnwindSafe, I: RefUnwindSafe, Ix: RefUnwindSafe, M1: RefUnwindSafe, M2: RefUnwindSafe, N: RefUnwindSafe, Ty: RefUnwindSafe,
impl<'a, I, N, E, Ty, Ix, M1, M2> !Send for Bidirectional<'a, I, N, E, Ty, Ix, M1, M2>
impl<'a, I, N, E, Ty, Ix, M1, M2> !Sync for Bidirectional<'a, I, N, E, Ty, Ix, M1, M2>
impl<'a, I, N, E, Ty, Ix, M1, M2> Unpin for Bidirectional<'a, I, N, E, Ty, Ix, M1, M2>where Ix: Unpin, M1: Unpin, M2: Unpin,
impl<'a, I, N, E, Ty, Ix, M1, M2> UnwindSafe for Bidirectional<'a, I, N, E, Ty, Ix, M1, M2>where E: RefUnwindSafe, I: RefUnwindSafe, Ix: UnwindSafe + RefUnwindSafe, M1: UnwindSafe, M2: UnwindSafe, N: RefUnwindSafe, Ty: 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