Lines Matching refs:len
64 unsigned len; /* a code's length in bits */
131 for (len = 0; len <= MAXBITS; len++)
132 count[len] = 0;
156 for (len = 1; len <= MAXBITS; len++) {
158 left -= count[len];
166 for (len = 1; len < MAXBITS; len++)
167 offs[len + 1] = offs[len] + count[len];
176 with length len. That code is converted to an index by dropping drop
177 bits off of the bottom. For codes where len is less than drop + curr,
178 those top drop + curr - len bits are incremented through all values to
181 root is the number of index bits for the root table. When len exceeds
227 len = min; /* starting code length */
231 low = (unsigned)(-1); /* trigger new sub-table when len > root */
242 this.bits = (unsigned char)(len - drop);
256 /* replicate for those indices with low len bits equal to huff */
257 incr = 1U << (len - drop);
265 /* backwards increment the len-bit code huff */
266 incr = 1U << (len - 1);
276 /* go to next symbol, update count, len */
278 if (--(count[len]) == 0) {
279 if (len == max) break;
280 len = lens[work[sym]];
284 if (len > root && (huff & mask) != low) {
293 curr = len - drop;
318 len is equal to curr + drop, so there is no loop needed to increment
323 this.bits = (unsigned char)(len - drop);
329 len = root;
331 this.bits = (unsigned char)len;
337 /* backwards increment the len-bit code huff */
338 incr = 1U << (len - 1);