You tried to supply an Fn
-based type with an incorrect number of arguments
than what was expected.
Erroneous code example:
fn foo<F: Fn()>(x: F) { }
fn main() {
// [E0593] closure takes 1 argument but 0 arguments are required
foo(|y| { });
}
RunYou have to provide the same number of arguments as expected by the Fn
-based
type. So to fix the previous example, we need to remove the y
argument:
fn foo<F: Fn()>(x: F) { }
fn main() {
foo(|| { }); // ok!
}
Run