class AllocatorList

Declaration

template <class T, class AllocatorT>
class AllocatorList { /* full declaration omitted */ };

Description

A linked-list with a custom, local allocator. Expose a std::list-like interface that owns and uses a custom LLVM-style allocator (e.g., BumpPtrAllocator), leveraging \a simple_ilist for the implementation details. Because this list owns the allocator, calling \a splice() with a different list isn't generally safe. As such, \a splice has been left out of the interface entirely.

Declared at: llvm/include/llvm/ADT/AllocatorList.h:33

Templates

T
AllocatorT

Member Variables

private llvm::AllocatorList::list_type List

Method Overview

  • public AllocatorList<T, AllocatorT>()
  • public AllocatorList<T, AllocatorT>(AllocatorList<T, AllocatorT> && X)
  • public AllocatorList<T, AllocatorT>(const AllocatorList<T, AllocatorT> & X)
  • public const T & back() const
  • public T & back()
  • public llvm::AllocatorList::iterator begin()
  • public llvm::AllocatorList::const_iterator begin() const
  • public void clear()
  • private template <class... ArgTs>llvm::AllocatorList::Node * create(ArgTs &&... Args)
  • public template <class... Ts>llvm::AllocatorList::iterator emplace(llvm::AllocatorList::iterator I, Ts &&... Vs)
  • public template <class... Ts>void emplace_back(Ts &&... Vs)
  • public template <class... Ts>void emplace_front(Ts &&... Vs)
  • public bool empty()
  • public llvm::AllocatorList::const_iterator end() const
  • public llvm::AllocatorList::iterator end()
  • public llvm::AllocatorList::iterator erase(llvm::AllocatorList::iterator First, llvm::AllocatorList::iterator Last)
  • public llvm::AllocatorList::iterator erase(llvm::AllocatorList::iterator I)
  • public T & front()
  • public const T & front() const
  • private AllocatorT & getAlloc()
  • private const AllocatorT & getAlloc() const
  • public llvm::AllocatorList::iterator insert(llvm::AllocatorList::iterator I, const T & V)
  • public template <class Iterator>void insert(llvm::AllocatorList::iterator I, Iterator First, Iterator Last)
  • public llvm::AllocatorList::iterator insert(llvm::AllocatorList::iterator I, T && V)
  • public void pop_back()
  • public void pop_front()
  • public void push_back(const T & V)
  • public void push_back(T && V)
  • public void push_front(T && V)
  • public void push_front(const T & V)
  • public llvm::AllocatorList::const_reverse_iterator rbegin() const
  • public llvm::AllocatorList::reverse_iterator rbegin()
  • public llvm::AllocatorList::const_reverse_iterator rend() const
  • public llvm::AllocatorList::reverse_iterator rend()
  • public void resetAlloc()
  • public size_t size()
  • public void swap(AllocatorList<T, AllocatorT> & RHS)
  • public ~AllocatorList<T, AllocatorT>()

Methods

AllocatorList<T, AllocatorT>()

Declared at: llvm/include/llvm/ADT/AllocatorList.h:131

AllocatorList<T, AllocatorT>(
    AllocatorList<T, AllocatorT>&& X)

Declared at: llvm/include/llvm/ADT/AllocatorList.h:132

Parameters

AllocatorList<T, AllocatorT>&& X

AllocatorList<T, AllocatorT>(
    const AllocatorList<T, AllocatorT>& X)

Declared at: llvm/include/llvm/ADT/AllocatorList.h:135

Parameters

const AllocatorList<T, AllocatorT>& X

const T& back() const

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

T& back()

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

llvm::AllocatorList::iterator begin()

Declared at: llvm/include/llvm/ADT/AllocatorList.h:161

llvm::AllocatorList::const_iterator begin() const

Declared at: llvm/include/llvm/ADT/AllocatorList.h:163

void clear()

Declared at: llvm/include/llvm/ADT/AllocatorList.h:205

template <class... ArgTs>
llvm::AllocatorList::Node* create(ArgTs&&... Args)

Declared at: llvm/include/llvm/ADT/AllocatorList.h:53

Templates

ArgTs

Parameters

ArgTs&&... Args

template <class... Ts>
llvm::AllocatorList::iterator emplace(
    llvm::AllocatorList::iterator I,
    Ts&&... Vs)

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

