// This test ensures that patterns also get a link generated. //@ compile-flags: -Zunstable-options --generate-link-to-definition #![crate_name = "foo"] //@ has 'src/foo/jump-to-def-pats.rs.html' use std::fmt; pub enum MyEnum { Ok(T), Err(E), Some(T), None, } pub enum X { A, } pub fn foo() -> Result<(), ()> { // FIXME: would be nice to be able to check both the class and the href at the same time so // we could check the text as well... //@ has - '//a[@class="prelude-val"]/@href' '{{channel}}/core/result/enum.Result.html#variant.Ok' //@ has - '//a[@href="{{channel}}/core/result/enum.Result.html#variant.Ok"]' 'Ok' Ok(()) } impl fmt::Display for MyEnum { fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { match self { //@ has - '//a[@href="#12"]' 'Self::Ok' Self::Ok(_) => f.write_str("MyEnum::Ok"), //@ has - '//a[@href="#13"]' 'MyEnum::Err' MyEnum::Err(_) => f.write_str("MyEnum::Err"), //@ has - '//a[@href="#14"]' 'Self::Some' Self::Some(_) => f.write_str("MyEnum::Some"), //@ has - '//a[@href="#15"]' 'Self::None' Self::None => f.write_str("MyEnum::None"), } } } impl X { fn p(&self) -> &str { match self { //@ has - '//a[@href="#19"]' 'Self::A' Self::A => "X::A", } } }