blob: 0e39bd9df188f25afea7791dcb1b3bd7a293281a [file]
// test for trait methods with `doc(hidden)`.
#![crate_name = "foo"]
//@ has foo/trait.Trait.html
//@ !has - '//*[@id="associatedtype.Foo"]' 'type Foo'
//@ has - '//*[@id="associatedtype.Bar"]' 'type Bar'
//@ !has - '//*[@id="tymethod.f"]' 'fn f()'
//@ has - '//*[@id="tymethod.g"]' 'fn g()'
pub trait Trait {
#[doc(hidden)]
type Foo;
type Bar;
#[doc(hidden)]
fn f();
fn g();
}
//@ has foo/struct.S.html
//@ !has - '//*[@id="associatedtype.Foo"]' 'type Foo'
//@ has - '//*[@id="associatedtype.Bar"]' 'type Bar'
//@ !has - '//*[@id="method.f"]' 'fn f()'
//@ has - '//*[@id="method.g"]' 'fn g()'
pub struct S;
impl Trait for S {
type Foo = ();
type Bar = ();
fn f() {}
fn g() {}
}
// Regression test for https://github.com/rust-lang/rust/issues/151454.
//@ has foo/fn.hidden_projection.html
//@ has - '//pre[@class="rust item-decl"]' 'T::Foo'
//@ !has - '//pre[@class="rust item-decl"]//a[@href="trait.Trait.html#associatedtype.Foo"]' 'Foo'
pub fn hidden_projection<T: Trait>(_: T::Foo) {}