Templates

Ts

Parameters

llvm::AllocatorList::iterator I
Ts&&... Vs

template <class... Ts>
void emplace_back(Ts&&... Vs)

Declared at: llvm/include/llvm/ADT/AllocatorList.h:212

Templates

Ts

Parameters

Ts&&... Vs

template <class... Ts>
void emplace_front(Ts&&... Vs)

Declared at: llvm/include/llvm/ADT/AllocatorList.h:215

Templates

Ts

Parameters

Ts&&... Vs

bool empty()

Declared at: llvm/include/llvm/ADT/AllocatorList.h:158

llvm::AllocatorList::const_iterator end() const

Declared at: llvm/include/llvm/ADT/AllocatorList.h:164

llvm::AllocatorList::iterator end()

Declared at: llvm/include/llvm/ADT/AllocatorList.h:162

llvm::AllocatorList::iterator erase(
    llvm::AllocatorList::iterator First,
    llvm::AllocatorList::iterator Last)

Declared at: llvm/include/llvm/ADT/AllocatorList.h:200

Parameters

llvm::AllocatorList::iterator First
llvm::AllocatorList::iterator Last

llvm::AllocatorList::iterator erase(
    llvm::AllocatorList::iterator I)

Declared at: llvm/include/llvm/ADT/AllocatorList.h:196

Parameters

llvm::AllocatorList::iterator I

T& front()

Declared at: llvm/include/llvm/ADT/AllocatorList.h:175

const T& front() const

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

AllocatorT& getAlloc()

Declared at: llvm/include/llvm/ADT/AllocatorList.h:50

const AllocatorT& getAlloc() const

Declared at: llvm/include/llvm/ADT/AllocatorList.h:51

llvm::AllocatorList::iterator insert(
    llvm::AllocatorList::iterator I,
    const T& V)

Declared at: llvm/include/llvm/ADT/AllocatorList.h:186

Parameters

llvm::AllocatorList::iterator I
const T& V

template <class Iterator>
void insert(llvm::AllocatorList::iterator I,
            Iterator First,
            Iterator Last)

Declared at: llvm/include/llvm/ADT/AllocatorList.h:191

Templates

Iterator

Parameters

llvm::AllocatorList::iterator I
Iterator First
Iterator Last

llvm::AllocatorList::iterator insert(
    llvm::AllocatorList::iterator I,
    T&& V)

Declared at: llvm/include/llvm/ADT/AllocatorList.h:183

Parameters

llvm::AllocatorList::iterator I
T&& V

void pop_back()

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

void pop_front()

Declared at: llvm/include/llvm/ADT/AllocatorList.h:207

void push_back(const T& V)

Declared at: llvm/include/llvm/ADT/AllocatorList.h:210

Parameters

const T& V

void push_back(T&& V)

Declared at: llvm/include/llvm/ADT/AllocatorList.h:208

Parameters

T&& V

void push_front(T&& V)

Declared at: llvm/include/llvm/ADT/AllocatorList.h:209

Parameters

T&& V

void push_front(const T& V)

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

Parameters

const T& V

llvm::AllocatorList::const_reverse_iterator
rbegin() const

Declared at: llvm/include/llvm/ADT/AllocatorList.h:167

llvm::AllocatorList::reverse_iterator rbegin()

Declared at: llvm/include/llvm/ADT/AllocatorList.h:165

llvm::AllocatorList::const_reverse_iterator rend()
    const

Declared at: llvm/include/llvm/ADT/AllocatorList.h:170

llvm::AllocatorList::reverse_iterator rend()

Declared at: llvm/include/llvm/ADT/AllocatorList.h:166

void resetAlloc()

Description

Reset the underlying allocator.

Declared at: llvm/include/llvm/ADT/AllocatorList.h:222

size_t size()

Declared at: llvm/include/llvm/ADT/AllocatorList.h:159

void swap(AllocatorList<T, AllocatorT>& RHS)

Declared at: llvm/include/llvm/ADT/AllocatorList.h:153

Parameters

AllocatorList<T, AllocatorT>& RHS

~AllocatorList<T, AllocatorT>()

Declared at: llvm/include/llvm/ADT/AllocatorList.h:151