clang  6.0.0svn
Public Member Functions | List of all members
clang::ASTMutationListener Class Reference

An abstract interface that should be implemented by listeners that want to be notified when an AST entity gets modified after its initial creation. More...

#include "clang/AST/ASTMutationListener.h"

Inheritance diagram for clang::ASTMutationListener:
Inheritance graph
[legend]

Public Member Functions

virtual ~ASTMutationListener ()
 
virtual void CompletedTagDefinition (const TagDecl *D)
 A new TagDecl definition was completed. More...
 
virtual void AddedVisibleDecl (const DeclContext *DC, const Decl *D)
 A new declaration with name has been added to a DeclContext. More...
 
virtual void AddedCXXImplicitMember (const CXXRecordDecl *RD, const Decl *D)
 An implicit member was added after the definition was completed. More...
 
virtual void AddedCXXTemplateSpecialization (const ClassTemplateDecl *TD, const ClassTemplateSpecializationDecl *D)
 A template specialization (or partial one) was added to the template declaration. More...
 
virtual void AddedCXXTemplateSpecialization (const VarTemplateDecl *TD, const VarTemplateSpecializationDecl *D)
 A template specialization (or partial one) was added to the template declaration. More...
 
virtual void AddedCXXTemplateSpecialization (const FunctionTemplateDecl *TD, const FunctionDecl *D)
 A template specialization (or partial one) was added to the template declaration. More...
 
virtual void ResolvedExceptionSpec (const FunctionDecl *FD)
 A function's exception specification has been evaluated or instantiated. More...
 
virtual void DeducedReturnType (const FunctionDecl *FD, QualType ReturnType)
 A function's return type has been deduced. More...
 
virtual void ResolvedOperatorDelete (const CXXDestructorDecl *DD, const FunctionDecl *Delete, Expr *ThisArg)
 A virtual destructor's operator delete has been resolved. More...
 
virtual void CompletedImplicitDefinition (const FunctionDecl *D)
 An implicit member got a definition. More...
 
virtual void InstantiationRequested (const ValueDecl *D)
 The instantiation of a templated function or variable was requested. More...
 
virtual void VariableDefinitionInstantiated (const VarDecl *D)
 A templated variable's definition was implicitly instantiated. More...
 
virtual void FunctionDefinitionInstantiated (const FunctionDecl *D)
 A function template's definition was instantiated. More...
 
virtual void DefaultArgumentInstantiated (const ParmVarDecl *D)
 A default argument was instantiated. More...
 
virtual void DefaultMemberInitializerInstantiated (const FieldDecl *D)
 A default member initializer was instantiated. More...
 
virtual void AddedObjCCategoryToInterface (const ObjCCategoryDecl *CatD, const ObjCInterfaceDecl *IFD)
 A new objc category class was added for an interface. More...
 
virtual void DeclarationMarkedUsed (const Decl *D)
 A declaration is marked used which was not previously marked used. More...
 
virtual void DeclarationMarkedOpenMPThreadPrivate (const Decl *D)
 A declaration is marked as OpenMP threadprivate which was not previously marked as threadprivate. More...
 
virtual void DeclarationMarkedOpenMPDeclareTarget (const Decl *D, const Attr *Attr)
 A declaration is marked as OpenMP declaretarget which was not previously marked as declaretarget. More...
 
virtual void RedefinedHiddenDefinition (const NamedDecl *D, Module *M)
 A definition has been made visible by being redefined locally. More...
 
virtual void AddedAttributeToRecord (const Attr *Attr, const RecordDecl *Record)
 An attribute was added to a RecordDecl. More...
 

Detailed Description

An abstract interface that should be implemented by listeners that want to be notified when an AST entity gets modified after its initial creation.

Definition at line 47 of file ASTMutationListener.h.

Constructor & Destructor Documentation

◆ ~ASTMutationListener()

ASTMutationListener::~ASTMutationListener ( )
virtualdefault

Member Function Documentation

◆ AddedAttributeToRecord()

