10 #ifndef LLVM_CLANG_FRONTEND_FRONTENDACTIONS_H 11 #define LLVM_CLANG_FRONTEND_FRONTENDACTIONS_H 27 void ExecuteAction()
override;
30 StringRef InFile)
override;
40 StringRef InFile)
override {
44 void ExecuteAction()
override;
57 StringRef InFile)
override;
63 StringRef InFile)
override;
69 StringRef InFile)
override;
75 StringRef InFile)
override;
81 StringRef InFile)
override;
87 StringRef InFile)
override;
103 std::string &Sysroot);
107 static std::unique_ptr<llvm::raw_pwrite_stream>
109 std::string &OutputFile);
115 virtual std::unique_ptr<raw_pwrite_stream>
120 StringRef InFile)
override;
133 std::unique_ptr<raw_pwrite_stream>
141 std::unique_ptr<raw_pwrite_stream>
147 std::unique_ptr<llvm::MemoryBuffer> Buffer;
148 std::vector<std::string> ModuleHeaders;
154 std::unique_ptr<raw_pwrite_stream>
161 StringRef InFile)
override;
173 StringRef InFile)
override;
175 void ExecuteAction()
override;
187 StringRef InFile)
override;
189 void ExecuteAction()
override;
198 StringRef InFile)
override;
200 void ExecuteAction()
override;
213 std::unique_ptr<FrontendAction> AdaptedAction;
216 std::vector<std::string> ASTFiles;
220 StringRef InFile)
override;
224 void ExecuteAction()
override;
241 void ExecuteAction()
override;
243 StringRef)
override {
256 void ExecuteAction()
override;
261 void ExecuteAction()
override;
266 void ExecuteAction()
override;
271 void ExecuteAction()
override;
bool hasCodeCompletionSupport() const override
Does this action support use with code completion?
Dump information about the given module file, to be used for basic debugging and discovery.
Abstract base class for actions which can be performed by the frontend.
The translation unit is a prefix to a translation unit, and is not complete.
virtual bool hasASTFileSupport() const
Does this action support use with AST files?
TranslationUnitKind getTranslationUnitKind() override
For AST-based actions, the kind of translation unit we're handling.
virtual bool hasCodeCompletionSupport() const
Does this action support use with code completion?
bool hasPCHSupport() const override
Does this action support use with PCH?
friend class ASTMergeAction
bool hasIRSupport() const override
Does this action support use with IR files?
bool hasPCHSupport() const override
Does this action support use with PCH?
virtual bool BeginInvocation(CompilerInstance &CI)
Callback before starting processing a single input, giving the opportunity to modify the CompilerInvo...
std::unique_ptr< ASTConsumer > CreateASTConsumer(CompilerInstance &, StringRef) override
Create the AST consumer object for this action, if supported.
bool usesPreprocessorOnly() const override
Does this action only use the preprocessor?
virtual bool shouldEraseOutputFiles()
Callback at the end of processing a single input, to determine if the output files should be erased o...
bool hasCodeCompletionSupport() const override
Does this action support use with code completion?
bool hasASTFileSupport() const override
Does this action support use with AST files?
bool hasASTFileSupport() const override
Does this action support use with AST files?
virtual void EndSourceFileAction()
Callback at the end of processing a single input.
virtual bool hasPCHSupport() const
Does this action support use with PCH?
Frontend action adaptor that merges ASTs together.
CompilerInstance - Helper class for managing a single instance of the Clang compiler.
virtual TranslationUnitKind getTranslationUnitKind()
For AST-based actions, the kind of translation unit we're handling.
bool hasASTFileSupport() const override
Does this action support use with AST files?
Abstract base class to use for AST consumer-based frontend actions.
virtual bool PrepareToExecuteAction(CompilerInstance &CI)
Prepare to execute the action on the given CompilerInstance.
Abstract base class to use for preprocessor-based frontend actions.
TranslationUnitKind getTranslationUnitKind() override
For AST-based actions, the kind of translation unit we're handling.
Dataflow Directional Tag Classes.
bool usesPreprocessorOnly() const override
Does this action only use the preprocessor?
virtual bool BeginSourceFileAction(CompilerInstance &CI)
Callback at the start of processing a single input.
TranslationUnitKind
Describes the kind of translation unit being processed.
bool usesPreprocessorOnly() const override
Does this action only use the preprocessor?
bool hasCodeCompletionSupport() const override
Does this action support use with code completion?
Defines the clang::FrontendAction interface and various convenience abstract classes (clang::ASTFront...
The translation unit is a module.