Wasmtime
extern.h
Go to the documentation of this file.
1
7#ifndef WASMTIME_EXTERN_H
8#define WASMTIME_EXTERN_H
9
10#include <wasmtime/module.h>
12#include <wasmtime/store.h>
13
14#ifdef __cplusplus
15extern "C" {
16#endif
17
25typedef struct wasmtime_func {
27 uint64_t store_id;
29 size_t index;
31
39typedef struct wasmtime_table {
41 uint64_t store_id;
43 size_t index;
45
53typedef struct wasmtime_memory {
55 uint64_t store_id;
57 size_t index;
59
67typedef struct wasmtime_global {
69 uint64_t store_id;
71 size_t index;
73
75typedef uint8_t wasmtime_extern_kind_t;
76
79#define WASMTIME_EXTERN_FUNC 0
82#define WASMTIME_EXTERN_GLOBAL 1
85#define WASMTIME_EXTERN_TABLE 2
88#define WASMTIME_EXTERN_MEMORY 3
91#define WASMTIME_EXTERN_SHAREDMEMORY 4
92
113 struct wasmtime_sharedmemory *sharedmemory;
115
129typedef struct wasmtime_extern {
135
138
145 wasmtime_extern_t *val);
146
147#ifdef __cplusplus
148} // extern "C"
149#endif
150
151#endif // WASMTIME_EXTERN_H
wasm_externtype_t * wasmtime_extern_type(wasmtime_context_t *context, wasmtime_extern_t *val)
Returns the type of the wasmtime_extern_t defined within the given store.
struct wasmtime_memory wasmtime_memory_t
Representation of a memory in Wasmtime.
struct wasmtime_extern wasmtime_extern_t
Convenience alias for wasmtime_extern_t.
void wasmtime_extern_delete(wasmtime_extern_t *val)
Deletes a wasmtime_extern_t.
union wasmtime_extern_union wasmtime_extern_union_t
Convenience alias for wasmtime_extern_union.
uint8_t wasmtime_extern_kind_t
Discriminant of wasmtime_extern_t.
Definition: extern.h:75
struct wasmtime_table wasmtime_table_t
Representation of a table in Wasmtime.
struct wasmtime_global wasmtime_global_t
Representation of a global in Wasmtime.
struct wasmtime_func wasmtime_func_t
Representation of a function in Wasmtime.
An opaque object representing the type of a external value. Can be seen as a superclass of wasm_funct...
An interior pointer into a wasmtime_store_t which is used as "context" for many functions.
Container for different kinds of extern items.
Definition: extern.h:129
wasmtime_extern_union_t of
Container for the extern item's value.
Definition: extern.h:133
wasmtime_extern_kind_t kind
Discriminant of which field of of is valid.
Definition: extern.h:131
Representation of a function in Wasmtime.
Definition: extern.h:25
size_t index
Internal index within the store.
Definition: extern.h:29
uint64_t store_id
Internal identifier of what store this belongs to, never zero.
Definition: extern.h:27
Representation of a global in Wasmtime.
Definition: extern.h:67
size_t index
Internal index within the store.
Definition: extern.h:71
uint64_t store_id
Internal identifier of what store this belongs to, never zero.
Definition: extern.h:69
Representation of a memory in Wasmtime.
Definition: extern.h:53
size_t index
Internal index within the store.
Definition: extern.h:57
uint64_t store_id
Internal identifier of what store this belongs to, never zero.
Definition: extern.h:55
Representation of a table in Wasmtime.
Definition: extern.h:39
size_t index
Internal index within the store.
Definition: extern.h:43
uint64_t store_id
Internal identifier of what store this belongs to, never zero.
Definition: extern.h:41
Container for different kinds of extern items.
Definition: extern.h:103
struct wasmtime_sharedmemory * sharedmemory
Field used if wasmtime_extern_t::kind is WASMTIME_EXTERN_SHAREDMEMORY.
Definition: extern.h:113
wasmtime_memory_t memory
Field used if wasmtime_extern_t::kind is WASMTIME_EXTERN_MEMORY.
Definition: extern.h:111
wasmtime_func_t func
Field used if wasmtime_extern_t::kind is WASMTIME_EXTERN_FUNC.
Definition: extern.h:105
wasmtime_global_t global
Field used if wasmtime_extern_t::kind is WASMTIME_EXTERN_GLOBAL.
Definition: extern.h:107
wasmtime_table_t table
Field used if wasmtime_extern_t::kind is WASMTIME_EXTERN_TABLE.
Definition: extern.h:109