#closures #clone #capture #dom #lambda

clonelet

A simple macro to capture by clone in closures

2 unstable releases

0.2.0 Jul 30, 2023
0.1.0 Jul 30, 2023

#2583 in Rust patterns

Download history 4/week @ 2024-11-13 15/week @ 2024-11-20 30/week @ 2024-11-27 72/week @ 2024-12-04 41/week @ 2024-12-11 11/week @ 2024-12-18 25/week @ 2025-01-01 68/week @ 2025-01-08 34/week @ 2025-01-15 25/week @ 2025-01-22 8/week @ 2025-01-29 59/week @ 2025-02-05 53/week @ 2025-02-12 13/week @ 2025-02-19 34/week @ 2025-02-26

161 downloads per month
Used in 7 crates (3 directly)

MIT/Apache

5KB
91 lines

Clonelet

A simple macro to capture by clone in closures. Your closure doesn't need to live inside a macro.

Example

let closure = {
    clone!(x, y, mut z);

    move || {}
};

Generates:

let closure = {
    let x = x.clone();
    let y = y.clone();
    let mut z = z.clone();

    move || {}
};

No runtime deps