summaryrefslogtreecommitdiffstats
path: root/tests/rustdoc/deref-mut-methods.rs
diff options
context:
space:
mode:
Diffstat (limited to 'tests/rustdoc/deref-mut-methods.rs')
-rw-r--r--tests/rustdoc/deref-mut-methods.rs29
1 files changed, 29 insertions, 0 deletions
diff --git a/tests/rustdoc/deref-mut-methods.rs b/tests/rustdoc/deref-mut-methods.rs
new file mode 100644
index 000000000..fdf843422
--- /dev/null
+++ b/tests/rustdoc/deref-mut-methods.rs
@@ -0,0 +1,29 @@
+#![crate_name = "foo"]
+
+use std::ops;
+
+pub struct Foo;
+
+impl Foo {
+ pub fn foo(&mut self) {}
+}
+
+// @has foo/struct.Bar.html
+// @has - '//*[@class="sidebar-elems"]//*[@class="block"]//a[@href="#method.foo"]' 'foo'
+pub struct Bar {
+ foo: Foo,
+}
+
+impl ops::Deref for Bar {
+ type Target = Foo;
+
+ fn deref(&self) -> &Foo {
+ &self.foo
+ }
+}
+
+impl ops::DerefMut for Bar {
+ fn deref_mut(&mut self) -> &mut Foo {
+ &mut self.foo
+ }
+}