51 #ifndef COMMON_DISPOSABLEPTR_H 52 #define COMMON_DISPOSABLEPTR_H 54 #include <boost/noncopyable.hpp> 67 template<
typename T,
class Deallocator>
116 template<
typename T,
class Deallocator = DeallocatorDefault>
133 template<
typename T,
class Deallocator = DeallocatorArray>
147 #endif // COMMON_DISPOSABLEPTR_H A disposable array pointer, allowing array-y access and array deletion.
DisposablePtrBase< T, Deallocator >::PointerType operator->() const
DisposableArray(typename DisposablePtrBase< T, Deallocator >::PointerType o, bool d)
#define XOREOS_EXPLICIT_OPERATOR_CONV
Base template class for a disposable pointer.
Low-level type definitions to handle fixed width types portably.
void reset(PointerType o=0)
Resets the pointer with the new value.
A disposable plain pointer, allowing pointer-y access and normal deletion.
DisposablePtrBase< T, Deallocator >::ReferenceType operator*() const
Simple deallocator concept.
void setDisposable(bool d)
Change the disposable flag.
DisposablePtrBase< T, Deallocator >::ReferenceType operator[](size_t i) const
Low-level detection of architecture/system properties.
PointerType get() const
Returns the plain pointer value.
DisposablePtrBase(PointerType o, bool d)
DisposablePtr(typename DisposablePtrBase< T, Deallocator >::PointerType o, bool d)
void dispose()
Unconditionally dispose of the pointer, destroying the old object.