src/array_list.c

changeset 1634
006e076a8db7
parent 1632
f74e4fc496a2
equal deleted inserted replaced
1633:fe24b68758bf 1634:006e076a8db7
348 cx_compare_func cmp_func, 348 cx_compare_func cmp_func,
349 bool allow_duplicates 349 bool allow_duplicates
350 ) { 350 ) {
351 cx_compare_func_wrapper wrapper = {cmp_func}; 351 cx_compare_func_wrapper wrapper = {cmp_func};
352 return cx_array_insert_sorted_c_(allocator, array, elem_size, sorted_data, 352 return cx_array_insert_sorted_c_(allocator, array, elem_size, sorted_data,
353 n, cx_ccmp_wrap, &wrapper, allow_duplicates); 353 n, cx_cmp_wrap, &wrapper, allow_duplicates);
354 } 354 }
355 355
356 #ifndef WITH_QSORT_R 356 #ifndef WITH_QSORT_R
357 static thread_local cx_compare_func2 cx_array_fn_for_qsort; 357 static thread_local cx_compare_func2 cx_array_fn_for_qsort;
358 static thread_local void *cx_array_context_for_qsort; 358 static thread_local void *cx_array_context_for_qsort;
576 size_t elem_size, 576 size_t elem_size,
577 const void *elem, 577 const void *elem,
578 cx_compare_func cmp_func 578 cx_compare_func cmp_func
579 ) { 579 ) {
580 cx_compare_func_wrapper wrapper = {cmp_func}; 580 cx_compare_func_wrapper wrapper = {cmp_func};
581 return cx_array_binary_search_inf_c(arr, size, elem_size, elem, cx_ccmp_wrap, &wrapper); 581 return cx_array_binary_search_inf_c(arr, size, elem_size, elem, cx_cmp_wrap, &wrapper);
582 } 582 }
583 583
584 size_t cx_array_binary_search( 584 size_t cx_array_binary_search(
585 const void *arr, 585 const void *arr,
586 size_t size, 586 size_t size,
587 size_t elem_size, 587 size_t elem_size,
588 const void *elem, 588 const void *elem,
589 cx_compare_func cmp_func 589 cx_compare_func cmp_func
590 ) { 590 ) {
591 cx_compare_func_wrapper wrapper = {cmp_func}; 591 cx_compare_func_wrapper wrapper = {cmp_func};
592 return cx_array_binary_search_c(arr, size, elem_size, elem, cx_ccmp_wrap, &wrapper); 592 return cx_array_binary_search_c(arr, size, elem_size, elem, cx_cmp_wrap, &wrapper);
593 } 593 }
594 594
595 size_t cx_array_binary_search_sup( 595 size_t cx_array_binary_search_sup(
596 const void *arr, 596 const void *arr,
597 size_t size, 597 size_t size,
598 size_t elem_size, 598 size_t elem_size,
599 const void *elem, 599 const void *elem,
600 cx_compare_func cmp_func 600 cx_compare_func cmp_func
601 ) { 601 ) {
602 cx_compare_func_wrapper wrapper = {cmp_func}; 602 cx_compare_func_wrapper wrapper = {cmp_func};
603 return cx_array_binary_search_sup_c(arr, size, elem_size, elem, cx_ccmp_wrap, &wrapper); 603 return cx_array_binary_search_sup_c(arr, size, elem_size, elem, cx_cmp_wrap, &wrapper);
604 } 604 }
605 605
606 #ifndef CX_ARRAY_SWAP_SBO_SIZE 606 #ifndef CX_ARRAY_SWAP_SBO_SIZE
607 #define CX_ARRAY_SWAP_SBO_SIZE 128 607 #define CX_ARRAY_SWAP_SBO_SIZE 128
608 #endif 608 #endif

mercurial