[clang] 10c8f78 - [clang][deps] Move `SingleCommandCompilationDatabase` to a header
Jan Svoboda via cfe-commits
cfe-commits at lists.llvm.org
Fri Aug 13 03:48:52 PDT 2021
Author: Jan Svoboda
Date: 2021-08-13T12:48:14+02:00
New Revision: 10c8f78ab831dca8d7166c86a863d9bcfe626060
URL: https://github.com/llvm/llvm-project/commit/10c8f78ab831dca8d7166c86a863d9bcfe626060
DIFF: https://github.com/llvm/llvm-project/commit/10c8f78ab831dca8d7166c86a863d9bcfe626060.diff
LOG: [clang][deps] Move `SingleCommandCompilationDatabase` to a header
This makes `SingleCommandCompilationDatabase` reusable.
Added:
Modified:
clang/include/clang/Tooling/DependencyScanning/DependencyScanningWorker.h
clang/tools/clang-scan-deps/ClangScanDeps.cpp
Removed:
################################################################################
diff --git a/clang/include/clang/Tooling/DependencyScanning/DependencyScanningWorker.h b/clang/include/clang/Tooling/DependencyScanning/DependencyScanningWorker.h
index 5903ad13c1d84..c6f7d239b8eb5 100644
--- a/clang/include/clang/Tooling/DependencyScanning/DependencyScanningWorker.h
+++ b/clang/include/clang/Tooling/DependencyScanning/DependencyScanningWorker.h
@@ -30,6 +30,24 @@ namespace dependencies {
class DependencyScanningWorkerFilesystem;
+/// Compilation database that holds and reports a single compile command.
+class SingleCommandCompilationDatabase : public CompilationDatabase {
+ CompileCommand Command;
+
+public:
+ SingleCommandCompilationDatabase(CompileCommand Cmd)
+ : Command(std::move(Cmd)) {}
+
+ std::vector<CompileCommand>
+ getCompileCommands(StringRef FilePath) const override {
+ return {Command};
+ }
+
+ std::vector<CompileCommand> getAllCompileCommands() const override {
+ return {Command};
+ }
+};
+
class DependencyConsumer {
public:
virtual ~DependencyConsumer() {}
diff --git a/clang/tools/clang-scan-deps/ClangScanDeps.cpp b/clang/tools/clang-scan-deps/ClangScanDeps.cpp
index 74784ebd3b9c3..92b9bdd83e396 100644
--- a/clang/tools/clang-scan-deps/ClangScanDeps.cpp
+++ b/clang/tools/clang-scan-deps/ClangScanDeps.cpp
@@ -201,24 +201,6 @@ llvm::cl::opt<bool> Verbose("v", llvm::cl::Optional,
} // end anonymous namespace
-class SingleCommandCompilationDatabase : public tooling::CompilationDatabase {
-public:
- SingleCommandCompilationDatabase(tooling::CompileCommand Cmd)
- : Command(std::move(Cmd)) {}
-
- std::vector<tooling::CompileCommand>
- getCompileCommands(StringRef FilePath) const override {
- return {Command};
- }
-
- std::vector<tooling::CompileCommand> getAllCompileCommands() const override {
- return {Command};
- }
-
-private:
- tooling::CompileCommand Command;
-};
-
/// Takes the result of a dependency scan and prints error / dependency files
/// based on the result.
///
More information about the cfe-commits
mailing list