* Update WIT tooling used by Wasmtime This commit updates the WIT tooling, namely the wasm-tools family of crates, with recent updates. Notably: * bytecodealliance/wasm-tools#867 * bytecodealliance/wasm-tools#871 This updates index spaces in components and additionally bumps the minimum required version of the component binary format to be consumed by Wasmtime (because of the index space changes). Additionally WIT tooling now fully supports `use`. Note that WIT tooling doesn't, at this time, fully support packages and depending on remotely defined WIT packages. Currently WIT still needs to be vendored in the project. It's hoped that future work with `cargo component` and possible integration here could make the story about depending on remotely-defined WIT more ergonomic and streamlined. * Fix `bindgen!` codegen tests * Add a test for `use` paths an implement support * Update to crates.io versions of wasm-tools * Uncomment codegen tests
39 lines
820 B
Plaintext
39 lines
820 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()
|
|
}
|
|
|
|
default world the-world {
|
|
import imports: self.conventions
|
|
export exports: self.conventions
|
|
}
|