blob: f7d2182f4049908279607efd70464e82d01e8982 [file] [log] [blame]
Chris Lattnereb8c9632007-10-07 06:04:32 +00001//===--- ASTConsumers.h - ASTConsumer implementations -----------*- C++ -*-===//
Chris Lattner4b009652007-07-25 00:24:17 +00002//
3// The LLVM Compiler Infrastructure
4//
Chris Lattnereb8c9632007-10-07 06:04:32 +00005// This file was developed by Chris Lattner and is distributed under the
Chris Lattner4b009652007-07-25 00:24:17 +00006// University of Illinois Open Source License. See LICENSE.TXT for details.
7//
8//===----------------------------------------------------------------------===//
9//
Chris Lattnereb8c9632007-10-07 06:04:32 +000010// AST Consumers.
Chris Lattner4b009652007-07-25 00:24:17 +000011//
12//===----------------------------------------------------------------------===//
13
Chris Lattnereb8c9632007-10-07 06:04:32 +000014#ifndef DRIVER_ASTCONSUMERS_H
15#define DRIVER_ASTCONSUMERS_H
Chris Lattner4b009652007-07-25 00:24:17 +000016
Ted Kremeneke09391a2007-11-27 21:46:50 +000017#include <stdio.h>
18
Chris Lattner4b009652007-07-25 00:24:17 +000019namespace clang {
20
Chris Lattner1cc01712007-09-15 22:56:56 +000021class ASTConsumer;
Chris Lattner52332d02007-09-15 23:21:08 +000022class Diagnostic;
Chris Lattnerdb6be562007-11-28 05:34:05 +000023struct LangOptions;
Chris Lattner4b009652007-07-25 00:24:17 +000024
Ted Kremeneke09391a2007-11-27 21:46:50 +000025ASTConsumer *CreateASTPrinter(FILE* FP = NULL);
Chris Lattnerb73abd52007-09-15 23:02:28 +000026ASTConsumer *CreateASTDumper();
Ted Kremenekb6976a22007-09-19 21:29:43 +000027ASTConsumer *CreateASTViewer();
Chris Lattner52332d02007-09-15 23:21:08 +000028ASTConsumer *CreateCFGDumper(bool ViewGraphs = false);
29ASTConsumer *CreateLiveVarAnalyzer();
30ASTConsumer *CreateDeadStoreChecker(Diagnostic &Diags);
Ted Kremenek0a03ce62007-09-17 20:49:30 +000031ASTConsumer *CreateUnitValsChecker(Diagnostic &Diags);
Chris Lattnerdb6be562007-11-28 05:34:05 +000032ASTConsumer *CreateLLVMEmitter(Diagnostic &Diags, const LangOptions &Features);
Chris Lattnerb429ae42007-10-11 00:43:27 +000033ASTConsumer *CreateCodeRewriterTest();
Ted Kremenek221bb8d2007-10-16 23:37:27 +000034ASTConsumer *CreateSerializationTest();
Ted Kremeneke805c4a2007-09-06 23:00:42 +000035
Chris Lattner4b009652007-07-25 00:24:17 +000036} // end clang namespace
37
38#endif