Skip to content

[Rust][FFI] Add low-level declarations for the public C header #230

Description

@utilForever

Parent: #137

Goal

Expose the stable C ABI accurately in the sys crate with the least maintenance burden.

Scope

  • Choose committed declarations or generation from the installed header based on reproducibility
  • Match calling convention, integer widths, and opaque types
  • Keep generated output reviewable if generation is used

Non-goals

  • Binding C++ headers
  • Hand-maintaining duplicate semantic APIs
  • Exposing internal symbols

Acceptance criteria

  • Rust declarations match C sizes and function signatures.
  • The sys crate links and calls the ABI version query.
  • Invalid layout assumptions fail in tests.

Verification

Run cross-language size assertions and a sys-level create/destroy smoke test.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions