clang 19.0.0git
Public Types | Public Member Functions | Public Attributes | List of all members
clang::api_notes::APINotesReader::Implementation Class Reference

Public Types

using SerializedIdentifierTable = llvm::OnDiskIterableChainedHashTable< IdentifierTableInfo >
 
using SerializedObjCContextIDTable = llvm::OnDiskIterableChainedHashTable< ObjCContextIDTableInfo >
 
using SerializedObjCContextInfoTable = llvm::OnDiskIterableChainedHashTable< ObjCContextInfoTableInfo >
 
using SerializedObjCPropertyTable = llvm::OnDiskIterableChainedHashTable< ObjCPropertyTableInfo >
 
using SerializedObjCMethodTable = llvm::OnDiskIterableChainedHashTable< ObjCMethodTableInfo >
 
using SerializedObjCSelectorTable = llvm::OnDiskIterableChainedHashTable< ObjCSelectorTableInfo >
 
using SerializedGlobalVariableTable = llvm::OnDiskIterableChainedHashTable< GlobalVariableTableInfo >
 
using SerializedGlobalFunctionTable = llvm::OnDiskIterableChainedHashTable< GlobalFunctionTableInfo >
 
using SerializedEnumConstantTable = llvm::OnDiskIterableChainedHashTable< EnumConstantTableInfo >
 
using SerializedTagTable = llvm::OnDiskIterableChainedHashTable< TagTableInfo >
 
using SerializedTypedefTable = llvm::OnDiskIterableChainedHashTable< TypedefTableInfo >
 

Public Member Functions

std::optional< IdentifierIDgetIdentifier (llvm::StringRef Str)
 Retrieve the identifier ID for the given string, or an empty optional if the string is unknown.
 
std::optional< SelectorIDgetSelector (ObjCSelectorRef Selector)
 Retrieve the selector ID for the given selector, or an empty optional if the string is unknown.
 
bool readControlBlock (llvm::BitstreamCursor &Cursor, llvm::SmallVectorImpl< uint64_t > &Scratch)
 
bool readIdentifierBlock (llvm::BitstreamCursor &Cursor, llvm::SmallVectorImpl< uint64_t > &Scratch)
 
bool readObjCContextBlock (llvm::BitstreamCursor &Cursor, llvm::SmallVectorImpl< uint64_t > &Scratch)
 
bool readObjCPropertyBlock (llvm::BitstreamCursor &Cursor, llvm::SmallVectorImpl< uint64_t > &Scratch)
 
bool readObjCMethodBlock (llvm::BitstreamCursor &Cursor, llvm::SmallVectorImpl< uint64_t > &Scratch)
 
bool readObjCSelectorBlock (llvm::BitstreamCursor &Cursor, llvm::SmallVectorImpl< uint64_t > &Scratch)
 
bool readGlobalVariableBlock (llvm::BitstreamCursor &Cursor, llvm::SmallVectorImpl< uint64_t > &Scratch)
 
bool readGlobalFunctionBlock (llvm::BitstreamCursor &Cursor, llvm::SmallVectorImpl< uint64_t > &Scratch)
 
bool readEnumConstantBlock (llvm::BitstreamCursor &Cursor, llvm::SmallVectorImpl< uint64_t > &Scratch)
 
bool readTagBlock (llvm::BitstreamCursor &Cursor, llvm::SmallVectorImpl< uint64_t > &Scratch)
 
bool readTypedefBlock (llvm::BitstreamCursor &Cursor, llvm::SmallVectorImpl< uint64_t > &Scratch)
 

Public Attributes

llvm::MemoryBuffer * InputBuffer
 The input buffer for the API notes data.
 
llvm::VersionTuple SwiftVersion
 The Swift version to use for filtering.
 
std::string ModuleName
 The name of the module that we read from the control block.
 
std::optional< std::pair< off_t, time_t > > SourceFileSizeAndModTime
 
std::unique_ptr< SerializedIdentifierTableIdentifierTable
 The identifier table.
 
std::unique_ptr< SerializedObjCContextIDTableObjCContextIDTable
 The Objective-C context ID table.
 
std::unique_ptr< SerializedObjCContextInfoTableObjCContextInfoTable
 The Objective-C context info table.
 
std::unique_ptr< SerializedObjCPropertyTableObjCPropertyTable
 The Objective-C property table.
 
std::unique_ptr< SerializedObjCMethodTableObjCMethodTable
 The Objective-C method table.
 
std::unique_ptr< SerializedObjCSelectorTableObjCSelectorTable
 The Objective-C selector table.
 
std::unique_ptr< SerializedGlobalVariableTableGlobalVariableTable
 The global variable table.
 
std::unique_ptr< SerializedGlobalFunctionTableGlobalFunctionTable
 The global function table.
 
std::unique_ptr< SerializedEnumConstantTableEnumConstantTable
 The enumerator table.
 
std::unique_ptr< SerializedTagTableTagTable
 The tag table.
 
std::unique_ptr< SerializedTypedefTableTypedefTable
 The typedef table.
 

Detailed Description

Definition at line 596 of file APINotesReader.cpp.

