ohos_rust_binding 0.1.0

Rust binding for OHOS
Documentation
use std::ffi::CString;

include!(concat!(env!("OUT_DIR"), "/napi_sys.rs"));

pub fn register_module(
    name: &str,
    entry: unsafe extern "C" fn(env: napi_env, exports: napi_value) -> napi_status,
) {
    let name = CString::new(name).unwrap_or_default();
    let reserved = [std::ptr::null_mut(); 4];
    let mut module = napi_module {
        nm_version: 1,
        nm_flags: 0,
        nm_filename: std::ptr::null_mut(),
        nm_modname: name.as_ptr(),
        nm_register_func: Some(entry),
        nm_priv: std::ptr::null_mut(),
        reserved,
    };
    unsafe {
        napi_module_register(&mut module);
    }
}