Union wasmtime::ValRaw

source ·
#[repr(C)]
pub union ValRaw {
    /* private fields */
}
Expand description

A “raw” and unsafe representation of a WebAssembly value.

This is provided for use with the Func::new_unchecked and Func::call_unchecked APIs. In general it’s unlikely you should be using this from Rust, rather using APIs like Func::wrap and TypedFunc::call.

This is notably an “unsafe” way to work with Val and it’s recommended to instead use Val where possible. An important note about this union is that fields are all stored in little-endian format, regardless of the endianness of the host system.

Implementations§

source§

impl ValRaw

source

pub fn i32(i: i32) -> ValRaw

Available on crate feature runtime only.

Creates a WebAssembly i32 value

source

pub fn i64(i: i64) -> ValRaw

Available on crate feature runtime only.

Creates a WebAssembly i64 value

source

pub fn u32(i: u32) -> ValRaw

Available on crate feature runtime only.

Creates a WebAssembly i32 value

source

pub fn u64(i: u64) -> ValRaw

Available on crate feature runtime only.

Creates a WebAssembly i64 value

source

pub fn f32(i: u32) -> ValRaw

Available on crate feature runtime only.

Creates a WebAssembly f32 value

source

pub fn f64(i: u64) -> ValRaw

Available on crate feature runtime only.

Creates a WebAssembly f64 value

source

pub fn v128(i: u128) -> ValRaw

Available on crate feature runtime only.

Creates a WebAssembly v128 value

source

pub fn funcref(i: *mut c_void) -> ValRaw

Available on crate feature runtime only.

Creates a WebAssembly funcref value

source

pub fn externref(e: u32) -> ValRaw

Available on crate feature runtime only.

Creates a WebAssembly externref value

source

pub fn anyref(r: u32) -> ValRaw

Available on crate feature runtime only.

Creates a WebAssembly anyref value

source

pub fn get_i32(&self) -> i32

Available on crate feature runtime only.

Gets the WebAssembly i32 value

source

pub fn get_i64(&self) -> i64

Available on crate feature runtime only.

Gets the WebAssembly i64 value

source

pub fn get_u32(&self) -> u32

Available on crate feature runtime only.

Gets the WebAssembly i32 value

source

pub fn get_u64(&self) -> u64

Available on crate feature runtime only.

Gets the WebAssembly i64 value

source

pub fn get_f32(&self) -> u32

Available on crate feature runtime only.

Gets the WebAssembly f32 value

source

pub fn get_f64(&self) -> u64

Available on crate feature runtime only.

Gets the WebAssembly f64 value

source

pub fn get_v128(&self) -> u128

Available on crate feature runtime only.

Gets the WebAssembly v128 value

source

pub fn get_funcref(&self) -> *mut c_void

Available on crate feature runtime only.

Gets the WebAssembly funcref value

source

pub fn get_externref(&self) -> u32

Available on crate feature runtime only.

Gets the WebAssembly externref value

source

pub fn get_anyref(&self) -> u32

Available on crate feature runtime only.

Gets the WebAssembly anyref value

Trait Implementations§

source§

impl Clone for ValRaw

source§

fn clone(&self) -> ValRaw

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for ValRaw

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
source§

impl Copy for ValRaw

source§

impl Send for ValRaw

source§

impl Sync for ValRaw

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.

§

impl<T> Pointable for T

§

const ALIGN: usize = _

The alignment of pointer.
§

type Init = T

The type for initializers.
§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
source§

impl<T> Same for T

§

type Output = T

Should always be Self
source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
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.