Function tlua::function5

source ·
pub fn function5<Z, R, A, B, C, D, E>(f: Z) -> Function<Z, (A, B, C, D, E), R>
where Z: FnMut(A, B, C, D, E) -> R,
Expand description

Wraps a type that implements FnMut so that it can be used by tlua.

This is needed because of a limitation in Rust’s inferrence system. Even though in practice functions and closures always have a fixed number of parameters, the FnMut trait of Rust was designed so that it allows calling the same closure with a varying number of parameters. The consequence however is that there is no way of inferring with the trait alone many parameters a function or closure expects.