summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Wicking <paul.wicking@qt.io>2023-03-22 21:27:38 +0100
committerPaul Wicking <paul.wicking@qt.io>2023-03-23 13:41:55 +0100
commit5ce297ca105a1be033d276c8f46690f1d256308d (patch)
treecee9dbd534de8e764dee6f82bb837bcc6bcc1d99
parent4fc8835cf4534e926f27539c8c316470e5d7e11f (diff)
downloadqttools-5ce297ca105a1be033d276c8f46690f1d256308d.tar.gz
QDoc: Extract dualExecutionMode function from main()
Recent refacoring extracted the executing code in QDoc's main() function for running QDoc in "single execution mode". This patch does the same for "dual execution mode", which is QDoc's default behavior. The result is a more expressive main() function, that is easier to reason about for code readers. Task-number: QTBUG-71176 Change-Id: I494f58cd0d424f4cde47cc0363f908f85aa44eac Reviewed-by: Topi Reiniƶ <topi.reinio@qt.io>
-rw-r--r--src/qdoc/main.cpp20
1 files changed, 15 insertions, 5 deletions
diff --git a/src/qdoc/main.cpp b/src/qdoc/main.cpp
index 58cbafa5b..31af65e0a 100644
--- a/src/qdoc/main.cpp
+++ b/src/qdoc/main.cpp
@@ -639,6 +639,20 @@ static void singleExecutionMode()
}
}
+/*!
+ \internal
+
+ Process each .qdocconf-file passed as command line argument(s).
+*/
+static void dualExecutionMode()
+{
+ const QStringList qdocFiles = Config::instance().qdocFiles();
+ for (const auto &file : std::as_const(qdocFiles)) {
+ Config::instance().dependModules().clear();
+ processQdocconfFile(file);
+ }
+}
+
QT_END_NAMESPACE
int main(int argc, char **argv)
@@ -686,11 +700,7 @@ int main(int argc, char **argv)
if (config.singleExec()) {
singleExecutionMode();
} else {
- // separate qdoc processes for prepare and generate phases
- for (const auto &file : std::as_const(qdocFiles)) {
- config.dependModules().clear();
- processQdocconfFile(file);
- }
+ dualExecutionMode();
}
// Tidy everything away: