[−][src]Struct p5_sys::JsValue
Representation of an object owned by JS.
A JsValue
doesn't actually live in Rust right now but actually in a table
owned by the wasm-bindgen
generated JS glue code. Eventually the ownership
will transfer into wasm directly and this will likely become more efficient,
but for now it may be slightly slow.
Implementations
impl JsValue
[src]
pub const NULL: JsValue
[src]
The null
JS value constant.
pub const UNDEFINED: JsValue
[src]
The undefined
JS value constant.
pub const TRUE: JsValue
[src]
The true
JS value constant.
pub const FALSE: JsValue
[src]
The false
JS value constant.
pub fn from_str(s: &str) -> JsValue
[src]
Creates a new JS value which is a string.
The utf-8 string provided is copied to the JS heap and the string will be owned by the JS garbage collector.
pub fn from_f64(n: f64) -> JsValue
[src]
Creates a new JS value which is a number.
This function creates a JS value representing a number (a heap allocated number) and returns a handle to the JS version of it.
pub fn from_bool(b: bool) -> JsValue
[src]
Creates a new JS value which is a boolean.
This function creates a JS object representing a boolean (a heap allocated boolean) and returns a handle to the JS version of it.
pub fn undefined() -> JsValue
[src]
Creates a new JS value representing undefined
.
pub fn null() -> JsValue
[src]
Creates a new JS value representing null
.
pub fn symbol(description: Option<&str>) -> JsValue
[src]
Creates a new JS symbol with the optional description specified.
This function will invoke the Symbol
constructor in JS and return the
JS object corresponding to the symbol created.
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<JsValue> for JsValue
[src]
impl<T> AsRef<JsValue> for Closure<T> where
T: ?Sized,
[src]
T: ?Sized,
impl AsRef<JsValue> for SoundFile
[src]
impl AsRef<JsValue> for Image
[src]
impl AsRef<JsValue> for Shader
[src]
impl AsRef<JsValue> for Constant
[src]
impl AsRef<JsValue> for Graphics
[src]
impl AsRef<JsValue> for Table
[src]
impl AsRef<JsValue> for StringDict
[src]
impl AsRef<JsValue> for Convolver
[src]
impl AsRef<JsValue> for Renderer
[src]
impl AsRef<JsValue> for NumberDict
[src]
impl AsRef<JsValue> for Font
[src]
impl AsRef<JsValue> for PrintWriter
[src]
impl AsRef<JsValue> for HTMLCanvasElement
[src]
impl AsRef<JsValue> for Vector
[src]
impl AsRef<JsValue> for Element
[src]
impl AsRef<JsValue> for Color
[src]
impl AsRef<JsValue> for Geometry
[src]
impl AsRef<JsValue> for Camera
[src]
impl AsRef<JsValue> for HTMLElement
[src]
impl AsRef<JsValue> for MediaElement
[src]
impl Clone for JsValue
[src]
impl Debug for JsValue
[src]
impl Drop for JsValue
[src]
impl<'a> From<&'a String> for JsValue
[src]
impl<'a, T> From<&'a T> for JsValue where
T: JsCast,
[src]
T: JsCast,
impl<'a> From<&'a str> for JsValue
[src]
impl From<ANGLE_MODE> for JsValue
[src]
fn from(obj: ANGLE_MODE) -> JsValue
[src]
impl From<ARC_MODE> for JsValue
[src]
impl From<Array> for JsValue
[src]
impl From<ArrayBuffer> for JsValue
[src]
fn from(obj: ArrayBuffer) -> JsValue
[src]
impl From<AsyncIterator> for JsValue
[src]
fn from(obj: AsyncIterator) -> JsValue
[src]
impl From<BLEND_MODE> for JsValue
[src]
fn from(obj: BLEND_MODE) -> JsValue
[src]
impl From<Boolean> for JsValue
[src]
impl From<COLOR_MODE> for JsValue
[src]
fn from(obj: COLOR_MODE) -> JsValue
[src]
impl From<CURSOR_TYPE> for JsValue
[src]
fn from(obj: CURSOR_TYPE) -> JsValue
[src]
impl From<Camera> for JsValue
[src]
impl From<Collator> for JsValue
[src]
impl From<Color> for JsValue
[src]
impl From<CompileError> for JsValue
[src]
fn from(obj: CompileError) -> JsValue
[src]
impl From<Constant> for JsValue
[src]
impl From<Convolver> for JsValue
[src]
impl From<DEBUG_MODE> for JsValue
[src]
fn from(obj: DEBUG_MODE) -> JsValue
[src]
impl From<DESCRIBE_DISPLAY> for JsValue
[src]
fn from(obj: DESCRIBE_DISPLAY) -> JsValue
[src]
impl From<DataView> for JsValue
[src]
impl From<Date> for JsValue
[src]
impl From<DateTimeFormat> for JsValue
[src]
fn from(obj: DateTimeFormat) -> JsValue
[src]
impl From<ELLIPSE_MODE> for JsValue
[src]
fn from(obj: ELLIPSE_MODE) -> JsValue
[src]
impl From<END_MODE> for JsValue
[src]
impl From<Element> for JsValue
[src]
impl From<Error> for JsValue
[src]
impl From<EvalError> for JsValue
[src]
impl From<FILTER_TYPE> for JsValue
[src]
fn from(obj: FILTER_TYPE) -> JsValue
[src]
impl From<Float32Array> for JsValue
[src]
fn from(obj: Float32Array) -> JsValue
[src]
impl From<Float64Array> for JsValue
[src]
fn from(obj: Float64Array) -> JsValue
[src]
impl From<Font> for JsValue
[src]
impl From<Function> for JsValue
[src]
impl From<GRAPHICS_RENDERER> for JsValue
[src]
fn from(obj: GRAPHICS_RENDERER) -> JsValue
[src]
impl From<Generator> for JsValue
[src]
impl From<Geometry> for JsValue
[src]
impl From<Global> for JsValue
[src]
impl From<Graphics> for JsValue
[src]
impl From<HORIZ_ALIGN> for JsValue
[src]
fn from(obj: HORIZ_ALIGN) -> JsValue
[src]
impl From<HTMLCanvasElement> for JsValue
[src]
fn from(obj: HTMLCanvasElement) -> JsValue
[src]
impl From<HTMLElement> for JsValue
[src]
fn from(obj: HTMLElement) -> JsValue
[src]
impl From<IMAGE_MODE> for JsValue
[src]
fn from(obj: IMAGE_MODE) -> JsValue
[src]
impl From<Image> for JsValue
[src]
impl From<Instance> for JsValue
[src]
impl From<Int16Array> for JsValue
[src]
fn from(obj: Int16Array) -> JsValue
[src]
impl From<Int32Array> for JsValue
[src]
fn from(obj: Int32Array) -> JsValue
[src]
impl From<Int8Array> for JsValue
[src]
impl From<Iterator> for JsValue
[src]
impl From<IteratorNext> for JsValue
[src]
fn from(obj: IteratorNext) -> JsValue
[src]
impl From<JsString> for JsValue
[src]
impl From<JsValue> for Font
[src]
impl From<JsValue> for Vector
[src]
impl From<JsValue> for Shader
[src]
impl From<JsValue> for Constant
[src]
impl From<JsValue> for Graphics
[src]
impl From<JsValue> for Table
[src]
impl From<JsValue> for StringDict
[src]
fn from(obj: JsValue) -> StringDict
[src]
impl From<JsValue> for Convolver
[src]
impl From<JsValue> for Renderer
[src]
impl From<JsValue> for NumberDict
[src]
fn from(obj: JsValue) -> NumberDict
[src]
impl From<JsValue> for PrintWriter
[src]
fn from(obj: JsValue) -> PrintWriter
[src]
impl From<JsValue> for HTMLCanvasElement
[src]
fn from(obj: JsValue) -> HTMLCanvasElement
[src]
impl From<JsValue> for Element
[src]
impl From<JsValue> for Color
[src]
impl From<JsValue> for Geometry
[src]
impl From<JsValue> for Camera
[src]
impl From<JsValue> for HTMLElement
[src]
fn from(obj: JsValue) -> HTMLElement
[src]
impl From<JsValue> for MediaElement
[src]
fn from(obj: JsValue) -> MediaElement
[src]
impl From<JsValue> for SoundFile
[src]
impl From<JsValue> for Image
[src]
impl From<LinkError> for JsValue
[src]
impl From<Map> for JsValue
[src]
impl From<MaybeIterator> for JsValue
[src]
impl From<MediaElement> for JsValue
[src]
fn from(obj: MediaElement) -> JsValue
[src]
impl From<Memory> for JsValue
[src]
impl From<Module> for JsValue
[src]
impl From<Number> for JsValue
[src]
impl From<NumberDict> for JsValue
[src]
fn from(obj: NumberDict) -> JsValue
[src]
impl From<NumberFormat> for JsValue
[src]
fn from(obj: NumberFormat) -> JsValue
[src]
impl From<Object> for JsValue
[src]
impl<T> From<Option<T>> for JsValue where
JsValue: From<T>,
[src]
JsValue: From<T>,
impl From<PluralRules> for JsValue
[src]
fn from(obj: PluralRules) -> JsValue
[src]
impl From<PrintWriter> for JsValue
[src]
fn from(obj: PrintWriter) -> JsValue
[src]
impl From<Promise> for JsValue
[src]
impl From<Proxy> for JsValue
[src]
impl From<RECT_MODE> for JsValue
[src]
impl From<RENDERER> for JsValue
[src]
impl From<RangeError> for JsValue
[src]
fn from(obj: RangeError) -> JsValue
[src]
impl From<ReferenceError> for JsValue
[src]
fn from(obj: ReferenceError) -> JsValue
[src]
impl From<RegExp> for JsValue
[src]
impl From<Renderer> for JsValue
[src]
impl From<RuntimeError> for JsValue
[src]
fn from(obj: RuntimeError) -> JsValue
[src]
impl From<SIZE_H> for JsValue
[src]
impl From<SIZE_W> for JsValue
[src]
impl From<STROKE_CAP> for JsValue
[src]
fn from(obj: STROKE_CAP) -> JsValue
[src]
impl From<STROKE_JOIN> for JsValue
[src]
fn from(obj: STROKE_JOIN) -> JsValue
[src]
impl From<Set> for JsValue
[src]
impl From<Shader> for JsValue
[src]
impl From<SharedArrayBuffer> for JsValue
[src]
fn from(obj: SharedArrayBuffer) -> JsValue
[src]
impl From<SoundFile> for JsValue
[src]
impl From<String> for JsValue
[src]
impl From<StringDict> for JsValue
[src]
fn from(obj: StringDict) -> JsValue
[src]
impl From<Symbol> for JsValue
[src]
impl From<SyntaxError> for JsValue
[src]
fn from(obj: SyntaxError) -> JsValue
[src]
impl From<TEXTURE_MODE> for JsValue
[src]
fn from(obj: TEXTURE_MODE) -> JsValue
[src]
impl From<THE_STYLE> for JsValue
[src]
impl From<TYPE> for JsValue
[src]
impl From<Table> for JsValue
[src]
impl From<Table> for JsValue
[src]
impl From<TypeError> for JsValue
[src]
impl From<Uint16Array> for JsValue
[src]
fn from(obj: Uint16Array) -> JsValue
[src]
impl From<Uint32Array> for JsValue
[src]
fn from(obj: Uint32Array) -> JsValue
[src]
impl From<Uint8Array> for JsValue
[src]
fn from(obj: Uint8Array) -> JsValue
[src]
impl From<Uint8ClampedArray> for JsValue
[src]
fn from(obj: Uint8ClampedArray) -> JsValue
[src]
impl From<UriError> for JsValue
[src]
impl From<VERT_ALIGN> for JsValue
[src]
fn from(obj: VERT_ALIGN) -> JsValue
[src]
impl From<Vector> for JsValue
[src]
impl From<WRAP_X> for JsValue
[src]
impl From<WRAP_Y> for JsValue
[src]
impl From<WeakMap> for JsValue
[src]
impl From<WeakSet> for JsValue
[src]
impl From<bool> for JsValue
[src]
impl From<f32> for JsValue
[src]
impl From<f64> for JsValue
[src]
impl From<i16> for JsValue
[src]
impl From<i32> for JsValue
[src]
impl From<i8> for JsValue
[src]
impl From<u16> for JsValue
[src]
impl From<u32> for JsValue
[src]
impl From<u8> for JsValue
[src]
impl FromWasmAbi for JsValue
[src]
type Abi = u32
The wasm ABI type that this converts from when coming back out from the ABI boundary. Read more
unsafe fn from_abi(js: u32) -> JsValue
[src]
impl<'a> IntoWasmAbi for &'a JsValue
[src]
type Abi = u32
The wasm ABI type that this converts into when crossing the ABI boundary. Read more
fn into_abi(self) -> u32
[src]
impl IntoWasmAbi for JsValue
[src]
type Abi = u32
The wasm ABI type that this converts into when crossing the ABI boundary. Read more
fn into_abi(self) -> u32
[src]
impl JsCast for JsValue
[src]
fn instanceof(_val: &JsValue) -> bool
[src]
fn unchecked_from_js(val: JsValue) -> JsValue
[src]
fn unchecked_from_js_ref(val: &JsValue) -> &JsValue
[src]
fn has_type<T>(&self) -> bool where
T: JsCast,
[src]
T: JsCast,
fn dyn_into<T>(self) -> Result<T, Self> where
T: JsCast,
[src]
T: JsCast,
fn dyn_ref<T>(&self) -> Option<&T> where
T: JsCast,
[src]
T: JsCast,
fn unchecked_into<T>(self) -> T where
T: JsCast,
[src]
T: JsCast,
fn unchecked_ref<T>(&self) -> &T where
T: JsCast,
[src]
T: JsCast,
fn is_instance_of<T>(&self) -> bool where
T: JsCast,
[src]
T: JsCast,
fn is_type_of(val: &JsValue) -> bool
[src]
impl<'a> PartialEq<&'a String> for JsValue
[src]
impl<'a> PartialEq<&'a str> for JsValue
[src]
impl PartialEq<JsValue> for JsValue
[src]
impl PartialEq<String> for JsValue
[src]
impl PartialEq<bool> for JsValue
[src]
impl PartialEq<f32> for JsValue
[src]
impl PartialEq<f64> for JsValue
[src]
impl PartialEq<i16> for JsValue
[src]
impl PartialEq<i32> for JsValue
[src]
impl PartialEq<i8> for JsValue
[src]
impl PartialEq<str> for JsValue
[src]
impl PartialEq<u16> for JsValue
[src]
impl PartialEq<u32> for JsValue
[src]
impl PartialEq<u8> for JsValue
[src]
impl RefFromWasmAbi for JsValue
[src]
type Abi = u32
The wasm ABI type references to Self
are recovered from.
type Anchor = ManuallyDrop<JsValue>
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: u32) -> <JsValue as RefFromWasmAbi>::Anchor
[src]
Auto Trait Implementations
impl RefUnwindSafe for JsValue
impl !Send for JsValue
impl !Sync for JsValue
impl Unpin for JsValue
impl UnwindSafe for JsValue
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> ReturnWasmAbi for T where
T: IntoWasmAbi,
[src]
T: IntoWasmAbi,
type Abi = <T as IntoWasmAbi>::Abi
Same as IntoWasmAbi::Abi
fn return_abi(self) -> <T as ReturnWasmAbi>::Abi
[src]
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
fn to_owned(&self) -> T
[src]
fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,