Standalone native FFI facade for framework-system, intended for .NET interop via
csbindgen.
This repository keeps the FFI crate separate from the upstream framework-system
repository and consumes upstream as a git submodule.
framework-system/: upstream Framework System repository as a git submodulesrc/: Rust FFI surface exported from this standalone cratecsharp/NativeMethods.g.cs: generated low-level C# bindings
Clone with submodules:
git clone --recurse-submodules <your-repo-url>If you already cloned without submodules:
git submodule update --init --recursivecargo build --releaseBuilding regenerates csharp/NativeMethods.g.cs using csbindgen.
See FFI_NOTES.md for the current feature gaps and the main ABI/packaging learnings
from this work.
- This crate depends on
framework-system/framework_libvia a local path dependency. - Update the
framework-systemsubmodule when you want to track upstream changes. FrameworkByteBuffervalues returned by the native API must be released withframework_byte_buffer_freeafter the managed side has copied their contents.