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| { });
} You 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!
}
© 2010 The Rust Project Developers
Licensed under the Apache License, Version 2.0 or the MIT license, at your option.
https://doc.rust-lang.org/error_codes/E0593.html