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
81d65ef41f
fix(interface-types) Remove allocator index from string.lower_memory
.
2020-04-07 12:34:07 +02:00
Ivan Enderlin
260585726c
feat(interface-types) Implement the record.lower
instruction.
2020-04-02 12:06:27 +02:00
Ivan Enderlin
2f0f4b1e84
feat(interface-types) Implement the record.lift
instruction.
2020-03-31 12:34:32 +02:00
Ivan Enderlin
5249b243ee
feat(interface-types) Encodes/decodes the record.lift
instruction.
2020-03-31 08:17:52 +02:00
Ivan Enderlin
b528e965c5
chore(interface-types) Move the instruction.rs
module in instructions/mod.rs
.
2020-03-26 11:24:10 +01:00
Ivan Enderlin
55a5b97443
feat(interface-types) Implement the string.size
instruction.
2020-03-24 15:33:42 +01:00
Ivan Enderlin
7a2db276f3
feat(interface-types) Implement the string.(lift|lower)_memory
instructions.
...
The `string.lift_memory` instruction replaces `memory-to-string`, and
`string.lower_memory` replaces `string-to-memory`.
2020-03-24 13:25:06 +01:00
Ivan Enderlin
9af32b273c
feat(interface-types) Implement [siu](NN|MM).from_*
instructions.
...
Basically the `x-to-y` instructions have been renamed `y.from_x`. This
patch updates the instruction. The binary representation isn't
specified yet, so it's just arbitrary values.
2020-03-24 12:43:57 +01:00
Ivan Enderlin
24a2f41c9f
chore(interface-types) Simplify code.
2020-03-12 14:51:18 +01: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
8bd3345a79
feat(interface-types) Remove the 'input
lifetime on Instruction
.
2020-03-10 10:37:09 +01:00
Ivan Enderlin
47b63bc9c6
Merge branch 'master' into feat-interface-types-instructions-string-and-memory
2020-03-10 10:33:56 +01:00
Ivan Enderlin
a93421f6c2
feat(interface-types) Rename write-utf8
to string-to-memory
.
2020-03-10 10:25:58 +01:00
Ivan Enderlin
2d6b987791
feat(interface-types) read-utf8
is renamed memory-to-string
.
2020-03-09 15:06:35 +01:00
Ivan Enderlin
f342670532
feat(interface-types) Rename call
to call-core
, and remove call-export
.
2020-03-09 14:33:17 +01:00
Ivan Enderlin
db99d2cabd
feat(interface-types) Implement s64-to-i32x
and u64-to-i32x
...
Actually, `s64-to-i32` and `u64-to-i32` already error when overflow
happens.
2020-03-03 17:17:26 +01:00
Ivan Enderlin
87a3606836
feat(interface-types) Implement lifting and lowering instructions.
2020-03-03 16:57:05 +01:00
Ivan Enderlin
78f2fb580c
feat(interface-types) Fix clippy errors and warnings.
2020-02-26 17:02:52 +01:00
Ivan Enderlin
55029b7c36
feat(interface-types) Implement lifting and lowering instructions.
...
List from https://github.com/WebAssembly/interface-types/blob/master/proposals/interface-types/working-notes/instr.md .
2020-02-26 16:20:39 +01:00
Ivan Enderlin
8dacaab080
feat(interface-types) Remove abandonned instructions.
2020-02-26 15:48:00 +01:00
Ivan Enderlin
ea855d29bd
doc(interface-types) Add intra links.
2020-02-21 12:23:58 +01:00
Ivan Enderlin
ed06fc0482
feat(encoders) Implement ToString
instead of From<…> for String
.
2020-02-13 14:19:31 +01:00
Ivan Enderlin
8ba931e33f
doc(interface-types) Improve the documentation of the interpreter
module.
2020-02-12 17:37:06 +01:00
Ivan Enderlin
a8da95b339
doc(interface-types) Improve module descriptions.
2020-02-10 15:27:04 +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
cae0640d75
feat(interface-types) Let the type inference engine do the work.
2019-09-26 14:37:29 +02:00
Ivan Enderlin
cabb277f14
feat(interface-types) Rename a variable.
2019-09-26 14:18:30 +02:00
Ivan Enderlin
c042050497
feat(interface-types) Split the interpreter into multiple modules/files.
2019-09-26 14:14:46 +02:00