Struct wasm_encoder::ComponentTypeSection
source · [−]pub struct ComponentTypeSection { /* private fields */ }
Expand description
An encoder for the type section of WebAssembly components.
Example
use wasm_encoder::{Component, ComponentTypeSection, PrimitiveValType};
let mut types = ComponentTypeSection::new();
// Define a function type of `[string, string] -> string`.
types.function(
[
(Some("a"), PrimitiveValType::String),
(Some("b"), PrimitiveValType::String)
],
PrimitiveValType::String
);
let mut component = Component::new();
component.section(&types);
let bytes = component.finish();
Implementations
sourceimpl ComponentTypeSection
impl ComponentTypeSection
sourcepub fn ty(&mut self) -> ComponentTypeEncoder<'_>
pub fn ty(&mut self) -> ComponentTypeEncoder<'_>
Encode a type into this section.
The returned encoder must be finished before adding another type.
sourcepub fn component(&mut self, ty: &ComponentType) -> &mut Self
pub fn component(&mut self, ty: &ComponentType) -> &mut Self
Define a component type in this type section.
sourcepub fn instance(&mut self, ty: &InstanceType) -> &mut Self
pub fn instance(&mut self, ty: &InstanceType) -> &mut Self
Define an instance type in this type section.
sourcepub fn function<'a, P, T>(
&mut self,
params: P,
result: impl Into<ComponentValType>
) -> &mut Self where
P: IntoIterator<Item = (Option<&'a str>, T)>,
P::IntoIter: ExactSizeIterator,
T: Into<ComponentValType>,
pub fn function<'a, P, T>(
&mut self,
params: P,
result: impl Into<ComponentValType>
) -> &mut Self where
P: IntoIterator<Item = (Option<&'a str>, T)>,
P::IntoIter: ExactSizeIterator,
T: Into<ComponentValType>,
Define a function type in this type section.
sourcepub fn defined_type(&mut self) -> ComponentDefinedTypeEncoder<'_>
pub fn defined_type(&mut self) -> ComponentDefinedTypeEncoder<'_>
Add a component defined type to this type section.
The returned encoder must be used before adding another type.
Trait Implementations
sourceimpl Clone for ComponentTypeSection
impl Clone for ComponentTypeSection
sourcefn clone(&self) -> ComponentTypeSection
fn clone(&self) -> ComponentTypeSection
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
sourceimpl Debug for ComponentTypeSection
impl Debug for ComponentTypeSection
sourceimpl Default for ComponentTypeSection
impl Default for ComponentTypeSection
sourcefn default() -> ComponentTypeSection
fn default() -> ComponentTypeSection
Returns the “default value” for a type. Read more
Auto Trait Implementations
impl RefUnwindSafe for ComponentTypeSection
impl Send for ComponentTypeSection
impl Sync for ComponentTypeSection
impl Unpin for ComponentTypeSection
impl UnwindSafe for ComponentTypeSection
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more