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

#include <js-struct.h>

Collaboration diagram for v8::internal::SharedStructTypeRegistry:

Classes

class  Data
 

Public Member Functions

 SharedStructTypeRegistry ()
 
 ~SharedStructTypeRegistry ()
 
MaybeDirectHandle< MapRegister (Isolate *isolate, Handle< String > key, const base::Vector< const DirectHandle< Name > > field_names, const std::set< uint32_t > &element_names)
 
void IterateElements (Isolate *isolate, RootVisitor *visitor)
 
void NotifyElementsRemoved (int count)
 

Static Public Member Functions

static constexpr Tagged< Smideleted_element ()
 

Private Member Functions

MaybeDirectHandle< MapRegisterNoThrow (Isolate *isolate, Handle< String > key, const base::Vector< const DirectHandle< Name > > field_names, const std::set< uint32_t > &element_names)
 
MaybeDirectHandle< MapCheckIfEntryMatches (Isolate *isolate, InternalIndex entry, DirectHandle< String > key, const base::Vector< const DirectHandle< Name > > field_names, const std::set< uint32_t > &element_names)
 
void EnsureCapacity (PtrComprCageBase cage_base, int additional_elements)
 

Private Attributes

std::unique_ptr< Datadata_
 
base::Mutex data_mutex_
 

Detailed Description

Definition at line 79 of file js-struct.h.

Constructor & Destructor Documentation

◆ SharedStructTypeRegistry()

v8::internal::SharedStructTypeRegistry::SharedStructTypeRegistry ( )

Definition at line 370 of file js-struct.cc.

Here is the call graph for this function:

◆ ~SharedStructTypeRegistry()

v8::internal::SharedStructTypeRegistry::~SharedStructTypeRegistry ( )
default

Member Function Documentation

◆ CheckIfEntryMatches()

MaybeDirectHandle< Map > v8::internal::SharedStructTypeRegistry::CheckIfEntryMatches ( Isolate * isolate,
InternalIndex entry,
DirectHandle< String > key,
const base::Vector< const DirectHandle< Name > > field_names,
const std::set< uint32_t > & element_names )
private

Definition at line 377 of file js-struct.cc.

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

◆ deleted_element()

static constexpr Tagged< Smi > v8::internal::SharedStructTypeRegistry::deleted_element ( )
inlinestaticconstexpr

Definition at line 81 of file js-struct.h.

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

◆ EnsureCapacity()

void v8::internal::SharedStructTypeRegistry::EnsureCapacity ( PtrComprCageBase cage_base,
int additional_elements )
private

Definition at line 515 of file js-struct.cc.

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

◆ IterateElements()

void v8::internal::SharedStructTypeRegistry::IterateElements ( Isolate * isolate,
RootVisitor * visitor )

Definition at line 497 of file js-struct.cc.

◆ NotifyElementsRemoved()

void v8::internal::SharedStructTypeRegistry::NotifyElementsRemoved ( int count)

Definition at line 511 of file js-struct.cc.

◆ Register()

MaybeDirectHandle< Map > v8::internal::SharedStructTypeRegistry::Register ( Isolate * isolate,
Handle< String > key,
const base::Vector< const DirectHandle< Name > > field_names,
const std::set< uint32_t > & element_names )

Definition at line 483 of file js-struct.cc.

Here is the call graph for this function:

◆ RegisterNoThrow()

MaybeDirectHandle< Map > v8::internal::SharedStructTypeRegistry::RegisterNoThrow ( Isolate * isolate,
Handle< String > key,
const base::Vector< const DirectHandle< Name > > field_names,
const std::set< uint32_t > & element_names )
private

Definition at line 442 of file js-struct.cc.

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

Member Data Documentation

◆ data_

std::unique_ptr<Data> v8::internal::SharedStructTypeRegistry::data_
private

Definition at line 109 of file js-struct.h.

◆ data_mutex_

base::Mutex v8::internal::SharedStructTypeRegistry::data_mutex_
private

Definition at line 112 of file js-struct.h.


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