1 //===--- ClangSACheckers.h - Registration functions for Checkers *- C++ -*-===//
2 //
3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4 // See https://llvm.org/LICENSE.txt for license information.
5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6 //
7 //===----------------------------------------------------------------------===//
8 //
9 // Declares the registation functions for the checkers defined in
10 // libclangStaticAnalyzerCheckers.
11 //
12 //===----------------------------------------------------------------------===//
13 
14 #ifndef LLVM_CLANG_LIB_STATICANALYZER_CHECKERS_CLANGSACHECKERS_H
15 #define LLVM_CLANG_LIB_STATICANALYZER_CHECKERS_CLANGSACHECKERS_H
16 
17 #include "clang/StaticAnalyzer/Core/BugReporter/CommonBugCategories.h"
18 
19 namespace clang {
20 
21 class LangOptions;
22 
23 namespace ento {
24 
25 class CheckerManager;
26 class CheckerRegistry;
27 
28 #define GET_CHECKERS
29 #define CHECKER(FULLNAME, CLASS, HELPTEXT, DOC_URI, IS_HIDDEN)                 \
30   void register##CLASS(CheckerManager &mgr);                                   \
31   bool shouldRegister##CLASS(const LangOptions &LO);
32 #include "clang/StaticAnalyzer/Checkers/Checkers.inc"
33 #undef CHECKER
34 #undef GET_CHECKERS
35 
36 } // end ento namespace
37 
38 } // end clang namespace
39 
40 #endif
41