@@ -17,7 +17,7 @@ use rustc_hir::def::{CtorOf, DefKind as HirDefKind, Res};
17
17
use rustc_hir:: def_id:: { DefId , LOCAL_CRATE } ;
18
18
use rustc_hir:: intravisit:: { self , Visitor } ;
19
19
use rustc_hir:: Node ;
20
- use rustc_hir_pretty:: { fn_to_string, ty_to_string} ;
20
+ use rustc_hir_pretty:: { enum_def_to_string , fn_to_string, ty_to_string} ;
21
21
use rustc_middle:: hir:: map:: Map ;
22
22
use rustc_middle:: middle:: cstore:: ExternCrate ;
23
23
use rustc_middle:: middle:: privacy:: AccessLevels ;
@@ -292,13 +292,12 @@ impl<'l, 'tcx> SaveContext<'l, 'tcx> {
292
292
attributes : lower_attributes ( item. attrs . to_vec ( ) , self ) ,
293
293
} ) )
294
294
}
295
- hir:: ItemKind :: Enum ( ref def, _ ) => {
295
+ hir:: ItemKind :: Enum ( ref def, ref generics ) => {
296
296
let name = item. ident . to_string ( ) ;
297
297
let qualname = format ! ( "::{}" , self . tcx. def_path_str( def_id) ) ;
298
298
filter ! ( self . span_utils, item. ident. span) ;
299
- let variants_str =
300
- def. variants . iter ( ) . map ( |v| v. ident . to_string ( ) ) . collect :: < Vec < _ > > ( ) . join ( ", " ) ;
301
- let value = format ! ( "{}::{{{}}}" , name, variants_str) ;
299
+ let value =
300
+ enum_def_to_string ( def, generics, item. ident . name , item. span , & item. vis ) ;
302
301
Some ( Data :: DefData ( Def {
303
302
kind : DefKind :: Enum ,
304
303
id : id_from_def_id ( def_id) ,
0 commit comments