Zth (libzth)
Loading...
Searching...
No Matches
zth::SharedReference< T > Class Template Reference

#include <sync.h>

Inheritance diagram for zth::SharedReference< T >:
zth::SharedReferenceOps< SharedReference< T >, T > zth::fiber_future< T >

Public Types

typedef SharedPointer< T > SharedPointer_type
 
typedef SharedPointer_type::type type
 

Public Member Functions

constexpr SharedReference () noexcept
 
constexpr SharedReference (type &object) noexcept
 
constexpr SharedReference (SharedReference const &p) noexcept
 
constexpr SharedReference (SharedPointer_type const &p) noexcept
 
 ~SharedReference () noexcept=default
 
void reset ()
 
SharedReferenceoperator= (SharedReference const &p) noexcept
 
constexpr SharedReference (SharedPointer_type &&p) noexcept
 
constexpr SharedReference (SharedReference &&p) noexcept
 
constexpr SharedReferenceoperator= (SharedReference &&p) noexcept
 
constexpr operator SharedPointer< type > () &&noexcept
 
constexpr operator SharedPointer_type () &noexcept
 
constexpr bool valid () const noexcept
 
- Public Member Functions inherited from zth::SharedReferenceOps< SharedReference< T >, T >
constexpr T & get () const noexcept
 
constexpr operator T& () const noexcept
 

Friends

class SharedReferenceOps< SharedReference< T >, T >
 

Additional Inherited Members

- Public Attributes inherited from zth::SharedReferenceOps< SharedReference< T >, T >
constexpr decltype(**static_cast< T * >(nullptr) operator* )() const
 
constexpr decltype(static_cast< T * >(nullptr) ->operator->()) operator-> () const noexcept
 

Detailed Description

template<typename T>
class zth::SharedReference< T >

Definition at line 197 of file sync.h.

Member Typedef Documentation

◆ SharedPointer_type

template<typename T >
typedef SharedPointer<T> zth::SharedReference< T >::SharedPointer_type

Definition at line 199 of file sync.h.

◆ type

template<typename T >
typedef SharedPointer_type::type zth::SharedReference< T >::type

Definition at line 200 of file sync.h.

Constructor & Destructor Documentation

◆ SharedReference() [1/6]

template<typename T >
constexpr zth::SharedReference< T >::SharedReference ( )
inlineconstexprnoexcept

Definition at line 203 of file sync.h.

◆ SharedReference() [2/6]

template<typename T >
constexpr zth::SharedReference< T >::SharedReference ( type object)
inlineconstexprnoexcept

Definition at line 208 of file sync.h.

◆ SharedReference() [3/6]

template<typename T >
constexpr zth::SharedReference< T >::SharedReference ( SharedReference< T > const &  p)
inlineconstexprnoexcept

Definition at line 212 of file sync.h.

◆ SharedReference() [4/6]

template<typename T >
constexpr zth::SharedReference< T >::SharedReference ( SharedPointer_type const &  p)
inlineconstexprnoexcept

Definition at line 217 of file sync.h.

◆ ~SharedReference()

template<typename T >
zth::SharedReference< T >::~SharedReference ( )
defaultnoexcept

◆ SharedReference() [5/6]

template<typename T >
constexpr zth::SharedReference< T >::SharedReference ( SharedPointer_type &&  p)
inlineconstexprnoexcept

Definition at line 236 of file sync.h.

◆ SharedReference() [6/6]

template<typename T >
constexpr zth::SharedReference< T >::SharedReference ( SharedReference< T > &&  p)
inlineconstexprnoexcept

Definition at line 240 of file sync.h.

Member Function Documentation

◆ operator SharedPointer< type >()

template<typename T >
constexpr zth::SharedReference< T >::operator SharedPointer< type > ( ) &&
inlineconstexprnoexcept

Definition at line 252 of file sync.h.

◆ operator SharedPointer_type()

template<typename T >
constexpr zth::SharedReference< T >::operator SharedPointer_type ( ) &
inlineconstexprnoexcept

Definition at line 258 of file sync.h.

◆ operator=() [1/2]

template<typename T >
constexpr SharedReference & zth::SharedReference< T >::operator= ( SharedReference< T > &&  p)
inlineconstexprnoexcept

Definition at line 246 of file sync.h.

◆ operator=() [2/2]

template<typename T >
SharedReference & zth::SharedReference< T >::operator= ( SharedReference< T > const &  p)
inlinenoexcept

Definition at line 228 of file sync.h.

◆ reset()

template<typename T >
void zth::SharedReference< T >::reset ( )
inline

Definition at line 223 of file sync.h.

◆ valid()

template<typename T >
constexpr bool zth::SharedReference< T >::valid ( ) const
inlineconstexprnoexcept

Definition at line 263 of file sync.h.

Friends And Related Symbol Documentation

◆ SharedReferenceOps< SharedReference< T >, T >

template<typename T >
friend class SharedReferenceOps< SharedReference< T >, T >
friend

Definition at line 200 of file sync.h.


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