Mavryk_webassembly_interpreter.Memory
include module type of Partial_memory
include Memory_sig.S
type t = memory
val alloc : Types.memory_type -> memory
val type_of : memory -> Types.memory_type
val bound : memory -> int64
val load_byte : memory -> int64 -> int Lwt.t
val store_byte : memory -> int64 -> int -> unit Lwt.t
val load_num :
memory ->
address ->
offset ->
Types.num_type ->
Values.num Lwt.t
val store_num : memory -> address -> offset -> Values.num -> unit Lwt.t
val load_num_packed :
Types.pack_size ->
Types.extension ->
memory ->
address ->
offset ->
Types.num_type ->
Values.num Lwt.t
val store_num_packed :
Types.pack_size ->
memory ->
address ->
offset ->
Values.num ->
unit Lwt.t
val load_vec :
memory ->
address ->
offset ->
Types.vec_type ->
Values.vec Lwt.t
val store_vec : memory -> address -> offset -> Values.vec -> unit Lwt.t
val load_vec_packed :
Types.pack_size ->
Types.vec_extension ->
memory ->
address ->
offset ->
Types.vec_type ->
Values.vec Lwt.t
store_bytes_from_bytes memory offset bytes
copies the contents of bytes
into memory
at the provided offset
. Further modifications to bytes
are not reflected in memory
.
val of_chunks :
Types.memory_type ->
Mavryk_lazy_containers.Chunked_byte_vector.t ->
t
of_chunks mem_ty chunks
creates a memory instance using chunks
. Modifications are reflected bidirectionally, i.e. modifying the memory changes the chunks and vice versa.
val content : memory -> Mavryk_lazy_containers.Chunked_byte_vector.t