LLVM  mainline
Public Member Functions
llvm::SmallVector< T, N > Class Template Reference

#include <SmallVector.h>

Inherits llvm::SmallVectorImpl< T >.

Collaboration diagram for llvm::SmallVector< T, N >:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 SmallVector ()
 SmallVector (size_t Size, const T &Value=T())
template<typename ItTy >
 SmallVector (ItTy S, ItTy E)
template<typename RangeTy >
 SmallVector (const llvm::iterator_range< RangeTy > R)
 SmallVector (std::initializer_list< T > IL)
 SmallVector (const SmallVector &RHS)
const SmallVectoroperator= (const SmallVector &RHS)
 SmallVector (SmallVector &&RHS)
const SmallVectoroperator= (SmallVector &&RHS)
 SmallVector (SmallVectorImpl< T > &&RHS)
const SmallVectoroperator= (SmallVectorImpl< T > &&RHS)
const SmallVectoroperator= (std::initializer_list< T > IL)

Detailed Description

template<typename T, unsigned N>
class llvm::SmallVector< T, N >

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.

Note that this does not attempt to be exception safe.

Definition at line 859 of file SmallVector.h.


Constructor & Destructor Documentation

template<typename T, unsigned N>
llvm::SmallVector< T, N >::SmallVector ( ) [inline]

Definition at line 863 of file SmallVector.h.

template<typename T, unsigned N>
llvm::SmallVector< T, N >::SmallVector ( size_t  Size,
const T Value = T() 
) [inline, explicit]

Definition at line 866 of file SmallVector.h.

template<typename T, unsigned N>
template<typename ItTy >
llvm::SmallVector< T, N >::SmallVector ( ItTy  S,
ItTy  E 
) [inline]

Definition at line 872 of file SmallVector.h.

template<typename T, unsigned N>
template<typename RangeTy >
llvm::SmallVector< T, N >::SmallVector ( const llvm::iterator_range< RangeTy >  R) [inline, explicit]

Definition at line 877 of file SmallVector.h.

template<typename T, unsigned N>
llvm::SmallVector< T, N >::SmallVector ( std::initializer_list< T IL) [inline]

Definition at line 882 of file SmallVector.h.

template<typename T, unsigned N>
llvm::SmallVector< T, N >::SmallVector ( const SmallVector< T, N > &  RHS) [inline]

Definition at line 886 of file SmallVector.h.

template<typename T, unsigned N>
llvm::SmallVector< T, N >::SmallVector ( SmallVector< T, N > &&  RHS) [inline]

Definition at line 896 of file SmallVector.h.

template<typename T, unsigned N>
llvm::SmallVector< T, N >::SmallVector ( SmallVectorImpl< T > &&  RHS) [inline]

Definition at line 906 of file SmallVector.h.


Member Function Documentation

template<typename T, unsigned N>
const SmallVector& llvm::SmallVector< T, N >::operator= ( const SmallVector< T, N > &  RHS) [inline]

Definition at line 891 of file SmallVector.h.

Referenced by llvm::SmallVector< unsigned, 0 >::operator=().

template<typename T, unsigned N>
const SmallVector& llvm::SmallVector< T, N >::operator= ( SmallVector< T, N > &&  RHS) [inline]

Definition at line 901 of file SmallVector.h.

template<typename T, unsigned N>
const SmallVector& llvm::SmallVector< T, N >::operator= ( SmallVectorImpl< T > &&  RHS) [inline]

Reimplemented from llvm::SmallVectorImpl< T >.

Definition at line 911 of file SmallVector.h.

template<typename T, unsigned N>
const SmallVector& llvm::SmallVector< T, N >::operator= ( std::initializer_list< T IL) [inline]

Definition at line 916 of file SmallVector.h.


The documentation for this class was generated from the following file: