Struct rusty_v8::ArrayBuffer[][src]

#[repr(C)]pub struct ArrayBuffer(_);

An instance of the built-in ArrayBuffer constructor (ES6 draft 15.13.5).

Implementations

impl ArrayBuffer[src]

pub fn new<'s>(
    scope: &mut HandleScope<'s>,
    byte_length: usize
) -> Local<'s, ArrayBuffer>
[src]

Create a new ArrayBuffer. Allocate |byte_length| bytes. Allocated memory will be owned by a created ArrayBuffer and will be deallocated when it is garbage-collected, unless the object is externalized.

pub fn with_backing_store<'s>(
    scope: &mut HandleScope<'s>,
    backing_store: &SharedRef<BackingStore>
) -> Local<'s, ArrayBuffer>
[src]

pub fn byte_length(&self) -> usize[src]

Data length in bytes.

pub fn is_detachable(&self) -> bool[src]

Returns true if this ArrayBuffer may be detached.

pub fn detach(&self)[src]

Detaches this ArrayBuffer and all its views (typed arrays). Detaching sets the byte length of the buffer and all typed arrays to zero, preventing JavaScript from ever accessing underlying backing store. ArrayBuffer should have been externalized and must be detachable.

pub fn get_backing_store(&self) -> SharedRef<BackingStore>[src]

Get a shared pointer to the backing store of this array buffer. This pointer coordinates the lifetime management of the internal storage with any live ArrayBuffers on the heap, even across isolates. The embedder should not attempt to manage lifetime of the storage through other means.

pub fn new_backing_store(
    scope: &mut Isolate,
    byte_length: usize
) -> UniqueRef<BackingStore>
[src]

Returns a new standalone BackingStore that is allocated using the array buffer allocator of the isolate. The result can be later passed to ArrayBuffer::New.

If the allocator returns nullptr, then the function may cause GCs in the given isolate and re-try the allocation. If GCs do not help, then the function will crash with an out-of-memory error.

pub fn new_backing_store_from_boxed_slice(
    data: Box<[u8]>
) -> UniqueRef<BackingStore>
[src]

Returns a new standalone BackingStore that takes over the ownership of the given buffer.

The destructor of the BackingStore frees owned buffer memory.

The result can be later passed to ArrayBuffer::New. The raw pointer to the buffer must not be passed again to any V8 API function.

Methods from Deref<Target = Object>

pub fn set(
    &self,
    scope: &mut HandleScope<'_>,
    key: Local<'_, Value>,
    value: Local<'_, Value>
) -> Option<bool>
[src]

Set only return Just(true) or Empty(), so if it should never fail, use result.Check().

pub fn set_index(
    &self,
    scope: &mut HandleScope<'_>,
    index: u32,
    value: Local<'_, Value>
) -> Option<bool>
[src]

Set only return Just(true) or Empty(), so if it should never fail, use result.Check().

pub fn set_prototype(
    &self,
    scope: &mut HandleScope<'_>,
    prototype: Local<'_, Value>
) -> Option<bool>
[src]

Set the prototype object. This does not skip objects marked to be skipped by proto and it does not consult the security handler.

pub fn create_data_property(
    &self,
    scope: &mut HandleScope<'_>,
    key: Local<'_, Name>,
    value: Local<'_, Value>
) -> Option<bool>
[src]

Implements CreateDataProperty (ECMA-262, 7.3.4).

Defines a configurable, writable, enumerable property with the given value on the object unless the property already exists and is not configurable or the object is not extensible.

Returns true on success.

pub fn define_own_property(
    &self,
    scope: &mut HandleScope<'_>,
    key: Local<'_, Name>,
    value: Local<'_, Value>,
    attr: PropertyAttribute
) -> Option<bool>
[src]

Implements DefineOwnProperty.

In general, CreateDataProperty will be faster, however, does not allow for specifying attributes.

Returns true on success.

pub fn get<'s>(
    &self,
    scope: &mut HandleScope<'s>,
    key: Local<'_, Value>
) -> Option<Local<'s, Value>>
[src]

pub fn get_index<'s>(
    &self,
    scope: &mut HandleScope<'s>,
    index: u32
) -> Option<Local<'s, Value>>
[src]

pub fn get_prototype<'s>(
    &self,
    scope: &mut HandleScope<'s>
) -> Option<Local<'s, Value>>
[src]

Get the prototype object. This does not skip objects marked to be skipped by proto and it does not consult the security handler.

