Merge Rust, C and C++ SDKs (#4)

* Generate native bindings from rust crate

* Add native instance and runtime statics

* Update README.md
This commit is contained in:
Guilherme Werner 2025-06-11 12:49:31 -03:00 committed by GitHub
parent 738f9c947b
commit a392dbb119
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
39 changed files with 1213 additions and 24 deletions

19
src/native/models.rs Normal file
View file

@ -0,0 +1,19 @@
// Copyright (c) Tribufu. All Rights Reserved.
// SPDX-License-Identifier: MIT
use libc::c_void;
pub struct TribufuApiCallbackContext(pub(crate) *mut c_void);
impl TribufuApiCallbackContext {
pub(crate) fn as_ptr(&self) -> *mut c_void {
self.0
}
}
unsafe impl Send for TribufuApiCallbackContext {}
unsafe impl Sync for TribufuApiCallbackContext {}
pub type TribufuApiGetUserInfoCallbackData = c_void;
pub type TribufuApiGetUserInfoCallback =
extern "C" fn(*mut c_void, *const TribufuApiGetUserInfoCallbackData);