ACF $AcfVersion:0$
Public Member Functions | List of all members
istd::TSharedNullable< T > Class Template Reference

This is a comfort wrap for TNullable that allows several TSharedNullable objects to own the same object. More...

#include <TSharedNullable.h>

Public Member Functions

 TSharedNullable ()
 
 TSharedNullable (const T &value)
 
 TSharedNullable (T &&value)
 
 ~TSharedNullable ()
 
bool IsValid () const
 
bool IsNull () const
 
bool HasValue () const
 
const T * GetPtr () const
 
T * GetPtr ()
 
T & GetValue ()
 
const T & GetValue () const
 
void Reset ()
 
T & Emplace ()
 
void SetNull ()
 
bool isValid () const
 
bool isNull () const
 
TSharedNullableoperator= (const T &value)
 
TSharedNullableoperator= (T &&value)
 
const T * operator-> () const
 
T * operator-> ()
 
const T & operator* () const &
 
T & operator* () &
 
const T && operator* () const &&
 
T && operator* () &&
 
TSharedNullableoperator= (std::nullptr_t)
 
TSharedNullableoperator= (const TSharedNullable &other)
 
 operator bool () const
 
bool has_value () const
 
T & value () &
 
const T & value () const &
 
T && value () &&
 
const T && value () const &&
 
value_or (const T &default_value) const
 
void swap (TSharedNullable &other)
 
void reset ()
 
T & emplace ()
 
T & emplace (T &&value) &&
 
bool operator== (const TSharedNullable &other) const
 
bool operator!= (const TSharedNullable &other) const
 
bool operator== (std::nullptr_t) const
 
bool operator!= (std::nullptr_t) const
 
bool operator== (const T &value) const
 
bool operator!= (const T &value) const
 

Detailed Description

template<class T>
class istd::TSharedNullable< T >

This is a comfort wrap for TNullable that allows several TSharedNullable objects to own the same object.

In other words this is equivalent for std::shared_ptr<TNullable<T>>

Definition at line 22 of file TSharedNullable.h.

Constructor & Destructor Documentation

◆ TSharedNullable() [1/3]

template<class T >
istd::TSharedNullable< T >::TSharedNullable ( )

Definition at line 107 of file TSharedNullable.h.

◆ TSharedNullable() [2/3]

template<class T >
istd::TSharedNullable< T >::TSharedNullable ( const T &  value)
inline

Definition at line 114 of file TSharedNullable.h.

References istd::TSharedNullable< T >::value().

◆ TSharedNullable() [3/3]

template<class T >
istd::TSharedNullable< T >::TSharedNullable ( T &&  value)
inline

Definition at line 122 of file TSharedNullable.h.

References istd::TSharedNullable< T >::value().

◆ ~TSharedNullable()

template<class T >
istd::TSharedNullable< T >::~TSharedNullable ( )

Definition at line 130 of file TSharedNullable.h.

Member Function Documentation

◆ Emplace()

template<class T >
T & istd::TSharedNullable< T >::Emplace ( )

Definition at line 192 of file TSharedNullable.h.

◆ emplace() [1/2]

template<class T >
T & istd::TSharedNullable< T >::emplace ( )

Definition at line 352 of file TSharedNullable.h.

◆ emplace() [2/2]

template<class T >
T & istd::TSharedNullable< T >::emplace ( T &&  value) &&

Definition at line 359 of file TSharedNullable.h.

◆ GetPtr() [1/2]

template<class T >
T * istd::TSharedNullable< T >::GetPtr ( )

Definition at line 164 of file TSharedNullable.h.

◆ GetPtr() [2/2]

template<class T >
const T * istd::TSharedNullable< T >::GetPtr ( ) const

Definition at line 157 of file TSharedNullable.h.

◆ GetValue() [1/2]

template<class T >
T & istd::TSharedNullable< T >::GetValue ( )

Definition at line 171 of file TSharedNullable.h.

◆ GetValue() [2/2]

template<class T >
const T & istd::TSharedNullable< T >::GetValue ( ) const

Definition at line 178 of file TSharedNullable.h.

◆ has_value()

template<class T >
bool istd::TSharedNullable< T >::has_value ( ) const

Definition at line 296 of file TSharedNullable.h.

◆ HasValue()

template<class T >
bool istd::TSharedNullable< T >::HasValue ( ) const

Definition at line 150 of file TSharedNullable.h.

◆ IsNull()

template<class T >
bool istd::TSharedNullable< T >::IsNull ( ) const

Definition at line 143 of file TSharedNullable.h.

◆ isNull()

template<class T >
bool istd::TSharedNullable< T >::isNull ( ) const
inline

Definition at line 44 of file TSharedNullable.h.

◆ IsValid()

