Thread System 0.3.1
High-performance C++20 thread pool with work stealing and DAG scheduling
Loading...
Searching...
No Matches
pool_traits.h File Reference

Type traits and metaprogramming utilities for thread pool. More...

#include <kcenon/thread/concepts/thread_concepts.h>
#include <type_traits>
#include <functional>
#include <chrono>
#include <algorithm>
Include dependency graph for pool_traits.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  kcenon::thread::detail::function_traits< R(*)(Args...)>
 
struct  kcenon::thread::detail::function_traits< R(*)(Args...) noexcept >
 
struct  kcenon::thread::detail::function_traits< R(C::*)(Args...)>
 
struct  kcenon::thread::detail::function_traits< R(C::*)(Args...) const >
 
struct  kcenon::thread::detail::function_traits< F >
 Type trait for function signature analysis. More...
 
struct  kcenon::thread::detail::validate_thread_count< ThreadCount >
 Compile-time validation for thread pool configuration. More...
 
class  kcenon::thread::detail::callable_eraser
 Type eraser for heterogeneous callable storage. More...
 
struct  kcenon::thread::detail::callable_eraser::vtable_t
 
struct  kcenon::thread::detail::compile_string< N >
 Compile-time string for template error messages. More...
 
struct  kcenon::thread::detail::has_get_method< T, typename >
 SFINAE helper to detect if a type has a specific member. More...
 
struct  kcenon::thread::detail::has_get_method< T, std::void_t< decltype(std::declval< T >().get())> >
 

Namespaces

namespace  kcenon
 
namespace  kcenon::thread
 Core threading foundation of the thread system library.
 
namespace  kcenon::thread::detail
 

Typedefs

template<typename F >
using kcenon::thread::detail::function_return_t = typename function_traits<F>::return_type
 Helper to get function traits.
 
template<typename F >
using kcenon::thread::detail::function_args_t = typename function_traits<F>::argument_types
 

Functions

template<typename T >
constexpr auto kcenon::thread::detail::forward_if_callable (T &&t) -> std::enable_if_t< Callable< T >, T && >
 Template helper for perfect forwarding with type constraints.
 
template<typename T >
constexpr auto kcenon::thread::detail::get_type_name ()
 Template for generating descriptive error messages.
 

Variables

template<typename F >
constexpr size_t kcenon::thread::detail::function_arity_v = function_traits<F>::arity
 
template<typename T >
constexpr bool kcenon::thread::detail::has_get_method_v = has_get_method<T>::value
 

Detailed Description

Type traits and metaprogramming utilities for thread pool.

This file contains type traits and compile-time utilities that help ensure type safety and provide better error messages. Concept definitions have been moved to thread_concepts.h to avoid duplication.

Definition in file pool_traits.h.