diff options
Diffstat (limited to 'compiler/rustc_error_codes/src/error_codes/E0046.md')
-rw-r--r-- | compiler/rustc_error_codes/src/error_codes/E0046.md | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/compiler/rustc_error_codes/src/error_codes/E0046.md b/compiler/rustc_error_codes/src/error_codes/E0046.md new file mode 100644 index 000000000..d8f95330c --- /dev/null +++ b/compiler/rustc_error_codes/src/error_codes/E0046.md @@ -0,0 +1,31 @@ +Items are missing in a trait implementation. + +Erroneous code example: + +```compile_fail,E0046 +trait Foo { + fn foo(); +} + +struct Bar; + +impl Foo for Bar {} +// error: not all trait items implemented, missing: `foo` +``` + +When trying to make some type implement a trait `Foo`, you must, at minimum, +provide implementations for all of `Foo`'s required methods (meaning the +methods that do not have default implementations), as well as any required +trait items like associated types or constants. Example: + +``` +trait Foo { + fn foo(); +} + +struct Bar; + +impl Foo for Bar { + fn foo() {} // ok! +} +``` |