Caffe2 - C++ API
A deep learning, cross platform ML framework
Public Types | Public Member Functions | Protected Member Functions | Friends
c10::SmallVectorTemplateCommon< T, typename > Class Template Reference

This is the part of SmallVectorTemplateBase which does not depend on whether the type T is a POD. More...

#include <SmallVector.h>

Inheritance diagram for c10::SmallVectorTemplateCommon< T, typename >:
c10::SmallVectorBase

Public Types

using size_type = size_t
 
using difference_type = ptrdiff_t
 
using value_type = T
 
using iterator = T *
 
using const_iterator = const T *
 
using const_reverse_iterator = std::reverse_iterator< const_iterator >
 
using reverse_iterator = std::reverse_iterator< iterator >
 
using reference = T &
 
using const_reference = const T &
 
using pointer = T *
 
using const_pointer = const T *
 

Public Member Functions

iterator begin ()
 
const_iterator begin () const
 
iterator end ()
 
const_iterator end () const
 
reverse_iterator rbegin ()
 
const_reverse_iterator rbegin () const
 
reverse_iterator rend ()
 
const_reverse_iterator rend () const
 
size_type size () const
 
size_type max_size () const
 
size_t capacity () const
 Return the total number of elements in the currently allocated buffer.
 
pointer data ()
 Return a pointer to the vector's buffer, even if empty().
 
const_pointer data () const
 Return a pointer to the vector's buffer, even if empty().
 
reference at (size_type idx)
 
const_reference at (size_type idx) const
 
reference operator[] (size_type idx)
 
const_reference operator[] (size_type idx) const
 
reference front ()
 
const_reference front () const
 
reference back ()
 
const_reference back () const
 
- Public Member Functions inherited from c10::SmallVectorBase
size_t size_in_bytes () const
 This returns size()*sizeof(T).
 
size_t capacity_in_bytes () const
 capacity_in_bytes - This returns capacity()*sizeof(T).
 
bool empty () const
 

Protected Member Functions

 SmallVectorTemplateCommon (size_t Size)
 
void grow_pod (size_t MinSizeInBytes, size_t TSize)
 
bool isSmall () const
 Return true if this is a smallvector which has not had dynamic memory allocated for it. More...
 
void resetToSmall ()
 Put this vector in a state of being small.
 
void setEnd (T *P)
 
iterator capacity_ptr ()
 
const_iterator capacity_ptr () const
 
- Protected Member Functions inherited from c10::SmallVectorBase
 SmallVectorBase (void *FirstEl, size_t Size)
 
void grow_pod (void *FirstEl, size_t MinSizeInBytes, size_t TSize)
 This is an implementation of the grow() method which only works on POD-like data types and is out of line to reduce code duplication. More...
 

Friends

template<typename , unsigned >
struct SmallVectorStorage
 

Additional Inherited Members

- Protected Attributes inherited from c10::SmallVectorBase
void * BeginX
 
void * EndX
 
void * CapacityX
 

Detailed Description

template<typename T, typename = void>
class c10::SmallVectorTemplateCommon< T, typename >

This is the part of SmallVectorTemplateBase which does not depend on whether the type T is a POD.

The extra dummy template argument is used by ArrayRef to avoid unnecessarily requiring T to be complete.

Definition at line 88 of file SmallVector.h.

Member Function Documentation

template<typename T, typename = void>
bool c10::SmallVectorTemplateCommon< T, typename >::isSmall ( ) const
inlineprotected

Return true if this is a smallvector which has not had dynamic memory allocated for it.

Definition at line 109 of file SmallVector.h.


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