STLdoc
STLdocumentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Public Member Functions | Private Member Functions | Private Attributes | List of all members
_Ref_count_del< _Ty, _Dx > Class Template Reference
Inheritance diagram for _Ref_count_del< _Ty, _Dx >:
_Ref_count_base

Public Member Functions

 _Ref_count_del (_Ty *_Px, _Dx _Dt)
 
virtual void_Get_deleter (const type_info &_Typeid) const _NOEXCEPT
 
- Public Member Functions inherited from _Ref_count_base
virtual ~_Ref_count_base () _NOEXCEPT
 
bool _Incref_nz ()
 
void _Incref ()
 
void _Incwref ()
 
void _Decref ()
 
void _Decwref ()
 
long _Use_count () const _NOEXCEPT
 
bool _Expired () const _NOEXCEPT
 

Private Member Functions

virtual void _Destroy () _NOEXCEPT
 
virtual void _Delete_this () _NOEXCEPT
 

Private Attributes

_Compressed_pair< _Dx, _Ty * > _Mypair
 

Additional Inherited Members

- Protected Member Functions inherited from _Ref_count_base
 _Ref_count_base ()
 

Constructor & Destructor Documentation

template<class _Ty , class _Dx >
_Ref_count_del< _Ty, _Dx >::_Ref_count_del ( _Ty *  _Px,
_Dx  _Dt 
)
inline
598  { // construct
599  }
_Ref_count_base()
Definition: memory:484
_Compressed_pair< _Dx, _Ty * > _Mypair
Definition: memory:618
Definition: xutility:282

Member Function Documentation

template<class _Ty , class _Dx >
virtual void _Ref_count_del< _Ty, _Dx >::_Delete_this ( )
inlineprivatevirtual

Implements _Ref_count_base.

614  { // destroy self
615  delete this;
616  }
template<class _Ty , class _Dx >
virtual void _Ref_count_del< _Ty, _Dx >::_Destroy ( )
inlineprivatevirtual

Implements _Ref_count_base.

609  { // destroy managed resource
611  }
_Ty2 & _Get_second() _NOEXCEPT
Definition: xutility:336
_Ty1 & _Get_first() _NOEXCEPT
Definition: xutility:316
_Compressed_pair< _Dx, _Ty * > _Mypair
Definition: memory:618
template<class _Ty , class _Dx >
virtual void* _Ref_count_del< _Ty, _Dx >::_Get_deleter ( const type_info _Typeid) const
inlinevirtual

Reimplemented from _Ref_count_base.

602  { // return address of deleter object
603  return ((void *)(_Typeid == typeid(_Dx)
604  ? _STD addressof(_Mypair._Get_first()) : 0));
605  }
_STD_BEGIN constexpr _Ty * addressof(_Ty &_Val) _NOEXCEPT
Definition: xstddef:628
_Ty1 & _Get_first() _NOEXCEPT
Definition: xutility:316
_Compressed_pair< _Dx, _Ty * > _Mypair
Definition: memory:618

Member Data Documentation

template<class _Ty , class _Dx >
_Compressed_pair<_Dx, _Ty *> _Ref_count_del< _Ty, _Dx >::_Mypair
private

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