1
0
Fork 0
mirror of https://github.com/bolero-MURAKAMI/Sprout synced 2025-08-03 12:49:50 +00:00

add tuples::apply

This commit is contained in:
bolero-MURAKAMI 2014-12-14 12:59:51 +09:00
parent a1f6d6ffc3
commit 5ccbc4e903
16 changed files with 280 additions and 52 deletions

View file

@ -54,6 +54,11 @@ namespace sprout {
: public sprout::is_bind_expression<T>
{};
#if SPROUT_USE_VARIABLE_TEMPLATES
template<typename T>
SPROUT_STATIC_CONSTEXPR bool is_bind_expression_v = sprout::is_bind_expression<T>::value;
#endif // #if SPROUT_USE_VARIABLE_TEMPLATES
namespace detail {
struct no_tuple_element;

View file

@ -190,6 +190,11 @@ namespace sprout {
: public sprout::integral_constant<int, N>
{};
#if SPROUT_USE_VARIABLE_TEMPLATES
template<typename T>
SPROUT_STATIC_CONSTEXPR bool is_placeholder_v = sprout::is_placeholder<T>::value;
#endif // #if SPROUT_USE_VARIABLE_TEMPLATES
//
// is_positional_placeholder
//
@ -214,6 +219,11 @@ namespace sprout {
: public sprout::integral_constant<int, 1>
{};
#if SPROUT_USE_VARIABLE_TEMPLATES
template<typename T>
SPROUT_STATIC_CONSTEXPR bool is_positional_placeholder_v = sprout::is_positional_placeholder<T>::value;
#endif // #if SPROUT_USE_VARIABLE_TEMPLATES
//
// is_variadic_placeholder
//
@ -237,6 +247,11 @@ namespace sprout {
struct is_variadic_placeholder<sprout::variadic_placeholder<N> >
: public sprout::integral_constant<int, N + 1>
{};
#if SPROUT_USE_VARIABLE_TEMPLATES
template<typename T>
SPROUT_STATIC_CONSTEXPR bool is_variadic_placeholder_v = sprout::is_variadic_placeholder<T>::value;
#endif // #if SPROUT_USE_VARIABLE_TEMPLATES
} // namespace sprout
#endif // #ifndef SPROUT_FUNCTIONAL_BIND_PLACEHOLDER_HPP