LLVM API Documentation

Public Member Functions | Protected Member Functions | Static Protected Member Functions
llvm::SmallVectorTemplateBase< T, true > Class Template Reference

#include <SmallVector.h>

Inheritance diagram for llvm::SmallVectorTemplateBase< T, true >:
Inheritance graph
[legend]
Collaboration diagram for llvm::SmallVectorTemplateBase< T, true >:
Collaboration graph
[legend]

List of all members.

Public Member Functions

void push_back (const T &Elt)
void pop_back ()

Protected Member Functions

 SmallVectorTemplateBase (size_t Size)
void grow (size_t MinSize=0)

Static Protected Member Functions

static void destroy_range (T *, T *)
template<typename It1 , typename It2 >
static It2 move (It1 I, It1 E, It2 Dest)
template<typename It1 , typename It2 >
static It2 move_backward (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_copy (It1 I, It1 E, It2 Dest)
template<typename T1 , typename T2 >
static void uninitialized_copy (T1 *I, T1 *E, T2 *Dest)

Detailed Description

template<typename T>
class llvm::SmallVectorTemplateBase< T, true >

SmallVectorTemplateBase<isPodLike = true> - This is where we put method implementations that are designed to work with POD-like T's.

Definition at line 271 of file SmallVector.h.


Constructor & Destructor Documentation

template<typename T >
llvm::SmallVectorTemplateBase< T, true >::SmallVectorTemplateBase ( size_t  Size) [inline, protected]

Definition at line 273 of file SmallVector.h.


Member Function Documentation

template<typename T >
static void llvm::SmallVectorTemplateBase< T, true >::destroy_range ( T ,
T  
) [inline, static, protected]

Definition at line 276 of file SmallVector.h.

template<typename T >
void llvm::SmallVectorTemplateBase< T, true >::grow ( size_t  MinSize = 0) [inline, protected]

Double the size of the allocated memory, guaranteeing space for at least one more element or MinSize if specified.

Definition at line 320 of file SmallVector.h.

References llvm::SmallVectorTemplateCommon< T >::grow_pod().

template<typename T >
template<typename It1 , typename It2 >
static It2 llvm::SmallVectorTemplateBase< T, true >::move ( It1  I,
It1  E,
It2  Dest 
) [inline, static, protected]

Use move-assignment to move the range [I, E) onto the objects starting with "Dest". For PODs, this is just memcpy.

Definition at line 281 of file SmallVector.h.

template<typename T >
template<typename It1 , typename It2 >
static It2 llvm::SmallVectorTemplateBase< T, true >::move_backward ( It1  I,
It1  E,
It2  Dest 
) [inline, static, protected]

Use move-assignment to move the range [I, E) onto the objects ending at "Dest", moving objects in reverse order.

Definition at line 288 of file SmallVector.h.

template<typename T >
void llvm::SmallVectorTemplateBase< T, true >::pop_back ( ) [inline]
template<typename T >
void llvm::SmallVectorTemplateBase< T, true >::push_back ( const T Elt) [inline]
template<typename T >
template<typename It1 , typename It2 >
static void llvm::SmallVectorTemplateBase< T, true >::uninitialized_copy ( It1  I,
It1  E,
It2  Dest 
) [inline, static, protected]

Copy the range [I, E) onto the uninitialized memory starting with "Dest", constructing elements into it as needed.

Definition at line 303 of file SmallVector.h.

References llvm::SmallVectorTemplateBase< T, isPodLike >::uninitialized_copy().

template<typename T >
template<typename T1 , typename T2 >
static void llvm::SmallVectorTemplateBase< T, true >::uninitialized_copy ( T1 I,
T1 E,
T2 *  Dest 
) [inline, static, protected]

Copy the range [I, E) onto the uninitialized memory starting with "Dest", constructing elements into it as needed.

Definition at line 311 of file SmallVector.h.

References llvm::LibFunc::memcpy.

template<typename T >
template<typename It1 , typename It2 >
static void llvm::SmallVectorTemplateBase< T, true >::uninitialized_move ( It1  I,
It1  E,
It2  Dest 
) [inline, static, protected]

Move the range [I, E) onto the uninitialized memory starting with "Dest", constructing elements into it as needed.

Definition at line 295 of file SmallVector.h.

References llvm::SmallVectorTemplateBase< T, isPodLike >::uninitialized_copy().


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