Addon for Result to output some value aside the result. Specialization for non copiable types.
More...
#include <ResultValue.h>
List of all members.
Public Types |
typedef R | EnumType |
| Result enumeration type.
|
typedef V | ValueType |
| Result value type.
|
Public Member Functions |
| ResultValue (R result) noexcept |
| Initializes result.
|
| ResultValue (R result, V &&value) noexcept |
| Initializes result.
|
const V & | getValue () const noexcept |
| Gets result value.
|
V && | takeValue () noexcept |
| Gets result value as rvalue.
|
const V * | operator-> () const noexcept |
| Gets result value.
|
Protected Attributes |
V | m_value |
| Actual value.
|
Detailed Description
template<typename R, typename V>
struct fsdk::ResultValue< R, V, typename std::enable_if< std::is_copy_constructible< V >::value==false >::type >
Addon for Result to output some value aside the result. Specialization for non copiable types.
- Template Parameters:
-
R | result enumeration type. |
V | result value type. |
- Note:
- All rules for Result template parameter aplly to R.
-
V instance is always held by value despite -> operators.
Constructor & Destructor Documentation
template<typename R , typename V >
Initializes result.
- Parameters:
-
template<typename R , typename V >
fsdk::ResultValue< R, V, typename std::enable_if< std::is_copy_constructible< V >::value==false >::type >::ResultValue |
( |
R |
result, |
|
|
V && |
value |
|
) |
| [inline] |
Initializes result.
- Parameters:
-
[in] | result | result to set. |
[in] | value | value to set. |
Member Function Documentation
template<typename R , typename V >
const V& fsdk::ResultValue< R, V, typename std::enable_if< std::is_copy_constructible< V >::value==false >::type >::getValue |
( |
| ) |
const [inline] |
Gets result value.
- Note:
- Result validated in runtime.
- Returns:
- Value.
template<typename R , typename V >
const V* fsdk::ResultValue< R, V, typename std::enable_if< std::is_copy_constructible< V >::value==false >::type >::operator-> |
( |
| ) |
const [inline] |
Gets result value.
- Note:
- Result validated in runtime.
- Returns:
- Value.
template<typename R , typename V >
V&& fsdk::ResultValue< R, V, typename std::enable_if< std::is_copy_constructible< V >::value==false >::type >::takeValue |
( |
| ) |
[inline] |
Gets result value as rvalue.
- Note:
- Result validated in runtime.
-
Don't call more than once
- Returns:
- Value.
The documentation for this struct was generated from the following file: