3 个不稳定版本
0.2.1 | 2022 年 12 月 30 日 |
---|---|
0.2.0 | 2022 年 12 月 30 日 |
0.1.0 | 2022 年 12 月 29 日 |
#105 in #implemented
12KB
112 行
Flagtory
一个用于创建命令行标志的简单库。此库允许用户轻松地创建自己的命令行标志。此库的 API 模式受 Go 的 flag 包的启发,该包为用户提供简单的接口。
示例
// bring the module into scope
use flagtory::Flags;
// initialize the flags struct
let flags = Flags::new();
// add your flags using the add method
// this returns a mutable reference to the value
let bool_ref = flags.add("f","this is my flag", true);
assert_eq!(*bool_ref, true);
// you can change the value as long it's the same type
*bool_ref = false;
assert_eq!(*bool_ref, false);
目前,flagtory 仅接受实现了 std::str::FromStr 和 std::any::Any 特质的值。这些值被包装在 Flag 特质中,这就是为什么 &str
没有在 Flag 特质中实现,而是使用 String
代替。此外,用户创建可解析的自定义标志有一些限制。请参阅 此处。请使用最新版本以获得最佳体验。