#holochain #run-time #type

holochain-conductor-runtime-types-ffi

Types used in holochain-conductor-runtime-ffi, used by both client and service

1 unstable release

new 0.1.0 May 12, 2025

#117 in #holochain

MIT/Apache

36KB
400 lines

holochain-conductor-runtime-types-ffi

This crate contains wrappers around types used in requests & responses of holochain-conductor-runtime.

It generates FFI bindings for Kotlin.

Building

  • Run ./generate-bindings-release.sh
  • Copy the out/**/*.so directories into jniLib directory of your android project
  • Copy the out/uniffi directory into java directory of your android project

Development

Adding Types

When adding new types to this crate that will be used in FFI-exposed interfaces in holochain_runtime_uniffi crate, you will also need to add the type to the UDL file in holochain_runtime_uniffi.

See Uniffi Docs for more info on including external types.

Gotchas!!!

  • Enum variants cannot have the same name as other types (i.e. Error enum variants cannot match other error types)
  • Generated types may have different casing. For example kotlin types use TitleCase

Dependencies

~84MB
~1.5M SLoC