3 个不稳定版本

0.2.1 2023 年 8 月 23 日
0.2.0 2023 年 1 月 15 日
0.1.0 2021 年 10 月 18 日

457#存储 中排名

Download history • Rust 包仓库 23/week @ 2024-03-11 • Rust 包仓库 21/week @ 2024-03-18 • Rust 包仓库 195/week @ 2024-03-25 • Rust 包仓库 55/week @ 2024-04-01 • Rust 包仓库 15/week @ 2024-04-08 • Rust 包仓库 12/week @ 2024-04-15 • Rust 包仓库 18/week @ 2024-04-22 • Rust 包仓库 24/week @ 2024-04-29 • Rust 包仓库 9/week @ 2024-05-06 • Rust 包仓库 13/week @ 2024-05-13 • Rust 包仓库 19/week @ 2024-05-20 • Rust 包仓库 21/week @ 2024-05-27 • Rust 包仓库 19/week @ 2024-06-03 • Rust 包仓库 18/week @ 2024-06-10 • Rust 包仓库 14/week @ 2024-06-17 • Rust 包仓库 15/week @ 2024-06-24 • Rust 包仓库

每月 68 次下载
stratisd 中使用

MPL-2.0 许可证

14KB
241

stratisd_proc_macros

该包目前用于存储 stratisd 使用的进程宏,通过代码生成减少样板代码。

#[strat_pool_impl_gen]

此宏旨在附加到 impl... StratPool 项。它将添加

属性

#[pool_rollback]:此属性附加到 impl 块中的方法,表示 Stratis 应该监控此方法的返回值以检测潜在的回滚失败,如果检测到,则应将池置于仅维护模式,直到回滚失败被纠正。所有需要通过定义处理池回滚的方法都必须接受一个 &mut self 引用,以便在回滚失败时设置维护模式标志。

#[pool_mutatating_action(STATE)]:此属性附加到 impl 块中的方法,表示此操作可以修改池的内部状态。这包括对设备上的底层数据结构或元数据的任何更改。所有接受 &mut self 引用的方法在定义上都是修改操作。然而,也可能存在具有 &self 引用的方法,这些方法也是修改操作。STATE 与 ActionAvailability 枚举的某个变体相对应,例如 FullNoRequests 等。

依赖关系

~1.5MB
~35K SLoC