clang API Documentation

Public Types | Public Member Functions | Static Public Member Functions
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>

List of all members.

Public Types

typedef const char * external_key_type
typedef const char * internal_key_type
typedef HeaderFileInfo data_type

Public Member Functions

 HeaderFileInfoTrait (ASTReader &Reader, ModuleFile &M, HeaderSearch *HS, const char *FrameworkStrings, const char *SearchPath=0)
bool EqualKey (internal_key_type a, internal_key_type b)
data_type ReadData (const internal_key_type, const unsigned char *d, unsigned DataLen)

Static Public Member Functions

static unsigned ComputeHash (const char *path)
static internal_key_type GetInternalKey (const char *path)
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 filename, 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 185 of file ASTReaderInternals.h.


Member Typedef Documentation

Definition at line 210 of file ASTReaderInternals.h.

Definition at line 207 of file ASTReaderInternals.h.

Definition at line 208 of file ASTReaderInternals.h.


Constructor & Destructor Documentation

clang::serialization::reader::HeaderFileInfoTrait::HeaderFileInfoTrait ( ASTReader Reader,
ModuleFile M,
HeaderSearch HS,
const char *  FrameworkStrings,
const char *  SearchPath = 0 
) [inline]

Definition at line 212 of file ASTReaderInternals.h.


Member Function Documentation

unsigned HeaderFileInfoTrait::ComputeHash ( const char *  path) [static]

Definition at line 1387 of file ASTReader.cpp.

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

Definition at line 1394 of file ASTReader.cpp.

HeaderFileInfoTrait::internal_key_type HeaderFileInfoTrait::GetInternalKey ( const char *  path) [static]

Definition at line 1392 of file ASTReader.cpp.

HeaderFileInfoTrait::data_type HeaderFileInfoTrait::ReadData ( const internal_key_type  ,
const unsigned char *  d,
unsigned  DataLen 
)
static internal_key_type clang::serialization::reader::HeaderFileInfoTrait::ReadKey ( const unsigned char *  d,
unsigned   
) [inline, static]

Definition at line 225 of file ASTReaderInternals.h.

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

Definition at line 1410 of file ASTReader.cpp.

References clang::io::ReadUnalignedLE16().


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