virtual void clang::ASTMutationListener::AddedAttributeToRecord ( const Attr Attr,
const RecordDecl Record 
)
inlinevirtual

An attribute was added to a RecordDecl.

Parameters
AttrThe attribute that was added to the Record
RecordThe RecordDecl that got a new attribute

Reimplemented in clang::MultiplexASTMutationListener.

Definition at line 143 of file ASTMutationListener.h.

◆ AddedCXXImplicitMember()

virtual void clang::ASTMutationListener::AddedCXXImplicitMember ( const CXXRecordDecl RD,
const Decl D 
)
inlinevirtual

An implicit member was added after the definition was completed.

Reimplemented in clang::MultiplexASTMutationListener.

Definition at line 58 of file ASTMutationListener.h.

◆ AddedCXXTemplateSpecialization() [1/3]

virtual void clang::ASTMutationListener::AddedCXXTemplateSpecialization ( const ClassTemplateDecl TD,
const ClassTemplateSpecializationDecl D 
)
inlinevirtual

A template specialization (or partial one) was added to the template declaration.

Reimplemented in clang::MultiplexASTMutationListener.

Definition at line 62 of file ASTMutationListener.h.

◆ AddedCXXTemplateSpecialization() [2/3]

virtual void clang::ASTMutationListener::AddedCXXTemplateSpecialization ( const VarTemplateDecl TD,
const VarTemplateSpecializationDecl D 
)
inlinevirtual

A template specialization (or partial one) was added to the template declaration.

Reimplemented in clang::MultiplexASTMutationListener.

Definition at line 68 of file ASTMutationListener.h.

◆ AddedCXXTemplateSpecialization() [3/3]

virtual void clang::ASTMutationListener::AddedCXXTemplateSpecialization ( const FunctionTemplateDecl TD,
const FunctionDecl D 
)
inlinevirtual

A template specialization (or partial one) was added to the template declaration.

Reimplemented in clang::MultiplexASTMutationListener.

Definition at line 73 of file ASTMutationListener.h.

◆ AddedObjCCategoryToInterface()

virtual void clang::ASTMutationListener::AddedObjCCategoryToInterface ( const ObjCCategoryDecl CatD,
const ObjCInterfaceDecl IFD 
)
inlinevirtual

A new objc category class was added for an interface.

Reimplemented in clang::MultiplexASTMutationListener.

Definition at line 109 of file ASTMutationListener.h.

◆ AddedVisibleDecl()

virtual void clang::ASTMutationListener::AddedVisibleDecl ( const DeclContext DC,
const Decl D 
)
inlinevirtual

A new declaration with name has been added to a DeclContext.

Reimplemented in clang::MultiplexASTMutationListener.

Definition at line 55 of file ASTMutationListener.h.

◆ CompletedImplicitDefinition()

virtual void clang::ASTMutationListener::CompletedImplicitDefinition ( const FunctionDecl D)
inlinevirtual

An implicit member got a definition.

Reimplemented in clang::MultiplexASTMutationListener.

Definition at line 89 of file ASTMutationListener.h.

◆ CompletedTagDefinition()

virtual void clang::ASTMutationListener::CompletedTagDefinition ( const TagDecl D)
inlinevirtual

A new TagDecl definition was completed.

Reimplemented in clang::MultiplexASTMutationListener.

Definition at line 52 of file ASTMutationListener.h.

◆ DeclarationMarkedOpenMPDeclareTarget()

virtual void clang::ASTMutationListener::DeclarationMarkedOpenMPDeclareTarget ( const Decl D,
const Attr Attr 
)
inlinevirtual

A declaration is marked as OpenMP declaretarget which was not previously marked as declaretarget.

Parameters
Dthe declaration marked OpenMP declaretarget.
Attrthe added attribute.

Reimplemented in clang::MultiplexASTMutationListener.

Definition at line 128 of file ASTMutationListener.h.

◆ DeclarationMarkedOpenMPThreadPrivate()

virtual void clang::ASTMutationListener::DeclarationMarkedOpenMPThreadPrivate ( const Decl D)
inlinevirtual

