Struct wasmparser::MemArg

source ·
pub struct MemArg {
    pub align: u8,
    pub max_align: u8,
    pub offset: u64,
    pub memory: u32,
}
Expand description

Represents a memory immediate in a WebAssembly memory instruction.

Fields§

§align: u8

Alignment, stored as n where the actual alignment is 2^n

§max_align: u8

Maximum alignment, stored as n where the actual alignment is 2^n.

Note that this field is not actually read from the binary format, it will be a constant depending on which instruction this MemArg is a payload for.

§offset: u64

A fixed byte-offset that this memory immediate specifies.

Note that the memory64 proposal can specify a full 64-bit byte offset while otherwise only 32-bit offsets are allowed. Once validated memory immediates for 32-bit memories are guaranteed to be at most u32::MAX whereas 64-bit memories can use the full 64-bits.

§memory: u32

The index of the memory this immediate points to.

Note that this points within the module’s own memory index space, and is always zero unless the multi-memory proposal of WebAssembly is enabled.

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
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

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

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.