Qt
Internal/Contributor docs for the Qt SDK. <b>Note:</b> These are NOT official API docs; those are found <a href='https://doc.qt.io/'>here</a>.
Loading...
Searching...
No Matches
QV4::PersistentValueStorage Struct Reference

#include <qv4persistent_p.h>

+ Collaboration diagram for QV4::PersistentValueStorage:

Classes

struct  Iterator
 

Public Member Functions

 PersistentValueStorage (ExecutionEngine *engine)
 
 ~PersistentValueStorage ()
 
Valueallocate ()
 
void mark (MarkStack *markStack)
 
Iterator begin ()
 
Iterator end ()
 
void clearFreePageHint ()
 

Static Public Member Functions

static void free (Value *v)
 
static ExecutionEnginegetEngine (const Value *v)
 

Public Attributes

ExecutionEngineengine
 
voidfirstPage
 
voidfreePageHint = nullptr
 

Detailed Description

Definition at line 24 of file qv4persistent_p.h.

Constructor & Destructor Documentation

◆ PersistentValueStorage()

PersistentValueStorage::PersistentValueStorage ( ExecutionEngine * engine)

Definition at line 137 of file qv4persistent.cpp.

◆ ~PersistentValueStorage()

PersistentValueStorage::~PersistentValueStorage ( )

Definition at line 143 of file qv4persistent.cpp.

References clearFreePageHint(), firstPage, i, Q_ASSERT, and QV4::Encode::undefined().

+ Here is the call graph for this function:

Member Function Documentation

◆ allocate()

Value * PersistentValueStorage::allocate ( )

Definition at line 161 of file qv4persistent.cpp.

References firstPage, freePageHint, QV4::StaticValue::int_32(), Q_ASSERT, and QV4::Encode::undefined().

Referenced by QJSManagedValue::QJSManagedValue(), QV4::ExecutionEngine::registerNativeModule(), QV4::PersistentValue::set(), QV4::PersistentValue::set(), and QV4::PersistentValue::set().

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

◆ begin()

Iterator QV4::PersistentValueStorage::begin ( )
inline

Definition at line 51 of file qv4persistent_p.h.

Referenced by QV4::MemoryManager::cleanupDeletedQObjectWrappersInSweep(), and QV4::MemoryManager::sweep().

+ Here is the caller graph for this function:

◆ clearFreePageHint()

void PersistentValueStorage::clearFreePageHint ( )

Definition at line 219 of file qv4persistent.cpp.

References freePageHint, and page.

Referenced by ~PersistentValueStorage().

+ Here is the caller graph for this function:

◆ end()

Iterator QV4::PersistentValueStorage::end ( )
inline

Definition at line 52 of file qv4persistent_p.h.

Referenced by QV4::MemoryManager::cleanupDeletedQObjectWrappersInSweep(), and QV4::MemoryManager::sweep().

+ Here is the caller graph for this function:

◆ free()

static void QV4::PersistentValueStorage::free ( Value * v)
inlinestatic

Definition at line 30 of file qv4persistent_p.h.

Referenced by QJSManagedValue::QJSManagedValue(), QJSValue::QJSValue(), QV4::ExecutionEngine::~ExecutionEngine(), QJSManagedValue::~QJSManagedValue(), QV4::MemoryManager::cleanupDeletedQObjectWrappersInSweep(), QJSValuePrivate::free(), QV4::PersistentValue::operator=(), and QJSManagedValue::operator=().

+ Here is the caller graph for this function:

◆ getEngine()

ExecutionEngine * PersistentValueStorage::getEngine ( const Value * v)
static

Definition at line 230 of file qv4persistent.cpp.

Referenced by QJSValuePrivate::convertToReturnedValue(), QJSManagedValue::engine(), QJSValuePrivate::engine(), QJSValuePrivate::free(), and v4Engine().

+ Here is the caller graph for this function:

◆ mark()

void PersistentValueStorage::mark ( MarkStack * markStack)

Definition at line 206 of file qv4persistent.cpp.

References QV4::Value::as(), firstPage, and i.

+ Here is the call graph for this function:

Member Data Documentation

◆ engine

ExecutionEngine* QV4::PersistentValueStorage::engine

Definition at line 58 of file qv4persistent_p.h.

◆ firstPage

void* QV4::PersistentValueStorage::firstPage

Definition at line 59 of file qv4persistent_p.h.

Referenced by ~PersistentValueStorage(), allocate(), and mark().

◆ freePageHint

void* QV4::PersistentValueStorage::freePageHint = nullptr

Definition at line 60 of file qv4persistent_p.h.

Referenced by allocate(), and clearFreePageHint().


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