Trait rs_graph::traits::refs::DirectedRef
source · pub trait DirectedRef<'a>: UndirectedRef<'a> {
type OutIt: GraphIterator<Self, Item = (Self::Edge, Self::Node)>;
type InIt: GraphIterator<Self, Item = (Self::Edge, Self::Node)>;
type IncidentIt: GraphIterator<Self, Item = (Self::DirectedEdge, Self::Node)>;
type DirectedEdge: DirectedEdge<Edge = Self::Edge> + Copy + Eq;
// Required methods
fn out_iter(&self, u: Self::Node) -> Self::OutIt;
fn in_iter(&self, u: Self::Node) -> Self::InIt;
fn incident_iter(&self, u: Self::Node) -> Self::IncidentIt;
// Provided methods
fn outedges(&self, u: Self::Node) -> GraphIter<'_, Self, Self::OutIt> ⓘ
where Self: Sized { ... }
fn inedges(&self, u: Self::Node) -> GraphIter<'_, Self, Self::InIt> ⓘ
where Self: Sized { ... }
fn incident_edges(
&self,
u: Self::Node
) -> GraphIter<'_, Self, Self::IncidentIt> ⓘ
where Self: Sized { ... }
}
Expand description
A reference to a digraph.
This trait contains methods with a unrestricted lifetime for self
.
Required Associated Types§
sourcetype OutIt: GraphIterator<Self, Item = (Self::Edge, Self::Node)>
type OutIt: GraphIterator<Self, Item = (Self::Edge, Self::Node)>
Type of a graph iterator over edges leaving a node.
sourcetype InIt: GraphIterator<Self, Item = (Self::Edge, Self::Node)>
type InIt: GraphIterator<Self, Item = (Self::Edge, Self::Node)>
Type of a graph iterator over edges entering a node.
sourcetype IncidentIt: GraphIterator<Self, Item = (Self::DirectedEdge, Self::Node)>
type IncidentIt: GraphIterator<Self, Item = (Self::DirectedEdge, Self::Node)>
Type of an iterator over all incident edges.
sourcetype DirectedEdge: DirectedEdge<Edge = Self::Edge> + Copy + Eq
type DirectedEdge: DirectedEdge<Edge = Self::Edge> + Copy + Eq
Type of a directed edge.
Required Methods§
sourcefn out_iter(&self, u: Self::Node) -> Self::OutIt
fn out_iter(&self, u: Self::Node) -> Self::OutIt
Return the source node of an edge. Return the sink node of an edge. Return a graph iterator over the edges leaving a node.
sourcefn in_iter(&self, u: Self::Node) -> Self::InIt
fn in_iter(&self, u: Self::Node) -> Self::InIt
Return a graph iterator over the edges leaving a node.
sourcefn incident_iter(&self, u: Self::Node) -> Self::IncidentIt
fn incident_iter(&self, u: Self::Node) -> Self::IncidentIt
Return an iterator over all directed edges incident with a node.
Provided Methods§
sourcefn outedges(&self, u: Self::Node) -> GraphIter<'_, Self, Self::OutIt> ⓘwhere
Self: Sized,
fn outedges(&self, u: Self::Node) -> GraphIter<'_, Self, Self::OutIt> ⓘwhere Self: Sized,
Return an iterator over the edges leaving a node.
sourcefn inedges(&self, u: Self::Node) -> GraphIter<'_, Self, Self::InIt> ⓘwhere
Self: Sized,
fn inedges(&self, u: Self::Node) -> GraphIter<'_, Self, Self::InIt> ⓘwhere Self: Sized,
Return an iterator over the edges leaving a node.
sourcefn incident_edges(&self, u: Self::Node) -> GraphIter<'_, Self, Self::IncidentIt> ⓘwhere
Self: Sized,
fn incident_edges(&self, u: Self::Node) -> GraphIter<'_, Self, Self::IncidentIt> ⓘwhere Self: Sized,
Return an iterator over all directed edges incident with a node.