clang-tools  10.0.0svn
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 69 of file Ref.h.

Member Typedef Documentation

◆ const_iterator

Definition at line 73 of file Ref.h.

◆ iterator

Definition at line 74 of file Ref.h.

◆ value_type

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

Definition at line 72 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 80 of file Ref.h.

References Refs.

◆ bytes()

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

Definition at line 87 of file Ref.h.

References Arena, and Refs.

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

◆ empty()

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

Definition at line 85 of file Ref.h.

References Refs.

◆ end()

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

Definition at line 81 of file Ref.h.

References Refs.

◆ numRefs()

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

Definition at line 84 of file Ref.h.

◆ 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 83 of file Ref.h.

References Refs.


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