v8
V8 is Google’s open source high-performance JavaScript and WebAssembly engine, written in C++.
Loading...
Searching...
No Matches
heap::base::BasicSlotSet< SlotGranularity >::Bucket Class Referencefinal

#include <basic-slot-set.h>

Collaboration diagram for heap::base::BasicSlotSet< SlotGranularity >::Bucket:

Public Member Functions

 Bucket ()=default
 
uint32_t * cells ()
 
const uint32_t * cells () const
 
uint32_t * cell (int cell_index)
 
const uint32_t * cell (int cell_index) const
 
template<AccessMode access_mode = AccessMode::ATOMIC>
uint32_t LoadCell (int cell_index)
 
template<AccessMode access_mode = AccessMode::ATOMIC>
void SetCellBits (int cell_index, uint32_t mask)
 
template<AccessMode access_mode = AccessMode::ATOMIC>
void ClearCellBits (int cell_index, uint32_t mask)
 
void StoreCell (int cell_index, uint32_t value)
 
bool IsEmpty () const
 

Private Attributes

uint32_t cells_ [kCellsPerBucket] = {0}
 

Detailed Description

template<size_t SlotGranularity>
class heap::base::BasicSlotSet< SlotGranularity >::Bucket

Definition at line 282 of file basic-slot-set.h.

Constructor & Destructor Documentation

◆ Bucket()

template<size_t SlotGranularity>
heap::base::BasicSlotSet< SlotGranularity >::Bucket::Bucket ( )
default

Member Function Documentation

◆ cell() [1/2]

template<size_t SlotGranularity>
uint32_t * heap::base::BasicSlotSet< SlotGranularity >::Bucket::cell ( int cell_index)
inline

Definition at line 288 of file basic-slot-set.h.

Here is the caller graph for this function:

◆ cell() [2/2]

template<size_t SlotGranularity>
const uint32_t * heap::base::BasicSlotSet< SlotGranularity >::Bucket::cell ( int cell_index) const
inline

Definition at line 289 of file basic-slot-set.h.

◆ cells() [1/2]

template<size_t SlotGranularity>
uint32_t * heap::base::BasicSlotSet< SlotGranularity >::Bucket::cells ( )
inline

Definition at line 286 of file basic-slot-set.h.

Here is the caller graph for this function:

◆ cells() [2/2]

template<size_t SlotGranularity>
const uint32_t * heap::base::BasicSlotSet< SlotGranularity >::Bucket::cells ( ) const
inline

Definition at line 287 of file basic-slot-set.h.

◆ ClearCellBits()

template<size_t SlotGranularity>
template<AccessMode access_mode = AccessMode::ATOMIC>
void heap::base::BasicSlotSet< SlotGranularity >::Bucket::ClearCellBits ( int cell_index,
uint32_t mask )
inline

Definition at line 310 of file basic-slot-set.h.

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

◆ IsEmpty()

template<size_t SlotGranularity>
bool heap::base::BasicSlotSet< SlotGranularity >::Bucket::IsEmpty ( ) const
inline

Definition at line 322 of file basic-slot-set.h.

Here is the caller graph for this function:

◆ LoadCell()

template<size_t SlotGranularity>
template<AccessMode access_mode = AccessMode::ATOMIC>
uint32_t heap::base::BasicSlotSet< SlotGranularity >::Bucket::LoadCell ( int cell_index)
inline

Definition at line 292 of file basic-slot-set.h.

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

◆ SetCellBits()

template<size_t SlotGranularity>
template<AccessMode access_mode = AccessMode::ATOMIC>
void heap::base::BasicSlotSet< SlotGranularity >::Bucket::SetCellBits ( int cell_index,
uint32_t mask )
inline

Definition at line 300 of file basic-slot-set.h.

Here is the call graph for this function:

◆ StoreCell()

template<size_t SlotGranularity>
void heap::base::BasicSlotSet< SlotGranularity >::Bucket::StoreCell ( int cell_index,
uint32_t value )
inline

Definition at line 318 of file basic-slot-set.h.

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

Member Data Documentation

◆ cells_

template<size_t SlotGranularity>
uint32_t heap::base::BasicSlotSet< SlotGranularity >::Bucket::cells_[kCellsPerBucket] = {0}
private

Definition at line 332 of file basic-slot-set.h.


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