clang  7.0.0svn
Utils.h
Go to the documentation of this file.
1 //===--- Utils.h - Misc utilities for the front-end -------------*- C++ -*-===//
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 // This header contains miscellaneous utilities for various front-end actions
11 // which were split from Frontend to minimise Frontend's dependencies.
12 //
13 //===----------------------------------------------------------------------===//
14 
15 #ifndef LLVM_CLANG_FRONTENDTOOL_UTILS_H
16 #define LLVM_CLANG_FRONTENDTOOL_UTILS_H
17 
18 #include <memory>
19 
20 namespace clang {
21 
22 class CompilerInstance;
23 class FrontendAction;
24 
25 /// Construct the FrontendAction of a compiler invocation based on the
26 /// options specified for the compiler invocation.
27 ///
28 /// \return - The created FrontendAction object
29 std::unique_ptr<FrontendAction> CreateFrontendAction(CompilerInstance &CI);
30 
31 /// ExecuteCompilerInvocation - Execute the given actions described by the
32 /// compiler invocation object in the given compiler instance.
33 ///
34 /// \return - True on success.
35 bool ExecuteCompilerInvocation(CompilerInstance *Clang);
36 
37 } // end namespace clang
38 
39 #endif
std::unique_ptr< FrontendAction > CreateFrontendAction(CompilerInstance &CI)
Construct the FrontendAction of a compiler invocation based on the options specified for the compiler...
Dataflow Directional Tag Classes.
bool ExecuteCompilerInvocation(CompilerInstance *Clang)
ExecuteCompilerInvocation - Execute the given actions described by the compiler invocation object in ...