ttg 1.0.0
Template Task Graph (TTG): flowgraph-based programming model for high-performance distributed-memory algorithms
Loading...
Searching...
No Matches
Classes | Namespaces | Typedefs | Functions | Variables
callable.h File Reference
#include "ttg/util/meta.h"
#include "ttg/util/typelist.h"
#include <boost/callable_traits.hpp>
Include dependency graph for callable.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  ttg::meta::is_generic_callable< Callable, typename >
 
struct  ttg::meta::is_generic_callable< Callable, ttg::meta::void_t< boost::callable_traits::args_t< Callable, ttg::typelist > > >
 
struct  ttg::meta::candidate_argument_bindings< T, std::enable_if_t<!std::is_reference_v< T > &&!std::is_void_v< T > > >
 
struct  ttg::meta::candidate_argument_bindings< void, void >
 
struct  ttg::meta::candidate_argument_bindings< const void, void >
 

Namespaces

namespace  ttg
 top-level TTG namespace contains runtime-neutral functionality
 
namespace  ttg::meta
 

Typedefs

template<typename T >
using ttg::meta::candidate_argument_bindings_t = typename candidate_argument_bindings< T >::type
 

Functions

template<std::size_t N>
constexpr auto ttg::meta::ordinal2index (std::size_t ordinal, std::array< std::size_t, N > extents)
 
template<std::size_t Ordinal, typename Func , typename... Typelists, std::size_t... ArgIdx>
auto ttg::meta::compute_arg_binding_types_impl (Func &func, typelist< Typelists... > argument_type_lists, std::index_sequence< ArgIdx... > arg_idx={})
 
template<std::size_t Ordinal, typename ReturnType , typename Func , typename... Typelists, std::size_t... ArgIdx>
auto ttg::meta::compute_arg_binding_types_r_impl (Func &func, typelist< Typelists... > argument_type_lists, std::index_sequence< ArgIdx... > arg_idx={})
 
template<typename Func , typename... Typelists>
auto ttg::meta::compute_arg_binding_types (Func &func, typelist< Typelists... > argument_type_lists)
 
template<typename ReturnType , typename Func , typename... Typelists>
auto ttg::meta::compute_arg_binding_types_r (Func &func, typelist< Typelists... > argument_type_lists)
 

Variables

template<typename Callable >
constexpr bool ttg::meta::is_generic_callable_v = is_generic_callable<Callable>::value
 
template<typename Callable , typename Enabler = void>
constexpr std::pair< bool, std::pair< ttg::typelist<>, ttg::typelist<> > > ttg::meta::callable_args = {true, {}}