1 //===--- PathDiagnosticConsumers.h - Path Diagnostic Clients ------*- C++ -*-===//
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
7 //===----------------------------------------------------------------------===//
9 // This file defines the interface to create different path diagostic clients.
11 //===----------------------------------------------------------------------===//
13 #ifndef LLVM_CLANG_STATICANALYZER_CORE_PATHDIAGNOSTICCONSUMERS_H
14 #define LLVM_CLANG_STATICANALYZER_CORE_PATHDIAGNOSTICCONSUMERS_H
21 class AnalyzerOptions;
26 class PathDiagnosticConsumer;
27 typedef std::vector<PathDiagnosticConsumer*> PathDiagnosticConsumers;
29 #define ANALYSIS_DIAGNOSTICS(NAME, CMDFLAG, DESC, CREATEFN)\
30 void CREATEFN(AnalyzerOptions &AnalyzerOpts,\
31 PathDiagnosticConsumers &C,\
32 const std::string &Prefix,\
33 const Preprocessor &PP);
34 #include "clang/StaticAnalyzer/Core/Analyses.def"
36 } // end 'ento' namespace
37 } // end 'clang' namespace