diff options
Diffstat (limited to 'tests/rustdoc/elided-lifetime.rs')
-rw-r--r-- | tests/rustdoc/elided-lifetime.rs | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/tests/rustdoc/elided-lifetime.rs b/tests/rustdoc/elided-lifetime.rs new file mode 100644 index 000000000..006132ef8 --- /dev/null +++ b/tests/rustdoc/elided-lifetime.rs @@ -0,0 +1,43 @@ +// aux-build:elided-lifetime.rs +// +// rust-lang/rust#75225 +// +// Since Rust 2018 we encourage writing out <'_> explicitly to make it clear +// that borrowing is occurring. Make sure rustdoc is following the same idiom. + +#![crate_name = "foo"] + +pub struct Ref<'a>(&'a u32); +type ARef<'a> = Ref<'a>; + +// @has foo/fn.test1.html +// @matchesraw - "Ref</a><'_>" +pub fn test1(a: &u32) -> Ref { + Ref(a) +} + +// @has foo/fn.test2.html +// @matchesraw - "Ref</a><'_>" +pub fn test2(a: &u32) -> Ref<'_> { + Ref(a) +} + +// @has foo/fn.test3.html +// @matchesraw - "Ref</a><'_>" +pub fn test3(a: &u32) -> ARef { + Ref(a) +} + +// @has foo/fn.test4.html +// @matchesraw - "Ref</a><'_>" +pub fn test4(a: &u32) -> ARef<'_> { + Ref(a) +} + +// Ensure external paths in inlined docs also display elided lifetime +// @has foo/bar/fn.test5.html +// @matchesraw - "Ref</a><'_>" +// @has foo/bar/fn.test6.html +// @matchesraw - "Ref</a><'_>" +#[doc(inline)] +pub extern crate bar; |