@@ -190,8 +190,6 @@ impl HirDisplay for ApplicationTy {
190190 } ;
191191 write ! ( f, "{}" , name) ?;
192192 if self . parameters . len ( ) > 0 {
193- write ! ( f, "<" ) ?;
194-
195193 let mut non_default_parameters = Vec :: with_capacity ( self . parameters . len ( ) ) ;
196194 let parameters_to_write = if f. omit_verbose_types ( ) {
197195 match self
@@ -200,8 +198,8 @@ impl HirDisplay for ApplicationTy {
200198 . map ( |generic_def_id| f. db . generic_defaults ( generic_def_id) )
201199 . filter ( |defaults| !defaults. is_empty ( ) )
202200 {
203- Option :: None => self . parameters . 0 . as_ref ( ) ,
204- Option :: Some ( default_parameters) => {
201+ None => self . parameters . 0 . as_ref ( ) ,
202+ Some ( default_parameters) => {
205203 for ( i, parameter) in self . parameters . iter ( ) . enumerate ( ) {
206204 match ( parameter, default_parameters. get ( i) ) {
207205 ( & Ty :: Unknown , _) | ( _, None ) => {
@@ -221,7 +219,7 @@ impl HirDisplay for ApplicationTy {
221219 } else {
222220 self . parameters . 0 . as_ref ( )
223221 } ;
224-
222+ write ! ( f , "<" ) ? ;
225223 f. write_joined ( parameters_to_write, ", " ) ?;
226224 write ! ( f, ">" ) ?;
227225 }
@@ -231,9 +229,9 @@ impl HirDisplay for ApplicationTy {
231229 AssocContainerId :: TraitId ( it) => it,
232230 _ => panic ! ( "not an associated type" ) ,
233231 } ;
234- let trait_name = f. db . trait_data ( trait_) . name . clone ( ) ;
235- let name = f. db . type_alias_data ( type_alias) . name . clone ( ) ;
236- write ! ( f, "{}::{}" , trait_name , name) ?;
232+ let trait_ = f. db . trait_data ( trait_) ;
233+ let type_alias = f. db . type_alias_data ( type_alias) ;
234+ write ! ( f, "{}::{}" , trait_ . name , type_alias . name) ?;
237235 if self . parameters . len ( ) > 0 {
238236 write ! ( f, "<" ) ?;
239237 f. write_joined ( & * self . parameters . 0 , ", " ) ?;
@@ -266,8 +264,8 @@ impl HirDisplay for ProjectionTy {
266264 return write ! ( f, "{}" , TYPE_HINT_TRUNCATION ) ;
267265 }
268266
269- let trait_name = f. db . trait_data ( self . trait_ ( f. db ) ) . name . clone ( ) ;
270- write ! ( f, "<{} as {}" , self . parameters[ 0 ] . display( f. db) , trait_name , ) ?;
267+ let trait_ = f. db . trait_data ( self . trait_ ( f. db ) ) ;
268+ write ! ( f, "<{} as {}" , self . parameters[ 0 ] . display( f. db) , trait_ . name ) ?;
271269 if self . parameters . len ( ) > 1 {
272270 write ! ( f, "<" ) ?;
273271 f. write_joined ( & self . parameters [ 1 ..] , ", " ) ?;
@@ -312,7 +310,7 @@ impl HirDisplay for Ty {
312310 Ty :: Opaque ( _) => write ! ( f, "impl " ) ?,
313311 _ => unreachable ! ( ) ,
314312 } ;
315- write_bounds_like_dyn_trait ( & predicates, f) ?;
313+ write_bounds_like_dyn_trait ( predicates, f) ?;
316314 }
317315 Ty :: Unknown => write ! ( f, "{{unknown}}" ) ?,
318316 Ty :: Infer ( ..) => write ! ( f, "_" ) ?,
@@ -345,7 +343,7 @@ fn write_bounds_like_dyn_trait(
345343 // We assume that the self type is $0 (i.e. the
346344 // existential) here, which is the only thing that's
347345 // possible in actual Rust, and hence don't print it
348- write ! ( f, "{}" , f. db. trait_data( trait_ref. trait_) . name. clone ( ) ) ?;
346+ write ! ( f, "{}" , f. db. trait_data( trait_ref. trait_) . name) ?;
349347 if trait_ref. substs . len ( ) > 1 {
350348 write ! ( f, "<" ) ?;
351349 f. write_joined ( & trait_ref. substs [ 1 ..] , ", " ) ?;
@@ -362,9 +360,8 @@ fn write_bounds_like_dyn_trait(
362360 write ! ( f, "<" ) ?;
363361 angle_open = true ;
364362 }
365- let name =
366- f. db . type_alias_data ( projection_pred. projection_ty . associated_ty ) . name . clone ( ) ;
367- write ! ( f, "{} = " , name) ?;
363+ let type_alias = f. db . type_alias_data ( projection_pred. projection_ty . associated_ty ) ;
364+ write ! ( f, "{} = " , type_alias. name) ?;
368365 projection_pred. ty . hir_fmt ( f) ?;
369366 }
370367 GenericPredicate :: Error => {
@@ -398,7 +395,7 @@ impl TraitRef {
398395 } else {
399396 write ! ( f, ": " ) ?;
400397 }
401- write ! ( f, "{}" , f. db. trait_data( self . trait_) . name. clone ( ) ) ?;
398+ write ! ( f, "{}" , f. db. trait_data( self . trait_) . name) ?;
402399 if self . substs . len ( ) > 1 {
403400 write ! ( f, "<" ) ?;
404401 f. write_joined ( & self . substs [ 1 ..] , ", " ) ?;
0 commit comments