(333baa13eb6cb8d549793fbd47786cefad5b496e)
#include "cpp_clang.h"
#include "clangtoolastreader.h"
#include "filesignificancecheck.h"
#include "lupdatepreprocessoraction.h"
#include "synchronized.h"
#include "translator.h"
#include <QLibraryInfo>
#include <QtCore/qdir.h>
#include <QtCore/qfileinfo.h>
#include <QtCore/qjsonarray.h>
#include <QtCore/qjsondocument.h>
#include <QtCore/qjsonobject.h>
#include <QtCore/qscopeguard.h>
#include <QtCore/QProcess>
#include <QStandardPaths>
#include <QtTools/private/qttools-config_p.h>
#include <clang/Tooling/CompilationDatabase.h>
#include <algorithm>
#include <limits>
#include <thread>
#include <iostream>
#include <cstdlib>
#include <cstdio>
#include <memory>
#include <stdexcept>
#include <string>
#include <array>
Go to the source code of this file.
◆ JOIN_THREADS
#define JOIN_THREADS |
( |
| WSV | ) |
|
Value: WSV.emplace_back(std::move(store)); \
} \
}); \
producers.emplace_back(std::move(producer)); \
} \
\
for (auto &producer : producers) \
producer.join();
Definition at line 688 of file cpp_clang.cpp.
◆ START_THREADS
#define START_THREADS |
( |
| RSV, |
|
|
| WSV ) |
Value: std::vector<std::thread> producers; \
const size_t idealProducerCount = std::min(RSV.size(), size_t(std::thread::hardware_concurrency())); \
\
for (
size_t i = 0;
i < idealProducerCount; ++
i) { \
std::thread producer([&]() { \
while (RSV.next(&store)) { \
WSV.emplace_back(std::move(store)); \
continue; \
}
bool isEmpty() const noexcept
Returns true if the string has no characters; otherwise returns false.
Definition at line 675 of file cpp_clang.cpp.
◆ ensureCanonicalPath()
◆ frameworkSuffix()
◆ generateCompilationDatabase()
◆ getClangArgumentAdjuster()
static clang::tooling::ArgumentsAdjuster getClangArgumentAdjuster |
( |
| ) |
|
|
static |
◆ getIncludePathsFromCompiler()
◆ getMSVCIncludePathsFromEnvironment()
◆ getProjectDirsFromEnvironment()
◆ getSysCompiler()
◆ Q_LOGGING_CATEGORY()
Q_LOGGING_CATEGORY |
( |
lcClang | , |
|
|
"qt.lupdate.clang" | ) |
◆ sortMessagesByFileOrder()
◆ aliasDefinition