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

#include <persistent-handles.h>

Collaboration diagram for v8::internal::PersistentHandles:

Public Member Functions

V8_EXPORT_PRIVATE PersistentHandles (Isolate *isolate)
 
V8_EXPORT_PRIVATE ~PersistentHandles ()
 
 PersistentHandles (const PersistentHandles &)=delete
 
PersistentHandlesoperator= (const PersistentHandles &)=delete
 
V8_EXPORT_PRIVATE void Iterate (RootVisitor *visitor)
 
template<typename T >
IndirectHandle< TNewHandle (Tagged< T > obj)
 
template<typename T >
IndirectHandle< TNewHandle (IndirectHandle< T > obj)
 
template<typename T >
IndirectHandle< TNewHandle (DirectHandle< T > obj)
 
template<typename T >
IndirectHandle< TNewHandle (T obj)
 
Isolateisolate () const
 

Private Member Functions

void AddBlock ()
 
V8_EXPORT_PRIVATE AddressGetHandle (Address value)
 
void Attach (LocalHeap *)
 
void Detach ()
 
 FRIEND_TEST (PersistentHandlesTest, OrderOfBlocks)
 

Private Attributes

Isolateisolate_
 
std::vector< Address * > blocks_
 
Addressblock_next_
 
Addressblock_limit_
 
PersistentHandlesprev_
 
PersistentHandlesnext_
 

Friends

class HandleScopeImplementer
 
class LocalHeap
 
class PersistentHandlesList
 

Detailed Description

Definition at line 25 of file persistent-handles.h.

Constructor & Destructor Documentation

◆ PersistentHandles() [1/2]

v8::internal::PersistentHandles::PersistentHandles ( Isolate * isolate)
explicit

Definition at line 15 of file persistent-handles.cc.

Here is the call graph for this function:

◆ ~PersistentHandles()

v8::internal::PersistentHandles::~PersistentHandles ( )

Definition at line 24 of file persistent-handles.cc.

Here is the call graph for this function:

◆ PersistentHandles() [2/2]

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

Member Function Documentation

◆ AddBlock()

void v8::internal::PersistentHandles::AddBlock ( )
private

Definition at line 65 of file persistent-handles.cc.

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

◆ Attach()

void v8::internal::PersistentHandles::Attach ( LocalHeap * )
inlineprivate

Definition at line 77 of file persistent-handles.h.

◆ Detach()

void v8::internal::PersistentHandles::Detach ( )
inlineprivate

Definition at line 78 of file persistent-handles.h.

◆ FRIEND_TEST()

v8::internal::PersistentHandles::FRIEND_TEST ( PersistentHandlesTest ,
OrderOfBlocks  )
private

◆ GetHandle()

Address * v8::internal::PersistentHandles::GetHandle ( Address value)
private

Definition at line 79 of file persistent-handles.cc.

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

◆ isolate()

Isolate * v8::internal::PersistentHandles::isolate ( ) const
inline

Definition at line 59 of file persistent-handles.h.

◆ Iterate()

void v8::internal::PersistentHandles::Iterate ( RootVisitor * visitor)

Definition at line 89 of file persistent-handles.cc.

Here is the call graph for this function:

◆ NewHandle() [1/4]

template<typename T >
IndirectHandle< T > v8::internal::PersistentHandles::NewHandle ( DirectHandle< T > obj)
inline

Definition at line 49 of file persistent-handles.h.

Here is the call graph for this function:

◆ NewHandle() [2/4]

template<typename T >
IndirectHandle< T > v8::internal::PersistentHandles::NewHandle ( IndirectHandle< T > obj)
inline

Definition at line 44 of file persistent-handles.h.

Here is the call graph for this function:

◆ NewHandle() [3/4]

template<typename T >
IndirectHandle< T > v8::internal::PersistentHandles::NewHandle ( T obj)
inline

Definition at line 54 of file persistent-handles.h.

Here is the call graph for this function:

◆ NewHandle() [4/4]

template<typename T >
IndirectHandle< T > v8::internal::PersistentHandles::NewHandle ( Tagged< T > obj)
inline

Definition at line 36 of file persistent-handles.h.

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

◆ operator=()

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

Friends And Related Symbol Documentation

◆ HandleScopeImplementer

friend class HandleScopeImplementer
friend

Definition at line 94 of file persistent-handles.h.

◆ LocalHeap

friend class LocalHeap
friend

Definition at line 95 of file persistent-handles.h.

◆ PersistentHandlesList

friend class PersistentHandlesList
friend

Definition at line 96 of file persistent-handles.h.

Member Data Documentation

◆ block_limit_

Address* v8::internal::PersistentHandles::block_limit_
private

Definition at line 85 of file persistent-handles.h.

◆ block_next_

Address* v8::internal::PersistentHandles::block_next_
private

Definition at line 84 of file persistent-handles.h.

◆ blocks_

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

Definition at line 82 of file persistent-handles.h.

◆ isolate_

Isolate* v8::internal::PersistentHandles::isolate_
private

Definition at line 81 of file persistent-handles.h.

◆ next_

PersistentHandles* v8::internal::PersistentHandles::next_
private

Definition at line 88 of file persistent-handles.h.

◆ prev_

PersistentHandles* v8::internal::PersistentHandles::prev_
private

Definition at line 87 of file persistent-handles.h.


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