BFGraph
Public Types | Public Member Functions | Data Fields
tiny_vector< T, N > Class Template Reference

Public Types

typedef T * iterator
 
typedef T const * const_iterator
 

Public Member Functions

 tiny_vector (std::initializer_list< T > l)
 
 tiny_vector (const tiny_vector &o)
 
 tiny_vector (const std::vector< T > &o)
 
 tiny_vector (tiny_vector &&o)
 
tiny_vectoroperator= (const tiny_vector &o)
 
tiny_vectoroperator= (tiny_vector &&o)
 
iterator begin ()
 
const_iterator begin () const
 
iterator end ()
 
const_iterator end () const
 
bool isShort () const
 
T * getPointer ()
 
const T * getPointer () const
 
size_t size () const
 
bool empty () const
 
bool operator== (const tiny_vector &o) const
 
bool operator!= (const tiny_vector &o) const
 
size_t capacity () const
 
T & operator[] (size_t i)
 
const T & operator[] (size_t i) const
 
void push_back (const T &value)
 
void insert (const T &value, const size_t position)
 
void remove (const size_t position)
 
void clear ()
 
void reserve (size_t sz)
 
void _reserve_and_copy (size_t sz)
 

Data Fields

union {
   struct {
      T   data [N]
 
      uint8_t   size
 
   }   arr
 
   struct {
      T *   data
 
      size_t   cap
 
      size_t   size
 
   }   vec
 
}; 
 
bool short_
 

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