Commit Graph

290 Commits

Author SHA1 Message Date
Ivan Enderlin
f7493ff358 doc(api) Update. 2020-06-22 15:26:45 +02:00
Ivan Enderlin
1cd6eb8a21 test(api) Write more test cases for WasmTypeList. 2020-06-22 15:25:10 +02:00
Ivan Enderlin
3b03d7071b doc(api) Improve documentation. 2020-06-22 15:09:18 +02:00
Ivan Enderlin
d1e4f7c5ce feat(api) Improve the impl_traits macro + improve documentation.
The macro has been renamed `impl_host_function`, because it's
basically what it does. It implements other types and traits, but it's
all related to host functions.

The documentation has been improved. The generic parameters have been
renamed to be more self-explanatory. The code has been rewritten a little
bit to be easier to read. etc.
2020-06-22 15:05:55 +02:00
Ivan Enderlin
818706b318 doc(api) Improve documentation of HostFunctionKind and impls. 2020-06-22 14:05:19 +02:00
Ivan Enderlin
f8dfdae520 feat(api) Remove FunctionBody and use VMFunctionBody instead.
Avoid having multiple types for the same purpose.
2020-06-22 14:04:29 +02:00
Ivan Enderlin
a3f22afddc feat(api) Improve doc' + rename HostFunction.to_raw to ….function_body_ptr. 2020-06-22 13:40:22 +02:00
Ivan Enderlin
8479f53329 feat(api) Rename TrapEarly to IntoResult. And improve its doc. 2020-06-22 13:20:02 +02:00
Ivan Enderlin
996135ae31 doc(api) Improve documentation of WasmTypeList. 2020-06-22 13:05:04 +02:00
Ivan Enderlin
ef3e43dcff feat(api) Rewrite the wasm_extern_type macro to avoid repetition. 2020-06-22 11:46:30 +02:00
Ivan Enderlin
58c83734f2 test(api) Remove the function_call test.
This test does nothing. It's not using the `Function` API.
2020-06-22 11:42:42 +02:00
Ivan Enderlin
32e02f32dc test(api) Clean up tests. 2020-06-22 11:42:12 +02:00
Ivan Enderlin
a623b9531e chore(api) Rename inner::Func to inner::Function and improve documentation. 2020-06-22 11:33:49 +02:00
Ivan Enderlin
07aff22c30 feat(api/wasm-common) Move WasmExternType from wasm-common to wasmer.
Because there is a trait implementation conflicts for the
implementations `WasmTypeList` for `$x*` where `$x: WasmExternType`.
2020-06-22 11:10:18 +02:00
Ivan Enderlin
63ec941dac Revert "!temp Remove impl of WasmTypeList for Infallible."
This reverts commit ad7c618193.
2020-06-22 11:05:48 +02:00
Ivan Enderlin
ad7c618193 !temp Remove impl of WasmTypeList for Infallible.
I don't think it is necessary anymore.
2020-06-22 10:48:15 +02:00
Ivan Enderlin
5e26d9a74b !temp Move HostFunction, Func & co. into wasmer.
Because `Func` needs an access to the runtime API (`wasmer-runtime`)
to trap properly, either we move parts of `wasmer-runtime` to
`wasm-common`, or we move parts of `wasm-common` into `wasmer`. I
decided to go with the second approach since `wasmer` is the only
crate to use `HostFunction` & co. It's not “common” by definition, and
it's way easier (for the moment).
2020-06-19 15:20:28 +02:00
Mark McCaskey
3d46711cb3 Add Table as a trait 2020-06-17 12:18:22 -07:00
Syrus Akbary
67044eb9bb Merge pull request #114 from wasmerio/feature/memory-is-a-trait
Implement the `Memory` API as a trait
2020-06-17 11:35:09 -07:00
Mark McCaskey
f85f4636f3 Clean up and address feedback 2020-06-17 10:59:29 -07:00
losfair
9d27bd2318 Merge remote-tracking branch 'origin/master' into middleware 2020-06-18 00:41:42 +08:00
Mark McCaskey
bfb09543d9 Implement the Memory API as a trait 2020-06-16 16:30:15 -07:00
Mark McCaskey
ef285aae6c Merge pull request #110 from wasmerio/feature/functions-own-their-envs
Change functions to own their `env`s
2020-06-16 13:36:05 -07:00
Mark McCaskey
cf3a391422 Add comment about derefing typecasted pointer 2020-06-16 13:01:51 -07:00
Mark McCaskey
3cebca05d2 Require Env to be 'static in Function 2020-06-16 12:18:24 -07:00
losfair
0ecaac5f70 Export required types. 2020-06-17 01:43:24 +08:00
Syrus
74a1463188 Fixed linting 2020-06-15 19:57:08 -07:00
Syrus
cdb7874bce Make tests pass 2020-06-15 19:48:38 -07:00
Mark McCaskey
0191ffe598 Add wip 2020-06-15 18:05:59 -07:00
Syrus
b00f899913 Update to Cranelift 0.65, wasmparser 0.57 2020-06-15 18:00:48 -07:00
Mark McCaskey
0f0a8dde34 Merge branch 'master' into feature/functions-own-their-envs 2020-06-15 16:17:24 -07:00
Syrus
93024cccc8 Last round of feedback 2020-06-15 15:16:23 -07:00
Syrus
0ae7982931 Re-enabled non-optimized function trampolines approach 2020-06-15 14:53:34 -07:00
Syrus
050493e354 Fixed lint issue 2020-06-15 13:58:57 -07:00
Syrus
58cc08e37a Inline further to optimize native calls 2020-06-15 13:48:07 -07:00
Syrus
24077fb919 Added tests for host functions calls 2020-06-15 13:33:46 -07:00
Syrus
99ed3e889e Simplified has_env structure 2020-06-15 13:22:20 -07:00
Syrus
fca0d0c9fe Fixed feedback 2020-06-15 12:59:07 -07:00
Syrus
e5838d8ccb Added full support for dynamic functions with env 2020-06-13 15:52:42 -07:00
Syrus
b7dc092256 Fixed native compilation 2020-06-13 01:21:10 -07:00
Syrus
cd1138d520 Added support for native calls to dynamic functions 2020-06-12 20:50:24 -07:00
Syrus
21389f34ce Improved docs 2020-06-12 19:01:58 -07:00
Mark McCaskey
b232b237b5 Fix API tests 2020-06-12 16:56:15 -07:00
Mark McCaskey
4bb0df3d22 First draft of functions owning their envs 2020-06-12 16:26:20 -07:00
Mark McCaskey
59c3fb6dcf Merge branch 'master' into feature/port-emscripten 2020-06-12 13:04:27 -07:00
Syrus Akbary
2095f7cc13 Merge pull request #96 from wasmerio/feat-api-imports-macro
feat(api) Update and better test the `imports` macro
2020-06-12 03:27:13 -07:00
Syrus
1e85e0d528 Update version to 1.0.0-alpha.1 2020-06-11 15:31:29 -07:00
Syrus
bf03c734fc Misc improvements 2020-06-11 14:29:16 -07:00
Mark McCaskey
4b48f8ffe4 Merge branch 'master' into feature/port-emscripten 2020-06-11 13:58:52 -07:00
nlewycky
afc7e0f0b9 Merge pull request #99 from wasmerio/clippy-build
Fix Engine::same().
2020-06-11 10:02:40 -07:00