template<class T >
bool istd::TSharedNullable< T >::IsValid ( ) const
inline

Definition at line 136 of file TSharedNullable.h.

◆ isValid()

template<class T >
bool istd::TSharedNullable< T >::isValid ( ) const
inline

Definition at line 40 of file TSharedNullable.h.

◆ operator bool()

template<class T >
istd::TSharedNullable< T >::operator bool ( ) const
explicit

Definition at line 289 of file TSharedNullable.h.

◆ operator!=() [1/3]

template<class T >
bool istd::TSharedNullable< T >::operator!= ( const T &  value) const

Definition at line 401 of file TSharedNullable.h.

◆ operator!=() [2/3]

template<class T >
bool istd::TSharedNullable< T >::operator!= ( const TSharedNullable< T > &  other) const

Definition at line 373 of file TSharedNullable.h.

◆ operator!=() [3/3]

template<class T >
bool istd::TSharedNullable< T >::operator!= ( std::nullptr_t  ) const

Definition at line 387 of file TSharedNullable.h.

◆ operator*() [1/4]

template<class T >
T & istd::TSharedNullable< T >::operator* ( ) &

Definition at line 250 of file TSharedNullable.h.

◆ operator*() [2/4]

template<class T >
T && istd::TSharedNullable< T >::operator* ( ) &&

Definition at line 264 of file TSharedNullable.h.

◆ operator*() [3/4]

template<class T >
const T & istd::TSharedNullable< T >::operator* ( ) const &

Definition at line 243 of file TSharedNullable.h.

◆ operator*() [4/4]

template<class T >
const T && istd::TSharedNullable< T >::operator* ( ) const &&

Definition at line 257 of file TSharedNullable.h.

◆ operator->() [1/2]

template<class T >
T * istd::TSharedNullable< T >::operator-> ( )

Definition at line 236 of file TSharedNullable.h.

◆ operator->() [2/2]

template<class T >
const T * istd::TSharedNullable< T >::operator-> ( ) const

Definition at line 229 of file TSharedNullable.h.

◆ operator=() [1/4]

template<class T >
TSharedNullable< T > & istd::TSharedNullable< T >::operator= ( const T &  value)

Definition at line 208 of file TSharedNullable.h.

◆ operator=() [2/4]

template<class T >
TSharedNullable< T > & istd::TSharedNullable< T >::operator= ( const TSharedNullable< T > &  other)

Definition at line 280 of file TSharedNullable.h.

◆ operator=() [3/4]

template<class T >
TSharedNullable< T > & istd::TSharedNullable< T >::operator= ( std::nullptr_t  )

Definition at line 271 of file TSharedNullable.h.

◆ operator=() [4/4]

template<class T >
TSharedNullable< T > & istd::TSharedNullable< T >::operator= ( T &&  value)

Definition at line 217 of file TSharedNullable.h.

◆ operator==() [1/3]

template<class T >
bool istd::TSharedNullable< T >::operator== ( const T &  value) const

Definition at line 394 of file TSharedNullable.h.

◆ operator==() [2/3]

template<class T >
bool istd::TSharedNullable< T >::operator== ( const TSharedNullable< T > &  other) const

Definition at line 366 of file TSharedNullable.h.

◆ operator==() [3/3]

template<class T >
bool istd::TSharedNullable< T >::operator== ( std::nullptr_t  ) const

Definition at line 380 of file TSharedNullable.h.

◆ Reset()

template<class T >
void istd::TSharedNullable< T >::Reset ( )

Definition at line 185 of file TSharedNullable.h.

◆ reset()

template<class T >
void istd::TSharedNullable< T >::reset ( )

Definition at line 345 of file TSharedNullable.h.

◆ SetNull()

template<class T >
void istd::TSharedNullable< T >::SetNull ( )
inline

Definition at line 199 of file TSharedNullable.h.

◆ swap()

template<class T >
void istd::TSharedNullable< T >::swap ( TSharedNullable< T > &  other)

Definition at line 338 of file TSharedNullable.h.

◆ value() [1/4]

template<class T >
T & istd::TSharedNullable< T >::value ( ) &

◆ value() [2/4]

template<class T >
T && istd::TSharedNullable< T >::value ( ) &&

Definition at line 317 of file TSharedNullable.h.

◆ value() [3/4]

template<class T >
const T & istd::TSharedNullable< T >::value ( ) const &

Definition at line 310 of file TSharedNullable.h.

◆ value() [4/4]

template<class T >
const T && istd::TSharedNullable< T >::value ( ) const &&

Definition at line 324 of file TSharedNullable.h.

◆ value_or()

template<class T >
T istd::TSharedNullable< T >::value_or ( const T &  default_value) const

Definition at line 331 of file TSharedNullable.h.


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