pub fn set_accessor(
    &self,
    scope: &mut HandleScope<'_>,
    name: Local<'_, Name>,
    getter: impl for<'s> MapFnTo<AccessorNameGetterCallback<'s>>
) -> Option<bool>
[src]

Note: SideEffectType affects the getter only, not the setter.

pub fn set_accessor_with_setter(
    &self,
    scope: &mut HandleScope<'_>,
    name: Local<'_, Name>,
    getter: impl for<'s> MapFnTo<AccessorNameGetterCallback<'s>>,
    setter: impl for<'s> MapFnTo<AccessorNameSetterCallback<'s>>
) -> Option<bool>
[src]

pub fn creation_context<'s>(
    &self,
    scope: &mut HandleScope<'s>
) -> Local<'s, Context>
[src]

Returns the context in which the object was created.

pub fn get_own_property_names<'s>(
    &self,
    scope: &mut HandleScope<'s>
) -> Option<Local<'s, Array>>
[src]

This function has the same functionality as GetPropertyNames but the returned array doesn’t contain the names of properties from prototype objects.

pub fn get_property_names<'s>(
    &self,
    scope: &mut HandleScope<'s>
) -> Option<Local<'s, Array>>
[src]

Returns an array containing the names of the filtered properties of this object, including properties from prototype objects. The array returned by this method contains the same values as would be enumerated by a for-in statement over this object.

pub fn has<'s>(
    &self,
    scope: &mut HandleScope<'s>,
    key: Local<'_, Value>
) -> Option<bool>
[src]

pub fn has_index<'s>(
    &self,
    scope: &mut HandleScope<'s>,
    index: u32
) -> Option<bool>
[src]

pub fn delete<'s>(
    &self,
    scope: &mut HandleScope<'s>,
    key: Local<'_, Value>
) -> Option<bool>
[src]

pub fn delete_index<'s>(
    &self,
    scope: &mut HandleScope<'s>,
    index: u32
) -> Option<bool>
[src]

pub fn internal_field_count(&self) -> usize[src]

Gets the number of internal fields for this Object.

pub fn get_internal_field<'s>(
    &self,
    scope: &mut HandleScope<'s>,
    index: usize
) -> Option<Local<'s, Value>>
[src]

Gets the value from an internal field.

pub fn set_internal_field(&self, index: usize, value: Local<'_, Value>) -> bool[src]

Sets the value in an internal field. Returns false when the index is out of bounds, true otherwise.

pub fn get_private<'s>(
    &self,
    scope: &mut HandleScope<'s>,
    key: Local<'_, Private>
) -> Option<Local<'s, Value>>
[src]

Functionality for private properties. This is an experimental feature, use at your own risk. Note: Private properties are not inherited. Do not rely on this, since it may change.

pub fn set_private<'s>(
    &self,
    scope: &mut HandleScope<'s>,
    key: Local<'_, Private>,
    value: Local<'_, Value>
) -> Option<bool>
[src]

Functionality for private properties. This is an experimental feature, use at your own risk. Note: Private properties are not inherited. Do not rely on this, since it may change.

pub fn delete_private<'s>(
    &self,
    scope: &mut HandleScope<'s>,
    key: Local<'_, Private>
) -> Option<bool>
[src]

Functionality for private properties. This is an experimental feature, use at your own risk. Note: Private properties are not inherited. Do not rely on this, since it may change.

pub fn has_private<'s>(
    &self,
    scope: &mut HandleScope<'s>,
    key: Local<'_, Private>
) -> Option<bool>
[src]

Functionality for private properties. This is an experimental feature, use at your own risk. Note: Private properties are not inherited. Do not rely on this, since it may change.

Methods from Deref<Target = Value>

pub fn is_undefined(&self) -> bool[src]

Returns true if this value is the undefined value. See ECMA-262 4.3.10.

pub fn is_null(&self) -> bool[src]

Returns true if this value is the null value. See ECMA-262 4.3.11.

pub fn is_null_or_undefined(&self) -> bool[src]

Returns true if this value is either the null or the undefined value. See ECMA-262 4.3.11. and 4.3.12

pub fn is_true(&self) -> bool[src]

Returns true if this value is true. This is not the same as BooleanValue(). The latter performs a conversion to boolean, i.e. the result of Boolean(value) in JS, whereas this checks value === true.

pub fn is_false(&self) -> bool[src]

Returns true if this value is false. This is not the same as !BooleanValue(). The latter performs a conversion to boolean, i.e. the result of !Boolean(value) in JS, whereas this checks value === false.

pub fn is_name(&self) -> bool[src]

Returns true if this value is a symbol or a string. This is equivalent to typeof value === 'string' || typeof value === 'symbol' in JS.

