You've already forked wit-bindgen
mirror of
https://github.com/AdaCore/wit-bindgen.git
synced 2026-02-12 13:12:42 -08:00
* Update Rust codegen for new WIT changes * Update the markdown generation for new WIT * more-rust * Update the C generator for new WIT * Get Rust guest tests compiling * Get rust host tests working * Get all C tests passing * Turn off teavm-java and Go tests for now * Fixup lockfile after rebase * Bump crate versions * Update dependency sources * Update to wasmtime dep
86 lines
1.9 KiB
Plaintext
86 lines
1.9 KiB
Plaintext
package foo:foo
|
|
|
|
interface lists {
|
|
list-u8-param: func(x: list<u8>)
|
|
list-u16-param: func(x: list<u16>)
|
|
list-u32-param: func(x: list<u32>)
|
|
list-u64-param: func(x: list<u64>)
|
|
list-s8-param: func(x: list<s8>)
|
|
list-s16-param: func(x: list<s16>)
|
|
list-s32-param: func(x: list<s32>)
|
|
list-s64-param: func(x: list<s64>)
|
|
list-float32-param: func(x: list<float32>)
|
|
list-float64-param: func(x: list<float64>)
|
|
|
|
list-u8-ret: func() -> list<u8>
|
|
list-u16-ret: func() -> list<u16>
|
|
list-u32-ret: func() -> list<u32>
|
|
list-u64-ret: func() -> list<u64>
|
|
list-s8-ret: func() -> list<s8>
|
|
list-s16-ret: func() -> list<s16>
|
|
list-s32-ret: func() -> list<s32>
|
|
list-s64-ret: func() -> list<s64>
|
|
list-float32-ret: func() -> list<float32>
|
|
list-float64-ret: func() -> list<float64>
|
|
|
|
tuple-list: func(x: list<tuple<u8, s8>>) -> list<tuple<s64, u32>>
|
|
string-list-arg: func(a: list<string>)
|
|
string-list-ret: func() -> list<string>
|
|
tuple-string-list: func(x: list<tuple<u8, string>>) -> list<tuple<string, u8>>
|
|
string-list: func(x: list<string>) -> list<string>
|
|
|
|
record some-record {
|
|
x: string,
|
|
y: other-record,
|
|
z: list<other-record>,
|
|
c1: u32,
|
|
c2: u64,
|
|
c3: s32,
|
|
c4: s64,
|
|
}
|
|
record other-record {
|
|
a1: u32,
|
|
a2: u64,
|
|
a3: s32,
|
|
a4: s64,
|
|
b: string,
|
|
c: list<u8>,
|
|
}
|
|
record-list: func(x: list<some-record>) -> list<other-record>
|
|
record-list-reverse: func(x: list<other-record>) -> list<some-record>
|
|
|
|
variant some-variant {
|
|
a(string),
|
|
b,
|
|
c(u32),
|
|
d(list<other-variant>),
|
|
}
|
|
variant other-variant {
|
|
a,
|
|
b(u32),
|
|
c(string),
|
|
}
|
|
variant-list: func(x: list<some-variant>) -> list<other-variant>
|
|
|
|
type load-store-all-sizes = list<tuple<
|
|
string,
|
|
u8,
|
|
s8,
|
|
u16,
|
|
s16,
|
|
u32,
|
|
s32,
|
|
u64,
|
|
s64,
|
|
float32,
|
|
float64,
|
|
char,
|
|
>>
|
|
load-store-everything: func(a: load-store-all-sizes) -> load-store-all-sizes
|
|
}
|
|
|
|
world the-lists {
|
|
import lists
|
|
export lists
|
|
}
|