Elm
1.0
ELM is a library providing generic data structures, OS-independent interface, plugins and XML.
|
#include <elm/util/Option.h>
Public Member Functions | |
Option (void) | |
Option (const OptionalNone &none) | |
Option (T value) | |
Option (const Option< T > &opt) | |
bool | isOne (void) const |
bool | isNone (void) const |
T | value (void) const |
operator bool (void) const | |
T | operator* (void) const |
operator T (void) const | |
Option< T > & | operator= (const Option< T > &opt) |
Option< T > & | operator= (T value) |
This class is very handly to manage parameters or return value that may be optional. This class records there is no value or there is a value and the instance of the value.
T | Type of the stored value. |
elm::Option< T >::Option | ( | void | ) |
Build an empty optional value recording there is no value.
elm::Option< T >::Option | ( | const OptionalNone & | none | ) |
For nternal use only.
elm::Option< T >::Option | ( | T | value | ) |
References elm::asis_t< T >::put().
elm::Option< T >::Option | ( | const Option< T > & | opt | ) |
Build an optional value by copying an existing one.
opt | Optional value to clone. |
bool elm::Option< T >::isNone | ( | void | ) | const |
Test if no value is available.
bool elm::Option< T >::isOne | ( | void | ) | const |
Test if a value is available.
Referenced by elm::Option< T >::operator bool().
elm::Option< T >::operator bool | ( | void | ) | const |
References elm::Option< T >::isOne().
elm::Option< T >::operator T | ( | void | ) | const |
Convert to the stored value.
References elm::Option< T >::value().
T elm::Option< T >::operator* | ( | void | ) | const |
References elm::Option< T >::value().
Option< T > & elm::Option< T >::operator= | ( | const Option< T > & | opt | ) |
Provides assignment support.
opt | Optional value to assign. |
Option<T>& elm::Option< T >::operator= | ( | T | value | ) |
References elm::asis_t< T >::put().
T elm::Option< T >::value | ( | void | ) | const |
Get the value.
References elm::asis_t< T >::get().
Referenced by elm::Option< T >::operator T(), and elm::Option< T >::operator*().