|
template<typename T1 , typename... Ts> |
using | emp::first_type = T1 |
|
template<typename T1 , typename T2 , typename... Ts> |
using | emp::second_type = T2 |
|
template<typename T1 , typename T2 , typename T3 , typename... Ts> |
using | emp::third_type = T3 |
|
template<size_t ID, typename... Ts> |
using | emp::pack_id = typename internal::pack_id_impl< ID, Ts... >::type |
|
template<typename... Ts> |
using | emp::last_type = pack_id< sizeof...(Ts)-1, Ts... > |
|
template<typename REAL_TYPE , typename EVAL_TYPE > |
using | emp::sfinae_decoy = REAL_TYPE |
|
template<typename REAL_TYPE , typename EVAL_TYPE > |
using | emp::type_decoy = REAL_TYPE |
|
template<typename EVAL_TYPE > |
using | emp::bool_decoy = bool |
|
template<typename EVAL_TYPE > |
using | emp::int_decoy = int |
|
template<typename T > |
using | emp::internal::value_member = decltype(T::value) |
|
template<typename T , typename... U> |
using | emp::AdaptTemplate = typename internal::AdaptTemplateHelper< T, U... >::type |
|
template<typename T , typename U > |
using | emp::AdaptTemplate_Arg1 = typename internal::AdaptTemplateHelper_Arg1< T, U >::type |
|
|
template<typename TEST > |
constexpr bool | emp::has_type () |
|
template<typename TEST , typename FIRST , typename... OTHERS> |
constexpr bool | emp::has_type () |
|
template<typename TEST > |
constexpr size_t | emp::count_type () |
|
template<typename TEST , typename FIRST , typename... OTHERS> |
constexpr size_t | emp::count_type () |
|
template<typename TEST_T > |
constexpr int | emp::internal::get_type_index_impl () |
|
template<typename TEST_T , typename T1 , typename... Ts> |
constexpr int | emp::internal::get_type_index_impl () |
|
template<typename TEST_T , typename... Ts> |
constexpr int | emp::get_type_index () |
|
template<typename TYPE1 > |
constexpr bool | emp::has_unique_first_type () |
|
template<typename TYPE1 > |
constexpr bool | emp::has_unique_types () |
|
template<typename TYPE1 , typename TYPE2 , typename... TYPE_LIST> |
constexpr bool | emp::has_unique_first_type () |
|
template<typename TYPE1 , typename TYPE2 , typename... TYPE_LIST> |
constexpr bool | emp::has_unique_types () |
|
template<template< typename... > class FILTER, typename T > |
constexpr bool | emp::internal::tt_exist_impl (bool_decoy< FILTER< T >> x) |
|
template<template< typename... > class FILTER, typename T > |
constexpr bool | emp::internal::tt_exist_impl (...) |
|
template<template< typename... > class TEST, typename T > |
constexpr bool | emp::test_type_exist () |
|
template<template< typename... > class TEST, typename T > |
constexpr bool | emp::test_type_value () |
|
template<template< typename... > class TEST, typename T > |
constexpr bool | emp::test_type () |
|
template<typename R , typename... PARAMS, typename... ARGS> |
auto | emp::TruncateCall (std::function< R(PARAMS...)> fun, ARGS &&...args) |
|
template<typename T > |
auto | emp::internal::Hash_impl (const T &x, bool) -> decltype(x.GetHash()) |
|
template<typename T > |
auto | emp::internal::Hash_impl (const T &x, int) -> decltype(std::hash< T >()(x)) |
|
template<typename T > |
std::size_t | emp::internal::Hash_impl (const T &x,...) |
|
template<typename T > |
std::size_t | emp::Hash (const T &x) |
|
template<typename T > |
std::size_t | emp::CombineHash (const T &x) |
|
template<typename T1 , typename T2 , typename... EXTRA> |
std::size_t | emp::CombineHash (const T1 &x1, const T2 &x2, const EXTRA &...x_extra) |
|
template<typename Function > |
function_traits< Function >::pointer | emp::to_function_pointer (Function &lambda) |
|
template<typename Function > |
function_traits< Function >::function | emp::to_function (Function &lambda) |
|