Member Typedef Documentation

◆ SerializedEnumConstantTable

using clang::api_notes::APINotesReader::Implementation::SerializedEnumConstantTable = llvm::OnDiskIterableChainedHashTable<EnumConstantTableInfo>

Definition at line 659 of file APINotesReader.cpp.

◆ SerializedGlobalFunctionTable

using clang::api_notes::APINotesReader::Implementation::SerializedGlobalFunctionTable = llvm::OnDiskIterableChainedHashTable<GlobalFunctionTableInfo>

Definition at line 653 of file APINotesReader.cpp.

◆ SerializedGlobalVariableTable

using clang::api_notes::APINotesReader::Implementation::SerializedGlobalVariableTable = llvm::OnDiskIterableChainedHashTable<GlobalVariableTableInfo>

Definition at line 647 of file APINotesReader.cpp.

◆ SerializedIdentifierTable

using clang::api_notes::APINotesReader::Implementation::SerializedIdentifierTable = llvm::OnDiskIterableChainedHashTable<IdentifierTableInfo>

Definition at line 611 of file APINotesReader.cpp.

◆ SerializedObjCContextIDTable

using clang::api_notes::APINotesReader::Implementation::SerializedObjCContextIDTable = llvm::OnDiskIterableChainedHashTable<ObjCContextIDTableInfo>

Definition at line 617 of file APINotesReader.cpp.

◆ SerializedObjCContextInfoTable

using clang::api_notes::APINotesReader::Implementation::SerializedObjCContextInfoTable = llvm::OnDiskIterableChainedHashTable<ObjCContextInfoTableInfo>

Definition at line 623 of file APINotesReader.cpp.

◆ SerializedObjCMethodTable

using clang::api_notes::APINotesReader::Implementation::SerializedObjCMethodTable = llvm::OnDiskIterableChainedHashTable<ObjCMethodTableInfo>

Definition at line 635 of file APINotesReader.cpp.

◆ SerializedObjCPropertyTable

using clang::api_notes::APINotesReader::Implementation::SerializedObjCPropertyTable = llvm::OnDiskIterableChainedHashTable<ObjCPropertyTableInfo>

Definition at line 629 of file APINotesReader.cpp.

◆ SerializedObjCSelectorTable

using clang::api_notes::APINotesReader::Implementation::SerializedObjCSelectorTable = llvm::OnDiskIterableChainedHashTable<ObjCSelectorTableInfo>

Definition at line 641 of file APINotesReader.cpp.

◆ SerializedTagTable

using clang::api_notes::APINotesReader::Implementation::SerializedTagTable = llvm::OnDiskIterableChainedHashTable<TagTableInfo>

Definition at line 665 of file APINotesReader.cpp.

◆ SerializedTypedefTable

using clang::api_notes::APINotesReader::Implementation::SerializedTypedefTable = llvm::OnDiskIterableChainedHashTable<TypedefTableInfo>

Definition at line 670 of file APINotesReader.cpp.

Member Function Documentation

◆ getIdentifier()

std::optional< IdentifierID > clang::api_notes::APINotesReader::Implementation::getIdentifier ( llvm::StringRef  Str)

◆ getSelector()

std::optional< SelectorID > clang::api_notes::APINotesReader::Implementation::getSelector ( ObjCSelectorRef  Selector)

Retrieve the selector ID for the given selector, or an empty optional if the string is unknown.

Definition at line 724 of file APINotesReader.cpp.

References getIdentifier(), clang::api_notes::StoredObjCSelector::Identifiers, and clang::api_notes::StoredObjCSelector::NumArgs.

Referenced by clang::api_notes::APINotesReader::lookupObjCMethod().

◆ readControlBlock()

bool clang::api_notes::APINotesReader::Implementation::readControlBlock ( llvm::BitstreamCursor &  Cursor,
llvm::SmallVectorImpl< uint64_t > &  Scratch 
)

◆ readEnumConstantBlock()

bool clang::api_notes::APINotesReader::Implementation::readEnumConstantBlock ( llvm::BitstreamCursor &  Cursor,
llvm::SmallVectorImpl< uint64_t > &  Scratch 
)

◆ readGlobalFunctionBlock()

bool clang::api_notes::APINotesReader::Implementation::readGlobalFunctionBlock ( llvm::BitstreamCursor &  Cursor,
llvm::SmallVectorImpl< uint64_t > &  Scratch 
)

◆ readGlobalVariableBlock()

bool clang::api_notes::APINotesReader::Implementation::readGlobalVariableBlock ( llvm::BitstreamCursor &  Cursor,
llvm::SmallVectorImpl< uint64_t > &  Scratch 
)

◆ readIdentifierBlock()

bool clang::api_notes::APINotesReader::Implementation::readIdentifierBlock ( llvm::BitstreamCursor &  Cursor,
llvm::SmallVectorImpl< uint64_t > &  Scratch 
)

◆ readObjCContextBlock()

bool clang::api_notes::APINotesReader::Implementation::readObjCContextBlock ( llvm::BitstreamCursor &  Cursor,
llvm::SmallVectorImpl< uint64_t > &  Scratch 
)

