diff options
| -rw-r--r-- | stc/cmap.h | 16 | ||||
| -rw-r--r-- | stc/csmap.h | 18 |
2 files changed, 17 insertions, 17 deletions
@@ -148,14 +148,14 @@ typedef struct {size_t idx; uint_fast8_t hx;} chash_bucket_t; typedef RawMapped C##X##_rawmapped_t; \
typedef CMAP_SIZE_T C##X##_size_t; \
\
- typedef SET_ONLY_##C( C##X##_key_t ) \
- MAP_ONLY_##C( struct {C##X##_key_t first; \
- C##X##_mapped_t second;} ) \
+ typedef SET_ONLY_##C( Key ) \
+ MAP_ONLY_##C( struct {Key first; \
+ Mapped second;} ) \
C##X##_value_t; \
\
- typedef SET_ONLY_##C( C##X##_rawkey_t ) \
- MAP_ONLY_##C( struct {C##X##_rawkey_t first; \
- C##X##_rawmapped_t second;} ) \
+ typedef SET_ONLY_##C( RawKey ) \
+ MAP_ONLY_##C( struct {RawKey first; \
+ RawMapped second;} ) \
C##X##_rawvalue_t; \
\
typedef struct { \
@@ -360,13 +360,13 @@ STC_INLINE size_t fastrange_uint64_t(uint64_t x, uint64_t n) {uint64_t l,h; c_um \
STC_DEF chash_bucket_t \
C##X##_bucket_(const C##X* self, const C##X##_rawkey_t* rkeyptr) { \
- const uint64_t hash = keyHashRaw(rkeyptr, sizeof(C##X##_rawkey_t)); \
+ const uint64_t hash = keyHashRaw(rkeyptr, sizeof(RawKey)); \
uint_fast8_t sx; size_t cap = self->bucket_count; \
chash_bucket_t b = {_c_SELECT(fastrange,CMAP_SIZE_T)(hash, cap), (uint_fast8_t)(hash | 0x80)}; \
const uint8_t* hashx = self->_hashx; \
while ((sx = hashx[b.idx])) { \
if (sx == b.hx) { \
- C##X##_rawkey_t r = keyToRaw(KEY_REF_##C(self->table + b.idx)); \
+ RawKey r = keyToRaw(KEY_REF_##C(self->table + b.idx)); \
if (keyEqualsRaw(&r, rkeyptr)) break; \
} \
if (++b.idx == cap) b.idx = 0; \
diff --git a/stc/csmap.h b/stc/csmap.h index caa9406a..dd864714 100644 --- a/stc/csmap.h +++ b/stc/csmap.h @@ -146,9 +146,9 @@ struct csmap_rep { size_t root, disp, head, size, cap; void* nodes[]; }; C##X##_mapped_t second;} ) \
C##X##_value_t; \
\
- typedef SET_ONLY_##C( C##X##_rawkey_t ) \
- MAP_ONLY_##C( struct {C##X##_rawkey_t first; \
- C##X##_rawmapped_t second;} ) \
+ typedef SET_ONLY_##C( RawKey ) \
+ MAP_ONLY_##C( struct {RawKey first; \
+ RawMapped second;} ) \
C##X##_rawvalue_t; \
\
typedef struct { \
@@ -366,12 +366,12 @@ static struct csmap_rep _smap_inits = {0, 0, 0, 0}; } \
\
STC_DEF C##X##_value_t* \
- C##X##_find_it(const C##X* self, C##X##_rawkey_t rkey, C##X##_iter_t* out) { \
+ C##X##_find_it(const C##X* self, RawKey rkey, C##X##_iter_t* out) { \
C##X##_size_t tn = _csmap_rep(self)->root; \
C##X##_node_t *d = out->_d = self->nodes; \
out->_top = 0; \
while (tn) { \
- int c; C##X##_rawkey_t rx = keyToRaw(KEY_REF_##C(&d[tn].value)); \
+ int c; RawKey rx = keyToRaw(KEY_REF_##C(&d[tn].value)); \
if ((c = keyCompareRaw(&rx, &rkey)) < 0) \
tn = d[tn].link[1]; \
else if (c > 0) \
@@ -438,7 +438,7 @@ static struct csmap_rep _smap_inits = {0, 0, 0, 0}; int c, top = 0, dir = 0; \
while (it) { \
up[top++] = it; \
- C##X##_rawkey_t raw = keyToRaw(KEY_REF_##C(&d[it].value)); \
+ RawKey raw = keyToRaw(KEY_REF_##C(&d[it].value)); \
if ((c = keyCompareRaw(&raw, rkey)) == 0) {res->ref = &d[it].value; return tn;} \
dir = (c == -1); \
it = d[it].link[dir]; \
@@ -468,7 +468,7 @@ static struct csmap_rep _smap_inits = {0, 0, 0, 0}; static C##X##_size_t \
C##X##_erase_r_(C##X##_node_t *d, C##X##_size_t tn, const C##X##_rawkey_t* rkey, int *erased) { \
if (tn == 0) return 0; \
- C##X##_rawkey_t raw = keyToRaw(KEY_REF_##C(&d[tn].value)); \
+ RawKey raw = keyToRaw(KEY_REF_##C(&d[tn].value)); \
C##X##_size_t tx; int c = keyCompareRaw(&raw, rkey); \
if (c != 0) \
d[tn].link[c == -1] = C##X##_erase_r_(d, d[tn].link[c == -1], rkey, erased); \
@@ -513,8 +513,8 @@ static struct csmap_rep _smap_inits = {0, 0, 0, 0}; \
STC_DEF C##X##_iter_t \
C##X##_erase_at(C##X* self, C##X##_iter_t pos) { \
- C##X##_rawkey_t raw = keyToRaw(KEY_REF_##C(pos.ref)); C##X##_next(&pos); \
- C##X##_rawkey_t nxt = keyToRaw(KEY_REF_##C(pos.ref)); \
+ RawKey raw = keyToRaw(KEY_REF_##C(pos.ref)); C##X##_next(&pos); \
+ RawKey nxt = keyToRaw(KEY_REF_##C(pos.ref)); \
C##X##_erase(self, raw); \
C##X##_find_it(self, nxt, &pos); \
return pos; \
|
