5 个版本

使用旧的 Rust 2015

0.1.4 2019 年 9 月 8 日
0.1.3 2019 年 9 月 5 日
0.1.2 2018 年 12 月 10 日
0.1.1 2018 年 11 月 8 日
0.1.0 2018 年 11 月 5 日

#833 in 命令行界面

Download history 3668/week @ 2023-12-16 1489/week @ 2023-12-23 4408/week @ 2023-12-30 3860/week @ 2024-01-06 4897/week @ 2024-01-13 5082/week @ 2024-01-20 2970/week @ 2024-01-27 4608/week @ 2024-02-03 5396/week @ 2024-02-10 5246/week @ 2024-02-17 6125/week @ 2024-02-24 6624/week @ 2024-03-02 5245/week @ 2024-03-09 3694/week @ 2024-03-16 4861/week @ 2024-03-23 4532/week @ 2024-03-30

18,666 每月下载量
34 个 Crates (7 直接) 中使用

MITNFA 许可证

29KB
454

解析 arg

解析命令行参数的特性和实现。

关于

此 crate 提供了解析命令行参数的特性和实现。该 crate 的核心是 ParseArg 特性。它的工作方式与 FromStr 特性非常相似,但有以下不同之处

  • 它在 &OsStr 上操作,而不是在 &str 上,因此允许更广泛的输入范围。
  • 它提供了一个 parse_owned_arg() 方法,该方法可以被特定化以避免分配。
  • 它要求实现者提供 describe_type() 以打印可读的预期输入描述。
  • 它要求错误类型实现 Display 以启用用户友好的界面。

此外,该 crate 还提供了 ParseArgFromStr 特性,它使任何实现该特性的类型自动实现 ParseArg 特性。这对于为已经实现了 FromStr 的类型实现 ParseArg 非常方便,从而减少了样板代码。

由于匹配 --foo VAL--foo=VAL 参数很常见,并且由于 std 的限制,在 OsStr 上实现这不是一项容易的任务,因此此 crate 还提供了一个匹配和解析此类参数的函数。

此外,由于许多程序支持 -xVAL 风格的参数和短开关组合到一个单个参数中,这也不容易使用 OsStr 实现,此 crate 也提供了相应的辅助函数。

贡献

如果满足以下条件,我将自由地合并新的实现

  • 类型位于 std 中或位于另一个作为 可选 依赖项添加的 crate 中。
  • 类型的描述是语法正确的,是类型的可读解释,可以在不显得不自然的情况下附加到字符串 "输入必须是"。
  • 用户必须能够在不进行任何谷歌搜索的情况下,根据描述了解如何格式化输入。如有疑问,请提供更精确的描述(括号内)。
  • 您的贡献受MIT或MITNFA许可证的许可。

许可证

MITNFA

无运行时依赖