嵌套的Vec似乎不适用于wasm-bindgen。对吗?
我的目标是在锈蚀中有一个生命游戏网格,我可以作为行返回,而不是一个一维Vec,它需要JavaScript来处理索引。我想到的两个解决办法是:
我不愿使用这两种方法,因为我希望这个库能够被JavaScript和本地锈菌使用,而且我不认为它们在纯粹的锈蚀土地上都是非常惯用的。还有其他建议吗?
发布于 2018-11-01 20:15:15
wasm-bindgen现在不支持像Vec<Vec<u8>>这样的返回类型,这是正确的。
对于WebAssembly来说,一个很好的经验法则是,大块数据(如向量)应该始终驻留在同一个位置,以避免丢失太多的性能。这意味着您可能希望探索一个接口,其中JS对象将指针封装到WASM内存中,其所有方法都与行/列索引一起工作,但修改WASM内存以保持其作为真理的来源。
如果这不可行,那么今天实现这一目标的最佳方法就是您提到的策略之一,尽管这两种策略都需要编写某种级别的JS胶水代码。
https://stackoverflow.com/questions/52771525
复制相似问题