#yaml-parser #yaml #parser #deserialize

bin+lib saphyr-parser

完全符合 YAML 1.2 规范的 YAML 解析器

2 个版本

0.0.2 2024 年 6 月 13 日
0.0.1 2024 年 4 月 2 日

#815解析器实现

Download history 378/week @ 2024-05-03 670/week @ 2024-05-10 381/week @ 2024-05-17 1115/week @ 2024-05-24 866/week @ 2024-05-31 683/week @ 2024-06-07 999/week @ 2024-06-14 871/week @ 2024-06-21 758/week @ 2024-06-28 833/week @ 2024-07-05 827/week @ 2024-07-12 771/week @ 2024-07-19 1164/week @ 2024-07-26 1062/week @ 2024-08-02 967/week @ 2024-08-09 819/week @ 2024-08-16

4,154 每月下载量
用于 4 个 crate (2 直接)

MIT/Apache

150KB
3.5K SLoC

saphyr-parser

saphyr-parser 是一个纯 Rust 编写的完全符合 YAML 1.2 规范的解析器实现。

如果您想将 YAML 加载到 Rust 结构体或操作 YAML 对象,请使用 saphyr 而不是 saphyr-parser。此 crate 仅包含解析器。

此作品基于 yaml-rust 并针对符合 YAML 测试套件 进行了修复。 yaml-rust 的解析器受到了 libyamlyaml-cpp 的很大影响。

saphyr-parser 是一个纯 Rust YAML 1.2 实现,它受益于 Rust 语言的安全性和其他好处。

安装

将以下内容添加到您的 Cargo.toml 中

[dependencies]
saphyr-parser = "0.0.2"

或使用 cargo add 自动获取最新版本

cargo add saphyr-parser

TODO 如何做

安全性

此库不会尝试解释 YAML 文档中的任何类型说明符,因此不会因为解析 YAML 文档而出现例如使用字段实例化套接字并与外部世界通信的风险。

规范兼容性

此实现完全符合 YAML 1.2 规范。为了帮助兼容性,yaml-rust2 对(并通过了)YAML 测试套件 进行了测试。

许可证

根据您的选择,许可如下

由于此存储库最初由 chyh1990 维护,因此存在两组许可证。必须在每个版本中包含每组许可证中的一个。有关更多详细信息,请参阅 LICENSE 文件。

您可以在子文件夹.licenses中找到许可证。

贡献

在GitHub上Fork此存储库在GitHub上创建Pull Request。您可能需要点击“跨Fork比较”并选择您的Fork分支。

除非您明确说明,否则您有意提交以包含在作品中的任何贡献,如Apache-2.0许可证中定义的,应双许可如上所述,不附加任何额外条款或条件。

依赖项

~2MB
~29K SLoC