clang 22.0.0git
clang::ChainedASTReaderListener Class Reference

Simple wrapper class for chaining listeners. More...

#include "clang/Serialization/ASTReader.h"

Inheritance diagram for clang::ChainedASTReaderListener:
[legend]

Public Member Functions

 ChainedASTReaderListener (std::unique_ptr< ASTReaderListener > First, std::unique_ptr< ASTReaderListener > Second)
 Takes ownership of First and Second.
std::unique_ptr< ASTReaderListenertakeFirst ()
std::unique_ptr< ASTReaderListenertakeSecond ()
bool ReadFullVersionInformation (StringRef FullVersion) override
 Receives the full Clang version information.
void ReadModuleName (StringRef ModuleName) override
void ReadModuleMapFile (StringRef ModuleMapPath) override
bool ReadLanguageOptions (const LangOptions &LangOpts, StringRef ModuleFilename, bool Complain, bool AllowCompatibleDifferences) override
 Receives the language options.
bool ReadCodeGenOptions (const CodeGenOptions &CGOpts, StringRef ModuleFilename, bool Complain, bool AllowCompatibleDifferences) override
 Receives the codegen options.
bool ReadTargetOptions (const TargetOptions &TargetOpts, StringRef ModuleFilename, bool Complain, bool AllowCompatibleDifferences) override
 Receives the target options.
bool ReadDiagnosticOptions (DiagnosticOptions &DiagOpts, StringRef ModuleFilename, bool Complain) override
 Receives the diagnostic options.
bool ReadFileSystemOptions (const FileSystemOptions &FSOpts, bool Complain) override
 Receives the file system options.
bool ReadHeaderSearchOptions (const HeaderSearchOptions &HSOpts, StringRef ModuleFilename, StringRef SpecificModuleCachePath, bool Complain) override
 Receives the header search options.
bool ReadPreprocessorOptions (const PreprocessorOptions &PPOpts, StringRef ModuleFilename, bool ReadMacros, bool Complain, std::string &SuggestedPredefines) override
 Receives the preprocessor options.
void ReadCounter (const serialization::ModuleFile &M, unsigned Value) override
 Receives COUNTER value.
bool needsInputFileVisitation () override
 Returns true if this ASTReaderListener wants to receive the input files of the AST file via visitInputFile, false otherwise.
bool needsSystemInputFileVisitation () override
 Returns true if this ASTReaderListener wants to receive the system input files of the AST file via visitInputFile, false otherwise.
void visitModuleFile (StringRef Filename, serialization::ModuleKind Kind) override
 This is called for each AST file loaded.
bool visitInputFile (StringRef Filename, bool isSystem, bool isOverridden, bool isExplicitModule) override
 if needsInputFileVisitation returns true, this is called for each non-system input file of the AST File.
void readModuleFileExtension (const ModuleFileExtensionMetadata &Metadata) override
 Indicates that a particular module file extension has been read.
Public Member Functions inherited from clang::ASTReaderListener
virtual ~ASTReaderListener ()
virtual bool ReadHeaderSearchPaths (const HeaderSearchOptions &HSOpts, bool Complain)
 Receives the header search paths.
virtual bool visitInputFileAsRequested (StringRef FilenameAsRequested, StringRef Filename, bool isSystem, bool isOverridden, bool isExplicitModule)
 Similiar to member function of visitInputFile but should be defined when there is a distinction between the file name and the name-as-requested.
virtual bool needsImportVisitation () const
 Returns true if this ASTReaderListener wants to receive the imports of the AST file via visitImport, false otherwise.
virtual void visitImport (StringRef ModuleName, StringRef Filename)
 If needsImportVisitation returns true, this is called for each AST file imported by this AST file.

Detailed Description

Simple wrapper class for chaining listeners.

Definition at line 276 of file ASTReader.h.

Constructor & Destructor Documentation

◆ ChainedASTReaderListener()

clang::ChainedASTReaderListener::ChainedASTReaderListener ( std::unique_ptr< ASTReaderListener > First,
std::unique_ptr< ASTReaderListener > Second )
inline

Takes ownership of First and Second.

Definition at line 282 of file ASTReader.h.

Member Function Documentation

◆ needsInputFileVisitation()

bool ChainedASTReaderListener::needsInputFileVisitation ( )
overridevirtual

Returns true if this ASTReaderListener wants to receive the input files of the AST file via visitInputFile, false otherwise.

Reimplemented from clang::ASTReaderListener.

Definition at line 233 of file ASTReader.cpp.

◆ needsSystemInputFileVisitation()

bool ChainedASTReaderListener::needsSystemInputFileVisitation ( )
overridevirtual

Returns true if this ASTReaderListener wants to receive the system input files of the AST file via visitInputFile, false otherwise.

Reimplemented from clang::ASTReaderListener.

Definition at line 238 of file ASTReader.cpp.

◆ ReadCodeGenOptions()

bool ChainedASTReaderListener::ReadCodeGenOptions ( const CodeGenOptions & CGOpts,
StringRef ModuleFilename,
bool Complain,
bool AllowCompatibleDifferences )
overridevirtual

Receives the codegen options.

Returns
true to indicate the options are invalid or false otherwise.

Reimplemented from clang::ASTReaderListener.

Definition at line 178 of file ASTReader.cpp.

◆ ReadCounter()

void ChainedASTReaderListener::ReadCounter ( const serialization::ModuleFile & M,
unsigned Value )
overridevirtual

Receives COUNTER value.

