clang  3.7.0
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 <ASTReaderInternals.h>

Classes

struct  internal_key_type
 

Public Types

typedef const FileEntryexternal_key_type
 
typedef const internal_key_typeinternal_key_ref
 
typedef HeaderFileInfo data_type
 
typedef unsigned hash_value_type
 
typedef unsigned offset_type
 

Public Member Functions

 HeaderFileInfoTrait (ASTReader &Reader, ModuleFile &M, HeaderSearch *HS, const char *FrameworkStrings)
 
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 internal_key_type GetInternalKey (const FileEntry *FE)
 
static std::pair< unsigned,
unsigned
ReadKeyDataLength (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 203 of file ASTReaderInternals.h.

Member Typedef Documentation

Definition at line 220 of file ASTReaderInternals.h.

Definition at line 210 of file ASTReaderInternals.h.

Definition at line 221 of file ASTReaderInternals.h.

Definition at line 218 of file ASTReaderInternals.h.

Definition at line 222 of file ASTReaderInternals.h.

Constructor & Destructor Documentation

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

Definition at line 224 of file ASTReaderInternals.h.

Member Function Documentation

unsigned HeaderFileInfoTrait::ComputeHash ( internal_key_ref  ikey)
static
bool HeaderFileInfoTrait::EqualKey ( internal_key_ref  a,
internal_key_ref  b 
)
HeaderFileInfoTrait::internal_key_type HeaderFileInfoTrait::GetInternalKey ( const FileEntry FE)
static
HeaderFileInfoTrait::data_type HeaderFileInfoTrait::ReadData ( internal_key_ref  key,
const unsigned char *  d,
unsigned  DataLen 
)
HeaderFileInfoTrait::internal_key_type HeaderFileInfoTrait::ReadKey ( const unsigned char *  d,
unsigned   
)
static
std::pair< unsigned, unsigned > HeaderFileInfoTrait::ReadKeyDataLength ( const unsigned char *&  d)
static

Definition at line 1514 of file ASTReader.cpp.


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