Ivan Enderlin
81bb278b4c
feat(interface-types) Move the values
and serde
modules to the root of the crate.
2020-04-09 11:23:26 +02:00
Ivan Enderlin
de1d3c7766
feat(interface-types) Remove the re-export of InterfaceType
in values
.
2020-04-09 10:54:09 +02:00
Ivan Enderlin
2f17a52373
test(interface-types) Update the test_executable_instruction
macro.
...
It provides a better failure message.
2020-04-07 12:34:30 +02:00
Ivan Enderlin
419dcc6415
feat(interface-types) Add the Vec1
type to represent a non-empty vector.
...
`Vec1` is used by `RecordType` to ensure that a record have at least 1
field. Then an `InterfaceValue::Record` is ensured to get at least one
value with the type-checking pass.
2020-04-03 16:13:44 +02:00
Ivan Enderlin
864ac79123
feat(interface-types) Use better errors.
...
The new `errors` module contains structure to represent errors,
instead of using basic strings. The first usage is in the interpreter
itself.
2020-03-10 17:49:35 +01:00
Ivan Enderlin
87a3606836
feat(interface-types) Implement lifting and lowering instructions.
2020-03-03 16:57:05 +01:00
Ivan Enderlin
f9ef4a650b
feat(interface-types) Re-implement interface kinds.
...
Adopt a flat structure: Flat resolved imports, flat resolved exports,
flat resolved types etc.
Also, use the latest textual format for adapters & co.
2020-02-24 18:12:01 +01:00
Ivan Enderlin
1749af20f5
doc(interface-types) Improve documentation of the macros
module.
2020-02-12 15:52:15 +01:00
Ivan Enderlin
3c651cd146
feat(interface-types) Change Instance::local_or_import(&self)
to Instance::local_or_import(&mut self)
.
...
It allows the instance to create or update locals/imports when the
`local_or_import` function is called. It's not ideal, but fine enough
for a first step.
2020-02-10 13:14:19 +01:00
Ivan Enderlin
f206ccd55f
feat(interface-types) Introduce the wasm::structures::MemoryView
trait.
2020-02-10 13:00:29 +01:00
Ivan Enderlin
1478ad8b4e
chore(interface-types) Simplify the executable_instruction
macro.
2019-09-26 14:17:43 +02:00
Ivan Enderlin
c042050497
feat(interface-types) Split the interpreter into multiple modules/files.
2019-09-26 14:14:46 +02:00
Ivan Enderlin
2f888757d4
feat(interface-types) Split into multiple files.
2019-09-18 17:12:42 +02:00