class ParseModelFileAction
Declaration
class ParseModelFileAction : public ASTFrontendAction { /* full declaration omitted */ };
Description
Frontend action to parse model files. This frontend action is responsible for parsing model files. Model files can not be parsed on their own, they rely on type information that is available in another translation unit. The parsing of model files is done by a separate compiler instance that reuses the ASTContext and othen information from the main translation unit that is being compiled. After a model file is parsed, the function definitions will be collected into a StringMap.
Declared at: clang/include/clang/StaticAnalyzer/Frontend/FrontendActions.h:40
Inherits from: ASTFrontendAction
Member Variables
- private llvm::StringMap<Stmt*>& Bodies
Method Overview
- protected std::unique_ptr<ASTConsumer> CreateASTConsumer(clang::CompilerInstance & CI, llvm::StringRef InFile)
- public ParseModelFileAction(llvm::StringMap<Stmt *> & Bodies)
- public bool isModelParsingAction() const
Inherited from ASTFrontendAction:
Inherited from FrontendAction:
- protected BeginInvocation
- public BeginSourceFile
- protected BeginSourceFileAction
- protected CreateASTConsumer
- public EndSourceFile
- protected EndSourceFileAction
- public Execute
- protected ExecuteAction
- public PrepareToExecute
- protected PrepareToExecuteAction
- public getCompilerInstance
- public getCurrentASTUnit
- public getCurrentFile
- public getCurrentFileKind
- public getCurrentFileOrBufferName
- public getCurrentInput
- public getCurrentModule
- public getTranslationUnitKind
- public hasASTFileSupport
- public hasCodeCompletionSupport
- public hasIRSupport
- public hasPCHSupport
- public isCurrentFileAST
- public isModelParsingAction
- public setCompilerInstance
- public setCurrentInput
- protected shouldEraseOutputFiles
- public takeCurrentASTUnit
- public usesPreprocessorOnly
Methods
¶std::unique_ptr<ASTConsumer> CreateASTConsumer(
clang::CompilerInstance& CI,
llvm::StringRef InFile)
std::unique_ptr<ASTConsumer> CreateASTConsumer(
clang::CompilerInstance& CI,
llvm::StringRef InFile)
Description
Create the AST consumer object for this action, if supported. This routine is called as part of BeginSourceFile(), which will fail if the AST consumer cannot be created. This will not be called if the action has indicated that it only uses the preprocessor.
Declared at: clang/include/clang/StaticAnalyzer/Frontend/FrontendActions.h:46
Parameters
- clang::CompilerInstance& CI
- - The current compiler instance, provided as a convenience, see getCompilerInstance().
- llvm::StringRef InFile
- - The current input file, provided as a convenience, see getCurrentFile().
Returns
The new AST consumer, or null on failure.
¶ParseModelFileAction(
llvm::StringMap<Stmt*>& Bodies)
ParseModelFileAction(
llvm::StringMap<Stmt*>& Bodies)
Declared at: clang/include/clang/StaticAnalyzer/Frontend/FrontendActions.h:42
Parameters
- llvm::StringMap<Stmt*>& Bodies
¶bool isModelParsingAction() const
bool isModelParsingAction() const
Description
Is this action invoked on a model file? Model files are incomplete translation units that relies on type information from another translation unit. Check ParseModelFileAction for details.
Declared at: clang/include/clang/StaticAnalyzer/Frontend/FrontendActions.h:43