about summary refs log tree commit diff
path: root/tests/rustdoc/trait-object-safe.rs
diff options
context:
space:
mode:
authorAlexis (Poliorcetics) Bourget <ab_github@poliorcetiq.eu>2023-07-01 19:13:26 +0200
committerAlexis (Poliorcetics) Bourget <ab_github@poliorcetiq.eu>2023-10-29 22:57:45 +0100
commita119158eb39a5e251d0d309a261c11743b996ce0 (patch)
tree7dcc51295487af595c7c3850e7c7fa9c78d09bf1 /tests/rustdoc/trait-object-safe.rs
parent40556b968ca044108d5f28d7a8810821c8be7d9d (diff)
downloadrust-a119158eb39a5e251d0d309a261c11743b996ce0.tar.gz
rust-a119158eb39a5e251d0d309a261c11743b996ce0.zip
tests: object-safety section in traits
Diffstat (limited to 'tests/rustdoc/trait-object-safe.rs')
-rw-r--r--tests/rustdoc/trait-object-safe.rs27
1 files changed, 27 insertions, 0 deletions
diff --git a/tests/rustdoc/trait-object-safe.rs b/tests/rustdoc/trait-object-safe.rs
new file mode 100644
index 00000000000..818843f7558
--- /dev/null
+++ b/tests/rustdoc/trait-object-safe.rs
@@ -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;