Reimplemented from clang::ASTReaderListener.

Definition at line 227 of file ASTReader.cpp.

◆ ReadDiagnosticOptions()

bool ChainedASTReaderListener::ReadDiagnosticOptions ( DiagnosticOptions & DiagOpts,
StringRef ModuleFilename,
bool Complain )
overridevirtual

Receives the diagnostic options.

Returns
true to indicate the diagnostic options are invalid, or false otherwise.

Reimplemented from clang::ASTReaderListener.

Definition at line 196 of file ASTReader.cpp.

◆ ReadFileSystemOptions()

bool ChainedASTReaderListener::ReadFileSystemOptions ( const FileSystemOptions & FSOpts,
bool Complain )
overridevirtual

Receives the file system options.

Returns
true to indicate the file system options are invalid, or false otherwise.

Reimplemented from clang::ASTReaderListener.

Definition at line 203 of file ASTReader.cpp.

◆ ReadFullVersionInformation()

bool ChainedASTReaderListener::ReadFullVersionInformation ( StringRef FullVersion)
overridevirtual

Receives the full Clang version information.

Returns
true to indicate that the version is invalid. Subclasses should generally defer to this implementation.

Reimplemented from clang::ASTReaderListener.

Definition at line 154 of file ASTReader.cpp.

◆ ReadHeaderSearchOptions()

bool ChainedASTReaderListener::ReadHeaderSearchOptions ( const HeaderSearchOptions & HSOpts,
StringRef ModuleFilename,
StringRef SpecificModuleCachePath,
bool Complain )
overridevirtual

Receives the header search options.

Parameters
HSOptsThe read header search options. The following fields are missing and are reported in ReadHeaderSearchPaths(): UserEntries, SystemHeaderPrefixes, VFSOverlayFiles.
Returns
true to indicate the header search options are invalid, or false otherwise.

Reimplemented from clang::ASTReaderListener.

Definition at line 209 of file ASTReader.cpp.

◆ ReadLanguageOptions()

bool ChainedASTReaderListener::ReadLanguageOptions ( const LangOptions & LangOpts,
StringRef ModuleFilename,
bool Complain,
bool AllowCompatibleDifferences )
overridevirtual

Receives the language options.

Returns
true to indicate the options are invalid or false otherwise.

Reimplemented from clang::ASTReaderListener.

Definition at line 169 of file ASTReader.cpp.

◆ readModuleFileExtension()

void ChainedASTReaderListener::readModuleFileExtension ( const ModuleFileExtensionMetadata & Metadata)
overridevirtual

Indicates that a particular module file extension has been read.

Reimplemented from clang::ASTReaderListener.

Definition at line 265 of file ASTReader.cpp.

◆ ReadModuleMapFile()

void ChainedASTReaderListener::ReadModuleMapFile ( StringRef ModuleMapPath)
overridevirtual

Reimplemented from clang::ASTReaderListener.

Definition at line 164 of file ASTReader.cpp.

◆ ReadModuleName()

void ChainedASTReaderListener::ReadModuleName ( StringRef ModuleName)
overridevirtual

Reimplemented from clang::ASTReaderListener.

Definition at line 159 of file ASTReader.cpp.

◆ ReadPreprocessorOptions()

bool ChainedASTReaderListener::ReadPreprocessorOptions ( const PreprocessorOptions & PPOpts,
StringRef ModuleFilename,
bool ReadMacros,
bool Complain,
std::string & SuggestedPredefines )
overridevirtual

Receives the preprocessor options.

Parameters
SuggestedPredefinesCan be filled in with the set of predefines that are suggested by the preprocessor options. Typically only used when loading a precompiled header.
Returns
true to indicate the preprocessor options are invalid, or false otherwise.

Reimplemented from clang::ASTReaderListener.

Definition at line 218 of file ASTReader.cpp.

◆ ReadTargetOptions()

bool ChainedASTReaderListener::ReadTargetOptions ( const TargetOptions & TargetOpts,
StringRef ModuleFilename,
bool Complain,
bool AllowCompatibleDifferences )
overridevirtual

Receives the target options.

Returns
true to indicate the target options are invalid, or false otherwise.

Reimplemented from clang::ASTReaderListener.

Definition at line 187 of file ASTReader.cpp.

◆ takeFirst()

std::unique_ptr< ASTReaderListener > clang::ChainedASTReaderListener::takeFirst ( )
inline

Definition at line 286 of file ASTReader.h.

◆ takeSecond()

std::unique_ptr< ASTReaderListener > clang::ChainedASTReaderListener::takeSecond ( )
inline

Definition at line 287 of file ASTReader.h.

Referenced by clang::ASTReader::ListenerScope::~ListenerScope().

◆ visitInputFile()

bool ChainedASTReaderListener::visitInputFile ( StringRef Filename,
bool isSystem,
bool isOverridden,
bool isExplicitModule )
overridevirtual

if needsInputFileVisitation returns true, this is called for each non-system input file of the AST File.

If needsSystemInputFileVisitation is true, then it is called for all system input files as well.

Returns
true to continue receiving the next input file, false to stop.

Reimplemented from clang::ASTReaderListener.

Definition at line 249 of file ASTReader.cpp.

◆ visitModuleFile()

void ChainedASTReaderListener::visitModuleFile ( StringRef Filename,
serialization::ModuleKind Kind )
overridevirtual

This is called for each AST file loaded.

Reimplemented from clang::ASTReaderListener.

Definition at line 243 of file ASTReader.cpp.


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