clang
3.7.0
|
ASTConsumer to consume model files' AST. More...
#include <ModelConsumer.h>
Public Member Functions | |
ModelConsumer (llvm::StringMap< Stmt * > &Bodies) | |
bool | HandleTopLevelDecl (DeclGroupRef D) override |
![]() | |
ASTConsumer () | |
virtual | ~ASTConsumer () |
virtual void | Initialize (ASTContext &Context) |
virtual void | HandleInlineMethodDefinition (CXXMethodDecl *D) |
This callback is invoked each time an inline method definition is completed. More... | |
virtual void | HandleInterestingDecl (DeclGroupRef D) |
virtual void | HandleTranslationUnit (ASTContext &Ctx) |
virtual void | HandleTagDeclDefinition (TagDecl *D) |
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. Note that at this point point it does not have a body, its body is instantiated at the end of the translation unit and passed to HandleTopLevelDecl. More... | |
virtual void | HandleTopLevelDeclInObjCContainer (DeclGroupRef D) |
Handle the specified top-level declaration that occurred inside and ObjC container. The default implementation ignored them. More... | |
virtual void | HandleImplicitImportDecl (ImportDecl *D) |
Handle an ImportDecl that was implicitly created due to an inclusion directive. The default implementation passes it to HandleTopLevelDecl. More... | |
virtual void | HandleLinkerOptionPragma (llvm::StringRef Opts) |
Handle a pragma that appends to Linker Options. Currently this only exists to support Microsoft's #pragma comment(linker, "/foo"). More... | |
virtual void | HandleDetectMismatch (llvm::StringRef Name, llvm::StringRef Value) |
Handle a pragma that emits a mismatch identifier and value to the object file for the linker to work with. Currently, this only exists to support Microsoft's #pragma detect_mismatch. More... | |
virtual void | HandleDependentLibrary (llvm::StringRef Lib) |
Handle a dependent library created by a pragma in the source. Currently this only exists to support Microsoft's #pragma comment(lib, "/foo"). More... | |
virtual void | CompleteTentativeDefinition (VarDecl *D) |
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 ASTMutationListener * | GetASTMutationListener () |
If the consumer is interested in entities getting modified after their initial creation, it should return a pointer to an ASTMutationListener here. More... | |
virtual ASTDeserializationListener * | GetASTDeserializationListener () |
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... | |
ASTConsumer to consume model files' AST.
This consumer collects the bodies of function definitions into a StringMap from a model file.
Definition at line 32 of file ModelConsumer.h.
ModelConsumer::ModelConsumer | ( | llvm::StringMap< Stmt * > & | Bodies | ) |
Definition at line 29 of file ModelConsumer.cpp.
|
overridevirtual |
HandleTopLevelDecl - Handle the specified top-level declaration. This is called by the parser to process every top-level Decl*.
Reimplemented from clang::ASTConsumer.
Definition at line 32 of file ModelConsumer.cpp.
References clang::DeclGroupRef::begin(), clang::DeclGroupRef::end(), clang::FunctionDecl::getBody(), clang::NamedDecl::getName(), and clang::FunctionDecl::hasBody().