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

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 46 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 147 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 57 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 61 of file ASTMutationListener.h.

◆ AddedCXXTemplateSpecialization() [2/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 72 of file ASTMutationListener.h.

◆ AddedCXXTemplateSpecialization() [3/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 67 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 108 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 54 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 88 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 51 of file ASTMutationListener.h.

◆ DeclarationMarkedOpenMPAllocate()

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

A declaration is marked as a variable with OpenMP allocator.

Parameters
Dthe declaration marked as a variable with OpenMP allocator.

Reimplemented in clang::MultiplexASTMutationListener.

Definition at line 133 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 127 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 120 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 114 of file ASTMutationListener.h.

◆ 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 11214 of file ASTContext.cpp.

◆ DefaultArgumentInstantiated()

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

A default argument was instantiated.

Reimplemented in clang::MultiplexASTMutationListener.

Definition at line 102 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 105 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 99 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 93 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 140 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 77 of file ASTMutationListener.h.

◆ 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 83 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 96 of file ASTMutationListener.h.


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