pub fn is_string(&self) -> bool[src]

Returns true if this value is an instance of the String type. See ECMA-262 8.4.

pub fn is_symbol(&self) -> bool[src]

Returns true if this value is a symbol. This is equivalent to typeof value === 'symbol' in JS.

pub fn is_function(&self) -> bool[src]

Returns true if this value is a function.

pub fn is_array(&self) -> bool[src]

Returns true if this value is an array. Note that it will return false for an Proxy for an array.

pub fn is_object(&self) -> bool[src]

Returns true if this value is an object.

pub fn is_big_int(&self) -> bool[src]

Returns true if this value is a bigint. This is equivalent to typeof value === 'bigint' in JS.

pub fn is_boolean(&self) -> bool[src]

Returns true if this value is boolean. This is equivalent to typeof value === 'boolean' in JS.

pub fn is_number(&self) -> bool[src]

Returns true if this value is a number.

pub fn is_external(&self) -> bool[src]

Returns true if this value is an External object.

pub fn is_int32(&self) -> bool[src]

Returns true if this value is a 32-bit signed integer.

pub fn is_uint32(&self) -> bool[src]

Returns true if this value is a 32-bit unsigned integer.

pub fn is_date(&self) -> bool[src]

Returns true if this value is a Date.

pub fn is_arguments_object(&self) -> bool[src]

Returns true if this value is an Arguments object.

pub fn is_big_int_object(&self) -> bool[src]

Returns true if this value is a BigInt object.

pub fn is_boolean_object(&self) -> bool[src]

Returns true if this value is a Boolean object.

pub fn is_number_object(&self) -> bool[src]

Returns true if this value is a Number object.

pub fn is_string_object(&self) -> bool[src]

Returns true if this value is a String object.

pub fn is_symbol_object(&self) -> bool[src]

Returns true if this value is a Symbol object.

pub fn is_native_error(&self) -> bool[src]

Returns true if this value is a NativeError.

pub fn is_reg_exp(&self) -> bool[src]

Returns true if this value is a RegExp.

pub fn is_async_function(&self) -> bool[src]

Returns true if this value is an async function.

pub fn is_generator_function(&self) -> bool[src]

Returns true if this value is a Generator function.

pub fn is_promise(&self) -> bool[src]

Returns true if this value is a Promise.

pub fn is_map(&self) -> bool[src]

Returns true if this value is a Map.

pub fn is_set(&self) -> bool[src]

Returns true if this value is a Set.

pub fn is_map_iterator(&self) -> bool[src]

Returns true if this value is a Map Iterator.

pub fn is_set_iterator(&self) -> bool[src]

Returns true if this value is a Set Iterator.

pub fn is_weak_map(&self) -> bool[src]

Returns true if this value is a WeakMap.

pub fn is_weak_set(&self) -> bool[src]

Returns true if this value is a WeakSet.

pub fn is_array_buffer(&self) -> bool[src]

Returns true if this value is an ArrayBuffer.

pub fn is_array_buffer_view(&self) -> bool[src]

Returns true if this value is an ArrayBufferView.

pub fn is_typed_array(&self) -> bool[src]

Returns true if this value is one of TypedArrays.

pub fn is_uint8_array(&self) -> bool[src]

Returns true if this value is an Uint8Array.

pub fn is_uint8_clamped_array(&self) -> bool[src]

Returns true if this value is an Uint8ClampedArray.

pub fn is_int8_array(&self) -> bool[src]

Returns true if this value is an Int8Array.

pub fn is_uint16_array(&self) -> bool[src]

Returns true if this value is an Uint16Array.

pub fn is_int16_array(&self) -> bool[src]

Returns true if this value is an Int16Array.

pub fn is_uint32_array(&self) -> bool[src]

Returns true if this value is an Uint32Array.

pub fn is_int32_array(&self) -> bool[src]

Returns true if this value is an Int32Array.

pub fn is_float32_array(&self) -> bool[src]

Returns true if this value is a Float32Array.

pub fn is_float64_array(&self) -> bool[src]

Returns true if this value is a Float64Array.

pub fn is_big_int64_array(&self) -> bool[src]

Returns true if this value is a BigInt64Array.

pub fn is_big_uint64_array(&self) -> bool[src]

Returns true if this value is a BigUint64Array.

pub fn is_data_view(&self) -> bool[src]

Returns true if this value is a DataView.

pub fn is_shared_array_buffer(&self) -> bool[src]

Returns true if this value is a SharedArrayBuffer. This is an experimental feature.

pub fn is_proxy(&self) -> bool[src]

