Struct JsCommunicationBackend
#[repr(transparent)]pub struct JsCommunicationBackend {
obj: JsValue,
}
Fields§
§obj: JsValue
Implementations§
Methods from Deref<Target = JsValue>§
pub const NULL: JsValue
pub const UNDEFINED: JsValue
pub const TRUE: JsValue
pub const FALSE: JsValue
Sourcepub fn into_serde<T>(&self) -> Result<T, Error>where
T: for<'a> Deserialize<'a>,
👎Deprecated: causes dependency cycles, use serde-wasm-bindgen
or gloo_utils::format::JsValueSerdeExt
instead
pub fn into_serde<T>(&self) -> Result<T, Error>where
T: for<'a> Deserialize<'a>,
serde-wasm-bindgen
or gloo_utils::format::JsValueSerdeExt
insteadInvokes JSON.stringify
on this value and then parses the resulting
JSON into an arbitrary Rust value.
This function is deprecated, due to creating a dependency cycle in
some circumstances. Use serde-wasm-bindgen
or
gloo_utils::format::JsValueSerdeExt
instead.
This function will first call JSON.stringify
on the JsValue
itself.
The resulting string is then passed into Rust which then parses it as
JSON into the resulting value.
Usage of this API requires activating the serde-serialize
feature of
the wasm-bindgen
crate.
§Errors
Returns any error encountered when parsing the JSON into a T
.
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
.
Sourcepub fn js_in(&self, obj: &JsValue) -> bool
pub fn js_in(&self, obj: &JsValue) -> bool
Applies the binary in
JS operator on the two JsValue
s.
Sourcepub fn loose_eq(&self, other: &JsValue) -> bool
pub fn loose_eq(&self, other: &JsValue) -> bool
Compare two JsValue
s for equality, using the ==
operator in JS.
Sourcepub fn unsigned_shr(&self, rhs: &JsValue) -> u32
pub fn unsigned_shr(&self, rhs: &JsValue) -> u32
Applies the binary >>>
JS operator on the two JsValue
s.
Sourcepub fn checked_div(&self, rhs: &JsValue) -> JsValue
pub fn checked_div(&self, rhs: &JsValue) -> JsValue
Applies the binary /
JS operator on two JsValue
s, catching and returning any RangeError
thrown.
Sourcepub fn pow(&self, rhs: &JsValue) -> JsValue
pub fn pow(&self, rhs: &JsValue) -> JsValue
Applies the binary **
JS operator on the two JsValue
s.
Sourcepub fn lt(&self, other: &JsValue) -> bool
pub fn lt(&self, other: &JsValue) -> bool
Applies the binary <
JS operator on the two JsValue
s.
Sourcepub fn le(&self, other: &JsValue) -> bool
pub fn le(&self, other: &JsValue) -> bool
Applies the binary <=
JS operator on the two JsValue
s.
Sourcepub fn ge(&self, other: &JsValue) -> bool
pub fn ge(&self, other: &JsValue) -> bool
Applies the binary >=
JS operator on the two JsValue
s.
Sourcepub fn gt(&self, other: &JsValue) -> bool
pub fn gt(&self, other: &JsValue) -> bool
Applies the binary >
JS operator on the two JsValue
s.
Sourcepub fn unchecked_into_f64(&self) -> f64
pub fn unchecked_into_f64(&self) -> f64
Applies the unary +
JS operator on a JsValue
. Can throw.
Trait Implementations§
§impl AsRef<JsCommunicationBackend> for JsCommunicationBackend
impl AsRef<JsCommunicationBackend> for JsCommunicationBackend
§fn as_ref(&self) -> &JsCommunicationBackend
fn as_ref(&self) -> &JsCommunicationBackend
§impl AsRef<JsValue> for JsCommunicationBackend
impl AsRef<JsValue> for JsCommunicationBackend
§impl Deref for JsCommunicationBackend
impl Deref for JsCommunicationBackend
§impl From<JsCommunicationBackend> for JsValue
impl From<JsCommunicationBackend> for JsValue
§fn from(obj: JsCommunicationBackend) -> JsValue
fn from(obj: JsCommunicationBackend) -> JsValue
§impl From<JsValue> for JsCommunicationBackend
impl From<JsValue> for JsCommunicationBackend
§fn from(obj: JsValue) -> JsCommunicationBackend
fn from(obj: JsValue) -> JsCommunicationBackend
§impl FromWasmAbi for JsCommunicationBackend
impl FromWasmAbi for JsCommunicationBackend
§type Abi = <JsValue as FromWasmAbi>::Abi
type Abi = <JsValue as FromWasmAbi>::Abi
§unsafe fn from_abi(
js: <JsCommunicationBackend as FromWasmAbi>::Abi,
) -> JsCommunicationBackend
unsafe fn from_abi( js: <JsCommunicationBackend as FromWasmAbi>::Abi, ) -> JsCommunicationBackend
§impl<'a> IntoWasmAbi for &'a JsCommunicationBackend
impl<'a> IntoWasmAbi for &'a JsCommunicationBackend
§type Abi = <&'a JsValue as IntoWasmAbi>::Abi
type Abi = <&'a JsValue as IntoWasmAbi>::Abi
§fn into_abi(self) -> <&'a JsCommunicationBackend as IntoWasmAbi>::Abi
fn into_abi(self) -> <&'a JsCommunicationBackend as IntoWasmAbi>::Abi
self
into Self::Abi
so that it can be sent across the wasm
ABI boundary.§impl IntoWasmAbi for JsCommunicationBackend
impl IntoWasmAbi for JsCommunicationBackend
§type Abi = <JsValue as IntoWasmAbi>::Abi
type Abi = <JsValue as IntoWasmAbi>::Abi
§fn into_abi(self) -> <JsCommunicationBackend as IntoWasmAbi>::Abi
fn into_abi(self) -> <JsCommunicationBackend as IntoWasmAbi>::Abi
self
into Self::Abi
so that it can be sent across the wasm
ABI boundary.§impl JsCast for JsCommunicationBackend
impl JsCast for JsCommunicationBackend
§fn instanceof(val: &JsValue) -> bool
fn instanceof(val: &JsValue) -> bool
instanceof
check to see whether the JsValue
provided is an instance of this type. Read more§fn unchecked_from_js(val: JsValue) -> JsCommunicationBackend
fn unchecked_from_js(val: JsValue) -> JsCommunicationBackend
§fn unchecked_from_js_ref(val: &JsValue) -> &JsCommunicationBackend
fn unchecked_from_js_ref(val: &JsValue) -> &JsCommunicationBackend
Source§fn has_type<T>(&self) -> boolwhere
T: JsCast,
fn has_type<T>(&self) -> boolwhere
T: JsCast,
T
. Read moreSource§fn dyn_into<T>(self) -> Result<T, Self>where
T: JsCast,
fn dyn_into<T>(self) -> Result<T, Self>where
T: JsCast,
T
. Read moreSource§fn dyn_ref<T>(&self) -> Option<&T>where
T: JsCast,
fn dyn_ref<T>(&self) -> Option<&T>where
T: JsCast,
T
. Read moreSource§fn unchecked_into<T>(self) -> Twhere
T: JsCast,
fn unchecked_into<T>(self) -> Twhere
T: JsCast,
Source§fn unchecked_ref<T>(&self) -> &Twhere
T: JsCast,
fn unchecked_ref<T>(&self) -> &Twhere
T: JsCast,
§impl LongRefFromWasmAbi for JsCommunicationBackend
impl LongRefFromWasmAbi for JsCommunicationBackend
§type Abi = <JsValue as LongRefFromWasmAbi>::Abi
type Abi = <JsValue as LongRefFromWasmAbi>::Abi
RefFromWasmAbi::Abi
§type Anchor = JsCommunicationBackend
type Anchor = JsCommunicationBackend
RefFromWasmAbi::Anchor
§unsafe fn long_ref_from_abi(
js: <JsCommunicationBackend as LongRefFromWasmAbi>::Abi,
) -> <JsCommunicationBackend as LongRefFromWasmAbi>::Anchor
unsafe fn long_ref_from_abi( js: <JsCommunicationBackend as LongRefFromWasmAbi>::Abi, ) -> <JsCommunicationBackend as LongRefFromWasmAbi>::Anchor
RefFromWasmAbi::ref_from_abi
§impl OptionFromWasmAbi for JsCommunicationBackend
impl OptionFromWasmAbi for JsCommunicationBackend
§fn is_none(abi: &<JsCommunicationBackend as FromWasmAbi>::Abi) -> bool
fn is_none(abi: &<JsCommunicationBackend as FromWasmAbi>::Abi) -> bool
None
, and otherwise it will be passed to
FromWasmAbi
.§impl<'a> OptionIntoWasmAbi for &'a JsCommunicationBackend
impl<'a> OptionIntoWasmAbi for &'a JsCommunicationBackend
§fn none() -> <&'a JsCommunicationBackend as IntoWasmAbi>::Abi
fn none() -> <&'a JsCommunicationBackend as IntoWasmAbi>::Abi
None
branch of this option. Read more§impl OptionIntoWasmAbi for JsCommunicationBackend
impl OptionIntoWasmAbi for JsCommunicationBackend
§fn none() -> <JsCommunicationBackend as IntoWasmAbi>::Abi
fn none() -> <JsCommunicationBackend as IntoWasmAbi>::Abi
None
branch of this option. Read more§impl RefFromWasmAbi for JsCommunicationBackend
impl RefFromWasmAbi for JsCommunicationBackend
§type Abi = <JsValue as RefFromWasmAbi>::Abi
type Abi = <JsValue as RefFromWasmAbi>::Abi
Self
are recovered from.§type Anchor = ManuallyDrop<JsCommunicationBackend>
type Anchor = ManuallyDrop<JsCommunicationBackend>
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.§unsafe fn ref_from_abi(
js: <JsCommunicationBackend as RefFromWasmAbi>::Abi,
) -> <JsCommunicationBackend as RefFromWasmAbi>::Anchor
unsafe fn ref_from_abi( js: <JsCommunicationBackend as RefFromWasmAbi>::Abi, ) -> <JsCommunicationBackend as RefFromWasmAbi>::Anchor
Auto Trait Implementations§
impl Freeze for JsCommunicationBackend
impl RefUnwindSafe for JsCommunicationBackend
impl !Send for JsCommunicationBackend
impl !Sync for JsCommunicationBackend
impl Unpin for JsCommunicationBackend
impl UnwindSafe for JsCommunicationBackend
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
§impl<T> CompatExt for T
impl<T> CompatExt for T
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> ReturnWasmAbi for Twhere
T: IntoWasmAbi,
impl<T> ReturnWasmAbi for Twhere
T: IntoWasmAbi,
Source§type Abi = <T as IntoWasmAbi>::Abi
type Abi = <T as IntoWasmAbi>::Abi
IntoWasmAbi::Abi
Source§fn return_abi(self) -> <T as ReturnWasmAbi>::Abi
fn return_abi(self) -> <T as ReturnWasmAbi>::Abi
IntoWasmAbi::into_abi
, except that it may throw and never
return in the case of Err
.