Struct js_sys::Promise [−][src]
#[must_use]#[repr(transparent)]pub struct Promise { /* fields omitted */ }
The Promise
object represents the eventual completion (or failure) of
an asynchronous operation, and its resulting value.
Implementations
impl Promise
[src]
impl Promise
[src]pub fn new(cb: &mut dyn FnMut(Function, Function)) -> Promise
[src]
pub fn new(cb: &mut dyn FnMut(Function, Function)) -> Promise
[src]Creates a new Promise
with the provided executor cb
The cb
is a function that is passed with the arguments resolve
and
reject
. The cb
function is executed immediately by the Promise
implementation, passing resolve
and reject
functions (the executor
is called before the Promise
constructor even returns the created
object). The resolve
and reject
functions, when called, resolve or
reject the promise, respectively. The executor normally initiates
some asynchronous work, and then, once that completes, either calls
the resolve
function to resolve the promise or else rejects it if an
error occurred.
If an error is thrown in the executor function, the promise is rejected. The return value of the executor is ignored.
impl Promise
[src]
impl Promise
[src]impl Promise
[src]
impl Promise
[src]impl Promise
[src]
impl Promise
[src]impl Promise
[src]
impl Promise
[src]pub fn resolve(obj: &JsValue) -> Promise
[src]
pub fn resolve(obj: &JsValue) -> Promise
[src]The Promise.resolve(value)
method returns a Promise
object that is
resolved with the given value. If the value is a promise, that promise
is returned; if the value is a thenable (i.e. has a “then” method), the
returned promise will “follow” that thenable, adopting its eventual
state; otherwise the returned promise will be fulfilled with the value.
impl Promise
[src]
impl Promise
[src]pub fn catch(&self, cb: &Closure<dyn FnMut(JsValue)>) -> Promise
[src]
pub fn catch(&self, cb: &Closure<dyn FnMut(JsValue)>) -> Promise
[src]The catch()
method returns a Promise
and deals with rejected cases
only. It behaves the same as calling Promise.prototype.then(undefined, onRejected)
(in fact, calling obj.catch(onRejected)
internally calls
obj.then(undefined, onRejected)
).
impl Promise
[src]
impl Promise
[src]pub fn finally(&self, cb: &Closure<dyn FnMut()>) -> Promise
[src]
pub fn finally(&self, cb: &Closure<dyn FnMut()>) -> Promise
[src]The finally()
method returns a Promise
. When the promise is settled,
whether fulfilled or rejected, the specified callback function is
executed. This provides a way for code that must be executed once the
Promise
has been dealt with to be run whether the promise was
fulfilled successfully or rejected.
This lets you avoid duplicating code in both the promise’s then()
and
catch()
handlers.
Methods from Deref<Target = Object>
pub fn constructor(&self) -> Function
[src]
pub fn constructor(&self) -> Function
[src]The constructor property returns a reference to the Object
constructor
function that created the instance object.
pub fn has_own_property(&self, property: &JsValue) -> bool
[src]
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).
pub fn is_prototype_of(&self, value: &JsValue) -> bool
[src]
pub fn is_prototype_of(&self, value: &JsValue) -> bool
[src]The isPrototypeOf()
method checks if an object exists in another
object’s prototype chain.
pub fn property_is_enumerable(&self, property: &JsValue) -> bool
[src]
pub fn property_is_enumerable(&self, property: &JsValue) -> bool
[src]The propertyIsEnumerable()
method returns a Boolean indicating
whether the specified property is enumerable.
pub fn to_locale_string(&self) -> JsString
[src]
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.
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]
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 as_string(&self) -> Option<String>
[src]
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]
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_undefined(&self) -> bool
[src]
pub fn is_undefined(&self) -> bool
[src]Tests whether this JS value is undefined
pub fn is_function(&self) -> bool
[src]
pub fn is_function(&self) -> bool
[src]Tests whether the type of this JS value is function
.
Trait Implementations
impl FromWasmAbi for Promise
[src]
impl FromWasmAbi for Promise
[src]impl IntoWasmAbi for Promise
[src]
impl IntoWasmAbi for Promise
[src]impl<'a> IntoWasmAbi for &'a Promise
[src]
impl<'a> IntoWasmAbi for &'a Promise
[src]impl JsCast for Promise
[src]
impl JsCast for Promise
[src]fn instanceof(val: &JsValue) -> bool
[src]
fn instanceof(val: &JsValue) -> bool
[src]Performs a dynamic instanceof
check to see whether the JsValue
provided is an instance of this type. Read more
fn unchecked_from_js(val: JsValue) -> Self
[src]
fn unchecked_from_js(val: JsValue) -> Self
[src]Performs a zero-cost unchecked conversion from a JsValue
into an
instance of Self
Read more
fn unchecked_from_js_ref(val: &JsValue) -> &Self
[src]
fn unchecked_from_js_ref(val: &JsValue) -> &Self
[src]Performs a zero-cost unchecked conversion from a &JsValue
into an
instance of &Self
. Read more
fn has_type<T>(&self) -> bool where
T: JsCast,
[src]
fn has_type<T>(&self) -> bool where
T: JsCast,
[src]Test whether this JS value has a type T
. Read more
fn dyn_into<T>(self) -> Result<T, Self> where
T: JsCast,
[src]
fn dyn_into<T>(self) -> Result<T, Self> where
T: JsCast,
[src]Performs a dynamic cast (checked at runtime) of this value into the
target type T
. Read more
fn dyn_ref<T>(&self) -> Option<&T> where
T: JsCast,
[src]
fn dyn_ref<T>(&self) -> Option<&T> where
T: JsCast,
[src]Performs a dynamic cast (checked at runtime) of this value into the
target type T
. Read more
fn unchecked_into<T>(self) -> T where
T: JsCast,
[src]
fn unchecked_into<T>(self) -> T where
T: JsCast,
[src]Performs a zero-cost unchecked cast into the specified type. Read more
fn unchecked_ref<T>(&self) -> &T where
T: JsCast,
[src]
fn unchecked_ref<T>(&self) -> &T where
T: JsCast,
[src]Performs a zero-cost unchecked cast into a reference to the specified type. Read more
fn is_instance_of<T>(&self) -> bool where
T: JsCast,
[src]
fn is_instance_of<T>(&self) -> bool where
T: JsCast,
[src]Test whether this JS value is an instance of the type T
. Read more
fn is_type_of(val: &JsValue) -> bool
[src]
fn is_type_of(val: &JsValue) -> bool
[src]Performs a dynamic check to see whether the JsValue
provided
is a value of this type. Read more
impl OptionFromWasmAbi for Promise
[src]
impl OptionFromWasmAbi for Promise
[src]impl OptionIntoWasmAbi for Promise
[src]
impl OptionIntoWasmAbi for Promise
[src]impl<'a> OptionIntoWasmAbi for &'a Promise
[src]
impl<'a> OptionIntoWasmAbi for &'a Promise
[src]impl RefFromWasmAbi for Promise
[src]
impl RefFromWasmAbi for Promise
[src]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<Promise>
type Anchor = ManuallyDrop<Promise>
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
unsafe fn ref_from_abi(js: Self::Abi) -> Self::Anchor
[src]
unsafe fn ref_from_abi(js: Self::Abi) -> Self::Anchor
[src]Recover a Self::Anchor
from Self::Abi
. Read more
Auto Trait Implementations
impl RefUnwindSafe for Promise
impl !Send for Promise
impl !Sync for Promise
impl Unpin for Promise
impl UnwindSafe for Promise
Blanket Implementations
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]pub fn borrow_mut(&mut self) -> &mut T
[src]
pub fn borrow_mut(&mut self) -> &mut T
[src]Mutably borrows from an owned value. Read more
impl<T> ReturnWasmAbi for T where
T: IntoWasmAbi,
[src]
impl<T> ReturnWasmAbi for T where
T: IntoWasmAbi,
[src]type Abi = <T as IntoWasmAbi>::Abi
type Abi = <T as IntoWasmAbi>::Abi
Same as IntoWasmAbi::Abi
pub fn return_abi(self) -> <T as ReturnWasmAbi>::Abi
[src]
pub fn return_abi(self) -> <T as ReturnWasmAbi>::Abi
[src]Same as IntoWasmAbi::into_abi
, except that it may throw and never
return in the case of Err
. Read more
impl<T> ToOwned for T where
T: Clone,
[src]
impl<T> ToOwned for T where
T: Clone,
[src]type Owned = T
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn to_owned(&self) -> T
[src]Creates owned data from borrowed data, usually by cloning. Read more
pub fn clone_into(&self, target: &mut T)
[src]
pub fn clone_into(&self, target: &mut T)
[src]🔬 This is a nightly-only experimental API. (toowned_clone_into
)
recently added
Uses borrowed data to replace owned data, usually by cloning. Read more