#macro #simplifying #standard #structures #extension

clonelicious

A Rust macro library that simplifies cloning and closure execution. The clone! macro automatically clones variables and immediately executes the closure with the cloned values, streamlining common patterns in Rust programming.

6 releases (stable)

new 1.0.3 Feb 9, 2025
1.0.2 Jan 20, 2025
0.0.2 Jan 17, 2025

#1016 in Data structures

Download history 78/week @ 2025-01-11 415/week @ 2025-01-18 10/week @ 2025-01-25 61/week @ 2025-02-01 240/week @ 2025-02-08

804 downloads per month
Used in 3 crates (2 directly)

MIT license

7KB

clonelicious

Official Documentation

A Rust macro library that simplifies cloning and closure execution. The clone! macro automatically clones variables and immediately executes the closure with the cloned values, streamlining common patterns in Rust programming.

Installation

To install clonelicious run cmd:

cargo add clonelicious

Usage

use clonelicious::*;
let s1: String = String::from("Hello");
let s2: String = String::from("World");
let res: String = clone!(s1, s2, {
    assert_eq!(s1, String::from("Hello"));
    assert_eq!(s2, String::from("World"));
    format!("{} {}", s1, s2)
});
assert_eq!(res, String::from("Hello World"));

License

This project is licensed under the MIT License. See the LICENSE file for details.

Contributing

Contributions are welcome! Please open an issue or submit a pull request.

Contact

For any inquiries, please reach out to the author at ltpp-universe root@ltpp.vip.

No runtime deps