diff options
Diffstat (limited to 'tests/rustdoc/impl/blanket-impl-78673.rs')
| -rw-r--r-- | tests/rustdoc/impl/blanket-impl-78673.rs | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/tests/rustdoc/impl/blanket-impl-78673.rs b/tests/rustdoc/impl/blanket-impl-78673.rs new file mode 100644 index 00000000000..412d4057406 --- /dev/null +++ b/tests/rustdoc/impl/blanket-impl-78673.rs @@ -0,0 +1,25 @@ +// https://github.com/rust-lang/rust/issues/78673 +#![crate_name = "issue_78673"] + +pub trait Something {} + +pub trait AnAmazingTrait {} + +impl<T: Something> AnAmazingTrait for T {} + +//@ has 'issue_78673/struct.MyStruct.html' +//@ has - '//*[@class="impl"]' 'AnAmazingTrait for MyStruct' +//@ !has - '//*[@class="impl"]' 'AnAmazingTrait for T' +pub struct MyStruct; + +impl AnAmazingTrait for MyStruct {} + +// generic structs may have _both_ specific and blanket impls that apply + +//@ has 'issue_78673/struct.AnotherStruct.html' +//@ has - '//*[@class="impl"]' 'AnAmazingTrait for AnotherStruct<()>' +//@ has - '//*[@class="impl"]' 'AnAmazingTrait for T' +pub struct AnotherStruct<T>(T); + +impl<T: Something> Something for AnotherStruct<T> {} +impl AnAmazingTrait for AnotherStruct<()> {} |
