49个版本 (1个稳定版)
新 1.0.0 | 2024年8月17日 |
---|---|
0.25.3 | 2024年6月24日 |
0.25.1 | 2024年4月7日 |
0.23.1 | 2023年6月12日 |
0.9.0 | 2021年11月18日 |
#537 in 解析器实现
每月319次下载
用于 2 crates
1MB
18K SLoC
roead
oead C++库的Rust子库
oead 是一个用于现代任天堂 EAD(现 EPD)游戏标题中使用的常见文件格式的 C++ 库。
目前,oead 只处理最近游戏中广泛使用的非常常见的格式,如 荒野之息 和 超级马里奥奥德赛。
roead 项目通过直接移植或(对于 yaz0 模块)提供对 oead 特性的安全且符合习惯的绑定来提供 oead 的核心功能。(Grezzo 数据表不支持。)有关 oead 的更多信息,请访问 其 GitHub 仓库。
roead 的每个主要模块都可以配置为功能。默认功能集包括 byml
、aamp
、sarc,
和 yaz0
。为了与许多现有的这些格式的工具兼容,还有一个 yaml
功能,该功能可以将 AAMP 和 BYML 文件序列化为 YAML 文档。最后,使用 with-serde
功能提供 serde 支持。
有关 API 文档,请参阅每个模块的文档。
从源代码构建
roead 的大部分是纯 Rust,可以与任何相对较新的版本编译。稳定的 MSRV 是 1.69。然而,yaz0 模块提供了对 oead 代码的 FFI 绑定,因此要使用它,需要以下额外要求
- CMake 3.12+
- 支持 C++17 的编译器
- 构建 zlib 所需的一切
首先,克隆仓库,然后进入roead目录并运行git submodule update --init --recursive
。
贡献
问题跟踪器:https://github.com/NiceneNerd/roead/issues
源代码:https://github.com/NiceneNerd/roead
本项目受GPLv3+许可协议的许可。oead受GPLv2+许可协议的许可。
依赖项
~0.5–28MB
~364K SLoC