async-safe-defer 0.2.0

Runtime-independent LIFO cleanup scopes for synchronous and asynchronous Rust
Documentation
1
2
3
4
5
6
7
8
9
10
use async_safe_defer::{defer, guard};

fn main() {
    let mut values = guard(Vec::new(), |values| println!("final values: {values:?}"));
    values.push(1);
    values.push(2);

    defer!(println!("cleanup"));
    println!("work");
}