pub struct Buffer { /* private fields */ }
Implementations§
Source§impl Buffer
impl Buffer
pub fn from_uint8_array(array: &Uint8Array) -> Buffer
Methods from Deref<Target = Uint8Array>§
Sourcepub fn fill(&self, value: u8, start: u32, end: u32) -> Uint8Array
pub fn fill(&self, value: u8, start: u32, end: u32) -> Uint8Array
The fill()
method fills all the elements of an array from a start index
to an end index with a static value. The end index is not included.
Sourcepub fn buffer(&self) -> ArrayBuffer
pub fn buffer(&self) -> ArrayBuffer
The buffer accessor property represents the ArrayBuffer
referenced
by a TypedArray
at construction time.
Sourcepub fn subarray(&self, begin: u32, end: u32) -> Uint8Array
pub fn subarray(&self, begin: u32, end: u32) -> Uint8Array
The subarray()
method returns a new TypedArray
on the same
ArrayBuffer
store and with the same element types as for this
TypedArray
object.
Sourcepub fn slice(&self, begin: u32, end: u32) -> Uint8Array
pub fn slice(&self, begin: u32, end: u32) -> Uint8Array
The slice()
method returns a shallow copy of a portion of a typed
array into a new typed array object. This method has the same algorithm
as Array.prototype.slice()
.
Sourcepub fn for_each(&self, callback: &mut dyn FnMut(u8, u32, Uint8Array))
pub fn for_each(&self, callback: &mut dyn FnMut(u8, u32, Uint8Array))
The forEach()
method executes a provided function once per array
element. This method has the same algorithm as
Array.prototype.forEach()
. TypedArray
is one of the typed array
types here.
Sourcepub fn length(&self) -> u32
pub fn length(&self) -> u32
The length accessor property represents the length (in elements) of a typed array.
Sourcepub fn byte_length(&self) -> u32
pub fn byte_length(&self) -> u32
The byteLength accessor property represents the length (in bytes) of a typed array.
Sourcepub fn byte_offset(&self) -> u32
pub fn byte_offset(&self) -> u32
The byteOffset accessor property represents the offset (in bytes) of a
typed array from the start of its ArrayBuffer
.
Sourcepub fn set(&self, src: &JsValue, offset: u32)
pub fn set(&self, src: &JsValue, offset: u32)
The set()
method stores multiple values in the typed array, reading
input values from a specified array.
Sourcepub fn at(&self, idx: i32) -> Option<u8>
pub fn at(&self, idx: i32) -> Option<u8>
Gets the value at idx
, counting from the end if negative.
Sourcepub fn copy_within(&self, target: i32, start: i32, end: i32) -> Uint8Array
pub fn copy_within(&self, target: i32, start: i32, end: i32) -> Uint8Array
The copyWithin()
method shallow copies part of a typed array to another
location in the same typed array and returns it, without modifying its size.
Sourcepub fn get_index(&self, idx: u32) -> u8
pub fn get_index(&self, idx: u32) -> u8
Gets the value at idx
, equivalent to the javascript my_var = arr[idx]
.
Sourcepub fn set_index(&self, idx: u32, value: u8)
pub fn set_index(&self, idx: u32, value: u8)
Sets the value at idx
, equivalent to the javascript arr[idx] = value
.
Sourcepub unsafe fn raw_copy_to_ptr(&self, dst: *mut u8)
pub unsafe fn raw_copy_to_ptr(&self, dst: *mut u8)
Copy the contents of this JS typed array into the destination Rust pointer.
This function will efficiently copy the memory from a typed array into this Wasm module’s own linear memory, initializing the memory destination provided.
§Safety
This function requires dst
to point to a buffer
large enough to fit this array’s contents.
Sourcepub fn copy_to(&self, dst: &mut [u8])
pub fn copy_to(&self, dst: &mut [u8])
Copy the contents of this JS typed array into the destination Rust slice.
This function will efficiently copy the memory from a typed array into this Wasm module’s own linear memory, initializing the memory destination provided.
§Panics
This function will panic if this typed array’s length is
different than the length of the provided dst
array.
Sourcepub fn copy_to_uninit<'dst>(
&self,
dst: &'dst mut [MaybeUninit<u8>],
) -> &'dst mut [u8] ⓘ
pub fn copy_to_uninit<'dst>( &self, dst: &'dst mut [MaybeUninit<u8>], ) -> &'dst mut [u8] ⓘ
Copy the contents of this JS typed array into the destination Rust slice.
This function will efficiently copy the memory from a typed array into this Wasm module’s own linear memory, initializing the memory destination provided.
§Panics
This function will panic if this typed array’s length is
different than the length of the provided dst
array.
Sourcepub fn copy_from(&self, src: &[u8])
pub fn copy_from(&self, src: &[u8])
Copy the contents of the source Rust slice into this JS typed array.
This function will efficiently copy the memory from within the Wasm module’s own linear memory to this typed array.
§Panics
This function will panic if this typed array’s length is
different than the length of the provided src
array.
Methods from Deref<Target = Object>§
Sourcepub fn constructor(&self) -> Function
pub fn constructor(&self) -> Function
The constructor property returns a reference to the Object
constructor
function that created the instance object.
Sourcepub fn has_own_property(&self, property: &JsValue) -> bool
pub fn has_own_property(&self, property: &JsValue) -> bool
The hasOwnProperty()
method returns a boolean indicating whether the
object has the specified property as its own property (as opposed to
inheriting it).
Sourcepub fn is_prototype_of(&self, value: &JsValue) -> bool
pub fn is_prototype_of(&self, value: &JsValue) -> bool
The isPrototypeOf()
method checks if an object exists in another
object’s prototype chain.
Sourcepub fn property_is_enumerable(&self, property: &JsValue) -> bool
pub fn property_is_enumerable(&self, property: &JsValue) -> bool
The propertyIsEnumerable()
method returns a Boolean indicating
whether the specified property is enumerable.
Sourcepub fn to_locale_string(&self) -> JsString
pub fn to_locale_string(&self) -> JsString
The toLocaleString()
method returns a string representing the object.
This method is meant to be overridden by derived objects for
locale-specific purposes.
Sourcepub fn to_string(&self) -> JsString
pub fn to_string(&self) -> JsString
The toString()
method returns a string representing the object.
Methods from Deref<Target = JsValue>§
pub const NULL: JsValue
pub const UNDEFINED: JsValue
pub const TRUE: JsValue
pub const FALSE: JsValue
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§
Source§impl AsRef<Uint8Array> for Buffer
impl AsRef<Uint8Array> for Buffer
Source§fn as_ref(&self) -> &Uint8Array
fn as_ref(&self) -> &Uint8Array
Source§impl Deref for Buffer
impl Deref for Buffer
Source§type Target = Uint8Array
type Target = Uint8Array
Source§fn deref(&self) -> &Uint8Array
fn deref(&self) -> &Uint8Array
Source§impl From<Buffer> for Uint8Array
impl From<Buffer> for Uint8Array
Source§fn from(obj: Buffer) -> Uint8Array
fn from(obj: Buffer) -> Uint8Array
Source§impl FromWasmAbi for Buffer
impl FromWasmAbi for Buffer
Source§impl<'a> IntoWasmAbi for &'a Buffer
impl<'a> IntoWasmAbi for &'a Buffer
Source§impl IntoWasmAbi for Buffer
impl IntoWasmAbi for Buffer
Source§impl JsCast for Buffer
impl JsCast for Buffer
Source§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 moreSource§fn unchecked_from_js(val: JsValue) -> Self
fn unchecked_from_js(val: JsValue) -> Self
Source§fn unchecked_from_js_ref(val: &JsValue) -> &Self
fn unchecked_from_js_ref(val: &JsValue) -> &Self
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,
Source§impl LongRefFromWasmAbi for Buffer
impl LongRefFromWasmAbi for Buffer
Source§impl OptionFromWasmAbi for Buffer
impl OptionFromWasmAbi for Buffer
Source§impl<'a> OptionIntoWasmAbi for &'a Buffer
impl<'a> OptionIntoWasmAbi for &'a Buffer
Source§impl OptionIntoWasmAbi for Buffer
impl OptionIntoWasmAbi for Buffer
Source§impl RefFromWasmAbi for Buffer
impl RefFromWasmAbi for Buffer
Source§type Abi = <JsValue as RefFromWasmAbi>::Abi
type Abi = <JsValue as RefFromWasmAbi>::Abi
Self
are recovered from.Source§type Anchor = ManuallyDrop<Buffer>
type Anchor = ManuallyDrop<Buffer>
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.Auto Trait Implementations§
impl Freeze for Buffer
impl RefUnwindSafe for Buffer
impl !Send for Buffer
impl !Sync for Buffer
impl Unpin for Buffer
impl UnwindSafe for Buffer
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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
.