blob: 83f3cf67eb2c0c79ffb213c9c51b875ee2bb7dd0 [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,
26 CheckerSimple
Ted Kremenekf4381fd2008-07-02 00:03:09 +000027};
28
29ASTConsumer* CreateAnalysisConsumer(Analyses* Beg, Analyses* End,
30 Diagnostic &diags, Preprocessor* pp,
31 PreprocessorFactory* ppf,
32 const LangOptions& lopts,
33 const std::string& fname,
34 const std::string& htmldir,
35 bool visualize, bool trim,
36 bool analyzeAll);
37} // end clang namespace
38
39#endif