X-Git-Url: https://scm.lunaixsky.com/lunaix-os.git/blobdiff_plain/d57ee3ae693448387e3022fdd07bd741b2db818a..104ad9766838ec1c572102d6fe0dd689b016b830:/lunaix-os/includes/lunaix/ds/hstr.h?ds=sidebyside diff --git a/lunaix-os/includes/lunaix/ds/hstr.h b/lunaix-os/includes/lunaix/ds/hstr.h index 5dab1cb..77096aa 100644 --- a/lunaix-os/includes/lunaix/ds/hstr.h +++ b/lunaix-os/includes/lunaix/ds/hstr.h @@ -1,14 +1,14 @@ #ifndef __LUNAIX_HSTR_H #define __LUNAIX_HSTR_H -#include +#include #define HSTR_FULL_HASH 32 struct hstr { - uint32_t hash; - uint32_t len; + unsigned int hash; + unsigned int len; const char* value; }; @@ -26,8 +26,12 @@ struct hstr #define HSTR_EQ(str1, str2) ((str1)->hash == (str2)->hash) -inline void -hstr_rehash(struct hstr* hash_str, uint32_t truncate_to) +#define HSTR_VAL(hstr) ((hstr).value) +#define HSTR_LEN(hstr) ((hstr).len) +#define HSTR_HASH(hstr) ((hstr).hash) + +static inline void +hstr_rehash(struct hstr* hash_str, u32_t truncate_to) { hash_str->hash = strhash_32(hash_str->value, truncate_to); }