YACLib
C++ library for concurrent tasks execution
Loading...
Searching...
No Matches
result.hpp File Reference
#include <yaclib/config.hpp>
#include <yaclib/fwd.hpp>
#include <yaclib/log.hpp>
#include <yaclib/util/type_traits.hpp>
#include <exception>
#include <new>
#include <type_traits>
#include <utility>
Include dependency graph for result.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  yaclib::StopException
 Exception that represents cancellation of an async operation,. More...
 
class  yaclib::Result< ValueT >
 Encapsulated return value from caller. More...
 
struct  yaclib::ResultTrait
 Default result trait, describes how async abstractions create and inspect results. More...
 
struct  yaclib::DefaultTrait
 Trait used by default for all async abstractions, a separate struct so it can be forward declared. More...
 

Namespaces

namespace  yaclib
 

Macros

#define YACLIB_RESULT_EMPTY_VALUE   YACLIB_NO_UNIQUE_ADDRESS
 

Functions

const std::exception_ptr & yaclib::StopPtr () noexcept
 Cached std::exception_ptr with StopException, copy is cheap and never allocates.
 
bool yaclib::IsStop (const std::exception_ptr &error) noexcept
 Check if error represents cancellation,.
 

Macro Definition Documentation

◆ YACLIB_RESULT_EMPTY_VALUE

#define YACLIB_RESULT_EMPTY_VALUE   YACLIB_NO_UNIQUE_ADDRESS

Definition at line 21 of file result.hpp.