Rus*_*rop 5 c# interop rust typescript
我目前正在开发一个完全用 Rust 编写的库,但它将被 Rust 以外的编程语言使用。虽然跨越 FFI 边界进行讨论很简单,但用其他编程语言编写与 Rust 模型 1:1 映射的模型却并非如此。这个问题围绕是否存在工具或最佳实践来简化跨 FFI 边界的模型生成的想法
我目前的做法如下:
extern接受指向字符串的指针并返回指向字符串的指针。正如背景中提到的,虽然跨 FFI 边界的通信非常简单,但编写与 Rust 编写的模型完全映射(和序列化)的模型却并非如此。目前,我的 Rust 库有 5 个用 5 种不同编程语言编写的包装器,编写、测试和迭代这些 DTO 模型的过程远非简单。
您是否考虑过使用普通旧的jsonschema来达到此目的?虽然 OpenAPI 更专门针对 Web API,但您可以为模型编写该架构,并为您的库和客户端使用从该架构生成的模型。
编辑:我能看到的“通过 FFI 边界发送 json 字符串”的唯一主要问题是,您必然会增加序列化/反序列化的开销,这可能不是微不足道的。
| 归档时间: |
|
| 查看次数: |
140 次 |
| 最近记录: |