From 755bcee8a97b2912d047895d37f5b60672486144 Mon Sep 17 00:00:00 2001 From: Tyge Løvset Date: Fri, 17 Jun 2022 18:04:37 +0200 Subject: Various refactoring. Renamed c_apply_arr() => c_apply_array() --- include/stc/ccommon.h | 5 ++--- include/stc/template.h | 12 +++++++----- 2 files changed, 9 insertions(+), 8 deletions(-) (limited to 'include') diff --git a/include/stc/ccommon.h b/include/stc/ccommon.h index 110114a0..9c00255a 100644 --- a/include/stc/ccommon.h +++ b/include/stc/ccommon.h @@ -88,8 +88,7 @@ #define c_arraylen(a) (sizeof (a)/sizeof *(a)) // x and y are i_keyraw* type, defaults to i_key*: -#define c_less_cmp(less, x, y) ((less((y), (x))) - (less((x), (y)))) -#define c_default_cmp(x, y) c_less_cmp(c_default_less, x, y) +#define c_default_cmp(x, y) (c_default_less(y, x) - c_default_less(x, y)) #define c_default_less(x, y) (*(x) < *(y)) #define c_default_eq(x, y) (*(x) == *(y)) #define c_memcmp_eq(x, y) (memcmp(x, y, sizeof *(x)) == 0) @@ -209,7 +208,7 @@ STC_INLINE char* c_strnstrn(const char *s, const char *needle, while (v != _c_end) { action; ++v; } \ } while (0) -#define c_apply_arr(v, action, T, arr, n) do { \ +#define c_apply_array(v, action, T, arr, n) do { \ typedef T _c_T; \ _c_T *v = arr, *_c_end = v + (n); \ while (v != _c_end) { action; ++v; } \ diff --git a/include/stc/template.h b/include/stc/template.h index 5de248e7..217b29d3 100644 --- a/include/stc/template.h +++ b/include/stc/template.h @@ -163,16 +163,18 @@ #ifndef i_keydrop #define i_keydrop c_default_drop #endif -#ifdef i_less - #define i_cmp(x, y) c_less_cmp(i_less, x, y) -#endif -#if !defined i_eq && defined i_cmp + +// i_eq, i_less, i_cmp, i_hash +#if !defined i_eq && (defined i_cmp || defined i_less) #define i_eq(x, y) !(i_cmp(x, y)) #elif !defined i_eq #define i_eq c_default_eq #endif +#if !defined i_less && !defined i_cmp + #define i_less c_default_less +#endif #ifndef i_cmp - #define i_cmp c_default_cmp + #define i_cmp(x, y) (i_less(y, x)) - (i_less(x, y)) #endif #ifndef i_hash #define i_hash c_default_hash -- cgit v1.2.3