(m, encbase, e)
| 390 | |
| 391 | @staticmethod |
| 392 | def _dropFloatingPoint(m, encbase, e): |
| 393 | ms, es = 1, 1 |
| 394 | if m < 0: |
| 395 | ms = -1 # mantissa sign |
| 396 | |
| 397 | if e < 0: |
| 398 | es = -1 # exponent sign |
| 399 | |
| 400 | m *= ms |
| 401 | |
| 402 | if encbase == 8: |
| 403 | m *= 2 ** (abs(e) % 3 * es) |
| 404 | e = abs(e) // 3 * es |
| 405 | |
| 406 | elif encbase == 16: |
| 407 | m *= 2 ** (abs(e) % 4 * es) |
| 408 | e = abs(e) // 4 * es |
| 409 | |
| 410 | while True: |
| 411 | if int(m) != m: |
| 412 | m *= encbase |
| 413 | e -= 1 |
| 414 | continue |
| 415 | break |
| 416 | |
| 417 | return ms, int(m), encbase, e |
| 418 | |
| 419 | def _chooseEncBase(self, value): |
| 420 | m, b, e = value |
no outgoing calls
no test coverage detected