Struct sauron::prelude::js_sys::Symbol [−][src]
#[repr(transparent)]pub struct Symbol { /* fields omitted */ }
Expand description
Implementations
The Symbol.hasInstance
well-known symbol is used to determine
if a constructor object recognizes an object as its instance.
The instanceof
operator’s behavior can be customized by this symbol.
The Symbol.isConcatSpreadable
well-known symbol is used to configure
if an object should be flattened to its array elements when using the
Array.prototype.concat()
method.
The Symbol.asyncIterator
well-known symbol specifies the default AsyncIterator for an object.
If this property is set on an object, it is an async iterable and can be used in a for await...of
loop.
The Symbol.iterator
well-known symbol specifies the default iterator
for an object. Used by for...of
.
The Symbol.match
well-known symbol specifies the matching of a regular
expression against a string. This function is called by the
String.prototype.match()
method.
The Symbol.replace
well-known symbol specifies the method that
replaces matched substrings of a string. This function is called by the
String.prototype.replace()
method.
For more information, see RegExp.prototype[@@replace]()
and
String.prototype.replace()
.
The Symbol.search
well-known symbol specifies the method that returns
the index within a string that matches the regular expression. This
function is called by the String.prototype.search()
method.
For more information, see RegExp.prototype[@@search]()
and
String.prototype.search()
.
The well-known symbol Symbol.species
specifies a function-valued
property that the constructor function uses to create derived objects.
The Symbol.split
well-known symbol specifies the method that splits a
string at the indices that match a regular expression. This function is
called by the String.prototype.split()
method.
For more information, see RegExp.prototype[@@split]()
and
String.prototype.split()
.
MDN documentation
The Symbol.toPrimitive
is a symbol that specifies a function valued
property that is called to convert an object to a corresponding
primitive value.
The Symbol.toStringTag
well-known symbol is a string valued property
that is used in the creation of the default string description of an
object. It is accessed internally by the Object.prototype.toString()
method.
The Symbol.for(key)
method searches for existing symbols in a runtime-wide symbol registry with
the given key and returns it if found.
Otherwise a new symbol gets created in the global symbol registry with this key.
The Symbol.keyFor(sym)
method retrieves a shared symbol key from the global symbol registry for the given symbol.
The toString()
method returns a string representing the specified Symbol object.
The Symbol.unscopables
well-known symbol is used to specify an object
value of whose own and inherited property names are excluded from the
with environment bindings of the associated object.
The valueOf()
method returns the primitive value of a Symbol object.
Methods from Deref<Target = JsValue>
Invokes JSON.stringify
on this value and then parses the resulting
JSON into an arbitrary Rust value.
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
.
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
.
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.
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
.
Tests whether this JS value is undefined
Tests whether the type of this JS value is function
.
Trait Implementations
Performs a dynamic instanceof
check to see whether the JsValue
provided is an instance of this type. Read more
Performs a dynamic check to see whether the JsValue
provided
is a value of this type. Read more
Performs a zero-cost unchecked conversion from a JsValue
into an
instance of Self
Read more
Performs a zero-cost unchecked conversion from a &JsValue
into an
instance of &Self
. Read more
Test whether this JS value has a type T
. Read more
Performs a dynamic cast (checked at runtime) of this value into the
target type T
. Read more
Performs a dynamic cast (checked at runtime) of this value into the
target type T
. Read more
Performs a zero-cost unchecked cast into the specified type. Read more
Performs a zero-cost unchecked cast into a reference to the specified type. Read more
Test whether this JS value is an instance of the type T
. Read more
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<Symbol>
type Anchor = ManuallyDrop<Symbol>
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
pub unsafe fn ref_from_abi(
js: <Symbol as RefFromWasmAbi>::Abi
) -> <Symbol as RefFromWasmAbi>::Anchor
pub unsafe fn ref_from_abi(
js: <Symbol as RefFromWasmAbi>::Abi
) -> <Symbol as RefFromWasmAbi>::Anchor
Recover a Self::Anchor
from Self::Abi
. Read more
Auto Trait Implementations
impl RefUnwindSafe for Symbol
impl UnwindSafe for Symbol
Blanket Implementations
Mutably borrows from an owned value. Read more
type Abi = <T as IntoWasmAbi>::Abi
type Abi = <T as IntoWasmAbi>::Abi
Same as IntoWasmAbi::Abi
Same as IntoWasmAbi::into_abi
, except that it may throw and never
return in the case of Err
. Read more