Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Loading...
Searching...
No Matches
QQmlData Class Reference

#include <qqmldata_p.h>

Inheritance diagram for QQmlData:
Collaboration diagram for QQmlData:

Classes

struct  NotifyList
struct  DeferredData

Public Types

enum  Ownership { DoesNotOwnMemory , OwnsMemory }
enum  { BitsPerType = sizeof(BindingBitsType) * 8 , InlineBindingArraySize = 2 }
enum class  DeleteNotifyList { Yes , No }
typedef quintptr BindingBitsType

Public Member Functions

 QQmlData (Ownership ownership)
 ~QQmlData ()
void destroyed (QObject *)
void setImplicitDestructible ()
QQmlNotifierEndpointnotify (int index) const
void addNotify (int index, QQmlNotifierEndpoint *)
int endpointCount (int index)
bool signalHasEndpoint (int index) const
void disconnectNotifiers (DeleteNotifyList doDelete)
bool hasBindingBit (int) const
void setBindingBit (QObject *obj, int)
void clearBindingBit (int)
bool hasPendingBindingBit (int index) const
void setPendingBindingBit (QObject *obj, int)
void clearPendingBindingBit (int)
void deferData (int objectIndex, const QQmlRefPointer< QV4::ExecutableCompilationUnit > &, const QQmlRefPointer< QQmlContextData > &, const QString &inlineComponentName)
void releaseDeferredData ()
bool hasExtendedData () const
QHash< QQmlAttachedPropertiesFunc, QObject * > * attachedProperties () const
void flushPendingBinding (int coreIndex)

Static Public Member Functions

static void init ()
static void destroyed (QAbstractDeclarativeData *, QObject *)
static void signalEmitted (QAbstractDeclarativeData *, QObject *, int, void **)
static int receivers (QAbstractDeclarativeData *, const QObject *, int)
static bool isSignalConnected (QAbstractDeclarativeData *, const QObject *, int)
static QQmlDataget (QObjectPrivate *priv, bool create)
static QQmlDataget (const QObjectPrivate *priv)
static QQmlDataget (QObject *object, bool create)
static QQmlDataget (const QObject *object)
static bool keepAliveDuringGarbageCollection (const QObject *object)
static bool wasDeleted (const QObject *)
static bool wasDeleted (const QObjectPrivate *)
static void markAsDeleted (QObject *)
static void setQueuedForDeletion (QObject *)
static void flushPendingBinding (QObject *object, int coreIndex)
static QQmlPropertyCache::ConstPtr ensurePropertyCache (QObject *object)
static Q_ALWAYS_INLINE uint offsetForBit (int bit)
static Q_ALWAYS_INLINE BindingBitsType bitFlagForBit (int bit)

Public Attributes

