|
clang
5.0.0
|
Abstract base class to use for AST consumer-based frontend actions. More...
#include "clang/Frontend/FrontendAction.h"
Public Member Functions | |
| ASTFrontendAction () | |
| bool | usesPreprocessorOnly () const override |
| Does this action only use the preprocessor? More... | |
Public Member Functions inherited from clang::FrontendAction | |
| FrontendAction () | |
| virtual | ~FrontendAction () |
| CompilerInstance & | getCompilerInstance () const |
| void | setCompilerInstance (CompilerInstance *Value) |
| bool | isCurrentFileAST () const |
| const FrontendInputFile & | getCurrentInput () const |
| const StringRef | getCurrentFile () const |
| InputKind | getCurrentFileKind () const |
| ASTUnit & | getCurrentASTUnit () const |
| Module * | getCurrentModule () const |
| std::unique_ptr< ASTUnit > | takeCurrentASTUnit () |
| void | setCurrentInput (const FrontendInputFile &CurrentInput, std::unique_ptr< ASTUnit > AST=nullptr) |
| virtual bool | isModelParsingAction () const |
| Is this action invoked on a model file? More... | |
| virtual TranslationUnitKind | getTranslationUnitKind () |
| For AST-based actions, the kind of translation unit we're handling. More... | |
| virtual bool | hasPCHSupport () const |
| Does this action support use with PCH? More... | |
| virtual bool | hasASTFileSupport () const |
| Does this action support use with AST files? More... | |
| virtual bool | hasIRSupport () const |
| Does this action support use with IR files? More... | |
| virtual bool | hasCodeCompletionSupport () const |
| Does this action support use with code completion? More... | |
| bool | BeginSourceFile (CompilerInstance &CI, const FrontendInputFile &Input) |
Prepare the action for processing the input file Input. More... | |
| bool | Execute () |
| Set the source manager's main input file, and run the action. More... | |
| void | EndSourceFile () |
| Perform any per-file post processing, deallocate per-file objects, and run statistics and output file cleanup code. More... | |
Protected Member Functions | |
| void | ExecuteAction () override |
| Implement the ExecuteAction interface by running Sema on the already-initialized AST consumer. More... | |
Protected Member Functions inherited from clang::FrontendAction | |
| virtual std::unique_ptr < ASTConsumer > | CreateASTConsumer (CompilerInstance &CI, StringRef InFile)=0 |
| Create the AST consumer object for this action, if supported. More... | |
| virtual bool | BeginInvocation (CompilerInstance &CI) |
| Callback before starting processing a single input, giving the opportunity to modify the CompilerInvocation or do some other action before BeginSourceFileAction is called. More... | |
| virtual bool | BeginSourceFileAction (CompilerInstance &CI) |
| Callback at the start of processing a single input. More... | |
| virtual void | EndSourceFileAction () |
| Callback at the end of processing a single input. More... | |
| virtual bool | shouldEraseOutputFiles () |
| Callback at the end of processing a single input, to determine if the output files should be erased or not. More... | |
Abstract base class to use for AST consumer-based frontend actions.
Definition at line 225 of file FrontendAction.h.
|
inline |
Definition at line 235 of file FrontendAction.h.
|
overrideprotectedvirtual |
Implement the ExecuteAction interface by running Sema on the already-initialized AST consumer.
This will also take care of instantiating a code completion consumer if the user requested it and the action supports it.
Implements clang::FrontendAction.
Reimplemented in clang::VerifyPCHAction, and clang::DumpModuleInfoAction.
Definition at line 984 of file FrontendAction.cpp.
References clang::FrontendOptions::CodeCompletionAt, clang::CompilerInstance::createCodeCompletionConsumer(), clang::CompilerInstance::createSema(), clang::ParsedSourceLocation::FileName, clang::CompilerInstance::getCodeCompletionConsumer(), clang::FrontendAction::getCompilerInstance(), clang::CompilerInstance::getFrontendOpts(), clang::CompilerInstance::getSema(), clang::FrontendAction::getTranslationUnitKind(), clang::CompilerInstance::hasCodeCompletionConsumer(), clang::FrontendAction::hasCodeCompletionSupport(), clang::CompilerInstance::hasPreprocessor(), clang::CompilerInstance::hasSema(), clang::ParseAST(), clang::FrontendOptions::ShowStats, and clang::FrontendOptions::SkipFunctionBodies.
Referenced by clang::CodeGenAction::ExecuteAction().
|
inlineoverridevirtual |
Does this action only use the preprocessor?
If so no AST context will be created and this action will be invalid with AST file inputs.
Implements clang::FrontendAction.
Definition at line 236 of file FrontendAction.h.
1.8.6