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

#include <global-handles.h>

Collaboration diagram for v8::internal::EternalHandles:

Public Member Functions

 EternalHandles ()=default
 
 ~EternalHandles ()
 
 EternalHandles (const EternalHandles &)=delete
 
EternalHandlesoperator= (const EternalHandles &)=delete
 
V8_EXPORT_PRIVATE void Create (Isolate *isolate, Tagged< Object > object, int *index)
 
IndirectHandle< ObjectGet (int index)
 
void IterateAllRoots (RootVisitor *visitor)
 
void IterateYoungRoots (RootVisitor *visitor)
 
void PostGarbageCollectionProcessing ()
 
size_t handles_count () const
 

Private Member Functions

AddressGetLocation (int index)
 

Private Attributes

int size_ = 0
 
std::vector< Address * > blocks_
 
std::vector< int > young_node_indices_
 

Static Private Attributes

static const int kInvalidIndex = -1
 
static const int kShift = 8
 
static const int kSize = 1 << kShift
 
static const int kMask = 0xff
 

Detailed Description

Definition at line 192 of file global-handles.h.

Constructor & Destructor Documentation

◆ EternalHandles() [1/2]

v8::internal::EternalHandles::EternalHandles ( )
default

◆ ~EternalHandles()

v8::internal::EternalHandles::~EternalHandles ( )

Definition at line 1010 of file global-handles.cc.

◆ EternalHandles() [2/2]

v8::internal::EternalHandles::EternalHandles ( const EternalHandles & )
delete

Member Function Documentation

◆ Create()

void v8::internal::EternalHandles::Create ( Isolate * isolate,
Tagged< Object > object,
int * index )

Definition at line 1043 of file global-handles.cc.

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

◆ Get()

IndirectHandle< Object > v8::internal::EternalHandles::Get ( int index)
inline

Definition at line 204 of file global-handles.h.

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

◆ GetLocation()

Address * v8::internal::EternalHandles::GetLocation ( int index)
inlineprivate

Definition at line 225 of file global-handles.h.

Here is the caller graph for this function:

◆ handles_count()

size_t v8::internal::EternalHandles::handles_count ( ) const
inline

Definition at line 215 of file global-handles.h.

◆ IterateAllRoots()

void v8::internal::EternalHandles::IterateAllRoots ( RootVisitor * visitor)

Definition at line 1014 of file global-handles.cc.

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

◆ IterateYoungRoots()

void v8::internal::EternalHandles::IterateYoungRoots ( RootVisitor * visitor)

Definition at line 1025 of file global-handles.cc.

Here is the call graph for this function:

◆ operator=()

EternalHandles & v8::internal::EternalHandles::operator= ( const EternalHandles & )
delete

◆ PostGarbageCollectionProcessing()

void v8::internal::EternalHandles::PostGarbageCollectionProcessing ( )

Definition at line 1032 of file global-handles.cc.

Here is the call graph for this function:

Member Data Documentation

◆ blocks_

std::vector<Address*> v8::internal::EternalHandles::blocks_
private

Definition at line 231 of file global-handles.h.

◆ kInvalidIndex

const int v8::internal::EternalHandles::kInvalidIndex = -1
staticprivate

Definition at line 218 of file global-handles.h.

◆ kMask

const int v8::internal::EternalHandles::kMask = 0xff
staticprivate

Definition at line 221 of file global-handles.h.

◆ kShift

const int v8::internal::EternalHandles::kShift = 8
staticprivate

Definition at line 219 of file global-handles.h.

◆ kSize

const int v8::internal::EternalHandles::kSize = 1 << kShift
staticprivate

Definition at line 220 of file global-handles.h.

◆ size_

int v8::internal::EternalHandles::size_ = 0
private

Definition at line 230 of file global-handles.h.

◆ young_node_indices_

std::vector<int> v8::internal::EternalHandles::young_node_indices_
private

Definition at line 232 of file global-handles.h.


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