3.3 Generalized variable-length integers
(N, bias)
| 76 | |
| 77 | digits = b"abcdefghijklmnopqrstuvwxyz0123456789" |
| 78 | def generate_generalized_integer(N, bias): |
| 79 | """3.3 Generalized variable-length integers""" |
| 80 | result = bytearray() |
| 81 | j = 0 |
| 82 | while 1: |
| 83 | t = T(j, bias) |
| 84 | if N < t: |
| 85 | result.append(digits[N]) |
| 86 | return result.take_bytes() |
| 87 | result.append(digits[t + ((N - t) % (36 - t))]) |
| 88 | N = (N - t) // (36 - t) |
| 89 | j += 1 |
| 90 | |
| 91 | def adapt(delta, first, numchars): |
| 92 | if first: |
no test coverage detected
searching dependent graphs…