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/conditional/cond.h | 12 ++++++------ src/conditional/if.h | 4 ++-- 2 files changed, 8 insertions(+), 8 deletions(-) (limited to 'src/conditional') diff --git a/src/conditional/cond.h b/src/conditional/cond.h index 0c2b1a8..2d6a415 100644 --- a/src/conditional/cond.h +++ b/src/conditional/cond.h @@ -12,15 +12,15 @@ template class Cond { private: template - using predicate = IsTrue::type::type>; + using predicate = IsTrue>>>; public: - typedef typename Cdr< - typename Find< + typedef Eval::type - >::type - >::type type; + Eval> + >> + >> type; }; diff --git a/src/conditional/if.h b/src/conditional/if.h index b019674..b99f399 100644 --- a/src/conditional/if.h +++ b/src/conditional/if.h @@ -6,12 +6,12 @@ namespace tav { template < - bool Condition, + typename Condition, typename TrueBranch, typename FalseBranch > using If = std::conditional< - Condition, + Condition::value, TrueBranch, FalseBranch >; -- cgit v1.2.3