constructor
The constructor attribute is used to indicate that the function being bound
should actually translate to calling the new operator in JavaScript. The final
argument must be a type that's imported from JavaScript, and it's what will get
used in the generated glue:
#![allow(unused_variables)]
fn main() {
#[wasm_bindgen]
extern "C" {
type Shoes;
#[wasm_bindgen(constructor)]
fn new() -> Shoes;
}
}
This will attach a new static method to the Shoes type, and in JavaScript
when this method is called, it will be equivalent to new Shoes().
#![allow(unused_variables)]
fn main() {
// Become a cobbler; construct `new Shoes()`
let shoes = Shoes::new();
}