4 releases
0.1.3 | Feb 11, 2024 |
---|---|
0.1.2 | Aug 30, 2023 |
0.1.1 | Aug 30, 2023 |
0.1.0 | Aug 30, 2023 |
#1280 in WebAssembly
21 downloads per month
7KB
include_wit
include_wit
allows for embedding wit_parser::Resolve
instances into an application binary.
It exposes a single macro which parses a WIT file or directory, and generates a WASM binary to include in
the source code. This WASM binary is then parsed at runtime upon first access.
Usage
The following is a simple example of how to use include_wit
. The full example may be found in the examples folder.
// Embed the WIT folder into this application
let resolve = include_wit::include_wit!("wit");
// Print all interfaces in the resolve
for x in &resolve.interfaces {
println!("{x:?}");
}
Optional features
relative_path (requires nightly) - Makes all included WIT paths relative to the file where the macro is invoked.
track_path (requires nightly) - Tracks the included WIT files for changes, causing recompilation automatically when they are edited.
Dependencies
~7MB
~126K SLoC