Struct js_sys::WebAssembly::Instance[][src]

#[repr(transparent)]pub struct Instance { /* fields omitted */ }

A WebAssembly.Instance object is a stateful, executable instance of a WebAssembly.Module. Instance objects contain all the exported WebAssembly functions that allow calling into WebAssembly code from JavaScript.

MDN documentation

Implementations

impl Instance[src]

pub fn new(module: &Module, imports: &Object) -> Result<Instance, JsValue>[src]

The WebAssembly.Instance() constructor function can be called to synchronously instantiate a given WebAssembly.Module object. However, the primary way to get an Instance is through the asynchronous WebAssembly.instantiateStreaming() function.

MDN documentation

impl Instance[src]

pub fn exports(&self) -> Object[src]

The exports readonly property of the WebAssembly.Instance object prototype returns an object containing as its members all the functions exported from the WebAssembly module instance, to allow them to be accessed and used by JavaScript.

MDN documentation

Methods from Deref<Target = Object>

pub fn constructor(&self) -> Function[src]

The constructor property returns a reference to the Object constructor function that created the instance object.

MDN documentation

pub fn has_own_property(&self, property: &JsValue) -> bool[src]

The hasOwnProperty() method returns a boolean indicating whether the object has the specified property as its own property (as opposed to inheriting it).

MDN documentation

pub fn is_prototype_of(&self, value: &JsValue) -> bool[src]

The isPrototypeOf() method checks if an object exists in another object’s prototype chain.

MDN documentation

pub fn property_is_enumerable(&self, property: &JsValue) -> bool[src]

The propertyIsEnumerable() method returns a Boolean indicating whether the specified property is enumerable.

MDN documentation

pub fn to_locale_string(&self) -> JsString[src]

The toLocaleString() method returns a string representing the object. This method is meant to be overridden by derived objects for locale-specific purposes.

MDN documentation

pub fn to_string(&self) -> JsString[src]

The toString() method returns a string representing the object.

MDN documentation

pub fn value_of(&self) -> Object[src]

The valueOf() method returns the primitive value of the specified object.

MDN documentation

Methods from Deref<Target = JsValue>

pub const NULL: JsValue[src]

pub const UNDEFINED: JsValue[src]

pub const TRUE: JsValue[src]

pub const FALSE: JsValue[src]

pub fn as_f64(&self) -> Option<f64>[src]

Returns the f64 value of this JS value if it’s an instance of a number.

If this JS value is not an instance of a number then this returns None.

pub fn is_string(&self) -> bool[src]

Tests whether this JS value is a JS string.

pub fn as_string(&self) -> Option<String>[src]

If this JS value is a string value, this function copies the JS string value into wasm linear memory, encoded as UTF-8, and returns it as a Rust String.

To avoid the copying and re-encoding, consider the JsString::try_from() function from js-sys instead.

If this JS value is not an instance of a string or if it’s not valid utf-8 then this returns None.

UTF-16 vs UTF-8

JavaScript strings in general are encoded as UTF-16, but Rust strings are encoded as UTF-8. This can cause the Rust string to look a bit different than the JS string sometimes. For more details see the documentation about the str type which contains a few caveats about the encodings.

pub fn as_bool(&self) -> Option<bool>[src]

Returns the bool value of this JS value if it’s an instance of a boolean.

If this JS value is not an instance of a boolean then this returns None.

pub fn is_null(&self) -> bool[src]

Tests whether this JS value is null

pub fn is_undefined(&self) -> bool[src]

Tests whether this JS value is undefined

pub fn is_symbol(&self) -> bool[src]

Tests whether the type of this JS value is symbol

pub fn is_object(&self) -> bool[src]

Tests whether typeof self == "object" && self !== null.

pub fn is_function(&self) -> bool[src]

Tests whether the type of this JS value is function.

pub fn is_truthy(&self) -> bool[src]

Tests whether the value is “truthy”.

pub fn is_falsy(&self) -> bool[src]

Tests whether the value is “falsy”.

Trait Implementations

impl AsRef<Instance> for Instance[src]

impl AsRef<JsValue> for Instance[src]

impl AsRef<Object> for Instance[src]

impl Clone for Instance[src]

impl Debug for Instance[src]

impl Deref for Instance[src]

type Target = Object

The resulting type after dereferencing.

impl Eq for Instance[src]

impl From<Instance> for JsValue[src]

impl From<Instance> for Object[src]

impl From<JsValue> for Instance[src]

impl FromWasmAbi for Instance[src]

type Abi = <JsValue as FromWasmAbi>::Abi

The wasm ABI type that this converts from when coming back out from the ABI boundary. Read more

impl IntoWasmAbi for Instance[src]

type Abi = <JsValue as IntoWasmAbi>::Abi

The wasm ABI type that this converts into when crossing the ABI boundary. Read more

impl<'a> IntoWasmAbi for &'a Instance[src]

type Abi = <&'a JsValue as IntoWasmAbi>::Abi

The wasm ABI type that this converts into when crossing the ABI boundary. Read more

impl JsCast for Instance[src]

impl OptionFromWasmAbi for Instance[src]

impl OptionIntoWasmAbi for Instance[src]

impl<'a> OptionIntoWasmAbi for &'a Instance[src]

impl PartialEq<Instance> for Instance[src]

impl RefFromWasmAbi for Instance[src]

type Abi = <JsValue as RefFromWasmAbi>::Abi

The wasm ABI type references to Self are recovered from.

type Anchor = ManuallyDrop<Instance>

The type that holds the reference to Self for the duration of the invocation of the function that has an &Self parameter. This is required to ensure that the lifetimes don’t persist beyond one function call, and so that they remain anonymous. Read more

impl StructuralEq for Instance[src]

impl StructuralPartialEq for Instance[src]

impl WasmDescribe for Instance[src]

Auto Trait Implementations

impl RefUnwindSafe for Instance

impl !Send for Instance

impl !Sync for Instance

impl Unpin for Instance

impl UnwindSafe for Instance

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ReturnWasmAbi for T where
    T: IntoWasmAbi
[src]

type Abi = <T as IntoWasmAbi>::Abi

Same as IntoWasmAbi::Abi

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.