class DenseSetImpl

Declaration

template <typename ValueT, typename MapTy, typename ValueInfoT>
class DenseSetImpl { /* full declaration omitted */ };

Description

Base class for DenseSet and DenseSmallSet. MapTy should be either DenseMap <ValueT , detail::DenseSetEmpty, ValueInfoT, detail::DenseSetPair <ValueT >> or the equivalent SmallDenseMap type. ValueInfoT must implement the DenseMapInfo "concept".

Declared at: llvm/include/llvm/ADT/DenseSet.h:54

Templates

ValueT
MapTy
ValueInfoT

Member Variables

private MapTy TheMap

Method Overview

  • public DenseSetImpl<ValueT, MapTy, ValueInfoT>(std::initializer_list<ValueT> Elems)
  • public template <typename InputIt> DenseSetImpl<ValueT, MapTy, ValueInfoT>(const InputIt & I, const InputIt & E)
  • public DenseSetImpl<ValueT, MapTy, ValueInfoT>(unsigned int InitialReserve = 0)
  • public llvm::detail::DenseSetImpl::const_iterator begin() const
  • public llvm::detail::DenseSetImpl::iterator begin()
  • public void clear()
  • public bool contains(const_arg_type_t<ValueT> V) const
  • public llvm::detail::DenseSetImpl::size_type count(const_arg_type_t<ValueT> V) const
  • public bool empty() const
  • public llvm::detail::DenseSetImpl::const_iterator end() const
  • public llvm::detail::DenseSetImpl::iterator end()
  • public bool erase(const ValueT & V)
  • public void erase(llvm::detail::DenseSetImpl::ConstIterator CI)
  • public void erase(llvm::detail::DenseSetImpl::Iterator I)
  • public llvm::detail::DenseSetImpl::iterator find(const_arg_type_t<ValueT> V)
  • public llvm::detail::DenseSetImpl::const_iterator find(const_arg_type_t<ValueT> V) const
  • public template <class LookupKeyT>llvm::detail::DenseSetImpl::iterator find_as(const LookupKeyT & Val)
  • public template <class LookupKeyT>llvm::detail::DenseSetImpl::const_iterator find_as(const LookupKeyT & Val) const
  • public size_t getMemorySize() const
  • public std::pair<iterator, bool> insert(const ValueT & V)
  • public std::pair<iterator, bool> insert(ValueT && V)
  • public template <typename InputIt>void insert(InputIt I, InputIt E)
  • public template <typename LookupKeyT>std::pair<iterator, bool> insert_as(const ValueT & V, const LookupKeyT & LookupKey)
  • public template <typename LookupKeyT>std::pair<iterator, bool> insert_as(ValueT && V, const LookupKeyT & LookupKey)
  • public void reserve(size_t Size)
  • public void resize(size_t Size)
  • public llvm::detail::DenseSetImpl::size_type size() const
  • public void swap(DenseSetImpl<ValueT, MapTy, ValueInfoT> & RHS)

Methods

DenseSetImpl<ValueT, MapTy, ValueInfoT>(
    std::initializer_list<ValueT> Elems)

Declared at: llvm/include/llvm/ADT/DenseSet.h:75

Parameters

std::initializer_list<ValueT> Elems

template <typename InputIt>
DenseSetImpl<ValueT, MapTy, ValueInfoT>(
    const InputIt& I,
    const InputIt& E)

Declared at: llvm/include/llvm/ADT/DenseSet.h:70

Templates

InputIt

Parameters

const InputIt& I
const InputIt& E

DenseSetImpl<ValueT, MapTy, ValueInfoT>(
    unsigned int InitialReserve = 0)

Declared at: llvm/include/llvm/ADT/DenseSet.h:67

Parameters

unsigned int InitialReserve = 0

llvm::detail::DenseSetImpl::const_iterator begin()
    const

Declared at: llvm/include/llvm/ADT/DenseSet.h:176

llvm::detail::DenseSetImpl::iterator begin()

Declared at: llvm/include/llvm/ADT/DenseSet.h:173

void clear()

Declared at: llvm/include/llvm/ADT/DenseSet.h:92

bool contains(const_arg_type_t<ValueT> V) const

Description

Check if the set contains the given element.

Declared at: llvm/include/llvm/ADT/DenseSet.h:185

Parameters

const_arg_type_t<ValueT> V

llvm::detail::DenseSetImpl::size_type count(
    const_arg_type_t<ValueT> V) const

Description

Return 1 if the specified key is in the set, 0 otherwise.

