clang 19.0.0git
Classes | Public Types | Public Member Functions | Static Public Member Functions | List of all members
clang::serialization::reader::HeaderFileInfoTrait Class Reference

Trait class used to search the on-disk hash table containing all of the header search information. More...

#include "/home/buildbot/as-worker-4/publish-doxygen-docs/llvm-project/clang/lib/Serialization/ASTReaderInternals.h"

Classes

struct  internal_key_type
 

Public Types

using external_key_type = FileEntryRef
 
using internal_key_ref = const internal_key_type &
 
using data_type = HeaderFileInfo
 
using hash_value_type = unsigned
 
using offset_type = unsigned
 

Public Member Functions

 HeaderFileInfoTrait (ASTReader &Reader, ModuleFile &M, HeaderSearch *HS, const char *FrameworkStrings)
 
internal_key_type GetInternalKey (external_key_type ekey)
 
bool EqualKey (internal_key_ref a, internal_key_ref b)
 
data_type ReadData (internal_key_ref, const unsigned char *d, unsigned DataLen)
 

Static Public Member Functions

static hash_value_type ComputeHash (internal_key_ref ikey)
 
static std::pair< unsigned, unsignedReadKeyDataLength (const unsigned char *&d)
 
static internal_key_type ReadKey (const unsigned char *d, unsigned)
 

Detailed Description

Trait class used to search the on-disk hash table containing all of the header search information.

The on-disk hash table contains a mapping from each header path to information about that header (how many times it has been included, its controlling macro, etc.). Note that we actually hash based on the size and mtime, and support "deep" comparisons of file names based on current inode numbers, so that the search can cope with non-normalized path names and symlinks.

Definition at line 243 of file ASTReaderInternals.h.

Member Typedef Documentation

◆ data_type

Definition at line 261 of file ASTReaderInternals.h.

◆ external_key_type

Definition at line 250 of file ASTReaderInternals.h.

◆ hash_value_type

Definition at line 262 of file ASTReaderInternals.h.

◆ internal_key_ref

Definition at line 259 of file ASTReaderInternals.h.

◆ offset_type

Definition at line 263 of file ASTReaderInternals.h.

Constructor & Destructor Documentation

◆ HeaderFileInfoTrait()

clang::serialization::reader::HeaderFileInfoTrait::HeaderFileInfoTrait ( ASTReader Reader,
ModuleFile M,
HeaderSearch HS,
const char *  FrameworkStrings 
)
inline

Definition at line 265 of file ASTReaderInternals.h.

Member Function Documentation

◆ ComputeHash()

unsigned HeaderFileInfoTrait::ComputeHash ( internal_key_ref  ikey)
static

◆ EqualKey()

bool HeaderFileInfoTrait::EqualKey ( internal_key_ref  a,
internal_key_ref  b 
)

◆ GetInternalKey()

HeaderFileInfoTrait::internal_key_type HeaderFileInfoTrait::GetInternalKey ( external_key_type  ekey)

◆ ReadData()

HeaderFileInfoTrait::data_type HeaderFileInfoTrait::ReadData ( internal_key_ref  key,
const unsigned char *  d,
unsigned  DataLen 
)

◆ ReadKey()

HeaderFileInfoTrait::internal_key_type HeaderFileInfoTrait::ReadKey ( const unsigned char *  d,
unsigned   
)
static

◆ ReadKeyDataLength()

std::pair< unsigned, unsigned > HeaderFileInfoTrait::ReadKeyDataLength ( const unsigned char *&  d)
static

Definition at line 2024 of file ASTReader.cpp.

References readULEBKeyDataLength().


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