LLVM 22.0.0git
llvm::cas::ondisk::TableHandle Class Reference

Generic handle for a table. More...

#include "CAS/DatabaseFile.h"

Classes

struct  Header

Public Types

enum class  TableKind : uint16_t { TrieRawHashMap = 1 , DataAllocator = 2 }

Public Member Functions

 operator bool () const
const HeadergetHeader () const
MappedFileRegiongetRegion () const
template<class T>
bool is () const
template<class T>
T dyn_cast () const
template<class T>
T cast () const
StringRef getName () const
 TableHandle ()=default
 TableHandle (MappedFileRegion &Region, Header &H)
 TableHandle (MappedFileRegion &Region, intptr_t HeaderOffset)

Static Public Member Functions

template<class T>
static void check ()

Detailed Description

Generic handle for a table.

Generic table header layout:

  • 2-bytes: TableKind
  • 2-bytes: TableNameSize
  • 4-bytes: TableNameRelOffset (relative to header)

Definition at line 32 of file DatabaseFile.h.

Member Enumeration Documentation

◆ TableKind

Enumerator
TrieRawHashMap 
DataAllocator 

Definition at line 34 of file DatabaseFile.h.

Constructor & Destructor Documentation

◆ TableHandle() [1/3]

llvm::cas::ondisk::TableHandle::TableHandle ( )
default

Referenced by TableHandle().

◆ TableHandle() [2/3]

llvm::cas::ondisk::TableHandle::TableHandle ( MappedFileRegion & Region,
Header & H )
inline

Definition at line 73 of file DatabaseFile.h.

◆ TableHandle() [3/3]

llvm::cas::ondisk::TableHandle::TableHandle ( MappedFileRegion & Region,
intptr_t HeaderOffset )
inline

Definition at line 74 of file DatabaseFile.h.

References data, and TableHandle().

Member Function Documentation

◆ cast()

template<class T>
T llvm::cas::ondisk::TableHandle::cast ( ) const
inline

Definition at line 62 of file DatabaseFile.h.

References assert(), dyn_cast(), is(), and T.

◆ check()

template<class T>
void llvm::cas::ondisk::TableHandle::check ( )
inlinestatic

Definition at line 48 of file DatabaseFile.h.

References offsetof.

Referenced by dyn_cast().

◆ dyn_cast()

template<class T>
T llvm::cas::ondisk::TableHandle::dyn_cast ( ) const
inline

Definition at line 56 of file DatabaseFile.h.

References check(), is(), and T.

Referenced by cast().

◆ getHeader()

const Header & llvm::cas::ondisk::TableHandle::getHeader ( ) const
inline

Definition at line 45 of file DatabaseFile.h.

Referenced by llvm::cas::ondisk::DatabaseFile::addTable().

◆ getName()

StringRef llvm::cas::ondisk::TableHandle::getName ( ) const
inline

◆ getRegion()

MappedFileRegion & llvm::cas::ondisk::TableHandle::getRegion ( ) const
inline

Definition at line 46 of file DatabaseFile.h.

Referenced by llvm::cas::ondisk::DatabaseFile::addTable().

◆ is()

template<class T>
bool llvm::cas::ondisk::TableHandle::is ( ) const
inline

Definition at line 55 of file DatabaseFile.h.

Referenced by cast(), and dyn_cast().

◆ operator bool()

llvm::cas::ondisk::TableHandle::operator bool ( ) const
inlineexplicit

Definition at line 44 of file DatabaseFile.h.


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