diff options
author | Ivan Komissarov <abbapoh@gmail.com> | 2022-08-22 19:41:02 +0300 |
---|---|---|
committer | Ivan Komissarov <ABBAPOH@gmail.com> | 2023-07-11 09:29:37 +0000 |
commit | 4a83659b9a353e4f0e1d744b58598fa5eb2d621b (patch) | |
tree | 12f6136e7332c97ccca603168f8debdace0a546d /doc | |
parent | 12847a654b0509343741af2d25f748a0b6a9e45f (diff) |
Implement non-eager providers
Non-eager providers instantiate modules one by one
(as opposed to eager providers which instantiate
all modules at once, e.g. Qt provider).
Because Dependencies are loaded recursively, it is
more flexible to use non-eager algorithm.
Future plan based on this commit:
- Make Qt provider and qbspkgconfig provider non-eager.
This allows to deprecate eager providers as well as the
fallback provider.
Fixes: QBS-1706
Change-Id: Ib01a0791bedb137fadf9e8e7a4acc35cc4a657d0
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Diffstat (limited to 'doc')
-rw-r--r-- | doc/reference/items/language/moduleprovider.qdoc | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/doc/reference/items/language/moduleprovider.qdoc b/doc/reference/items/language/moduleprovider.qdoc index 81a09a66b..09cabb39b 100644 --- a/doc/reference/items/language/moduleprovider.qdoc +++ b/doc/reference/items/language/moduleprovider.qdoc @@ -67,6 +67,19 @@ */ /*! + \qmlproperty bool ModuleProvider::isEager + + Holds whether provider is eager. + + Eager provider is executed only once and should create multiple modules at once when executed). + A non-eager provider is executed multiple times, one time for each module \QBS tries to + instantiate. + + \sa ModuleProvider::moduleName + \default true +*/ + +/*! \qmlproperty string ModuleProvider::name The name of the module provider. @@ -83,6 +96,17 @@ */ /*! + \qmlproperty string ModuleProvider::moduleName + + This property is set by QBS for non-eager providers and contains the name of the module + that is currently being instantiated by the provider. + + For eager providers, the value of this property is \c undefined. + + \sa ModuleProvider::isEager +*/ + +/*! \qmlproperty string ModuleProvider::outputBaseDir The path under which the new modules should be created when \l relativeSearchPaths |