wasm_rust_utils/utils/
mod.rs

1use std::ffi::{CString, CStr};
2use std::os::raw::{c_char};
3
4pub type JsString = *mut c_char;
5
6pub fn js_string_output<T: Into<Vec<u8>>>(t: T) -> JsString {
7    let c_string = CString::new(t).unwrap();
8    c_string.into_raw()
9}
10
11pub fn js_string_input(ptr: JsString) -> String {
12    let s: String;
13
14    unsafe {
15        let cstr = CStr::from_ptr(ptr);
16        let tmp: &str = cstr.to_str().unwrap();
17        s = tmp.to_owned();
18    };
19
20    s
21}