about summary refs log tree commit diff
path: root/compiler/rustc_data_structures/src/graph/reference.rs
diff options
context:
space:
mode:
authorThe Miri Cronjob Bot <miri@cron.bot>2024-04-16 05:22:30 +0000
committerThe Miri Cronjob Bot <miri@cron.bot>2024-04-16 05:22:30 +0000
commita1f523dd2c2f50c434d750f4957fc1825ea1753e (patch)
treed79a686c4d2bc3b3def6b1a8ccb2a19a4ddc463b /compiler/rustc_data_structures/src/graph/reference.rs
parent20f418252f2a207abca10a83ed2b04cb0b7aa57c (diff)
parent6288a721f5ea59a59b4304a7b70c92d7755e8aa8 (diff)
downloadrust-a1f523dd2c2f50c434d750f4957fc1825ea1753e.tar.gz
rust-a1f523dd2c2f50c434d750f4957fc1825ea1753e.zip
Merge from rustc
Diffstat (limited to 'compiler/rustc_data_structures/src/graph/reference.rs')
-rw-r--r--compiler/rustc_data_structures/src/graph/reference.rs22
1 files changed, 5 insertions, 17 deletions
diff --git a/compiler/rustc_data_structures/src/graph/reference.rs b/compiler/rustc_data_structures/src/graph/reference.rs
index c259fe56c15..7a487552f53 100644
--- a/compiler/rustc_data_structures/src/graph/reference.rs
+++ b/compiler/rustc_data_structures/src/graph/reference.rs
@@ -2,38 +2,26 @@ use super::*;
 
 impl<'graph, G: DirectedGraph> DirectedGraph for &'graph G {
     type Node = G::Node;
-}
 
-impl<'graph, G: WithNumNodes> WithNumNodes for &'graph G {
     fn num_nodes(&self) -> usize {
         (**self).num_nodes()
     }
 }
 
-impl<'graph, G: WithStartNode> WithStartNode for &'graph G {
+impl<'graph, G: StartNode> StartNode for &'graph G {
     fn start_node(&self) -> Self::Node {
         (**self).start_node()
     }
 }
 
-impl<'graph, G: WithSuccessors> WithSuccessors for &'graph G {
-    fn successors(&self, node: Self::Node) -> <Self as GraphSuccessors<'_>>::Iter {
+impl<'graph, G: Successors> Successors for &'graph G {
+    fn successors(&self, node: Self::Node) -> impl Iterator<Item = Self::Node> {
         (**self).successors(node)
     }
 }
 
-impl<'graph, G: WithPredecessors> WithPredecessors for &'graph G {
-    fn predecessors(&self, node: Self::Node) -> <Self as GraphPredecessors<'_>>::Iter {
+impl<'graph, G: Predecessors> Predecessors for &'graph G {
+    fn predecessors(&self, node: Self::Node) -> impl Iterator<Item = Self::Node> {
         (**self).predecessors(node)
     }
 }
-
-impl<'iter, 'graph, G: WithPredecessors> GraphPredecessors<'iter> for &'graph G {
-    type Item = G::Node;
-    type Iter = <G as GraphPredecessors<'iter>>::Iter;
-}
-
-impl<'iter, 'graph, G: WithSuccessors> GraphSuccessors<'iter> for &'graph G {
-    type Item = G::Node;
-    type Iter = <G as GraphSuccessors<'iter>>::Iter;
-}