aboutsummaryrefslogtreecommitdiff
path: root/src/list/operation/delete.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/list/operation/delete.h')
-rw-r--r--src/list/operation/delete.h14
1 files changed, 5 insertions, 9 deletions
diff --git a/src/list/operation/delete.h b/src/list/operation/delete.h
index ad0a4cf..2ff674c 100644
--- a/src/list/operation/delete.h
+++ b/src/list/operation/delete.h
@@ -3,6 +3,7 @@
#include "type.h"
#include "higher/filter.h"
+#include "function/apply.h"
namespace tav {
@@ -10,15 +11,10 @@ template <
typename Element,
typename List
>
-class Delete {
- private:
- template <typename Current>
- using comparator = EqualValue<Current, Element>;
-
- public:
- typedef typename Remove<comparator, List>::type type;
-
-};
+using Delete = Remove<
+ Apply<EqualValue, tav::_0, Element>::template single_type,
+ List
+>;
}