Returns true if this value is a JavaScript Proxy.

pub fn is_wasm_module_object(&self) -> bool[src]

Returns true if this value is a WasmModuleObject.

pub fn is_module_namespace_object(&self) -> bool[src]

Returns true if the value is a Module Namespace Object.

pub fn strict_equals(&self, that: Local<'_, Value>) -> bool[src]

pub fn same_value(&self, that: Local<'_, Value>) -> bool[src]

pub fn same_value_zero(&self, that: Local<'_, Value>) -> bool[src]

Implements the the abstract operation SameValueZero, which is defined in ECMA-262 6th edition § 7.2.10 (http://ecma-international.org/ecma-262/6.0/#sec-samevaluezero).

This operation is used to compare values for the purpose of insertion into a Set, or determining whether Map keys are equivalent. Its semantics are almost the same as strict_equals() and same_value(), with the following important distinctions:

  • It considers NaN equal to NaN (unlike strict_equals()).
  • It considers -0 equal to 0 (unlike same_value()).

pub fn to_big_int<'s>(
    &self,
    scope: &mut HandleScope<'s>
) -> Option<Local<'s, BigInt>>
[src]

pub fn to_number<'s>(
    &self,
    scope: &mut HandleScope<'s>
) -> Option<Local<'s, Number>>
[src]

pub fn to_string<'s>(
    &self,
    scope: &mut HandleScope<'s>
) -> Option<Local<'s, String>>
[src]

pub fn to_rust_string_lossy<'s>(&self, scope: &mut HandleScope<'s>) -> String[src]

Convenience function not present in the original V8 API.

pub fn to_detail_string<'s>(
    &self,
    scope: &mut HandleScope<'s>
) -> Option<Local<'s, String>>
[src]

pub fn to_object<'s>(
    &self,
    scope: &mut HandleScope<'s>
) -> Option<Local<'s, Object>>
[src]

pub fn to_integer<'s>(
    &self,
    scope: &mut HandleScope<'s>
) -> Option<Local<'s, Integer>>
[src]

pub fn to_uint32<'s>(
    &self,
    scope: &mut HandleScope<'s>
) -> Option<Local<'s, Uint32>>
[src]

pub fn to_int32<'s>(
    &self,
    scope: &mut HandleScope<'s>
) -> Option<Local<'s, Int32>>
[src]

pub fn to_boolean<'s>(
    &self,
    scope: &mut HandleScope<'s, ()>
) -> Local<'s, Boolean>
[src]

Perform the equivalent of Boolean(value) in JS. This can never fail.

pub fn number_value<'s>(&self, scope: &mut HandleScope<'s>) -> Option<f64>[src]

pub fn integer_value<'s>(&self, scope: &mut HandleScope<'s>) -> Option<i64>[src]

pub fn uint32_value<'s>(&self, scope: &mut HandleScope<'s>) -> Option<u32>[src]

pub fn int32_value<'s>(&self, scope: &mut HandleScope<'s>) -> Option<i32>[src]

pub fn boolean_value<'s>(&self, scope: &mut HandleScope<'s, ()>) -> bool[src]

Methods from Deref<Target = Data>

pub fn get_hash(&self) -> int[src]

Returns the V8 hash value for this value. The current implementation uses a hidden property to store the identity hash on some object types.

The return value will never be 0. Also, it is not guaranteed to be unique.

pub fn is_value(&self) -> bool[src]

Returns true if this data is a Value.

pub fn is_module(&self) -> bool[src]

Returns true if this data is a Module.

pub fn is_private(&self) -> bool[src]

Returns true if this data is a Private.

pub fn is_object_template(&self) -> bool[src]

Returns true if this data is an ObjectTemplate

pub fn is_function_template(&self) -> bool[src]

Returns true if this data is a FunctionTemplate.

Trait Implementations

impl Debug for ArrayBuffer[src]

impl Deref for ArrayBuffer[src]

type Target = Object

The resulting type after dereferencing.

impl Eq for ArrayBuffer[src]

impl Hash for ArrayBuffer[src]

impl<'s> PartialEq<ArrayBuffer> for Data[src]

impl<'s> PartialEq<ArrayBuffer> for Value[src]

impl<'s> PartialEq<ArrayBuffer> for Object[src]

impl<'s> PartialEq<ArrayBuffer> for ArrayBuffer[src]

impl<'s> PartialEq<Data> for ArrayBuffer[src]

impl<'s> PartialEq<Object> for ArrayBuffer[src]

impl<'s> PartialEq<Value> for ArrayBuffer[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.