Declared at: llvm/include/llvm/ADT/DenseSet.h:97

Parameters

const_arg_type_t<ValueT> V

bool empty() const

Declared at: llvm/include/llvm/ADT/DenseSet.h:80

llvm::detail::DenseSetImpl::const_iterator end()
    const

Declared at: llvm/include/llvm/ADT/DenseSet.h:177

llvm::detail::DenseSetImpl::iterator end()

Declared at: llvm/include/llvm/ADT/DenseSet.h:174

bool erase(const ValueT& V)

Declared at: llvm/include/llvm/ADT/DenseSet.h:101

Parameters

const ValueT& V

void erase(
    llvm::detail::DenseSetImpl::ConstIterator CI)

Declared at: llvm/include/llvm/ADT/DenseSet.h:204

Parameters

llvm::detail::DenseSetImpl::ConstIterator CI

void erase(llvm::detail::DenseSetImpl::Iterator I)

Declared at: llvm/include/llvm/ADT/DenseSet.h:203

Parameters

llvm::detail::DenseSetImpl::Iterator I

llvm::detail::DenseSetImpl::iterator find(
    const_arg_type_t<ValueT> V)

Declared at: llvm/include/llvm/ADT/DenseSet.h:179

Parameters

const_arg_type_t<ValueT> V

llvm::detail::DenseSetImpl::const_iterator find(
    const_arg_type_t<ValueT> V) const

Declared at: llvm/include/llvm/ADT/DenseSet.h:180

Parameters

const_arg_type_t<ValueT> V

template <class LookupKeyT>
llvm::detail::DenseSetImpl::iterator find_as(
    const LookupKeyT& Val)

Description

Alternative version of find() which allows a different, and possibly less expensive, key type. The DenseMapInfo is responsible for supplying methods getHashValue(LookupKeyT) and isEqual(LookupKeyT, KeyT) for each key type used.

Declared at: llvm/include/llvm/ADT/DenseSet.h:195

Templates

LookupKeyT

Parameters

const LookupKeyT& Val

template <class LookupKeyT>
llvm::detail::DenseSetImpl::const_iterator
find_as(const LookupKeyT& Val) const

Declared at: llvm/include/llvm/ADT/DenseSet.h:199

Templates

LookupKeyT

Parameters

const LookupKeyT& Val

size_t getMemorySize() const

Declared at: llvm/include/llvm/ADT/DenseSet.h:82

std::pair<iterator, bool> insert(const ValueT& V)

Declared at: llvm/include/llvm/ADT/DenseSet.h:206

Parameters

const ValueT& V

std::pair<iterator, bool> insert(ValueT&& V)

Declared at: llvm/include/llvm/ADT/DenseSet.h:211

Parameters

ValueT&& V

template <typename InputIt>
void insert(InputIt I, InputIt E)

Declared at: llvm/include/llvm/ADT/DenseSet.h:230

Templates

InputIt

Parameters

InputIt I
InputIt E

template <typename LookupKeyT>
std::pair<iterator, bool> insert_as(
    const ValueT& V,
    const LookupKeyT& LookupKey)

Description

Alternative version of insert that uses a different (and possibly less expensive) key type.

Declared at: llvm/include/llvm/ADT/DenseSet.h:219

Templates

LookupKeyT

Parameters

const ValueT& V
const LookupKeyT& LookupKey

template <typename LookupKeyT>
std::pair<iterator, bool> insert_as(
    ValueT&& V,
    const LookupKeyT& LookupKey)

Declared at: llvm/include/llvm/ADT/DenseSet.h:224

Templates

LookupKeyT

Parameters

ValueT&& V
const LookupKeyT& LookupKey

void reserve(size_t Size)

Description

Grow the DenseSet so that it can contain at least \p NumEntries items before resizing again.

Declared at: llvm/include/llvm/ADT/DenseSet.h:90

Parameters

size_t Size

void resize(size_t Size)

Description

Grow the DenseSet so that it has at least Size buckets. Will not shrink the Size of the set.

Declared at: llvm/include/llvm/ADT/DenseSet.h:86

Parameters

size_t Size

llvm::detail::DenseSetImpl::size_type size() const

Declared at: llvm/include/llvm/ADT/DenseSet.h:81

void swap(
    DenseSetImpl<ValueT, MapTy, ValueInfoT>& RHS)

Declared at: llvm/include/llvm/ADT/DenseSet.h:105

Parameters

DenseSetImpl<ValueT, MapTy, ValueInfoT>& RHS