Ivan Enderlin
345511a4f9
fix(runtime-c-api) Fix From<c_uchar> for Version
.
...
0 matches to `Unknown`, 1 matches to `Snapshot0` and 2 matches to
`Snapshot1`.
2019-12-04 15:28:37 +01:00
Ivan Enderlin
90f3c894c1
doc(runtime-c-api) Improve documentation of wasmer_wasi_generate_import_object_for_version
.
2019-12-04 15:28:37 +01:00
Ivan Enderlin
4fe8286b81
feat(runtime-c-api) Avoid undefined behavior with user-given version.
...
When the version has type `Version`, we expect the user to give a
valid `Version` variant. Since the `Version` is basically a `uint8_t`,
the user is able to pass everything she wants, which can create an
undefined behavior on the Rust side.
To avoid such situation, the version has now type `c_uchar` (`unsigned
char` or `uint8_t` on C side —on most platforms). Then the `From`
trait is implemented on `Version`. In case the value is unbound,
`Version::Unknown` is returned.
2019-12-04 15:28:37 +01:00
Ivan Enderlin
e2c353b926
chore(runtime-c-api) Update C/C++ headers.
2019-12-04 15:28:37 +01:00
Ivan Enderlin
9468e229f4
chore(runtime-c-api) Update header files.
2019-11-20 13:30:02 +01:00
Ivan Enderlin
987b0765c0
chore(runtime-c-api) Update header files.
2019-11-14 14:37:55 +01:00
Ivan Enderlin
be9d7f2e6e
chore(runtime-c-api) Update header files.
2019-11-13 15:29:33 +01:00
Mark McCaskey
e121c47f18
Generate C preprocessor code to hide things not on Windows
2019-11-11 14:47:25 -08:00
Mark McCaskey
a104d08c04
Update ImportObject C API to use iterators
2019-10-29 14:55:14 -07:00
Mark McCaskey
2a532b8ce5
Add tests for C API import_object and WASI updates
2019-10-25 14:24:22 -07:00
Mark McCaskey
80cfeb590e
Clean up comments
...
add headers too
2019-10-24 11:51:35 -07:00
Mark McCaskey
bd8e864656
Add functions import object to get import fns and free them
2019-10-10 16:07:56 -07:00
Mark McCaskey
51f619a132
Change pointer that's not modified to be const in C API
2019-10-10 11:22:45 -07:00
Mark McCaskey
913354adb3
Add function to get export from ns/name via ImportObject to C API
2019-10-09 17:29:27 -07:00
Mark McCaskey
70b55b801d
Check argument pointers for null to WASI calls
2019-10-03 10:50:07 -07:00
Mark McCaskey
b45b1c12f1
Add WASI support to runtime-c-api
2019-10-02 12:06:17 -07:00
Ivan Enderlin
86ec75fd98
chore(runtime-c-api) Update C & C++ headers.
2019-09-05 15:09:21 +02:00
Syrus
bc990cc18a
Updated Runtime C API comments
2019-09-01 08:52:19 -07:00
Syrus
ea5affc05d
Remove svm mentions in wasmer c api codebase
2019-08-05 11:49:16 -07:00
Yaron Wittenstein
3f4ffb0e2d
Merge branch 'develop' into c-api-import_object_t
2019-08-01 18:15:21 +03:00
Yaron Wittenstein
f73180f45e
wasmer-c-api:
...
* adding `wasmer_import_object_new` and `wasmer_import_object_extend`
* adding test file `test-module-import-instantiate.c`
2019-08-01 14:06:25 +03:00
Yaron Wittenstein
ab76755ade
runtime-c-api:
...
* import.rs - adding `import_object_t` and `wasmer_import_object_destroy`
* instance.rs - adding `wasmer_module_import_instantiate`
2019-08-01 10:48:03 +03:00
Yaron Wittenstein
351977690b
adding a document for wasmer_instance_context_get
2019-07-31 14:15:16 +03:00
Yaron Wittenstein
847dd6f65e
c-api: adding wasmer_instance_context_get
(instance.rs
)
2019-07-31 14:12:25 +03:00
losfair
f4df568e41
Naming fixes and documentation for trampoline API.
2019-06-05 01:38:35 +08:00
losfair
669f76025c
Add callinfo trampoline into the C API.
2019-06-05 01:25:37 +08:00
losfair
d70cb9695e
Add trampoline-related functions to C API.
2019-06-03 15:31:42 -07:00
Ivan Enderlin
11f1bbaf9a
chore(runtime-c-api) Update C/C++ header files.
2019-05-22 16:45:59 +02:00
Ivan Enderlin
8bd9bbb508
chore(runtime-c-api) Update C/C++ header files.
2019-05-14 16:19:32 +02:00
Ivan Enderlin
53661385ed
chore(runtime-c-api) Update C/C++ header files.
2019-05-14 16:17:13 +02:00
Ivan Enderlin
2b250c30f3
chore(runtime-c-api) Regenerate C/C++ header files.
2019-05-14 11:50:10 +02:00
Ivan Enderlin
a59ce13810
chore(runtime-c-api) Build the C and C++ headers.
2019-03-27 10:50:40 +01:00
Ivan Enderlin
57a82fa5cf
fix(runtime-c-api) wasmer_serialized_module_from_bytes
accepts bytes + length instead of wasmer_byte_array
.
2019-03-19 16:24:59 +01:00
Ivan Enderlin
46edd20725
feat(runtime-c-api) Add the wasmer_serialized_module_from_bytes
function.
...
This function is required to transform a `wasmer_byte_array` into a
`wasmer_serialized_module_t`. This is the complementary function of
`wasmer_serialized_module_bytes`.
2019-03-19 10:51:43 +01:00
Ivan Enderlin
5e31a1b6d1
feat(runtime-c-api) Introduce the wasmer_serialized_module_t
struct type.
...
The `wasmer_module_serialize` function now computes a
`wasmer_serialized_module_t` value. The `wasmer_module_deserialize`
function takes this value as an input. Same for
`wasmer_serialized_module_destroy`.
The new function `wasmer_serialized_module_bytes` allows to read the
bytes inside the `wasmer_serialized_mdule_t` structure.
2019-03-19 10:04:31 +01:00
Ivan Enderlin
6605a02316
feat(runtime-c-api) Add the wasmer_module_serialization_destroy
function.
2019-03-18 16:05:04 +01:00
Ivan Enderlin
aac5c88b58
doc(runtime-c-api) Update the documentation of wasmer_module_deserialize
.
2019-03-15 12:18:52 +01:00
Ivan Enderlin
2368ce3a20
chore(runtime-c-api) Regenerate the wasmer.hh?
files.
2019-03-15 12:04:23 +01:00
Ivan Enderlin
5b98ee732c
feat(runtime-c-api) wasmer_validate
expects a *const uint8_t
.
...
This patch updates the first argument of `wasmer_validate` from `*mut
uint8_t` to `*const uint8_t`. Indeed, the
`wasmer-runtime-core::validate` function doesn't expect a mutable
slice, so it's not required to expect a mutable array from C.
Also, it's likely for the Wasm bytes to be stored in the
`wasmer_byte_array` structure. The first field `bytes` is defined as
`*const uint8_t`. So this patch avoids a cast when writing a C++
program.
2019-03-14 12:33:40 +01:00
Ivan Enderlin
a11d454130
feat(runtime-c-api) Add an API to update vm::Ctx.data
.
...
This patch adds 2 functions for the runtime C API, respectively
`wasmer_instance_context_data_set` and
`wasmer_instance_context_data_get`. The goal is to modify the
`vm::Ctx.data` field in the `runtime-core` library.
This is required to pass dynamic data to imported functions for
instance.
2019-03-11 16:50:18 +01:00
Brandon Fish
628caf0a74
Make import_func_new/destroy not const
2019-03-07 22:59:11 -06:00
Ivan Enderlin
dcb4032e9d
test(runtime-c-api) Fix compilation errors in test-imports.c
.
2019-03-07 10:15:32 +01:00
Ivan Enderlin
d709191be1
doc(runtime-c-api) Declare the example as C, so that they are not tested.
...
Those examples contain C code. They must not be run by `rustdoc` as
tests.
2019-03-06 12:08:02 +01:00
Ivan Enderlin
25feef7384
chore(runtime-c-api) Regenerate the header files.
2019-03-05 10:07:08 +01:00
Brandon Fish
adfdf4d85d
Merge branch 'master' into feature/add-c-api-module-import-descriptors
2019-03-01 12:50:35 -06:00
Brandon Fish
0792cc7018
Merge branch 'master' into feature/c-api-call-an-exported-func
2019-03-01 12:14:56 -06:00
Brandon Fish
b008a054de
Fix C API to allow calling an exported func
2019-02-24 12:22:24 -06:00
Brandon Fish
1dfa106850
Add C API module import descriptors
2019-02-23 18:25:51 -06:00
Brandon Fish
17fe7bdaea
Add C API module export descriptors
2019-02-23 15:41:38 -06:00
Brandon Fish
ac57a1bc71
Add C API module_instantiate function
2019-02-20 23:08:23 -06:00