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

Go to the source code of this file.

Classes

class  yaclib::detail::NoResultCore
 
class  yaclib::detail::Core< Ret, Arg, E, Func, Type, kIsAsync, kIsCall >
 
struct  yaclib::detail::Return< V, E, Func, 1 >
 
struct  yaclib::detail::Return< V, E, Func, 2 >
 
struct  yaclib::detail::Return< V, E, Func, 3 >
 
struct  yaclib::detail::Return< V, E, Func, 4 >
 
struct  yaclib::detail::Return< V, E, Func, 5 >
 

Namespaces

namespace  yaclib
 
namespace  yaclib::detail
 

Typedefs

template<CoreType Type, typename V , typename E >
using yaclib::detail::ResultCoreT = std::conditional_t< Type==CoreType::Detach, NoResultCore, ResultCore< V, E > >
 

Enumerations

enum class  yaclib::detail::CoreType : unsigned char { yaclib::detail::Run = 0 , yaclib::detail::Then = 1 , yaclib::detail::Detach = 2 }
 
enum class  yaclib::detail::CallbackType : unsigned char {
  yaclib::detail::Inline = 0 , yaclib::detail::On = 1 , yaclib::detail::InlineOn = 2 , yaclib::detail::LazyInline = 3 ,
  yaclib::detail::LazyOn = 4
}
 

Functions

InlineCoreyaclib::detail::MakeDrop () noexcept
 
YACLIB_INLINE BaseCoreyaclib::detail::MoveToCaller (BaseCore *head) noexcept
 
template<typename V , typename E , typename Func >
constexpr char yaclib::detail::Tag () noexcept
 
template<CoreType CoreT, bool kIsCall, typename Arg , typename E , typename Func >
autoyaclib::detail::MakeCore (Func &&f)
 
template<CoreType CoreT, CallbackType CallbackT, typename Arg , typename E , typename Func >
auto yaclib::detail::SetCallback (ResultCorePtr< Arg, E > &core, IExecutor *executor, Func &&f)