template<typename T>
llvm::SmallVectorImpl class

This class consists of common code factored out of the SmallVector class to reduce code duplication based on the SmallVector 'N' template parameter.

Base classes

template<typename T, bool isPodLike>
class SmallVectorTemplateBase

Derived classes

template<typename T, unsigned N>
class SmallVector

Public functions

template<typename in_iter, typename = typename std::enable_if<std::is_convertible< typename std::iterator_traits<in_iter>::iterator_category, std::input_iterator_tag>::value>::type>
void append(in_iter in_start, in_iter in_end)
Add the specified range to the end of the SmallVector.
void append(size_type NumInputs, const T& Elt)
Add the specified range to the end of the SmallVector.
void set_size(size_type N)

Function documentation

template<typename T>
void llvm::SmallVectorImpl<T>::set_size(size_type N)

Set the array size to N, which the current array must have enough capacity for.

This does not construct or destroy any elements in the vector.

Clients can use this in conjunction with capacity() to write past the end of the buffer when they know that more elements are available, and only update the size later. This avoids the cost of value initializing elements which will only be overwritten.