Sha256: e6179317f75aa8e836e3c803f5d814e87119763709eea47b04cebc86c089d80a
Contents?: true
Size: 1.25 KB
Versions: 30
Compression:
Stored size: 1.25 KB
Contents
# `web-sys` Overview The `web-sys` crate has this file and directory layout: ```text . ├── build.rs ├── Cargo.toml ├── README.md ├── src │ └── lib.rs └── webidls └── enabled └── ... ``` ### `webidls/enabled/*.webidl` These are the WebIDL interfaces that we will actually generate bindings for (or at least bindings for *some* of the things defined in these files). ### `build.rs` The `build.rs` invokes `wasm-bindgen`'s WebIDL frontend on all the WebIDL files in `webidls/enabled`. It writes the resulting bindings into the cargo build's out directory. ### `src/lib.rs` The only thing `src/lib.rs` does is include the bindings generated at compile time in `build.rs`. Here is the whole `src/lib.rs` file: ```rust {{#include ../../../../crates/web-sys/src/lib.rs}} ``` ### Cargo features When compiled the crate is almost empty by default, which probably isn't what you want! Due to the very large number of APIs, this crate uses features to enable portions of its API to reduce compile times. The list of features in `Cargo.toml` all correspond to types in the generated functions. Enabling a feature enables that type. All methods should indicate what features need to be activated to use the method.
Version data entries
30 entries across 30 versions & 1 rubygems