2016-06-09 22:49:07 +00:00
|
|
|
use super::*;
|
|
|
|
|
2018-07-01 20:54:01 +00:00
|
|
|
impl<'graph, G: DirectedGraph> DirectedGraph for &'graph G {
|
2016-06-09 22:49:07 +00:00
|
|
|
type Node = G::Node;
|
|
|
|
|
|
|
|
fn num_nodes(&self) -> usize {
|
|
|
|
(**self).num_nodes()
|
|
|
|
}
|
2018-07-01 20:54:01 +00:00
|
|
|
}
|
2016-06-09 22:49:07 +00:00
|
|
|
|
2024-04-14 15:51:29 +00:00
|
|
|
impl<'graph, G: StartNode> StartNode for &'graph G {
|
2016-06-09 22:49:07 +00:00
|
|
|
fn start_node(&self) -> Self::Node {
|
|
|
|
(**self).start_node()
|
|
|
|
}
|
2018-07-01 20:54:01 +00:00
|
|
|
}
|
|
|
|
|
2024-04-14 15:40:26 +00:00
|
|
|
impl<'graph, G: Successors> Successors for &'graph G {
|
2024-04-15 13:33:08 +00:00
|
|
|
fn successors(&self, node: Self::Node) -> impl Iterator<Item = Self::Node> {
|
2018-07-01 20:54:01 +00:00
|
|
|
(**self).successors(node)
|
|
|
|
}
|
|
|
|
}
|
2016-06-09 22:49:07 +00:00
|
|
|
|
2024-04-14 15:40:26 +00:00
|
|
|
impl<'graph, G: Predecessors> Predecessors for &'graph G {
|
2024-04-15 13:33:08 +00:00
|
|
|
fn predecessors(&self, node: Self::Node) -> impl Iterator<Item = Self::Node> {
|
2016-06-09 22:49:07 +00:00
|
|
|
(**self).predecessors(node)
|
|
|
|
}
|
|
|
|
}
|