1 个不稳定版本
| 0.1.0 | 2020 年 8 月 4 日 |
|---|
#5 in #miniserde
47KB
1.5K SLoC
full-moon-compat-luaparse
这个包包含了一些具有 miniserde::Serialize 实现的包装类型,可以将 full-moon AST 序列化为与 luaparse 兼容的 JSON 文件
lib.rs:
full-moon <-miniserde-> luaparse.js
这是我编写的一个库,用于在我之前编写的一些软件和选定的 full_moon lua 解析库之间架起桥梁,这些软件使用的是 luaparse.js 的 JSON 输出。
它提供了一系列围绕 full-moon 类型构建的包装类型,并在它们上实现了 miniserde 的 miniserde::Serialize 特性。使用 Chunk::wrap(ast) 方法从 full-moon 的某个 Ast 开始。
然后您可以在实现 miniserde::Serialize 的任何 x 上使用 miniserde::json::to_string(x),例如上面提到的 Chunk。
注意:此库包含一些代码,用于解决 full-moon 中缺失操作符优先级等问题。由于上游作者目前正在重构解析器,因此尝试分叉当前 API 没有意义。
依赖项
~3.5MB
~69K SLoC