mirror of https://github.com/rust-lang/rust
45 lines
1.1 KiB
Rust
45 lines
1.1 KiB
Rust
// https://github.com/rust-lang/rust/issues/79201
|
|
#![crate_name="foo"]
|
|
|
|
#![feature(doc_cfg)]
|
|
|
|
//@ has 'foo/trait.Foo.html'
|
|
//@ count - '//*[@class="stab portability"]' 6
|
|
//@ matches - '//*[@class="stab portability"]' 'crate feature foo-root'
|
|
//@ matches - '//*[@class="stab portability"]' 'crate feature foo-public-mod'
|
|
//@ matches - '//*[@class="stab portability"]' 'crate feature foo-private-mod'
|
|
//@ matches - '//*[@class="stab portability"]' 'crate feature foo-fn'
|
|
//@ matches - '//*[@class="stab portability"]' 'crate feature foo-method'
|
|
|
|
pub trait Foo {}
|
|
|
|
#[doc(cfg(feature = "foo-root"))]
|
|
impl crate::Foo for usize {}
|
|
|
|
#[doc(cfg(feature = "foo-public-mod"))]
|
|
pub mod public {
|
|
impl crate::Foo for u8 {}
|
|
}
|
|
|
|
#[doc(cfg(feature = "foo-private-mod"))]
|
|
mod private {
|
|
impl crate::Foo for u16 {}
|
|
}
|
|
|
|
#[doc(cfg(feature = "foo-const"))]
|
|
const _: () = {
|
|
impl crate::Foo for u32 {}
|
|
};
|
|
|
|
#[doc(cfg(feature = "foo-fn"))]
|
|
fn __() {
|
|
impl crate::Foo for u64 {}
|
|
}
|
|
|
|
#[doc(cfg(feature = "foo-method"))]
|
|
impl dyn Foo {
|
|
fn __() {
|
|
impl crate::Foo for u128 {}
|
|
}
|
|
}
|