v8
V8 is Google’s open source high-performance JavaScript and WebAssembly engine, written in C++.
Loading...
Searching...
No Matches
v8::internal::JSArrayBuffer Class Reference

#include <js-array-buffer.h>

Inheritance diagram for v8::internal::JSArrayBuffer:
Collaboration diagram for v8::internal::JSArrayBuffer:

Classes

class  BodyDescriptor
 

Public Member Functions

size_t byte_length_unchecked () const
 
void set_backing_store (Isolate *isolate, void *value)
 
void init_extension ()
 
V8_INLINE void clear_padding ()
 
V8_EXPORT_PRIVATE void Setup (SharedFlag shared, ResizableFlag resizable, std::shared_ptr< BackingStore > backing_store, Isolate *isolate)
 
std::shared_ptr< BackingStoreGetBackingStore () const
 
size_t GetByteLength () const
 
V8_EXPORT_PRIVATE ArrayBufferExtensionCreateExtension (Isolate *isolate, std::shared_ptr< BackingStore > backing_store)
 
std::shared_ptr< BackingStoreRemoveExtension ()
 
void MarkExtension ()
 
void YoungMarkExtension ()
 
void YoungMarkExtensionPromoted ()
 
uint32_t GetBackingStoreRefForDeserialization () const
 
void SetBackingStoreRefForSerialization (uint32_t ref)
 

Static Public Member Functions

V8_EXPORT_PRIVATE static V8_WARN_UNUSED_RESULT Maybe< boolDetach (DirectHandle< JSArrayBuffer > buffer, bool force_for_wasm_memory=false, DirectHandle< Object > key={})
 
static size_t GsabByteLength (Isolate *isolate, Address raw_array_buffer)
 
static Maybe< boolGetResizableBackingStorePageConfiguration (Isolate *isolate, size_t byte_length, size_t max_byte_length, ShouldThrow should_throw, size_t *page_size, size_t *initial_pages, size_t *max_pages)
 
static std::optional< MessageTemplateGetResizableBackingStorePageConfigurationImpl (Isolate *isolate, size_t byte_length, size_t max_byte_length, size_t *page_size, size_t *initial_pages, size_t *max_pages)
 

Static Public Attributes

static constexpr size_t kMaxByteLength = kMaxSafeInteger
 
static constexpr int kSizeWithEmbedderFields
 
static constexpr bool kContainsEmbedderFields
 

Private Member Functions

void DetachInternal (bool force_for_wasm_memory, Isolate *isolate)
 
ArrayBufferExtension ** extension_location () const
 

Detailed Description

Definition at line 25 of file js-array-buffer.h.

Member Function Documentation

◆ byte_length_unchecked()

size_t v8::internal::JSArrayBuffer::byte_length_unchecked ( ) const
inline
Here is the caller graph for this function:

◆ clear_padding()

void v8::internal::JSArrayBuffer::clear_padding ( )

Definition at line 164 of file js-array-buffer-inl.h.

Here is the caller graph for this function:

◆ CreateExtension()

ArrayBufferExtension * v8::internal::JSArrayBuffer::CreateExtension ( Isolate * isolate,
std::shared_ptr< BackingStore > backing_store )

Definition at line 248 of file js-array-buffer.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ Detach()

Maybe< bool > v8::internal::JSArrayBuffer::Detach ( DirectHandle< JSArrayBuffer > buffer,
bool force_for_wasm_memory = false,
DirectHandle< Object > key = {} )
static

Definition at line 123 of file js-array-buffer.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ DetachInternal()

void v8::internal::JSArrayBuffer::DetachInternal ( bool force_for_wasm_memory,
Isolate * isolate )
private

Definition at line 161 of file js-array-buffer.cc.

Here is the call graph for this function:

◆ extension_location()

ArrayBufferExtension ** v8::internal::JSArrayBuffer::extension_location ( ) const
inlineprivate

Definition at line 158 of file js-array-buffer-inl.h.

Here is the caller graph for this function:

◆ GetBackingStore()

