1 #![crate_name = "foo"] 2 3 // @has foo/trait.Foo.html 4 // @has - '//*[@class="sidebar-title"]/a[@href="#required-methods"]' 'Required Methods' 5 // @has - '//*[@class="sidebar-links"]/a' 'bar' 6 // @has - '//*[@class="sidebar-title"]/a[@href="#provided-methods"]' 'Provided Methods' 7 // @has - '//*[@class="sidebar-links"]/a' 'foo' 8 // @has - '//*[@class="sidebar-title"]/a[@href="#associated-const"]' 'Associated Constants' 9 // @has - '//*[@class="sidebar-links"]/a' 'BAR' 10 // @has - '//*[@class="sidebar-title"]/a[@href="#associated-types"]' 'Associated Types' 11 // @has - '//*[@class="sidebar-links"]/a' 'Output' 12 pub trait Foo { 13 const BAR: u32 = 0; 14 type Output: ?Sized; 15 foo()16 fn foo() {} bar() -> Self::Output17 fn bar() -> Self::Output; 18 } 19 20 // @has foo/struct.Bar.html 21 // @has - '//*[@class="sidebar-title"]/a[@href="#fields"]' 'Fields' 22 // @has - '//*[@class="sidebar-links"]/a[@href="#structfield.f"]' 'f' 23 // @has - '//*[@class="sidebar-links"]/a[@href="#structfield.u"]' 'u' 24 // @!has - '//*[@class="sidebar-links"]/a' 'waza' 25 pub struct Bar { 26 pub f: u32, 27 pub u: u32, 28 waza: u32, 29 } 30 31 // @has foo/enum.En.html 32 // @has - '//*[@class="sidebar-title"]/a[@href="#variants"]' 'Variants' 33 // @has - '//*[@class="sidebar-links"]/a' 'foo' 34 // @has - '//*[@class="sidebar-links"]/a' 'bar' 35 pub enum En { 36 foo, 37 bar, 38 } 39 40 // @has foo/union.MyUnion.html 41 // @has - '//*[@class="sidebar-title"]/a[@href="#fields"]' 'Fields' 42 // @has - '//*[@class="sidebar-links"]/a[@href="#structfield.f1"]' 'f1' 43 // @has - '//*[@class="sidebar-links"]/a[@href="#structfield.f2"]' 'f2' 44 // @!has - '//*[@class="sidebar-links"]/a' 'waza' 45 pub union MyUnion { 46 pub f1: u32, 47 pub f2: f32, 48 waza: u32, 49 } 50