The class is used as a return type for operations that can fail; wraps a value of type T or an RError.
RResult enforces checking whether it contains a valid value or an error state. If the RResult leaves the scope unchecked, it will throw an exception (due to ~RResultBase).
Definition at line 186 of file RError.hxx.
Public Member Functions | |
RResult (const RResult &other)=delete | |
RResult (const T &value) | |
RResult (RError &&error) | |
RResult (RResult &&other)=default | |
RResult (T &&value) | |
~RResult ()=default | |
const T & | Get () |
operator bool () | |
RResult & | operator= (const RResult &other)=delete |
RResult & | operator= (RResult &&other)=default |
Public Member Functions inherited from ROOT::Experimental::Internal::RResultBase | |
RResultBase (const RResultBase &other)=delete | |
RResultBase (RResultBase &&other)=default | |
~RResultBase () noexcept(false) | |
RError * | GetError () |
void * | operator new (std::size_t size)=delete |
void * | operator new (std::size_t, void *)=delete |
void * | operator new[] (std::size_t)=delete |
void * | operator new[] (std::size_t, void *)=delete |
RResultBase & | operator= (const RResultBase &other)=delete |
RResultBase & | operator= (RResultBase &&other)=default |
void | Throw () |
Throws an RException with fError. More... | |
Static Public Member Functions | |
static RResult & | Forward (RResult &result, RError::RLocation &&sourceLocation) |
Used by R__FORWARD_RESULT in order to keep track of the stack trace in case of errors. More... | |
Private Attributes | |
T | fValue |
The result value in case of successful execution. More... | |
Additional Inherited Members | |
Protected Member Functions inherited from ROOT::Experimental::Internal::RResultBase | |
RResultBase ()=default | |
RResultBase (RError &&error) | |
bool | Check () |
Used by the RResult<T> bool operator. More... | |
Protected Attributes inherited from ROOT::Experimental::Internal::RResultBase | |
std::unique_ptr< RError > | fError |
This is the nullptr for an RResult representing success. More... | |
bool | fIsChecked {false} |
Switches to true once the user of an RResult object checks the object status. More... | |
#include <ROOT/RError.hxx>
|
inline |
Definition at line 192 of file RError.hxx.
|
inline |
Definition at line 193 of file RError.hxx.
|
inline |
Definition at line 194 of file RError.hxx.
|
delete |
|
default |
|
default |
|
inlinestatic |
Used by R__FORWARD_RESULT in order to keep track of the stack trace in case of errors.
Definition at line 204 of file RError.hxx.
|
inline |
Definition at line 210 of file RError.hxx.
|
inlineexplicit |
Definition at line 222 of file RError.hxx.
|
delete |
|
default |
|
private |
The result value in case of successful execution.
Definition at line 189 of file RError.hxx.