about summary refs log tree commit diff
path: root/tests/rustdoc/impl/impl-everywhere.rs
diff options
context:
space:
mode:
authorGuillaume Gomez <guillaume1.gomez@gmail.com>2025-05-05 17:01:08 +0200
committerGuillaume Gomez <guillaume1.gomez@gmail.com>2025-05-05 17:47:18 +0200
commitb84f4cc39e99f801dcd37125dffa67eb796c85b8 (patch)
tree071def2349dabae166fd66b06ee9346aa825abb9 /tests/rustdoc/impl/impl-everywhere.rs
parentbe71d8b24f1aebe9c45279d95a76db8fa6a62574 (diff)
downloadrust-b84f4cc39e99f801dcd37125dffa67eb796c85b8.tar.gz
rust-b84f4cc39e99f801dcd37125dffa67eb796c85b8.zip
Created `tests/rustdoc/impl` subfolder to limit number of files at the top level
Diffstat (limited to 'tests/rustdoc/impl/impl-everywhere.rs')
-rw-r--r--tests/rustdoc/impl/impl-everywhere.rs30
1 files changed, 30 insertions, 0 deletions
diff --git a/tests/rustdoc/impl/impl-everywhere.rs b/tests/rustdoc/impl/impl-everywhere.rs
new file mode 100644
index 00000000000..d1a4e901bad
--- /dev/null
+++ b/tests/rustdoc/impl/impl-everywhere.rs
@@ -0,0 +1,30 @@
+#![crate_name = "foo"]
+
+pub trait Foo {}
+pub trait Foo2 {}
+
+pub struct Bar;
+
+impl Foo for Bar {}
+impl Foo2 for Bar {}
+
+//@ has foo/fn.foo.html '//section[@id="main-content"]//pre' "x: &'x impl Foo"
+//@ has foo/fn.foo.html '//section[@id="main-content"]//pre' "-> &'x impl Foo"
+pub fn foo<'x>(x: &'x impl Foo) -> &'x impl Foo {
+    x
+}
+
+//@ has foo/fn.foo2.html '//section[@id="main-content"]//pre' "x: &'x impl Foo"
+//@ has foo/fn.foo2.html '//section[@id="main-content"]//pre' '-> impl Foo2'
+pub fn foo2<'x>(_x: &'x impl Foo) -> impl Foo2 {
+    Bar
+}
+
+//@ has foo/fn.foo_foo.html '//section[@id="main-content"]//pre' '-> impl Foo + Foo2'
+pub fn foo_foo() -> impl Foo + Foo2 {
+    Bar
+}
+
+//@ has foo/fn.foo_foo_foo.html '//section[@id="main-content"]//pre' "x: &'x (impl Foo + Foo2)"
+pub fn foo_foo_foo<'x>(_x: &'x (impl Foo + Foo2)) {
+}