Module.cxx 940 B

123456789101112131415161718192021222324252627282930
  1. /* Distributed under the OSI-approved BSD 3-Clause License. See accompanying
  2. file Copyright.txt or https://cmake.org/licensing for details. */
  3. #include <clang-tidy/ClangTidyModule.h>
  4. #include <clang-tidy/ClangTidyModuleRegistry.h>
  5. #include "UseBespokeEnumClassCheck.h"
  6. #include "UseCmstrlenCheck.h"
  7. #include "UseCmsysFstreamCheck.h"
  8. namespace clang {
  9. namespace tidy {
  10. namespace cmake {
  11. class CMakeClangTidyModule : public ClangTidyModule
  12. {
  13. public:
  14. void addCheckFactories(ClangTidyCheckFactories& CheckFactories) override
  15. {
  16. CheckFactories.registerCheck<UseCmstrlenCheck>("cmake-use-cmstrlen");
  17. CheckFactories.registerCheck<UseCmsysFstreamCheck>(
  18. "cmake-use-cmsys-fstream");
  19. CheckFactories.registerCheck<UseBespokeEnumClassCheck>(
  20. "cmake-use-bespoke-enum-class");
  21. }
  22. };
  23. static ClangTidyModuleRegistry::Add<CMakeClangTidyModule> X(
  24. "cmake-clang-tidy", "Adds lint checks for the CMake code base.");
  25. }
  26. }
  27. }