#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 { ... } |