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) {}
FunctionDecl - An instance of this class is created to represent a function declaration or definition...
virtual void HandleCXXStaticMemberVarInstantiation(VarDecl *D)
HandleCXXStaticMemberVarInstantiation - Tell the consumer that this.
ASTConsumer - This is an abstract interface that should be implemented by clients that read ASTs...
Decl - This represents one declaration (or definition), e.g.
The l-value was an access to a declared entity or something equivalently strong, like the address of ...
virtual void PrintStats()
PrintStats - If desired, print any statistics.
VarDecl - An instance of this class is created to represent a variable declaration or definition...
class LLVM_ALIGNAS(8) DependentTemplateSpecializationType const IdentifierInfo * Name
Represents a template specialization type whose template cannot be resolved, e.g. ...
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)
HandleInterestingDecl - Handle the specified interesting declaration.
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)
HandleTranslationUnit - This method is called when the ASTs for entire translation unit have been par...
virtual void HandleLinkerOptionPragma(llvm::StringRef Opts)
Handle a pragma that appends to Linker Options.
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.
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.
virtual void HandleCXXImplicitFunctionInstantiation(FunctionDecl *D)
Invoked when a function is implicitly instantiated.
virtual void HandleTopLevelDeclInObjCContainer(DeclGroupRef D)
Handle the specified top-level declaration that occurred inside and ObjC container.
virtual void Initialize(ASTContext &Context)
Initialize - This is called to initialize the consumer, providing the ASTContext. ...
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)
HandleTopLevelDecl - Handle the specified top-level declaration.
virtual void CompleteTentativeDefinition(VarDecl *D)
CompleteTentativeDefinition - Callback invoked at the end of a translation unit to notify the consume...
virtual void HandleTagDeclDefinition(TagDecl *D)
HandleTagDeclDefinition - This callback is invoked each time a TagDecl (e.g.