Clang Project

clang_source_code/include/clang/StaticAnalyzer/Checkers/BuiltinCheckerRegistration.h
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
19namespace clang {
20
21class LangOptions;
22
23namespace ento {
24
25class CheckerManager;
26class CheckerRegistry;
27
28#define GET_CHECKERS
29#define CHECKER(FULLNAME, CLASS, HELPTEXT, DOC_URI)                            \
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