Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
ROOT::RResult< void > Class Reference

RResult<void> has no data member and no Inspect() method but instead a Success() factory method.

Definition at line 263 of file RError.hxx.

Public Member Functions

 RResult (const RResult &other)=delete
 
 RResult (RError &&error)
 
 RResult (RResult &&other)=default
 
 ~RResult ()=default
 
RResultForward (RError::RLocation &&sourceLocation)
 Used by R__FORWARD_RESULT in order to keep track of the stack trace in case of errors.
 
std::optional< RErrorGetError () const
 
 operator bool ()
 
RResultoperator= (const RResult &other)=delete
 
RResultoperator= (RResult &&other)=default
 
void Throw ()
 Throws an RException with fError.
 
void ThrowOnError ()
 Short-hand method to throw an exception in the case of errors.
 

Static Public Member Functions

static RError ForwardError (RResultBase &&result, RError::RLocation &&sourceLocation)
 Used by R__FORWARD_ERROR in order to keep track of the stack trace.
 
static RResult Success ()
 Returns a RResult<void> that captures the successful execution of the function.
 

Protected Member Functions

bool Check ()
 Used by the RResult<T> bool operator.
 

Protected Attributes

std::unique_ptr< RErrorfError
 This is the nullptr for an RResult representing success.
 
bool fIsChecked {false}
 Switches to true once the user of an RResult object checks the object status.
 

Private Member Functions

 RResult ()=default
 

#include <ROOT/RError.hxx>

Inheritance diagram for ROOT::RResult< void >:
[legend]

Constructor & Destructor Documentation

◆ RResult() [1/4]

ROOT::RResult< void >::RResult ( )
privatedefault

◆ RResult() [2/4]

ROOT::RResult< void >::RResult ( RError && error)
inline

Definition at line 270 of file RError.hxx.

◆ RResult() [3/4]

ROOT::RResult< void >::RResult ( const RResult< void > & other)
delete

◆ RResult() [4/4]

ROOT::RResult< void >::RResult ( RResult< void > && other)
default

◆ ~RResult()

ROOT::RResult< void >::~RResult ( )
default

Member Function Documentation

◆ Check()

bool ROOT::RResultBase::Check ( )
inlineprotectedinherited

Used by the RResult<T> bool operator.

Definition at line 108 of file RError.hxx.

◆ Forward()

RResult & ROOT::RResult< void >::Forward ( RError::RLocation && sourceLocation)
inline

Used by R__FORWARD_RESULT in order to keep track of the stack trace in case of errors.

Definition at line 280 of file RError.hxx.

◆ ForwardError()

static RError ROOT::RResultBase::ForwardError ( RResultBase && result,
RError::RLocation && sourceLocation )
inlinestaticinherited

Used by R__FORWARD_ERROR in order to keep track of the stack trace.

Definition at line 128 of file RError.hxx.

◆ GetError()

std::optional< RError > ROOT::RResultBase::GetError ( ) const
inlineinherited

Definition at line 122 of file RError.hxx.

◆ operator bool()

ROOT::RResult< void >::operator bool ( )
inlineexplicit

Definition at line 295 of file RError.hxx.

◆ operator=() [1/2]

RResult & ROOT::RResult< void >::operator= ( const RResult< void > & other)
delete

◆ operator=() [2/2]

RResult & ROOT::RResult< void >::operator= ( RResult< void > && other)
default

◆ Success()

static RResult ROOT::RResult< void >::Success ( )
inlinestatic

Returns a RResult<void> that captures the successful execution of the function.

Definition at line 269 of file RError.hxx.

◆ Throw()

void ROOT::RResultBase::Throw ( )
inherited

Throws an RException with fError.

Definition at line 61 of file RError.cxx.

◆ ThrowOnError()

void ROOT::RResult< void >::ThrowOnError ( )
inline

Short-hand method to throw an exception in the case of errors.

Does nothing for successful RResults.

Definition at line 289 of file RError.hxx.

Member Data Documentation

◆ fError

std::unique_ptr<RError> ROOT::RResultBase::fError
protectedinherited

This is the nullptr for an RResult representing success.

Definition at line 100 of file RError.hxx.

◆ fIsChecked

bool ROOT::RResultBase::fIsChecked {false}
protectedinherited

Switches to true once the user of an RResult object checks the object status.

Definition at line 102 of file RError.hxx.

  • core/foundation/inc/ROOT/RError.hxx