14 #ifndef LLVM_CLANG_AST_ASTCONSUMER_H
15 #define LLVM_CLANG_AST_ASTCONSUMER_H
17 #include "llvm/ADT/StringRef.h"
25 class ASTMutationListener;
26 class ASTDeserializationListener;
105 llvm::StringRef
Value) {}
virtual void HandleCXXStaticMemberVarInstantiation(VarDecl *D)
HandleCXXStaticMemberVarInstantiation - Tell the consumer that this.
virtual void PrintStats()
PrintStats - If desired, print any statistics.
Holds long-lived AST nodes (such as types and decls) that can be referred to throughout the semantic ...
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 ...
virtual void HandleTagDeclRequiredDefinition(const TagDecl *D)
This callback is invoked the first time each TagDecl is required to be complete.
An abstract interface that should be implemented by clients that read ASTs and then require further s...
virtual void HandleInterestingDecl(DeclGroupRef D)
virtual void HandleVTable(CXXRecordDecl *RD)
Callback involved at the end of a translation unit to notify the consumer that a vtable for the given...
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.
An abstract interface that should be implemented by listeners that want to be notified when an AST en...
virtual void HandleTranslationUnit(ASTContext &Ctx)
virtual void HandleLinkerOptionPragma(llvm::StringRef Opts)
Handle a pragma that appends to Linker Options. Currently this only exists to support Microsoft's #pr...
TagDecl - Represents the declaration of a struct/union/class/enum.
Represents a static or instance method of a struct/union/class.
virtual void HandleInlineMethodDefinition(CXXMethodDecl *D)
This callback is invoked each time an inline method definition is completed.
virtual ASTDeserializationListener * GetASTDeserializationListener()
If the consumer is interested in entities being deserialized from AST files, it should return a point...
virtual void HandleDependentLibrary(llvm::StringRef Lib)
Handle a dependent library created by a pragma in the source. Currently this only exists to support M...
Describes a module import declaration, which makes the contents of the named module visible in the cu...
virtual void HandleImplicitImportDecl(ImportDecl *D)
Handle an ImportDecl that was implicitly created due to an inclusion directive. The default implement...
virtual void HandleCXXImplicitFunctionInstantiation(FunctionDecl *D)
Invoked when a function is implicitly instantiated. Note that at this point point it does not have a ...
virtual void HandleTopLevelDeclInObjCContainer(DeclGroupRef D)
Handle the specified top-level declaration that occurred inside and ObjC container. The default implementation ignored them.
virtual void Initialize(ASTContext &Context)
Represents a C++ struct/union/class.
virtual bool shouldSkipFunctionBody(Decl *D)
This callback is called for each function if the Parser was initialized with SkipFunctionBodies set t...
virtual bool HandleTopLevelDecl(DeclGroupRef D)
virtual void CompleteTentativeDefinition(VarDecl *D)
virtual void HandleTagDeclDefinition(TagDecl *D)