YACLib
C++ library for concurrent tasks execution
Loading...
Searching...
No Matches
when.hpp File Reference
Include dependency graph for when.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  yaclib::when::CombinatorCallback< Combinator, Core, Index >
 
struct  yaclib::when::CoreSignature< Cores >
 
struct  yaclib::when::SingleCombinator< Strategy, Core >
 
struct  yaclib::when::StaticCombinator< Strategy, Cores >
 
struct  yaclib::when::DynamicCombinator< Strategy, Core >
 

Namespaces

namespace  yaclib
 
namespace  yaclib::when
 

Typedefs

template<typename T >
using yaclib::when::IsUniqueCore = detail::IsInstantiationOf< detail::UniqueCore, T >
 
template<typename T >
using yaclib::when::IsSharedCore = detail::IsInstantiationOf< detail::SharedCore, T >
 

Functions

template<typename... Futures>
YACLIB_INLINE void yaclib::when::CheckSameError ()
 
template<typename Strategy , typename Core >
YACLIB_INLINE void yaclib::when::ConsumeImpl (Strategy &st, Core &core)
 
template<std::size_t Index, typename Strategy , typename Core >
YACLIB_INLINE void yaclib::when::ConsumeImpl (Strategy &st, Core &core)
 
template<typename Strategy , typename Core >
YACLIB_INLINE void yaclib::when::ConsumeImpl (Strategy &st, Core &core, std::size_t index)
 
template<std::size_t Index, typename Strategy , typename Core >
YACLIB_INLINE void yaclib::when::Consume (Strategy &st, Core &core)
 
template<typename Strategy , typename Core >
YACLIB_INLINE void yaclib::when::Consume (Strategy &st, Core &core, std::size_t index)
 
template<template< FailPolicy, typename... > typename Strategy, FailPolicy F, typename OutputValue , typename OutputError , typename... Futures>
auto yaclib::when::When (Futures... futures)
 
template<template< FailPolicy, typename... > typename Strategy, FailPolicy F, typename OutputValue , typename OutputError , typename Iterator , typename Value = typename std::iterator_traits<Iterator>::value_type>
auto yaclib::when::When (Iterator begin, std::size_t count)
 

Variables

template<ConsumePolicy P>
constexpr bool yaclib::when::kIsOrdered = P == ConsumePolicy::Static || P == ConsumePolicy::Dynamic
 
constexpr std::size_t yaclib::when::kDynamicTag = std::numeric_limits<std::size_t>::max()