Enum wasmtime::Val [−][src]
pub enum Val {
I32(i32),
I64(i64),
F32(u32),
F64(u64),
ExternRef(Option<ExternRef>),
FuncRef(Option<Func>),
V128(u128),
}Possible runtime values that a WebAssembly module can either consume or produce.
Variants
I32(i32)A 32-bit integer
I64(i64)A 64-bit integer
F32(u32)A 32-bit float.
Note that the raw bits of the float are stored here, and you can use
f32::from_bits to create an f32 value.
F64(u64)A 64-bit float.
Note that the raw bits of the float are stored here, and you can use
f64::from_bits to create an f64 value.
An externref value which can hold opaque data to the Wasm instance
itself.
ExternRef(None) is the null external reference, created by ref.null extern in Wasm.
A first-class reference to a WebAssembly function.
FuncRef(None) is the null function reference, created by ref.null func in Wasm.
V128(u128)A 128-bit number
Implementations
impl Val[src]
impl Val[src]pub fn null() -> Val[src]
Returns a null externref value.
pub fn ty(&self) -> ValType[src]
Returns the corresponding ValType for this Val.
pub fn i32(&self) -> Option<i32>[src]
Attempt to access the underlying value of this Val, returning
None if it is not the correct type.
pub fn unwrap_i32(&self) -> i32[src]
Returns the underlying value of this Val, panicking if it’s the
wrong type.
Panics
Panics if self is not of the right type.
pub fn i64(&self) -> Option<i64>[src]
Attempt to access the underlying value of this Val, returning
None if it is not the correct type.
pub fn unwrap_i64(&self) -> i64[src]
Returns the underlying value of this Val, panicking if it’s the
wrong type.
Panics
Panics if self is not of the right type.
pub fn f32(&self) -> Option<f32>[src]
Attempt to access the underlying value of this Val, returning
None if it is not the correct type.
pub fn unwrap_f32(&self) -> f32[src]
Returns the underlying value of this Val, panicking if it’s the
wrong type.
Panics
Panics if self is not of the right type.
pub fn f64(&self) -> Option<f64>[src]
Attempt to access the underlying value of this Val, returning
None if it is not the correct type.
pub fn unwrap_f64(&self) -> f64[src]
Returns the underlying value of this Val, panicking if it’s the
wrong type.
Panics
Panics if self is not of the right type.
pub fn funcref(&self) -> Option<Option<&Func>>[src]
Attempt to access the underlying value of this Val, returning
None if it is not the correct type.
pub fn unwrap_funcref(&self) -> Option<&Func>[src]
Returns the underlying value of this Val, panicking if it’s the
wrong type.
Panics
Panics if self is not of the right type.
pub fn v128(&self) -> Option<u128>[src]
Attempt to access the underlying value of this Val, returning
None if it is not the correct type.
pub fn unwrap_v128(&self) -> u128[src]
Returns the underlying value of this Val, panicking if it’s the
wrong type.
Panics
Panics if self is not of the right type.
pub fn externref(&self) -> Option<Option<ExternRef>>[src]
Attempt to access the underlying externref value of this Val.
If this is not an externref, then None is returned.
If this is a null externref, then Some(None) is returned.
If this is a non-null externref, then Some(Some(..)) is returned.
pub fn unwrap_externref(&self) -> Option<ExternRef>[src]
Returns the underlying externref value of this Val, panicking if it’s the
wrong type.
If this is a null externref, then None is returned.
If this is a non-null externref, then Some(..) is returned.
Panics
Panics if self is not a (nullable) externref.