YACLib
C++ library for concurrent tasks execution
Loading...
Searching...
No Matches
yaclib::detail::PromiseType< V, E, Lazy, Shared > Class Template Reference

#include <promise_type.hpp>

Inheritance diagram for yaclib::detail::PromiseType< V, E, Lazy, Shared >:
[legend]
Collaboration diagram for yaclib::detail::PromiseType< V, E, Lazy, Shared >:
[legend]

Public Member Functions

 PromiseType () noexcept
 
auto get_return_object () noexcept
 
auto initial_suspend () noexcept
 
Destroy final_suspend () noexcept
 
void unhandled_exception () noexcept
 
template<typename Value >
void return_value (Value &&value) noexcept(std::is_nothrow_constructible_v< Result< V, E >, Value && >)
 
void return_value (Unit) noexcept
 
auto Handle () noexcept
 

Detailed Description

template<typename V, typename E, bool Lazy, bool Shared>
class yaclib::detail::PromiseType< V, E, Lazy, Shared >

Definition at line 50 of file promise_type.hpp.

Constructor & Destructor Documentation

◆ PromiseType()

template<typename V , typename E , bool Lazy, bool Shared>
yaclib::detail::PromiseType< V, E, Lazy, Shared >::PromiseType ( )
inlinenoexcept

Member Function Documentation

◆ final_suspend()

template<typename V , typename E , bool Lazy, bool Shared>
Destroy yaclib::detail::PromiseType< V, E, Lazy, Shared >::final_suspend ( )
inlinenoexcept

Definition at line 76 of file promise_type.hpp.

◆ get_return_object()

template<typename V , typename E , bool Lazy, bool Shared>
auto yaclib::detail::PromiseType< V, E, Lazy, Shared >::get_return_object ( )
inlinenoexcept

Definition at line 58 of file promise_type.hpp.

References yaclib::detail::Lazy, and yaclib::detail::Shared.

◆ Handle()

template<typename V , typename E , bool Lazy, bool Shared>
auto yaclib::detail::PromiseType< V, E, Lazy, Shared >::Handle ( )
inlinenoexcept

Definition at line 93 of file promise_type.hpp.

References yaclib::MakeContract(), and YACLIB_ASSERT.

◆ initial_suspend()

template<typename V , typename E , bool Lazy, bool Shared>
auto yaclib::detail::PromiseType< V, E, Lazy, Shared >::initial_suspend ( )
inlinenoexcept

Definition at line 68 of file promise_type.hpp.

References yaclib::detail::Lazy.

◆ return_value() [1/2]

template<typename V , typename E , bool Lazy, bool Shared>
void yaclib::detail::PromiseType< V, E, Lazy, Shared >::return_value ( Unit  )
inlinenoexcept

Definition at line 89 of file promise_type.hpp.

◆ return_value() [2/2]

template<typename V , typename E , bool Lazy, bool Shared>
template<typename Value >
void yaclib::detail::PromiseType< V, E, Lazy, Shared >::return_value ( Value &&  value)
inlinenoexcept

Definition at line 85 of file promise_type.hpp.

References yaclib::MakeContract().

◆ unhandled_exception()

template<typename V , typename E , bool Lazy, bool Shared>
void yaclib::detail::PromiseType< V, E, Lazy, Shared >::unhandled_exception ( )
inlinenoexcept

Definition at line 80 of file promise_type.hpp.


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