diff options
Diffstat (limited to 'src/list/operation/append.h')
-rw-r--r-- | src/list/operation/append.h | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/src/list/operation/append.h b/src/list/operation/append.h index 28c9adf..2dcd184 100644 --- a/src/list/operation/append.h +++ b/src/list/operation/append.h @@ -3,18 +3,20 @@ namespace tav { +namespace detail { + template < typename Primary, typename Secondary > struct Append { - typedef Eval<Cons< + typedef Cons< Head<Primary>, Eval<Append< Tail<Primary>, Secondary >> - >> type; + > type; }; template <typename Secondary> @@ -24,4 +26,12 @@ struct Append<void, Secondary> { } +template < + typename Primary, + typename Secondary +> +using Append = Eval<detail::Append<Primary, Secondary>>; + +} + #endif // TYPEASVALUE_SRC_LIST_OPERATION_APPEND_H_ |