tidy_module.cpp 1.2 KB

12345678910111213141516171819202122232425262728293031
  1. #include <contrib/libs/clang16/tools/extra/clang-tidy/ClangTidy.h>
  2. #include <contrib/libs/clang16/tools/extra/clang-tidy/ClangTidyModule.h>
  3. #include <contrib/libs/clang16/tools/extra/clang-tidy/ClangTidyModuleRegistry.h>
  4. #include "taxi_coroutine_unsafe_check.h"
  5. #include "taxi_dangling_config_ref_check.h"
  6. #include "usage_restriction_checks.h"
  7. using namespace clang::ast_matchers;
  8. namespace clang::tidy::arcadia {
  9. class ArcadiaModule: public ClangTidyModule {
  10. public:
  11. void addCheckFactories(ClangTidyCheckFactories& CheckFactories) override {
  12. CheckFactories.registerCheck<misc::TaxiCoroutineUnsafeCheck>(
  13. "arcadia-taxi-coroutine-unsafe");
  14. CheckFactories.registerCheck<misc::TaxiDanglingConfigRefCheck>(
  15. "arcadia-taxi-dangling-config-ref");
  16. // https://st.yandex-team.ru/IGNIETFERRO-1863
  17. CheckFactories.registerCheck<TypeidNameRestrictionCheck>(
  18. "arcadia-typeid-name-restriction");
  19. }
  20. };
  21. // Register the ArcadiaTidyModule using this statically initialized variable.
  22. static ClangTidyModuleRegistry::Add<ArcadiaModule>
  23. X("arcadia-module", "Adds Arcadia specific lint checks.");
  24. }