使用旧的 Rust 2015
0.0.0 |
|
---|
#14 in #serde-yaml
150KB
1.5K SLoC
YAML 序列化和反序列化。它遵循 YAML 规范 1.2。
当前状态:需要帮助!
尽管我开始了这个项目,但我觉得自己无法完成它。因此,如果您想学习 Rust,serde
和 YAML,这个项目可能适合您。只需 告诉我,我们将想办法解决。
该项目处于早期开发阶段,根本不能使用!.
测试驱动开发
所有开发都至少由一个单元测试或集成测试支持。为了尽可能保持源文件轻量和小型,单元测试被放置在通常放置集成测试的位置。考虑到这一点,我们最终可能根本不会在这两种类型之间进行太多区分。
在测试 序列化 时,我们将使用 syntex 生成测试数据结构所需的序列化代码。期望的输出由一个使用现有纯 Python YAML 实现的 Python 程序生成。
所有生成文件之间的依赖关系都包含在我们的顶级 Makefile 中。它被设计成默认目标将打印出所有可用目标的帮助文本。
要运行测试并确保所有生成的文件都是最新的,请运行 make test
。
先决条件
要使用提供的框架运行测试,您需要以下内容
- make
- make 程序处理文件之间的依赖关系并运行正确的进程
- wget
- 用于安装 Python 虚拟环境
请注意,预期构建系统在 Windows 上无法工作。
运行测试
由于存储库包含所有必需的文件(包括生成的文件),您可以在没有先决条件的情况下以及在 Windows 上使用 cargo test
运行测试。
开发屏幕录像
所有开发都记录下来并可供在 YouTube 上使用。没有剪辑,没有剧本,只是我平凡的一天,每一天,编码加解说。
- 使用 Rust 构建 YAML 解析器 (播放列表)
什么是 YAML
待办事项
局限性
本段描述了实现与底层 yaml 规范 要求之间的差异。
- 不支持序列化
- 不支持反序列化
与规范偏差
这是一个详尽的列表,显示了本实现与 规范 建议的不同之处。
- 待办事项...
依赖项
~0.9–1.2MB
~26K SLoC