libER 0.1.4.2
ELDEN RING API library
Loading...
Searching...
No Matches
Public Member Functions | List of all members
from::delay_delete< T, AllocatorTag > Class Template Reference

Delay deleter that models std::default_delete. More...

#include <from_delay_delete.hpp>

Inheritance diagram for from::delay_delete< T, AllocatorTag >:
from::allocator< T, AllocatorTag >

Public Member Functions

 delay_delete (const delay_delete &) noexcept
 Copy constructor.
 
 delay_delete (delay_delete &&) noexcept
 Move constructor.
 
template<typename U >
requires std::convertible_to<U*, T*>
 delay_delete (const delay_delete< U, AllocatorTag > &) noexcept
 Copy template constructor.
 
template<typename U >
requires std::convertible_to<U*, T*>
 delay_delete (delay_delete< U, AllocatorTag > &&) noexcept
 Move template constructor.
 
delay_deleteoperator= (const delay_delete &) noexcept
 Copy assignment operator.
 
template<typename U >
requires std::convertible_to<U*, T*>
delay_deleteoperator= (const delay_delete< U, AllocatorTag > &) noexcept
 Copy template assignment operator.
 
delay_deleteoperator= (delay_delete &&) noexcept
 Move assignment operator.
 
template<typename U >
requires std::convertible_to<U*, T*>
delay_deleteoperator= (delay_delete< U, AllocatorTag > &&) noexcept
 Move template assignment operator.
 
void operator() (T *p) const noexcept
 Request object deletion.
 

Detailed Description

template<typename T, typename AllocatorTag>
class from::delay_delete< T, AllocatorTag >

Delay deleter that models std::default_delete.

Template Parameters
Ttype of the target object
AllocatorTagallocator to use with the object

Constructor & Destructor Documentation

◆ delay_delete() [1/2]

template<typename T , typename AllocatorTag >
template<typename U >
requires std::convertible_to<U*, T*>
from::delay_delete< T, AllocatorTag >::delay_delete ( const delay_delete< U, AllocatorTag > &  )
inlinenoexcept

Copy template constructor.

Template Parameters
Utype of another target object convertible to T by pointer

◆ delay_delete() [2/2]

template<typename T , typename AllocatorTag >
template<typename U >
requires std::convertible_to<U*, T*>
from::delay_delete< T, AllocatorTag >::delay_delete ( delay_delete< U, AllocatorTag > &&  )
inlinenoexcept

Move template constructor.

Template Parameters
Utype of another target object convertible to T by pointer

Member Function Documentation

◆ operator()()

template<typename T , typename AllocatorTag >
void from::delay_delete< T, AllocatorTag >::operator() ( T *  p) const
inlinenoexcept

Request object deletion.

Called by std::unique_ptr and other STL implementations of std::default_delete.

Parameters
ppointer to object to delete

◆ operator=() [1/2]

template<typename T , typename AllocatorTag >
template<typename U >
requires std::convertible_to<U*, T*>
delay_delete & from::delay_delete< T, AllocatorTag >::operator= ( const delay_delete< U, AllocatorTag > &  )
inlinenoexcept

Copy template assignment operator.

Template Parameters
Utype of another target object convertible to T by pointer

◆ operator=() [2/2]

template<typename T , typename AllocatorTag >
template<typename U >
requires std::convertible_to<U*, T*>
delay_delete & from::delay_delete< T, AllocatorTag >::operator= ( delay_delete< U, AllocatorTag > &&  )
inlinenoexcept

Move template assignment operator.

Template Parameters
Utype of another target object convertible to T by pointer

The documentation for this class was generated from the following file: