ucx/map.h

changeset 29
bce0d7f2912b
parent 20
db7d9860dbbd
child 30
23bb65cbf7a4
     1.1 --- a/ucx/map.h	Mon Feb 20 15:30:45 2012 +0100
     1.2 +++ b/ucx/map.h	Tue Feb 21 01:13:17 2012 +0100
     1.3 @@ -17,7 +17,7 @@
     1.4  typedef struct UcxMapElement UcxMapElement;
     1.5  
     1.6  struct UcxMap {
     1.7 -    UcxMapElement *map;
     1.8 +    UcxMapElement **map;
     1.9      size_t        size;
    1.10  };
    1.11  
    1.12 @@ -35,14 +35,15 @@
    1.13  
    1.14  
    1.15  UcxMap *ucx_map_new(size_t size);
    1.16 +void ucx_map_free(UcxMap *map);
    1.17  
    1.18  int ucx_map_put(UcxMap *map, UcxKey key, void *data);
    1.19  void* ucx_map_get(UcxMap *map, UcxKey key);
    1.20  
    1.21 -#define ucx_map_sstr_put(m, s, d) ucx_map_put(m, ucx_key(s.ptr, s.length), d)
    1.22 -#define ucx_map_cstr_put(m, s, d) ucx_map_put(m, ucx_key(s, strlen(s)), d)
    1.23 -#define ucx_map_sstr_get(m, s) ucx_map_get(m, ucx_key(s.ptr, s.length))
    1.24 -#define ucx_map_cstr_get(m, s) ucx_map_get(m, ucx_key(s, strlen(s)))
    1.25 +#define ucx_map_sstr_put(m, s, d) ucx_map_put(m, ucx_key(s.ptr, 1+s.length), d)
    1.26 +#define ucx_map_cstr_put(m, s, d) ucx_map_put(m, ucx_key(s, 1+strlen(s)), d)
    1.27 +#define ucx_map_sstr_get(m, s) ucx_map_get(m, ucx_key(s.ptr, 1+s.length))
    1.28 +#define ucx_map_cstr_get(m, s) ucx_map_get(m, ucx_key(s, 1+strlen(s)))
    1.29  
    1.30  UcxKey ucx_key(void *data, size_t len);
    1.31  

mercurial