Struct js_sys::WebAssembly::Instance
source · [−]#[repr(transparent)]pub struct Instance { /* private fields */ }
Expand description
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.
Implementations
sourceimpl Instance
impl Instance
sourcepub fn new(module: &Module, imports: &Object) -> Result<Instance, JsValue>
pub fn new(module: &Module, imports: &Object) -> Result<Instance, JsValue>
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.
sourceimpl Instance
impl Instance
Methods from Deref<Target = Object>
sourcepub fn constructor(&self) -> Function
pub fn constructor(&self) -> Function
The constructor property returns a reference to the Object
constructor
function that created the instance object.
sourcepub fn has_own_property(&self, property: &JsValue) -> bool
pub fn has_own_property(&self, property: &JsValue) -> bool
The hasOwnProperty()
method returns a boolean indicating whether the
object has the specified property as its own property (as opposed to
inheriting it).
sourcepub fn is_prototype_of(&self, value: &JsValue) -> bool
pub fn is_prototype_of(&self, value: &JsValue) -> bool
The isPrototypeOf()
method checks if an object exists in another
object’s prototype chain.
sourcepub fn property_is_enumerable(&self, property: &JsValue) -> bool
pub fn property_is_enumerable(&self, property: &JsValue) -> bool
The propertyIsEnumerable()
method returns a Boolean indicating
whether the specified property is enumerable.
sourcepub fn to_locale_string(&self) -> JsString
pub fn to_locale_string(&self) -> JsString
The toLocaleString()
method returns a string representing the object.
This method is meant to be overridden by derived objects for
locale-specific purposes.
Methods from Deref<Target = JsValue>
pub const NULL: JsValue
pub const UNDEFINED: JsValue
pub const TRUE: JsValue
pub const FALSE: JsValue
sourcepub fn as_f64(&self) -> Option<f64>
pub fn as_f64(&self) -> Option<f64>
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
.
sourcepub fn as_string(&self) -> Option<String>
pub fn as_string(&self) -> Option<String>
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.
sourcepub fn as_bool(&self) -> Option<bool>
pub fn as_bool(&self) -> Option<bool>
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
.
sourcepub fn is_undefined(&self) -> bool
pub fn is_undefined(&self) -> bool
Tests whether this JS value is undefined
sourcepub fn is_function(&self) -> bool
pub fn is_function(&self) -> bool
Tests whether the type of this JS value is function
.
Trait Implementations
sourceimpl FromWasmAbi for Instance
impl FromWasmAbi for Instance
sourceimpl IntoWasmAbi for Instance
impl IntoWasmAbi for Instance
sourceimpl<'a> IntoWasmAbi for &'a Instance
impl<'a> IntoWasmAbi for &'a Instance
sourceimpl JsCast for Instance
impl JsCast for Instance
sourcefn instanceof(val: &JsValue) -> bool
fn instanceof(val: &JsValue) -> bool
Performs a dynamic instanceof
check to see whether the JsValue
provided is an instance of this type. Read more
sourcefn unchecked_from_js(val: JsValue) -> Self
fn unchecked_from_js(val: JsValue) -> Self
Performs a zero-cost unchecked conversion from a JsValue
into an
instance of Self
Read more
sourcefn unchecked_from_js_ref(val: &JsValue) -> &Self
fn unchecked_from_js_ref(val: &JsValue) -> &Self
Performs a zero-cost unchecked conversion from a &JsValue
into an
instance of &Self
. Read more
sourcefn has_type<T>(&self) -> bool where
T: JsCast,
fn has_type<T>(&self) -> bool where
T: JsCast,
Test whether this JS value has a type T
. Read more
sourcefn dyn_into<T>(self) -> Result<T, Self> where
T: JsCast,
fn dyn_into<T>(self) -> Result<T, Self> where
T: JsCast,
Performs a dynamic cast (checked at runtime) of this value into the
target type T
. Read more
sourcefn dyn_ref<T>(&self) -> Option<&T> where
T: JsCast,
fn dyn_ref<T>(&self) -> Option<&T> where
T: JsCast,
Performs a dynamic cast (checked at runtime) of this value into the
target type T
. Read more
sourcefn unchecked_into<T>(self) -> T where
T: JsCast,
fn unchecked_into<T>(self) -> T where
T: JsCast,
Performs a zero-cost unchecked cast into the specified type. Read more
sourcefn unchecked_ref<T>(&self) -> &T where
T: JsCast,
fn unchecked_ref<T>(&self) -> &T where
T: JsCast,
Performs a zero-cost unchecked cast into a reference to the specified type. Read more
sourcefn is_instance_of<T>(&self) -> bool where
T: JsCast,
fn is_instance_of<T>(&self) -> bool where
T: JsCast,
Test whether this JS value is an instance of the type T
. Read more
sourcefn is_type_of(val: &JsValue) -> bool
fn is_type_of(val: &JsValue) -> bool
Performs a dynamic check to see whether the JsValue
provided
is a value of this type. Read more
sourceimpl OptionFromWasmAbi for Instance
impl OptionFromWasmAbi for Instance
sourceimpl OptionIntoWasmAbi for Instance
impl OptionIntoWasmAbi for Instance
sourceimpl<'a> OptionIntoWasmAbi for &'a Instance
impl<'a> OptionIntoWasmAbi for &'a Instance
sourceimpl RefFromWasmAbi for Instance
impl RefFromWasmAbi for Instance
type Abi = <JsValue as RefFromWasmAbi>::Abi
type Abi = <JsValue as RefFromWasmAbi>::Abi
The wasm ABI type references to Self
are recovered from.
type Anchor = ManuallyDrop<Instance>
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
sourceunsafe fn ref_from_abi(js: Self::Abi) -> Self::Anchor
unsafe fn ref_from_abi(js: Self::Abi) -> Self::Anchor
Recover a Self::Anchor
from Self::Abi
. Read more
impl Eq for Instance
impl StructuralEq for Instance
impl StructuralPartialEq for Instance
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
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcepub fn borrow_mut(&mut self) -> &mut T
pub fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> ReturnWasmAbi for T where
T: IntoWasmAbi,
impl<T> ReturnWasmAbi for T where
T: IntoWasmAbi,
type Abi = <T as IntoWasmAbi>::Abi
type Abi = <T as IntoWasmAbi>::Abi
Same as IntoWasmAbi::Abi
sourcepub fn return_abi(self) -> <T as ReturnWasmAbi>::Abi
pub fn return_abi(self) -> <T as ReturnWasmAbi>::Abi
Same as IntoWasmAbi::into_abi
, except that it may throw and never
return in the case of Err
. Read more
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcepub fn to_owned(&self) -> T
pub fn to_owned(&self) -> T
Creates owned data from borrowed data, usually by cloning. Read more
sourcepub fn clone_into(&self, target: &mut T)
pub fn clone_into(&self, target: &mut T)
toowned_clone_into
)Uses borrowed data to replace owned data, usually by cloning. Read more