clang 24.0.0git
clang::ASTDeclUnmerger Class Reference

Removes decls introduced in the discarding PTU and restores the redeclaration chain to previous state. More...

Inheritance diagram for clang::ASTDeclUnmerger:
[legend]

Public Member Functions

 ASTDeclUnmerger (Sema &S, TranslationUnitDecl *DiscardedTU)
void VisitDecl (Decl *D)
void VisitFunctionDecl (FunctionDecl *D)
void VisitNamespaceAliasDecl (NamespaceAliasDecl *D)
void VisitTypedefNameDecl (TypedefNameDecl *D)
void VisitUsingShadowDecl (UsingShadowDecl *D)
void VisitVarDecl (VarDecl *D)
void VisitTagDecl (TagDecl *D)
void VisitRedeclarableTemplateDecl (RedeclarableTemplateDecl *D)
void VisitNamespaceDecl (NamespaceDecl *D)
void VisitTranslationUnitDecl (TranslationUnitDecl *D)
Public Member Functions inherited from clang::declvisitor::Base< std::add_pointer, ASTDeclUnmerger, void >
void Visit (PTR(Decl) D)
void VisitDecl (PTR(Decl) D)

Detailed Description

Removes decls introduced in the discarding PTU and restores the redeclaration chain to previous state.

Definition at line 199 of file IncrementalParser.cpp.

Constructor & Destructor Documentation

◆ ASTDeclUnmerger()

clang::ASTDeclUnmerger::ASTDeclUnmerger ( Sema & S,
TranslationUnitDecl * DiscardedTU )
inline

Definition at line 279 of file IncrementalParser.cpp.

Member Function Documentation

◆ VisitDecl()

void clang::ASTDeclUnmerger::VisitDecl ( Decl * D)
inline

Definition at line 282 of file IncrementalParser.cpp.

◆ VisitFunctionDecl()

void clang::ASTDeclUnmerger::VisitFunctionDecl ( FunctionDecl * D)
inline

Definition at line 287 of file IncrementalParser.cpp.

◆ VisitNamespaceAliasDecl()

void clang::ASTDeclUnmerger::VisitNamespaceAliasDecl ( NamespaceAliasDecl * D)
inline

Definition at line 288 of file IncrementalParser.cpp.

◆ VisitNamespaceDecl()

void clang::ASTDeclUnmerger::VisitNamespaceDecl ( NamespaceDecl * D)
inline

Definition at line 315 of file IncrementalParser.cpp.

◆ VisitRedeclarableTemplateDecl()

void clang::ASTDeclUnmerger::VisitRedeclarableTemplateDecl ( RedeclarableTemplateDecl * D)
inline

◆ VisitTagDecl()

void clang::ASTDeclUnmerger::VisitTagDecl ( TagDecl * D)
inline

◆ VisitTranslationUnitDecl()

void clang::ASTDeclUnmerger::VisitTranslationUnitDecl ( TranslationUnitDecl * D)
inline

Definition at line 324 of file IncrementalParser.cpp.

◆ VisitTypedefNameDecl()

void clang::ASTDeclUnmerger::VisitTypedefNameDecl ( TypedefNameDecl * D)
inline

Definition at line 289 of file IncrementalParser.cpp.

◆ VisitUsingShadowDecl()

void clang::ASTDeclUnmerger::VisitUsingShadowDecl ( UsingShadowDecl * D)
inline

Definition at line 290 of file IncrementalParser.cpp.

◆ VisitVarDecl()

void clang::ASTDeclUnmerger::VisitVarDecl ( VarDecl * D)
inline

Definition at line 291 of file IncrementalParser.cpp.


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