ts-data-forge 14.10.2 → 14.11.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +34 -1
- package/dist/array/impl/array-utils-reducing-value.d.mts.map +1 -1
- package/dist/array/impl/array-utils-reducing-value.mjs +4 -3
- package/dist/array/impl/array-utils-reducing-value.mjs.map +1 -1
- package/dist/array/impl/array-utils-slice-clamped.mjs +1 -1
- package/dist/array/impl/array-utils-slice-clamped.mjs.map +1 -1
- package/dist/array/impl/array-utils-slicing.d.mts.map +1 -1
- package/dist/array/impl/array-utils-slicing.mjs +10 -3
- package/dist/array/impl/array-utils-slicing.mjs.map +1 -1
- package/dist/array/impl/array-utils-transformation.d.mts.map +1 -1
- package/dist/array/impl/array-utils-transformation.mjs +2 -2
- package/dist/array/impl/array-utils-transformation.mjs.map +1 -1
- package/dist/array/impl/array-utils-validation.d.mts.map +1 -1
- package/dist/array/impl/array-utils-validation.mjs +2 -1
- package/dist/array/impl/array-utils-validation.mjs.map +1 -1
- package/dist/built-in-tag.d.mts +22 -0
- package/dist/built-in-tag.d.mts.map +1 -0
- package/dist/built-in-tag.mjs +34 -0
- package/dist/built-in-tag.mjs.map +1 -0
- package/dist/collections/stack.mjs +3 -3
- package/dist/collections/stack.mjs.map +1 -1
- package/dist/iterator/range.d.mts +1 -1
- package/dist/iterator/range.d.mts.map +1 -1
- package/dist/iterator/range.mjs +5 -2
- package/dist/iterator/range.mjs.map +1 -1
- package/dist/number/branded-types/finite-number.d.mts +4 -9
- package/dist/number/branded-types/finite-number.d.mts.map +1 -1
- package/dist/number/branded-types/finite-number.mjs +9 -9
- package/dist/number/branded-types/finite-number.mjs.map +1 -1
- package/dist/number/branded-types/int.d.mts +3 -9
- package/dist/number/branded-types/int.d.mts.map +1 -1
- package/dist/number/branded-types/int.mjs +9 -10
- package/dist/number/branded-types/int.mjs.map +1 -1
- package/dist/number/branded-types/int16.d.mts +3 -18
- package/dist/number/branded-types/int16.d.mts.map +1 -1
- package/dist/number/branded-types/int16.mjs +9 -10
- package/dist/number/branded-types/int16.mjs.map +1 -1
- package/dist/number/branded-types/int32.d.mts +3 -14
- package/dist/number/branded-types/int32.d.mts.map +1 -1
- package/dist/number/branded-types/int32.mjs +9 -10
- package/dist/number/branded-types/int32.mjs.map +1 -1
- package/dist/number/branded-types/negative-finite-number.d.mts +4 -16
- package/dist/number/branded-types/negative-finite-number.d.mts.map +1 -1
- package/dist/number/branded-types/negative-finite-number.mjs +9 -10
- package/dist/number/branded-types/negative-finite-number.mjs.map +1 -1
- package/dist/number/branded-types/negative-int.d.mts +3 -16
- package/dist/number/branded-types/negative-int.d.mts.map +1 -1
- package/dist/number/branded-types/negative-int.mjs +9 -11
- package/dist/number/branded-types/negative-int.mjs.map +1 -1
- package/dist/number/branded-types/negative-safe-int.d.mts +3 -17
- package/dist/number/branded-types/negative-safe-int.d.mts.map +1 -1
- package/dist/number/branded-types/negative-safe-int.mjs +9 -11
- package/dist/number/branded-types/negative-safe-int.mjs.map +1 -1
- package/dist/number/branded-types/non-negative-finite-number.d.mts +4 -14
- package/dist/number/branded-types/non-negative-finite-number.d.mts.map +1 -1
- package/dist/number/branded-types/non-negative-finite-number.mjs +9 -9
- package/dist/number/branded-types/non-negative-finite-number.mjs.map +1 -1
- package/dist/number/branded-types/non-negative-int16.d.mts +3 -19
- package/dist/number/branded-types/non-negative-int16.d.mts.map +1 -1
- package/dist/number/branded-types/non-negative-int16.mjs +9 -10
- package/dist/number/branded-types/non-negative-int16.mjs.map +1 -1
- package/dist/number/branded-types/non-negative-int32.d.mts +3 -17
- package/dist/number/branded-types/non-negative-int32.d.mts.map +1 -1
- package/dist/number/branded-types/non-negative-int32.mjs +9 -10
- package/dist/number/branded-types/non-negative-int32.mjs.map +1 -1
- package/dist/number/branded-types/non-positive-finite-number.d.mts +4 -14
- package/dist/number/branded-types/non-positive-finite-number.d.mts.map +1 -1
- package/dist/number/branded-types/non-positive-finite-number.mjs +9 -9
- package/dist/number/branded-types/non-positive-finite-number.mjs.map +1 -1
- package/dist/number/branded-types/non-positive-int.d.mts +3 -14
- package/dist/number/branded-types/non-positive-int.d.mts.map +1 -1
- package/dist/number/branded-types/non-positive-int.mjs +9 -10
- package/dist/number/branded-types/non-positive-int.mjs.map +1 -1
- package/dist/number/branded-types/non-positive-safe-int.d.mts +3 -15
- package/dist/number/branded-types/non-positive-safe-int.d.mts.map +1 -1
- package/dist/number/branded-types/non-positive-safe-int.mjs +9 -10
- package/dist/number/branded-types/non-positive-safe-int.mjs.map +1 -1
- package/dist/number/branded-types/non-zero-finite-number.d.mts +4 -10
- package/dist/number/branded-types/non-zero-finite-number.d.mts.map +1 -1
- package/dist/number/branded-types/non-zero-finite-number.mjs +9 -10
- package/dist/number/branded-types/non-zero-finite-number.mjs.map +1 -1
- package/dist/number/branded-types/non-zero-int.d.mts +3 -10
- package/dist/number/branded-types/non-zero-int.d.mts.map +1 -1
- package/dist/number/branded-types/non-zero-int.mjs +9 -11
- package/dist/number/branded-types/non-zero-int.mjs.map +1 -1
- package/dist/number/branded-types/non-zero-int16.d.mts +3 -19
- package/dist/number/branded-types/non-zero-int16.d.mts.map +1 -1
- package/dist/number/branded-types/non-zero-int16.mjs +12 -11
- package/dist/number/branded-types/non-zero-int16.mjs.map +1 -1
- package/dist/number/branded-types/non-zero-int32.d.mts +3 -15
- package/dist/number/branded-types/non-zero-int32.d.mts.map +1 -1
- package/dist/number/branded-types/non-zero-int32.mjs +12 -11
- package/dist/number/branded-types/non-zero-int32.mjs.map +1 -1
- package/dist/number/branded-types/non-zero-safe-int.d.mts +6 -14
- package/dist/number/branded-types/non-zero-safe-int.d.mts.map +1 -1
- package/dist/number/branded-types/non-zero-safe-int.mjs +9 -13
- package/dist/number/branded-types/non-zero-safe-int.mjs.map +1 -1
- package/dist/number/branded-types/non-zero-uint16.d.mts +3 -20
- package/dist/number/branded-types/non-zero-uint16.d.mts.map +1 -1
- package/dist/number/branded-types/non-zero-uint16.mjs +9 -11
- package/dist/number/branded-types/non-zero-uint16.mjs.map +1 -1
- package/dist/number/branded-types/non-zero-uint32.d.mts +3 -18
- package/dist/number/branded-types/non-zero-uint32.d.mts.map +1 -1
- package/dist/number/branded-types/non-zero-uint32.mjs +9 -11
- package/dist/number/branded-types/non-zero-uint32.mjs.map +1 -1
- package/dist/number/branded-types/positive-finite-number.d.mts +4 -16
- package/dist/number/branded-types/positive-finite-number.d.mts.map +1 -1
- package/dist/number/branded-types/positive-finite-number.mjs +9 -9
- package/dist/number/branded-types/positive-finite-number.mjs.map +1 -1
- package/dist/number/branded-types/positive-int.d.mts +3 -16
- package/dist/number/branded-types/positive-int.d.mts.map +1 -1
- package/dist/number/branded-types/positive-int.mjs +9 -10
- package/dist/number/branded-types/positive-int.mjs.map +1 -1
- package/dist/number/branded-types/positive-int16.d.mts +3 -21
- package/dist/number/branded-types/positive-int16.d.mts.map +1 -1
- package/dist/number/branded-types/positive-int16.mjs +9 -10
- package/dist/number/branded-types/positive-int16.mjs.map +1 -1
- package/dist/number/branded-types/positive-int32.d.mts +3 -19
- package/dist/number/branded-types/positive-int32.d.mts.map +1 -1
- package/dist/number/branded-types/positive-int32.mjs +9 -10
- package/dist/number/branded-types/positive-int32.mjs.map +1 -1
- package/dist/number/branded-types/positive-safe-int.d.mts +5 -19
- package/dist/number/branded-types/positive-safe-int.d.mts.map +1 -1
- package/dist/number/branded-types/positive-safe-int.mjs +9 -11
- package/dist/number/branded-types/positive-safe-int.mjs.map +1 -1
- package/dist/number/branded-types/positive-uint16.d.mts +3 -20
- package/dist/number/branded-types/positive-uint16.d.mts.map +1 -1
- package/dist/number/branded-types/positive-uint16.mjs +9 -10
- package/dist/number/branded-types/positive-uint16.mjs.map +1 -1
- package/dist/number/branded-types/positive-uint32.d.mts +3 -18
- package/dist/number/branded-types/positive-uint32.d.mts.map +1 -1
- package/dist/number/branded-types/positive-uint32.mjs +9 -10
- package/dist/number/branded-types/positive-uint32.mjs.map +1 -1
- package/dist/number/branded-types/safe-int.d.mts +5 -12
- package/dist/number/branded-types/safe-int.d.mts.map +1 -1
- package/dist/number/branded-types/safe-int.mjs +9 -12
- package/dist/number/branded-types/safe-int.mjs.map +1 -1
- package/dist/number/branded-types/safe-uint.d.mts +3 -15
- package/dist/number/branded-types/safe-uint.d.mts.map +1 -1
- package/dist/number/branded-types/safe-uint.mjs +9 -11
- package/dist/number/branded-types/safe-uint.mjs.map +1 -1
- package/dist/number/branded-types/uint.d.mts +3 -14
- package/dist/number/branded-types/uint.d.mts.map +1 -1
- package/dist/number/branded-types/uint.mjs +9 -10
- package/dist/number/branded-types/uint.mjs.map +1 -1
- package/dist/number/branded-types/uint16.d.mts +3 -18
- package/dist/number/branded-types/uint16.d.mts.map +1 -1
- package/dist/number/branded-types/uint16.mjs +9 -10
- package/dist/number/branded-types/uint16.mjs.map +1 -1
- package/dist/number/branded-types/uint32.d.mts +3 -16
- package/dist/number/branded-types/uint32.d.mts.map +1 -1
- package/dist/number/branded-types/uint32.mjs +9 -10
- package/dist/number/branded-types/uint32.mjs.map +1 -1
- package/dist/number/enum/int8.d.mts +13 -15
- package/dist/number/enum/int8.d.mts.map +1 -1
- package/dist/number/enum/int8.mjs +20 -25
- package/dist/number/enum/int8.mjs.map +1 -1
- package/dist/number/enum/uint8.d.mts +12 -14
- package/dist/number/enum/uint8.d.mts.map +1 -1
- package/dist/number/enum/uint8.mjs +18 -23
- package/dist/number/enum/uint8.mjs.map +1 -1
- package/dist/number/index.d.mts +1 -1
- package/dist/number/index.d.mts.map +1 -1
- package/dist/number/index.mjs +1 -1
- package/dist/number/index.mjs.map +1 -1
- package/dist/number/num/impl/index.d.mts +2 -0
- package/dist/number/num/impl/index.d.mts.map +1 -0
- package/dist/number/num/impl/index.mjs +2 -0
- package/dist/number/num/impl/index.mjs.map +1 -0
- package/dist/number/num/impl/num.d.mts +531 -0
- package/dist/number/num/impl/num.d.mts.map +1 -0
- package/dist/number/num/impl/num.mjs +542 -0
- package/dist/number/num/impl/num.mjs.map +1 -0
- package/dist/number/num/index.d.mts +17 -0
- package/dist/number/num/index.d.mts.map +1 -0
- package/dist/number/num/index.mjs +17 -0
- package/dist/number/num/index.mjs.map +1 -0
- package/dist/number/operators/finite-number.d.mts +16 -0
- package/dist/number/operators/finite-number.d.mts.map +1 -0
- package/dist/number/operators/finite-number.mjs +7 -0
- package/dist/number/operators/finite-number.mjs.map +1 -0
- package/dist/number/operators/int.d.mts +16 -0
- package/dist/number/operators/int.d.mts.map +1 -0
- package/dist/number/operators/int.mjs +8 -0
- package/dist/number/operators/int.mjs.map +1 -0
- package/dist/number/operators/int16.d.mts +25 -0
- package/dist/number/operators/int16.d.mts.map +1 -0
- package/dist/number/operators/int16.mjs +8 -0
- package/dist/number/operators/int16.mjs.map +1 -0
- package/dist/number/operators/int32.d.mts +21 -0
- package/dist/number/operators/int32.d.mts.map +1 -0
- package/dist/number/operators/int32.mjs +8 -0
- package/dist/number/operators/int32.mjs.map +1 -0
- package/dist/number/operators/int8.d.mts +24 -0
- package/dist/number/operators/int8.d.mts.map +1 -0
- package/dist/number/operators/int8.mjs +8 -0
- package/dist/number/operators/int8.mjs.map +1 -0
- package/dist/number/operators/negative-finite-number.d.mts +11 -0
- package/dist/number/operators/negative-finite-number.d.mts.map +1 -0
- package/dist/number/operators/negative-finite-number.mjs +8 -0
- package/dist/number/operators/negative-finite-number.mjs.map +1 -0
- package/dist/number/operators/negative-int.d.mts +10 -0
- package/dist/number/operators/negative-int.d.mts.map +1 -0
- package/dist/number/operators/negative-int.mjs +9 -0
- package/dist/number/operators/negative-int.mjs.map +1 -0
- package/dist/number/operators/negative-safe-int.d.mts +10 -0
- package/dist/number/operators/negative-safe-int.d.mts.map +1 -0
- package/dist/number/operators/negative-safe-int.mjs +9 -0
- package/dist/number/operators/negative-safe-int.mjs.map +1 -0
- package/dist/number/operators/non-negative-finite-number.d.mts +22 -0
- package/dist/number/operators/non-negative-finite-number.d.mts.map +1 -0
- package/dist/number/operators/non-negative-finite-number.mjs +7 -0
- package/dist/number/operators/non-negative-finite-number.mjs.map +1 -0
- package/dist/number/operators/non-negative-int16.d.mts +27 -0
- package/dist/number/operators/non-negative-int16.d.mts.map +1 -0
- package/dist/number/operators/non-negative-int16.mjs +8 -0
- package/dist/number/operators/non-negative-int16.mjs.map +1 -0
- package/dist/number/operators/non-negative-int32.d.mts +25 -0
- package/dist/number/operators/non-negative-int32.d.mts.map +1 -0
- package/dist/number/operators/non-negative-int32.mjs +8 -0
- package/dist/number/operators/non-negative-int32.mjs.map +1 -0
- package/dist/number/operators/non-positive-finite-number.d.mts +11 -0
- package/dist/number/operators/non-positive-finite-number.d.mts.map +1 -0
- package/dist/number/operators/non-positive-finite-number.mjs +7 -0
- package/dist/number/operators/non-positive-finite-number.mjs.map +1 -0
- package/dist/number/operators/non-positive-int.d.mts +10 -0
- package/dist/number/operators/non-positive-int.d.mts.map +1 -0
- package/dist/number/operators/non-positive-int.mjs +8 -0
- package/dist/number/operators/non-positive-int.mjs.map +1 -0
- package/dist/number/operators/non-positive-safe-int.d.mts +10 -0
- package/dist/number/operators/non-positive-safe-int.d.mts.map +1 -0
- package/dist/number/operators/non-positive-safe-int.mjs +8 -0
- package/dist/number/operators/non-positive-safe-int.mjs.map +1 -0
- package/dist/number/operators/non-zero-finite-number.d.mts +16 -0
- package/dist/number/operators/non-zero-finite-number.d.mts.map +1 -0
- package/dist/number/operators/non-zero-finite-number.mjs +8 -0
- package/dist/number/operators/non-zero-finite-number.mjs.map +1 -0
- package/dist/number/operators/non-zero-int.d.mts +10 -0
- package/dist/number/operators/non-zero-int.d.mts.map +1 -0
- package/dist/number/operators/non-zero-int.mjs +9 -0
- package/dist/number/operators/non-zero-int.mjs.map +1 -0
- package/dist/number/operators/non-zero-int16.d.mts +10 -0
- package/dist/number/operators/non-zero-int16.d.mts.map +1 -0
- package/dist/number/operators/non-zero-int16.mjs +9 -0
- package/dist/number/operators/non-zero-int16.mjs.map +1 -0
- package/dist/number/operators/non-zero-int32.d.mts +10 -0
- package/dist/number/operators/non-zero-int32.d.mts.map +1 -0
- package/dist/number/operators/non-zero-int32.mjs +9 -0
- package/dist/number/operators/non-zero-int32.mjs.map +1 -0
- package/dist/number/operators/non-zero-safe-int.d.mts +10 -0
- package/dist/number/operators/non-zero-safe-int.d.mts.map +1 -0
- package/dist/number/operators/non-zero-safe-int.mjs +11 -0
- package/dist/number/operators/non-zero-safe-int.mjs.map +1 -0
- package/dist/number/operators/non-zero-uint16.d.mts +2 -0
- package/dist/number/operators/non-zero-uint16.d.mts.map +1 -0
- package/dist/number/operators/non-zero-uint16.mjs +9 -0
- package/dist/number/operators/non-zero-uint16.mjs.map +1 -0
- package/dist/number/operators/non-zero-uint32.d.mts +2 -0
- package/dist/number/operators/non-zero-uint32.d.mts.map +1 -0
- package/dist/number/operators/non-zero-uint32.mjs +9 -0
- package/dist/number/operators/non-zero-uint32.mjs.map +1 -0
- package/dist/number/operators/positive-finite-number.d.mts +23 -0
- package/dist/number/operators/positive-finite-number.d.mts.map +1 -0
- package/dist/number/operators/positive-finite-number.mjs +7 -0
- package/dist/number/operators/positive-finite-number.mjs.map +1 -0
- package/dist/number/operators/positive-int.d.mts +23 -0
- package/dist/number/operators/positive-int.d.mts.map +1 -0
- package/dist/number/operators/positive-int.mjs +8 -0
- package/dist/number/operators/positive-int.mjs.map +1 -0
- package/dist/number/operators/positive-int16.d.mts +28 -0
- package/dist/number/operators/positive-int16.d.mts.map +1 -0
- package/dist/number/operators/positive-int16.mjs +8 -0
- package/dist/number/operators/positive-int16.mjs.map +1 -0
- package/dist/number/operators/positive-int32.d.mts +26 -0
- package/dist/number/operators/positive-int32.d.mts.map +1 -0
- package/dist/number/operators/positive-int32.mjs +8 -0
- package/dist/number/operators/positive-int32.mjs.map +1 -0
- package/dist/number/operators/positive-safe-int.d.mts +24 -0
- package/dist/number/operators/positive-safe-int.d.mts.map +1 -0
- package/dist/number/operators/positive-safe-int.mjs +9 -0
- package/dist/number/operators/positive-safe-int.mjs.map +1 -0
- package/dist/number/operators/positive-uint16.d.mts +27 -0
- package/dist/number/operators/positive-uint16.d.mts.map +1 -0
- package/dist/number/operators/positive-uint16.mjs +8 -0
- package/dist/number/operators/positive-uint16.mjs.map +1 -0
- package/dist/number/operators/positive-uint32.d.mts +25 -0
- package/dist/number/operators/positive-uint32.d.mts.map +1 -0
- package/dist/number/operators/positive-uint32.mjs +8 -0
- package/dist/number/operators/positive-uint32.mjs.map +1 -0
- package/dist/number/operators/safe-int.d.mts +17 -0
- package/dist/number/operators/safe-int.d.mts.map +1 -0
- package/dist/number/operators/safe-int.mjs +10 -0
- package/dist/number/operators/safe-int.mjs.map +1 -0
- package/dist/number/operators/safe-uint.d.mts +22 -0
- package/dist/number/operators/safe-uint.d.mts.map +1 -0
- package/dist/number/operators/safe-uint.mjs +9 -0
- package/dist/number/operators/safe-uint.mjs.map +1 -0
- package/dist/number/operators/uint.d.mts +14 -0
- package/dist/number/operators/uint.d.mts.map +1 -0
- package/dist/number/operators/uint.mjs +8 -0
- package/dist/number/operators/uint.mjs.map +1 -0
- package/dist/number/operators/uint16.d.mts +25 -0
- package/dist/number/operators/uint16.d.mts.map +1 -0
- package/dist/number/operators/uint16.mjs +8 -0
- package/dist/number/operators/uint16.mjs.map +1 -0
- package/dist/number/operators/uint32.d.mts +23 -0
- package/dist/number/operators/uint32.d.mts.map +1 -0
- package/dist/number/operators/uint32.mjs +8 -0
- package/dist/number/operators/uint32.mjs.map +1 -0
- package/dist/number/operators/uint8.d.mts +24 -0
- package/dist/number/operators/uint8.d.mts.map +1 -0
- package/dist/number/operators/uint8.mjs +8 -0
- package/dist/number/operators/uint8.mjs.map +1 -0
- package/dist/number/refined-number-utils.d.mts +2 -2
- package/dist/number/refined-number-utils.d.mts.map +1 -1
- package/dist/number/refined-number-utils.mjs +1 -1
- package/dist/number/refined-number-utils.mjs.map +1 -1
- package/dist/object/object.mjs +1 -1
- package/dist/object/object.mjs.map +1 -1
- package/dist/others/fast-deep-equal.mjs +1 -1
- package/dist/others/fast-deep-equal.mjs.map +1 -1
- package/package.json +22 -9
- package/src/array/impl/array-utils-reducing-value.mts +4 -3
- package/src/array/impl/array-utils-shape-invariants.test.mts +1 -1
- package/src/array/impl/array-utils-slice-clamped.mts +1 -1
- package/src/array/impl/array-utils-slicing.mts +12 -3
- package/src/array/impl/array-utils-transformation.mts +6 -2
- package/src/array/impl/array-utils-validation.mts +2 -1
- package/src/built-in-tag.mts +59 -0
- package/src/built-in-tag.test.mts +215 -0
- package/src/collections/stack.mts +3 -3
- package/src/iterator/range.mts +10 -2
- package/src/iterator/range.test.mts +7 -0
- package/src/number/branded-types/finite-number.mts +23 -25
- package/src/number/branded-types/int.mts +20 -26
- package/src/number/branded-types/int16.mts +21 -26
- package/src/number/branded-types/int32.mts +21 -26
- package/src/number/branded-types/negative-finite-number.mts +25 -26
- package/src/number/branded-types/negative-int.mts +20 -27
- package/src/number/branded-types/negative-safe-int.mts +23 -28
- package/src/number/branded-types/non-negative-finite-number.mts +24 -25
- package/src/number/branded-types/non-negative-int16.mts +23 -26
- package/src/number/branded-types/non-negative-int32.mts +23 -26
- package/src/number/branded-types/non-positive-finite-number.mts +24 -25
- package/src/number/branded-types/non-positive-int.mts +20 -26
- package/src/number/branded-types/non-positive-safe-int.mts +21 -26
- package/src/number/branded-types/non-zero-finite-number.mts +23 -25
- package/src/number/branded-types/non-zero-int.mts +19 -25
- package/src/number/branded-types/non-zero-int16.mts +27 -28
- package/src/number/branded-types/non-zero-int32.mts +27 -28
- package/src/number/branded-types/non-zero-safe-int.mts +25 -35
- package/src/number/branded-types/non-zero-uint16.mts +24 -28
- package/src/number/branded-types/non-zero-uint32.mts +24 -28
- package/src/number/branded-types/positive-finite-number.mts +25 -25
- package/src/number/branded-types/positive-int.mts +21 -26
- package/src/number/branded-types/positive-int16.mts +23 -26
- package/src/number/branded-types/positive-int32.mts +23 -26
- package/src/number/branded-types/positive-safe-int.mts +24 -31
- package/src/number/branded-types/positive-uint16.mts +23 -26
- package/src/number/branded-types/positive-uint32.mts +23 -26
- package/src/number/branded-types/safe-int.mts +22 -29
- package/src/number/branded-types/safe-uint.mts +21 -27
- package/src/number/branded-types/uint.mts +21 -26
- package/src/number/branded-types/uint16.mts +21 -26
- package/src/number/branded-types/uint32.mts +21 -26
- package/src/number/enum/int8.mts +40 -52
- package/src/number/enum/uint8.mts +40 -48
- package/src/number/index.mts +1 -1
- package/src/number/num/impl/index.mts +1 -0
- package/src/number/num/impl/num.mts +715 -0
- package/src/number/{num.test.mts → num/impl/num.test.mts} +4 -4
- package/src/number/num/index.mts +16 -0
- package/src/number/num-arithmetic.test.mts +1 -1
- package/src/number/operators/finite-number.mts +20 -0
- package/src/number/operators/int.mts +20 -0
- package/src/number/operators/int16.mts +33 -0
- package/src/number/operators/int32.mts +33 -0
- package/src/number/operators/int8.mts +18 -0
- package/src/number/operators/negative-finite-number.mts +22 -0
- package/src/number/operators/negative-int.mts +22 -0
- package/src/number/operators/negative-safe-int.mts +32 -0
- package/src/number/operators/non-negative-finite-number.mts +32 -0
- package/src/number/operators/non-negative-int16.mts +33 -0
- package/src/number/operators/non-negative-int32.mts +33 -0
- package/src/number/operators/non-positive-finite-number.mts +21 -0
- package/src/number/operators/non-positive-int.mts +21 -0
- package/src/number/operators/non-positive-safe-int.mts +31 -0
- package/src/number/operators/non-zero-finite-number.mts +21 -0
- package/src/number/operators/non-zero-int.mts +22 -0
- package/src/number/operators/non-zero-int16.mts +32 -0
- package/src/number/operators/non-zero-int32.mts +32 -0
- package/src/number/operators/non-zero-safe-int.mts +34 -0
- package/src/number/operators/non-zero-uint16.mts +32 -0
- package/src/number/operators/non-zero-uint32.mts +32 -0
- package/src/number/operators/positive-finite-number.mts +32 -0
- package/src/number/operators/positive-int.mts +32 -0
- package/src/number/operators/positive-int16.mts +33 -0
- package/src/number/operators/positive-int32.mts +33 -0
- package/src/number/operators/positive-safe-int.mts +34 -0
- package/src/number/operators/positive-uint16.mts +33 -0
- package/src/number/operators/positive-uint32.mts +33 -0
- package/src/number/operators/safe-int.mts +35 -0
- package/src/number/operators/safe-uint.mts +33 -0
- package/src/number/operators/uint.mts +31 -0
- package/src/number/operators/uint16.mts +32 -0
- package/src/number/operators/uint32.mts +32 -0
- package/src/number/operators/uint8.mts +16 -0
- package/src/number/refined-number-utils.mts +4 -4
- package/src/object/object.mts +1 -1
- package/src/others/fast-deep-equal.mts +1 -1
- package/dist/number/num.d.mts +0 -550
- package/dist/number/num.d.mts.map +0 -1
- package/dist/number/num.mjs +0 -563
- package/dist/number/num.mjs.map +0 -1
- package/src/guard/is-error.test.mts +0 -145
- package/src/number/num.mts +0 -735
|
@@ -19,7 +19,7 @@ export type Int = TtfImported_Int;
|
|
|
19
19
|
* @param value - The value to check
|
|
20
20
|
* @returns `true` if the value is an integer, `false` otherwise
|
|
21
21
|
*/
|
|
22
|
-
export declare const isInt: (
|
|
22
|
+
export declare const isInt: (value: number) => value is Int;
|
|
23
23
|
/**
|
|
24
24
|
* Casts a `number` to the `Int` branded type.
|
|
25
25
|
*
|
|
@@ -40,13 +40,7 @@ export declare const isInt: (a: number) => a is TtfImported_Int;
|
|
|
40
40
|
* @returns The value as an `Int`
|
|
41
41
|
* @throws {TypeError} If the value is not an integer
|
|
42
42
|
*/
|
|
43
|
-
export declare const asInt: <N extends number>(
|
|
44
|
-
readonly Finite: true;
|
|
45
|
-
readonly Int: true;
|
|
46
|
-
readonly NaNValue: false;
|
|
47
|
-
} & Readonly<{
|
|
48
|
-
'TSTypeForgeInternals--edd2f9ce-7ca5-45b0-9d1a-bd61b9b5d9c3': unknown;
|
|
49
|
-
}> & N;
|
|
43
|
+
export declare const asInt: <N extends number>(value: N) => Int & N;
|
|
50
44
|
/**
|
|
51
45
|
* Namespace providing type-safe operations for the `Int` branded type.
|
|
52
46
|
*
|
|
@@ -74,7 +68,7 @@ export declare const Int: {
|
|
|
74
68
|
* @returns `true` if the value is an integer, `false` otherwise
|
|
75
69
|
* @see {@link isInt} for usage examples
|
|
76
70
|
*/
|
|
77
|
-
readonly is:
|
|
71
|
+
readonly is: typeof isInt;
|
|
78
72
|
/**
|
|
79
73
|
* Returns the absolute value of an integer.
|
|
80
74
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"int.d.mts","sourceRoot":"","sources":["../../../src/number/branded-types/int.mts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,IAAI,eAAe,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"int.d.mts","sourceRoot":"","sources":["../../../src/number/branded-types/int.mts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,IAAI,eAAe,EAAE,MAAM,eAAe,CAAC;AAe5D,MAAM,MAAM,GAAG,GAAG,eAAe,CAAC;AAMlC;;;;;;;;;;;;;;;;;;GAkBG;AACH,eAAO,MAAM,KAAK,UAAW,MAAM,KAAG,KAAK,IAAI,GAA8B,CAAC;AAE9E;;;;;;;;;;;;;;;;;;;GAmBG;AACH,eAAO,MAAM,KAAK,GAAI,CAAC,SAAS,MAAM,SAAS,CAAC,KAAG,GAAG,GAAG,CAMxD,CAAC;AAEF;;;;;;;;GAQG;AACH,eAAO,MAAM,GAAG;IACd;;;;;;;;;;;;;;;;OAgBG;;IAGH;;;;;;;;;;;;;;;;;;;;;OAqBG;;IAGH;;;;;;;;;;;;;OAaG;;IAGH;;;;;;;;;;;;;OAaG;;IAGH;;;;;;;;;;;;;;;;;;;;;;OAsBG;;IAGH;;;;;;;;;;;;;;;;;;;OAmBG;;IAGH;;;;;;;;;;;;;;OAcG;;IAGH;;;;;;;;;;;;;;OAcG;;IAGH;;;;;;;;;;;;;;OAcG;;IAGH;;;;;;;;;;;;;;;;;;;OAmBG;;;;;;;;;CAEK,CAAC"}
|
|
@@ -1,12 +1,6 @@
|
|
|
1
1
|
|
|
2
|
-
import {
|
|
2
|
+
import { abs, add, div, max as max_, min as min_, mul, pow, random, sub, } from '../operators/int.mjs';
|
|
3
3
|
const typeNameInMessage = 'an integer';
|
|
4
|
-
const { abs, add, castType, div, is, max: max_, min: min_, mul, pow, random, sub, } = TsDataForgeInternals.RefinedNumberUtils.operatorsForInteger({
|
|
5
|
-
integerOrSafeInteger: 'Integer',
|
|
6
|
-
MIN_VALUE: -Number.MAX_VALUE,
|
|
7
|
-
MAX_VALUE: Number.MAX_VALUE,
|
|
8
|
-
typeNameInMessage,
|
|
9
|
-
});
|
|
10
4
|
|
|
11
5
|
|
|
12
6
|
|
|
@@ -26,7 +20,7 @@ const { abs, add, castType, div, is, max: max_, min: min_, mul, pow, random, sub
|
|
|
26
20
|
|
|
27
21
|
|
|
28
22
|
|
|
29
|
-
export const isInt =
|
|
23
|
+
export const isInt = (value) => Number.isInteger(value);
|
|
30
24
|
|
|
31
25
|
|
|
32
26
|
|
|
@@ -47,7 +41,12 @@ export const isInt = is;
|
|
|
47
41
|
|
|
48
42
|
|
|
49
43
|
|
|
50
|
-
export const asInt =
|
|
44
|
+
export const asInt = (value) => {
|
|
45
|
+
if (!isInt(value)) {
|
|
46
|
+
throw new TypeError(`Expected ${typeNameInMessage}, got: ${value}`);
|
|
47
|
+
}
|
|
48
|
+
return value;
|
|
49
|
+
};
|
|
51
50
|
|
|
52
51
|
|
|
53
52
|
|
|
@@ -75,7 +74,7 @@ export const Int = {
|
|
|
75
74
|
|
|
76
75
|
|
|
77
76
|
|
|
78
|
-
is,
|
|
77
|
+
is: isInt,
|
|
79
78
|
|
|
80
79
|
|
|
81
80
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"int.mjs","sourceRoot":"","sources":["../../../src/number/branded-types/int.mts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,
|
|
1
|
+
{"version":3,"file":"int.mjs","sourceRoot":"","sources":["../../../src/number/branded-types/int.mts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EACL,GAAG,EACH,GAAG,EACH,GAAG,EACH,GAAG,IAAI,IAAI,EACX,GAAG,IAAI,IAAI,EACX,GAAG,EACH,GAAG,EACH,MAAM,EACN,GAAG,GACJ,MAAM,sBAAsB,CAAC;AAO9B,MAAM,iBAAiB,GAAG,YAAY,CAAC;AAEvC;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC,KAAa,EAAgB,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;AAE9E;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,CAAC,MAAM,KAAK,GAAG,CAAmB,KAAQ,EAAW,EAAE;IAC3D,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;QAClB,MAAM,IAAI,SAAS,CAAC,YAAY,iBAAiB,UAAU,KAAK,EAAE,CAAC,CAAC;IACtE,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAEF;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,GAAG,GAAG;IACjB;;;;;;;;;;;;;;;;OAgBG;IACH,EAAE,EAAE,KAAK;IAET;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,GAAG;IAEH;;;;;;;;;;;;;OAaG;IACH,GAAG,EAAE,IAAI;IAET;;;;;;;;;;;;;OAaG;IACH,GAAG,EAAE,IAAI;IAET;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,MAAM;IAEN;;;;;;;;;;;;;;;;;;;OAmBG;IACH,GAAG;IAEH;;;;;;;;;;;;;;OAcG;IACH,GAAG;IAEH;;;;;;;;;;;;;;OAcG;IACH,GAAG;IAEH;;;;;;;;;;;;;;OAcG;IACH,GAAG;IAEH;;;;;;;;;;;;;;;;;;;OAmBG;IACH,GAAG;CACK,CAAC;AAEX,UAAU,CAGR,GAAG,CAAC,CAAC;AAEP,UAAU,CAGR,IAAI,CAAC,CAAC"}
|
|
@@ -9,7 +9,7 @@ export type Int16 = TtfImported_Int16;
|
|
|
9
9
|
* @param value - The value to check
|
|
10
10
|
* @returns `true` if the value is an integer in [-2^15, 2^15), `false` otherwise
|
|
11
11
|
*/
|
|
12
|
-
export declare const isInt16: (
|
|
12
|
+
export declare const isInt16: (value: number) => value is Int16;
|
|
13
13
|
/**
|
|
14
14
|
* Casts a `number` to the `Int16` branded type.
|
|
15
15
|
*
|
|
@@ -20,22 +20,7 @@ export declare const isInt16: (a: number) => a is TtfImported_Int16;
|
|
|
20
20
|
* @returns The value as an `Int16`
|
|
21
21
|
* @throws {TypeError} If the value is not an integer in [-2^15, 2^15)
|
|
22
22
|
*/
|
|
23
|
-
export declare const asInt16: <N extends number>(
|
|
24
|
-
readonly "< 2^15": true;
|
|
25
|
-
readonly "< 2^16": true;
|
|
26
|
-
readonly "< 2^31": true;
|
|
27
|
-
readonly "< 2^32": true;
|
|
28
|
-
readonly "> -2^16": true;
|
|
29
|
-
readonly "> -2^32": true;
|
|
30
|
-
readonly ">= -2^15": true;
|
|
31
|
-
readonly ">= -2^31": true;
|
|
32
|
-
readonly Finite: true;
|
|
33
|
-
readonly Int: true;
|
|
34
|
-
readonly NaNValue: false;
|
|
35
|
-
readonly SafeInt: true;
|
|
36
|
-
} & Readonly<{
|
|
37
|
-
'TSTypeForgeInternals--edd2f9ce-7ca5-45b0-9d1a-bd61b9b5d9c3': unknown;
|
|
38
|
-
}> & N;
|
|
23
|
+
export declare const asInt16: <N extends number>(value: N) => Int16 & N;
|
|
39
24
|
/**
|
|
40
25
|
* Namespace providing type-safe operations for the `Int16` branded type.
|
|
41
26
|
*
|
|
@@ -50,7 +35,7 @@ export declare const Int16: {
|
|
|
50
35
|
* @returns `true` if the value is an integer in [-2^15, 2^15), `false` otherwise
|
|
51
36
|
* @see {@link isInt16} for usage examples
|
|
52
37
|
*/
|
|
53
|
-
readonly is:
|
|
38
|
+
readonly is: typeof isInt16;
|
|
54
39
|
/**
|
|
55
40
|
* The smallest value representable as `Int16` (the lower saturation target of
|
|
56
41
|
* `fromNumber`).
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"int16.d.mts","sourceRoot":"","sources":["../../../src/number/branded-types/int16.mts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,IAAI,iBAAiB,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"int16.d.mts","sourceRoot":"","sources":["../../../src/number/branded-types/int16.mts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,IAAI,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAkBhE,MAAM,MAAM,KAAK,GAAG,iBAAiB,CAAC;AAMtC;;;;;;;;GAQG;AACH,eAAO,MAAM,OAAO,UAAW,MAAM,KAAG,KAAK,IAAI,KAC2B,CAAC;AAE7E;;;;;;;;;GASG;AACH,eAAO,MAAM,OAAO,GAAI,CAAC,SAAS,MAAM,SAAS,CAAC,KAAG,KAAK,GAAG,CAM5D,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,KAAK;IAChB;;;;;;OAMG;;IAGH;;;OAGG;;IAGH;;;OAGG;;IAGH;;;;;;;OAOG;;IAGH;;;;;OAKG;;IAGH;;;;;OAKG;;IAGH;;;;;;;;;OASG;;IAGH;;;;;;;;OAQG;;IAGH;;;;;;;OAOG;;IAGH;;;;;;OAMG;;IAGH;;;;;;OAMG;;IAGH;;;;;;OAMG;;IAGH;;;;;;;OAOG;;;;;;;;;;;;;;;;;;CAEK,CAAC"}
|
|
@@ -1,12 +1,6 @@
|
|
|
1
1
|
|
|
2
|
-
import {
|
|
2
|
+
import { MAX_VALUE, MIN_VALUE, abs, add, div, fromNumber, max as max_, min as min_, mul, pow, random, sub, } from '../operators/int16.mjs';
|
|
3
3
|
const typeNameInMessage = 'an integer in [-2^15, 2^15)';
|
|
4
|
-
const { MAX_VALUE, MIN_VALUE, abs, add, castType, div, fromNumber, is, max: max_, min: min_, mul, pow, random, sub, } = TsDataForgeInternals.RefinedNumberUtils.operatorsForInteger({
|
|
5
|
-
integerOrSafeInteger: 'SafeInteger',
|
|
6
|
-
MIN_VALUE: -(2 ** 15),
|
|
7
|
-
MAX_VALUE: 2 ** 15 - 1,
|
|
8
|
-
typeNameInMessage,
|
|
9
|
-
});
|
|
10
4
|
|
|
11
5
|
|
|
12
6
|
|
|
@@ -16,7 +10,7 @@ const { MAX_VALUE, MIN_VALUE, abs, add, castType, div, fromNumber, is, max: max_
|
|
|
16
10
|
|
|
17
11
|
|
|
18
12
|
|
|
19
|
-
export const isInt16 =
|
|
13
|
+
export const isInt16 = (value) => Number.isSafeInteger(value) && -(2 ** 15) <= value && value <= 2 ** 15 - 1;
|
|
20
14
|
|
|
21
15
|
|
|
22
16
|
|
|
@@ -27,7 +21,12 @@ export const isInt16 = is;
|
|
|
27
21
|
|
|
28
22
|
|
|
29
23
|
|
|
30
|
-
export const asInt16 =
|
|
24
|
+
export const asInt16 = (value) => {
|
|
25
|
+
if (!isInt16(value)) {
|
|
26
|
+
throw new TypeError(`Expected ${typeNameInMessage}, got: ${value}`);
|
|
27
|
+
}
|
|
28
|
+
return value;
|
|
29
|
+
};
|
|
31
30
|
|
|
32
31
|
|
|
33
32
|
|
|
@@ -42,7 +41,7 @@ export const Int16 = {
|
|
|
42
41
|
|
|
43
42
|
|
|
44
43
|
|
|
45
|
-
is,
|
|
44
|
+
is: isInt16,
|
|
46
45
|
|
|
47
46
|
|
|
48
47
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"int16.mjs","sourceRoot":"","sources":["../../../src/number/branded-types/int16.mts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,
|
|
1
|
+
{"version":3,"file":"int16.mjs","sourceRoot":"","sources":["../../../src/number/branded-types/int16.mts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EACL,SAAS,EACT,SAAS,EACT,GAAG,EACH,GAAG,EACH,GAAG,EACH,UAAU,EACV,GAAG,IAAI,IAAI,EACX,GAAG,IAAI,IAAI,EACX,GAAG,EACH,GAAG,EACH,MAAM,EACN,GAAG,GACJ,MAAM,wBAAwB,CAAC;AAOhC,MAAM,iBAAiB,GAAG,6BAA6B,CAAC;AAExD;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,KAAa,EAAkB,EAAE,CACvD,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,KAAK,IAAI,KAAK,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;AAE7E;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,OAAO,GAAG,CAAmB,KAAQ,EAAa,EAAE;IAC/D,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACpB,MAAM,IAAI,SAAS,CAAC,YAAY,iBAAiB,UAAU,KAAK,EAAE,CAAC,CAAC;IACtE,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,KAAK,GAAG;IACnB;;;;;;OAMG;IACH,EAAE,EAAE,OAAO;IAEX;;;OAGG;IACH,SAAS;IAET;;;OAGG;IACH,SAAS;IAET;;;;;;;OAOG;IACH,GAAG;IAEH;;;;;OAKG;IACH,GAAG,EAAE,IAAI;IAET;;;;;OAKG;IACH,GAAG,EAAE,IAAI;IAET;;;;;;;;;OASG;IACH,UAAU;IAEV;;;;;;;;OAQG;IACH,MAAM;IAEN;;;;;;;OAOG;IACH,GAAG;IAEH;;;;;;OAMG;IACH,GAAG;IAEH;;;;;;OAMG;IACH,GAAG;IAEH;;;;;;OAMG;IACH,GAAG;IAEH;;;;;;;OAOG;IACH,GAAG;CACK,CAAC;AAEX,UAAU,CAMR,GAAG,CAAC,CAAC;AAEP,UAAU,CAMR,IAAI,CAAC,CAAC"}
|
|
@@ -9,7 +9,7 @@ export type Int32 = TtfImported_Int32;
|
|
|
9
9
|
* @param value - The value to check
|
|
10
10
|
* @returns `true` if the value is an integer in [-2^31, 2^31), `false` otherwise
|
|
11
11
|
*/
|
|
12
|
-
export declare const isInt32: (
|
|
12
|
+
export declare const isInt32: (value: number) => value is Int32;
|
|
13
13
|
/**
|
|
14
14
|
* Casts a `number` to the `Int32` branded type.
|
|
15
15
|
*
|
|
@@ -20,18 +20,7 @@ export declare const isInt32: (a: number) => a is TtfImported_Int32;
|
|
|
20
20
|
* @returns The value as an `Int32`
|
|
21
21
|
* @throws {TypeError} If the value is not an integer in [-2^31, 2^31)
|
|
22
22
|
*/
|
|
23
|
-
export declare const asInt32: <N extends number>(
|
|
24
|
-
readonly "< 2^31": true;
|
|
25
|
-
readonly "< 2^32": true;
|
|
26
|
-
readonly "> -2^32": true;
|
|
27
|
-
readonly ">= -2^31": true;
|
|
28
|
-
readonly Finite: true;
|
|
29
|
-
readonly Int: true;
|
|
30
|
-
readonly NaNValue: false;
|
|
31
|
-
readonly SafeInt: true;
|
|
32
|
-
} & Readonly<{
|
|
33
|
-
'TSTypeForgeInternals--edd2f9ce-7ca5-45b0-9d1a-bd61b9b5d9c3': unknown;
|
|
34
|
-
}> & N;
|
|
23
|
+
export declare const asInt32: <N extends number>(value: N) => Int32 & N;
|
|
35
24
|
/**
|
|
36
25
|
* Namespace providing type-safe operations for the `Int32` branded type.
|
|
37
26
|
*
|
|
@@ -46,7 +35,7 @@ export declare const Int32: {
|
|
|
46
35
|
* @returns `true` if the value is an integer in [-2^31, 2^31), `false` otherwise
|
|
47
36
|
* @see {@link isInt32} for usage examples
|
|
48
37
|
*/
|
|
49
|
-
readonly is:
|
|
38
|
+
readonly is: typeof isInt32;
|
|
50
39
|
/**
|
|
51
40
|
* The smallest value representable as `Int32` (the lower saturation target of
|
|
52
41
|
* `fromNumber`).
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"int32.d.mts","sourceRoot":"","sources":["../../../src/number/branded-types/int32.mts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,IAAI,iBAAiB,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"int32.d.mts","sourceRoot":"","sources":["../../../src/number/branded-types/int32.mts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,IAAI,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAkBhE,MAAM,MAAM,KAAK,GAAG,iBAAiB,CAAC;AAMtC;;;;;;;;GAQG;AACH,eAAO,MAAM,OAAO,UAAW,MAAM,KAAG,KAAK,IAAI,KAC2B,CAAC;AAE7E;;;;;;;;;GASG;AACH,eAAO,MAAM,OAAO,GAAI,CAAC,SAAS,MAAM,SAAS,CAAC,KAAG,KAAK,GAAG,CAM5D,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,KAAK;IAChB;;;;;;OAMG;;IAGH;;;OAGG;;IAGH;;;OAGG;;IAGH;;;;;;;OAOG;;IAGH;;;;;OAKG;;IAGH;;;;;OAKG;;IAGH;;;;;;;;;OASG;;IAGH;;;;;;;;OAQG;;IAGH;;;;;;;OAOG;;IAGH;;;;;;OAMG;;IAGH;;;;;;OAMG;;IAGH;;;;;;OAMG;;IAGH;;;;;;;OAOG;;;;;;;;;;;;;;CAEK,CAAC"}
|
|
@@ -1,12 +1,6 @@
|
|
|
1
1
|
|
|
2
|
-
import {
|
|
2
|
+
import { MAX_VALUE, MIN_VALUE, abs, add, div, fromNumber, max as max_, min as min_, mul, pow, random, sub, } from '../operators/int32.mjs';
|
|
3
3
|
const typeNameInMessage = 'an integer in [-2^31, 2^31)';
|
|
4
|
-
const { MAX_VALUE, MIN_VALUE, abs, add, castType, div, fromNumber, is, max: max_, min: min_, mul, pow, random, sub, } = TsDataForgeInternals.RefinedNumberUtils.operatorsForInteger({
|
|
5
|
-
integerOrSafeInteger: 'SafeInteger',
|
|
6
|
-
MIN_VALUE: -(2 ** 31),
|
|
7
|
-
MAX_VALUE: 2 ** 31 - 1,
|
|
8
|
-
typeNameInMessage,
|
|
9
|
-
});
|
|
10
4
|
|
|
11
5
|
|
|
12
6
|
|
|
@@ -16,7 +10,7 @@ const { MAX_VALUE, MIN_VALUE, abs, add, castType, div, fromNumber, is, max: max_
|
|
|
16
10
|
|
|
17
11
|
|
|
18
12
|
|
|
19
|
-
export const isInt32 =
|
|
13
|
+
export const isInt32 = (value) => Number.isSafeInteger(value) && -(2 ** 31) <= value && value <= 2 ** 31 - 1;
|
|
20
14
|
|
|
21
15
|
|
|
22
16
|
|
|
@@ -27,7 +21,12 @@ export const isInt32 = is;
|
|
|
27
21
|
|
|
28
22
|
|
|
29
23
|
|
|
30
|
-
export const asInt32 =
|
|
24
|
+
export const asInt32 = (value) => {
|
|
25
|
+
if (!isInt32(value)) {
|
|
26
|
+
throw new TypeError(`Expected ${typeNameInMessage}, got: ${value}`);
|
|
27
|
+
}
|
|
28
|
+
return value;
|
|
29
|
+
};
|
|
31
30
|
|
|
32
31
|
|
|
33
32
|
|
|
@@ -42,7 +41,7 @@ export const Int32 = {
|
|
|
42
41
|
|
|
43
42
|
|
|
44
43
|
|
|
45
|
-
is,
|
|
44
|
+
is: isInt32,
|
|
46
45
|
|
|
47
46
|
|
|
48
47
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"int32.mjs","sourceRoot":"","sources":["../../../src/number/branded-types/int32.mts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,
|
|
1
|
+
{"version":3,"file":"int32.mjs","sourceRoot":"","sources":["../../../src/number/branded-types/int32.mts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EACL,SAAS,EACT,SAAS,EACT,GAAG,EACH,GAAG,EACH,GAAG,EACH,UAAU,EACV,GAAG,IAAI,IAAI,EACX,GAAG,IAAI,IAAI,EACX,GAAG,EACH,GAAG,EACH,MAAM,EACN,GAAG,GACJ,MAAM,wBAAwB,CAAC;AAOhC,MAAM,iBAAiB,GAAG,6BAA6B,CAAC;AAExD;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,KAAa,EAAkB,EAAE,CACvD,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,KAAK,IAAI,KAAK,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;AAE7E;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,OAAO,GAAG,CAAmB,KAAQ,EAAa,EAAE;IAC/D,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACpB,MAAM,IAAI,SAAS,CAAC,YAAY,iBAAiB,UAAU,KAAK,EAAE,CAAC,CAAC;IACtE,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,KAAK,GAAG;IACnB;;;;;;OAMG;IACH,EAAE,EAAE,OAAO;IAEX;;;OAGG;IACH,SAAS;IAET;;;OAGG;IACH,SAAS;IAET;;;;;;;OAOG;IACH,GAAG;IAEH;;;;;OAKG;IACH,GAAG,EAAE,IAAI;IAET;;;;;OAKG;IACH,GAAG,EAAE,IAAI;IAET;;;;;;;;;OASG;IACH,UAAU;IAEV;;;;;;;;OAQG;IACH,MAAM;IAEN;;;;;;;OAOG;IACH,GAAG;IAEH;;;;;;OAMG;IACH,GAAG;IAEH;;;;;;OAMG;IACH,GAAG;IAEH;;;;;;OAMG;IACH,GAAG;IAEH;;;;;;;OAOG;IACH,GAAG;CACK,CAAC;AAEX,UAAU,CAMR,GAAG,CAAC,CAAC;AAEP,UAAU,CAMR,IAAI,CAAC,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { NegativeFiniteNumber as TtfImported_NegativeFiniteNumber } from 'ts-type-forge';
|
|
2
|
-
import { TsDataForgeInternals } from '../refined-number-utils.mjs';
|
|
2
|
+
import type { TsDataForgeInternals } from '../refined-number-utils.mjs';
|
|
3
3
|
import { PositiveFiniteNumber } from './positive-finite-number.mjs';
|
|
4
4
|
export type NegativeFiniteNumber = TtfImported_NegativeFiniteNumber;
|
|
5
5
|
type ElementType = NegativeFiniteNumber;
|
|
@@ -16,7 +16,7 @@ declare const round: (x: ElementType) => TsDataForgeInternals.RefinedNumberUtils
|
|
|
16
16
|
* @param value - The value to check
|
|
17
17
|
* @returns `true` if the value is a negative finite number, `false` otherwise
|
|
18
18
|
*/
|
|
19
|
-
export declare const isNegativeFiniteNumber: (
|
|
19
|
+
export declare const isNegativeFiniteNumber: (value: number) => value is NegativeFiniteNumber;
|
|
20
20
|
/**
|
|
21
21
|
* Casts a `number` to the `NegativeFiniteNumber` branded type.
|
|
22
22
|
*
|
|
@@ -27,19 +27,7 @@ export declare const isNegativeFiniteNumber: (a: number) => a is TtfImported_Neg
|
|
|
27
27
|
* @returns The value as a `NegativeFiniteNumber`
|
|
28
28
|
* @throws {TypeError} If the value is not a negative finite number
|
|
29
29
|
*/
|
|
30
|
-
export declare const asNegativeFiniteNumber: <N extends number>(
|
|
31
|
-
readonly "!=0": true;
|
|
32
|
-
readonly "< 2^15": true;
|
|
33
|
-
readonly "< 2^16": true;
|
|
34
|
-
readonly "< 2^31": true;
|
|
35
|
-
readonly "< 2^32": true;
|
|
36
|
-
readonly "<=0": true;
|
|
37
|
-
readonly ">=0": false;
|
|
38
|
-
readonly Finite: true;
|
|
39
|
-
readonly NaNValue: false;
|
|
40
|
-
} & Readonly<{
|
|
41
|
-
'TSTypeForgeInternals--edd2f9ce-7ca5-45b0-9d1a-bd61b9b5d9c3': unknown;
|
|
42
|
-
}> & N;
|
|
30
|
+
export declare const asNegativeFiniteNumber: <N extends number>(value: N) => NegativeFiniteNumber & N;
|
|
43
31
|
/**
|
|
44
32
|
* Namespace providing type-safe operations for the `NegativeFiniteNumber`
|
|
45
33
|
* branded type.
|
|
@@ -54,7 +42,7 @@ export declare const NegativeFiniteNumber: {
|
|
|
54
42
|
* @returns `true` if the value is a negative finite number, `false` otherwise
|
|
55
43
|
* @see {@link isNegativeFiniteNumber} for usage examples
|
|
56
44
|
*/
|
|
57
|
-
readonly is:
|
|
45
|
+
readonly is: typeof isNegativeFiniteNumber;
|
|
58
46
|
/**
|
|
59
47
|
* The largest value representable as `NegativeFiniteNumber` (the upper
|
|
60
48
|
* saturation target of `fromNumber`). The domain is open at `0` (excluded),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"negative-finite-number.d.mts","sourceRoot":"","sources":["../../../src/number/branded-types/negative-finite-number.mts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,IAAI,gCAAgC,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"negative-finite-number.d.mts","sourceRoot":"","sources":["../../../src/number/branded-types/negative-finite-number.mts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,IAAI,gCAAgC,EAAE,MAAM,eAAe,CAAC;AAW9F,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAEpE,MAAM,MAAM,oBAAoB,GAAG,gCAAgC,CAAC;AAEpE,KAAK,WAAW,GAAG,oBAAoB,CAAC;AAIxC,QAAA,MAAM,GAAG,MAAO,WAAW,KAAG,oBACgB,CAAC;AAE/C,QAAA,MAAM,KAAK,MACN,WAAW,KACb,oBAAoB,CAAC,kBAAkB,CAAC,KAAK,CAAC,WAAW,CAEiB,CAAC;AAE9E,QAAA,MAAM,IAAI,MACL,WAAW,KACb,oBAAoB,CAAC,kBAAkB,CAAC,qBAAqB,CAC9D,oBAAoB,CAAC,kBAAkB,CAAC,KAAK,CAAC,WAAW,CAAC,CAKzD,CAAC;AAEJ,QAAA,MAAM,KAAK,MACN,WAAW,KACb,oBAAoB,CAAC,kBAAkB,CAAC,qBAAqB,CAC9D,oBAAoB,CAAC,kBAAkB,CAAC,KAAK,CAAC,WAAW,CAAC,CAOzD,CAAC;AAEJ;;;;;;;;GAQG;AACH,eAAO,MAAM,sBAAsB,UAC1B,MAAM,KACZ,KAAK,IAAI,oBAC0C,CAAC;AAEvD;;;;;;;;;GASG;AACH,eAAO,MAAM,sBAAsB,GAAI,CAAC,SAAS,MAAM,SAC9C,CAAC,KACP,oBAAoB,GAAG,CAMzB,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB;IAC/B;;;;;;OAMG;;IAGH;;;;;OAKG;;IAGH;;;;;;;OAOG;;IAGH;;;;;OAKG;;IAGH;;;;;OAKG;;IAGH;;;;;;;;;;OAUG;;IAGH;;;;;;OAMG;;IAGH;;;;;;OAMG;;IAGH;;;;;;OAMG;;IAGH;;;;;;;;OAQG;;IAGH;;;;;;;OAOG;;IAGH;;;;;;;OAOG;;IAGH;;;;;;;OAOG;;CAEK,CAAC"}
|
|
@@ -1,12 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { MAX_VALUE, add, fromNumber, max as max_, min as min_, pow, random, sub, } from '../operators/negative-finite-number.mjs';
|
|
2
2
|
import { PositiveFiniteNumber } from './positive-finite-number.mjs';
|
|
3
3
|
const typeNameInMessage = 'a negative finite number';
|
|
4
|
-
const { MAX_VALUE, add, castType, fromNumber, is, max: max_, min: min_, pow, random, sub, } = TsDataForgeInternals.RefinedNumberUtils.operatorsForFloat({
|
|
5
|
-
nonZero: true,
|
|
6
|
-
MIN_VALUE: -Number.MAX_VALUE,
|
|
7
|
-
MAX_VALUE: -Number.MIN_VALUE,
|
|
8
|
-
typeNameInMessage,
|
|
9
|
-
});
|
|
10
4
|
const abs = (x) => PositiveFiniteNumber.fromNumber(Math.abs(x));
|
|
11
5
|
const floor = (x) =>
|
|
12
6
|
|
|
@@ -26,7 +20,7 @@ Math.round(x);
|
|
|
26
20
|
|
|
27
21
|
|
|
28
22
|
|
|
29
|
-
export const isNegativeFiniteNumber =
|
|
23
|
+
export const isNegativeFiniteNumber = (value) => Number.isFinite(value) && value <= -Number.MIN_VALUE;
|
|
30
24
|
|
|
31
25
|
|
|
32
26
|
|
|
@@ -37,7 +31,12 @@ export const isNegativeFiniteNumber = is;
|
|
|
37
31
|
|
|
38
32
|
|
|
39
33
|
|
|
40
|
-
export const asNegativeFiniteNumber =
|
|
34
|
+
export const asNegativeFiniteNumber = (value) => {
|
|
35
|
+
if (!isNegativeFiniteNumber(value)) {
|
|
36
|
+
throw new TypeError(`Expected ${typeNameInMessage}, got: ${value}`);
|
|
37
|
+
}
|
|
38
|
+
return value;
|
|
39
|
+
};
|
|
41
40
|
|
|
42
41
|
|
|
43
42
|
|
|
@@ -52,7 +51,7 @@ export const NegativeFiniteNumber = {
|
|
|
52
51
|
|
|
53
52
|
|
|
54
53
|
|
|
55
|
-
is,
|
|
54
|
+
is: isNegativeFiniteNumber,
|
|
56
55
|
|
|
57
56
|
|
|
58
57
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"negative-finite-number.mjs","sourceRoot":"","sources":["../../../src/number/branded-types/negative-finite-number.mts"],"names":[],"mappings":"AACA,OAAO,
|
|
1
|
+
{"version":3,"file":"negative-finite-number.mjs","sourceRoot":"","sources":["../../../src/number/branded-types/negative-finite-number.mts"],"names":[],"mappings":"AACA,OAAO,EACL,SAAS,EACT,GAAG,EACH,UAAU,EACV,GAAG,IAAI,IAAI,EACX,GAAG,IAAI,IAAI,EACX,GAAG,EACH,MAAM,EACN,GAAG,GACJ,MAAM,yCAAyC,CAAC;AAEjD,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAMpE,MAAM,iBAAiB,GAAG,0BAA0B,CAAC;AAErD,MAAM,GAAG,GAAG,CAAC,CAAc,EAAwB,EAAE,CACnD,oBAAoB,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AAE/C,MAAM,KAAK,GAAG,CACZ,CAAc,EAC8C,EAAE;AAC9D,oEAAoE;AACpE,IAAI,CAAC,KAAK,CAAC,CAAC,CAA+D,CAAC;AAE9E,MAAM,IAAI,GAAG,CACX,CAAc,EAGd,EAAE;AACF,oEAAoE;AACpE,IAAI,CAAC,IAAI,CAAC,CAAC,CAEV,CAAC;AAEJ,MAAM,KAAK,GAAG,CACZ,CAAc,EAGd,EAAE;AACF,oEAAoE;AACpE,IAAI,CAAC,KAAK,CACR,CAAC,CAGF,CAAC;AAEJ;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,CACpC,KAAa,EACkB,EAAE,CACjC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC;AAEvD;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,CACpC,KAAQ,EACkB,EAAE;IAC5B,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,EAAE,CAAC;QACnC,MAAM,IAAI,SAAS,CAAC,YAAY,iBAAiB,UAAU,KAAK,EAAE,CAAC,CAAC;IACtE,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAClC;;;;;;OAMG;IACH,EAAE,EAAE,sBAAsB;IAE1B;;;;;OAKG;IACH,SAAS;IAET;;;;;;;OAOG;IACH,GAAG;IAEH;;;;;OAKG;IACH,GAAG,EAAE,IAAI;IAET;;;;;OAKG;IACH,GAAG,EAAE,IAAI;IAET;;;;;;;;;;OAUG;IACH,UAAU;IAEV;;;;;;OAMG;IACH,KAAK;IAEL;;;;;;OAMG;IACH,IAAI;IAEJ;;;;;;OAMG;IACH,KAAK;IAEL;;;;;;;;OAQG;IACH,MAAM;IAEN;;;;;;;OAOG;IACH,GAAG;IAEH;;;;;;;OAOG;IACH,GAAG;IAEH;;;;;;;OAOG;IACH,GAAG;CACK,CAAC"}
|
|
@@ -12,7 +12,7 @@ declare const abs: (x: WithSmallInt<ElementType>) => PositiveInt;
|
|
|
12
12
|
* @param value - The value to check
|
|
13
13
|
* @returns `true` if the value is a negative integer, `false` otherwise
|
|
14
14
|
*/
|
|
15
|
-
export declare const isNegativeInt: (
|
|
15
|
+
export declare const isNegativeInt: (value: number) => value is NegativeInt;
|
|
16
16
|
/**
|
|
17
17
|
* Casts a `number` to the `NegativeInt` branded type.
|
|
18
18
|
*
|
|
@@ -23,20 +23,7 @@ export declare const isNegativeInt: (a: number) => a is TtfImported_NegativeInt;
|
|
|
23
23
|
* @returns The value as a `NegativeInt`
|
|
24
24
|
* @throws {TypeError} If the value is not a negative integer
|
|
25
25
|
*/
|
|
26
|
-
export declare const asNegativeInt: <N extends number>(
|
|
27
|
-
readonly "!=0": true;
|
|
28
|
-
readonly "< 2^15": true;
|
|
29
|
-
readonly "< 2^16": true;
|
|
30
|
-
readonly "< 2^31": true;
|
|
31
|
-
readonly "< 2^32": true;
|
|
32
|
-
readonly "<=0": true;
|
|
33
|
-
readonly ">=0": false;
|
|
34
|
-
readonly Finite: true;
|
|
35
|
-
readonly Int: true;
|
|
36
|
-
readonly NaNValue: false;
|
|
37
|
-
} & Readonly<{
|
|
38
|
-
'TSTypeForgeInternals--edd2f9ce-7ca5-45b0-9d1a-bd61b9b5d9c3': unknown;
|
|
39
|
-
}> & N;
|
|
26
|
+
export declare const asNegativeInt: <N extends number>(value: N) => NegativeInt & N;
|
|
40
27
|
/**
|
|
41
28
|
* Namespace providing type-safe operations for the `NegativeInt` branded type.
|
|
42
29
|
*
|
|
@@ -55,7 +42,7 @@ export declare const NegativeInt: {
|
|
|
55
42
|
* @returns `true` if the value is a negative integer, `false` otherwise
|
|
56
43
|
* @see {@link isNegativeInt} for usage examples
|
|
57
44
|
*/
|
|
58
|
-
readonly is:
|
|
45
|
+
readonly is: typeof isNegativeInt;
|
|
59
46
|
/**
|
|
60
47
|
* The largest value representable as `NegativeInt` (the upper saturation
|
|
61
48
|
* target of `fromNumber`).
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"negative-int.d.mts","sourceRoot":"","sources":["../../../src/number/branded-types/negative-int.mts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,WAAW,IAAI,uBAAuB,EACtC,YAAY,EACb,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"negative-int.d.mts","sourceRoot":"","sources":["../../../src/number/branded-types/negative-int.mts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,WAAW,IAAI,uBAAuB,EACtC,YAAY,EACb,MAAM,eAAe,CAAC;AAWvB,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD,MAAM,MAAM,WAAW,GAAG,uBAAuB,CAAC;AAElD,KAAK,WAAW,GAAG,WAAW,CAAC;AAI/B,QAAA,MAAM,GAAG,MAAO,YAAY,CAAC,WAAW,CAAC,KAAG,WACP,CAAC;AAEtC;;;;;;;;GAQG;AACH,eAAO,MAAM,aAAa,UAAW,MAAM,KAAG,KAAK,IAAI,WACf,CAAC;AAEzC;;;;;;;;;GASG;AACH,eAAO,MAAM,aAAa,GAAI,CAAC,SAAS,MAAM,SAAS,CAAC,KAAG,WAAW,GAAG,CAMxE,CAAC;AAEF;;;;;;;;;GASG;AACH,eAAO,MAAM,WAAW;IACtB;;;;;;OAMG;;IAGH;;;OAGG;;IAGH;;;;;;;;;OASG;;IAGH;;;;;OAKG;;IAGH;;;;;OAKG;;IAGH;;;;;;;;;;OAUG;;IAGH;;;;;;;;OAQG;;IAGH;;;;;;;OAOG;;IAGH;;;;;;OAMG;;IAGH;;;;;;OAMG;;CAEK,CAAC"}
|
|
@@ -1,13 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { MAX_VALUE, add, fromNumber, max as max_, min as min_, pow, random, sub, } from '../operators/negative-int.mjs';
|
|
2
2
|
import { PositiveInt } from './positive-int.mjs';
|
|
3
3
|
const typeNameInMessage = 'a negative integer';
|
|
4
|
-
const { MAX_VALUE, add, castType, fromNumber, is, max: max_, min: min_, pow, random, sub, } = TsDataForgeInternals.RefinedNumberUtils.operatorsForInteger({
|
|
5
|
-
integerOrSafeInteger: 'Integer',
|
|
6
|
-
nonZero: true,
|
|
7
|
-
MIN_VALUE: -Number.MAX_VALUE,
|
|
8
|
-
MAX_VALUE: -1,
|
|
9
|
-
typeNameInMessage,
|
|
10
|
-
});
|
|
11
4
|
const abs = (x) => PositiveInt.fromNumber(Math.abs(x));
|
|
12
5
|
|
|
13
6
|
|
|
@@ -18,7 +11,7 @@ const abs = (x) => PositiveInt.fromNumber(Math.abs(x));
|
|
|
18
11
|
|
|
19
12
|
|
|
20
13
|
|
|
21
|
-
export const isNegativeInt =
|
|
14
|
+
export const isNegativeInt = (value) => Number.isInteger(value) && value <= -1;
|
|
22
15
|
|
|
23
16
|
|
|
24
17
|
|
|
@@ -29,7 +22,12 @@ export const isNegativeInt = is;
|
|
|
29
22
|
|
|
30
23
|
|
|
31
24
|
|
|
32
|
-
export const asNegativeInt =
|
|
25
|
+
export const asNegativeInt = (value) => {
|
|
26
|
+
if (!isNegativeInt(value)) {
|
|
27
|
+
throw new TypeError(`Expected ${typeNameInMessage}, got: ${value}`);
|
|
28
|
+
}
|
|
29
|
+
return value;
|
|
30
|
+
};
|
|
33
31
|
|
|
34
32
|
|
|
35
33
|
|
|
@@ -48,7 +46,7 @@ export const NegativeInt = {
|
|
|
48
46
|
|
|
49
47
|
|
|
50
48
|
|
|
51
|
-
is,
|
|
49
|
+
is: isNegativeInt,
|
|
52
50
|
|
|
53
51
|
|
|
54
52
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"negative-int.mjs","sourceRoot":"","sources":["../../../src/number/branded-types/negative-int.mts"],"names":[],"mappings":"AAIA,OAAO,
|
|
1
|
+
{"version":3,"file":"negative-int.mjs","sourceRoot":"","sources":["../../../src/number/branded-types/negative-int.mts"],"names":[],"mappings":"AAIA,OAAO,EACL,SAAS,EACT,GAAG,EACH,UAAU,EACV,GAAG,IAAI,IAAI,EACX,GAAG,IAAI,IAAI,EACX,GAAG,EACH,MAAM,EACN,GAAG,GACJ,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAMjD,MAAM,iBAAiB,GAAG,oBAAoB,CAAC;AAE/C,MAAM,GAAG,GAAG,CAAC,CAA4B,EAAe,EAAE,CACxD,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AAEtC;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,KAAa,EAAwB,EAAE,CACnE,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC;AAEzC;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,CAAmB,KAAQ,EAAmB,EAAE;IAC3E,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1B,MAAM,IAAI,SAAS,CAAC,YAAY,iBAAiB,UAAU,KAAK,EAAE,CAAC,CAAC;IACtE,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAEF;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB;;;;;;OAMG;IACH,EAAE,EAAE,aAAa;IAEjB;;;OAGG;IACH,SAAS;IAET;;;;;;;;;OASG;IACH,GAAG;IAEH;;;;;OAKG;IACH,GAAG,EAAE,IAAI;IAET;;;;;OAKG;IACH,GAAG,EAAE,IAAI;IAET;;;;;;;;;;OAUG;IACH,UAAU;IAEV;;;;;;;;OAQG;IACH,MAAM;IAEN;;;;;;;OAOG;IACH,GAAG;IAEH;;;;;;OAMG;IACH,GAAG;IAEH;;;;;;OAMG;IACH,GAAG;CACK,CAAC"}
|
|
@@ -12,7 +12,7 @@ declare const abs: (x: WithSmallInt<ElementType>) => PositiveSafeInt;
|
|
|
12
12
|
* @param value - The value to check
|
|
13
13
|
* @returns `true` if the value is a negative safe integer, `false` otherwise
|
|
14
14
|
*/
|
|
15
|
-
export declare const isNegativeSafeInt: (
|
|
15
|
+
export declare const isNegativeSafeInt: (value: number) => value is NegativeSafeInt;
|
|
16
16
|
/**
|
|
17
17
|
* Casts a `number` to the `NegativeSafeInt` branded type.
|
|
18
18
|
*
|
|
@@ -23,21 +23,7 @@ export declare const isNegativeSafeInt: (a: number) => a is TtfImported_Negative
|
|
|
23
23
|
* @returns The value as a `NegativeSafeInt`
|
|
24
24
|
* @throws {TypeError} If the value is not a negative safe integer
|
|
25
25
|
*/
|
|
26
|
-
export declare const asNegativeSafeInt: <N extends number>(
|
|
27
|
-
readonly "!=0": true;
|
|
28
|
-
readonly "< 2^15": true;
|
|
29
|
-
readonly "< 2^16": true;
|
|
30
|
-
readonly "< 2^31": true;
|
|
31
|
-
readonly "< 2^32": true;
|
|
32
|
-
readonly "<=0": true;
|
|
33
|
-
readonly ">=0": false;
|
|
34
|
-
readonly Finite: true;
|
|
35
|
-
readonly Int: true;
|
|
36
|
-
readonly NaNValue: false;
|
|
37
|
-
readonly SafeInt: true;
|
|
38
|
-
} & Readonly<{
|
|
39
|
-
'TSTypeForgeInternals--edd2f9ce-7ca5-45b0-9d1a-bd61b9b5d9c3': unknown;
|
|
40
|
-
}> & N;
|
|
26
|
+
export declare const asNegativeSafeInt: <N extends number>(value: N) => NegativeSafeInt & N;
|
|
41
27
|
/**
|
|
42
28
|
* Namespace providing type-safe operations for the `NegativeSafeInt` branded
|
|
43
29
|
* type.
|
|
@@ -53,7 +39,7 @@ export declare const NegativeSafeInt: {
|
|
|
53
39
|
* @returns `true` if the value is a negative safe integer, `false` otherwise
|
|
54
40
|
* @see {@link isNegativeSafeInt} for usage examples
|
|
55
41
|
*/
|
|
56
|
-
readonly is:
|
|
42
|
+
readonly is: typeof isNegativeSafeInt;
|
|
57
43
|
/**
|
|
58
44
|
* The smallest value representable as `NegativeSafeInt` (the lower saturation
|
|
59
45
|
* target of `fromNumber`).
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"negative-safe-int.d.mts","sourceRoot":"","sources":["../../../src/number/branded-types/negative-safe-int.mts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,IAAI,2BAA2B,EAC9C,YAAY,EACb,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"negative-safe-int.d.mts","sourceRoot":"","sources":["../../../src/number/branded-types/negative-safe-int.mts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,IAAI,2BAA2B,EAC9C,YAAY,EACb,MAAM,eAAe,CAAC;AAYvB,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAE1D,MAAM,MAAM,eAAe,GAAG,2BAA2B,CAAC;AAE1D,KAAK,WAAW,GAAG,eAAe,CAAC;AAInC,QAAA,MAAM,GAAG,MAAO,YAAY,CAAC,WAAW,CAAC,KAAG,eACH,CAAC;AAE1C;;;;;;;;GAQG;AACH,eAAO,MAAM,iBAAiB,UAAW,MAAM,KAAG,KAAK,IAAI,eACf,CAAC;AAE7C;;;;;;;;;GASG;AACH,eAAO,MAAM,iBAAiB,GAAI,CAAC,SAAS,MAAM,SACzC,CAAC,KACP,eAAe,GAAG,CAMpB,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,eAAe;IAC1B;;;;;;OAMG;;IAGH;;;OAGG;;IAGH;;;OAGG;;IAGH;;;;;;;OAOG;;IAGH;;;;;OAKG;;IAGH;;;;;OAKG;;IAGH;;;;;;;;;;OAUG;;IAGH;;;;;;;;OAQG;;IAGH;;;;;;;OAOG;;IAGH;;;;;;OAMG;;IAGH;;;;;;;OAOG;;CAEK,CAAC"}
|
|
@@ -1,13 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { MAX_VALUE, MIN_VALUE, add, fromNumber, max as max_, min as min_, pow, random, sub, } from '../operators/negative-safe-int.mjs';
|
|
2
2
|
import { PositiveSafeInt } from './positive-safe-int.mjs';
|
|
3
3
|
const typeNameInMessage = 'a negative safe integer';
|
|
4
|
-
const { MAX_VALUE, MIN_VALUE, add, castType, fromNumber, is, max: max_, min: min_, pow, random, sub, } = TsDataForgeInternals.RefinedNumberUtils.operatorsForInteger({
|
|
5
|
-
integerOrSafeInteger: 'SafeInteger',
|
|
6
|
-
nonZero: true,
|
|
7
|
-
MIN_VALUE: Number.MIN_SAFE_INTEGER,
|
|
8
|
-
MAX_VALUE: -1,
|
|
9
|
-
typeNameInMessage,
|
|
10
|
-
});
|
|
11
4
|
const abs = (x) => PositiveSafeInt.fromNumber(Math.abs(x));
|
|
12
5
|
|
|
13
6
|
|
|
@@ -18,7 +11,7 @@ const abs = (x) => PositiveSafeInt.fromNumber(Math.abs(x));
|
|
|
18
11
|
|
|
19
12
|
|
|
20
13
|
|
|
21
|
-
export const isNegativeSafeInt =
|
|
14
|
+
export const isNegativeSafeInt = (value) => Number.isSafeInteger(value) && value <= -1;
|
|
22
15
|
|
|
23
16
|
|
|
24
17
|
|
|
@@ -29,7 +22,12 @@ export const isNegativeSafeInt = is;
|
|
|
29
22
|
|
|
30
23
|
|
|
31
24
|
|
|
32
|
-
export const asNegativeSafeInt =
|
|
25
|
+
export const asNegativeSafeInt = (value) => {
|
|
26
|
+
if (!isNegativeSafeInt(value)) {
|
|
27
|
+
throw new TypeError(`Expected ${typeNameInMessage}, got: ${value}`);
|
|
28
|
+
}
|
|
29
|
+
return value;
|
|
30
|
+
};
|
|
33
31
|
|
|
34
32
|
|
|
35
33
|
|
|
@@ -45,7 +43,7 @@ export const NegativeSafeInt = {
|
|
|
45
43
|
|
|
46
44
|
|
|
47
45
|
|
|
48
|
-
is,
|
|
46
|
+
is: isNegativeSafeInt,
|
|
49
47
|
|
|
50
48
|
|
|
51
49
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"negative-safe-int.mjs","sourceRoot":"","sources":["../../../src/number/branded-types/negative-safe-int.mts"],"names":[],"mappings":"AAIA,OAAO,
|
|
1
|
+
{"version":3,"file":"negative-safe-int.mjs","sourceRoot":"","sources":["../../../src/number/branded-types/negative-safe-int.mts"],"names":[],"mappings":"AAIA,OAAO,EACL,SAAS,EACT,SAAS,EACT,GAAG,EACH,UAAU,EACV,GAAG,IAAI,IAAI,EACX,GAAG,IAAI,IAAI,EACX,GAAG,EACH,MAAM,EACN,GAAG,GACJ,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAM1D,MAAM,iBAAiB,GAAG,yBAAyB,CAAC;AAEpD,MAAM,GAAG,GAAG,CAAC,CAA4B,EAAmB,EAAE,CAC5D,eAAe,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AAE1C;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,KAAa,EAA4B,EAAE,CAC3E,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC;AAE7C;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAC/B,KAAQ,EACa,EAAE;IACvB,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,EAAE,CAAC;QAC9B,MAAM,IAAI,SAAS,CAAC,YAAY,iBAAiB,UAAU,KAAK,EAAE,CAAC,CAAC;IACtE,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B;;;;;;OAMG;IACH,EAAE,EAAE,iBAAiB;IAErB;;;OAGG;IACH,SAAS;IAET;;;OAGG;IACH,SAAS;IAET;;;;;;;OAOG;IACH,GAAG;IAEH;;;;;OAKG;IACH,GAAG,EAAE,IAAI;IAET;;;;;OAKG;IACH,GAAG,EAAE,IAAI;IAET;;;;;;;;;;OAUG;IACH,UAAU;IAEV;;;;;;;;OAQG;IACH,MAAM;IAEN;;;;;;;OAOG;IACH,GAAG;IAEH;;;;;;OAMG;IACH,GAAG;IAEH;;;;;;;OAOG;IACH,GAAG;CACK,CAAC"}
|