◆ readObjCMethodBlock()

bool clang::api_notes::APINotesReader::Implementation::readObjCMethodBlock ( llvm::BitstreamCursor &  Cursor,
llvm::SmallVectorImpl< uint64_t > &  Scratch 
)

◆ readObjCPropertyBlock()

bool clang::api_notes::APINotesReader::Implementation::readObjCPropertyBlock ( llvm::BitstreamCursor &  Cursor,
llvm::SmallVectorImpl< uint64_t > &  Scratch 
)

◆ readObjCSelectorBlock()

bool clang::api_notes::APINotesReader::Implementation::readObjCSelectorBlock ( llvm::BitstreamCursor &  Cursor,
llvm::SmallVectorImpl< uint64_t > &  Scratch 
)

◆ readTagBlock()

bool clang::api_notes::APINotesReader::Implementation::readTagBlock ( llvm::BitstreamCursor &  Cursor,
llvm::SmallVectorImpl< uint64_t > &  Scratch 
)

◆ readTypedefBlock()

bool clang::api_notes::APINotesReader::Implementation::readTypedefBlock ( llvm::BitstreamCursor &  Cursor,
llvm::SmallVectorImpl< uint64_t > &  Scratch 
)

Member Data Documentation

◆ EnumConstantTable

std::unique_ptr<SerializedEnumConstantTable> clang::api_notes::APINotesReader::Implementation::EnumConstantTable

The enumerator table.

Definition at line 663 of file APINotesReader.cpp.

Referenced by clang::api_notes::APINotesReader::lookupEnumConstant().

◆ GlobalFunctionTable

std::unique_ptr<SerializedGlobalFunctionTable> clang::api_notes::APINotesReader::Implementation::GlobalFunctionTable

The global function table.

Definition at line 657 of file APINotesReader.cpp.

Referenced by clang::api_notes::APINotesReader::lookupGlobalFunction().

◆ GlobalVariableTable

std::unique_ptr<SerializedGlobalVariableTable> clang::api_notes::APINotesReader::Implementation::GlobalVariableTable

The global variable table.

Definition at line 651 of file APINotesReader.cpp.

Referenced by clang::api_notes::APINotesReader::lookupGlobalVariable().

◆ IdentifierTable

std::unique_ptr<SerializedIdentifierTable> clang::api_notes::APINotesReader::Implementation::IdentifierTable

The identifier table.

Definition at line 615 of file APINotesReader.cpp.

◆ InputBuffer

llvm::MemoryBuffer* clang::api_notes::APINotesReader::Implementation::InputBuffer

The input buffer for the API notes data.

Definition at line 599 of file APINotesReader.cpp.

Referenced by clang::api_notes::APINotesReader::~APINotesReader().

◆ ModuleName

std::string clang::api_notes::APINotesReader::Implementation::ModuleName

The name of the module that we read from the control block.

Definition at line 605 of file APINotesReader.cpp.

◆ ObjCContextIDTable

std::unique_ptr<SerializedObjCContextIDTable> clang::api_notes::APINotesReader::Implementation::ObjCContextIDTable

◆ ObjCContextInfoTable

std::unique_ptr<SerializedObjCContextInfoTable> clang::api_notes::APINotesReader::Implementation::ObjCContextInfoTable

◆ ObjCMethodTable

std::unique_ptr<SerializedObjCMethodTable> clang::api_notes::APINotesReader::Implementation::ObjCMethodTable

The Objective-C method table.

Definition at line 639 of file APINotesReader.cpp.

Referenced by clang::api_notes::APINotesReader::lookupObjCMethod().

◆ ObjCPropertyTable

std::unique_ptr<SerializedObjCPropertyTable> clang::api_notes::APINotesReader::Implementation::ObjCPropertyTable

The Objective-C property table.

Definition at line 633 of file APINotesReader.cpp.

Referenced by clang::api_notes::APINotesReader::lookupObjCProperty().

◆ ObjCSelectorTable

std::unique_ptr<SerializedObjCSelectorTable> clang::api_notes::APINotesReader::Implementation::ObjCSelectorTable

The Objective-C selector table.

Definition at line 645 of file APINotesReader.cpp.

◆ SourceFileSizeAndModTime

std::optional<std::pair<off_t, time_t> > clang::api_notes::APINotesReader::Implementation::SourceFileSizeAndModTime

Definition at line 609 of file APINotesReader.cpp.

◆ SwiftVersion

llvm::VersionTuple clang::api_notes::APINotesReader::Implementation::SwiftVersion

◆ TagTable

std::unique_ptr<SerializedTagTable> clang::api_notes::APINotesReader::Implementation::TagTable

The tag table.

Definition at line 668 of file APINotesReader.cpp.

Referenced by clang::api_notes::APINotesReader::lookupTag().

◆ TypedefTable

std::unique_ptr<SerializedTypedefTable> clang::api_notes::APINotesReader::Implementation::TypedefTable

The typedef table.

Definition at line 674 of file APINotesReader.cpp.

Referenced by clang::api_notes::APINotesReader::lookupTypedef().


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