blob: dfabe79e56bad51b37739a2417b8dc31fd8f1813 [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 Kremenekfb9a48c2008-07-14 23:41:13 +000020#define ANALYSIS(NAME, CMDFLAG, DESC) NAME,
21#include "Analyses.def"
22NumAnalyses
Ted Kremenekf4381fd2008-07-02 00:03:09 +000023};
Ted Kremenekfb9a48c2008-07-14 23:41:13 +000024
Ted Kremenekf4381fd2008-07-02 00:03:09 +000025ASTConsumer* CreateAnalysisConsumer(Analyses* Beg, Analyses* End,
26 Diagnostic &diags, Preprocessor* pp,
27 PreprocessorFactory* ppf,
28 const LangOptions& lopts,
29 const std::string& fname,
30 const std::string& htmldir,
31 bool visualize, bool trim,
32 bool analyzeAll);
33} // end clang namespace
34
35#endif