LLVM API Documentation

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Types | Public Member Functions | Public Attributes | List of all members
llvm::TinyPtrVector< EltTy > Class Template Reference

#include <TinyPtrVector.h>

Collaboration diagram for llvm::TinyPtrVector< EltTy >:
Collaboration graph
[legend]

Public Types

typedef llvm::SmallVector
< EltTy, 4 > 
VecTy
 
typedef VecTy::value_type value_type
 
typedef const EltTy * const_iterator
 
typedef EltTy * iterator
 

Public Member Functions

 TinyPtrVector ()
 
 ~TinyPtrVector ()
 
 TinyPtrVector (const TinyPtrVector &RHS)
 
TinyPtrVectoroperator= (const TinyPtrVector &RHS)
 
 operator ArrayRef< EltTy > () const
 
bool empty () const
 
unsigned size () const
 
iterator begin ()
 
iterator end ()
 
const_iterator begin () const
 
const_iterator end () const
 
EltTy operator[] (unsigned i) const
 
EltTy front () const
 
EltTy back () const
 
void push_back (EltTy NewVal)
 
void pop_back ()
 
void clear ()
 
iterator erase (iterator I)
 
iterator erase (iterator S, iterator E)
 
iterator insert (iterator I, const EltTy &Elt)
 
template<typename ItTy >
iterator insert (iterator I, ItTy From, ItTy To)
 

Public Attributes

llvm::PointerUnion< EltTy,
VecTy * > 
Val
 

Detailed Description

template<typename EltTy>
class llvm::TinyPtrVector< EltTy >

TinyPtrVector - This class is specialized for cases where there are normally 0 or 1 element in a vector, but is general enough to go beyond that when required.

NOTE: This container doesn't allow you to store a null pointer into it.

Definition at line 28 of file TinyPtrVector.h.

Member Typedef Documentation

template<typename EltTy>
typedef const EltTy* llvm::TinyPtrVector< EltTy >::const_iterator

Definition at line 129 of file TinyPtrVector.h.

template<typename EltTy>
typedef EltTy* llvm::TinyPtrVector< EltTy >::iterator

Definition at line 130 of file TinyPtrVector.h.

template<typename EltTy>
typedef VecTy::value_type llvm::TinyPtrVector< EltTy >::value_type

Definition at line 31 of file TinyPtrVector.h.

template<typename EltTy>
typedef llvm::SmallVector<EltTy, 4> llvm::TinyPtrVector< EltTy >::VecTy

Definition at line 30 of file TinyPtrVector.h.

Constructor & Destructor Documentation

template<typename EltTy>
llvm::TinyPtrVector< EltTy >::TinyPtrVector ( )
inline

Definition at line 35 of file TinyPtrVector.h.

template<typename EltTy>
llvm::TinyPtrVector< EltTy >::~TinyPtrVector ( )
inline

Definition at line 36 of file TinyPtrVector.h.

References llvm::TinyPtrVector< EltTy >::Val.

template<typename EltTy>
llvm::TinyPtrVector< EltTy >::TinyPtrVector ( const TinyPtrVector< EltTy > &  RHS)
inline

Definition at line 41 of file TinyPtrVector.h.

References llvm::TinyPtrVector< EltTy >::Val.

Member Function Documentation

template<typename EltTy>
EltTy llvm::TinyPtrVector< EltTy >::back ( ) const
inline
template<typename EltTy>
iterator llvm::TinyPtrVector< EltTy >::begin ( )
inline
template<typename EltTy>
const_iterator llvm::TinyPtrVector< EltTy >::begin ( ) const
inline

Definition at line 146 of file TinyPtrVector.h.

References llvm::TinyPtrVector< EltTy >::begin().

template<typename EltTy>
void llvm::TinyPtrVector< EltTy >::clear ( )
inline
template<typename EltTy>
bool llvm::TinyPtrVector< EltTy >::empty ( ) const
inline
template<typename EltTy>
iterator llvm::TinyPtrVector< EltTy >::end ( )
inline
template<typename EltTy>
const_iterator llvm::TinyPtrVector< EltTy >::end ( ) const
inline

Definition at line 150 of file TinyPtrVector.h.

References llvm::TinyPtrVector< EltTy >::end().

template<typename EltTy>
iterator llvm::TinyPtrVector< EltTy >::erase ( iterator  I)
inline
template<typename EltTy>
iterator llvm::TinyPtrVector< EltTy >::erase ( iterator  S,
iterator  E 
)
inline
template<typename EltTy>
EltTy llvm::TinyPtrVector< EltTy >::front ( ) const
inline
template<typename EltTy>
iterator llvm::TinyPtrVector< EltTy >::insert ( iterator  I,
const EltTy &  Elt 
)
inline
template<typename EltTy>
template<typename ItTy >
iterator llvm::TinyPtrVector< EltTy >::insert ( iterator  I,
ItTy  From,
ItTy  To 
)
inline
template<typename EltTy>
llvm::TinyPtrVector< EltTy >::operator ArrayRef< EltTy > ( ) const
inline

Definition at line 104 of file TinyPtrVector.h.

References llvm::TinyPtrVector< EltTy >::Val.

template<typename EltTy>
TinyPtrVector& llvm::TinyPtrVector< EltTy >::operator= ( const TinyPtrVector< EltTy > &  RHS)
inline
template<typename EltTy>
EltTy llvm::TinyPtrVector< EltTy >::operator[] ( unsigned  i) const
inline

Definition at line 154 of file TinyPtrVector.h.

References llvm::TinyPtrVector< EltTy >::Val.

template<typename EltTy>
void llvm::TinyPtrVector< EltTy >::pop_back ( )
inline

Definition at line 199 of file TinyPtrVector.h.

References llvm::TinyPtrVector< EltTy >::Val.

template<typename EltTy>
void llvm::TinyPtrVector< EltTy >::push_back ( EltTy  NewVal)
inline
template<typename EltTy>
unsigned llvm::TinyPtrVector< EltTy >::size ( ) const
inline

Member Data Documentation

template<typename EltTy>
llvm::PointerUnion<EltTy, VecTy*> llvm::TinyPtrVector< EltTy >::Val

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