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

#include <heap-space.h>

Inheritance diagram for cppgc::internal::NormalPageSpace:
Collaboration diagram for cppgc::internal::NormalPageSpace:

Classes

class  LinearAllocationBuffer
 

Public Member Functions

 NormalPageSpace (RawHeap *heap, size_t index, bool is_compactable)
 
LinearAllocationBufferlinear_allocation_buffer ()
 
const LinearAllocationBufferlinear_allocation_buffer () const
 
FreeListfree_list ()
 
const FreeListfree_list () const
 
- Public Member Functions inherited from cppgc::internal::BaseSpace
 BaseSpace (const BaseSpace &)=delete
 
BaseSpaceoperator= (const BaseSpace &)=delete
 
virtual ~BaseSpace ()
 
iterator begin ()
 
const_iterator begin () const
 
iterator end ()
 
const_iterator end () const
 
size_t size () const
 
bool is_large () const
 
size_t index () const
 
RawHeapraw_heap ()
 
const RawHeapraw_heap () const
 
void AddPage (BasePage *)
 
void RemovePage (BasePage *)
 
Pages RemoveAllPages ()
 
v8::base::Mutexpages_mutex () const
 
bool is_compactable () const
 

Static Public Member Functions

static NormalPageSpaceFrom (BaseSpace &space)
 
static const NormalPageSpaceFrom (const BaseSpace &space)
 

Private Attributes

LinearAllocationBuffer current_lab_
 
FreeList free_list_
 

Additional Inherited Members

- Public Types inherited from cppgc::internal::BaseSpace
using Pages = std::vector<BasePage*>
 
using iterator = Pages::iterator
 
using const_iterator = Pages::const_iterator
 
- Protected Types inherited from cppgc::internal::BaseSpace
enum class  PageType { kNormal , kLarge }
 
- Protected Member Functions inherited from cppgc::internal::BaseSpace
 BaseSpace (RawHeap *heap, size_t index, PageType type, bool is_compactable)
 

Detailed Description

Definition at line 68 of file heap-space.h.

Constructor & Destructor Documentation

◆ NormalPageSpace()

cppgc::internal::NormalPageSpace::NormalPageSpace ( RawHeap * heap,
size_t index,
bool is_compactable )

Definition at line 44 of file heap-space.cc.

Member Function Documentation

◆ free_list() [1/2]

FreeList & cppgc::internal::NormalPageSpace::free_list ( )
inline

Definition at line 108 of file heap-space.h.

◆ free_list() [2/2]

const FreeList & cppgc::internal::NormalPageSpace::free_list ( ) const
inline

Definition at line 109 of file heap-space.h.

◆ From() [1/2]

static NormalPageSpace & cppgc::internal::NormalPageSpace::From ( BaseSpace & space)
inlinestatic

Definition at line 93 of file heap-space.h.

Here is the caller graph for this function:

◆ From() [2/2]

static const NormalPageSpace & cppgc::internal::NormalPageSpace::From ( const BaseSpace & space)
inlinestatic

Definition at line 97 of file heap-space.h.

◆ linear_allocation_buffer() [1/2]

LinearAllocationBuffer & cppgc::internal::NormalPageSpace::linear_allocation_buffer ( )
inline

Definition at line 103 of file heap-space.h.

Here is the caller graph for this function:

◆ linear_allocation_buffer() [2/2]

const LinearAllocationBuffer & cppgc::internal::NormalPageSpace::linear_allocation_buffer ( ) const
inline

Definition at line 104 of file heap-space.h.

Member Data Documentation

◆ current_lab_

LinearAllocationBuffer cppgc::internal::NormalPageSpace::current_lab_
private

Definition at line 112 of file heap-space.h.

◆ free_list_

FreeList cppgc::internal::NormalPageSpace::free_list_
private

Definition at line 113 of file heap-space.h.


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