Struct nyar_wasm::FunctionType

source ·
pub struct FunctionType {
    pub symbol: WasmSymbol,
    pub export: WasmExportName,
    pub entry: bool,
    pub input: IndexMap<String, ParameterType>,
    pub local: BTreeMap<String, ParameterType>,
    pub output: Vec<WasmType>,
    pub body: FunctionBody,
    pub span: FileSpan,
}
Expand description

function

Fields§

§symbol: WasmSymbol§export: WasmExportName§entry: bool§input: IndexMap<String, ParameterType>§local: BTreeMap<String, ParameterType>§output: Vec<WasmType>§body: FunctionBody§span: FileSpan

Implementations§

source§

impl FunctionType

source

pub fn new<S: Into<WasmSymbol>>(name: S) -> Self

source

pub fn name(&self) -> String

source

pub fn with_export(self, export: bool) -> Self

source

pub fn with_entry(self, entry: bool) -> Self

source

pub fn with_inputs<I>(self, inputs: I) -> Self
where I: IntoIterator<Item = ParameterType>,

source

pub fn with_outputs<I>(self, outputs: I) -> Self
where I: IntoIterator<Item = WasmType>,

source

pub fn with_locals<I>(self, locals: I) -> Self
where I: IntoIterator<Item = ParameterType>,

source

pub fn with_operations<I>(self, operations: I) -> Self
where I: IntoIterator<Item = Operation>,

Trait Implementations§

source§

impl<'a, 'i> IntoWasm<'a, CanonLift<'i>> for FunctionType
where 'a: 'i,

source§

fn as_wast(&'a self) -> CanonLift<'i>

source§

impl<'a, 'i> IntoWasm<'a, ComponentFunctionType<'i>> for FunctionType
where 'a: 'i,

source§

impl<'a, 'i> IntoWasm<'a, CoreFunc<'i>> for FunctionType
where 'a: 'i,

source§

fn as_wast(&'a self) -> CoreFunc<'i>

怎么把组件函数降低为核心函数

source§

impl<'a, 'i> IntoWasm<'a, CoreFuncKind<'i>> for FunctionType
where 'a: 'i,

source§

fn as_wast(&'a self) -> CoreFuncKind<'i>

source§

impl<'a, 'i> IntoWasm<'a, Func<'i>> for FunctionType
where 'a: 'i,

source§

fn as_wast(&'a self) -> Func<'i>

怎么把核心函数提升到组件函数

source§

impl<'a, 'i> IntoWasm<'a, Func<'i>> for FunctionType
where 'a: 'i,

source§

fn as_wast(&'a self) -> Func<'i>

核心函数的实现

source§

impl<'a, 'i> IntoWasm<'a, FuncKind<'i>> for FunctionType
where 'a: 'i,

source§

fn as_wast(&'a self) -> FuncKind<'i>

source§

impl<'a, 'i> IntoWasm<'a, FuncKind<'i>> for FunctionType
where 'a: 'i,

source§

fn as_wast(&'a self) -> FuncKind<'i>

source§

impl<'a, 'i> IntoWasm<'a, FunctionType<'i>> for FunctionType
where 'a: 'i,

source§

fn as_wast(&'a self) -> FunctionType<'i>

source§

impl<'a, 'i> IntoWasm<'a, Start<'i>> for FunctionType
where 'a: 'i,

source§

fn as_wast(&'a self) -> Start<'i>

source§

impl WasmItem for FunctionType

source§

fn register(self, builder: &mut WasmBuilder)

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.