class SmallVector

Declaration

template <typename T,
          unsigned int N = CalculateSmallVectorDefaultInlinedElements<
              type - parameter - 0 - 0>::value>
class SmallVector { /* full declaration omitted */ };

Description

This is a 'vector' (really, a variable-sized array), optimized for the case when the array is small. It contains some number of elements in-place, which allows it to avoid heap allocation when the actual number of elements is below that threshold. This allows normal "small" cases to be fast without losing generality for large inputs.

Declared at: llvm/include/llvm/ADT/SmallVector.h:1185

Templates

T
unsigned int N = CalculateSmallVectorDefaultInlinedElements<type-parameter-0-0>::value

Method Overview

Methods

SmallVector<T, N>()

Declared at: llvm/include/llvm/ADT/SmallVector.h:1188

SmallVector<T, N>(size_t Size,
                  const T& Value = type -
                                   parameter - 0 -
                                   0())

Declared at: llvm/include/llvm/ADT/SmallVector.h:1195

Parameters

size_t Size
const T& Value = type-parameter-0-0()

SmallVector<T, N>(std::initializer_list<T> IL)

Declared at: llvm/include/llvm/ADT/SmallVector.h:1214

Parameters

std::initializer_list<T> IL

SmallVector<T, N>(const SmallVector<T, N>& RHS)

Declared at: llvm/include/llvm/ADT/SmallVector.h:1218

Parameters

const SmallVector<T, N>& RHS

SmallVector<T, N>(SmallVector<T, N>&& RHS)

Declared at: llvm/include/llvm/ADT/SmallVector.h:1228

Parameters

SmallVector<T, N>&& RHS

SmallVector<T, N>(SmallVectorImpl<T>&& RHS)

Declared at: llvm/include/llvm/ADT/SmallVector.h:1233

Parameters

SmallVectorImpl<T>&& RHS

template <
    typename ItTy,
    typename =
        std::enable_if_t<std::is_convertible<
            typename std::iterator_traits<
                ItTy>::iterator_category,
            std::input_iterator_tag>::value>>
SmallVector<T, N>(ItTy S, ItTy E)

Declared at: llvm/include/llvm/ADT/SmallVector.h:1204

Templates

ItTy
= std::enable_if_t<std::is_convertible<typename std::iterator_traits<ItTy>::iterator_category, std::input_iterator_tag>::value>

Parameters

ItTy S
ItTy E

template <typename RangeTy>
SmallVector<T, N>(
    const iterator_range<RangeTy>& R)

Declared at: llvm/include/llvm/ADT/SmallVector.h:1209

Templates

RangeTy

Parameters

const iterator_range<RangeTy>& R

~SmallVector<T, N>()

Declared at: llvm/include/llvm/ADT/SmallVector.h:1190