From a3a0d6a1fa880b324576bb073637e021c57b0e65 Mon Sep 17 00:00:00 2001 From: Adrian Kummerlaender Date: Tue, 24 Feb 2015 16:51:37 +0100 Subject: Replaced `utility::defer_eval` with placeholder-less `Apply` * usage of `Apply` sans placeholders was already possible and as such duplicated `utility::defer_eval` * renamed `apply_none`'s type alias from to `type` to enable combining it with `Eval` --- example/turing/src/tape.h | 3 ++- src/function/detail/apply.h | 2 +- src/utility/predicate.h | 11 ++--------- test.cc | 2 +- 4 files changed, 6 insertions(+), 12 deletions(-) diff --git a/example/turing/src/tape.h b/example/turing/src/tape.h index 4f79bd9..94c9536 100644 --- a/example/turing/src/tape.h +++ b/example/turing/src/tape.h @@ -5,6 +5,7 @@ #include "list/list.h" #include "list/operation/replace_nth.h" #include "conditional/if.h" +#include "function/apply.h" namespace machine { @@ -26,7 +27,7 @@ template < > using readSymbol = tav::Eval>, - tav::utility::defer_eval, + tav::Apply, BLANK >>; diff --git a/src/function/detail/apply.h b/src/function/detail/apply.h index 2f4c782..c06fe68 100644 --- a/src/function/detail/apply.h +++ b/src/function/detail/apply.h @@ -12,7 +12,7 @@ template < typename... Arguments > struct apply_none { - using function = Function; + using type = Function; }; template < diff --git a/src/utility/predicate.h b/src/utility/predicate.h index e84b18f..b185759 100644 --- a/src/utility/predicate.h +++ b/src/utility/predicate.h @@ -3,6 +3,7 @@ #include "conditional/if.h" #include "operation/logic.h" +#include "function/apply.h" namespace tav { @@ -21,14 +22,6 @@ struct predicate_assurance { >; }; -template < - template class Function, - typename... Arguments -> -struct defer_eval { - typedef Function type; -}; - template < template class Predicate, template class Charge, @@ -38,7 +31,7 @@ struct predicate_guard { template using check = Eval>, - defer_eval, + Apply, Surrogate >>; }; diff --git a/test.cc b/test.cc index 44c0f6f..525afcf 100644 --- a/test.cc +++ b/test.cc @@ -1146,7 +1146,7 @@ static_assert( tav::Multiply, tav::Int<21>, tav::Int<2> - >::function::type + >::type >::value, "(* 21 2) != 42" ); -- cgit v1.2.3