10 #ifndef LLVM_CLANG_FRONTEND_FRONTENDACTIONS_H 11 #define LLVM_CLANG_FRONTEND_FRONTENDACTIONS_H 27 void ExecuteAction()
override;
30 StringRef InFile)
override;
45 StringRef InFile)
override;
51 StringRef InFile)
override;
57 StringRef InFile)
override;
63 StringRef InFile)
override;
69 StringRef InFile)
override;
75 StringRef InFile)
override;
91 std::string &Sysroot);
95 static std::unique_ptr<llvm::raw_pwrite_stream>
97 std::string &OutputFile);
103 virtual std::unique_ptr<raw_pwrite_stream>
108 StringRef InFile)
override;
121 std::unique_ptr<raw_pwrite_stream>
129 std::unique_ptr<raw_pwrite_stream>
136 StringRef InFile)
override;
148 StringRef InFile)
override;
150 void ExecuteAction()
override;
162 StringRef InFile)
override;
164 void ExecuteAction()
override;
180 std::unique_ptr<FrontendAction> AdaptedAction;
183 std::vector<std::string> ASTFiles;
187 StringRef InFile)
override;
191 void ExecuteAction()
override;
208 void ExecuteAction()
override;
210 StringRef)
override {
223 void ExecuteAction()
override;
228 void ExecuteAction()
override;
233 void ExecuteAction()
override;
238 void ExecuteAction()
override;
243 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.
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.
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.