我想做的是:
#[wasm_bindgen]
pub type ParseError = parserange::Error;但是,Rust编译器抱怨道:
error: #[wasm_bindgen] can only be applied to a function, struct, enum, impl, or extern block
--> src/lib.rs:89:1
|
89 | pub type ParseError = parserange::Error;我不想在parserange.rs中添加# wasm -bindgen属性,因为它位于单独的库中,不使用wasm构建。
有解决办法吗?
发布于 2021-05-31 21:51:10
解决方法是将parserange::Error封装在元组结构中,以创建新类型。这样做的缺点是,在parserange::Error上定义的所有要使用的函数都必须重新定义,才能调用error子对象的函数。不过,这具有创建新类型的所有优点,例如通过wasm_bindgen导出,或者在另一个机箱中定义的类型上实现特性。更多信息可以找到这里。
https://stackoverflow.com/questions/67780124
复制相似问题