24#ifndef PXR_BASE_TF_ANY_UNIQUE_PTR_H
25#define PXR_BASE_TF_ANY_UNIQUE_PTR_H
28#include "pxr/base/tf/api.h"
32PXR_NAMESPACE_OPEN_SCOPE
48 static_assert(!std::is_array<T>::value,
"Array types not supported");
54 static_assert(!std::is_array<T>::value,
"Array types not supported");
60 , _delete(other._delete)
72 _delete = other._delete;
86 void const *
Get()
const {
94 , _delete(&_Delete<T>)
98 static void _Delete(
void const *ptr) {
99 delete static_cast<T
const *
>(ptr);
104 void (*_delete)(
void const *);
107PXR_NAMESPACE_CLOSE_SCOPE
A simple type-erased container that provides only destruction, moves and immutable,...
void const * Get() const
Return a pointer to the owned object.