/// Represents a core WebAssembly global. #[derive(Debug, Clone)] pubstruct Global<'a> { /// The global's type. pub ty: GlobalType, /// The global's initialization expression. pub init_expr: ConstExpr<'a>,
}
/// A reader for the global section of a WebAssembly module. pubtype GlobalSectionReader<'a> = SectionLimited<'a, Global<'a>>;
impl<'a> FromReader<'a> for Global<'a> { fn from_reader(reader: &mut BinaryReader<'a>) -> Result<Self> { let ty = reader.read()?; let init_expr = reader.read()?;
Ok(Global { ty, init_expr })
}
}
impl<'a> FromReader<'a> for GlobalType { fn from_reader(reader: &mut BinaryReader<'a>) -> Result<Self> { let content_type = reader.read()?; let flags = reader.read_u8()?; if reader.shared_everything_threads() { if flags > 0b11 {
bail!(reader.original_position() - 1, "malformed global flags")
}
} else { if flags > 0b1 {
bail!(
reader.original_position() - 1, "malformed mutability -- or shared globals \
require the shared-everything-threads proposal"
)
}
}
Ok(GlobalType {
content_type,
mutable: (flags & 0b01) > 0,
shared: (flags & 0b10) > 0,
})
}
}
Messung V0.5 in Prozent
¤ Diese beiden folgenden Angebotsgruppen bietet das Unternehmen0.10Angebot
(Wie Sie bei der Firma Beratungs- und Dienstleistungen beauftragen können 2026-06-22)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.