class ExternalPreprocessingRecordSource

Declaration

class ExternalPreprocessingRecordSource { /* full declaration omitted */ };

Description

An abstract class that should be subclassed by any external source of preprocessing record entries.

Declared at: clang/include/clang/Lex/PreprocessingRecord.h:277

Method Overview

Methods

virtual clang::PreprocessedEntity*
ReadPreprocessedEntity(unsigned int Index)

Description

Read a preallocated preprocessed entity from the external source.

Declared at: clang/include/clang/Lex/PreprocessingRecord.h:285

Parameters

unsigned int Index

Returns

null if an error occurred that prevented the preprocessed entity from being loaded.

virtual clang::SourceRange ReadSkippedRange(
    unsigned int Index)

Description

Read a preallocated skipped range from the external source.

Declared at: clang/include/clang/Lex/PreprocessingRecord.h:300

Parameters

unsigned int Index

virtual std::pair<unsigned int, unsigned int>
findPreprocessedEntitiesInRange(
    clang::SourceRange Range)

Description

Returns a pair of [Begin, End) indices of preallocated preprocessed entities that \p Range encompasses.

Declared at: clang/include/clang/Lex/PreprocessingRecord.h:290

Parameters

clang::SourceRange Range

virtual Optional<bool>
isPreprocessedEntityInFileID(unsigned int Index,
                             clang::FileID FID)

Description

Optionally returns true or false if the preallocated preprocessed entity with index \p Index came from file \p FID.

Declared at: clang/include/clang/Lex/PreprocessingRecord.h:294

Parameters

unsigned int Index
clang::FileID FID

virtual ~ExternalPreprocessingRecordSource()

Declared at: clang/include/clang/Lex/PreprocessingRecord.h:279