A declaration is marked as OpenMP threadprivate which was not previously marked as threadprivate.

Parameters
Dthe declaration marked OpenMP threadprivate.

Reimplemented in clang::MultiplexASTMutationListener.

Definition at line 121 of file ASTMutationListener.h.

◆ DeclarationMarkedUsed()

virtual void clang::ASTMutationListener::DeclarationMarkedUsed ( const Decl D)
inlinevirtual

A declaration is marked used which was not previously marked used.

Parameters
Dthe declaration marked used

Reimplemented in clang::MultiplexASTMutationListener.

Definition at line 115 of file ASTMutationListener.h.

Referenced by clang::Decl::markUsed().

◆ DeducedReturnType()

void ASTMutationListener::DeducedReturnType ( const FunctionDecl FD,
QualType  ReturnType 
)
virtual

A function's return type has been deduced.

Reimplemented in clang::MultiplexASTMutationListener.

Definition at line 8840 of file ASTContext.cpp.

Referenced by ResolvedExceptionSpec().

◆ DefaultArgumentInstantiated()

virtual void clang::ASTMutationListener::DefaultArgumentInstantiated ( const ParmVarDecl D)
inlinevirtual

A default argument was instantiated.

Reimplemented in clang::MultiplexASTMutationListener.

Definition at line 103 of file ASTMutationListener.h.

◆ DefaultMemberInitializerInstantiated()

virtual void clang::ASTMutationListener::DefaultMemberInitializerInstantiated ( const FieldDecl D)
inlinevirtual

A default member initializer was instantiated.

Reimplemented in clang::MultiplexASTMutationListener.

Definition at line 106 of file ASTMutationListener.h.

◆ FunctionDefinitionInstantiated()

virtual void clang::ASTMutationListener::FunctionDefinitionInstantiated ( const FunctionDecl D)
inlinevirtual

A function template's definition was instantiated.

Reimplemented in clang::MultiplexASTMutationListener.

Definition at line 100 of file ASTMutationListener.h.

◆ InstantiationRequested()

virtual void clang::ASTMutationListener::InstantiationRequested ( const ValueDecl D)
inlinevirtual

The instantiation of a templated function or variable was requested.

In particular, the point of instantiation and template specialization kind of D may have changed.

Reimplemented in clang::MultiplexASTMutationListener.

Definition at line 94 of file ASTMutationListener.h.

◆ RedefinedHiddenDefinition()

virtual void clang::ASTMutationListener::RedefinedHiddenDefinition ( const NamedDecl D,
Module M 
)
inlinevirtual

A definition has been made visible by being redefined locally.

Parameters
DThe definition that was previously not visible.
MThe containing module in which the definition was made visible, if any.

Reimplemented in clang::MultiplexASTMutationListener.

Definition at line 136 of file ASTMutationListener.h.

Referenced by clang::ASTContext::mergeDefinitionIntoModule().

◆ ResolvedExceptionSpec()

virtual void clang::ASTMutationListener::ResolvedExceptionSpec ( const FunctionDecl FD)
inlinevirtual

A function's exception specification has been evaluated or instantiated.

Reimplemented in clang::MultiplexASTMutationListener.

Definition at line 78 of file ASTMutationListener.h.

References DeducedReturnType().

◆ ResolvedOperatorDelete()

virtual void clang::ASTMutationListener::ResolvedOperatorDelete ( const CXXDestructorDecl DD,
const FunctionDecl Delete,
Expr ThisArg 
)
inlinevirtual

A virtual destructor's operator delete has been resolved.

Reimplemented in clang::MultiplexASTMutationListener.

Definition at line 84 of file ASTMutationListener.h.

◆ VariableDefinitionInstantiated()

virtual void clang::ASTMutationListener::VariableDefinitionInstantiated ( const VarDecl D)
inlinevirtual

A templated variable's definition was implicitly instantiated.

Reimplemented in clang::MultiplexASTMutationListener.

Definition at line 97 of file ASTMutationListener.h.


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