![]() |
Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
|
#include <qqmlpropertycachecreator_p.h>
Public Types | |
| using | CompiledObject = typename ObjectContainer::CompiledObject |
| using | InlineComponent = typename std::remove_reference<decltype (*(std::declval<CompiledObject>().inlineComponentsBegin()))>::type |
Public Member Functions | |
| QQmlPropertyCacheCreator (QQmlPropertyCacheVector *propertyCaches, QQmlPendingGroupPropertyBindings *pendingGroupPropertyBindings, QQmlTypeLoader *typeLoader, const ObjectContainer *objectContainer, const QQmlImports *imports, const QByteArray &typeClassName) | |
| ~QQmlPropertyCacheCreator () | |
| IncrementalResult | buildMetaObjectsIncrementally () |
| QQmlError | verifyNoICCycle () |
| q23::expected< QQmlPropertyCache::Ptr, QQmlError > | tryDeriveCacheFrom (const CompiledObject *obj, const QQmlPropertyCache::ConstPtr &baseTypeCache, QByteArray dynamicClassName=QByteArray()) const |
| q23::expected< QQmlPropertyData, QQmlError > | tryCreateQQmlPropertyData (const QV4::CompiledData::Property &propertyIR, int coreIndex, int notifyIndex) const |
Protected Types | |
| enum class | VMEMetaObjectIsRequired { Maybe , Always } |
Protected Member Functions | |
| QQmlError | buildMetaObjectRecursively (int objectIndex, const QQmlBindingInstantiationContext &context, VMEMetaObjectIsRequired isVMERequired) |
| QQmlPropertyCache::ConstPtr | propertyCacheForObject (const CompiledObject *obj, const QQmlBindingInstantiationContext &context, QQmlError *error) const |
| QQmlError | createMetaObject (int objectIndex, const CompiledObject *obj, const QQmlPropertyCache::ConstPtr &baseTypeCache) |
| QMetaType | metaTypeForParameter (const QV4::CompiledData::ParameterType ¶m, QString *customTypeName=nullptr) const |
| QString | stringAt (int index) const |
Protected Attributes | |
| QQmlTypeLoader *const | typeLoader |
| const ObjectContainer *const | objectContainer |
| const QQmlImports *const | imports |
| QQmlPropertyCacheVector * | propertyCaches |
| QQmlPendingGroupPropertyBindings * | pendingGroupPropertyBindings |
| QByteArray | typeClassName |
| unsigned int | currentRoot |
| QQmlBindingInstantiationContext | m_context |
| std::vector< InlineComponent > | allICs |
| std::vector< icutils::Node > | nodesSorted |
| std::vector< icutils::Node >::reverse_iterator | nodeIt = nodesSorted.rbegin() |
| bool | hasCycle = false |
Additional Inherited Members | |
| Static Public Member Functions inherited from QQmlPropertyCacheCreatorBase | |
| static QMetaType | metaTypeForPropertyType (QV4::CompiledData::CommonType type) |
| static QMetaType | listTypeForPropertyType (QV4::CompiledData::CommonType type) |
| static QV4::CompiledData::CommonType | propertyTypeForMetaType (QMetaType metaType) |
| static bool | canCreateClassNameTypeByUrl (const QUrl &url) |
| static QByteArray | createClassNameTypeByUrl (const QUrl &url) |
| static QByteArray | createClassNameForInlineComponent (const QUrl &url) |
| Static Public Attributes inherited from QQmlPropertyCacheCreatorBase | |
| static QAtomicInt Q_AUTOTEST_EXPORT | classIndexCounter |
Definition at line 184 of file qqmlpropertycachecreator_p.h.
| using QQmlPropertyCacheCreator< ObjectContainer >::CompiledObject = typename ObjectContainer::CompiledObject |
Definition at line 187 of file qqmlpropertycachecreator_p.h.
| using QQmlPropertyCacheCreator< ObjectContainer >::InlineComponent = typename std::remove_reference<decltype (*(std::declval<CompiledObject>().inlineComponentsBegin()))>::type |
Definition at line 188 of file qqmlpropertycachecreator_p.h.
|
strongprotected |
| Enumerator | |
|---|---|
| Maybe | |
| Always | |
Definition at line 241 of file qqmlpropertycachecreator_p.h.
|
inline |
Definition at line 287 of file qqmlpropertycachecreator_p.h.
References QQmlPropertyCacheCreator(), currentRoot, objectContainer, and pendingGroupPropertyBindings.
Referenced by QQmlPropertyCacheCreator().
|
inline |
Definition at line 195 of file qqmlpropertycachecreator_p.h.
|
inlineprotected |
Definition at line 615 of file qqmlpropertycachecreator_p.h.
References objectContainer, pendingGroupPropertyBindings, QQmlBindingInstantiationContext::referencingObjectIndex, and QQmlBindingInstantiationContext::resolveInstantiatingProperty().
|
inline |
Creates the property cache for the CompiledObjects of objectContainer, one (inline) root component at a time.
Definition at line 339 of file qqmlpropertycachecreator_p.h.
References currentRoot, hasCycle, and objectContainer.
|
inlineprotected |
Definition at line 771 of file qqmlpropertycachecreator_p.h.
References objectContainer.
|
inlineprotected |
Definition at line 811 of file qqmlpropertycachecreator_p.h.
References objectContainer.
|
inlineprotected |
Definition at line 717 of file qqmlpropertycachecreator_p.h.
References objectContainer.
|
inlineprotected |
Definition at line 252 of file qqmlpropertycachecreator_p.h.
References objectContainer.
|
nodiscard |
Tries to create a QQmlPropertyData based on IR of a property. This involves property type resolution and property flags creation
notifyIndex MUST be in the signal index range (see QObjectPrivate::signalIndex()). This is different from QMetaMethod::methodIndex()
return error in case of failed type resolution
Definition at line 596 of file qqmlpropertycachecreator_p.h.
|
nodiscard |
Tries to creates a property cache for the CompiledObject based on the cache of a base type. Returns QQmlError in case of invalid overrides
Definition at line 370 of file qqmlpropertycachecreator_p.h.
References objectContainer.
|
inline |
Returns a valid error if the inline components of the objectContainer form a cycle. Otherwise an invalid error is returned
Definition at line 327 of file qqmlpropertycachecreator_p.h.
References hasCycle.
|
protected |
Definition at line 280 of file qqmlpropertycachecreator_p.h.
|
protected |
Definition at line 277 of file qqmlpropertycachecreator_p.h.
Referenced by QQmlPropertyCacheCreator(), and buildMetaObjectsIncrementally().
|
protected |
Definition at line 283 of file qqmlpropertycachecreator_p.h.
Referenced by buildMetaObjectsIncrementally(), and verifyNoICCycle().
|
protected |
Definition at line 273 of file qqmlpropertycachecreator_p.h.
|
protected |
Definition at line 279 of file qqmlpropertycachecreator_p.h.
|
protected |
Definition at line 282 of file qqmlpropertycachecreator_p.h.
|
protected |
Definition at line 281 of file qqmlpropertycachecreator_p.h.
|
protected |
Definition at line 272 of file qqmlpropertycachecreator_p.h.
Referenced by QQmlPropertyCacheCreator(), buildMetaObjectRecursively(), buildMetaObjectsIncrementally(), createMetaObject(), metaTypeForParameter(), propertyCacheForObject(), stringAt(), and tryDeriveCacheFrom().
|
protected |
Definition at line 275 of file qqmlpropertycachecreator_p.h.
Referenced by QQmlPropertyCacheCreator(), and buildMetaObjectRecursively().
|
protected |
Definition at line 274 of file qqmlpropertycachecreator_p.h.
|
protected |
Definition at line 276 of file qqmlpropertycachecreator_p.h.
|
protected |
Definition at line 271 of file qqmlpropertycachecreator_p.h.