Files
cli/vendor/wit-component/tests/components/tricky-resources/component.wat

76 lines
2.8 KiB
Plaintext

(component
(core module $main (;0;)
(type (;0;) (func (param i32)))
(type (;1;) (func (param i32) (result i32)))
(type (;2;) (func (result i32)))
(import "[export]foo:bar/a" "[resource-drop]r" (func (;0;) (type 0)))
(import "[export]foo:bar/a" "[resource-rep]r" (func (;1;) (type 1)))
(export "some-name#f" (func 2))
(func (;2;) (type 2) (result i32)
unreachable
)
(@producers
(processed-by "wit-component" "$CARGO_PKG_VERSION")
(processed-by "my-fake-bindgen" "123.45")
)
)
(type $r (;0;) (resource (rep i32)))
(core func $resource.drop (;0;) (canon resource.drop $r))
(core func $resource.rep (;1;) (canon resource.rep $r))
(core instance $"[export]foo:bar/a" (;0;)
(export "[resource-drop]r" (func $resource.drop))
(export "[resource-rep]r" (func $resource.rep))
)
(core instance $main (;1;) (instantiate $main
(with "[export]foo:bar/a" (instance $"[export]foo:bar/a"))
)
)
(component $foo:bar/a-shim-component (;0;)
(import "import-type-r" (type (;0;) (sub resource)))
(export (;1;) "r" (type 0))
)
(instance $foo:bar/a-shim-instance (;0;) (instantiate $foo:bar/a-shim-component
(with "import-type-r" (type $r))
)
)
(export $foo:bar/a (;1;) "foo:bar/a" (instance $foo:bar/a-shim-instance))
(alias export $foo:bar/a "r" (type $"#type1 r" (@name "r") (;1;)))
(component $foo:bar/b-shim-component (;1;)
(import "import-type-r" (type (;0;) (sub resource)))
(export (;1;) "r" (type 0))
)
(instance $foo:bar/b-shim-instance (;2;) (instantiate $foo:bar/b-shim-component
(with "import-type-r" (type $"#type1 r"))
)
)
(export $foo:bar/b (;3;) "foo:bar/b" (instance $foo:bar/b-shim-instance))
(type (;2;) (own $r))
(type (;3;) (func (result 2)))
(alias core export $main "some-name#f" (core func $some-name#f (;2;)))
(func $f (;0;) (type 3) (canon lift (core func $some-name#f)))
(alias export $foo:bar/b "r" (type $"#type4 r" (@name "r") (;4;)))
(component $some-name-shim-component (;2;)
(import "import-type-r" (type (;0;) (sub resource)))
(import "import-type-r0" (type (;1;) (eq 0)))
(import "import-type-r01" (type (;2;) (eq 1)))
(type (;3;) (own 2))
(type (;4;) (func (result 3)))
(import "import-func-f" (func (;0;) (type 4)))
(export (;5;) "r" (type 1))
(type (;6;) (own 5))
(type (;7;) (func (result 6)))
(export (;1;) "f" (func 0) (func (type 7)))
)
(instance $some-name-shim-instance (;4;) (instantiate $some-name-shim-component
(with "import-func-f" (func $f))
(with "import-type-r" (type $"#type1 r"))
(with "import-type-r0" (type $"#type4 r"))
(with "import-type-r01" (type $r))
)
)
(export $some-name (;5;) "some-name" (instance $some-name-shim-instance))
(@producers
(processed-by "wit-component" "$CARGO_PKG_VERSION")
)
)