mirror of
https://github.com/fluencelabs/wasm-bindgen
synced 2025-04-29 15:42:16 +00:00
859 B
859 B
js_namespace = blah
This attribute indicates that the JavaScript type is accessed through the given
namespace. For example, the WebAssembly.Module
APIs are all accessed through
the WebAssembly
namespace. js_namespace
can be applied to any import
(function or type) and whenever the generated JavaScript attempts to reference a
name (like a class or function name) it'll be accessed through this namespace.
#[wasm_bindgen]
extern "C" {
#[wasm_bindgen(js_namespace = console)]
fn log(s: &str);
type Foo;
#[wasm_bindgen(constructor, js_namespace = Bar)]
fn new() -> Foo;
}
log("hello, console!");
Foo::new();
This is an example of how to bind namespaced items in Rust. The log
and Foo::new
functions will
be available in the Rust module and will be invoked as console.log
and new Bar.Foo
in
JavaScript.