@@ -53,19 +53,18 @@ pub(crate) fn print_body_hir(
53
53
edition : Edition ,
54
54
) -> String {
55
55
let header = match owner {
56
- DefWithBodyId :: FunctionId ( it) => it
57
- . lookup ( db)
58
- . id
59
- . resolved ( db, |it| format ! ( "fn {}" , it. name. display( db. upcast( ) , edition) ) ) ,
56
+ DefWithBodyId :: FunctionId ( it) => {
57
+ it. lookup ( db) . id . resolved ( db, |it| format ! ( "fn {}" , it. name. display( db, edition) ) )
58
+ }
60
59
DefWithBodyId :: StaticId ( it) => it
61
60
. lookup ( db)
62
61
. id
63
- . resolved ( db, |it| format ! ( "static {} = " , it. name. display( db. upcast ( ) , edition) ) ) ,
62
+ . resolved ( db, |it| format ! ( "static {} = " , it. name. display( db, edition) ) ) ,
64
63
DefWithBodyId :: ConstId ( it) => it. lookup ( db) . id . resolved ( db, |it| {
65
64
format ! (
66
65
"const {} = " ,
67
66
match & it. name {
68
- Some ( name) => name. display( db. upcast ( ) , edition) . to_string( ) ,
67
+ Some ( name) => name. display( db, edition) . to_string( ) ,
69
68
None => "_" . to_owned( ) ,
70
69
}
71
70
)
@@ -75,8 +74,8 @@ pub(crate) fn print_body_hir(
75
74
let enum_loc = loc. parent . lookup ( db) ;
76
75
format ! (
77
76
"enum {}::{}" ,
78
- enum_loc. id. item_tree( db) [ enum_loc. id. value] . name. display( db. upcast ( ) , edition) ,
79
- loc. id. item_tree( db) [ loc. id. value] . name. display( db. upcast ( ) , edition) ,
77
+ enum_loc. id. item_tree( db) [ enum_loc. id. value] . name. display( db, edition) ,
78
+ loc. id. item_tree( db) [ loc. id. value] . name. display( db, edition) ,
80
79
)
81
80
}
82
81
} ;
@@ -162,7 +161,7 @@ pub(crate) fn print_struct(
162
161
wln ! ( p, "#[fundamental]" ) ;
163
162
}
164
163
w ! ( p, "struct " ) ;
165
- w ! ( p, "{}" , name. display( db. upcast ( ) , edition) ) ;
164
+ w ! ( p, "{}" , name. display( db, edition) ) ;
166
165
print_generic_params ( db, generic_params, & mut p) ;
167
166
match shape {
168
167
FieldsShape :: Record => wln ! ( p, " {{...}}" ) ,
@@ -219,7 +218,7 @@ pub(crate) fn print_function(
219
218
w ! ( p, "extern \" {}\" " , abi. as_str( ) ) ;
220
219
}
221
220
w ! ( p, "fn " ) ;
222
- w ! ( p, "{}" , name. display( db. upcast ( ) , edition) ) ;
221
+ w ! ( p, "{}" , name. display( db, edition) ) ;
223
222
print_generic_params ( db, generic_params, & mut p) ;
224
223
w ! ( p, "(" ) ;
225
224
for ( i, param) in params. iter ( ) . enumerate ( ) {
@@ -260,7 +259,7 @@ fn print_where_clauses(db: &dyn DefDatabase, generic_params: &GenericParams, p:
260
259
}
261
260
WherePredicateTypeTarget :: TypeOrConstParam ( idx) => {
262
261
match generic_params[ * idx] . name ( ) {
263
- Some ( name) => w ! ( p, "{}" , name. display( db. upcast ( ) , p. edition) ) ,
262
+ Some ( name) => w ! ( p, "{}" , name. display( db, p. edition) ) ,
264
263
None => w ! ( p, "Param[{}]" , idx. into_raw( ) ) ,
265
264
}
266
265
w ! ( p, ": " ) ;
@@ -278,7 +277,7 @@ fn print_where_clauses(db: &dyn DefDatabase, generic_params: &GenericParams, p:
278
277
if i != 0 {
279
278
w ! ( p, ", " ) ;
280
279
}
281
- w ! ( p, "{}" , lifetime. display( db. upcast ( ) , p. edition) ) ;
280
+ w ! ( p, "{}" , lifetime. display( db, p. edition) ) ;
282
281
}
283
282
w ! ( p, "> " ) ;
284
283
match target {
@@ -289,7 +288,7 @@ fn print_where_clauses(db: &dyn DefDatabase, generic_params: &GenericParams, p:
289
288
}
290
289
WherePredicateTypeTarget :: TypeOrConstParam ( idx) => {
291
290
match generic_params[ * idx] . name ( ) {
292
- Some ( name) => w ! ( p, "{}" , name. display( db. upcast ( ) , p. edition) ) ,
291
+ Some ( name) => w ! ( p, "{}" , name. display( db, p. edition) ) ,
293
292
None => w ! ( p, "Param[{}]" , idx. into_raw( ) ) ,
294
293
}
295
294
w ! ( p, ": " ) ;
@@ -313,15 +312,15 @@ fn print_generic_params(db: &dyn DefDatabase, generic_params: &GenericParams, p:
313
312
w ! ( p, ", " ) ;
314
313
}
315
314
first = false ;
316
- w ! ( p, "{}" , param. name. display( db. upcast ( ) , p. edition) ) ;
315
+ w ! ( p, "{}" , param. name. display( db, p. edition) ) ;
317
316
}
318
317
for ( i, param) in generic_params. iter_type_or_consts ( ) {
319
318
if !first {
320
319
w ! ( p, ", " ) ;
321
320
}
322
321
first = false ;
323
322
if let Some ( const_param) = param. const_param ( ) {
324
- w ! ( p, "const {}: " , const_param. name. display( db. upcast ( ) , p. edition) ) ;
323
+ w ! ( p, "const {}: " , const_param. name. display( db, p. edition) ) ;
325
324
p. print_type_ref ( const_param. ty ) ;
326
325
if let Some ( default) = const_param. default {
327
326
w ! ( p, " = " ) ;
@@ -330,7 +329,7 @@ fn print_generic_params(db: &dyn DefDatabase, generic_params: &GenericParams, p:
330
329
}
331
330
if let Some ( type_param) = param. type_param ( ) {
332
331
match & type_param. name {
333
- Some ( name) => w ! ( p, "{}" , name. display( db. upcast ( ) , p. edition) ) ,
332
+ Some ( name) => w ! ( p, "{}" , name. display( db, p. edition) ) ,
334
333
None => w ! ( p, "Param[{}]" , i. into_raw( ) ) ,
335
334
}
336
335
if let Some ( default) = type_param. default {
@@ -476,7 +475,7 @@ impl Printer<'_> {
476
475
offset_of
477
476
. fields
478
477
. iter( )
479
- . format_with( "." , |field, f| f( & field. display( self . db. upcast ( ) , edition) ) )
478
+ . format_with( "." , |field, f| f( & field. display( self . db, edition) ) )
480
479
) ;
481
480
}
482
481
Expr :: Path ( path) => self . print_path ( path) ,
@@ -498,7 +497,7 @@ impl Printer<'_> {
498
497
}
499
498
Expr :: Loop { body, label } => {
500
499
if let Some ( lbl) = label {
501
- w ! ( self , "{}: " , self . store[ * lbl] . name. display( self . db. upcast ( ) , self . edition) ) ;
500
+ w ! ( self , "{}: " , self . store[ * lbl] . name. display( self . db, self . edition) ) ;
502
501
}
503
502
w ! ( self , "loop " ) ;
504
503
self . print_expr ( * body) ;
@@ -518,7 +517,7 @@ impl Printer<'_> {
518
517
}
519
518
Expr :: MethodCall { receiver, method_name, args, generic_args } => {
520
519
self . print_expr ( * receiver) ;
521
- w ! ( self , ".{}" , method_name. display( self . db. upcast ( ) , self . edition) ) ;
520
+ w ! ( self , ".{}" , method_name. display( self . db, self . edition) ) ;
522
521
if let Some ( args) = generic_args {
523
522
w ! ( self , "::<" ) ;
524
523
self . print_generic_args ( args) ;
@@ -556,13 +555,13 @@ impl Printer<'_> {
556
555
Expr :: Continue { label } => {
557
556
w ! ( self , "continue" ) ;
558
557
if let Some ( lbl) = label {
559
- w ! ( self , " {}" , self . store[ * lbl] . name. display( self . db. upcast ( ) , self . edition) ) ;
558
+ w ! ( self , " {}" , self . store[ * lbl] . name. display( self . db, self . edition) ) ;
560
559
}
561
560
}
562
561
Expr :: Break { expr, label } => {
563
562
w ! ( self , "break" ) ;
564
563
if let Some ( lbl) = label {
565
- w ! ( self , " {}" , self . store[ * lbl] . name. display( self . db. upcast ( ) , self . edition) ) ;
564
+ w ! ( self , " {}" , self . store[ * lbl] . name. display( self . db, self . edition) ) ;
566
565
}
567
566
if let Some ( expr) = expr {
568
567
self . whitespace ( ) ;
@@ -607,7 +606,7 @@ impl Printer<'_> {
607
606
let edition = self . edition ;
608
607
self . indented ( |p| {
609
608
for field in & * * fields {
610
- w ! ( p, "{}: " , field. name. display( self . db. upcast ( ) , edition) ) ;
609
+ w ! ( p, "{}: " , field. name. display( self . db, edition) ) ;
611
610
p. print_expr ( field. expr ) ;
612
611
wln ! ( p, "," ) ;
613
612
}
@@ -621,7 +620,7 @@ impl Printer<'_> {
621
620
}
622
621
Expr :: Field { expr, name } => {
623
622
self . print_expr ( * expr) ;
624
- w ! ( self , ".{}" , name. display( self . db. upcast ( ) , self . edition) ) ;
623
+ w ! ( self , ".{}" , name. display( self . db, self . edition) ) ;
625
624
}
626
625
Expr :: Await { expr } => {
627
626
self . print_expr ( * expr) ;
@@ -760,7 +759,7 @@ impl Printer<'_> {
760
759
Expr :: Literal ( lit) => self . print_literal ( lit) ,
761
760
Expr :: Block { id : _, statements, tail, label } => {
762
761
let label = label. map ( |lbl| {
763
- format ! ( "{}: " , self . store[ lbl] . name. display( self . db. upcast ( ) , self . edition) )
762
+ format ! ( "{}: " , self . store[ lbl] . name. display( self . db, self . edition) )
764
763
} ) ;
765
764
self . print_block ( label. as_deref ( ) , statements, tail) ;
766
765
}
@@ -846,7 +845,7 @@ impl Printer<'_> {
846
845
let oneline = matches ! ( self . line_format, LineFormat :: Oneline ) ;
847
846
self . indented ( |p| {
848
847
for ( idx, arg) in args. iter ( ) . enumerate ( ) {
849
- let field_name = arg. name . display ( self . db . upcast ( ) , edition) . to_string ( ) ;
848
+ let field_name = arg. name . display ( self . db , edition) . to_string ( ) ;
850
849
851
850
let mut same_name = false ;
852
851
if let Pat :: Bind { id, subpat : None } = & self . store [ arg. pat ] {
@@ -1019,7 +1018,7 @@ impl Printer<'_> {
1019
1018
BindingAnnotation :: Ref => "ref " ,
1020
1019
BindingAnnotation :: RefMut => "ref mut " ,
1021
1020
} ;
1022
- w ! ( self , "{}{}" , mode, name. display( self . db. upcast ( ) , self . edition) ) ;
1021
+ w ! ( self , "{}{}" , mode, name. display( self . db, self . edition) ) ;
1023
1022
}
1024
1023
1025
1024
fn print_path ( & mut self , path : & Path ) {
@@ -1030,7 +1029,7 @@ impl Printer<'_> {
1030
1029
let loc = $it. lookup( self . db) ;
1031
1030
let tree = loc. item_tree_id( ) . item_tree( self . db) ;
1032
1031
let name = & tree[ loc. id. value] . name;
1033
- w!( self , "{}" , name. display( self . db. upcast ( ) , self . edition) ) ;
1032
+ w!( self , "{}" , name. display( self . db, self . edition) ) ;
1034
1033
} } ;
1035
1034
}
1036
1035
match * it {
@@ -1046,7 +1045,7 @@ impl Printer<'_> {
1046
1045
}
1047
1046
1048
1047
if let Some ( s) = s {
1049
- w ! ( self , "::{}" , s. display( self . db. upcast ( ) , self . edition) ) ;
1048
+ w ! ( self , "::{}" , s. display( self . db, self . edition) ) ;
1050
1049
}
1051
1050
return w ! ( self , ")" ) ;
1052
1051
}
@@ -1088,7 +1087,7 @@ impl Printer<'_> {
1088
1087
w ! ( self , "::" ) ;
1089
1088
}
1090
1089
1091
- w ! ( self , "{}" , segment. name. display( self . db. upcast ( ) , self . edition) ) ;
1090
+ w ! ( self , "{}" , segment. name. display( self . db, self . edition) ) ;
1092
1091
if let Some ( generics) = segment. args_and_bindings {
1093
1092
w ! ( self , "::<" ) ;
1094
1093
self . print_generic_args ( generics) ;
@@ -1121,7 +1120,7 @@ impl Printer<'_> {
1121
1120
w ! ( self , ", " ) ;
1122
1121
}
1123
1122
first = false ;
1124
- w ! ( self , "{}" , binding. name. display( self . db. upcast ( ) , self . edition) ) ;
1123
+ w ! ( self , "{}" , binding. name. display( self . db, self . edition) ) ;
1125
1124
if !binding. bounds . is_empty ( ) {
1126
1125
w ! ( self , ": " ) ;
1127
1126
self . print_type_bounds ( & binding. bounds ) ;
@@ -1145,7 +1144,7 @@ impl Printer<'_> {
1145
1144
let generic_params = self . db . generic_params ( param. parent ( ) ) ;
1146
1145
1147
1146
match generic_params[ param. local_id ( ) ] . name ( ) {
1148
- Some ( name) => w ! ( self , "{}" , name. display( self . db. upcast ( ) , self . edition) ) ,
1147
+ Some ( name) => w ! ( self , "{}" , name. display( self . db, self . edition) ) ,
1149
1148
None => w ! ( self , "Param[{}]" , param. local_id( ) . into_raw( ) ) ,
1150
1149
}
1151
1150
}
@@ -1154,7 +1153,7 @@ impl Printer<'_> {
1154
1153
match lt_ref {
1155
1154
LifetimeRef :: Static => w ! ( self , "'static" ) ,
1156
1155
LifetimeRef :: Named ( lt) => {
1157
- w ! ( self , "{}" , lt. display( self . db. upcast ( ) , self . edition) )
1156
+ w ! ( self , "{}" , lt. display( self . db, self . edition) )
1158
1157
}
1159
1158
LifetimeRef :: Placeholder => w ! ( self , "'_" ) ,
1160
1159
LifetimeRef :: Error => w ! ( self , "'{{error}}" ) ,
@@ -1270,7 +1269,7 @@ impl Printer<'_> {
1270
1269
"for<{}> " ,
1271
1270
lifetimes
1272
1271
. iter( )
1273
- . map( |it| it. display( self . db. upcast ( ) , self . edition) )
1272
+ . map( |it| it. display( self . db, self . edition) )
1274
1273
. format( ", " )
1275
1274
. to_string( )
1276
1275
) ;
@@ -1286,7 +1285,7 @@ impl Printer<'_> {
1286
1285
}
1287
1286
match arg {
1288
1287
UseArgRef :: Name ( it) => {
1289
- w ! ( self , "{}" , it. display( self . db. upcast ( ) , self . edition) )
1288
+ w ! ( self , "{}" , it. display( self . db, self . edition) )
1290
1289
}
1291
1290
UseArgRef :: Lifetime ( it) => self . print_lifetime_ref ( it) ,
1292
1291
}
0 commit comments