14#ifndef LLVM_CLANG_SERIALIZATION_ASTDESERIALIZATIONLISTENER_H
15#define LLVM_CLANG_SERIALIZATION_ASTDESERIALIZATIONLISTENER_H
76 : Previous(Previous), DeletePrevious(DeletePrevious) {}
89 Previous->ReaderInitialized(Reader);
94 Previous->IdentifierRead(ID, II);
98 Previous->MacroRead(ID, MI);
102 Previous->TypeRead(Idx, T);
106 Previous->DeclRead(ID, D);
110 Previous->PredefinedDeclBuilt(ID, D);
114 Previous->SelectorRead(ID, Sel);
119 Previous->MacroDefinitionRead(PPID, MD);
123 Previous->ModuleRead(ID, Mod);
128 Previous->ModuleImportRead(ID, ImportLoc);
Defines the clang::IdentifierInfo, clang::IdentifierTable, and clang::Selector interfaces.
virtual ~ASTDeserializationListener()
virtual void MacroDefinitionRead(serialization::PreprocessedEntityID, MacroDefinitionRecord *MD)
A macro definition was read from the AST file.
virtual void TypeRead(serialization::TypeIdx Idx, QualType T)
A type was deserialized from the AST file.
virtual void MacroRead(serialization::MacroID ID, MacroInfo *MI)
A macro was read from the AST file.
virtual void ModuleImportRead(serialization::SubmoduleID ID, SourceLocation ImportLoc)
A module import was read from the AST file.
virtual void SelectorRead(serialization::SelectorID iD, Selector Sel)
A selector was read from the AST file.
virtual void ReaderInitialized(ASTReader *Reader)
The ASTReader was initialized.
virtual void DeclRead(GlobalDeclID ID, const Decl *D)
A decl was deserialized from the AST file.
virtual void PredefinedDeclBuilt(PredefinedDeclIDs ID, const Decl *D)
A predefined decl was built during the serialization.
virtual void IdentifierRead(serialization::IdentifierID ID, IdentifierInfo *II)
An identifier was deserialized from the AST file.
virtual void ModuleRead(serialization::SubmoduleID ID, Module *Mod)
A module definition was read from the AST file.
Reads an AST files chain containing the contents of a translation unit.
Decl - This represents one declaration (or definition), e.g.
void PredefinedDeclBuilt(PredefinedDeclIDs ID, const Decl *D) override
A predefined decl was built during the serialization.
~DelegatingDeserializationListener() override
void TypeRead(serialization::TypeIdx Idx, QualType T) override
A type was deserialized from the AST file.
void DeclRead(GlobalDeclID ID, const Decl *D) override
A decl was deserialized from the AST file.
void ReaderInitialized(ASTReader *Reader) override
The ASTReader was initialized.
void SelectorRead(serialization::SelectorID ID, Selector Sel) override
A selector was read from the AST file.
DelegatingDeserializationListener(ASTDeserializationListener *Previous, bool DeletePrevious)
void IdentifierRead(serialization::IdentifierID ID, IdentifierInfo *II) override
An identifier was deserialized from the AST file.
DelegatingDeserializationListener & operator=(const DelegatingDeserializationListener &)=delete
void MacroRead(serialization::MacroID ID, MacroInfo *MI) override
A macro was read from the AST file.
void MacroDefinitionRead(serialization::PreprocessedEntityID PPID, MacroDefinitionRecord *MD) override
A macro definition was read from the AST file.
void ModuleRead(serialization::SubmoduleID ID, Module *Mod) override
A module definition was read from the AST file.
DelegatingDeserializationListener(const DelegatingDeserializationListener &)=delete
void ModuleImportRead(serialization::SubmoduleID ID, SourceLocation ImportLoc) override
A module import was read from the AST file.
One of these records is kept for each identifier that is lexed.
Record the location of a macro definition.
Encapsulates the data about a macro definition (e.g.
Describes a module or submodule.
A (possibly-)qualified type.
Smart pointer class that efficiently represents Objective-C method names.
Encodes a location in the source.
A type index; the type ID with the qualifier bits removed.
uint32_t SelectorID
An ID number that refers to an ObjC selector in an AST file.
uint64_t PreprocessedEntityID
An ID number that refers to an entity in the detailed preprocessing record.
uint64_t MacroID
An ID number that refers to a macro in an AST file.
uint32_t SubmoduleID
An ID number that refers to a submodule in a module file.
uint64_t IdentifierID
An ID number that refers to an identifier in an AST file.
The JSON file list parser is used to communicate input to InstallAPI.
PredefinedDeclIDs
Predefined declaration IDs.