#生命周期 #变量 #临时 #引用 #过程宏 #临时

hoist_temporaries

过程宏,用于扩展临时变量的生命周期

3 个不稳定版本

0.2.1 2020 年 8 月 3 日
0.2.0 2020 年 8 月 2 日
0.1.0 2020 年 8 月 2 日

#65#临时

BSD-3-Clause

16KB
274

hoist_temporaries

过程宏,用于扩展临时变量的生命周期。

crates.io Documentation Build Status

示例

有关更多示例,请参阅 工作示例

#[hoist_temporaries::hoist_temporaries]
fn main() {
    #[hoist_temporaries::hoist]
    let mut snack = "Cheese";
    if true {
        // Without hoist_temporaries, this would error because the format!() returns a temporary which would otherwise be dropped because it has no owner.
        snack = &format!("{}burger", snack);
    }
    assert_eq!(snack, "Cheeseburger");
}

依赖项

~1.5MB
~35K SLoC