src/compare.c

changeset 1618
ef7cab6eb131
parent 1399
40c3b850f859
equal deleted inserted replaced
1617:d4385f35f8b0 1618:ef7cab6eb131
27 */ 27 */
28 28
29 #include "cx/compare.h" 29 #include "cx/compare.h"
30 30
31 #include <math.h> 31 #include <math.h>
32 #include <string.h>
32 33
33 int cx_vcmp_int(int a, int b) { 34 int cx_vcmp_int(int a, int b) {
34 if (a == b) { 35 if (a == b) {
35 return 0; 36 return 0;
36 } else { 37 } else {
287 return 0; 288 return 0;
288 } else { 289 } else {
289 return p1 < p2 ? -1 : 1; 290 return p1 < p2 ? -1 : 1;
290 } 291 }
291 } 292 }
293
294 int cx_acmp_memcmp(
295 const void *ptr1,
296 const void *ptr2,
297 void *size
298 ) {
299 size_t n = *(size_t*)size;
300 return memcmp(ptr1, ptr2, n);
301 }
302
303 int cx_acmp_wrap(
304 const void *ptr1,
305 const void *ptr2,
306 void *w
307 ) {
308 cx_compare_func_wrapper *wrapper = w;
309 return wrapper->cmp(ptr1, ptr2);
310 }

mercurial