|
| 1 | +// This test ensures that impl/trait associated items are listed in the sidebar. |
| 2 | + |
| 3 | +// ignore-tidy-linelength |
| 4 | + |
| 5 | +#![feature(inherent_associated_types)] |
| 6 | +#![feature(associated_type_defaults)] |
| 7 | +#![allow(incomplete_features)] |
| 8 | +#![crate_name = "foo"] |
| 9 | + |
| 10 | +//@ has 'foo/struct.Bar.html' |
| 11 | +pub struct Bar; |
| 12 | + |
| 13 | +impl Bar { |
| 14 | + //@ has - '//*[@class="sidebar-elems"]//h3[1]' 'Associated Constants' |
| 15 | + //@ has - '//*[@class="sidebar-elems"]//ul[@class="block associatedconstant"]/li/a[@href="#associatedconstant.X"]' 'X' |
| 16 | + pub const X: u8 = 12; |
| 17 | + //@ has - '//*[@class="sidebar-elems"]//h3[2]' 'Associated Types' |
| 18 | + //@ has - '//*[@class="sidebar-elems"]//ul[@class="block associatedtype"]/li/a[@href="#associatedtype.Y"]' 'Y' |
| 19 | + pub type Y = u8; |
| 20 | +} |
| 21 | + |
| 22 | +//@ has 'foo/trait.Foo.html' |
| 23 | +pub trait Foo { |
| 24 | + //@ has - '//*[@class="sidebar-elems"]//h3[5]' 'Required Methods' |
| 25 | + //@ has - '//*[@class="sidebar-elems"]//ul[@class="block"][5]/li/a[@href="#tymethod.yeay"]' 'yeay' |
| 26 | + fn yeay(); |
| 27 | + //@ has - '//*[@class="sidebar-elems"]//h3[6]' 'Provided Methods' |
| 28 | + //@ has - '//*[@class="sidebar-elems"]//ul[@class="block"][6]/li/a[@href="#method.boo"]' 'boo' |
| 29 | + fn boo() {} |
| 30 | + //@ has - '//*[@class="sidebar-elems"]//h3[1]' 'Required Associated Constants' |
| 31 | + //@ has - '//*[@class="sidebar-elems"]//ul[@class="block"][1]/li/a[@href="#associatedconstant.W"]' 'W' |
| 32 | + const W: u32; |
| 33 | + //@ has - '//*[@class="sidebar-elems"]//h3[2]' 'Provided Associated Constants' |
| 34 | + //@ has - '//*[@class="sidebar-elems"]//ul[@class="block"][2]/li/a[@href="#associatedconstant.U"]' 'U' |
| 35 | + const U: u32 = 0; |
| 36 | + //@ has - '//*[@class="sidebar-elems"]//h3[3]' 'Required Associated Types' |
| 37 | + //@ has - '//*[@class="sidebar-elems"]//ul[@class="block"][3]/li/a[@href="#associatedtype.Z"]' 'Z' |
| 38 | + type Z; |
| 39 | + //@ has - '//*[@class="sidebar-elems"]//h3[4]' 'Provided Associated Types' |
| 40 | + //@ has - '//*[@class="sidebar-elems"]//ul[@class="block"][4]/li/a[@href="#associatedtype.T"]' 'T' |
| 41 | + type T = u32; |
| 42 | +} |
0 commit comments