Я написал функцию, которая принимает массив u8 в качестве входных данных и выводит Uint8Array.
use js_sys::Uint8Array;
#[wasm_bindgen]
pub extern "C" fn ab(seed: &[u8]) -> Uint8Array {
let array: Array = seed.into_iter().map(|x| JsValue::from(*x as u8)).collect();
let u8a = Uint8Array::new(&array);
u8a
}
Затем встроил его в wasm+javascript с помощью wasm-pack
.
В качестве вывода я получаю следующие определения машинописных функций:
export function ab(a: number, b: number): number;
export function __wbindgen_malloc(a: number): number;
Какими будут два входных числа для ab()? Как следует использовать эти функции?
Кроме того, есть ли лучший способ выделить память wasm напрямую из Rust, чтобы определения функций wasm-pack
ed соответствовали определениям функций rust?