41 buffer.data =
nullptr;
53 memcpy(
data, t,
sizeof(T) * size);
72 buffer.data =
nullptr;
88 buffer.
data =
nullptr;
106 operator std::string_view()
const
109 return std::string_view();
111 return std::string_view(
reinterpret_cast<char*
>(
data),
m_size);
#define DISABLE_CLASS_COPY(C)
Definition basic_macros.h:26
Buffer(const T *t, size_t size)
Definition pointer.h:48
T * data
Definition pointer.h:119
size_t m_size
Definition pointer.h:120
Buffer(size_t size)
Definition pointer.h:22
Buffer & operator=(Buffer &&buffer)
Definition pointer.h:64
T & operator[](size_t i) const
Definition pointer.h:92
void copyTo(Buffer &buffer) const
Definition pointer.h:80
~Buffer()
Definition pointer.h:59
Buffer()
Definition pointer.h:17
T * operator*() const
Definition pointer.h:96
Buffer(const Buffer &)=delete
Buffer(Buffer &&buffer)
Definition pointer.h:36
size_t getSize() const
Definition pointer.h:101
Buffer & operator=(const Buffer &)=delete
void drop()
Definition pointer.h:115
virtual ~IntrusiveReferenceCounted()=default
void grab() noexcept
Definition pointer.h:242
u32 m_refcount
Definition pointer.h:247
void drop() noexcept
Definition pointer.h:243
IntrusiveReferenceCounted()=default
T * operator*() const
Definition pointer.h:206
u32 * refcount
Definition pointer.h:234
SharedBuffer(const Buffer< T > &buffer)
Copies whole buffer.
Definition pointer.h:191
size_t m_size
Definition pointer.h:233
SharedBuffer(const SharedBuffer &buffer)
Definition pointer.h:156
SharedBuffer & operator=(const SharedBuffer &buffer)
Definition pointer.h:164
T & operator[](size_t i) const
Definition pointer.h:200
T * data
Definition pointer.h:232
size_t getSize() const
Definition pointer.h:211
~SharedBuffer()
Definition pointer.h:195
SharedBuffer()
Definition pointer.h:134
SharedBuffer(const T *t, size_t size)
Copies whole buffer.
Definition pointer.h:177
SharedBuffer(size_t size)
Definition pointer.h:142
void drop()
Definition pointer.h:222