4 个版本 (2 个破坏性更新)
0.3.1 | 2021年9月4日 |
---|---|
0.3.0 | 2021年8月5日 |
0.2.0 | 2021年8月4日 |
0.1.0 | 2021年8月4日 |
#10 in #dpkg
在 2 crates 中使用
9KB
176 行
debcontrol_struct
为结构体自动解析 Debian 控制文件。
用法
为了使用此 crate,您必须将以下依赖项添加到项目的 Cargo.toml
文件中
[dependencies]
debcontrol_struct = "0.3.1"
示例
安装 crate 后,您就可以使用 DebControl
derive 了!
通过定义以下结构
use debcontrol::{Paragraph, Field};
use debcontrol_struct::DebControl;
#[derive(DebControl)]
struct DerivedStruct {
first: String,
multiple_words: String,
optional: Option<String>,
}
然后可以自动从 debcontrol 段落解析结构
let input = &debcontrol::parse_str(
"First: Hello\n\
Multiple-Words: World\n"
).unwrap()[0];
let derived = DerivedStruct::from_paragraph(&input).unwrap();
assert_eq!("Hello", derived.first);
assert_eq!("World", derived.multiple_words);
assert_eq!(None, derived.optional);
许可证
根据您的选择,在以下两者之下许可:[a href="https://github.com/microjoe/debcontrol_struct/blob/HEAD/LICENSE-APACHE" rel="noopener ugc nofollow">Apache 许可证 2.0 版 或 [a href="https://github.com/microjoe/debcontrol_struct/blob/HEAD/LICENSE-MIT" rel="noopener ugc nofollow">MIT 许可证。
除非您明确声明,否则您提交给本项目以包含在内的任何贡献,根据 Apache-2.0 许可证的定义,应如上所述双重许可,不附加任何额外的条款或条件。
依赖关系
~1.5MB
~35K SLoC