This crate provides some types and macros that can create closures which type is namable.
To use, as usual,
```rust
use namableclosures::Closure;
fn main() {
let addten:Closure
There are 5 variants of the types, each of them have 3 type variables. The State
variable correspond to the captured environment of a closure. The Input
must be
a unit or tuple type, correspond to the arguments of the closure. The Output
is
the return type of the closure.
In additional to letting you name the closure type, the function body cannot capture any variable by default, so all captures must be explicit.
As this crate depends on unstable featues, unless fn_traits
and unboxed_closures
become stable this crate only works on nightly build.