Struct rquickjs::TypedArray
source · pub struct TypedArray<'js, T>(/* private fields */);
array-buffer
only.Expand description
Rust representation of a JavaScript objects of TypedArray classes.
ES Type | Rust Type |
---|---|
Int8Array | TypedArray<i8> |
Uint8Array | TypedArray<u8> |
Int16Array | TypedArray<i16> |
Uint16Array | TypedArray<u16> |
Int32Array | TypedArray<i32> |
Uint32Array | TypedArray<u32> |
Float32Array | TypedArray<f32> |
Float64Array | TypedArray<f64> |
BigInt64Array | TypedArray<i64> |
BigUint64Array | TypedArray<u64> |
Implementations§
source§impl<'js, T> TypedArray<'js, T>
impl<'js, T> TypedArray<'js, T>
sourcepub fn new(
ctx: Ctx<'js>,
src: impl Into<Vec<T>>
) -> Result<TypedArray<'js, T>, Error>where
T: Copy + TypedArrayItem,
pub fn new(
ctx: Ctx<'js>,
src: impl Into<Vec<T>>
) -> Result<TypedArray<'js, T>, Error>where
T: Copy + TypedArrayItem,
Create typed array from vector data
sourcepub fn new_copy(
ctx: Ctx<'js>,
src: impl AsRef<[T]>
) -> Result<TypedArray<'js, T>, Error>where
T: Copy + TypedArrayItem,
pub fn new_copy(
ctx: Ctx<'js>,
src: impl AsRef<[T]>
) -> Result<TypedArray<'js, T>, Error>where
T: Copy + TypedArrayItem,
Create typed array from slice
sourcepub fn into_value(self) -> Value<'js>
pub fn into_value(self) -> Value<'js>
Convert into value
sourcepub fn from_value(value: Value<'js>) -> Result<TypedArray<'js, T>, Error>where
T: TypedArrayItem,
pub fn from_value(value: Value<'js>) -> Result<TypedArray<'js, T>, Error>where
T: TypedArrayItem,
Convert from value
sourcepub fn into_object(self) -> Object<'js>
pub fn into_object(self) -> Object<'js>
Convert into an object
sourcepub fn from_object(object: Object<'js>) -> Result<TypedArray<'js, T>, Error>where
T: TypedArrayItem,
pub fn from_object(object: Object<'js>) -> Result<TypedArray<'js, T>, Error>where
T: TypedArrayItem,
Convert from an object
sourcepub fn as_bytes(&self) -> Option<&[u8]>
pub fn as_bytes(&self) -> Option<&[u8]>
Returns the underlying bytes of the buffer,
Returns None
if the array is detached.
pub fn as_raw(&self) -> Option<RawArrayBuffer>
sourcepub fn arraybuffer(&self) -> Result<ArrayBuffer<'js>, Error>
pub fn arraybuffer(&self) -> Result<ArrayBuffer<'js>, Error>
Get underlying ArrayBuffer
sourcepub fn from_arraybuffer(
arraybuffer: ArrayBuffer<'js>
) -> Result<TypedArray<'js, T>, Error>where
T: TypedArrayItem,
pub fn from_arraybuffer(
arraybuffer: ArrayBuffer<'js>
) -> Result<TypedArray<'js, T>, Error>where
T: TypedArrayItem,
Convert from an ArrayBuffer
Methods from Deref<Target = Object<'js>>§
sourcepub fn prop<K, V, P>(&self, key: K, prop: V) -> Result<(), Error>where
K: IntoAtom<'js>,
V: AsProperty<'js, P>,
Available on crate feature properties
only.
pub fn prop<K, V, P>(&self, key: K, prop: V) -> Result<(), Error>where
K: IntoAtom<'js>,
V: AsProperty<'js, P>,
properties
only.Define a property of an object
// Define readonly property without value
obj.prop("no_val", ()).unwrap();
// Define readonly property with value
obj.prop("ro_str", "Some const text").unwrap();
// Define readonly property with value and make it to be writable
obj.prop("ro_str2", Property::from("Some const text").writable()).unwrap();
// Define readonly property using getter and make it to be enumerable
obj.prop("ro_str_get", Accessor::from(|| "Some readable text").enumerable()).unwrap();
// Define readonly property using getter and setter
obj.prop("ro_str_get_set",
Accessor::from(|| "Some text")
.set(|new_val: String| { /* do something */ })
).unwrap();
sourcepub fn contains_key<K>(&self, k: K) -> Result<bool, Error>where
K: IntoAtom<'js>,
pub fn contains_key<K>(&self, k: K) -> Result<bool, Error>where
K: IntoAtom<'js>,
check whether the object contains a certain key.
sourcepub fn set<K, V>(&self, key: K, value: V) -> Result<(), Error>
pub fn set<K, V>(&self, key: K, value: V) -> Result<(), Error>
Set a member of an object to a certain value
sourcepub fn remove<K>(&self, key: K) -> Result<(), Error>where
K: IntoAtom<'js>,
pub fn remove<K>(&self, key: K) -> Result<(), Error>where
K: IntoAtom<'js>,
Remove a member of an object
sourcepub fn keys<K>(&self) -> ObjectKeysIter<'js, K> ⓘwhere
K: FromAtom<'js>,
pub fn keys<K>(&self) -> ObjectKeysIter<'js, K> ⓘwhere
K: FromAtom<'js>,
Get own string enumerable property names of an object
sourcepub fn own_keys<K>(&self, filter: Filter) -> ObjectKeysIter<'js, K> ⓘwhere
K: FromAtom<'js>,
pub fn own_keys<K>(&self, filter: Filter) -> ObjectKeysIter<'js, K> ⓘwhere
K: FromAtom<'js>,
Get own property names of an object
sourcepub fn props<K, V>(&self) -> ObjectIter<'js, K, V> ⓘ
pub fn props<K, V>(&self) -> ObjectIter<'js, K, V> ⓘ
Get own string enumerable properties of an object
sourcepub fn own_props<K, V>(&self, filter: Filter) -> ObjectIter<'js, K, V> ⓘ
pub fn own_props<K, V>(&self, filter: Filter) -> ObjectIter<'js, K, V> ⓘ
Get own properties of an object
sourcepub fn values<K>(&self) -> ObjectValuesIter<'js, K> ⓘwhere
K: FromAtom<'js>,
pub fn values<K>(&self) -> ObjectValuesIter<'js, K> ⓘwhere
K: FromAtom<'js>,
Get own string enumerable property values of an object
sourcepub fn own_values<K>(&self, filter: Filter) -> ObjectValuesIter<'js, K> ⓘwhere
K: FromAtom<'js>,
pub fn own_values<K>(&self, filter: Filter) -> ObjectValuesIter<'js, K> ⓘwhere
K: FromAtom<'js>,
Get own property values of an object
sourcepub fn get_prototype(&self) -> Option<Object<'js>>
pub fn get_prototype(&self) -> Option<Object<'js>>
Get an object prototype
Objects can have no prototype, in this case this function will return null.
sourcepub fn set_prototype(&self, proto: Option<&Object<'js>>) -> Result<(), Error>
pub fn set_prototype(&self, proto: Option<&Object<'js>>) -> Result<(), Error>
Set an object prototype
If called with None the function will set the prototype of the object to null.
This function will error if setting the prototype causes a cycle in the prototype chain.
sourcepub fn is_instance_of(&self, class: impl AsRef<Value<'js>>) -> bool
pub fn is_instance_of(&self, class: impl AsRef<Value<'js>>) -> bool
Check instance of object
sourcepub fn is_array_buffer(&self) -> bool
pub fn is_array_buffer(&self) -> bool
Returns whether the object is an instance of ArrayBuffer
.
sourcepub unsafe fn ref_array_buffer(&self) -> &ArrayBuffer<'_>
pub unsafe fn ref_array_buffer(&self) -> &ArrayBuffer<'_>
sourcepub fn as_array_buffer(&self) -> Option<&ArrayBuffer<'_>>
pub fn as_array_buffer(&self) -> Option<&ArrayBuffer<'_>>
Turn the object into an array buffer if the object is an instance of ArrayBuffer
.
pub fn is_typed_array<T>(&self) -> boolwhere
T: TypedArrayItem,
sourcepub unsafe fn ref_typed_array<T, 'a>(&'a self) -> &'a TypedArray<'a, T>where
T: TypedArrayItem,
pub unsafe fn ref_typed_array<T, 'a>(&'a self) -> &'a TypedArray<'a, T>where
T: TypedArrayItem,
pub fn as_typed_array<T>(&self) -> Option<&TypedArray<'_, T>>where
T: TypedArrayItem,
sourcepub fn instance_of<C>(&self) -> boolwhere
C: JsClass<'js>,
pub fn instance_of<C>(&self) -> boolwhere
C: JsClass<'js>,
Returns if the object is of a certain Rust class.
Methods from Deref<Target = Value<'js>>§
sourcepub fn is_undefined(&self) -> bool
pub fn is_undefined(&self) -> bool
Returns if the value is the JavaScript undefined value.
sourcepub fn is_function(&self) -> bool
pub fn is_function(&self) -> bool
Check if the value is a function
sourcepub fn is_constructor(&self) -> bool
pub fn is_constructor(&self) -> bool
Check if the value is a constructor function
sourcepub fn is_exception(&self) -> bool
pub fn is_exception(&self) -> bool
Check if the value is an exception
sourcepub fn get<T>(&self) -> Result<T, Error>where
T: FromJs<'js>,
pub fn get<T>(&self) -> Result<T, Error>where
T: FromJs<'js>,
Convert from value to specified type
sourcepub unsafe fn ref_string(&self) -> &String<'js>
pub unsafe fn ref_string(&self) -> &String<'js>
sourcepub unsafe fn ref_symbol(&self) -> &Symbol<'js>
pub unsafe fn ref_symbol(&self) -> &Symbol<'js>
sourcepub unsafe fn ref_object(&self) -> &Object<'js>
pub unsafe fn ref_object(&self) -> &Object<'js>
sourcepub unsafe fn ref_function(&self) -> &Function<'js>
pub unsafe fn ref_function(&self) -> &Function<'js>
sourcepub fn as_function(&self) -> Option<&Function<'js>>
pub fn as_function(&self) -> Option<&Function<'js>>
Try reinterpret as Function
sourcepub unsafe fn ref_constructor(&self) -> &Constructor<'js>
pub unsafe fn ref_constructor(&self) -> &Constructor<'js>
Interpret as Constructor
§Safety
You should be sure that the value already is of required type before to do it.
sourcepub fn as_constructor(&self) -> Option<&Constructor<'js>>
pub fn as_constructor(&self) -> Option<&Constructor<'js>>
Try reinterpret as Constructor
sourcepub unsafe fn ref_exception(&self) -> &Exception<'js>
pub unsafe fn ref_exception(&self) -> &Exception<'js>
sourcepub fn as_exception(&self) -> Option<&Exception<'js>>
pub fn as_exception(&self) -> Option<&Exception<'js>>
Try reinterpret as Exception
sourcepub unsafe fn ref_big_int(&self) -> &BigInt<'js>
pub unsafe fn ref_big_int(&self) -> &BigInt<'js>
sourcepub fn as_big_int(&self) -> Option<&BigInt<'js>>
pub fn as_big_int(&self) -> Option<&BigInt<'js>>
Try reinterpret as BigInt
Trait Implementations§
source§impl<'js, T> AsRef<[T]> for TypedArray<'js, T>where
T: TypedArrayItem,
impl<'js, T> AsRef<[T]> for TypedArray<'js, T>where
T: TypedArrayItem,
source§impl<'js, T> AsRef<Object<'js>> for TypedArray<'js, T>
impl<'js, T> AsRef<Object<'js>> for TypedArray<'js, T>
source§impl<'js, T> AsRef<Value<'js>> for TypedArray<'js, T>
impl<'js, T> AsRef<Value<'js>> for TypedArray<'js, T>
source§impl<'js, T> Clone for TypedArray<'js, T>
impl<'js, T> Clone for TypedArray<'js, T>
source§fn clone(&self) -> TypedArray<'js, T>
fn clone(&self) -> TypedArray<'js, T>
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl<'js, T> Debug for TypedArray<'js, T>
impl<'js, T> Debug for TypedArray<'js, T>
source§impl<'js, T> Deref for TypedArray<'js, T>
impl<'js, T> Deref for TypedArray<'js, T>
source§impl<'js, T> FromJs<'js> for TypedArray<'js, T>where
T: TypedArrayItem,
impl<'js, T> FromJs<'js> for TypedArray<'js, T>where
T: TypedArrayItem,
source§impl<'js, T> IntoJs<'js> for TypedArray<'js, T>
impl<'js, T> IntoJs<'js> for TypedArray<'js, T>
source§impl<'js, T> Outlive<'js> for TypedArray<'js, T>
impl<'js, T> Outlive<'js> for TypedArray<'js, T>
§type Target<'to> = TypedArray<'to, T>
type Target<'to> = TypedArray<'to, T>
Self
but with another lifetime 't
source§impl<'js, T> PartialEq for TypedArray<'js, T>
impl<'js, T> PartialEq for TypedArray<'js, T>
source§fn eq(&self, other: &TypedArray<'js, T>) -> bool
fn eq(&self, other: &TypedArray<'js, T>) -> bool
self
and other
values to be equal, and is used
by ==
.