Trait golem_wasm_ast::Section

source ·
pub trait Section<IS: IndexSpace, ST: SectionType>: Debug + Clone + PartialEq {
    // Required methods
    fn index_space(&self) -> IS;
    fn section_type(&self) -> ST;
}
Expand description

A section is one top level element of a WASM binary, each having an associated IndexSpace and SectionType.

There are two families of sections, core WASM module sections are defined in the core module, while component model sections are defined in the component module.

Required Methods§

source

fn index_space(&self) -> IS

source

fn section_type(&self) -> ST

Object Safety§

This trait is not object safe.

Implementors§

source§

impl Section<ComponentIndexSpace, ComponentSectionType> for Alias

source§

impl Section<ComponentIndexSpace, ComponentSectionType> for Canon

source§

impl Section<ComponentIndexSpace, ComponentSectionType> for ComponentInstance

source§

impl Section<ComponentIndexSpace, ComponentSectionType> for ComponentType

source§

impl Section<ComponentIndexSpace, ComponentSectionType> for CoreType

source§

impl Section<ComponentIndexSpace, ComponentSectionType> for Instance

source§

impl Section<ComponentIndexSpace, ComponentSectionType> for MetadataOnlyCustom

source§

impl Section<ComponentIndexSpace, ComponentSectionType> for ComponentExport

source§

impl Section<ComponentIndexSpace, ComponentSectionType> for ComponentImport

source§

impl Section<ComponentIndexSpace, ComponentSectionType> for ComponentStart

source§

impl Section<ComponentIndexSpace, ComponentSectionType> for Custom

source§

impl Section<ComponentIndexSpace, ComponentSectionType> for IgnoredCustom

source§

impl Section<CoreIndexSpace, CoreSectionType> for MetadataOnlyCustom

source§

impl Section<CoreIndexSpace, CoreSectionType> for Custom

source§

impl Section<CoreIndexSpace, CoreSectionType> for DataCount

source§

impl Section<CoreIndexSpace, CoreSectionType> for Export

source§

impl Section<CoreIndexSpace, CoreSectionType> for FuncType

source§

impl Section<CoreIndexSpace, CoreSectionType> for FuncTypeRef

source§

impl Section<CoreIndexSpace, CoreSectionType> for Global

source§

impl Section<CoreIndexSpace, CoreSectionType> for Import

source§

impl Section<CoreIndexSpace, CoreSectionType> for Mem

source§

impl Section<CoreIndexSpace, CoreSectionType> for Start

source§

impl Section<CoreIndexSpace, CoreSectionType> for Table

source§

impl Section<CoreIndexSpace, CoreSectionType> for IgnoredCustom

source§

impl Section<CoreIndexSpace, CoreSectionType> for IgnoredData

source§

impl<Ast: AstCustomization> Section<ComponentIndexSpace, ComponentSectionType> for ComponentSection<Ast>

source§

impl<Ast: AstCustomization> Section<ComponentIndexSpace, ComponentSectionType> for Component<Ast>

source§

impl<Ast: AstCustomization> Section<ComponentIndexSpace, ComponentSectionType> for Module<Ast>

source§

impl<Ast: AstCustomization> Section<CoreIndexSpace, CoreSectionType> for CoreSection<Ast>

source§

impl<Expr: Debug + Clone + PartialEq> Section<CoreIndexSpace, CoreSectionType> for Data<Expr>

source§

impl<Expr: Debug + Clone + PartialEq> Section<CoreIndexSpace, CoreSectionType> for Elem<Expr>

source§

impl<Expr: Debug + Clone + PartialEq> Section<CoreIndexSpace, CoreSectionType> for FuncCode<Expr>