百科.dev
全部条目在线工具AI 编程趋势榜开源项目技术资讯提交条目
登录
< 返回工具列表
R

rapidyaml

> 编程语言
开源

Rapid YAML - 一个用于解析和输出 YAML 的库,并且速度快。

747 stars0 点赞1 次浏览
访问官网GitHub

工具介绍

Rapid YAML - 一个用于解析和输出 YAML 的库,并且速度快。

Rapid YAML 或简称为 ryml。 ryml 是一个用于解析和生成 YAML 的 C++ 库,它能够在从 x64 到不带操作系统的裸机芯片上快速工作。该库完全符合 YAML 1.2 规范,并且通过了 YAML 测试套件中的 100% 用例。解析器基于状态机,不是递归的。目前尚未发现任何已知漏洞。代码是稳健的,并且经过了极其严格的测试和扫描。

ryml 可以解析只读和原地修改的源缓冲区;生成的树仅包含源缓冲区子范围的视图。不进行字符串复制或重复,也不使用虚函数。与构建重量级字典树的解析模型不同, ryml 将数据解析成基于索引的扁平数据树,使其对于大型数据集和裸机系统具有高效性。

使用树结构时, (de)序列化只在您直接请求时发生, 在解析之前/发送之后。内部, 树结构表示只存储字符串视图, 并对用户类型不做任何假设。而且不仅解析或发送速度快; 序列化速度也极快, 在许多情况下, 甚至比最快的 C++ 设施如 std::to_chars() 还要快。 ryml 使读取和修改数据树变得简单快捷。

ryml 可以使用自定义的全局和每个树的内存分配器和错误处理回调函数,并且对异常是无关的。 ryml 提供了默认的分配器实现(使用 std::malloc())和错误处理器(使用异常、 longjmp() 或 std::abort()),但您可以选择不使用它们,并提供自己的内存分配和异常抛出回调函数等。

ryml 不依赖于 STL,即,它不使用任何 std 容器作为其数据结构的一部分,但可以将这些容器序列化和反序列化为数据树。 ryml 附带 c4core 的部分,这是一个小型 C++ 工具多平台库,但您可以忽略 c4core 的源代码版本,并使用自定义或系统安装的 c4core 版本。

Issues· 0 开放

查看全部 Issues在 GitHub 打开

暂无开放 Issues,或尚未同步最近议题。

> 标签

C++cpluspluscpp11custom-allocatoremitter

暂无评论,来聊聊你的看法吧

> 工具信息

发布日期2026年8月1日
最后更新2026年9月17日
分类编程语言
定价开源

> 相关工具

T
TypeScript
JavaScript 的超集,为前端与全栈提供静态类型
P
Python
通用编程语言,广泛用于 Web、数据与 AI
G
Go
Google 推出的简洁高效系统语言