diff options
| author | default <nobody@localhost> | 2024-09-14 18:59:49 +0200 |
|---|---|---|
| committer | default <nobody@localhost> | 2024-09-14 18:59:49 +0200 |
| commit | 31ce1af73630143036d9cfc6a8a5083402f6b7aa (patch) | |
| tree | 1a2e9318b76010cb28ddcb4e4d31d7bdff91dbc2 /xs.h | |
| parent | c6594949f990099dadef738185cb2699ff3b0372 (diff) | |
Minor code cleaning.
Diffstat (limited to 'xs.h')
| -rw-r--r-- | xs.h | 4 |
1 files changed, 4 insertions, 0 deletions
@@ -157,6 +157,7 @@ unsigned int xs_hash_func(const char *data, int size); #define xs_is_true(v) (xs_type((v)) == XSTYPE_TRUE) #define xs_is_false(v) (xs_type((v)) == XSTYPE_FALSE) +#define xs_not(v) xs_stock(xs_is_true((v)) ? XSTYPE_FALSE : XSTYPE_TRUE) #define xs_list_foreach(l, v) for (int ct_##__LINE__ = 0; xs_list_next(l, &v, &ct_##__LINE__); ) #define xs_dict_foreach(l, k, v) for (int ct_##__LINE__ = 0; xs_dict_next(l, &k, &v, &ct_##__LINE__); ) @@ -357,6 +358,9 @@ int xs_is_null(const xs_val *data) int xs_cmp(const xs_val *v1, const xs_val *v2) /* compares two values */ { + if (xs_type(v1) == XSTYPE_STRING && xs_type(v2) == XSTYPE_STRING) + return strcmp(v1, v2); + int s1 = xs_size(v1); int s2 = xs_size(v2); int d = s1 - s2; |