5#ifndef WASMTIME_EXNREF_HH
6#define WASMTIME_EXNREF_HH
8#include <wasmtime/_exnref_class.hh>
10#ifdef WASMTIME_FEATURE_GC
12#include <wasmtime/_val_class.hh>
16inline Result<ExnRef> ExnRef::create(Store::Context cx,
const Tag &tag,
17 const std::vector<Val> &fields) {
20 cx.capi(), &tag.capi(),
21 reinterpret_cast<const wasmtime_val_t *
>(fields.data()), fields.size(),
23 if (error !=
nullptr) {
30inline Result<Val> ExnRef::field(Store::Context cx,
size_t index)
const {
33 if (error !=
nullptr) {
WASM_API_EXTERN wasmtime_error_t * wasmtime_exnref_new(wasmtime_context_t *store, const wasmtime_tag_t *tag, const wasmtime_val_t *fields, size_t nfields, wasmtime_exnref_t *exn_ret)
Creates a new exception object.
WASM_API_EXTERN wasmtime_error_t * wasmtime_exnref_field(wasmtime_context_t *store, const wasmtime_exnref_t *exn, size_t index, wasmtime_val_t *val_ret)
Reads a field value from this exception by index.
A WebAssembly exception reference value.
Definition: val.h:103
Container for different kinds of wasm values.
Definition: val.h:376