no_deref
no_deref 属性可以用于声明不应该为导入的类型生成 Deref 实现。如果此属性不存在,则会生成一个 Deref 实现,其 Target 为该类型的第一个 extends 属性,如果不存在 extends 属性,则 Target = JsValue。
# #![allow(unused_variables)] #fn main() { #[wasm_bindgen] extern "C" { type Foo; #[wasm_bindgen(method)] fn baz(this: &Foo) #[wasm_bindgen(extends = Foo, no_deref)] type Bar; } fn do_stuff(bar: &Bar) { bar.baz() // Does not compile } #}