![](/img/trans.png)
[英]How can I call a JavaScript function that is a module with wasm-bindgen?
[英]How do I use nested Vecs with wasm-bindgen?
看起來嵌套的Vec
不能與wasm-bindgen一起使用。 那是對的嗎?
我的目標是在Rust中創建一個生命游戲網格,我可以將其作為行返回,而不是需要JavaScript處理索引的1D Vec
。 我想到的兩個解決方法是:
我不願意使用其中任何一個,因為我希望這個庫可以被JavaScript和本機Rust使用,而且我認為這兩者在純Rust領域都不會非常慣用。 還有其他建議嗎?
你是對的,今天的wasm-bindgen
不支持像Vec<Vec<u8>>
這樣的返回類型。
WebAssembly的一個好的經驗法則是,大塊數據(如向量)應始終位於同一位置,以避免丟失太多性能。 這意味着您可能希望探索JS對象將指針包裝到WASM內存中的接口,並且其所有方法都使用行/列索引,但修改WASM內存以使其成為事實的來源。
如果這不成功,那么今天實現這個的最好方法是你提到的策略中的任何一個,盡管這兩個都需要編寫一些級別的JS粘合代碼。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.