--- a/src/array_list.c Wed Jan 25 19:19:29 2023 +0100 +++ b/src/array_list.c Thu Jan 26 20:59:36 2023 +0100 @@ -224,6 +224,14 @@ } } +static int cx_arl_insert_element( + struct cx_list_s *list, + size_t index, + void const *element +) { + return 1 != cx_arl_insert_array(list, index, element, 1); +} + static int cx_arl_insert_iter( struct cx_mut_iterator_s *iter, void const *elem, @@ -231,11 +239,10 @@ ) { struct cx_list_s *list = iter->src_handle; if (iter->index < list->size) { - int result = 1 != cx_arl_insert_array( + int result = cx_arl_insert_element( list, iter->index + 1 - prepend, - elem, - 1 + elem ); if (result == 0 && prepend != 0) { iter->index++; @@ -243,7 +250,7 @@ } return result; } else { - int result = 1 != cx_arl_insert_array(list, list->size, elem, 1); + int result = cx_arl_insert_element(list, list->size, elem); iter->index = list->size; return result; } @@ -407,6 +414,7 @@ static cx_list_class cx_array_list_class = { cx_arl_destructor, + cx_arl_insert_element, cx_arl_insert_array, cx_arl_insert_iter, cx_arl_remove,