mirror of https://github.com/rust-lang/rust
43 lines
1.2 KiB
Rust
43 lines
1.2 KiB
Rust
// This test ensures that impl associated items always follow this order:
|
|
//
|
|
// 1. Consts
|
|
// 2. Types
|
|
// 3. Functions
|
|
|
|
#![feature(inherent_associated_types)]
|
|
#![allow(incomplete_features)]
|
|
#![crate_name = "foo"]
|
|
|
|
//@ has 'foo/struct.Bar.html'
|
|
pub struct Bar;
|
|
|
|
impl Bar {
|
|
//@ has - '//*[@id="implementations-list"]//*[@class="impl-items"]/section[3]/h4' \
|
|
// 'pub fn foo()'
|
|
pub fn foo() {}
|
|
//@ has - '//*[@id="implementations-list"]//*[@class="impl-items"]/section[1]/h4' \
|
|
// 'pub const X: u8 = 12u8'
|
|
pub const X: u8 = 12;
|
|
//@ has - '//*[@id="implementations-list"]//*[@class="impl-items"]/section[2]/h4' \
|
|
// 'pub type Y = u8'
|
|
pub type Y = u8;
|
|
}
|
|
|
|
pub trait Foo {
|
|
const W: u32;
|
|
fn yeay();
|
|
type Z;
|
|
}
|
|
|
|
impl Foo for Bar {
|
|
//@ has - '//*[@id="trait-implementations-list"]//*[@class="impl-items"]/section[2]/h4' \
|
|
// 'type Z = u8'
|
|
type Z = u8;
|
|
//@ has - '//*[@id="trait-implementations-list"]//*[@class="impl-items"]/section[1]/h4' \
|
|
// 'const W: u32 = 12u32'
|
|
const W: u32 = 12;
|
|
//@ has - '//*[@id="trait-implementations-list"]//*[@class="impl-items"]/section[3]/h4' \
|
|
// 'fn yeay()'
|
|
fn yeay() {}
|
|
}
|