Lumiera 0.pre.04
»edit your freedom«
Loading...
Searching...
No Matches
Result< void > Class Reference

#include "lib/result.hpp"

Description

The base case is just to capture success or failure, without returning any value result.

Definition at line 75 of file result.hpp.

Public Member Functions

 Result (bool success=false)
 mark either failure (default) or success
 
 Result (lumiera::Error const &reason)
 failed result, with reason given.
 
template<class FUN , typename... ARGS, typename = lib::meta::enable_if<std::is_invocable<FUN,ARGS...>>>
 Result (FUN &&callable, ARGS &&...args) noexcept
 invoke a callable and mark success or failure
 
 operator bool () const
 
bool isValid () const
 
void maybeThrow () const
 

Protected Attributes

std::exception_ptr failure_
 

Constructor & Destructor Documentation

◆ Result() [1/3]

Result ( bool  success = false)
inline

mark either failure (default) or success

Definition at line 82 of file result.hpp.

◆ Result() [2/3]

Result ( lumiera::Error const &  reason)
inline

failed result, with reason given.

Definition at line 87 of file result.hpp.

◆ Result() [3/3]

template<class FUN , typename... ARGS, typename = lib::meta::enable_if<std::is_invocable<FUN,ARGS...>>>
Result ( FUN &&  callable,
ARGS &&...  args 
)
inlinenoexcept

invoke a callable and mark success or failure

Definition at line 93 of file result.hpp.

Member Function Documentation

◆ operator bool()

operator bool ( ) const
inlineexplicit

Definition at line 109 of file result.hpp.

◆ isValid()

bool isValid ( ) const
inline

Definition at line 110 of file result.hpp.

◆ maybeThrow()

void maybeThrow ( ) const
inline

Definition at line 113 of file result.hpp.

Member Data Documentation

◆ failure_

std::exception_ptr failure_
protected

Definition at line 78 of file result.hpp.

+ Collaboration diagram for Result< void >:

The documentation for this class was generated from the following file: