21 个版本 (13 个稳定版)
1.10.0-beta.7 | 2024 年 7 月 23 日 |
---|---|
1.10.0-beta.4 | 2024 年 5 月 28 日 |
1.8.0 | 2024 年 2 月 28 日 |
1.7.0 | 2023 年 8 月 11 日 |
1.0.0 | 2022 年 11 月 22 日 |
#1414 在 命令行工具
1,670 每月下载量
430KB
12K SLoC
typeshare
基于 typeshare-core
的 CLI。从 Rust 类型定义生成不同语言的代码,用于 FFI 互操作性。
用法
cargo install typeshare
typeshare --lang=typescript some/file.rs
typeshare --lang=swift some/file.rs
typeshare --lang=kotlin --java-package=com.some.package.name some/file.rs
typeshare --lang=scala --scala-package=com.some.package.name some/file.rs
生成 FFI 绑定
包含 typeshare 注解以生成该函数的 FFI 绑定。支持的语言有 kotlin
和 swift
。
#[typeshare(kotlin = "generateTotp", swift = "generate_totp")]
pub fn generate_totp(request: TotpGeneratorRequest) -> Result<TotpGeneratorResponse>`
由于构建系统尚未更改以在构建期间生成绑定,因此必须手动完成并将更改提交到仓库。FFI 绑定生成在 ffi/src/generated.rs
文件中。
要生成所有 FFI 绑定,请运行 make ffi
。在添加或删除 FFI 绑定时,不要忘记在 Makefile
中包含更改。
依赖关系
~7–16MB
~208K SLoC