2个版本
0.1.1 | 2023年4月30日 |
---|---|
0.1.0 | 2022年3月22日 |
#1345 在 数据库接口
36 每月下载量
在 apivolve 中使用
47KB
1.5K SLoC
Apivolve生成器API
本项目是 Apivolve 的一部分,Apivolve是一个用于描述api变化的进化文件的项目。
API描述将自动转换为代码进行解析,包括完全向后兼容。这是通过为每种语言编写生成器来完成的,这些生成器可以完全独立于主Apivolve仓库编写。
如果您想使用Rust创建自己的Apivolve生成器,本项目适用于您。您可以使用任何其他语言;在这种情况下,您需要自行解析JSON,并且不需要这个库(示例)。
此仓库包含
- Apivolve用于描述API的Rust类型
- 在Rust中请求和解析此数据的样板代码。
- 一些语言的简单生成器示例。
协议v1
版本1目前是最新/唯一版本。
通信通过localhost TCP连接进行。
编辑:目前仅支持嵌入式(Rust),然后使用Apivolve本身引导协议
- Apivolve运行生成器可执行文件,将TCP地址作为参数。
- 生成器发送它期望使用的配置(
AcceptedFormat
)。 - Apivolve发送生成器选项,例如输出目录和参数(
UserPreferences
)。 - 生成器发送它想要的功能和当事人,使用(《
FunctionalityRequest
)。 - Apivolve按版本发送请求的信息,一次一个版本,从新到旧。
- 对于这些中的每一个,生成器生成必要的代码,并持久化它。
- Apivolve指示已发送所有版本,生成器退出。
依赖关系
~1.8–3MB
~59K SLoC