di 0.1.0
Loading...
Searching...
No Matches
di::vocab::IntrusiveRefCount< T > Struct Template Reference

#include <di/vocab/pointer/arc.h>

Inheritance diagram for di::vocab::IntrusiveRefCount< T >:
di::util::Immovable

Public Member Functions

template<typename = void>
constexpr auto arc_from_this ()
Public Member Functions inherited from di::util::Immovable
 Immovable ()=default
 Immovable (Immovable &&)=delete

Protected Member Functions

 IntrusiveRefCount ()=default

Friends

template<typename>
struct MakeArcFunction
constexpr friend void tag_invoke (types::Tag< intrusive_ptr_increment >, InPlaceType< ArcTag >, T *pointer)
constexpr friend void tag_invoke (types::Tag< intrusive_ptr_decrement >, InPlaceType< ArcTag >, T *pointer)

Constructor & Destructor Documentation

◆ IntrusiveRefCount()

template<typename T>
di::vocab::IntrusiveRefCount< T >::IntrusiveRefCount ( )
protecteddefault

Member Function Documentation

◆ arc_from_this()

template<typename T>
template<typename = void>
auto di::vocab::IntrusiveRefCount< T >::arc_from_this ( )
inlineconstexpr

◆ MakeArcFunction

template<typename T>
template<typename>
friend struct MakeArcFunction
friend

◆ tag_invoke [1/2]

template<typename T>
friend void tag_invoke ( types::Tag< intrusive_ptr_decrement > ,
InPlaceType< ArcTag > ,
T * pointer )
friend

◆ tag_invoke [2/2]

template<typename T>
friend void tag_invoke ( types::Tag< intrusive_ptr_increment > ,
InPlaceType< ArcTag > ,
T * pointer )
friend

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