Start work on Cross-FFI functions

This commit is contained in:
Michael Mikovsky
2025-11-05 15:17:31 -07:00
parent a8432f66be
commit f601c3a58e
17 changed files with 612 additions and 0 deletions
+16
View File
@@ -0,0 +1,16 @@
# This file is automatically @generated by Cargo.
# It is not intended for manual editing.
version = 4
[[package]]
name = "log"
version = "0.4.28"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "34080505efa8e45a4b816c349525ebe327ceaa8559756f0356cba97ef3bf7432"
[[package]]
name = "unshell-logger"
version = "0.1.0"
dependencies = [
"log",
]
+7
View File
@@ -0,0 +1,7 @@
[package]
name = "unshell-logger"
version = "0.1.0"
edition = "2024"
[dependencies]
log = "0.4.28"
+14
View File
@@ -0,0 +1,14 @@
use log::{LevelFilter, Log, SetLoggerError};
#[allow(dead_code)]
pub type SetupLogger =
extern "C" fn(logger: &'static dyn Log, level: LevelFilter) -> Result<(), SetLoggerError>;
#[unsafe(no_mangle)]
pub extern "C" fn setup_logger(
logger: &'static dyn log::Log,
level: log::LevelFilter,
) -> Result<(), log::SetLoggerError> {
log::set_max_level(level);
log::set_logger(logger)
}