449 } else { |
449 } else { |
450 return -1; |
450 return -1; |
451 } |
451 } |
452 } |
452 } |
453 |
453 |
|
454 int cx_strcmp_p( |
|
455 void const *s1, |
|
456 void const *s2 |
|
457 ) { |
|
458 cxstring const *left = s1; |
|
459 cxstring const *right = s2; |
|
460 return cx_strcmp(*left, *right); |
|
461 } |
|
462 |
|
463 int cx_strcasecmp_p( |
|
464 void const *s1, |
|
465 void const *s2 |
|
466 ) { |
|
467 cxstring const *left = s1; |
|
468 cxstring const *right = s2; |
|
469 return cx_strcasecmp(*left, *right); |
|
470 } |
|
471 |
454 cxmutstr cx_strdup_a( |
472 cxmutstr cx_strdup_a( |
455 CxAllocator *allocator, |
473 CxAllocator *allocator, |
456 cxstring string |
474 cxstring string |
457 ) { |
475 ) { |
458 cxmutstr result = { |
476 cxmutstr result = { |