| /wasmtime-44.0.1/docs/ |
| H A D | examples-externref.md | 1 # Working with `externref` 6 * [Rust](https://github.com/bytecodealliance/wasmtime/blob/main/examples/externref.rs) 7 * [C](https://github.com/bytecodealliance/wasmtime/blob/main/examples/externref.c) 8 * [C++](https://github.com/bytecodealliance/wasmtime/blob/main/examples/externref.cc) 10 [code]: https://github.com/bytecodealliance/wasmtime/blob/main/examples/externref.rs 12 This example shows how to pass opaque host references into and out of WebAssembly using `externref`. 17 {{#include ../examples/externref.wat}} 25 {{#include ../examples/externref.rs}} 29 {{#include ../examples/externref.c}} 33 {{#include ../examples/externref.cc}}
|
| H A D | book.toml | 22 "/examples-c-externref.html" = "/examples-externref.html" 35 "/examples-cpp-externref.html" = "/examples-externref.html" 49 "/examples-rust-externref.html" = "/examples-externref.html"
|
| /wasmtime-44.0.1/tests/misc_testsuite/function-references/ |
| H A D | table_set.wast | 5 (table $t2 1 externref) 11 (func (export "get-externref") (param $i i32) (result externref) 21 (func (export "set-externref") (param $i i32) (param $r externref) 79 (table $t 10 externref) 88 (table $t 10 externref) 97 (table $t 10 externref) 106 (table $t 10 externref) 116 (func $type-value-externref-vs-funcref (param $r externref) 125 (table $t1 1 externref) 127 (func $type-value-externref-vs-funcref-multi (param $r externref) [all …]
|
| H A D | table_get.wast | 5 (table $t2 2 externref) 11 (func (export "init") (param $r externref) 16 (func (export "get-externref") (param $i i32) (result externref) 55 (table $t 10 externref) 56 (func $type-index-empty-vs-i32 (result externref) 64 (table $t 10 externref) 65 (func $type-index-f32-vs-i32 (result externref) 74 (table $t 10 externref) 75 (func $type-result-externref-vs-empty 83 (table $t 10 externref) [all …]
|
| H A D | table_fill.wast | 4 (table $t 10 externref) 10 (func (export "get") (param $i i32) (result externref) 74 (table $t 10 externref) 83 (table $t 10 externref) 92 (table $t 10 externref) 101 (table $t 10 externref) 110 (table $t 0 externref) 138 (table $t 0 externref) 148 (table $t1 1 externref) 150 (func $type-value-externref-vs-funcref-multi (param $r externref) [all …]
|
| H A D | table_grow.wast | 5 (table $t 0 externref) 54 (table $t 0 externref) 81 (table $t 0 10 externref) 128 (table $t 0 externref) 137 (table $t 0 externref) 146 (table $t 0 externref) 147 (func $type-init-empty-vs-externref (result i32) 155 (table $t 0 externref) 165 (func $type-init-externref-vs-funcref (param $r externref) (result i32) 184 (table $t 1 externref) [all …]
|
| /wasmtime-44.0.1/examples/ |
| H A D | externref.rs | 21 let externref = match ExternRef::new(&mut store, "Hello, World!") { in main() localVariable 33 externref in main() 39 *externref in main() 49 table.set(&mut store, 3, Some(externref).into())?; in main() 56 assert!(Rooted::ref_eq(&store, &elem, &externref)?); in main() 60 global.set(&mut store, Some(externref).into())?; in main() 62 assert!(Rooted::ref_eq(&store, &global_val, &externref)?); in main() 68 let ret = func.call(&mut store, Some(externref))?; in main() 70 assert!(Rooted::ref_eq(&store, &ret.unwrap(), &externref)?); in main()
|
| H A D | externref.cc | 27 ExternRef externref(store, std::string("Hello, world!")); in main() local 28 std::any &data = externref.data(store); in main() 33 table.set(store, 3, externref).unwrap(); in main() 34 ExternRef val = *table.get(store, 3)->externref(); in main() 40 global.set(store, externref).unwrap(); in main() 41 val = *global.get(store).externref(); in main() 47 auto results = func.call(store, {externref}).unwrap(); in main() 48 val = *results[0].externref(); in main()
|
| H A D | externref.wat | 2 (table $table (export "table") 10 externref) 4 (global $global (export "global") (mut externref) (ref.null extern)) 6 (func (export "func") (param externref) (result externref)
|
| H A D | externref.c | 82 wasmtime_externref_t externref; in main() local 83 ok = wasmtime_externref_new(context, "Hello, World!", NULL, &externref); in main() 87 void *data = wasmtime_externref_data(context, &externref); in main() 93 externref_val.of.externref = externref; in main() 113 assert(strcmp((char *)wasmtime_externref_data(context, &elem.of.externref), in main() 137 &global_val.of.externref), in main() 162 &results[0].of.externref), in main()
|
| /wasmtime-44.0.1/tests/misc_testsuite/ |
| H A D | externref-table-dropped-segment-issue-8281.wast | 5 (table $t 0 0 externref) 35 (elem $declared declare externref) 36 (elem $passive externref) 37 (elem $active (i32.const 0) externref)
|
| H A D | externref-segment.wast | 4 (table 2 externref) 5 (elem (i32.const 0) externref (ref.null extern)) 6 (elem (i32.const 1) externref (ref.null extern))
|
| H A D | no-panic.wast | 4 (func $test (param i32) (result externref) 12 (table 4 externref) 26 (table 4 externref)
|
| H A D | mutable_externref_globals.wast | 8 (global $mr (mut externref) (ref.null extern)) 9 (func (export "get-mr") (result externref) (global.get $mr)) 10 (func (export "set-mr") (param externref) (global.set $mr (local.get 0)))
|
| H A D | linking-errors.wast | 8 (table (export "t externref") 0 externref) 39 (module (import "m" "t externref" (table 0 funcref))) 40 "expected table of type `funcref`, found table of type `externref`")
|
| H A D | externref-id-function.wast | 4 (func (export "identity") (param externref) (result externref)
|
| H A D | many_table_gets_lead_to_gc.wast | 4 (table $t 1 externref) 6 (func (export "init") (param externref) 17 ;; Get an `externref` out of the table. This could cause the
|
| H A D | no-mixup-stack-maps.wast | 4 (global $g (mut externref) (ref.null extern)) 9 (local externref) 32 (func (export "init") (param externref)
|
| /wasmtime-44.0.1/tests/disas/ |
| H A D | select.wat | 10 (func $typed-select-1 (result externref) 14 select (result externref)) 16 (func $typed-select-2 (param externref) (result externref) 20 select (result externref))
|
| H A D | nullref.wat | 4 (func (result externref) 8 (func (result externref) 9 (block (result externref)
|
| /wasmtime-44.0.1/crates/wasmtime/src/runtime/gc/enabled/ |
| H A D | externref.rs | 473 if let Some(externref) = gc_ref.as_externref(&*gc_store.gc_heap) { in data() 474 Ok(Some(gc_store.externref_host_data(externref))) in data() 527 if let Some(externref) = gc_ref.as_externref(&*gc_store.gc_heap) { in data_mut() 528 Ok(Some(gc_store.externref_host_data_mut(externref))) in data_mut() 618 self.wasm_ty_store(store, ptr, ValRaw::externref) in store() 648 <Rooted<ExternRef>>::wasm_ty_option_store(self, store, ptr, ValRaw::externref) in store() 682 self.wasm_ty_store(store, ptr, ValRaw::externref) in store() 713 <OwnedRooted<ExternRef>>::wasm_ty_option_store(self, store, ptr, ValRaw::externref) in store()
|
| /wasmtime-44.0.1/crates/wasmtime/src/runtime/gc/ |
| H A D | enabled.rs | 8 mod externref; module 17 pub use externref::*;
|
| H A D | disabled.rs | 15 mod externref; module 24 pub use externref::*;
|
| /wasmtime-44.0.1/tests/disas/gc/null/ |
| H A D | externref-globals.wat | 6 (global $x (mut externref) (ref.null extern)) 7 (func (export "get") (result externref) 10 (func (export "set") (param externref)
|
| /wasmtime-44.0.1/crates/wasmtime/src/runtime/vm/gc/ |
| H A D | enabled.rs | 6 mod externref; module 14 pub use externref::*;
|