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日 |
#1536 in 解析器实现
13KB
249 行
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);
许可
根据您的选择,许可协议为Apache License,Version 2.0或MIT license。
除非您明确声明,否则您有意提交给本项目并由您定义的贡献,根据Apache-2.0许可协议,将双重许可,无任何附加条款或条件。
依赖项
~0.9–1.2MB
~24K SLoC