mirror of https://github.com/rust-lang/rust
42 lines
1.5 KiB
Plaintext
42 lines
1.5 KiB
Plaintext
error[E0053]: method `values` has an incompatible type for trait
|
|
--> $DIR/mismatched-map-under-self.rs:10:15
|
|
|
|
|
LL | fn values(self) -> Self::Values {
|
|
| ^^^^
|
|
| |
|
|
| expected `&Option<T>`, found `Option<T>`
|
|
| help: change the self-receiver type to match the trait: `&self`
|
|
|
|
|
note: type in trait
|
|
--> $DIR/mismatched-map-under-self.rs:4:15
|
|
|
|
|
LL | fn values(&self) -> Self::Values;
|
|
| ^^^^^
|
|
= note: expected signature `fn(&Option<_>)`
|
|
found signature `fn(Option<_>)`
|
|
|
|
error[E0631]: type mismatch in function arguments
|
|
--> $DIR/mismatched-map-under-self.rs:12:18
|
|
|
|
|
LL | fn values(&self) -> Self::Values;
|
|
| --------------------------------- found signature defined here
|
|
...
|
|
LL | self.map(Insertable::values).unwrap_or_default()
|
|
| --- ^^^^^^^^^^^^^^^^^^ expected due to this
|
|
| |
|
|
| required by a bound introduced by this call
|
|
|
|
|
= note: expected function signature `fn(T) -> _`
|
|
found function signature `fn(&_) -> _`
|
|
note: required by a bound in `Option::<T>::map`
|
|
--> $SRC_DIR/core/src/option.rs:LL:COL
|
|
help: consider wrapping the function in a closure
|
|
|
|
|
LL | self.map(|arg0: T| Insertable::values(&arg0)).unwrap_or_default()
|
|
| +++++++++ +++++++
|
|
|
|
error: aborting due to 2 previous errors
|
|
|
|
Some errors have detailed explanations: E0053, E0631.
|
|
For more information about an error, try `rustc --explain E0053`.
|