@@ -20,7 +20,8 @@ use rustc_span::symbol::{kw, sym, Symbol};
20
20
use crate :: clean:: {
21
21
self , clean_fn_decl_from_did_and_sig, clean_generics, clean_impl_item, clean_middle_assoc_item,
22
22
clean_middle_field, clean_middle_ty, clean_trait_ref_with_bindings, clean_ty,
23
- clean_ty_generics, clean_variant_def, utils, Attributes , AttributesExt , ImplKind , ItemId , Type ,
23
+ clean_ty_alias_inner_type, clean_ty_generics, clean_variant_def, utils, Attributes ,
24
+ AttributesExt , ImplKind , ItemId , Type ,
24
25
} ;
25
26
use crate :: core:: DocContext ;
26
27
use crate :: formats:: item_type:: ItemType ;
@@ -289,19 +290,14 @@ fn build_union(cx: &mut DocContext<'_>, did: DefId) -> clean::Union {
289
290
290
291
fn build_type_alias ( cx : & mut DocContext < ' _ > , did : DefId ) -> Box < clean:: TypeAlias > {
291
292
let predicates = cx. tcx . explicit_predicates_of ( did) ;
292
- let type_ = clean_middle_ty (
293
- ty:: Binder :: dummy ( cx. tcx . type_of ( did) . instantiate_identity ( ) ) ,
294
- cx,
295
- Some ( did) ,
296
- None ,
297
- ) ;
293
+ let ty = cx. tcx . type_of ( did) . instantiate_identity ( ) ;
294
+ let type_ = clean_middle_ty ( ty:: Binder :: dummy ( ty) , cx, Some ( did) , None ) ;
295
+ let inner_type = clean_ty_alias_inner_type ( ty, cx) ;
298
296
299
297
Box :: new ( clean:: TypeAlias {
300
298
type_,
301
299
generics : clean_ty_generics ( cx, cx. tcx . generics_of ( did) , predicates) ,
302
- // FIXME: Figure-out how to handle inner_type with
303
- // clean_ty_typedef_inner_type
304
- inner_type : None ,
300
+ inner_type,
305
301
item_type : None ,
306
302
} )
307
303
}
0 commit comments