wasm-bindgen-macro

Crates.iowasm-bindgen-macro
lib.rswasm-bindgen-macro
version
sourcesrc
created_at2018-03-06 04:21:14.486723
updated_at2024-12-07 01:14:31.46117
descriptionDefinition of the `#[wasm_bindgen]` attribute, an internal dependency
homepagehttps://rustwasm.github.io/wasm-bindgen/
repositoryhttps://github.com/rustwasm/wasm-bindgen/tree/master/crates/macro
max_upload_size
id54066
Cargo.toml error:TOML parse error at line 23, column 1 | 23 | autolib = false | ^^^^^^^ unknown field `autolib`, expected one of `name`, `version`, `edition`, `authors`, `description`, `readme`, `license`, `repository`, `homepage`, `documentation`, `build`, `resolver`, `links`, `default-run`, `default_dash_run`, `rust-version`, `rust_dash_version`, `rust_version`, `license-file`, `license_dash_file`, `license_file`, `licenseFile`, `license_capital_file`, `forced-target`, `forced_dash_target`, `autobins`, `autotests`, `autoexamples`, `autobenches`, `publish`, `metadata`, `keywords`, `categories`, `exclude`, `include`
size0
wasm-bindgen-publish (github:rustwasm:wasm-bindgen-publish)

documentation

https://docs.rs/wasm-bindgen

README

wasm-bindgen-macro

Implementation of the #[wasm_bindgen] attribute. See the wasm-bindgen documentation for more information about what this macro does.

Testing

Testing of this macro is done through "ui tests" in the ui-tests subdirectory of this crate. Each Rust file in this folder is compiled with the wasm_bindgen crate, and the *.stderr file sitting next to it is the asserted output of the compiler. If the output matches, the test passes, and if the output doesn't match the test fails. Note that it is also considered a failure if a test actually compiles successfully.

To add a test:

  • Create ui-tests/my-awesome-test.rs

  • Write an invalid #[wasm_bindgen] invocation, testing the error you're generating

  • Execute cargo test -p wasm-bindgen-macro --test ui, the test will fail

  • From within the ui-tests folder, execute ./update-all-references.sh. This should create a my-awesome-test.stderr file.

    OR if you are on Windows, set the TRYBUILD=overwrite environment variable (this is done as $env:TRYBUILD="overwrite" in powershell) and run the command again.

  • Inspect my-awesome-test.stderr to make sure it looks ok

  • Rerun cargo test -p wasm-bindgen-macro --test ui and your tests should pass!

Commit count: 3908

cargo fmt