diff options
Diffstat (limited to 'src/list')
-rw-r--r-- | src/list/list.h | 1 | ||||
-rw-r--r-- | src/list/operation/concatenate.h | 18 |
2 files changed, 19 insertions, 0 deletions
diff --git a/src/list/list.h b/src/list/list.h index b89e1ca..5c67872 100644 --- a/src/list/list.h +++ b/src/list/list.h @@ -31,5 +31,6 @@ using Tail = Cdr<Cons>; #include "operation/basic.h" #include "operation/append.h" +#include "operation/concatenate.h" #endif // TYPEASVALUE_SRC_LIST_LIST_H_ diff --git a/src/list/operation/concatenate.h b/src/list/operation/concatenate.h new file mode 100644 index 0000000..944470b --- /dev/null +++ b/src/list/operation/concatenate.h @@ -0,0 +1,18 @@ +#ifndef TYPEASVALUE_SRC_LIST_OPERATION_CONCATENATE_H_ +#define TYPEASVALUE_SRC_LIST_OPERATION_CONCATENATE_H_ + +#include "append.h" +#include "higher/fold.h" + +namespace tav { + +template <typename ListOfLists> +using Concatenate = Fold< + Append, + void, + ListOfLists +>; + +} + +#endif // TYPEASVALUE_SRC_LIST_OPERATION_CONCATENATE_H_ |