(i)
| 73 | |
| 74 | # https://dev.mysql.com/doc/internals/en/integer.html#packet-Protocol::LengthEncodedInteger |
| 75 | def _lenenc_int(i): |
| 76 | if i < 0: |
| 77 | raise ValueError( |
| 78 | "Encoding %d is less than 0 - no representation in LengthEncodedInteger" % i |
| 79 | ) |
| 80 | elif i < 0xFB: |
| 81 | return bytes([i]) |
| 82 | elif i < (1 << 16): |
| 83 | return b"\xfc" + struct.pack("<H", i) |
| 84 | elif i < (1 << 24): |
| 85 | return b"\xfd" + struct.pack("<I", i)[:3] |
| 86 | elif i < (1 << 64): |
| 87 | return b"\xfe" + struct.pack("<Q", i) |
| 88 | else: |
| 89 | raise ValueError( |
| 90 | f"Encoding {i:x} is larger than {1 << 64:x} - no representation in LengthEncodedInteger" |
| 91 | ) |
| 92 | |
| 93 | |
| 94 | class Connection: |
no outgoing calls
no test coverage detected
searching dependent graphs…