Audacity  2.2.0
Maybe< X > Class Template Reference

#include <MemoryX.h>

Public Member Functions

 Maybe ()
 
 Maybe (const Maybe &that)
 
Maybeoperator= (const Maybe &that)
 
 Maybe (Maybe &&that)
 
Maybeoperator= (Maybe &&that)
 
template<typename... Args>
void create (Args &&...args)
 
 ~Maybe ()
 
X & operator* () const
 
X * operator-> () const
 
X * get () const
 
void reset ()
 
 operator bool () const
 

Private Member Functions

X * address ()
 

Private Attributes

union {
   double   d
 
   char   storage [sizeof(X)]
 
}; 
 
X * pp { nullptr }
 

Constructor & Destructor Documentation

template<typename X>
Maybe< X >::Maybe ( )
inline
template<typename X>
Maybe< X >::Maybe ( const Maybe< X > &  that)
inline
template<typename X>
Maybe< X >::Maybe ( Maybe< X > &&  that)
inline
template<typename X>
Maybe< X >::~Maybe ( )
inline

Member Function Documentation

template<typename X>
X* Maybe< X >::address ( )
inlineprivate
template<typename X>
X* Maybe< X >::get ( ) const
inline
template<typename X>
Maybe< X >::operator bool ( ) const
inlineexplicit
template<typename X>
X& Maybe< X >::operator* ( ) const
inline
template<typename X>
X* Maybe< X >::operator-> ( ) const
inline
template<typename X>
Maybe& Maybe< X >::operator= ( const Maybe< X > &  that)
inline
template<typename X>
Maybe& Maybe< X >::operator= ( Maybe< X > &&  that)
inline
template<typename X>
void Maybe< X >::reset ( )
inline

Member Data Documentation

union { ... }
template<typename X>
double Maybe< X >::d
template<typename X>
char Maybe< X >::storage[sizeof(X)]

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