#include <core.h>
Public Types | |
using | const_reference = const T & |
using | value_type = T |
Public Member Functions | |
template<typename U > | |
void | append (const U *begin, const U *end) |
auto | begin () FMT_NOEXCEPT -> T * |
auto | begin () const FMT_NOEXCEPT -> const T * |
buffer (const buffer &)=delete | |
auto | capacity () const FMT_NOEXCEPT -> size_t |
void | clear () |
auto | data () FMT_NOEXCEPT -> T * |
auto | data () const FMT_NOEXCEPT -> const T * |
auto | end () FMT_NOEXCEPT -> T * |
auto | end () const FMT_NOEXCEPT -> const T * |
void | operator= (const buffer &)=delete |
template<typename I > | |
auto | operator[] (I index) -> T & |
template<typename I > | |
auto | operator[] (I index) const -> const T & |
void | push_back (const T &value) |
auto | size () const FMT_NOEXCEPT -> size_t |
void | try_reserve (size_t new_capacity) |
void | try_resize (size_t count) |
Protected Member Functions | |
buffer (size_t sz) FMT_NOEXCEPT | |
buffer (T *p=nullptr, size_t sz=0, size_t cap=0) FMT_NOEXCEPT | |
buffer (buffer &&)=default | |
virtual void | grow (size_t capacity)=0 |
void | set (T *buf_data, size_t buf_capacity) FMT_NOEXCEPT |
~buffer ()=default | |
Private Attributes | |
size_t | capacity_ |
T * | ptr_ |
size_t | size_ |
A contiguous memory buffer with an optional growing ability. It is an internal class and shouldn't be used directly, only via ~fmtbasic_memory_buffer
.
using buffer< T >::const_reference = const T& |
using buffer< T >::value_type = T |
void buffer< T >::append | ( | const U * | begin, |
const U * | end | ||
) |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
protectedpure virtual |
Increases the buffer capacity to hold at least capacity elements.
Implemented in counting_buffer< T >, iterator_buffer< std::back_insert_iterator< Container >, enable_if_t< is_contiguous< Container >::value, typename Container::value_type > >, iterator_buffer< T *, T >, and iterator_buffer< OutputIt, T, Traits >.
|
inline |
|
inline |
|
inlineprotected |
|
inline |
|
inline |
|
inline |