blob: 3a1278a3dae0309ef09478fee9403f4f61c72996 [file] [log] [blame]
Ted Kremenekf4381fd2008-07-02 00:03:09 +00001//===--- AnalysisConsumer.cpp - ASTConsumer for running Analyses ----------===//
2//
3// The LLVM Compiler Infrastructure
4//
5// This file is distributed under the University of Illinois Open Source
6// License. See LICENSE.TXT for details.
7//
8//===----------------------------------------------------------------------===//
9//
10// "Meta" ASTConsumer for running different source analyses.
11//
12//===----------------------------------------------------------------------===//
13
14#ifndef DRIVER_ANALYSISCONSUMER_H
15#define DRIVER_ANALYSISCONSUMER_H
16
17namespace clang {
18
19enum Analyses {
Ted Kremenek902141f2008-07-02 18:23:21 +000020 CFGDump,
21 CFGView,
Ted Kremenekf4381fd2008-07-02 00:03:09 +000022 WarnDeadStores,
Ted Kremenekb35a74a2008-07-02 00:44:58 +000023 WarnUninitVals,
Ted Kremenek235e0312008-07-02 18:11:29 +000024 DisplayLiveVariables,
Ted Kremenekbc46f342008-07-02 16:35:50 +000025 CheckerCFRef,
Ted Kremenek0d8019e2008-07-11 22:40:47 +000026 CheckerSimple,
27 CheckObjCMethSigs
Ted Kremenekf4381fd2008-07-02 00:03:09 +000028};
29
30ASTConsumer* CreateAnalysisConsumer(Analyses* Beg, Analyses* End,
31 Diagnostic &diags, Preprocessor* pp,
32 PreprocessorFactory* ppf,
33 const LangOptions& lopts,
34 const std::string& fname,
35 const std::string& htmldir,
36 bool visualize, bool trim,
37 bool analyzeAll);
38} // end clang namespace
39
40#endif