Trait graphannis::graph::EdgeContainer
source · pub trait EdgeContainer: Sync + Send {
// Required methods
fn get_outgoing_edges<'a>(
&'a self,
node: u64
) -> Box<dyn Iterator<Item = Result<u64, GraphAnnisCoreError>> + 'a>;
fn get_ingoing_edges<'a>(
&'a self,
node: u64
) -> Box<dyn Iterator<Item = Result<u64, GraphAnnisCoreError>> + 'a>;
fn source_nodes<'a>(
&'a self
) -> Box<dyn Iterator<Item = Result<u64, GraphAnnisCoreError>> + 'a>;
// Provided methods
fn has_outgoing_edges(&self, node: u64) -> Result<bool, GraphAnnisCoreError> { ... }
fn has_ingoing_edges(&self, node: u64) -> Result<bool, GraphAnnisCoreError> { ... }
fn get_statistics(&self) -> Option<&GraphStatistic> { ... }
fn root_nodes<'a>(
&'a self
) -> Box<dyn Iterator<Item = Result<u64, GraphAnnisCoreError>> + 'a> { ... }
}
Expand description
Basic trait for accessing edges of a graph for a specific component.
Required Methods§
sourcefn get_outgoing_edges<'a>(
&'a self,
node: u64
) -> Box<dyn Iterator<Item = Result<u64, GraphAnnisCoreError>> + 'a>
fn get_outgoing_edges<'a>( &'a self, node: u64 ) -> Box<dyn Iterator<Item = Result<u64, GraphAnnisCoreError>> + 'a>
Get all outgoing edges for a given node
.
sourcefn get_ingoing_edges<'a>(
&'a self,
node: u64
) -> Box<dyn Iterator<Item = Result<u64, GraphAnnisCoreError>> + 'a>
fn get_ingoing_edges<'a>( &'a self, node: u64 ) -> Box<dyn Iterator<Item = Result<u64, GraphAnnisCoreError>> + 'a>
Get all incoming edges for a given node
.
sourcefn source_nodes<'a>(
&'a self
) -> Box<dyn Iterator<Item = Result<u64, GraphAnnisCoreError>> + 'a>
fn source_nodes<'a>( &'a self ) -> Box<dyn Iterator<Item = Result<u64, GraphAnnisCoreError>> + 'a>
Provides an iterator over all nodes of this edge container that are the source of an edge.
Provided Methods§
sourcefn has_outgoing_edges(&self, node: u64) -> Result<bool, GraphAnnisCoreError>
fn has_outgoing_edges(&self, node: u64) -> Result<bool, GraphAnnisCoreError>
Return true of the given node has any outgoing edges.
sourcefn has_ingoing_edges(&self, node: u64) -> Result<bool, GraphAnnisCoreError>
fn has_ingoing_edges(&self, node: u64) -> Result<bool, GraphAnnisCoreError>
Return true of the given node has any incoming edges.
fn get_statistics(&self) -> Option<&GraphStatistic>
sourcefn root_nodes<'a>(
&'a self
) -> Box<dyn Iterator<Item = Result<u64, GraphAnnisCoreError>> + 'a>
fn root_nodes<'a>( &'a self ) -> Box<dyn Iterator<Item = Result<u64, GraphAnnisCoreError>> + 'a>
Provides an iterator over all nodes of this edge container that have no incoming edges.