27 static void call(
void*
p) {
delete static_cast<T*
>(
p); }
36 static void call(
void*
p) {
delete[]
static_cast<T*
>(
p); }
44 static void call(
void*
p) { free(
p); }
Definition DirectZ.hpp:39
@ T
Definition D7Stream.hpp:19
@ p
Definition Window.hpp:177
Default deleter for arrays.
Definition size_ptr.hpp:34
static void call(void *p)
Definition size_ptr.hpp:36
Default deleter for single heap-allocated objects.
Definition size_ptr.hpp:25
static void call(void *p)
Definition size_ptr.hpp:27
Default deleter using free().
Definition size_ptr.hpp:43
static void call(void *p)
Definition size_ptr.hpp:44
Default no-op deleter.
Definition size_ptr.hpp:17
static void call(void *p)
Definition size_ptr.hpp:18
size_t get_size() const
Gets the number of elements pointed to.
Definition size_ptr.hpp:169
T & operator*()
Dereference operator.
Definition size_ptr.hpp:155
T * operator->()
Pointer access operator.
Definition size_ptr.hpp:148
size_ptr & operator=(const size_ptr &other)
Copy assignment operator.
Definition size_ptr.hpp:100
const T * get() const
Gets the raw pointer.
Definition size_ptr.hpp:162
size_t * ref_c
Definition size_ptr.hpp:57
size_t * size
Definition size_ptr.hpp:56
void reset()
Reset the smart pointer, decrementing the reference count and deleting resources if needed.
Definition size_ptr.hpp:125
size_ptr()=default
Default constructor.
size_ptr(const size_ptr &other)
Copy constructor (increments reference count).
Definition size_ptr.hpp:85
~size_ptr()
Destructor. Decrements reference count and frees if zero.
Definition size_ptr.hpp:117
size_ptr(T *ptr, size_t size=1, void(*deleter)(void *)=&default_delete_single::call< T >)
Construct with data pointer, size, and deleter.
Definition size_ptr.hpp:72
char * ptr
Definition size_ptr.hpp:55
void(* deleter)(void *)
Definition size_ptr.hpp:58