Struct wasm_encoder::DataSection[][src]

pub struct DataSection { /* fields omitted */ }
Expand description

An encoder for the data section.

Example

use wasm_encoder::{
    DataSection, Instruction, MemorySection, MemoryType,
    Module,
};

let mut memory = MemorySection::new();
memory.memory(MemoryType {
    minimum: 1,
    maximum: None,
    memory64: false,
});

let mut data = DataSection::new();
let memory_index = 0;
let offset = Instruction::I32Const(42);
let segment_data = b"hello";
data.active(memory_index, offset, segment_data.iter().copied());

let mut module = Module::new();
module
    .section(&memory)
    .section(&data);

let wasm_bytes = module.finish();

Implementations

Create a new data section encoder.

How many segments have been defined inside this section so far?

Define an active data segment.

Define an active data segment.

Define a passive data segment.

Passive data segments are part of the bulk memory proposal.

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

This section’s id. Read more

Write this section’s data and data length prefix into the given sink.

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

Performs the conversion.

Performs the conversion.

The resulting type after obtaining ownership.

Creates owned data from borrowed data, usually by cloning. Read more

🔬 This is a nightly-only experimental API. (toowned_clone_into)

recently added

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.