aboutsummaryrefslogtreecommitdiff
path: root/src/list/operation/higher/filter.h
diff options
context:
space:
mode:
authorAdrian Kummerlaender2015-02-05 17:13:39 +0100
committerAdrian Kummerlaender2015-02-05 17:13:39 +0100
commit1e0528b1a870e0e0f2b15f468fc60f80e5fc20b3 (patch)
treea8ec087590596694f1e80def81f08236b5399cb9 /src/list/operation/higher/filter.h
parent868f7d2c46302f3f993ff8f7943823243a5d1a6d (diff)
downloadTypeAsValue-1e0528b1a870e0e0f2b15f468fc60f80e5fc20b3.tar
TypeAsValue-1e0528b1a870e0e0f2b15f468fc60f80e5fc20b3.tar.gz
TypeAsValue-1e0528b1a870e0e0f2b15f468fc60f80e5fc20b3.tar.bz2
TypeAsValue-1e0528b1a870e0e0f2b15f468fc60f80e5fc20b3.tar.lz
TypeAsValue-1e0528b1a870e0e0f2b15f468fc60f80e5fc20b3.tar.xz
TypeAsValue-1e0528b1a870e0e0f2b15f468fc60f80e5fc20b3.tar.zst
TypeAsValue-1e0528b1a870e0e0f2b15f468fc60f80e5fc20b3.zip
Defer `If` template resolution analogously to other functions
* all other functions sans `Cons` are resolved when the respective member `*::type` is instantiated * this was changed soely to increase coherence
Diffstat (limited to 'src/list/operation/higher/filter.h')
-rw-r--r--src/list/operation/higher/filter.h12
1 files changed, 5 insertions, 7 deletions
diff --git a/src/list/operation/higher/filter.h b/src/list/operation/higher/filter.h
index d91735e..3fc08ee 100644
--- a/src/list/operation/higher/filter.h
+++ b/src/list/operation/higher/filter.h
@@ -16,13 +16,11 @@ class Filter {
typename Current,
typename Previous
>
- struct predicate_wrapper {
- typedef If<
- Predicate<Current>::type::value,
- Cons<Current, Previous>,
- Previous
- > type;
- };
+ using predicate_wrapper = If<
+ Predicate<Current>::type::value,
+ Cons<Current, Previous>,
+ Previous
+ >;
public:
typedef typename Fold<predicate_wrapper, void, List>::type type;