aboutsummaryrefslogtreecommitdiff
path: root/src/list/operation/higher/partition.h
blob: eedeb91ec49a0272280f5e5113aa4642a3448f93 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#ifndef TYPEASVALUE_SRC_LIST_OPERATION_HIGHER_PARTITION_H_
#define TYPEASVALUE_SRC_LIST_OPERATION_HIGHER_PARTITION_H_

#include "filter.h"

namespace tav {

template <
	template<typename> class Predicate,
	typename                 Elements
>
using Partition = Cons<
	Eval<Filter<Predicate, Elements>>,
	Eval<Remove<Predicate, Elements>>
>;

}

#endif  // TYPEASVALUE_SRC_LIST_OPERATION_HIGHER_PARTITION_H_