aboutsummaryrefslogtreecommitdiffstats
path: root/doc
diff options
context:
space:
mode:
authorIvan Komissarov <abbapoh@gmail.com>2022-08-22 19:41:02 +0300
committerIvan Komissarov <ABBAPOH@gmail.com>2023-07-11 09:29:37 +0000
commit4a83659b9a353e4f0e1d744b58598fa5eb2d621b (patch)
tree12f6136e7332c97ccca603168f8debdace0a546d /doc
parent12847a654b0509343741af2d25f748a0b6a9e45f (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.qdoc24
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