| //@ compile-flags: -Z unstable-options --document-hidden-items --document-private-items |
| |
| // regression test for https://github.com/rust-lang/rust/issues/90781 |
| #![crate_name = "foo"] |
| |
| //@ has foo/trait.TPubVis.html |
| //@ has - '//*[@id="implementors-list"]' 'HidPriv' |
| //@ has - '//*[@id="implementors-list"]' 'HidPub' |
| //@ has - '//*[@id="implementors-list"]' 'VisPriv' |
| //@ has - '//*[@id="implementors-list"]' 'VisPub' |
| pub trait TPubVis {} |
| |
| //@ has foo/trait.TPubHidden.html |
| //@ has - '//*[@id="implementors-list"]' 'HidPriv' |
| //@ has - '//*[@id="implementors-list"]' 'HidPub' |
| //@ has - '//*[@id="implementors-list"]' 'VisPriv' |
| //@ has - '//*[@id="implementors-list"]' 'VisPub' |
| #[doc(hidden)] |
| pub trait TPubHidden {} |
| |
| //@ has foo/trait.TPrivVis.html |
| //@ has - '//*[@id="implementors-list"]' 'HidPriv' |
| //@ has - '//*[@id="implementors-list"]' 'HidPub' |
| //@ has - '//*[@id="implementors-list"]' 'VisPriv' |
| //@ has - '//*[@id="implementors-list"]' 'VisPub' |
| trait TPrivVis {} |
| |
| #[doc(hidden)] |
| //@ has foo/trait.TPrivHidden.html |
| //@ has - '//*[@id="impl-TPrivHidden-for-HidPriv"]' 'HidPriv' |
| //@ has - '//*[@id="impl-TPrivHidden-for-HidPub"]' 'HidPub' |
| //@ has - '//*[@id="impl-TPrivHidden-for-VisPriv"]' 'VisPriv' |
| //@ has - '//*[@id="impl-TPrivHidden-for-VisPub"]' 'VisPub' |
| trait TPrivHidden {} |
| |
| //@ has foo/struct.VisPub.html |
| //@ has - '//*[@id="trait-implementations-list"]' 'TPrivHidden' |
| //@ has - '//*[@id="trait-implementations-list"]' 'TPrivVis' |
| //@ has - '//*[@id="trait-implementations-list"]' 'TPubHidden' |
| //@ has - '//*[@id="trait-implementations-list"]' 'TPubVis' |
| pub struct VisPub; |
| |
| //@ has foo/struct.VisPriv.html |
| //@ has - '//*[@id="trait-implementations-list"]' 'TPrivHidden' |
| //@ has - '//*[@id="trait-implementations-list"]' 'TPrivVis' |
| //@ has - '//*[@id="trait-implementations-list"]' 'TPubHidden' |
| //@ has - '//*[@id="trait-implementations-list"]' 'TPubVis' |
| struct VisPriv; |
| |
| //@ has foo/struct.HidPub.html |
| //@ has - '//*[@id="trait-implementations-list"]' 'TPrivHidden' |
| //@ has - '//*[@id="trait-implementations-list"]' 'TPrivVis' |
| //@ has - '//*[@id="trait-implementations-list"]' 'TPubHidden' |
| //@ has - '//*[@id="trait-implementations-list"]' 'TPubVis' |
| #[doc(hidden)] |
| pub struct HidPub; |
| |
| //@ has foo/struct.HidPriv.html |
| //@ has - '//*[@id="trait-implementations-list"]' 'TPrivHidden' |
| //@ has - '//*[@id="trait-implementations-list"]' 'TPrivVis' |
| //@ has - '//*[@id="trait-implementations-list"]' 'TPubHidden' |
| //@ has - '//*[@id="trait-implementations-list"]' 'TPubVis' |
| #[doc(hidden)] |
| struct HidPriv; |
| |
| macro_rules! implement { |
| ($trait:ident - $($struct:ident)+) => { |
| $( |
| impl $trait for $struct {} |
| )+ |
| } |
| } |
| |
| |
| implement!(TPubVis - VisPub VisPriv HidPub HidPriv); |
| implement!(TPubHidden - VisPub VisPriv HidPub HidPriv); |
| implement!(TPrivVis - VisPub VisPriv HidPub HidPriv); |
| implement!(TPrivHidden - VisPub VisPriv HidPub HidPriv); |