| #![feature(min_specialization)] |
| |
| //@ has default_trait_method/trait.Item.html |
| pub trait Item { |
| //@ has - '//*[@id="tymethod.foo"]' 'fn foo()' |
| //@ !has - '//*[@id="tymethod.foo"]' 'default fn foo()' |
| fn foo(); |
| |
| //@ has - '//*[@id="tymethod.bar"]' 'fn bar()' |
| //@ !has - '//*[@id="tymethod.bar"]' 'default fn bar()' |
| fn bar(); |
| |
| //@ has - '//*[@id="tymethod.baz"]' 'unsafe fn baz()' |
| //@ !has - '//*[@id="tymethod.baz"]' 'default unsafe fn baz()' |
| unsafe fn baz(); |
| |
| //@ has - '//*[@id="tymethod.quux"]' 'unsafe fn quux()' |
| //@ !has - '//*[@id="tymethod.quux"]' 'default unsafe fn quux()' |
| unsafe fn quux(); |
| |
| //@ has - '//*[@id="method.xyzzy"]' 'fn xyzzy()' |
| //@ !has - '//*[@id="method.xyzzy"]' 'default fn xyzzy()' |
| fn xyzzy() {} |
| } |
| |
| //@ has default_trait_method/struct.Foo.html |
| pub struct Foo; |
| impl Item for Foo { |
| //@ has - '//*[@id="method.foo"]' 'default fn foo()' |
| default fn foo() {} |
| |
| //@ has - '//*[@id="method.bar"]' 'fn bar()' |
| //@ !has - '//*[@id="method.bar"]' 'default fn bar()' |
| fn bar() {} |
| |
| //@ has - '//*[@id="method.baz"]' 'default unsafe fn baz()' |
| default unsafe fn baz() {} |
| |
| //@ has - '//*[@id="method.quux"]' 'unsafe fn quux()' |
| //@ !has - '//*[@id="method.quux"]' 'default unsafe fn quux()' |
| unsafe fn quux() {} |
| |
| //@ has - '//*[@id="method.xyzzy"]' 'fn xyzzy()' |
| //@ !has - '//*[@id="method.xyzzy"]' 'default fn xyzzy()' |
| } |