pub struct ShortestPathOp {
pub input: Box<LogicalOperator>,
pub source_var: String,
pub target_var: String,
pub edge_types: Vec<String>,
pub direction: ExpandDirection,
pub path_alias: String,
pub all_paths: bool,
}Expand description
Find shortest path between two nodes.
This operator uses Dijkstra’s algorithm to find the shortest path(s) between a source node and a target node, optionally filtered by edge type.
Fields§
§input: Box<LogicalOperator>Input operator providing source/target nodes.
source_var: StringVariable name for the source node.
target_var: StringVariable name for the target node.
edge_types: Vec<String>Edge type filter (empty = match all types, multiple = match any).
direction: ExpandDirectionDirection of edge traversal.
path_alias: StringVariable name to bind the path result.
all_paths: boolWhether to find all shortest paths (vs. just one).
Trait Implementations§
Source§impl Clone for ShortestPathOp
impl Clone for ShortestPathOp
Source§fn clone(&self) -> ShortestPathOp
fn clone(&self) -> ShortestPathOp
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 moreAuto Trait Implementations§
impl Freeze for ShortestPathOp
impl RefUnwindSafe for ShortestPathOp
impl Send for ShortestPathOp
impl Sync for ShortestPathOp
impl Unpin for ShortestPathOp
impl UnsafeUnpin for ShortestPathOp
impl UnwindSafe for ShortestPathOp
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> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
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