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

#include <prototype-info.h>

Inheritance diagram for v8::internal::PrototypeUsers:
Collaboration diagram for v8::internal::PrototypeUsers:

Public Types

using CompactionCallback
 

Static Public Member Functions

static Handle< WeakArrayListAdd (Isolate *isolate, Handle< WeakArrayList > array, DirectHandle< Map > value, int *assigned_index)
 
static void MarkSlotEmpty (Tagged< WeakArrayList > array, int index)
 
static Tagged< WeakArrayListCompact (DirectHandle< WeakArrayList > array, Heap *heap, CompactionCallback callback, AllocationType allocation=AllocationType::kYoung)
 
- Static Public Member Functions inherited from v8::internal::WeakArrayList
NEVER_READ_ONLY_SPACE static V8_EXPORT_PRIVATE Handle< WeakArrayListAddToEnd (Isolate *isolate, Handle< WeakArrayList > array, MaybeObjectDirectHandle value)
 
static V8_EXPORT_PRIVATE Handle< WeakArrayListAddToEnd (Isolate *isolate, Handle< WeakArrayList > array, MaybeObjectDirectHandle value1, Tagged< Smi > value2)
 
static V8_WARN_UNUSED_RESULT DirectHandle< WeakArrayListAppend (Isolate *isolate, DirectHandle< WeakArrayList > array, MaybeObjectDirectHandle value, AllocationType allocation=AllocationType::kYoung)
 
static constexpr int SizeForCapacity (int capacity)
 
static constexpr int CapacityForLength (int length)
 
static Handle< WeakArrayListEnsureSpace (Isolate *isolate, Handle< WeakArrayList > array, int length, AllocationType allocation=AllocationType::kYoung)
 

Static Public Attributes

static const int kEmptySlotIndex = 0
 
static const int kFirstIndex = 1
 
static const int kNoEmptySlotsMarker = 0
 
- Static Public Attributes inherited from v8::internal::WeakArrayList
static constexpr int kMaxCapacity = kMaxFixedArrayCapacity
 

Private Member Functions

 DISALLOW_IMPLICIT_CONSTRUCTORS (PrototypeUsers)
 

Static Private Member Functions

static Tagged< Smiempty_slot_index (Tagged< WeakArrayList > array)
 
static void set_empty_slot_index (Tagged< WeakArrayList > array, int index)
 
static void ScanForEmptySlots (Tagged< WeakArrayList > array)
 

Additional Inherited Members

- Public Member Functions inherited from v8::internal::WeakArrayList
V8_EXPORT_PRIVATE void Compact (Isolate *isolate)
 
Tagged< MaybeObjectGet (int index) const
 
Tagged< MaybeObjectGet (PtrComprCageBase cage_base, int index) const
 
Tagged< MaybeObjectget (int index) const
 
void Set (int index, Tagged< MaybeObject > value, WriteBarrierMode mode=UPDATE_WRITE_BARRIER)
 
void Set (int index, Tagged< Smi > value)
 
MaybeObjectSlot data_start ()
 
void CopyElements (Isolate *isolate, int dst_index, Tagged< WeakArrayList > src, int src_index, int len, WriteBarrierMode mode)
 
V8_EXPORT_PRIVATE bool IsFull () const
 
int AllocatedSize () const
 
int CountLiveWeakReferences () const
 
int CountLiveElements () const
 
V8_EXPORT_PRIVATE bool RemoveOne (MaybeObjectDirectHandle value)
 
V8_EXPORT_PRIVATE bool Contains (Tagged< MaybeObject > value)
 

Detailed Description

Definition at line 59 of file prototype-info.h.

Member Typedef Documentation

◆ CompactionCallback

Initial value:
void (*)(Tagged<HeapObject> object, int from_index,
int to_index)
kInterpreterTrampolineOffset Tagged< HeapObject >

Definition at line 71 of file prototype-info.h.

Member Function Documentation

◆ Add()

Handle< WeakArrayList > v8::internal::PrototypeUsers::Add ( Isolate * isolate,
Handle< WeakArrayList > array,
DirectHandle< Map > value,
int * assigned_index )
static

Definition at line 3775 of file objects.cc.

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

◆ Compact()

Tagged< WeakArrayList > v8::internal::PrototypeUsers::Compact ( DirectHandle< WeakArrayList > array,
Heap * heap,
CompactionCallback callback,
AllocationType allocation = AllocationType::kYoung )
static

Definition at line 3838 of file objects.cc.

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

◆ DISALLOW_IMPLICIT_CONSTRUCTORS()

v8::internal::PrototypeUsers::DISALLOW_IMPLICIT_CONSTRUCTORS ( PrototypeUsers )
private

◆ empty_slot_index()

Tagged< Smi > v8::internal::PrototypeUsers::empty_slot_index ( Tagged< WeakArrayList > array)
inlinestaticprivate

Definition at line 147 of file prototype-info-inl.h.

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

◆ MarkSlotEmpty()

static void v8::internal::PrototypeUsers::MarkSlotEmpty ( Tagged< WeakArrayList > array,
int index )
inlinestatic
Here is the caller graph for this function:

◆ ScanForEmptySlots()

void v8::internal::PrototypeUsers::ScanForEmptySlots ( Tagged< WeakArrayList > array)
staticprivate

Definition at line 3830 of file objects.cc.

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

◆ set_empty_slot_index()

void v8::internal::PrototypeUsers::set_empty_slot_index ( Tagged< WeakArrayList > array,
int index )
inlinestaticprivate

Definition at line 151 of file prototype-info-inl.h.

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

Member Data Documentation

◆ kEmptySlotIndex

const int v8::internal::PrototypeUsers::kEmptySlotIndex = 0
static

Definition at line 82 of file prototype-info.h.

◆ kFirstIndex

const int v8::internal::PrototypeUsers::kFirstIndex = 1
static

Definition at line 83 of file prototype-info.h.

◆ kNoEmptySlotsMarker

const int v8::internal::PrototypeUsers::kNoEmptySlotsMarker = 0
static

Definition at line 85 of file prototype-info.h.


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