File tree Expand file tree Collapse file tree 1 file changed +8
-6
lines changed Expand file tree Collapse file tree 1 file changed +8
-6
lines changed Original file line number Diff line number Diff line change @@ -114,6 +114,13 @@ impl DisambiguatorState {
114
114
this. next . insert ( ( def_id, data) , index) ;
115
115
this
116
116
}
117
+
118
+ pub fn next ( & mut self , parent : LocalDefId , data : DefPathData ) -> u32 {
119
+ let next_disamb = self . next . entry ( ( parent, data) ) . or_insert ( 0 ) ;
120
+ let disambiguator = * next_disamb;
121
+ * next_disamb = next_disamb. checked_add ( 1 ) . expect ( "disambiguator overflow" ) ;
122
+ disambiguator
123
+ }
117
124
}
118
125
119
126
/// The definition table containing node definitions.
@@ -394,12 +401,7 @@ impl Definitions {
394
401
assert ! ( data != DefPathData :: CrateRoot ) ;
395
402
396
403
// Find the next free disambiguator for this key.
397
- let disambiguator = {
398
- let next_disamb = disambiguator. next . entry ( ( parent, data) ) . or_insert ( 0 ) ;
399
- let disambiguator = * next_disamb;
400
- * next_disamb = next_disamb. checked_add ( 1 ) . expect ( "disambiguator overflow" ) ;
401
- disambiguator
402
- } ;
404
+ let disambiguator = disambiguator. next ( parent, data) ;
403
405
let key = DefKey {
404
406
parent : Some ( parent. local_def_index ) ,
405
407
disambiguated_data : DisambiguatedDefPathData { data, disambiguator } ,
You can’t perform that action at this time.
0 commit comments