pub trait ToJsValue: Sized {
    type ReturnAbi: ReturnWasmAbi + IntoWasmAbi;

    // Required methods
    fn to_js_value(&self) -> JsValue;
    fn into_return_abi(self) -> Result<Self::ReturnAbi, JsValue>;

    // Provided methods
    fn number_of_args() -> u32 { ... }
    fn to_function_args(&self) -> Array { ... }
    fn create_array_of_size(size: u32) -> JsValue { ... }
}

Required Associated Types§

Required Methods§

source

fn to_js_value(&self) -> JsValue

source

fn into_return_abi(self) -> Result<Self::ReturnAbi, JsValue>

When this is returned from a closure

Provided Methods§

source

fn number_of_args() -> u32

Number of function arguments when this type is used as a function input type

source

fn to_function_args(&self) -> Array

Convert to function arguments when calling a function with this value

source

fn create_array_of_size(size: u32) -> JsValue

When converting Vec to JsValue, create array or Int32Array for example

Implementations on Foreign Types§

source§

impl ToJsValue for char

source§

impl<T0: ToJsValue, T1: ToJsValue, T2: ToJsValue, T3: ToJsValue, T4: ToJsValue, T5: ToJsValue, T6: ToJsValue, T7: ToJsValue, T8: ToJsValue, T9: ToJsValue> ToJsValue for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9)

source§

impl<T0: ToJsValue, T1: ToJsValue, T2: ToJsValue, T3: ToJsValue, T4: ToJsValue, T5: ToJsValue, T6: ToJsValue, T7: ToJsValue, T8: ToJsValue, T9: ToJsValue, T10: ToJsValue, T11: ToJsValue> ToJsValue for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11)

source§

impl<T0: ToJsValue, T1: ToJsValue, T2: ToJsValue, T3: ToJsValue, T4: ToJsValue, T5: ToJsValue, T6: ToJsValue, T7: ToJsValue, T8: ToJsValue, T9: ToJsValue, T10: ToJsValue> ToJsValue for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10)

source§

impl<'a, T: ToJsValue> ToJsValue for &'a [T]

source§

impl ToJsValue for ()

source§

impl<'a> ToJsValue for &'a str

source§

impl ToJsValue for i32

source§

impl<T0: ToJsValue, T1: ToJsValue, T2: ToJsValue, T3: ToJsValue, T4: ToJsValue, T5: ToJsValue> ToJsValue for (T0, T1, T2, T3, T4, T5)

source§

impl<T0: ToJsValue, T1: ToJsValue, T2: ToJsValue, T3: ToJsValue, T4: ToJsValue, T5: ToJsValue, T6: ToJsValue> ToJsValue for (T0, T1, T2, T3, T4, T5, T6)

source§

impl<T0: ToJsValue, T1: ToJsValue, T2: ToJsValue, T3: ToJsValue, T4: ToJsValue> ToJsValue for (T0, T1, T2, T3, T4)

source§

impl<T: ToJsValue, E: ToJsValue> ToJsValue for Result<T, E>

source§

impl<T0: ToJsValue, T1: ToJsValue, T2: ToJsValue> ToJsValue for (T0, T1, T2)

source§

impl ToJsValue for f32

source§

impl<T: ToJsValue> ToJsValue for Option<T>

source§

impl ToJsValue for i64

source§

impl<'a, T: ToJsValue> ToJsValue for &'a T

source§

impl ToJsValue for String

source§

impl<T: ToJsValue> ToJsValue for Vec<T>

source§

impl<T: ToJsValue> ToJsValue for (T,)

source§

impl ToJsValue for u32

source§

impl<T0: ToJsValue, T1: ToJsValue> ToJsValue for (T0, T1)

source§

impl ToJsValue for i16

source§

impl<T0: ToJsValue, T1: ToJsValue, T2: ToJsValue, T3: ToJsValue, T4: ToJsValue, T5: ToJsValue, T6: ToJsValue, T7: ToJsValue> ToJsValue for (T0, T1, T2, T3, T4, T5, T6, T7)

source§

impl<T0: ToJsValue, T1: ToJsValue, T2: ToJsValue, T3: ToJsValue> ToJsValue for (T0, T1, T2, T3)

source§

impl<T0: ToJsValue, T1: ToJsValue, T2: ToJsValue, T3: ToJsValue, T4: ToJsValue, T5: ToJsValue, T6: ToJsValue, T7: ToJsValue, T8: ToJsValue> ToJsValue for (T0, T1, T2, T3, T4, T5, T6, T7, T8)

source§

impl ToJsValue for u8

source§

impl ToJsValue for bool

source§

impl ToJsValue for u16

source§

impl ToJsValue for u64

source§

impl ToJsValue for i8

source§

impl ToJsValue for f64

Implementors§