+ // test the last byte using the correct bitmask
+ uint8_t mask = BV(bitx->bitarray_len >> 3) - 1;
+ if (!(bitx->array[bitx->size - 1] & mask))
+ return 0;
+
+ return 1;
+}
+
+/*
+ * Ugly!.. reformat it.
+ */
+INLINE bool bitarray_isRangeFull(BitArray *bitx, int idx, int offset)
+{
+ ASSERT((size_t)(idx + offset) <= bitx->bitarray_len);
+
+ for (int i = idx; i <= idx + offset; i++)
+ if (!bitarray_test(bitx, i))
+ return 0;
+
+ return 1;
+}
+
+/*
+ * Ugly!.. reformat it.
+ */
+INLINE bool bitarray_isRangeEmpty(BitArray *bitx, int idx, int offset)
+{
+ ASSERT((size_t)(idx + offset) <= bitx->bitarray_len);
+
+ for (int i = idx; i <= idx + offset; i++)
+ if (bitarray_test(bitx, i))
+ return 0;