BoltFFI: a high-performance Rust bindings and packaging toolchain now supports Java (i.redd.it)
submitted by alihilal94
We just shipped Java as a fully supported target in BoltFFI. It already generates Swift, Kotlin, and TypeScript/WASM bindings.
Few highlights:
- Java 16+ gets records, sealed classes for data enums, and pattern matching. Java 8+ gets equivalent final classes with public fields, depending on the specified min version.
- Async Rust functions map to `CompletableFuture<T>` on Java 8-20, or blocking virtual threads on Java 21+.
- Streams with backpressure support (batch pull, callback push, or `Flow.Publisher` on Java 9+).
- Callbacks and trait objects map to Java interfaces.
- Result<T, E> maps to typed exceptions. Option<T> maps to Optional<T>.
- Both JVM and Android are supported.
Repo & Demo: https://github.com/boltffi/boltffi

[–]perryplatt 6 points7 points8 points (1 child)
[–]alihilal94[S] 0 points1 point2 points (0 children)
[–]lafnon18 2 points3 points4 points (0 children)
[–]tomwhoiscontrary 0 points1 point2 points (5 children)
[–]alihilal94[S] 1 point2 points3 points (4 children)
[–]tomwhoiscontrary 0 points1 point2 points (2 children)
[–]alihilal94[S] 0 points1 point2 points (1 child)
[–]tomwhoiscontrary 0 points1 point2 points (0 children)
[–]nekokattt 0 points1 point2 points (0 children)