diff options
author | Marco Bubke <marco.bubke@qt.io> | 2017-01-05 13:28:52 +0100 |
---|---|---|
committer | Marco Bubke <marco.bubke@qt.io> | 2017-01-09 13:21:33 +0000 |
commit | 8624e3c97df7b2f0e57ae35a0d92c254f8f99669 (patch) | |
tree | edf2b480530eb5fe0dd5ac25491429674efeade2 /src/tools | |
parent | 023e1fa61063dddc3124b72d485307537e87b97d (diff) | |
download | qt-creator-8624e3c97df7b2f0e57ae35a0d92c254f8f99669.tar.gz |
Clang: Remove unused files
Change-Id: If100138459665a11812ed5977ca15b79c0836b93
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Diffstat (limited to 'src/tools')
5 files changed, 0 insertions, 386 deletions
diff --git a/src/tools/clangrefactoringbackend/source/collectincludesaction.h b/src/tools/clangrefactoringbackend/source/collectincludesaction.h deleted file mode 100644 index 1586ba3f8b..0000000000 --- a/src/tools/clangrefactoringbackend/source/collectincludesaction.h +++ /dev/null @@ -1,88 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2016 The Qt Company Ltd. -** Contact: https://www.qt.io/licensing/ -** -** This file is part of Qt Creator. -** -** Commercial License Usage -** Licensees holding valid commercial Qt licenses may use this file in -** accordance with the commercial license agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and The Qt Company. For licensing terms -** and conditions see https://www.qt.io/terms-conditions. For further -** information use the contact form at https://www.qt.io/contact-us. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU -** General Public License version 3 as published by the Free Software -** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT -** included in the packaging of this file. Please review the following -** information to ensure the GNU General Public License requirements will -** be met: https://www.gnu.org/licenses/gpl-3.0.html. -** -****************************************************************************/ - -#pragma once - -#include <collectincludespreprocessorcallbacks.h> - -#if defined(__GNUC__) -#pragma GCC diagnostic push -#pragma GCC diagnostic ignored "-Wunused-parameter" -#endif - -#include <clang/Frontend/FrontendActions.h> -#include <clang/Frontend/CompilerInstance.h> -#include <clang/Lex/Preprocessor.h> - -#if defined(__GNUC__) -#pragma GCC diagnostic pop -#endif - -namespace ClangBackEnd { - -class CollectIncludesAction final : public clang::PreprocessOnlyAction -{ -public: - CollectIncludesAction(Utils::SmallStringVector &includes, - const std::vector<uint> &excludedIncludeUID, - std::vector<uint> &alreadyIncludedFileUIDs) - : includes(includes), - excludedIncludeUID(excludedIncludeUID), - alreadyIncludedFileUIDs(alreadyIncludedFileUIDs) - { - } - - bool BeginSourceFileAction(clang::CompilerInstance &compilerInstance, - llvm::StringRef filename) override - { - if (clang::PreprocessOnlyAction::BeginSourceFileAction(compilerInstance, filename)) { - auto &preprocessor = compilerInstance.getPreprocessor(); - auto &headerSearch = preprocessor.getHeaderSearchInfo(); - - auto macroPreprocessorCallbacks = new CollectIncludesPreprocessorCallbacks(headerSearch, - includes, - excludedIncludeUID, - alreadyIncludedFileUIDs); - - preprocessor.addPPCallbacks(std::unique_ptr<clang::PPCallbacks>(macroPreprocessorCallbacks)); - - return true; - } - - return false; - } - - void EndSourceFileAction() override - { - clang::PreprocessOnlyAction::EndSourceFileAction(); - } - -private: - Utils::SmallStringVector &includes; - const std::vector<uint> &excludedIncludeUID; - std::vector<uint> &alreadyIncludedFileUIDs; -}; - -} // namespace ClangBackEnd diff --git a/src/tools/clangrefactoringbackend/source/collectincludespreprocessorcallbacks.h b/src/tools/clangrefactoringbackend/source/collectincludespreprocessorcallbacks.h deleted file mode 100644 index b1f3d2c202..0000000000 --- a/src/tools/clangrefactoringbackend/source/collectincludespreprocessorcallbacks.h +++ /dev/null @@ -1,120 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2016 The Qt Company Ltd. -** Contact: https://www.qt.io/licensing/ -** -** This file is part of Qt Creator. -** -** Commercial License Usage -** Licensees holding valid commercial Qt licenses may use this file in -** accordance with the commercial license agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and The Qt Company. For licensing terms -** and conditions see https://www.qt.io/terms-conditions. For further -** information use the contact form at https://www.qt.io/contact-us. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU -** General Public License version 3 as published by the Free Software -** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT -** included in the packaging of this file. Please review the following -** information to ensure the GNU General Public License requirements will -** be met: https://www.gnu.org/licenses/gpl-3.0.html. -** -****************************************************************************/ - -#pragma once - -#if defined(__GNUC__) -#pragma GCC diagnostic push -#pragma GCC diagnostic ignored "-Wunused-parameter" -#endif - -#include <clang/Basic/SourceManager.h> -#include <clang/Lex/MacroInfo.h> -#include <clang/Lex/HeaderSearch.h> -#include <clang/Lex/PPCallbacks.h> -#include <clang/Lex/Preprocessor.h> - -#if defined(__GNUC__) -#pragma GCC diagnostic pop -#endif - -#include <utils/smallstringvector.h> - -#include <algorithm> - -#include <QDebug> - -namespace ClangBackEnd { - -class CollectIncludesPreprocessorCallbacks final : public clang::PPCallbacks -{ -public: - CollectIncludesPreprocessorCallbacks(clang::HeaderSearch &headerSearch, - Utils::SmallStringVector &includes, - const std::vector<uint> &excludedIncludeUID, - std::vector<uint> &alreadyIncludedFileUIDs) - : headerSearch(headerSearch), - includes(includes), - excludedIncludeUID(excludedIncludeUID), - alreadyIncludedFileUIDs(alreadyIncludedFileUIDs) - {} - - void InclusionDirective(clang::SourceLocation /*hashLocation*/, - const clang::Token &/*includeToken*/, - llvm::StringRef fileName, - bool /*isAngled*/, - clang::CharSourceRange /*fileNameRange*/, - const clang::FileEntry *file, - llvm::StringRef /*searchPath*/, - llvm::StringRef /*relativePath*/, - const clang::Module */*imported*/) override - { - auto fileUID = file->getUID(); - - flagIncludeAlreadyRead(file); - - if (isNotInExcludedIncludeUID(fileUID)) { - auto notAlreadyIncluded = isNotAlreadyIncluded(fileUID); - if (notAlreadyIncluded.first) { - alreadyIncludedFileUIDs.insert(notAlreadyIncluded.second, file->getUID()); - includes.emplace_back(fileName.data(), fileName.size()); - } - } - } - - bool isNotInExcludedIncludeUID(uint uid) const - { - return !std::binary_search(excludedIncludeUID.begin(), - excludedIncludeUID.end(), - uid); - } - - - std::pair<bool, std::vector<uint>::iterator> isNotAlreadyIncluded(uint uid) - { - auto range = std::equal_range(alreadyIncludedFileUIDs.begin(), - alreadyIncludedFileUIDs.end(), - uid); - - return {range.first == range.second, range.first}; - } - - void flagIncludeAlreadyRead(const clang::FileEntry *file) - { - auto &headerFileInfo = headerSearch.getFileInfo(file); - - headerFileInfo.isImport = true; - ++headerFileInfo.NumIncludes; - - } - -private: - clang::HeaderSearch &headerSearch; - std::vector<Utils::SmallString> &includes; - const std::vector<uint> &excludedIncludeUID; - std::vector<uint> &alreadyIncludedFileUIDs; -}; - -} // namespace ClangBackEnd diff --git a/src/tools/clangrefactoringbackend/source/collectincludestoolaction.h b/src/tools/clangrefactoringbackend/source/collectincludestoolaction.h deleted file mode 100644 index 017b2efe2a..0000000000 --- a/src/tools/clangrefactoringbackend/source/collectincludestoolaction.h +++ /dev/null @@ -1,54 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2016 The Qt Company Ltd. -** Contact: https://www.qt.io/licensing/ -** -** This file is part of Qt Creator. -** -** Commercial License Usage -** Licensees holding valid commercial Qt licenses may use this file in -** accordance with the commercial license agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and The Qt Company. For licensing terms -** and conditions see https://www.qt.io/terms-conditions. For further -** information use the contact form at https://www.qt.io/contact-us. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU -** General Public License version 3 as published by the Free Software -** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT -** included in the packaging of this file. Please review the following -** information to ensure the GNU General Public License requirements will -** be met: https://www.gnu.org/licenses/gpl-3.0.html. -** -****************************************************************************/ - -#pragma once - -#include "collectincludesaction.h" - -#include <clang/Tooling/Tooling.h> - -namespace ClangBackEnd { - -class CollectIncludesToolAction final : public clang::tooling::FrontendActionFactory -{ -public: - CollectIncludesToolAction(Utils::SmallStringVector &includes, - const std::vector<uint> &excludedIncludeUIDs) - : includes(includes), - excludedIncludeUIDs(excludedIncludeUIDs) - {} - - clang::FrontendAction *create() - { - return new CollectIncludesAction(includes, excludedIncludeUIDs, alreadyIncludedFileUIDs); - } - -private: - Utils::SmallStringVector &includes; - const std::vector<uint> &excludedIncludeUIDs; - std::vector<uint> alreadyIncludedFileUIDs; -}; - -} // namespace ClangBackEnd diff --git a/src/tools/clangrefactoringbackend/source/includecollector.cpp b/src/tools/clangrefactoringbackend/source/includecollector.cpp deleted file mode 100644 index 914df823c1..0000000000 --- a/src/tools/clangrefactoringbackend/source/includecollector.cpp +++ /dev/null @@ -1,75 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2016 The Qt Company Ltd. -** Contact: https://www.qt.io/licensing/ -** -** This file is part of Qt Creator. -** -** Commercial License Usage -** Licensees holding valid commercial Qt licenses may use this file in -** accordance with the commercial license agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and The Qt Company. For licensing terms -** and conditions see https://www.qt.io/terms-conditions. For further -** information use the contact form at https://www.qt.io/contact-us. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU -** General Public License version 3 as published by the Free Software -** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT -** included in the packaging of this file. Please review the following -** information to ensure the GNU General Public License requirements will -** be met: https://www.gnu.org/licenses/gpl-3.0.html. -** -****************************************************************************/ - -#include "includecollector.h" - -#include "collectincludestoolaction.h" - -namespace ClangBackEnd { - -void IncludeCollector::collectIncludes() -{ - clang::tooling::ClangTool tool = createTool(); - - auto excludedIncludeFileUIDs = generateExcludedIncludeFileUIDs(tool.getFiles()); - - auto action = std::unique_ptr<CollectIncludesToolAction>( - new CollectIncludesToolAction(includes, excludedIncludeFileUIDs)); - - tool.run(action.get()); -} - -void IncludeCollector::setExcludedIncludes(Utils::SmallStringVector &&excludedIncludes) -{ - this->excludedIncludes = std::move(excludedIncludes); -} - -Utils::SmallStringVector IncludeCollector::takeIncludes() -{ - std::sort(includes.begin(), includes.end()); - - return std::move(includes); -} - -std::vector<uint> IncludeCollector::generateExcludedIncludeFileUIDs(clang::FileManager &fileManager) const -{ - std::vector<uint> fileUIDs; - fileUIDs.reserve(excludedIncludes.size()); - - auto generateUID = [&] (const Utils::SmallString &filePath) { - return fileManager.getFile({filePath.data(), filePath.size()})->getUID(); - }; - - std::transform(excludedIncludes.begin(), - excludedIncludes.end(), - std::back_inserter(fileUIDs), - generateUID); - - std::sort(fileUIDs.begin(), fileUIDs.end()); - - return fileUIDs; -} - -} // namespace ClangBackEnd diff --git a/src/tools/clangrefactoringbackend/source/includecollector.h b/src/tools/clangrefactoringbackend/source/includecollector.h deleted file mode 100644 index 738ff077d2..0000000000 --- a/src/tools/clangrefactoringbackend/source/includecollector.h +++ /dev/null @@ -1,49 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2016 The Qt Company Ltd. -** Contact: https://www.qt.io/licensing/ -** -** This file is part of Qt Creator. -** -** Commercial License Usage -** Licensees holding valid commercial Qt licenses may use this file in -** accordance with the commercial license agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and The Qt Company. For licensing terms -** and conditions see https://www.qt.io/terms-conditions. For further -** information use the contact form at https://www.qt.io/contact-us. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU -** General Public License version 3 as published by the Free Software -** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT -** included in the packaging of this file. Please review the following -** information to ensure the GNU General Public License requirements will -** be met: https://www.gnu.org/licenses/gpl-3.0.html. -** -****************************************************************************/ - -#pragma once - -#include "clangtool.h" - -namespace ClangBackEnd { - -class IncludeCollector : public ClangTool -{ -public: - void collectIncludes(); - - void setExcludedIncludes(Utils::SmallStringVector &&excludedIncludes); - - Utils::SmallStringVector takeIncludes(); - -private: - std::vector<uint> generateExcludedIncludeFileUIDs(clang::FileManager &fileManager) const; - -private: - Utils::SmallStringVector excludedIncludes; - Utils::SmallStringVector includes; -}; - -} // namespace ClangBackEnd |