pub struct AdjacencyIndex { /* private fields */ }Expand description
Adjacency index for fast neighbor lookups
Implementations§
Source§impl AdjacencyIndex
impl AdjacencyIndex
Sourcepub fn remove_edge(&self, edge: &Edge)
pub fn remove_edge(&self, edge: &Edge)
Remove an edge from the index
Sourcepub fn get_outgoing_edges(&self, node_id: &NodeId) -> Vec<EdgeId> ⓘ
pub fn get_outgoing_edges(&self, node_id: &NodeId) -> Vec<EdgeId> ⓘ
Get all outgoing edges from a node
Sourcepub fn get_incoming_edges(&self, node_id: &NodeId) -> Vec<EdgeId> ⓘ
pub fn get_incoming_edges(&self, node_id: &NodeId) -> Vec<EdgeId> ⓘ
Get all incoming edges to a node
Sourcepub fn get_all_edges(&self, node_id: &NodeId) -> Vec<EdgeId> ⓘ
pub fn get_all_edges(&self, node_id: &NodeId) -> Vec<EdgeId> ⓘ
Get all edges connected to a node (both incoming and outgoing)
Sourcepub fn out_degree(&self, node_id: &NodeId) -> usize
pub fn out_degree(&self, node_id: &NodeId) -> usize
Get degree (number of outgoing edges)
Trait Implementations§
Source§impl Clone for AdjacencyIndex
impl Clone for AdjacencyIndex
Source§fn clone(&self) -> AdjacencyIndex
fn clone(&self) -> AdjacencyIndex
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 AdjacencyIndex
impl Debug for AdjacencyIndex
Auto Trait Implementations§
impl Freeze for AdjacencyIndex
impl !RefUnwindSafe for AdjacencyIndex
impl Send for AdjacencyIndex
impl Sync for AdjacencyIndex
impl Unpin for AdjacencyIndex
impl !UnwindSafe for AdjacencyIndex
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 moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request