[pulseaudio-discuss] [PATCH 1/3] hashmap: Add a key+value iterator

Tanu Kaskinen tanu.kaskinen at linux.intel.com
Sun Sep 29 09:17:43 PDT 2013


On Fri, 2013-09-20 at 17:27 +0530, Arun Raghavan wrote:
> ---
>  src/pulsecore/hashmap.h | 4 ++++
>  1 file changed, 4 insertions(+)
> 
> diff --git a/src/pulsecore/hashmap.h b/src/pulsecore/hashmap.h
> index ae030ed..e42732a 100644
> --- a/src/pulsecore/hashmap.h
> +++ b/src/pulsecore/hashmap.h
> @@ -85,6 +85,10 @@ void* pa_hashmap_last(pa_hashmap *h);
>  #define PA_HASHMAP_FOREACH(e, h, state) \
>      for ((state) = NULL, (e) = pa_hashmap_iterate((h), &(state), NULL); (e); (e) = pa_hashmap_iterate((h), &(state), NULL))
>  
> +/* A macro to ease itration through all key, value pairs */
> +#define PA_HASHMAP_FOREACH_KV(k, e, h, state) \
> +    for ((state) = NULL, (e) = pa_hashmap_iterate((h), &(state), (const void **) &(k)); (e); (e) = pa_hashmap_iterate((h), &(state), (const void **) &(k)))
> +
>  /* A macro to ease iteration through all entries, backwards */
>  #define PA_HASHMAP_FOREACH_BACKWARDS(e, h, state) \
>      for ((state) = NULL, (e) = pa_hashmap_iterate_backwards((h), &(state), NULL); (e); (e) = pa_hashmap_iterate_backwards((h), &(state), NULL))

I applied this patch (I need the macro myself).

-- 
Tanu



More information about the pulseaudio-discuss mailing list