class SmallVectorTemplateBase
Declaration
template <typename T,
bool =
is_trivially_copyable<type - parameter - 0 - 0>::value>
class SmallVectorTemplateBase { /* full declaration omitted */ };
Description
SmallVectorTemplateBase <TriviallyCopyable = false> - This is where we put method implementations that are designed to work with non-POD-like T's.
Declared at: llvm/include/llvm/ADT/SmallVector.h:179
Templates
- T
- bool = is_trivially_copyable<type-parameter-0-0>::value
Method Overview
- protected SmallVectorTemplateBase<T, >(size_t Size)
- protected static void destroy_range(T * S, T * E)
- protected void grow(size_t MinSize = 0)
- public void pop_back()
- public void push_back(const T & Elt)
- public void push_back(T && Elt)
- protected template <typename It1, typename It2>static void uninitialized_copy(It1 I, It1 E, It2 Dest)
- protected template <typename It1, typename It2>static void uninitialized_move(It1 I, It1 E, It2 Dest)
Methods
¶SmallVectorTemplateBase<T, >(size_t Size)
SmallVectorTemplateBase<T, >(size_t Size)
Declared at: llvm/include/llvm/ADT/SmallVector.h:181
Parameters
- size_t Size
¶static void destroy_range(T* S, T* E)
static void destroy_range(T* S, T* E)
Declared at: llvm/include/llvm/ADT/SmallVector.h:183
Parameters
- T* S
- T* E
¶void grow(size_t MinSize = 0)
void grow(size_t MinSize = 0)
Description
Grow the allocated memory (without initializing new elements), doubling the size of the allocated memory. Guarantees space for at least one more element, or MinSize more elements if specified.
Declared at: llvm/include/llvm/ADT/SmallVector.h:208
Parameters
- size_t MinSize = 0
¶void pop_back()
void pop_back()
Declared at: llvm/include/llvm/ADT/SmallVector.h:225
¶void push_back(const T& Elt)
void push_back(const T& Elt)
Declared at: llvm/include/llvm/ADT/SmallVector.h:211
Parameters
- const T& Elt
¶void push_back(T&& Elt)
void push_back(T&& Elt)
Declared at: llvm/include/llvm/ADT/SmallVector.h:218
Parameters
- T&& Elt
¶template <typename It1, typename It2>
static void uninitialized_copy(It1 I,
It1 E,
It2 Dest)
template <typename It1, typename It2>
static void uninitialized_copy(It1 I,
It1 E,
It2 Dest)
Description
Copy the range [I, E) onto the uninitialized memory starting with "Dest", constructing elements as needed.
Declared at: llvm/include/llvm/ADT/SmallVector.h:201
Templates
- It1
- It2
Parameters
- It1 I
- It1 E
- It2 Dest
¶template <typename It1, typename It2>
static void uninitialized_move(It1 I,
It1 E,
It2 Dest)
template <typename It1, typename It2>
static void uninitialized_move(It1 I,
It1 E,
It2 Dest)
Description
Move the range [I, E) into the uninitialized memory starting with "Dest", constructing elements as needed.
Declared at: llvm/include/llvm/ADT/SmallVector.h:193
Templates
- It1
- It2
Parameters
- It1 I
- It1 E
- It2 Dest