From d3eb2a0951ede3c7dcce891c3a153f3ebbb59bae Mon Sep 17 00:00:00 2001 From: Matt Turner Date: Tue, 21 Jan 2020 14:48:04 -0800 Subject: [PATCH] util: Explain BITSET_FOREACH_SET params __size, in particular, makes this macro rather confusing to understand how to use. Hopefully this comment saves future users the headache. Reviewed-by: Jason Ekstrand Part-of: --- src/util/bitset.h | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/util/bitset.h b/src/util/bitset.h index 7f116214b92..f58d9f214e6 100644 --- a/src/util/bitset.h +++ b/src/util/bitset.h @@ -129,6 +129,14 @@ __bitset_next_set(unsigned i, BITSET_WORD *tmp, return word * BITSET_WORDBITS + bit; } +/** + * Iterates over each set bit in a set + * + * @param __i iteration variable, bit number + * @param __tmp an internally-used temporary bitset + * @param __set the bitset to iterate (will not be modified) + * @param __size number of bits in the set to consider + */ #define BITSET_FOREACH_SET(__i, __tmp, __set, __size) \ for (__tmp = *(__set), __i = 0; \ (__i = __bitset_next_set(__i, &__tmp, __set, __size)) < __size;) -- 2.11.0