使用wasm-bindgen时如何在Rust中存储全局状态?

时间:2018-07-06 18:58:50

标签: rust

我正在尝试在Rust中编写一个数据存储,该数据存储跨过wasm-bindgen边界从JavaScript接收对象,并将其存储以供以后检索。这是我希望可以使用的简化版本:

static mut MAP: HashMap<i32, String> = HashMap::new();

#[wasm_bindgen]
pub fn add_value(index: i32, value: String) {
    unsafe {
        MAP.insert(index, value);
    }
}

#[wasm_bindgen]
pub fn get_value(index: i32) -> String {
    unsafe {
        (*MAP.get(&index).unwrap()).clone()
    }
}

但是我从Rust编译器收到此错误:

error[E0015]: calls in statics are limited to constant functions, tuple structs and tuple variants

如何存储状态,以便随后通过wasm-bindgen边界进行的调用可以检索以前存储的值?

0 个答案:

没有答案