clang-tools  14.0.0git
Classes | Public Types | Public Member Functions | List of all members
clang::clangd::RefSlab Class Reference

An efficient structure of storing large set of symbol references in memory. More...

#include <Ref.h>

Classes

class  Builder
 RefSlab::Builder is a mutable container that can 'freeze' to RefSlab. More...
 

Public Types

using value_type = std::pair< SymbolID, llvm::ArrayRef< Ref > >
 
using const_iterator = std::vector< value_type >::const_iterator
 
using iterator = const_iterator
 

Public Member Functions

 RefSlab ()=default
 
 RefSlab (RefSlab &&Slab)=default
 
RefSlaboperator= (RefSlab &&RHS)=default
 
const_iterator begin () const
 
const_iterator end () const
 
size_t size () const
 Gets the number of symbols. More...
 
size_t numRefs () const
 
bool empty () const
 
size_t bytes () const
 

Detailed Description

An efficient structure of storing large set of symbol references in memory.

Filenames are deduplicated.

Definition at line 110 of file Ref.h.

Member Typedef Documentation

◆ const_iterator

Definition at line 114 of file Ref.h.

◆ iterator

Definition at line 115 of file Ref.h.

◆ value_type

using clang::clangd::RefSlab::value_type = std::pair<SymbolID, llvm::ArrayRef<Ref> >

Definition at line 113 of file Ref.h.

Constructor & Destructor Documentation

◆ RefSlab() [1/2]

clang::clangd::RefSlab::RefSlab ( )
default

◆ RefSlab() [2/2]

clang::clangd::RefSlab::RefSlab ( RefSlab &&  Slab)
default

Member Function Documentation

◆ begin()

const_iterator clang::clangd::RefSlab::begin ( ) const
inline

Definition at line 121 of file Ref.h.

Referenced by clang::clangd::printArgv().

◆ bytes()

size_t clang::clangd::RefSlab::bytes ( ) const
inline

Definition at line 128 of file Ref.h.

Referenced by clang::clangd::FileSymbols::profile().

◆ empty()

bool clang::clangd::RefSlab::empty ( ) const
inline

Definition at line 126 of file Ref.h.

◆ end()

const_iterator clang::clangd::RefSlab::end ( ) const
inline

Definition at line 122 of file Ref.h.

◆ numRefs()

size_t clang::clangd::RefSlab::numRefs ( ) const
inline

Definition at line 125 of file Ref.h.

Referenced by clang::clangd::loadIndex().

◆ operator=()

RefSlab& clang::clangd::RefSlab::operator= ( RefSlab &&  RHS)
default

◆ size()

size_t clang::clangd::RefSlab::size ( ) const
inline

Gets the number of symbols.

Definition at line 124 of file Ref.h.


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