@@ -1817,17 +1817,15 @@ fn is_field_vis_inherited(tcx: TyCtxt<'_>, def_id: DefId) -> bool {
1817
1817
}
1818
1818
}
1819
1819
1820
- impl < ' tcx > Clean < ' tcx , Visibility > for ty:: Visibility {
1821
- fn clean ( & self , _cx : & mut DocContext < ' _ > ) -> Visibility {
1822
- match * self {
1823
- ty:: Visibility :: Public => Visibility :: Public ,
1824
- // NOTE: this is not quite right: `ty` uses `Invisible` to mean 'private',
1825
- // while rustdoc really does mean inherited. That means that for enum variants, such as
1826
- // `pub enum E { V }`, `V` will be marked as `Public` by `ty`, but as `Inherited` by rustdoc.
1827
- // Various parts of clean override `tcx.visibility` explicitly to make sure this distinction is captured.
1828
- ty:: Visibility :: Invisible => Visibility :: Inherited ,
1829
- ty:: Visibility :: Restricted ( module) => Visibility :: Restricted ( module) ,
1830
- }
1820
+ pub ( crate ) fn clean_visibility ( vis : ty:: Visibility ) -> Visibility {
1821
+ match vis {
1822
+ ty:: Visibility :: Public => Visibility :: Public ,
1823
+ // NOTE: this is not quite right: `ty` uses `Invisible` to mean 'private',
1824
+ // while rustdoc really does mean inherited. That means that for enum variants, such as
1825
+ // `pub enum E { V }`, `V` will be marked as `Public` by `ty`, but as `Inherited` by rustdoc.
1826
+ // Various parts of clean override `tcx.visibility` explicitly to make sure this distinction is captured.
1827
+ ty:: Visibility :: Invisible => Visibility :: Inherited ,
1828
+ ty:: Visibility :: Restricted ( module) => Visibility :: Restricted ( module) ,
1831
1829
}
1832
1830
}
1833
1831
@@ -1988,7 +1986,7 @@ fn clean_maybe_renamed_item<'tcx>(
1988
1986
clean_fn_or_proc_macro ( item, sig, generics, body_id, & mut name, cx)
1989
1987
}
1990
1988
ItemKind :: Macro ( ref macro_def, _) => {
1991
- let ty_vis = cx. tcx . visibility ( def_id) . clean ( cx ) ;
1989
+ let ty_vis = clean_visibility ( cx. tcx . visibility ( def_id) ) ;
1992
1990
MacroItem ( Macro {
1993
1991
source : display_macro_source ( cx, name, macro_def, def_id, ty_vis) ,
1994
1992
} )
@@ -2117,7 +2115,7 @@ fn clean_extern_crate<'tcx>(
2117
2115
name: Some ( name) ,
2118
2116
attrs: Box :: new( attrs. clean( cx) ) ,
2119
2117
item_id: crate_def_id. into( ) ,
2120
- visibility: ty_vis . clean ( cx ) ,
2118
+ visibility: clean_visibility ( ty_vis ) ,
2121
2119
kind: box ExternCrateItem { src: orig_name } ,
2122
2120
cfg: attrs. cfg( cx. tcx, & cx. cache. hidden_cfg) ,
2123
2121
} ]
0 commit comments