X-Git-Url: http://git.asbjorn.biz/?a=blobdiff_plain;f=lib%2Fq.h;h=0a3d323d95f72432b86cd4d20710a0c859495e8c;hb=a43e097bc7958c5739ef3e77cdcedd56ddc060b9;hp=58064f37d2d13785ad31a9f339cfc8abebba3e7d;hpb=f0a3da08874dcfae2f3180559b208f6726702e6a;p=swftools.git diff --git a/lib/q.h b/lib/q.h index 58064f3..0a3d323 100644 --- a/lib/q.h +++ b/lib/q.h @@ -156,12 +156,15 @@ void stringarray_destroy(stringarray_t*sa); dict_t*dict_new(); dict_t*dict_new2(type_t*type); -void dict_init(dict_t*dict); +void dict_init(dict_t*dict, int size); dictentry_t*dict_put(dict_t*h, const void*key, void* data); +void dict_put2(dict_t*h, const char*s, void*data); int dict_count(dict_t*h); void dict_dump(dict_t*h, FILE*fi, const char*prefix); +dictentry_t* dict_get_slot(dict_t*h, const void*key); void* dict_lookup(dict_t*h, const void*s); char dict_del(dict_t*h, const void*s); +dict_t*dict_clone(dict_t*); void dict_foreach_keyvalue(dict_t*h, void (*runFunction)(void*data, const void*key, void*val), void*data); void dict_foreach_value(dict_t*h, void (*runFunction)(void*)); @@ -191,10 +194,12 @@ void array_free(array_t*array); void*array_getkey(array_t*array, int nr); void*array_getvalue(array_t*array, int nr); int array_append(array_t*array, const void*name, void*data); +#define array_contains(a,b) (array_find((a),(b))>=0) int array_find(array_t*array, const void*name); int array_find2(array_t*array, const void*name, void*data); int array_update(array_t*array, const void*name, void*data); int array_append_if_new(array_t*array, const void*name, void*data); +#define array_length(a) ((a)->num) #define DECLARE(x) struct _##x;typedef struct _##x x##_t; #define DECLARE_LIST(x) \