Struct wasmer::WasmSlice

source ·
pub struct WasmSlice<'a, T: ValueType> { /* private fields */ }
Expand description

Reference to an array of values in Wasm memory.

The type of the value must satisfy the requirements of the ValueType trait which guarantees that reading and writing such a value to untrusted memory is safe.

The address is not required to be aligned: unaligned accesses are fully supported.

This wrapper safely handles concurrent modifications of the data by another thread.

Implementations§

Creates a new WasmSlice starting at the given offset in memory and with the given number of elements.

Returns a MemoryAccessError if the slice length overflows.

Get the offset into Wasm linear memory for this WasmSlice.

Get a 32-bit WasmPtr for this WasmRef.

Get a 64-bit WasmPtr for this WasmRef.

Get the number of elements in this slice.

Returns true if the number of elements is 0.

Get a WasmRef to an element in the slice.

Get a WasmSlice for a subslice of this slice.

Get an iterator over the elements in this slice.

Reads an element of this slice.

Writes to an element of this slice.

Reads the entire slice into the given buffer.

The length of the buffer must match the length of the slice.

Reads the entire slice into the given uninitialized buffer.

The length of the buffer must match the length of the slice.

This method returns an initialized view of the buffer.

Write the given slice into this WasmSlice.

The length of the slice must match the length of the WasmSlice.

Reads this WasmSlice into a Vec.

Trait Implementations§

Returns a copy of the value. Read more
Performs copy-assignment from source. Read more
Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

Gets the TypeId of self. Read more
The archived version of the pointer metadata for this type.
Converts some archived metadata to the pointer metadata for itself.
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more
Deserializes using the given deserializer

Returns the argument unchanged.

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Instruments this type with the current Span, returning an Instrumented wrapper. Read more

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

The alignment of pointer.
The type for initializers.
Initializes a with the given initializer. Read more
Dereferences the given pointer. Read more
Mutably dereferences the given pointer. Read more
Drops the object pointed to by the given pointer. Read more
The type for metadata in pointers and references to Self.
The resulting type after obtaining ownership.
Creates owned data from borrowed data, usually by cloning. Read more
Uses borrowed data to replace owned data, usually by cloning. Read more
The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.
Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more