From de1f1dc67a1dabcddac2e89a5d703e98a92b7f11 Mon Sep 17 00:00:00 2001 From: Adrian Kummerlaender Date: Fri, 20 Feb 2015 22:03:19 +0100 Subject: Added `ReplaceNth` list operation * as its name implies this function replaces the _nth_ element of a given list * added appropriate test case --- test.cc | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'test.cc') diff --git a/test.cc b/test.cc index 7a2e963..774f9be 100644 --- a/test.cc +++ b/test.cc @@ -22,6 +22,7 @@ #include "list/generator/higher/list_tabulate.h" #include "list/operation/delete.h" #include "list/operation/delete_nth.h" +#include "list/operation/replace_nth.h" #include "function/apply.h" @@ -666,6 +667,20 @@ static_assert( "(delete-nth 1 (list 1 2 3)) != (list 1 3)" ); +// list replace nth + +static_assert( + std::is_same< + tav::List, tav::Int<42>, tav::Int<3>>, + tav::ReplaceNth< + tav::Size<1>, + tav::Int<42>, + tav::List, tav::Int<2>, tav::Int<3>> + > + >::value, + "(replace-nth 1 42 (list 1 2 3)) != (list 1 42 3)" +); + // list partition static_assert( -- cgit v1.2.3