#json-schema #generate #type #serializable #protocols #schemafy #debugging

polywrap_schemafy_lib

从JSON模式生成可序列化的Rust类型

1个不稳定版本

0.1.0 2022年11月7日

#1313过程宏

Download history 75/week @ 2024-03-11 86/week @ 2024-03-18 155/week @ 2024-03-25 155/week @ 2024-04-01 66/week @ 2024-04-08 85/week @ 2024-04-15 80/week @ 2024-04-22 85/week @ 2024-04-29 105/week @ 2024-05-06 93/week @ 2024-05-13 70/week @ 2024-05-20 96/week @ 2024-05-27 73/week @ 2024-06-03 70/week @ 2024-06-10 66/week @ 2024-06-17 99/week @ 2024-06-24

316 每月下载量
25 个crate中使用 (通过 polywrap_schemafy)

MIT 许可证

46KB
1K SLoC

schemafy

Build Status Docs

这是一个Rust crate,可以从JSON模式生成可序列化的Rust类型,这些类型可以使用 serde 序列化。不执行如 min_value 这样的检查,而是尽可能紧密地遵循模式的结构。

由于模式可能非常复杂,此crate不能保证为给定的模式生成好的类型,甚至不能生成任何类型,但它确实能够自我启动,这相当酷。

示例

为VS Codes的 调试服务器协议 生成的类型: https://docs.rs/debugserver-types

开发

可以通过 cargo build --features internal-regenerate 重新生成由JSON模式规范生成的类型,如果库本身已进行更改。需要Rustfmt以便 src/schema.rs 可读。

依赖项

~1.2–2MB
~40K SLoC