ForwardRef< T > Class Template Reference

#include <forwardref.h>

Inheritance diagram for ForwardRef< T >:

Public Types

using IsForwardRef = T
 

Public Member Functions

 ForwardRef ()=default
 
MAXON_IMPLICIT ForwardRef (const T &t)
 
MAXON_IMPLICIT ForwardRef (T &&t)
 
 ForwardRef (const ObjectInterface *ptr)
 
ForwardRefoperator= (const T &t)
 
ForwardRefoperator= (T &&t)
 
ForwardRefoperator= (std::nullptr_t)
 
 operator T () &&
 
 operator Bool () const
 
const T & Get () const
 
T & Get ()
 
HashInt GetHashCode () const
 
Bool operator== (const ForwardRef &other) const
 
Bool operator!= (const ForwardRef &other) const
 
Bool operator== (std::nullptr_t) const
 
Bool operator!= (std::nullptr_t) const
 
const ObjectInterfaceGetPointer () const
 

Private Types

using GenericRef = StrongRef< const ObjectInterface >
 

Private Attributes

GenericRef _value
 

Member Typedef Documentation

◆ IsForwardRef

using IsForwardRef = T

◆ GenericRef

using GenericRef = StrongRef<const ObjectInterface>
private

Constructor & Destructor Documentation

◆ ForwardRef() [1/4]

ForwardRef ( )
default

◆ ForwardRef() [2/4]

MAXON_IMPLICIT ForwardRef ( const T &  t)

◆ ForwardRef() [3/4]

◆ ForwardRef() [4/4]

ForwardRef ( const ObjectInterface ptr)
explicit

Member Function Documentation

◆ operator=() [1/3]

ForwardRef& operator= ( const T &  t)

◆ operator=() [2/3]

ForwardRef& operator= ( T &&  t)

◆ operator=() [3/3]

ForwardRef& operator= ( std::nullptr_t  )

◆ operator T()

operator T ( ) &&

◆ operator Bool()

operator Bool ( ) const
explicit

◆ Get() [1/2]

const T& Get ( void  ) const

◆ Get() [2/2]

T& Get ( void  )

◆ GetHashCode()

HashInt GetHashCode ( ) const

◆ operator==() [1/2]

Bool operator== ( const ForwardRef< T > &  other) const

◆ operator!=() [1/2]

Bool operator!= ( const ForwardRef< T > &  other) const

◆ operator==() [2/2]

Bool operator== ( std::nullptr_t  ) const

◆ operator!=() [2/2]

Bool operator!= ( std::nullptr_t  ) const

◆ GetPointer()

const ObjectInterface* GetPointer ( ) const

Member Data Documentation

◆ _value

GenericRef _value
private