* Save and restore precision for both libraries.
(prec: number, fn: () => T)
| 94 | * Save and restore precision for both libraries. |
| 95 | */ |
| 96 | function withPrecision<T>(prec: number, fn: () => T): T { |
| 97 | const savedBD = BigDecimal.precision; |
| 98 | const savedDJ = Decimal.precision; |
| 99 | try { |
| 100 | BigDecimal.precision = prec; |
| 101 | Decimal.set({ precision: prec }); |
| 102 | return fn(); |
| 103 | } finally { |
| 104 | BigDecimal.precision = savedBD; |
| 105 | Decimal.set({ precision: savedDJ }); |
| 106 | } |
| 107 | } |
| 108 | |
| 109 | // ================================================================ |
| 110 | // Division |
no test coverage detected