clang  5.0.0
Classes | Public Types | Public Member Functions | Friends | List of all members
clang::serialization::MultiOnDiskHashTable< Info > Class Template Reference

A collection of on-disk hash tables, merged when relevant for performance. More...

#include "/usr/local/google/work/llvm-www-releases/5.0.0/docsbuild/llvm.src/tools/clang/lib/Serialization/MultiOnDiskHashTable.h"

Inheritance diagram for clang::serialization::MultiOnDiskHashTable< Info >:
[legend]

Public Types

typedef Info::file_type file_type
 A handle to a file, used when overriding tables. More...
 
typedef const unsigned char * storage_type
 A pointer to an on-disk representation of the hash table. More...
 
typedef Info::external_key_type external_key_type
 
typedef Info::internal_key_type internal_key_type
 
typedef Info::data_type data_type
 
typedef Info::data_type_builder data_type_builder
 
typedef unsigned hash_value_type
 

Public Member Functions

 MultiOnDiskHashTable ()
 
 MultiOnDiskHashTable (MultiOnDiskHashTable &&O)
 
MultiOnDiskHashTableoperator= (MultiOnDiskHashTable &&O)
 
 ~MultiOnDiskHashTable ()
 
void add (file_type File, storage_type Data, Info InfoObj=Info())
 Add the table Data loaded from file File. More...
 
data_type find (const external_key_type &EKey)
 Find and read the lookup results for EKey. More...
 
data_type findAll ()
 Read all the lookup results into a single value. More...
 

Friends

template<typename ReaderInfo , typename WriterInfo >
class MultiOnDiskHashTableGenerator
 The generator is permitted to read our merged table. More...
 

Detailed Description

template<typename Info>
class clang::serialization::MultiOnDiskHashTable< Info >

A collection of on-disk hash tables, merged when relevant for performance.

Definition at line 35 of file MultiOnDiskHashTable.h.

Member Typedef Documentation

template<typename Info>
typedef Info::data_type clang::serialization::MultiOnDiskHashTable< Info >::data_type

Definition at line 44 of file MultiOnDiskHashTable.h.

template<typename Info>
typedef Info::data_type_builder clang::serialization::MultiOnDiskHashTable< Info >::data_type_builder

Definition at line 45 of file MultiOnDiskHashTable.h.

template<typename Info>
typedef Info::external_key_type clang::serialization::MultiOnDiskHashTable< Info >::external_key_type

Definition at line 42 of file MultiOnDiskHashTable.h.

template<typename Info>
typedef Info::file_type clang::serialization::MultiOnDiskHashTable< Info >::file_type

A handle to a file, used when overriding tables.

Definition at line 38 of file MultiOnDiskHashTable.h.

template<typename Info>
typedef unsigned clang::serialization::MultiOnDiskHashTable< Info >::hash_value_type

Definition at line 46 of file MultiOnDiskHashTable.h.

template<typename Info>
typedef Info::internal_key_type clang::serialization::MultiOnDiskHashTable< Info >::internal_key_type

Definition at line 43 of file MultiOnDiskHashTable.h.

template<typename Info>
typedef const unsigned char* clang::serialization::MultiOnDiskHashTable< Info >::storage_type

A pointer to an on-disk representation of the hash table.

Definition at line 40 of file MultiOnDiskHashTable.h.

Constructor & Destructor Documentation

template<typename Info>
clang::serialization::MultiOnDiskHashTable< Info >::MultiOnDiskHashTable ( )
inline

Definition at line 168 of file MultiOnDiskHashTable.h.

template<typename Info>
clang::serialization::MultiOnDiskHashTable< Info >::MultiOnDiskHashTable ( MultiOnDiskHashTable< Info > &&  O)
inline

Definition at line 169 of file MultiOnDiskHashTable.h.

template<typename Info>
clang::serialization::MultiOnDiskHashTable< Info >::~MultiOnDiskHashTable ( )
inline

Definition at line 183 of file MultiOnDiskHashTable.h.

Member Function Documentation

template<typename Info>
void clang::serialization::MultiOnDiskHashTable< Info >::add ( file_type  File,
storage_type  Data,
Info  InfoObj = Info() 
)
inline

Add the table Data loaded from file File.

Definition at line 186 of file MultiOnDiskHashTable.h.

template<typename Info>
data_type clang::serialization::MultiOnDiskHashTable< Info >::find ( const external_key_type EKey)
inline

Find and read the lookup results for EKey.

Definition at line 216 of file MultiOnDiskHashTable.h.

template<typename Info>
data_type clang::serialization::MultiOnDiskHashTable< Info >::findAll ( )
inline

Read all the lookup results into a single value.

This only makes sense if merging values across keys is meaningful.

Definition at line 249 of file MultiOnDiskHashTable.h.

template<typename Info>
MultiOnDiskHashTable& clang::serialization::MultiOnDiskHashTable< Info >::operator= ( MultiOnDiskHashTable< Info > &&  O)
inline

Definition at line 174 of file MultiOnDiskHashTable.h.

Friends And Related Function Documentation

template<typename Info>
template<typename ReaderInfo , typename WriterInfo >
friend class MultiOnDiskHashTableGenerator
friend

The generator is permitted to read our merged table.

Definition at line 165 of file MultiOnDiskHashTable.h.


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