Macro build_wasm

Source
build_wasm!() { /* proc-macro */ }
Expand description

Invokes cargo build at compile time on another module, replacing this macro invocation with the bytes contained in the output .wasm file.

§Usage

let module = build_wasm!("relative/path/to/module");

§Arguments

This macro can take a number of additional arguments to control how the WebAssembly should be generated. These options are passed to cargo build:

let module = build_wasm!{
    path: "relative/path/to/module",
    features: [
        atomics, // Controls if the `atomics` proposal is enabled
        bulk_memory, // Controls if the `bulk-memory` proposal is enabled
        mutable_globals, // Controls if the `mutable-globals` proposal is enabled
    ],
    // Allows additional environment variables to be set while compiling the module.
    env: Env {
        FOO: "bar",
        BAX: 7,
    },
    // Controls if the module should be built in debug or release mode.
    release: true
};