clang  10.0.0svn
Public Member Functions | List of all members
clang::ento::ModelConsumer Class Reference

ASTConsumer to consume model files' AST. More...

#include "clang/StaticAnalyzer/Frontend/ModelConsumer.h"

Inheritance diagram for clang::ento::ModelConsumer:
Inheritance graph
Collaboration diagram for clang::ento::ModelConsumer:
Collaboration graph

Public Member Functions

 ModelConsumer (llvm::StringMap< Stmt *> &Bodies)
bool HandleTopLevelDecl (DeclGroupRef D) override
 HandleTopLevelDecl - Handle the specified top-level declaration. More...
- Public Member Functions inherited from clang::ASTConsumer
 ASTConsumer ()
virtual ~ASTConsumer ()
virtual void Initialize (ASTContext &Context)
 Initialize - This is called to initialize the consumer, providing the ASTContext. More...
virtual void HandleInlineFunctionDefinition (FunctionDecl *D)
 This callback is invoked each time an inline (method or friend) function definition in a class is completed. More...
virtual void HandleInterestingDecl (DeclGroupRef D)
 HandleInterestingDecl - Handle the specified interesting declaration. More...
virtual void HandleTranslationUnit (ASTContext &Ctx)
 HandleTranslationUnit - This method is called when the ASTs for entire translation unit have been parsed. More...
virtual void HandleTagDeclDefinition (TagDecl *D)
 HandleTagDeclDefinition - This callback is invoked each time a TagDecl (e.g. More...
virtual void HandleTagDeclRequiredDefinition (const TagDecl *D)
 This callback is invoked the first time each TagDecl is required to be complete. More...
virtual void HandleCXXImplicitFunctionInstantiation (FunctionDecl *D)
 Invoked when a function is implicitly instantiated. More...
virtual void HandleTopLevelDeclInObjCContainer (DeclGroupRef D)
 Handle the specified top-level declaration that occurred inside and ObjC container. More...
virtual void HandleImplicitImportDecl (ImportDecl *D)
 Handle an ImportDecl that was implicitly created due to an inclusion directive. More...
virtual void CompleteTentativeDefinition (VarDecl *D)
 CompleteTentativeDefinition - Callback invoked at the end of a translation unit to notify the consumer that the given tentative definition should be completed. More...
virtual void AssignInheritanceModel (CXXRecordDecl *RD)
 Callback invoked when an MSInheritanceAttr has been attached to a CXXRecordDecl. More...
virtual void HandleCXXStaticMemberVarInstantiation (VarDecl *D)
 HandleCXXStaticMemberVarInstantiation - Tell the consumer that this. More...
virtual void HandleVTable (CXXRecordDecl *RD)
 Callback involved at the end of a translation unit to notify the consumer that a vtable for the given C++ class is required. More...
virtual ASTMutationListenerGetASTMutationListener ()
 If the consumer is interested in entities getting modified after their initial creation, it should return a pointer to an ASTMutationListener here. More...
virtual ASTDeserializationListenerGetASTDeserializationListener ()
 If the consumer is interested in entities being deserialized from AST files, it should return a pointer to a ASTDeserializationListener here. More...
virtual void PrintStats ()
 PrintStats - If desired, print any statistics. More...
virtual bool shouldSkipFunctionBody (Decl *D)
 This callback is called for each function if the Parser was initialized with SkipFunctionBodies set to true. More...

Detailed Description

ASTConsumer to consume model files' AST.

This consumer collects the bodies of function definitions into a StringMap from a model file.

Definition at line 31 of file ModelConsumer.h.

Constructor & Destructor Documentation

◆ ModelConsumer()

ModelConsumer::ModelConsumer ( llvm::StringMap< Stmt *> &  Bodies)

Definition at line 28 of file ModelConsumer.cpp.

Member Function Documentation

◆ HandleTopLevelDecl()

bool ModelConsumer::HandleTopLevelDecl ( DeclGroupRef  D)

HandleTopLevelDecl - Handle the specified top-level declaration.

This is called by the parser to process every top-level Decl*.

true to continue parsing, or false to abort parsing.

Reimplemented from clang::ASTConsumer.

Definition at line 31 of file ModelConsumer.cpp.

References clang::DeclGroupRef::begin(), clang::DeclGroupRef::end(), clang::FunctionDecl::getBody(), clang::NamedDecl::getName(), and clang::FunctionDecl::hasBody().

The documentation for this class was generated from the following files: