#debian #control #deb #dpkg

debcontrol_struct

结构体的自动Debian控制文件解析

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 解析器实现

MIT/Apache

13KB
249

debcontrol_struct

Build Latest version Documentation License

结构体的自动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