mirror of
https://github.com/rust-lang/rust
synced 2024-10-14 12:33:57 +00:00
tests: object-safety section in traits
This commit is contained in:
parent
40556b968c
commit
a119158eb3
|
@ -14,6 +14,7 @@
|
|||
// @has - '//*[@class="sidebar-elems"]//section//a' 'Output'
|
||||
// @has - '//div[@class="sidebar-elems"]//h3/a[@href="#provided-associated-types"]' 'Provided Associated Types'
|
||||
// @has - '//*[@class="sidebar-elems"]//section//a' 'Extra'
|
||||
// @has - '//div[@class="sidebar-elems"]//h3/a[@href="#object-safety"]' 'Object Safety'
|
||||
pub trait Foo {
|
||||
const FOO: usize;
|
||||
const BAR: u32 = 0;
|
||||
|
@ -24,6 +25,12 @@ fn foo() {}
|
|||
fn bar() -> Self::Output;
|
||||
}
|
||||
|
||||
// @has foo/trait.Safe.html
|
||||
// @!has - '//div[@class="sidebar-elems"]//h3/a[@href="#object-safety"]' ''
|
||||
pub trait Safe {
|
||||
fn access(&self);
|
||||
}
|
||||
|
||||
// @has foo/struct.Bar.html
|
||||
// @has - '//div[@class="sidebar-elems"]//h3/a[@href="#fields"]' 'Fields'
|
||||
// @has - '//*[@class="sidebar-elems"]//section//a[@href="#structfield.f"]' 'f'
|
||||
|
|
27
tests/rustdoc/trait-object-safe.rs
Normal file
27
tests/rustdoc/trait-object-safe.rs
Normal file
|
@ -0,0 +1,27 @@
|
|||
#![crate_name = "foo"]
|
||||
|
||||
// @has 'foo/trait.Unsafe.html'
|
||||
// @has - '//*[@class="object-safety-info"]' 'This trait is not object safe.'
|
||||
// @has - '//*[@id="object-safety"]' 'Object Safety'
|
||||
pub trait Unsafe {
|
||||
fn foo() -> Self;
|
||||
}
|
||||
|
||||
// @has 'foo/trait.Unsafe2.html'
|
||||
// @has - '//*[@class="object-safety-info"]' 'This trait is not object safe.'
|
||||
// @has - '//*[@id="object-safety"]' 'Object Safety'
|
||||
pub trait Unsafe2<T> {
|
||||
fn foo(i: T);
|
||||
}
|
||||
|
||||
// @has 'foo/trait.Safe.html'
|
||||
// @!has - '//*[@class="object-safety-info"]' ''
|
||||
// @!has - '//*[@id="object-safety"]' ''
|
||||
pub trait Safe {
|
||||
fn foo(&self);
|
||||
}
|
||||
|
||||
// @has 'foo/struct.Foo.html'
|
||||
// @!has - '//*[@class="object-safety-info"]' ''
|
||||
// @!has - '//*[@id="object-safety"]' ''
|
||||
pub struct Foo;
|
Loading…
Reference in a new issue