#include <optional.h>
Public Member Functions | |
| OptDefaultStorage () | |
| OptDefaultStorage (NO_VALUE_TYPE) | |
| OptDefaultStorage & | operator= (NO_VALUE_TYPE) | 
| template<typename U , typename = typename std::enable_if<STD_IS_REPLACEMENT(constructible, T, const U&)>::type> | |
| OptDefaultStorage (const OptDefaultStorage< U > &src) | |
| template<typename U , typename = typename std::enable_if<STD_IS_REPLACEMENT(assignable, T, const U&)>::type> | |
| OptDefaultStorage & | operator= (const OptDefaultStorage< U > &src) | 
| template<typename U , typename = typename std::enable_if<STD_IS_REPLACEMENT(constructible, T, U&&)>::type> | |
| OptDefaultStorage (OptDefaultStorage< U > &&src) | |
| template<typename U , typename = typename std::enable_if<STD_IS_REPLACEMENT(assignable, T, U&&)>::type> | |
| OptDefaultStorage & | operator= (OptDefaultStorage< U > &&src) | 
| template<typename U > | |
| OptDefaultStorage (U &&value) | |
| template<typename U > | |
| OptDefaultStorage & | operator= (U &&value) | 
| template<typename ... ARGS> | |
| OptDefaultStorage (IN_PLACE_TYPE, ARGS &&... args) | |
| template<typename ... ARGS> | |
| void | Emplace (ARGS &&... args) | 
| Result< void > | CopyFrom (const OptDefaultStorage &src) | 
| ~OptDefaultStorage () | |
| T & | GetValueRef () | 
| const T & | GetValueRef () const | 
| Bool | HasValue () const | 
Public Attributes | |
| return * | this | 
| T | _valueStorage | 
Private Member Functions | |
| template<typename U > | |
| void | CopyConstruct (const OptDefaultStorage< U > &src) | 
| template<typename U > | |
| void | CopyAssign (const OptDefaultStorage< U > &src) | 
| template<typename U > | |
| void | MoveConstruct (OptDefaultStorage< U > &&src) | 
| template<typename U > | |
| void | MoveAssign (OptDefaultStorage< U > &&src) | 
| void | ClearValue () | 
| void | Destruct () | 
Private Attributes | |
| Bool | _hasValue | 
| union { | |
| T _valueStorage | |
| }; | |
      
  | 
  explicit | 
| OptDefaultStorage | ( | const OptDefaultStorage< U > & | src | ) | 
| OptDefaultStorage | ( | OptDefaultStorage< U > && | src | ) | 
      
  | 
  explicit | 
      
  | 
  explicit | 
| ~OptDefaultStorage | ( | ) | 
| OptDefaultStorage& operator= | ( | NO_VALUE_TYPE | ) | 
| OptDefaultStorage& operator= | ( | const OptDefaultStorage< U > & | src | ) | 
| OptDefaultStorage& operator= | ( | OptDefaultStorage< U > && | src | ) | 
| OptDefaultStorage& operator= | ( | U && | value | ) | 
| void Emplace | ( | ARGS &&... | args | ) | 
| Result<void> CopyFrom | ( | const OptDefaultStorage< T > & | src | ) | 
| T& GetValueRef | ( | ) | 
| const T& GetValueRef | ( | ) | const | 
| Bool HasValue | ( | ) | const | 
      
  | 
  private | 
      
  | 
  private | 
      
  | 
  private | 
      
  | 
  private | 
      
  | 
  private | 
      
  | 
  private | 
| return * this | 
      
  | 
  private | 
| T _valueStorage | 
| union { ... } |