@@ -126,8 +126,7 @@ impl<'a> Graph<'a> {
126
126
let from_index = self . nodes . len ( ) ;
127
127
self . nodes . push ( node) ;
128
128
self . edges . push ( Edges :: new ( ) ) ;
129
- self . index
130
- . insert ( self . nodes [ from_index] . clone ( ) , from_index) ;
129
+ self . index . insert ( self . node ( from_index) . clone ( ) , from_index) ;
131
130
from_index
132
131
}
133
132
@@ -136,7 +135,7 @@ impl<'a> Graph<'a> {
136
135
let edges = self . edges [ from] . of_kind ( kind) ;
137
136
// Created a sorted list for consistent output.
138
137
let mut edges = edges. to_owned ( ) ;
139
- edges. sort_unstable_by ( |a, b| self . nodes [ a. node ( ) ] . cmp ( & self . nodes [ b. node ( ) ] ) ) ;
138
+ edges. sort_unstable_by ( |a, b| self . node ( a. node ( ) ) . cmp ( & self . node ( b. node ( ) ) ) ) ;
140
139
edges
141
140
}
142
141
@@ -173,8 +172,8 @@ impl<'a> Graph<'a> {
173
172
}
174
173
175
174
fn package_id_for_index ( & self , index : usize ) -> PackageId {
176
- match self . nodes [ index] {
177
- Node :: Package { package_id, .. } => package_id,
175
+ match self . node ( index) {
176
+ Node :: Package { package_id, .. } => * package_id,
178
177
Node :: Feature { .. } => panic ! ( "unexpected feature node" ) ,
179
178
}
180
179
}
@@ -509,7 +508,7 @@ fn add_feature(
509
508
to : Edge ,
510
509
) -> ( bool , usize ) {
511
510
// `to` *must* point to a package node.
512
- assert ! ( matches! { graph. nodes [ to. node( ) ] , Node :: Package { ..} } ) ;
511
+ assert ! ( matches! { graph. node ( to. node( ) ) , Node :: Package { ..} } ) ;
513
512
let node = Node :: Feature {
514
513
node_index : to. node ( ) ,
515
514
name,
0 commit comments