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

Go to the source code of this file.

Namespaces

namespace  yaclib
 

Typedefs

template<typename... Args>
using yaclib::head_t = typename detail::Head< Args... >::Type
 
template<typename Func , typename... Arg>
using yaclib::invoke_t = typename detail::Invoke< Func, Arg... >::Type
 
template<typename T >
using yaclib::result_value_t = typename detail::InstantiationTypes< Result, T >::Value
 
template<typename T >
using yaclib::result_error_t = typename detail::InstantiationTypes< Result, T >::Error
 
template<typename T >
using yaclib::task_value_t = typename detail::InstantiationTypes< Task, T >::Value
 
template<typename T >
using yaclib::task_error_t = typename detail::InstantiationTypes< Task, T >::Error
 
template<typename T >
using yaclib::future_base_value_t = typename detail::FutureBaseTypes< T >::Value
 
template<typename T >
using yaclib::future_base_error_t = typename detail::FutureBaseTypes< T >::Error
 

Functions

template<bool Condition, typename T >
decltype(autoyaclib::move_if (T &&arg) noexcept
 
template<typename T >
constexpr bool yaclib::Check () noexcept
 

Variables

template<typename Func , typename... Arg>
constexpr bool yaclib::is_invocable_v = detail::IsInvocable<Func, Arg...>::Value
 
template<typename T >
constexpr bool yaclib::is_result_v = detail::IsInstantiationOf<Result, T>::Value
 
template<typename T >
constexpr bool yaclib::is_future_base_v
 
template<typename T >
constexpr bool yaclib::is_task_v = detail::IsInstantiationOf<Task, T>::Value