From 0e77cdcc2e45f484cd85fb06acc3e8439d66ac4d Mon Sep 17 00:00:00 2001 From: hjk Date: Tue, 17 Oct 2023 17:00:22 +0200 Subject: [PATCH] CMake: save a few cycles Cheaper checks first. Change-Id: I7487862abf409ef0a885d6ac9511066a6f814039 Reviewed-by: Reviewed-by: Cristian Adam --- .../cmakeprojectmanager/fileapidataextractor.cpp | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/src/plugins/cmakeprojectmanager/fileapidataextractor.cpp b/src/plugins/cmakeprojectmanager/fileapidataextractor.cpp index ed5e64b3874..13a240d4e85 100644 --- a/src/plugins/cmakeprojectmanager/fileapidataextractor.cpp +++ b/src/plugins/cmakeprojectmanager/fileapidataextractor.cpp @@ -358,13 +358,13 @@ static QStringList splitFragments(const QStringList &fragments) static bool isPchFile(const FilePath &buildDirectory, const FilePath &path) { - return path.isChildOf(buildDirectory) && path.fileName().startsWith("cmake_pch"); + return path.fileName().startsWith("cmake_pch") && path.isChildOf(buildDirectory); } static bool isUnityFile(const FilePath &buildDirectory, const FilePath &path) { - return path.isChildOf(buildDirectory) && path.parentDir().fileName() == "Unity" - && path.fileName().startsWith("unity_"); + return path.fileName().startsWith("unity_") && path.isChildOf(buildDirectory) + && path.parentDir().fileName() == "Unity"; } static RawProjectParts generateRawProjectParts(const QFuture &cancelFuture, @@ -478,10 +478,9 @@ static RawProjectParts generateRawProjectParts(const QFuture &cancelFuture // Set project files except pch / unity files rpp.setFiles(Utils::filtered(sources, [buildDirectory](const QString &path) { - return !isPchFile(buildDirectory, - FilePath::fromString(path)) - && !isUnityFile(buildDirectory, - FilePath::fromString(path)); + const FilePath filePath = FilePath::fromString(path); + return !isPchFile(buildDirectory, filePath) + && !isUnityFile(buildDirectory, filePath); }), {}, [headerMimeType](const QString &path) {