@@ -15,7 +15,6 @@ comments in the section "Moves and initialization" and in `doc.rs`.
15
15
16
16
*/
17
17
18
-
19
18
use std:: hashmap:: { HashMap , HashSet } ;
20
19
use std:: uint;
21
20
use middle:: borrowck:: * ;
@@ -174,6 +173,10 @@ impl MoveData {
174
173
}
175
174
}
176
175
176
+ fn path_loan_path ( & self , index : MovePathIndex ) -> @LoanPath {
177
+ self . paths [ * index] . loan_path
178
+ }
179
+
177
180
fn path < ' a > ( & ' a self , index : MovePathIndex ) -> & ' a MovePath {
178
181
//! Type safe indexing operator
179
182
& self . paths [ * index]
@@ -400,7 +403,7 @@ impl MoveData {
400
403
401
404
// Kill all assignments when the variable goes out of scope:
402
405
for ( assignment_index, assignment) in self . var_assignments . iter ( ) . enumerate ( ) {
403
- match * self . path ( assignment. path ) . loan_path {
406
+ match * self . path_loan_path ( assignment. path ) {
404
407
LpVar ( id) => {
405
408
let kill_id = tcx. region_maps . encl_scope ( id) ;
406
409
dfcx_assign. add_kill ( kill_id, assignment_index) ;
@@ -514,7 +517,7 @@ impl FlowedMoveData {
514
517
self . dfcx_moves . each_gen_bit_frozen ( id, |index| {
515
518
let move = & self . move_data . moves [ index] ;
516
519
let moved_path = move . path;
517
- f ( move , self . move_data . path ( moved_path) . loan_path )
520
+ f ( move , self . move_data . path_loan_path ( moved_path) )
518
521
} )
519
522
}
520
523
@@ -555,7 +558,7 @@ impl FlowedMoveData {
555
558
if base_indices. iter ( ) . any ( |x| x == & moved_path) {
556
559
// Scenario 1 or 2: `loan_path` or some base path of
557
560
// `loan_path` was moved.
558
- if !f ( move , self . move_data . path ( moved_path) . loan_path ) {
561
+ if !f ( move , self . move_data . path_loan_path ( moved_path) ) {
559
562
ret = false ;
560
563
}
561
564
} else {
@@ -564,7 +567,7 @@ impl FlowedMoveData {
564
567
if p == loan_path_index {
565
568
// Scenario 3: some extension of `loan_path`
566
569
// was moved
567
- f ( move , self . move_data . path ( moved_path) . loan_path )
570
+ f ( move , self . move_data . path_loan_path ( moved_path) )
568
571
} else {
569
572
true
570
573
}
0 commit comments