From e24f25ada7e8f48dc35cb235e045a4324bccb4f2 Mon Sep 17 00:00:00 2001 From: Adrian Kummerlaender Date: Sat, 14 Feb 2015 10:43:49 +0100 Subject: Introduced `Eval` function evaluation helper * replaces `typename *::type` constructs with `Eval` applications * aims to further unify function evaluation --- src/function/apply.h | 6 +++--- src/function/detail/apply.h | 10 +++++----- 2 files changed, 8 insertions(+), 8 deletions(-) (limited to 'src/function') diff --git a/src/function/apply.h b/src/function/apply.h index 5a2105c..f4de292 100644 --- a/src/function/apply.h +++ b/src/function/apply.h @@ -19,15 +19,15 @@ template < > struct Apply : Cond< Pair< - GreaterThan::type, Size<2>>, + GreaterThan>, Size<2>>, detail::apply_variadic >, Pair< - IsEqualValue::type, Size<2>>, + IsEqualValue>, Size<2>>, detail::apply_pair >, Pair< - IsEqualValue::type, Size<1>>, + IsEqualValue>, Size<1>>, detail::apply_single >, Pair< diff --git a/src/function/detail/apply.h b/src/function/detail/apply.h index b4b70bf..da347f7 100644 --- a/src/function/detail/apply.h +++ b/src/function/detail/apply.h @@ -33,13 +33,13 @@ template < int Index > struct resolve_placeholder> { - typedef typename Nth, Partials>::type type; + typedef Eval, Partials>> type; }; template using count_placeholders = Count< is_placeholder, - typename List::type + Eval> >; template < @@ -57,10 +57,10 @@ template < struct apply_variadic { template using function = Function< - typename resolve_placeholder< - typename tav::List::type, + Eval>, Arguments - >::type... + >>... >; }; -- cgit v1.2.3