quint32 ownMemory:1
quint32 indestructible:1
quint32 explicitIndestructibleSet:1
quint32 hasTaintedV4Object:1
quint32 isQueuedForDeletion:1
quint32 rootObjectInCreation:1
quint32 hasInterceptorMetaObject:1
quint32 hasVMEMetaObject:1
quint32 hasConstWrapper: 1
quint32 dummy:7
quint32 bindingBitsArraySize: 16
union { 
   BindingBitsType *   bindingBits 
   BindingBitsType   bindingBitsValue [InlineBindingArraySize
}; 
QAtomicPointer< NotifyListnotifyList
QQmlContextDatacontext = nullptr
QQmlContextDataouterContext = nullptr
QQmlRefPointer< QQmlContextDataownContext
QQmlAbstractBindingbindings = nullptr
QQmlBoundSignalsignalHandlers = nullptr
std::vector< QQmlPropertyObserverpropertyObservers
QQmlDatanextContextObject = nullptr
QQmlData ** prevContextObject = nullptr
quint16 lineNumber = 0
quint16 columnNumber = 0
quint32 jsEngineId = 0
QQmlRefPointer< QV4::ExecutableCompilationUnitcompilationUnit
QList< DeferredData * > deferredData
QV4::WeakValue jsWrapper
QQmlPropertyCache::ConstPtr propertyCache
QQmlGuardImplguards = nullptr

Additional Inherited Members

Static Public Attributes inherited from QAbstractDeclarativeData
static void(* destroyed )(QAbstractDeclarativeData *, QObject *) = nullptr
static void(* signalEmitted )(QAbstractDeclarativeData *, QObject *, int, void **) = nullptr
static int(* receivers )(QAbstractDeclarativeData *, const QObject *, int) = nullptr
static bool(* isSignalConnected )(QAbstractDeclarativeData *, const QObject *, int) = nullptr
static void(* setWidgetParent )(QObject *, QObject *) = nullptr

Detailed Description

Definition at line 57 of file qqmldata_p.h.

Member Typedef Documentation

◆ BindingBitsType

Definition at line 122 of file qqmldata_p.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
Enumerator
BitsPerType 
InlineBindingArraySize 

Definition at line 123 of file qqmldata_p.h.

◆ DeleteNotifyList

enum class QQmlData::DeleteNotifyList
strong
Enumerator
Yes 
No 

Definition at line 149 of file qqmldata_p.h.

◆ Ownership

Enumerator
DoesNotOwnMemory 
OwnsMemory 

Definition at line 60 of file qqmldata_p.h.

Constructor & Destructor Documentation

◆ QQmlData()

QT_BEGIN_NAMESPACE QQmlData::QQmlData ( Ownership ownership)

Definition at line 15 of file qqmldata.cpp.

◆ ~QQmlData()

QQmlData::~QQmlData ( )
default

Member Function Documentation

◆ addNotify()

void QQmlData::addNotify ( int index,
QQmlNotifierEndpoint * endpoint )

Definition at line 303 of file qqmldata.cpp.

◆ attachedProperties()

QHash< QQmlAttachedPropertiesFunc, QObject * > * QQmlData::attachedProperties ( ) const

Definition at line 375 of file qqmldata.cpp.

◆ bitFlagForBit()

Q_ALWAYS_INLINE BindingBitsType QQmlData::bitFlagForBit ( int bit)
inlinestatic

Definition at line 271 of file qqmldata_p.h.

◆ clearBindingBit()

void QQmlData::clearBindingBit ( int coreIndex)
inline

Definition at line 398 of file qqmldata_p.h.

◆ clearPendingBindingBit()

void QQmlData::clearPendingBindingBit ( int coreIndex)
inline

Definition at line 420 of file qqmldata_p.h.

◆ deferData()

void QQmlData::deferData ( int objectIndex,
const QQmlRefPointer< QV4::ExecutableCompilationUnit > & compilationUnit,
const QQmlRefPointer< QQmlContextData > & context,
const QString & inlineComponentName )

Definition at line 265 of file qqmldata.cpp.

◆ destroyed() [1/2]

void QQmlData::destroyed ( QAbstractDeclarativeData * d,
QObject * o )
static

Definition at line 34 of file qqmldata.cpp.

◆ destroyed() [2/2]

void QQmlData::destroyed ( QObject * object)

Definition at line 423 of file qqmldata.cpp.

◆ disconnectNotifiers()

void QQmlData::disconnectNotifiers ( QQmlData::DeleteNotifyList doDelete)

Definition at line 344 of file qqmldata.cpp.

◆ endpointCount()

int QQmlData::endpointCount ( int index)

Definition at line 133 of file qqmldata.cpp.

◆ ensurePropertyCache()

QQmlPropertyCache::ConstPtr QQmlData::ensurePropertyCache ( QObject * object)
inlinestatic

Definition at line 262 of file qqmldata_p.h.

◆ flushPendingBinding() [1/2]

void QQmlData::flushPendingBinding ( int coreIndex)

Definition at line 183 of file qqmldata.cpp.

◆ flushPendingBinding() [2/2]

void QQmlData::flushPendingBinding ( QObject * object,
int coreIndex )
inlinestatic

Definition at line 427 of file qqmldata_p.h.

◆ get() [1/4]

QQmlData * QQmlData::get ( const QObject * object)
inlinestatic

Definition at line 238 of file qqmldata_p.h.

◆ get() [2/4]

QQmlData * QQmlData::get ( const QObjectPrivate * priv)
inlinestatic

Definition at line 224 of file qqmldata_p.h.

◆ get() [3/4]

QQmlData * QQmlData::get ( QObject * object,
bool create )
inlinestatic

Definition at line 234 of file qqmldata_p.h.

◆ get() [4/4]

QQmlData * QQmlData::get ( QObjectPrivate * priv,
bool create )
inlinestatic

Definition at line 209 of file qqmldata_p.h.

◆ hasBindingBit()

bool QQmlData::hasBindingBit ( int coreIndex) const
inline

Definition at line 383 of file qqmldata_p.h.

◆ hasExtendedData()

bool QQmlData::hasExtendedData ( ) const
inline

Definition at line 250 of file qqmldata_p.h.

◆ hasPendingBindingBit()

bool QQmlData::hasPendingBindingBit ( int index) const
inline

Definition at line 405 of file qqmldata_p.h.

◆ init()

void QQmlData::init ( )
inlinestatic

Definition at line 65 of file qqmldata_p.h.

◆ isSignalConnected()

bool QQmlData::isSignalConnected ( QAbstractDeclarativeData * d,
const QObject * ,
int index )
static

Definition at line 127 of file qqmldata.cpp.

◆ keepAliveDuringGarbageCollection()

bool QQmlData::keepAliveDuringGarbageCollection ( const QObject * object)
inlinestatic

Definition at line 243 of file qqmldata_p.h.

◆ markAsDeleted()

void QQmlData::markAsDeleted ( QObject * o)
static

Definition at line 147 of file qqmldata.cpp.

◆ notify()

QQmlNotifierEndpoint * QQmlData::notify ( int index) const
inline

Definition at line 340 of file qqmldata_p.h.

◆ offsetForBit()

Q_ALWAYS_INLINE uint QQmlData::offsetForBit ( int bit)
inlinestatic

Definition at line 270 of file qqmldata_p.h.

◆ receivers()

int QQmlData::receivers ( QAbstractDeclarativeData * d,
const QObject * ,
int index )
static

Definition at line 121 of file qqmldata.cpp.

◆ releaseDeferredData()

void QQmlData::releaseDeferredData ( )

Definition at line 289 of file qqmldata.cpp.

◆ setBindingBit()

void QQmlData::setBindingBit ( QObject * obj,
int coreIndex )
inline

Definition at line 391 of file qqmldata_p.h.

◆ setImplicitDestructible()

void QQmlData::setImplicitDestructible ( )
inline

Definition at line 83 of file qqmldata_p.h.

◆ setPendingBindingBit()

void QQmlData::setPendingBindingBit ( QObject * obj,
int coreIndex )
inline

Definition at line 413 of file qqmldata_p.h.

◆ setQueuedForDeletion()

void QQmlData::setQueuedForDeletion ( QObject * object)
static

Definition at line 161 of file qqmldata.cpp.

◆ signalEmitted()

void QQmlData::signalEmitted ( QAbstractDeclarativeData * ,
QObject * object,
int index,
void ** a )
static

Definition at line 62 of file qqmldata.cpp.

◆ signalHasEndpoint()

bool QQmlData::signalHasEndpoint ( int index) const
inline

Definition at line 366 of file qqmldata_p.h.

◆ wasDeleted() [1/2]

bool QQmlData::wasDeleted ( const QObject * object)
inlinestatic

Definition at line 326 of file qqmldata_p.h.

◆ wasDeleted() [2/2]

bool QQmlData::wasDeleted ( const QObjectPrivate * priv)
inlinestatic

Definition at line 317 of file qqmldata_p.h.

Member Data Documentation

◆ [union]

union { ... } QQmlData

◆ bindingBits

BindingBitsType* QQmlData::bindingBits

Definition at line 128 of file qqmldata_p.h.

◆ bindingBitsArraySize

quint32 QQmlData::bindingBitsArraySize

Definition at line 121 of file qqmldata_p.h.

◆ bindingBitsValue

BindingBitsType QQmlData::bindingBitsValue[InlineBindingArraySize]

Definition at line 129 of file qqmldata_p.h.

◆ bindings

QQmlAbstractBinding* QQmlData::bindings = nullptr

Definition at line 158 of file qqmldata_p.h.

◆ columnNumber

quint16 QQmlData::columnNumber = 0

Definition at line 175 of file qqmldata_p.h.

◆ compilationUnit

QQmlRefPointer<QV4::ExecutableCompilationUnit> QQmlData::compilationUnit

Definition at line 196 of file qqmldata_p.h.

◆ context

◆ deferredData

QList<DeferredData *> QQmlData::deferredData

Definition at line 197 of file qqmldata_p.h.

◆ dummy

quint32 QQmlData::dummy

Definition at line 116 of file qqmldata_p.h.

◆ explicitIndestructibleSet

quint32 QQmlData::explicitIndestructibleSet

Definition at line 97 of file qqmldata_p.h.

◆ guards

QQmlGuardImpl* QQmlData::guards = nullptr

Definition at line 207 of file qqmldata_p.h.

◆ hasConstWrapper

quint32 QQmlData::hasConstWrapper

Definition at line 115 of file qqmldata_p.h.

◆ hasInterceptorMetaObject

quint32 QQmlData::hasInterceptorMetaObject

Definition at line 108 of file qqmldata_p.h.

◆ hasTaintedV4Object

quint32 QQmlData::hasTaintedV4Object

Definition at line 100 of file qqmldata_p.h.

◆ hasVMEMetaObject

quint32 QQmlData::hasVMEMetaObject

Definition at line 109 of file qqmldata_p.h.

◆ indestructible

quint32 QQmlData::indestructible

Definition at line 94 of file qqmldata_p.h.

◆ isQueuedForDeletion

quint32 QQmlData::isQueuedForDeletion

Definition at line 101 of file qqmldata_p.h.

◆ jsEngineId

quint32 QQmlData::jsEngineId = 0

Definition at line 177 of file qqmldata_p.h.

◆ jsWrapper

QV4::WeakValue QQmlData::jsWrapper

Definition at line 203 of file qqmldata_p.h.

◆ lineNumber

quint16 QQmlData::lineNumber = 0

Definition at line 174 of file qqmldata_p.h.

◆ nextContextObject

QQmlData* QQmlData::nextContextObject = nullptr

Definition at line 163 of file qqmldata_p.h.

◆ notifyList

QAtomicPointer<NotifyList> QQmlData::notifyList

Definition at line 142 of file qqmldata_p.h.

◆ outerContext

QQmlContextData* QQmlData::outerContext = nullptr

Definition at line 155 of file qqmldata_p.h.

◆ ownContext

QQmlRefPointer<QQmlContextData> QQmlData::ownContext

Definition at line 156 of file qqmldata_p.h.

◆ ownMemory

quint32 QQmlData::ownMemory

Definition at line 89 of file qqmldata_p.h.

◆ prevContextObject

QQmlData** QQmlData::prevContextObject = nullptr

Definition at line 164 of file qqmldata_p.h.

◆ propertyCache

QQmlPropertyCache::ConstPtr QQmlData::propertyCache

Definition at line 205 of file qqmldata_p.h.

◆ propertyObservers

std::vector<QQmlPropertyObserver> QQmlData::propertyObservers

Definition at line 160 of file qqmldata_p.h.

◆ rootObjectInCreation

quint32 QQmlData::rootObjectInCreation

Definition at line 106 of file qqmldata_p.h.

◆ signalHandlers

QQmlBoundSignal* QQmlData::signalHandlers = nullptr

Definition at line 159 of file qqmldata_p.h.


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