(scale: int, unscaled: int)
| 350 | |
| 351 | |
| 352 | def _decimal_from_parts(scale: int, unscaled: int) -> decimal.Decimal: |
| 353 | if unscaled == 0: |
| 354 | digits = (0,) |
| 355 | sign = 0 |
| 356 | else: |
| 357 | sign = 1 if unscaled < 0 else 0 |
| 358 | digits = tuple(int(ch) for ch in str(abs(unscaled))) |
| 359 | return decimal.Decimal((sign, digits, -scale)) |
| 360 | |
| 361 | |
| 362 | def _write_decimal_parts(write_context, scale: int, unscaled: int): |