Sha256: 9c37d1eea486ee951547a328693bcf9f2a27f48e2207478daf23c1cd9e9f95f3
Contents?: true
Size: 1.06 KB
Versions: 17
Compression:
Stored size: 1.06 KB
Contents
use crate::limits::{MAX_WASM_FUNCTION_RETURNS, MAX_WASM_START_ARGS}; use crate::prelude::*; use crate::{BinaryReader, FromReader, Result}; /// Represents the start function in a WebAssembly component. #[derive(Debug, Clone)] pub struct ComponentStartFunction { /// The index to the start function. pub func_index: u32, /// The start function arguments. /// /// The arguments are specified by value index. pub arguments: Box<[u32]>, /// The number of expected results for the start function. pub results: u32, } impl<'a> FromReader<'a> for ComponentStartFunction { fn from_reader(reader: &mut BinaryReader<'a>) -> Result<Self> { let func_index = reader.read_var_u32()?; let arguments = reader .read_iter(MAX_WASM_START_ARGS, "start function arguments")? .collect::<Result<_>>()?; let results = reader.read_size(MAX_WASM_FUNCTION_RETURNS, "start function results")? as u32; Ok(ComponentStartFunction { func_index, arguments, results, }) } }
Version data entries
17 entries across 12 versions & 1 rubygems