![]() |
Qt 6.x
The Qt SDK
|
#include <qqmltypeloader_p.h>
Inheritance diagram for QQmlTypeLoader::Blob:
Collaboration diagram for QQmlTypeLoader::Blob:Classes | |
| struct | PendingImport |
Public Types | |
| using | PendingImportPtr = std::shared_ptr< PendingImport > |
Public Types inherited from QQmlDataBlob | |
| enum | Status { Null , Loading , WaitingForDependencies , ResolvingDependencies , Complete , Error } |
| This enum describes the status of the data blob. More... | |
| enum | Type { QmlFile = QQmlAbstractUrlInterceptor::QmlFile , JavaScriptFile = QQmlAbstractUrlInterceptor::JavaScriptFile , QmldirFile = QQmlAbstractUrlInterceptor::QmldirFile } |
| This enum describes the type of the data blob. More... | |
| using | Ptr = QQmlRefPointer< QQmlDataBlob > |
Public Member Functions | |
| Blob (const QUrl &url, QQmlDataBlob::Type type, QQmlTypeLoader *loader) | |
| ~Blob () override | |
| const QQmlImports * | imports () const |
| void | setCachedUnitStatus (QQmlMetaType::CachedUnitLookupError status) |
| void | importQmldirScripts (const PendingImportPtr &import, const QQmlTypeLoaderQmldirContent &qmldir, const QUrl &qmldirUrl) |
Public Member Functions inherited from QQmlDataBlob | |
| QQmlDataBlob (const QUrl &, Type, QQmlTypeLoader *manager) | |
| Create a new QQmlDataBlob for url and of the provided type. | |
| virtual | ~QQmlDataBlob () |
| void | startLoading () |
| Must be called before loading can occur. | |
| QQmlTypeLoader * | typeLoader () const |
| Type | type () const |
| Returns the type provided to the constructor. | |
| Status | status () const |
| Returns the blob's status. | |
| bool | isNull () const |
| Returns true if the status is Null. | |
| bool | isLoading () const |
| Returns true if the status is Loading. | |
| bool | isWaiting () const |
| Returns true if the status is WaitingForDependencies. | |
| bool | isComplete () const |
| Returns true if the status is Complete. | |
| bool | isError () const |
| Returns true if the status is Error. | |
| bool | isCompleteOrError () const |
| Returns true if the status is Complete or Error. | |
| qreal | progress () const |
| Returns the data download progress from 0 to 1. | |
| QUrl | url () const |
| Returns the physical url of the data. | |
| QString | urlString () const |
| QUrl | finalUrl () const |
| Returns the logical URL to be used for resolving further URLs referred to in the code. | |
| QString | finalUrlString () const |
| Returns the finalUrl() as a string. | |
| QList< QQmlError > | errors () const |
| Return the errors on this blob. | |
Public Member Functions inherited from QQmlRefCounted< QQmlDataBlob > | |
| void | release () const |
Public Member Functions inherited from QQmlRefCount | |
| QQmlRefCount () | |
| void | addref () const |
| int | count () const |
Protected Member Functions | |
| bool | addImport (const QV4::CompiledData::Import *import, QQmlImports::ImportFlags, QList< QQmlError > *errors) |
| bool | addImport (PendingImportPtr import, QList< QQmlError > *errors) |
| bool | fetchQmldir (const QUrl &url, PendingImportPtr import, int priority, QList< QQmlError > *errors) |
| bool | updateQmldir (const QQmlRefPointer< QQmlQmldirData > &data, const PendingImportPtr &import, QList< QQmlError > *errors) |
| bool | loadDependentImports (const QList< QQmlDirParser::Import > &imports, const QString &qualifier, QTypeRevision version, quint16 precedence, QQmlImports::ImportFlags flags, QList< QQmlError > *errors) |
| virtual QString | stringAt (int) const |
| bool | isDebugging () const |
| bool | readCacheFile () const |
| bool | writeCacheFile () const |
| QQmlMetaType::CacheMode | aotCacheMode () const |
Protected Member Functions inherited from QQmlDataBlob | |
| void | setError (const QQmlError &) |
| Mark this blob as having errors. | |
| void | setError (const QList< QQmlError > &errors) |
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. | |
| void | setError (const QQmlJS::DiagnosticMessage &error) |
| void | setError (const QString &description) |
| void | addDependency (QQmlDataBlob *) |
| Wait for blob to become complete or to error. | |
| virtual void | dataReceived (const SourceCodeData &)=0 |
| Invoked when data for the blob is received. | |
| virtual void | initializeFromCachedUnit (const QQmlPrivate::CachedQmlUnit *)=0 |
| virtual void | done () |
| Invoked once data has either been received or a network error occurred, and all dependencies are complete. | |
| virtual void | dependencyError (QQmlDataBlob *) |
| Called if blob, which was previously waited for, has an error. | |
| virtual void | dependencyComplete (QQmlDataBlob *) |
| Called if blob, which was previously waited for, has completed. | |
| virtual void | allDependenciesDone () |
| Called when all blobs waited for have completed. | |
| virtual void | downloadProgressChanged (qreal) |
| Called when the download progress of this blob changes. | |
| virtual void | completed () |
| Invoked on the main thread sometime after done() was called on the load thread. | |
Protected Member Functions inherited from QQmlRefCounted< QQmlDataBlob > | |
| ~QQmlRefCounted () | |
Protected Attributes | |
| QQmlRefPointer< QQmlImports > | m_importCache |
| QVector< PendingImportPtr > | m_unresolvedImports |
| QVector< QQmlRefPointer< QQmlQmldirData > > | m_qmldirs |
| QQmlMetaType::CachedUnitLookupError | m_cachedUnitStatus = QQmlMetaType::CachedUnitLookupError::NoError |
Protected Attributes inherited from QQmlDataBlob | |
| QQmlTypeLoader * | m_typeLoader |
| QList< QQmlDataBlob * > | m_waitingOnMe |
Private Member Functions | |
| virtual bool | qmldirDataAvailable (const QQmlRefPointer< QQmlQmldirData > &, QList< QQmlError > *) |
| virtual void | scriptImported (const QQmlRefPointer< QQmlScriptBlob > &, const QV4::CompiledData::Location &, const QString &, const QString &) |
| void | dependencyComplete (QQmlDataBlob *) override |
| Called if blob, which was previously waited for, has completed. | |
Definition at line 48 of file qqmltypeloader_p.h.
| using QQmlTypeLoader::Blob::PendingImportPtr = std::shared_ptr<PendingImport> |
Definition at line 77 of file qqmltypeloader_p.h.
| QQmlTypeLoader::Blob::Blob | ( | const QUrl & | url, |
| QQmlDataBlob::Type | type, | ||
| QQmlTypeLoader * | loader | ||
| ) |
Definition at line 456 of file qqmltypeloader.cpp.
|
override |
Definition at line 462 of file qqmltypeloader.cpp.
|
protected |
Definition at line 740 of file qqmltypeloader.cpp.
|
protected |
Definition at line 746 of file qqmltypeloader.cpp.
References QV4::CompiledData::Import::ImportFile, QV4::CompiledData::Import::ImportInlineComponent, QV4::CompiledData::Import::ImportLibrary, QV4::CompiledData::Import::ImportScript, and Q_ASSERT.
|
protected |
Definition at line 880 of file qqmltypeloader.cpp.
References QQmlMetaType::AcceptUntyped, QV4::ExecutionEngine::Aot, QV4::ExecutionEngine::AotByteCode, QQmlMetaType::RejectAll, and QQmlMetaType::RequireFullyTyped.
Referenced by QQmlTypeLoader::getScript(), and QQmlTypeLoader::getType().
Here is the caller graph for this function:
|
overrideprivatevirtual |
Called if blob, which was previously waited for, has completed.
The default implementation does nothing.
Reimplemented from QQmlDataBlob.
Definition at line 766 of file qqmltypeloader.cpp.
References QV4::CompiledData::Location::column(), error, QV4::CompiledData::Location::line(), QList< T >::prepend(), Q_ASSERT, qmlConvertSourceCoordinate< quint32, int >(), QQmlDataBlob::QmldirFile, setError(), QList< T >::size(), QList< T >::takeFirst(), and QQmlDataBlob::type().
Here is the call graph for this function:
|
protected |
Definition at line 466 of file qqmltypeloader.cpp.
| void QQmlTypeLoader::Blob::importQmldirScripts | ( | const PendingImportPtr & | import, |
| const QQmlTypeLoaderQmldirContent & | qmldir, | ||
| const QUrl & | qmldirUrl | ||
| ) |
Import any qualified scripts of for import as listed in qmldir. Precondition is that import is actually qualified.
Definition at line 490 of file qqmltypeloader.cpp.
References QQmlRefPointer< T >::data(), QUrl::resolved(), and QQmlTypeLoaderQmldirContent::scripts().
Here is the call graph for this function:
|
inline |
Definition at line 54 of file qqmltypeloader_p.h.
Referenced by QQmlTypeCompiler::imports().
Here is the caller graph for this function:
|
protected |
Definition at line 863 of file qqmltypeloader.cpp.
Referenced by QQmlScriptBlob::dataReceived(), and QQmlTypeData::initializeFromCachedUnit().
Here is the caller graph for this function:
|
protected |
Definition at line 784 of file qqmltypeloader.cpp.
References QList< T >::append(), arg, QQmlDirParser::Import::Auto, error, QString::fromLatin1(), lcQmlImport(), QQmlDirParser::Import::Optional, and qCDebug.
Here is the call graph for this function:
|
privatevirtual |
Definition at line 891 of file qqmltypeloader.cpp.
|
protected |
Definition at line 868 of file qqmltypeloader.cpp.
References QV4::ExecutionEngine::QmlcRead.
Referenced by QQmlScriptBlob::dataReceived().
Here is the caller graph for this function:
|
inlineprivatevirtual |
Reimplemented in QQmlTypeData, and QQmlScriptBlob.
Definition at line 96 of file qqmltypeloader_p.h.
|
inline |
Definition at line 56 of file qqmltypeloader_p.h.
Referenced by QQmlTypeLoader::getScript(), and QQmlTypeLoader::getType().
Here is the caller graph for this function:
|
inlineprotectedvirtual |
Reimplemented in QQmlScriptBlob, and QQmlTypeData.
Definition at line 109 of file qqmltypeloader_p.h.
|
protected |
Definition at line 525 of file qqmltypeloader.cpp.
References QTypeRevision::hasMajorVersion(), QQmlTypeLoader::importDatabase(), QTypeRevision::isValid(), QString::lastIndexOf(), QString::left(), and postProcessQmldir().
Here is the call graph for this function:
|
protected |
Definition at line 874 of file qqmltypeloader.cpp.
References QV4::ExecutionEngine::QmlcWrite.
Referenced by QQmlScriptBlob::dataReceived().
Here is the caller graph for this function:
|
protected |
Definition at line 119 of file qqmltypeloader_p.h.
Referenced by QQmlScriptBlob::dataReceived(), and QQmlTypeData::dataReceived().
|
protected |
Definition at line 116 of file qqmltypeloader_p.h.
Referenced by QQmlTypeData::allDependenciesDone(), QQmlScriptBlob::done(), QQmlTypeData::done(), and LoadHelper::resolveType().
|
protected |
Definition at line 118 of file qqmltypeloader_p.h.
|
protected |
Definition at line 117 of file qqmltypeloader_p.h.
Referenced by QQmlTypeData::allDependenciesDone().