* Import Wasmtime support from the `wit-bindgen` repo This commit imports the `wit-bindgen-gen-host-wasmtime-rust` crate from the `wit-bindgen` repository into the upstream Wasmtime repository. I've chosen to not import the full history here since the crate is relatively small and doesn't have a ton of complexity. While the history of the crate is quite long the current iteration of the crate's history is relatively short so there's not a ton of import there anyway. The thinking is that this can now continue to evolve in-tree. * Refactor `wasmtime-component-macro` a bit Make room for a `wit_bindgen` macro to slot in. * Add initial support for a `bindgen` macro * Add tests for `wasmtime::component::bindgen!` * Improve error forgetting `async` feature * Add end-to-end tests for bindgen * Add an audit of `unicase` * Add a license to the test-helpers crate * Add vet entry for `pulldown-cmark` * Update publish script with new crate * Try to fix publish script * Update audits * Update lock file
40 lines
831 B
Plaintext
40 lines
831 B
Plaintext
// hello 🐱 world
|
|
|
|
interface conventions {
|
|
kebab-case: func()
|
|
|
|
record ludicrous-speed {
|
|
how-fast-are-you-going: u32,
|
|
i-am-going-extremely-slow: u64,
|
|
}
|
|
|
|
foo: func(x: ludicrous-speed)
|
|
%function-with-dashes: func()
|
|
%function-with-no-weird-characters: func()
|
|
|
|
apple: func()
|
|
apple-pear: func()
|
|
apple-pear-grape: func()
|
|
a0: func()
|
|
|
|
// Comment out identifiers that collide when mapped to snake_case, for now; see
|
|
// https://github.com/WebAssembly/component-model/issues/118
|
|
//APPLE: func()
|
|
//APPLE-pear-GRAPE: func()
|
|
//apple-PEAR-grape: func()
|
|
|
|
is-XML: func()
|
|
|
|
%explicit: func()
|
|
%explicit-kebab: func()
|
|
|
|
// Identifiers with the same name as keywords are quoted.
|
|
%bool: func()
|
|
}
|
|
|
|
world the-world {
|
|
import imports: conventions
|
|
export exports: conventions
|
|
default export conventions
|
|
}
|