std::shared_ptr< BackingStore > v8::internal::JSArrayBuffer::GetBackingStore ( ) const
inline

Definition at line 66 of file js-array-buffer-inl.h.

Here is the caller graph for this function:

◆ GetBackingStoreRefForDeserialization()

uint32_t v8::internal::JSArrayBuffer::GetBackingStoreRefForDeserialization ( ) const
inline

Definition at line 92 of file js-array-buffer-inl.h.

◆ GetByteLength()

size_t v8::internal::JSArrayBuffer::GetByteLength ( ) const
inline

Definition at line 71 of file js-array-buffer-inl.h.

Here is the call graph for this function:

◆ GetResizableBackingStorePageConfiguration()

Maybe< bool > v8::internal::JSArrayBuffer::GetResizableBackingStorePageConfiguration ( Isolate * isolate,
size_t byte_length,
size_t max_byte_length,
ShouldThrow should_throw,
size_t * page_size,
size_t * initial_pages,
size_t * max_pages )
static

Definition at line 196 of file js-array-buffer.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetResizableBackingStorePageConfigurationImpl()

std::optional< MessageTemplate > v8::internal::JSArrayBuffer::GetResizableBackingStorePageConfigurationImpl ( Isolate * isolate,
size_t byte_length,
size_t max_byte_length,
size_t * page_size,
size_t * initial_pages,
size_t * max_pages )
static

Definition at line 227 of file js-array-buffer.cc.

Here is the call graph for this function:

◆ GsabByteLength()

size_t v8::internal::JSArrayBuffer::GsabByteLength ( Isolate * isolate,
Address raw_array_buffer )
static

Definition at line 182 of file js-array-buffer.cc.

Here is the call graph for this function:

◆ init_extension()

void v8::internal::JSArrayBuffer::init_extension ( )
inline

Definition at line 100 of file js-array-buffer-inl.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ MarkExtension()

void v8::internal::JSArrayBuffer::MarkExtension ( )

Definition at line 275 of file js-array-buffer.cc.

◆ RemoveExtension()

std::shared_ptr< BackingStore > v8::internal::JSArrayBuffer::RemoveExtension ( )

Definition at line 265 of file js-array-buffer.cc.

Here is the caller graph for this function:

◆ set_backing_store()

void v8::internal::JSArrayBuffer::set_backing_store ( Isolate * isolate,
void * value )
inline

Definition at line 61 of file js-array-buffer-inl.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ SetBackingStoreRefForSerialization()

void v8::internal::JSArrayBuffer::SetBackingStoreRefForSerialization ( uint32_t ref)
inline

Definition at line 96 of file js-array-buffer-inl.h.

◆ Setup()

void v8::internal::JSArrayBuffer::Setup ( SharedFlag shared,
ResizableFlag resizable,
std::shared_ptr< BackingStore > backing_store,
Isolate * isolate )

Definition at line 47 of file js-array-buffer.cc.

Here is the call graph for this function:

◆ YoungMarkExtension()

void v8::internal::JSArrayBuffer::YoungMarkExtension ( )

Definition at line 282 of file js-array-buffer.cc.

◆ YoungMarkExtensionPromoted()

void v8::internal::JSArrayBuffer::YoungMarkExtensionPromoted ( )

Definition at line 290 of file js-array-buffer.cc.

Member Data Documentation

◆ kContainsEmbedderFields

bool v8::internal::JSArrayBuffer::kContainsEmbedderFields
staticconstexpr
Initial value:

Definition at line 166 of file js-array-buffer.h.

◆ kMaxByteLength

size_t v8::internal::JSArrayBuffer::kMaxByteLength = kMaxSafeInteger
staticconstexpr

Definition at line 38 of file js-array-buffer.h.

◆ kSizeWithEmbedderFields

int v8::internal::JSArrayBuffer::kSizeWithEmbedderFields
staticconstexpr
Initial value:

Definition at line 163 of file js-array-buffer.h.


The documentation for this class was generated from the following files: