blob: 770f8d7289c3bb2ce26a7c3698f6999a9afc7cc3 [file] [log] [blame]
#![crate_name = "foo"]
// @has 'foo/struct.Bar.html'
// @has '-' '//*[@id="deref-methods"]' 'Methods from Deref<Target = FooC>'
// @has '-' '//*[@class="impl-items"]//*[@id="method.foo_a"]' 'pub fn foo_a(&self)'
// @has '-' '//*[@class="impl-items"]//*[@id="method.foo_b"]' 'pub fn foo_b(&self)'
// @has '-' '//*[@class="impl-items"]//*[@id="method.foo_c"]' 'pub fn foo_c(&self)'
// @has '-' '//*[@class="sidebar-title"]' 'Methods from Deref<Target=FooC>'
// @has '-' '//*[@class="sidebar-links"]/a[@href="#method.foo_a"]' 'foo_a'
// @has '-' '//*[@class="sidebar-links"]/a[@href="#method.foo_b"]' 'foo_b'
// @has '-' '//*[@class="sidebar-links"]/a[@href="#method.foo_c"]' 'foo_c'
pub struct FooA;
pub type FooB = FooA;
pub type FooC = FooB;
impl FooA {
pub fn foo_a(&self) {}
}
impl FooB {
pub fn foo_b(&self) {}
}
impl FooC {
pub fn foo_c(&self) {}
}
pub struct Bar;
impl std::ops::Deref for Bar {
type Target = FooC;
fn deref(&self) -> &Self::Target { unimplemented!() }
}