Mercurial > hg > CbC > CbC_llvm
diff clang-tools-extra/clang-tidy/ClangTidyModule.cpp @ 150:1d019706d866
LLVM10
author | anatofuz |
---|---|
date | Thu, 13 Feb 2020 15:10:13 +0900 |
parents | |
children | 2e18cbf3894f |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/clang-tools-extra/clang-tidy/ClangTidyModule.cpp Thu Feb 13 15:10:13 2020 +0900 @@ -0,0 +1,38 @@ +//===--- tools/extra/clang-tidy/ClangTidyModule.cpp - Clang tidy tool -----===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception +// +//===----------------------------------------------------------------------===// +/// +/// \file Implements classes required to build clang-tidy modules. +/// +//===----------------------------------------------------------------------===// + +#include "ClangTidyModule.h" + +namespace clang { +namespace tidy { + +void ClangTidyCheckFactories::registerCheckFactory(StringRef Name, + CheckFactory Factory) { + Factories[std::string(Name)] = std::move(Factory); +} + +std::vector<std::unique_ptr<ClangTidyCheck>> +ClangTidyCheckFactories::createChecks(ClangTidyContext *Context) { + std::vector<std::unique_ptr<ClangTidyCheck>> Checks; + for (const auto &Factory : Factories) { + if (Context->isCheckEnabled(Factory.first)) + Checks.emplace_back(Factory.second(Factory.first, Context)); + } + return Checks; +} + +ClangTidyOptions ClangTidyModule::getModuleOptions() { + return ClangTidyOptions(); +} + +} // namespace tidy +} // namespace clang