From 49192dbb98e0ab1f2a66b4786fac86d63f69be64 Mon Sep 17 00:00:00 2001 From: "1992414357@qq.com" <1992414357@qq.com> Date: Mon, 9 Jun 2025 01:44:36 +0800 Subject: 重构所有部分 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- bindings/c/src/lib.rs | 41 ----------------------------------------- 1 file changed, 41 deletions(-) delete mode 100644 bindings/c/src/lib.rs (limited to 'bindings/c/src/lib.rs') diff --git a/bindings/c/src/lib.rs b/bindings/c/src/lib.rs deleted file mode 100644 index 6efd0e9..0000000 --- a/bindings/c/src/lib.rs +++ /dev/null @@ -1,41 +0,0 @@ -use std::ffi::{c_char, CStr, CString}; - -pub mod data_c; -pub mod service_c; - -pub fn str_rs_to_c(s: String) -> (CString, *const c_char) { - let c_string = CString::new(s).expect(""); - let ptr = c_string.as_ptr(); - (c_string, ptr) -} - -pub fn str_c_to_rs(ptr: *const c_char) -> Option { - if ptr.is_null() { - return None; - } - unsafe { - CStr::from_ptr(ptr) - .to_str() - .ok() - .map(|s| s.to_owned()) - } -} - -#[macro_export] -macro_rules! box_into_raw { - ($expr:expr) => { - $crate::box_into_raw!(@inner $expr) - }; - - ($expr:expr => $t:ty) => { - $crate::box_into_raw!(@inner ($expr) as $t) - }; - - (@inner $expr:expr) => { - ::std::boxed::Box::into_raw(::std::boxed::Box::new($expr)) - }; - - (@inner ($expr:expr) as $t:ty) => { - ::std::boxed::Box::into_raw(::std::boxed::Box::new($expr) as ::std::boxed::Box<$t>) - }; -} \ No newline at end of file -- cgit