ts-data-forge 14.6.0 → 14.6.2
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/dist/array/impl/array-utils-creation.mjs +126 -26
- package/dist/array/impl/array-utils-creation.mjs.map +1 -1
- package/dist/array/impl/array-utils-element-access.mjs +63 -30
- package/dist/array/impl/array-utils-element-access.mjs.map +1 -1
- package/dist/array/impl/array-utils-iterators.mjs +69 -53
- package/dist/array/impl/array-utils-iterators.mjs.map +1 -1
- package/dist/array/impl/array-utils-length-bounded-array-cast.mjs +109 -73
- package/dist/array/impl/array-utils-length-bounded-array-cast.mjs.map +1 -1
- package/dist/array/impl/array-utils-length-bounded-array-guard.mjs +71 -33
- package/dist/array/impl/array-utils-length-bounded-array-guard.mjs.map +1 -1
- package/dist/array/impl/array-utils-length-bounded-tuple-cast.mjs +102 -73
- package/dist/array/impl/array-utils-length-bounded-tuple-cast.mjs.map +1 -1
- package/dist/array/impl/array-utils-length-bounded-tuple-guard.mjs +77 -33
- package/dist/array/impl/array-utils-length-bounded-tuple-guard.mjs.map +1 -1
- package/dist/array/impl/array-utils-modification.mjs +75 -122
- package/dist/array/impl/array-utils-modification.mjs.map +1 -1
- package/dist/array/impl/array-utils-reducing-value.mjs +100 -150
- package/dist/array/impl/array-utils-reducing-value.mjs.map +1 -1
- package/dist/array/impl/array-utils-search.mjs +110 -134
- package/dist/array/impl/array-utils-search.mjs.map +1 -1
- package/dist/array/impl/array-utils-set-op.mjs +146 -38
- package/dist/array/impl/array-utils-set-op.mjs.map +1 -1
- package/dist/array/impl/array-utils-size.mjs +10 -8
- package/dist/array/impl/array-utils-size.mjs.map +1 -1
- package/dist/array/impl/array-utils-slice-clamped.mjs +13 -50
- package/dist/array/impl/array-utils-slice-clamped.mjs.map +1 -1
- package/dist/array/impl/array-utils-slicing.mjs +94 -78
- package/dist/array/impl/array-utils-slicing.mjs.map +1 -1
- package/dist/array/impl/array-utils-transformation.mjs +291 -199
- package/dist/array/impl/array-utils-transformation.mjs.map +1 -1
- package/dist/array/impl/array-utils-validation.mjs +54 -56
- package/dist/array/impl/array-utils-validation.mjs.map +1 -1
- package/dist/array/impl/index.mjs +17 -17
- package/dist/array/impl/index.mjs.map +1 -1
- package/dist/array/index.mjs +2 -3
- package/dist/array/index.mjs.map +1 -1
- package/dist/collections/imap-mapped.mjs +335 -291
- package/dist/collections/imap-mapped.mjs.map +1 -1
- package/dist/collections/imap.mjs +280 -239
- package/dist/collections/imap.mjs.map +1 -1
- package/dist/collections/index.mjs +7 -7
- package/dist/collections/index.mjs.map +1 -1
- package/dist/collections/iset-mapped.d.mts.map +1 -1
- package/dist/collections/iset-mapped.mjs +448 -263
- package/dist/collections/iset-mapped.mjs.map +1 -1
- package/dist/collections/iset.mjs +328 -201
- package/dist/collections/iset.mjs.map +1 -1
- package/dist/collections/queue.mjs +183 -151
- package/dist/collections/queue.mjs.map +1 -1
- package/dist/collections/stack.mjs +169 -140
- package/dist/collections/stack.mjs.map +1 -1
- package/dist/entry-point.mjs +4 -77
- package/dist/entry-point.mjs.map +1 -1
- package/dist/expect-type.mjs +70 -4
- package/dist/expect-type.mjs.map +1 -1
- package/dist/functional/async-result/async-result.mjs +2 -3
- package/dist/functional/async-result/async-result.mjs.map +1 -1
- package/dist/functional/async-result/impl/async-result-flat-map.mjs +19 -21
- package/dist/functional/async-result/impl/async-result-flat-map.mjs.map +1 -1
- package/dist/functional/async-result/impl/async-result-from-promise.mjs +9 -10
- package/dist/functional/async-result/impl/async-result-from-promise.mjs.map +1 -1
- package/dist/functional/async-result/impl/async-result-from-throwable.mjs +12 -14
- package/dist/functional/async-result/impl/async-result-from-throwable.mjs.map +1 -1
- package/dist/functional/async-result/impl/async-result-map-err.mjs +16 -19
- package/dist/functional/async-result/impl/async-result-map-err.mjs.map +1 -1
- package/dist/functional/async-result/impl/async-result-map.mjs +16 -19
- package/dist/functional/async-result/impl/async-result-map.mjs.map +1 -1
- package/dist/functional/async-result/impl/async-result-unwrap-or.mjs +36 -9
- package/dist/functional/async-result/impl/async-result-unwrap-or.mjs.map +1 -1
- package/dist/functional/async-result/impl/index.mjs +8 -7
- package/dist/functional/async-result/impl/index.mjs.map +1 -1
- package/dist/functional/async-result/impl/types.mjs +2 -2
- package/dist/functional/async-result/impl/types.mjs.map +1 -1
- package/dist/functional/async-result/index.mjs +2 -3
- package/dist/functional/async-result/index.mjs.map +1 -1
- package/dist/functional/index.mjs +7 -11
- package/dist/functional/index.mjs.map +1 -1
- package/dist/functional/match.mjs +27 -13
- package/dist/functional/match.mjs.map +1 -1
- package/dist/functional/optional/impl/index.mjs +19 -18
- package/dist/functional/optional/impl/index.mjs.map +1 -1
- package/dist/functional/optional/impl/optional-expect-to-be.mjs +16 -18
- package/dist/functional/optional/impl/optional-expect-to-be.mjs.map +1 -1
- package/dist/functional/optional/impl/optional-filter.mjs +17 -19
- package/dist/functional/optional/impl/optional-filter.mjs.map +1 -1
- package/dist/functional/optional/impl/optional-flat-map.mjs +13 -15
- package/dist/functional/optional/impl/optional-flat-map.mjs.map +1 -1
- package/dist/functional/optional/impl/optional-from-nullable.mjs +26 -5
- package/dist/functional/optional/impl/optional-from-nullable.mjs.map +1 -1
- package/dist/functional/optional/impl/optional-is-none.mjs +21 -5
- package/dist/functional/optional/impl/optional-is-none.mjs.map +1 -1
- package/dist/functional/optional/impl/optional-is-optional.mjs +26 -8
- package/dist/functional/optional/impl/optional-is-optional.mjs.map +1 -1
- package/dist/functional/optional/impl/optional-is-some.mjs +22 -5
- package/dist/functional/optional/impl/optional-is-some.mjs.map +1 -1
- package/dist/functional/optional/impl/optional-map.mjs +16 -18
- package/dist/functional/optional/impl/optional-map.mjs.map +1 -1
- package/dist/functional/optional/impl/optional-match.mjs +16 -18
- package/dist/functional/optional/impl/optional-match.mjs.map +1 -1
- package/dist/functional/optional/impl/optional-none.mjs +18 -5
- package/dist/functional/optional/impl/optional-none.mjs.map +1 -1
- package/dist/functional/optional/impl/optional-or-else.mjs +13 -15
- package/dist/functional/optional/impl/optional-or-else.mjs.map +1 -1
- package/dist/functional/optional/impl/optional-some.mjs +23 -7
- package/dist/functional/optional/impl/optional-some.mjs.map +1 -1
- package/dist/functional/optional/impl/optional-to-nullable.mjs +28 -5
- package/dist/functional/optional/impl/optional-to-nullable.mjs.map +1 -1
- package/dist/functional/optional/impl/optional-unwrap-or.mjs +12 -14
- package/dist/functional/optional/impl/optional-unwrap-or.mjs.map +1 -1
- package/dist/functional/optional/impl/optional-unwrap-throw.mjs +34 -9
- package/dist/functional/optional/impl/optional-unwrap-throw.mjs.map +1 -1
- package/dist/functional/optional/impl/optional-unwrap.mjs +6 -9
- package/dist/functional/optional/impl/optional-unwrap.mjs.map +1 -1
- package/dist/functional/optional/impl/optional-zip.mjs +36 -5
- package/dist/functional/optional/impl/optional-zip.mjs.map +1 -1
- package/dist/functional/optional/impl/tag.mjs +4 -5
- package/dist/functional/optional/impl/tag.mjs.map +1 -1
- package/dist/functional/optional/impl/types.mjs +2 -2
- package/dist/functional/optional/impl/types.mjs.map +1 -1
- package/dist/functional/optional/index.mjs +2 -3
- package/dist/functional/optional/index.mjs.map +1 -1
- package/dist/functional/optional/optional.mjs +2 -3
- package/dist/functional/optional/optional.mjs.map +1 -1
- package/dist/functional/pipe.mjs +42 -14
- package/dist/functional/pipe.mjs.map +1 -1
- package/dist/functional/result/impl/index.mjs +28 -27
- package/dist/functional/result/impl/index.mjs.map +1 -1
- package/dist/functional/result/impl/result-err.mjs +29 -7
- package/dist/functional/result/impl/result-err.mjs.map +1 -1
- package/dist/functional/result/impl/result-expect-to-be.mjs +17 -18
- package/dist/functional/result/impl/result-expect-to-be.mjs.map +1 -1
- package/dist/functional/result/impl/result-flat-map.mjs +18 -21
- package/dist/functional/result/impl/result-flat-map.mjs.map +1 -1
- package/dist/functional/result/impl/result-fold.mjs +18 -21
- package/dist/functional/result/impl/result-fold.mjs.map +1 -1
- package/dist/functional/result/impl/result-from-optional.mjs +17 -20
- package/dist/functional/result/impl/result-from-optional.mjs.map +1 -1
- package/dist/functional/result/impl/result-from-promise.mjs +37 -8
- package/dist/functional/result/impl/result-from-promise.mjs.map +1 -1
- package/dist/functional/result/impl/result-from-throwable.mjs +41 -14
- package/dist/functional/result/impl/result-from-throwable.mjs.map +1 -1
- package/dist/functional/result/impl/result-is-err.mjs +21 -5
- package/dist/functional/result/impl/result-is-err.mjs.map +1 -1
- package/dist/functional/result/impl/result-is-ok.mjs +21 -5
- package/dist/functional/result/impl/result-is-ok.mjs.map +1 -1
- package/dist/functional/result/impl/result-is-result.mjs +25 -7
- package/dist/functional/result/impl/result-is-result.mjs.map +1 -1
- package/dist/functional/result/impl/result-map-err.mjs +18 -21
- package/dist/functional/result/impl/result-map-err.mjs.map +1 -1
- package/dist/functional/result/impl/result-map.mjs +18 -21
- package/dist/functional/result/impl/result-map.mjs.map +1 -1
- package/dist/functional/result/impl/result-match.mjs +17 -21
- package/dist/functional/result/impl/result-match.mjs.map +1 -1
- package/dist/functional/result/impl/result-ok.mjs +29 -7
- package/dist/functional/result/impl/result-ok.mjs.map +1 -1
- package/dist/functional/result/impl/result-or-else.mjs +14 -15
- package/dist/functional/result/impl/result-or-else.mjs.map +1 -1
- package/dist/functional/result/impl/result-safe-try.mjs +32 -21
- package/dist/functional/result/impl/result-safe-try.mjs.map +1 -1
- package/dist/functional/result/impl/result-safe-unwrap.mjs +40 -12
- package/dist/functional/result/impl/result-safe-unwrap.mjs.map +1 -1
- package/dist/functional/result/impl/result-swap.mjs +23 -8
- package/dist/functional/result/impl/result-swap.mjs.map +1 -1
- package/dist/functional/result/impl/result-to-optional.mjs +30 -7
- package/dist/functional/result/impl/result-to-optional.mjs.map +1 -1
- package/dist/functional/result/impl/result-unwrap-err-or.mjs +13 -14
- package/dist/functional/result/impl/result-unwrap-err-or.mjs.map +1 -1
- package/dist/functional/result/impl/result-unwrap-err-throw.mjs +43 -20
- package/dist/functional/result/impl/result-unwrap-err-throw.mjs.map +1 -1
- package/dist/functional/result/impl/result-unwrap-err.mjs +33 -8
- package/dist/functional/result/impl/result-unwrap-err.mjs.map +1 -1
- package/dist/functional/result/impl/result-unwrap-ok-or.mjs +13 -14
- package/dist/functional/result/impl/result-unwrap-ok-or.mjs.map +1 -1
- package/dist/functional/result/impl/result-unwrap-ok.mjs +6 -9
- package/dist/functional/result/impl/result-unwrap-ok.mjs.map +1 -1
- package/dist/functional/result/impl/result-unwrap-throw.mjs +38 -11
- package/dist/functional/result/impl/result-unwrap-throw.mjs.map +1 -1
- package/dist/functional/result/impl/result-zip.mjs +35 -5
- package/dist/functional/result/impl/result-zip.mjs.map +1 -1
- package/dist/functional/result/impl/tag.mjs +4 -5
- package/dist/functional/result/impl/tag.mjs.map +1 -1
- package/dist/functional/result/impl/types.mjs +2 -2
- package/dist/functional/result/impl/types.mjs.map +1 -1
- package/dist/functional/result/index.mjs +2 -3
- package/dist/functional/result/index.mjs.map +1 -1
- package/dist/functional/result/result.mjs +2 -3
- package/dist/functional/result/result.mjs.map +1 -1
- package/dist/functional/ternary-result/impl/index.mjs +29 -28
- package/dist/functional/ternary-result/impl/index.mjs.map +1 -1
- package/dist/functional/ternary-result/impl/tag.mjs +6 -6
- package/dist/functional/ternary-result/impl/tag.mjs.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-err.mjs +17 -7
- package/dist/functional/ternary-result/impl/ternary-result-err.mjs.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-expect-to-be.mjs +15 -18
- package/dist/functional/ternary-result/impl/ternary-result-expect-to-be.mjs.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-flat-map.mjs +28 -32
- package/dist/functional/ternary-result/impl/ternary-result-flat-map.mjs.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-fold.mjs +24 -26
- package/dist/functional/ternary-result/impl/ternary-result-fold.mjs.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-from-promise.mjs +21 -8
- package/dist/functional/ternary-result/impl/ternary-result-from-promise.mjs.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-from-throwable.mjs +28 -13
- package/dist/functional/ternary-result/impl/ternary-result-from-throwable.mjs.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-is-err.mjs +19 -5
- package/dist/functional/ternary-result/impl/ternary-result-is-err.mjs.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-is-ok.mjs +21 -5
- package/dist/functional/ternary-result/impl/ternary-result-is-ok.mjs.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-is-ternary-result.mjs +28 -8
- package/dist/functional/ternary-result/impl/ternary-result-is-ternary-result.mjs.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-is-warn.mjs +20 -5
- package/dist/functional/ternary-result/impl/ternary-result-is-warn.mjs.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-map-err.mjs +17 -18
- package/dist/functional/ternary-result/impl/ternary-result-map-err.mjs.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-map-warn.mjs +20 -23
- package/dist/functional/ternary-result/impl/ternary-result-map-warn.mjs.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-map.mjs +24 -26
- package/dist/functional/ternary-result/impl/ternary-result-map.mjs.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-ok.mjs +18 -7
- package/dist/functional/ternary-result/impl/ternary-result-ok.mjs.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-or-else.mjs +11 -14
- package/dist/functional/ternary-result/impl/ternary-result-or-else.mjs.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-to-optional.mjs +24 -10
- package/dist/functional/ternary-result/impl/ternary-result-to-optional.mjs.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-unwrap-err-or.mjs +11 -14
- package/dist/functional/ternary-result/impl/ternary-result-unwrap-err-or.mjs.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-unwrap-err-throw.mjs +30 -19
- package/dist/functional/ternary-result/impl/ternary-result-unwrap-err-throw.mjs.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-unwrap-err.mjs +20 -8
- package/dist/functional/ternary-result/impl/ternary-result-unwrap-err.mjs.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-unwrap-ok-or.mjs +11 -14
- package/dist/functional/ternary-result/impl/ternary-result-unwrap-ok-or.mjs.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-unwrap-ok.mjs +7 -9
- package/dist/functional/ternary-result/impl/ternary-result-unwrap-ok.mjs.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-unwrap-throw.mjs +30 -22
- package/dist/functional/ternary-result/impl/ternary-result-unwrap-throw.mjs.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-unwrap-warn-or.mjs +11 -14
- package/dist/functional/ternary-result/impl/ternary-result-unwrap-warn-or.mjs.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-unwrap-warn-throw.mjs +27 -17
- package/dist/functional/ternary-result/impl/ternary-result-unwrap-warn-throw.mjs.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-unwrap-warn.mjs +20 -8
- package/dist/functional/ternary-result/impl/ternary-result-unwrap-warn.mjs.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-warn.mjs +21 -8
- package/dist/functional/ternary-result/impl/ternary-result-warn.mjs.map +1 -1
- package/dist/functional/ternary-result/impl/ternary-result-zip.mjs +47 -19
- package/dist/functional/ternary-result/impl/ternary-result-zip.mjs.map +1 -1
- package/dist/functional/ternary-result/impl/types.mjs +2 -2
- package/dist/functional/ternary-result/impl/types.mjs.map +1 -1
- package/dist/functional/ternary-result/impl/variant-name.mjs +12 -14
- package/dist/functional/ternary-result/impl/variant-name.mjs.map +1 -1
- package/dist/functional/ternary-result/index.mjs +2 -3
- package/dist/functional/ternary-result/index.mjs.map +1 -1
- package/dist/functional/ternary-result/ternary-result.mjs +2 -3
- package/dist/functional/ternary-result/ternary-result.mjs.map +1 -1
- package/dist/guard/has-key.mjs +43 -4
- package/dist/guard/has-key.mjs.map +1 -1
- package/dist/guard/index.mjs +8 -8
- package/dist/guard/index.mjs.map +1 -1
- package/dist/guard/is-non-empty-string.mjs +39 -4
- package/dist/guard/is-non-empty-string.mjs.map +1 -1
- package/dist/guard/is-non-null-object.mjs +36 -4
- package/dist/guard/is-non-null-object.mjs.map +1 -1
- package/dist/guard/is-primitive.mjs +46 -15
- package/dist/guard/is-primitive.mjs.map +1 -1
- package/dist/guard/is-record.mjs +89 -6
- package/dist/guard/is-record.mjs.map +1 -1
- package/dist/guard/is-type.mjs +404 -19
- package/dist/guard/is-type.mjs.map +1 -1
- package/dist/guard/key-is-in.mjs +42 -4
- package/dist/guard/key-is-in.mjs.map +1 -1
- package/dist/index.mjs +12 -65
- package/dist/index.mjs.map +1 -1
- package/dist/iterator/index.mjs +2 -2
- package/dist/iterator/index.mjs.map +1 -1
- package/dist/iterator/range.mjs +19 -57
- package/dist/iterator/range.mjs.map +1 -1
- package/dist/json/index.mjs +2 -2
- package/dist/json/index.mjs.map +1 -1
- package/dist/json/json.mjs +346 -105
- package/dist/json/json.mjs.map +1 -1
- package/dist/number/branded-types/finite-number.mjs +148 -137
- package/dist/number/branded-types/finite-number.mjs.map +1 -1
- package/dist/number/branded-types/index.mjs +33 -33
- package/dist/number/branded-types/index.mjs.map +1 -1
- package/dist/number/branded-types/int.mjs +245 -209
- package/dist/number/branded-types/int.mjs.map +1 -1
- package/dist/number/branded-types/int16.mjs +141 -131
- package/dist/number/branded-types/int16.mjs.map +1 -1
- package/dist/number/branded-types/int32.mjs +141 -131
- package/dist/number/branded-types/int32.mjs.map +1 -1
- package/dist/number/branded-types/negative-finite-number.mjs +155 -149
- package/dist/number/branded-types/negative-finite-number.mjs.map +1 -1
- package/dist/number/branded-types/negative-int.mjs +125 -110
- package/dist/number/branded-types/negative-int.mjs.map +1 -1
- package/dist/number/branded-types/negative-safe-int.mjs +126 -115
- package/dist/number/branded-types/negative-safe-int.mjs.map +1 -1
- package/dist/number/branded-types/non-negative-finite-number.mjs +164 -154
- package/dist/number/branded-types/non-negative-finite-number.mjs.map +1 -1
- package/dist/number/branded-types/non-negative-int16.mjs +137 -125
- package/dist/number/branded-types/non-negative-int16.mjs.map +1 -1
- package/dist/number/branded-types/non-negative-int32.mjs +137 -125
- package/dist/number/branded-types/non-negative-int32.mjs.map +1 -1
- package/dist/number/branded-types/non-positive-finite-number.mjs +143 -139
- package/dist/number/branded-types/non-positive-finite-number.mjs.map +1 -1
- package/dist/number/branded-types/non-positive-int.mjs +116 -99
- package/dist/number/branded-types/non-positive-int.mjs.map +1 -1
- package/dist/number/branded-types/non-positive-safe-int.mjs +118 -107
- package/dist/number/branded-types/non-positive-safe-int.mjs.map +1 -1
- package/dist/number/branded-types/non-zero-finite-number.mjs +144 -129
- package/dist/number/branded-types/non-zero-finite-number.mjs.map +1 -1
- package/dist/number/branded-types/non-zero-int.mjs +102 -82
- package/dist/number/branded-types/non-zero-int.mjs.map +1 -1
- package/dist/number/branded-types/non-zero-int16.mjs +118 -105
- package/dist/number/branded-types/non-zero-int16.mjs.map +1 -1
- package/dist/number/branded-types/non-zero-int32.mjs +118 -105
- package/dist/number/branded-types/non-zero-int32.mjs.map +1 -1
- package/dist/number/branded-types/non-zero-safe-int.mjs +122 -108
- package/dist/number/branded-types/non-zero-safe-int.mjs.map +1 -1
- package/dist/number/branded-types/non-zero-uint16.mjs +118 -104
- package/dist/number/branded-types/non-zero-uint16.mjs.map +1 -1
- package/dist/number/branded-types/non-zero-uint32.mjs +118 -104
- package/dist/number/branded-types/non-zero-uint32.mjs.map +1 -1
- package/dist/number/branded-types/positive-finite-number.mjs +167 -160
- package/dist/number/branded-types/positive-finite-number.mjs.map +1 -1
- package/dist/number/branded-types/positive-int.mjs +260 -224
- package/dist/number/branded-types/positive-int.mjs.map +1 -1
- package/dist/number/branded-types/positive-int16.mjs +134 -122
- package/dist/number/branded-types/positive-int16.mjs.map +1 -1
- package/dist/number/branded-types/positive-int32.mjs +134 -122
- package/dist/number/branded-types/positive-int32.mjs.map +1 -1
- package/dist/number/branded-types/positive-safe-int.mjs +292 -258
- package/dist/number/branded-types/positive-safe-int.mjs.map +1 -1
- package/dist/number/branded-types/positive-uint16.mjs +134 -122
- package/dist/number/branded-types/positive-uint16.mjs.map +1 -1
- package/dist/number/branded-types/positive-uint32.mjs +134 -122
- package/dist/number/branded-types/positive-uint32.mjs.map +1 -1
- package/dist/number/branded-types/safe-int.mjs +284 -255
- package/dist/number/branded-types/safe-int.mjs.map +1 -1
- package/dist/number/branded-types/safe-uint.mjs +135 -124
- package/dist/number/branded-types/safe-uint.mjs.map +1 -1
- package/dist/number/branded-types/uint.mjs +248 -211
- package/dist/number/branded-types/uint.mjs.map +1 -1
- package/dist/number/branded-types/uint16.mjs +132 -121
- package/dist/number/branded-types/uint16.mjs.map +1 -1
- package/dist/number/branded-types/uint32.mjs +132 -121
- package/dist/number/branded-types/uint32.mjs.map +1 -1
- package/dist/number/enum/index.mjs +3 -3
- package/dist/number/enum/index.mjs.map +1 -1
- package/dist/number/enum/int8.mjs +146 -131
- package/dist/number/enum/int8.mjs.map +1 -1
- package/dist/number/enum/uint8.mjs +133 -119
- package/dist/number/enum/uint8.mjs.map +1 -1
- package/dist/number/index.mjs +6 -37
- package/dist/number/index.mjs.map +1 -1
- package/dist/number/num-arithmetic-types.mjs +42 -1
- package/dist/number/num-arithmetic-types.mjs.map +1 -1
- package/dist/number/num.mjs +541 -83
- package/dist/number/num.mjs.map +1 -1
- package/dist/number/refined-number-utils.mjs +294 -133
- package/dist/number/refined-number-utils.mjs.map +1 -1
- package/dist/object/index.mjs +2 -2
- package/dist/object/index.mjs.map +1 -1
- package/dist/object/object.mjs +355 -202
- package/dist/object/object.mjs.map +1 -1
- package/dist/others/cast-mutable.mjs +38 -11
- package/dist/others/cast-mutable.mjs.map +1 -1
- package/dist/others/cast-readonly.mjs +37 -11
- package/dist/others/cast-readonly.mjs.map +1 -1
- package/dist/others/debounce-function.mjs +22 -11
- package/dist/others/debounce-function.mjs.map +1 -1
- package/dist/others/fast-deep-equal.mjs +70 -51
- package/dist/others/fast-deep-equal.mjs.map +1 -1
- package/dist/others/if-then.mjs +32 -5
- package/dist/others/if-then.mjs.map +1 -1
- package/dist/others/index.mjs +10 -10
- package/dist/others/index.mjs.map +1 -1
- package/dist/others/map-nullable.mjs +11 -13
- package/dist/others/map-nullable.mjs.map +1 -1
- package/dist/others/memoize-function.mjs +14 -16
- package/dist/others/memoize-function.mjs.map +1 -1
- package/dist/others/tuple.mjs +52 -4
- package/dist/others/tuple.mjs.map +1 -1
- package/dist/others/unknown-to-string.mjs +91 -47
- package/dist/others/unknown-to-string.mjs.map +1 -1
- package/dist/promise/index.mjs +2 -2
- package/dist/promise/index.mjs.map +1 -1
- package/dist/promise/promise.mjs +51 -10
- package/dist/promise/promise.mjs.map +1 -1
- package/dist/string/index.mjs +2 -2
- package/dist/string/index.mjs.map +1 -1
- package/dist/string/str.mjs +250 -83
- package/dist/string/str.mjs.map +1 -1
- package/dist/types.mjs +3 -2
- package/dist/types.mjs.map +1 -1
- package/package.json +5 -6
- package/src/array/impl/array-utils-length-constraint-preservation.test.mts +2 -2
- package/src/collections/imap-mapped.mts +4 -4
- package/src/collections/imap.mts +1 -1
- package/src/collections/imap.test.mts +1 -1
- package/src/collections/iset-mapped.mts +2 -1
- package/src/collections/iset.mts +1 -1
- package/src/functional/async-result.test.mts +3 -2
- package/src/functional/optional.test.mts +2 -1
- package/src/functional/result.test.mts +0 -2
- package/src/guard/is-non-empty-string.test.mts +2 -2
- package/src/guard/is-non-null-object.test.mts +3 -3
- package/src/guard/is-primitive.test.mts +3 -3
- package/src/guard/is-type.test.mts +3 -3
- package/src/json/json.test.mts +1 -1
- package/src/number/enum/int8.mts +1 -1
|
@@ -1,29 +1,20 @@
|
|
|
1
|
-
import { TsDataForgeInternals } from '../refined-number-utils.mjs';
|
|
2
1
|
|
|
3
|
-
|
|
4
|
-
const
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
random: randomImpl
|
|
11
|
-
} = TsDataForgeInternals.RefinedNumberUtils.operatorsForInteger({
|
|
12
|
-
integerOrSafeInteger: "SafeInteger",
|
|
13
|
-
MIN_VALUE: -128,
|
|
14
|
-
MAX_VALUE: 127,
|
|
15
|
-
typeNameInMessage
|
|
2
|
+
import { TsDataForgeInternals } from '../refined-number-utils.mjs';
|
|
3
|
+
const typeNameInMessage = 'an integer in [-128, 127]';
|
|
4
|
+
const { MAX_VALUE, MIN_VALUE, castType: castTypeImpl, fromNumber: fromNumberImpl, is: isImpl, random: randomImpl, } = TsDataForgeInternals.RefinedNumberUtils.operatorsForInteger({
|
|
5
|
+
integerOrSafeInteger: 'SafeInteger',
|
|
6
|
+
MIN_VALUE: -128,
|
|
7
|
+
MAX_VALUE: 127,
|
|
8
|
+
typeNameInMessage,
|
|
16
9
|
});
|
|
17
10
|
const is = (x) => isImpl(x);
|
|
18
|
-
const castType = (x) =>
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
);
|
|
11
|
+
const castType = (x) =>
|
|
12
|
+
// eslint-disable-next-line total-functions/no-unsafe-type-assertion
|
|
13
|
+
castTypeImpl(x);
|
|
22
14
|
const fromNumber = (a) => castType(fromNumberImpl(a));
|
|
23
|
-
const abs = (x) =>
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
);
|
|
15
|
+
const abs = (x) =>
|
|
16
|
+
// eslint-disable-next-line total-functions/no-unsafe-type-assertion, @typescript-eslint/no-unnecessary-type-assertion -- unnecessary only under the strict standard library; the stock one types `Math.abs` as returning `number`
|
|
17
|
+
Math.abs(x);
|
|
27
18
|
const min_ = (...values) => castType(Math.min(...values));
|
|
28
19
|
const max_ = (...values) => castType(Math.max(...values));
|
|
29
20
|
const pow = (x, y) => fromNumber(x ** y);
|
|
@@ -32,114 +23,138 @@ const sub = (x, y) => fromNumber(x - y);
|
|
|
32
23
|
const mul = (x, y) => fromNumber(x * y);
|
|
33
24
|
const div = (x, y) => fromNumber(Math.floor(x / y));
|
|
34
25
|
const random = (min, max) => castType(randomImpl(castTypeImpl(min), castTypeImpl(max)));
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
26
|
+
/**
|
|
27
|
+
* Type guard that checks if a value is an integer in [-128, 127].
|
|
28
|
+
*
|
|
29
|
+
* Returns `true` for an integer in [-128, 127] — a value with no fractional
|
|
30
|
+
* component.
|
|
31
|
+
*
|
|
32
|
+
* @param value - The value to check
|
|
33
|
+
* @returns `true` if the value is an integer in [-128, 127], `false` otherwise
|
|
34
|
+
*/
|
|
35
|
+
export const isInt8 = is;
|
|
36
|
+
/**
|
|
37
|
+
* Casts a `number` to the `Int8` branded type.
|
|
38
|
+
*
|
|
39
|
+
* Validates that the value is an integer in [-128, 127] and returns it with the
|
|
40
|
+
* `Int8` brand. Throws a `TypeError` otherwise.
|
|
41
|
+
*
|
|
42
|
+
* @param value - The value to cast
|
|
43
|
+
* @returns The value as an `Int8`
|
|
44
|
+
* @throws {TypeError} If the value is not an integer in [-128, 127]
|
|
45
|
+
*/
|
|
46
|
+
export const asInt8 = castType;
|
|
47
|
+
/**
|
|
48
|
+
* Namespace providing type-safe operations for the `Int8` branded type.
|
|
49
|
+
*
|
|
50
|
+
* The `Int8` type represents an integer in [-128, 127]. Division (`div`) uses
|
|
51
|
+
* floor division.
|
|
52
|
+
*/
|
|
53
|
+
export const Int8 = {
|
|
54
|
+
/**
|
|
55
|
+
* Type guard that checks if a value is an integer in [-128, 127].
|
|
56
|
+
*
|
|
57
|
+
* @param value - The value to check
|
|
58
|
+
* @returns `true` if the value is an integer in [-128, 127], `false` otherwise
|
|
59
|
+
* @see {@link isInt8} for usage examples
|
|
60
|
+
*/
|
|
61
|
+
is,
|
|
62
|
+
/**
|
|
63
|
+
* The smallest value representable as `Int8` (the lower saturation target of
|
|
64
|
+
* `fromNumber`).
|
|
65
|
+
*/
|
|
66
|
+
MIN_VALUE,
|
|
67
|
+
/**
|
|
68
|
+
* The largest value representable as `Int8` (the upper saturation target of
|
|
69
|
+
* `fromNumber`).
|
|
70
|
+
*/
|
|
71
|
+
MAX_VALUE,
|
|
72
|
+
/**
|
|
73
|
+
* Returns the smallest of the given integers.
|
|
74
|
+
*
|
|
75
|
+
* @param values - The integers to compare (at least one required)
|
|
76
|
+
* @returns The smallest value as an `Int8`
|
|
77
|
+
*/
|
|
78
|
+
min: min_,
|
|
79
|
+
/**
|
|
80
|
+
* Returns the largest of the given integers.
|
|
81
|
+
*
|
|
82
|
+
* @param values - The integers to compare (at least one required)
|
|
83
|
+
* @returns The largest value as an `Int8`
|
|
84
|
+
*/
|
|
85
|
+
max: max_,
|
|
86
|
+
/**
|
|
87
|
+
* Converts an arbitrary `number` into an `Int8`, rounding to the nearest
|
|
88
|
+
* integer and saturating the result into the range `[MIN_VALUE, MAX_VALUE]`.
|
|
89
|
+
*
|
|
90
|
+
* Unlike `asInt8`, this is total: out-of-range inputs are clamped to the
|
|
91
|
+
* nearest representable `Int8` instead of throwing.
|
|
92
|
+
*
|
|
93
|
+
* @param value - The value to convert
|
|
94
|
+
* @returns The value as an `Int8`
|
|
95
|
+
*/
|
|
96
|
+
fromNumber,
|
|
97
|
+
/**
|
|
98
|
+
* Returns the absolute value of an integer in [-128, 127].
|
|
99
|
+
*
|
|
100
|
+
* The result is non-negative and keeps the `Int8` brand.
|
|
101
|
+
*
|
|
102
|
+
* @param a - The integer value
|
|
103
|
+
* @returns The absolute value as a non-negative `Int8`
|
|
104
|
+
*/
|
|
105
|
+
abs,
|
|
106
|
+
/**
|
|
107
|
+
* Generates a random `Int8` within the given range.
|
|
108
|
+
*
|
|
109
|
+
* The range is inclusive on both ends.
|
|
110
|
+
*
|
|
111
|
+
* @param min - The minimum value (inclusive)
|
|
112
|
+
* @param max - The maximum value (inclusive)
|
|
113
|
+
* @returns A random `Int8` in `[min, max]`
|
|
114
|
+
*/
|
|
115
|
+
random,
|
|
116
|
+
/**
|
|
117
|
+
* Raises `a` to the power `b`, returning `a ** b` as an `Int8` (floored to an
|
|
118
|
+
* integer).
|
|
119
|
+
*
|
|
120
|
+
* @param a - The base integer
|
|
121
|
+
* @param b - The exponent integer
|
|
122
|
+
* @returns `a ** b` as an `Int8`
|
|
123
|
+
*/
|
|
124
|
+
pow,
|
|
125
|
+
/**
|
|
126
|
+
* Adds two integers, returning `a + b` as an `Int8`.
|
|
127
|
+
*
|
|
128
|
+
* @param a - The first integer
|
|
129
|
+
* @param b - The second integer
|
|
130
|
+
* @returns The sum of `a` and `b` as an `Int8`
|
|
131
|
+
*/
|
|
132
|
+
add,
|
|
133
|
+
/**
|
|
134
|
+
* Subtracts two integers, returning `a - b` as an `Int8`.
|
|
135
|
+
*
|
|
136
|
+
* @param a - The first integer
|
|
137
|
+
* @param b - The second integer
|
|
138
|
+
* @returns The difference of `a` and `b` as an `Int8`
|
|
139
|
+
*/
|
|
140
|
+
sub,
|
|
141
|
+
/**
|
|
142
|
+
* Multiplies two integers, returning `a * b` as an `Int8`.
|
|
143
|
+
*
|
|
144
|
+
* @param a - The first integer
|
|
145
|
+
* @param b - The second integer
|
|
146
|
+
* @returns The product of `a` and `b` as an `Int8`
|
|
147
|
+
*/
|
|
148
|
+
mul,
|
|
149
|
+
/**
|
|
150
|
+
* Divides two integers using floor division (`⌊a / b⌋`): the result is `a /
|
|
151
|
+
* b` rounded toward negative infinity, as an `Int8`.
|
|
152
|
+
*
|
|
153
|
+
* @param a - The dividend
|
|
154
|
+
* @param b - The divisor (must be non-zero)
|
|
155
|
+
* @returns The floored quotient as an `Int8`
|
|
156
|
+
*/
|
|
157
|
+
div,
|
|
142
158
|
};
|
|
143
159
|
|
|
144
|
-
|
|
145
|
-
//# sourceMappingURL=int8.mjs.map
|
|
160
|
+
//# sourceMappingURL=int8.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"int8.mjs","sources":["../../../src/number/enum/int8.mts"],"
|
|
1
|
+
{"version":3,"file":"int8.mjs","sourceRoot":"","sources":["../../../src/number/enum/int8.mts"],"names":[],"mappings":"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"}
|
|
@@ -1,26 +1,16 @@
|
|
|
1
|
-
import { TsDataForgeInternals } from '../refined-number-utils.mjs';
|
|
2
1
|
|
|
3
|
-
|
|
4
|
-
const
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
castType: castTypeImpl,
|
|
8
|
-
fromNumber: fromNumberImpl,
|
|
9
|
-
is: isImpl,
|
|
10
|
-
random: randomImpl
|
|
11
|
-
} = TsDataForgeInternals.RefinedNumberUtils.operatorsForInteger(
|
|
12
|
-
{
|
|
13
|
-
integerOrSafeInteger: "SafeInteger",
|
|
2
|
+
import { TsDataForgeInternals } from '../refined-number-utils.mjs';
|
|
3
|
+
const typeNameInMessage = 'an non-negative integer less than 256';
|
|
4
|
+
const { MAX_VALUE, MIN_VALUE, castType: castTypeImpl, fromNumber: fromNumberImpl, is: isImpl, random: randomImpl, } = TsDataForgeInternals.RefinedNumberUtils.operatorsForInteger({
|
|
5
|
+
integerOrSafeInteger: 'SafeInteger',
|
|
14
6
|
MIN_VALUE: 0,
|
|
15
7
|
MAX_VALUE: 255,
|
|
16
|
-
typeNameInMessage
|
|
17
|
-
|
|
18
|
-
);
|
|
8
|
+
typeNameInMessage,
|
|
9
|
+
});
|
|
19
10
|
const is = (x) => isImpl(x);
|
|
20
|
-
const castType = (x) =>
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
);
|
|
11
|
+
const castType = (x) =>
|
|
12
|
+
// eslint-disable-next-line total-functions/no-unsafe-type-assertion
|
|
13
|
+
castTypeImpl(x);
|
|
24
14
|
const fromNumber = (a) => castType(fromNumberImpl(a));
|
|
25
15
|
const min_ = (...values) => castType(Math.min(...values));
|
|
26
16
|
const max_ = (...values) => castType(Math.max(...values));
|
|
@@ -30,105 +20,129 @@ const sub = (x, y) => fromNumber(x - y);
|
|
|
30
20
|
const mul = (x, y) => fromNumber(x * y);
|
|
31
21
|
const div = (x, y) => fromNumber(Math.floor(x / y));
|
|
32
22
|
const random = (min, max) => castType(randomImpl(castTypeImpl(min), castTypeImpl(max)));
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
23
|
+
/**
|
|
24
|
+
* Type guard that checks if a value is an non-negative integer less than 256.
|
|
25
|
+
*
|
|
26
|
+
* Returns `true` for an non-negative integer less than 256 — a value with no
|
|
27
|
+
* fractional component.
|
|
28
|
+
*
|
|
29
|
+
* @param value - The value to check
|
|
30
|
+
* @returns `true` if the value is an non-negative integer less than 256, `false` otherwise
|
|
31
|
+
*/
|
|
32
|
+
export const isUint8 = is;
|
|
33
|
+
/**
|
|
34
|
+
* Casts a `number` to the `Uint8` branded type.
|
|
35
|
+
*
|
|
36
|
+
* Validates that the value is an non-negative integer less than 256 and returns
|
|
37
|
+
* it with the `Uint8` brand. Throws a `TypeError` otherwise.
|
|
38
|
+
*
|
|
39
|
+
* @param value - The value to cast
|
|
40
|
+
* @returns The value as an `Uint8`
|
|
41
|
+
* @throws {TypeError} If the value is not an non-negative integer less than 256
|
|
42
|
+
*/
|
|
43
|
+
export const asUint8 = castType;
|
|
44
|
+
/**
|
|
45
|
+
* Namespace providing type-safe operations for the `Uint8` branded type.
|
|
46
|
+
*
|
|
47
|
+
* The `Uint8` type represents an non-negative integer less than 256. Division
|
|
48
|
+
* (`div`) uses floor division.
|
|
49
|
+
*/
|
|
50
|
+
export const Uint8 = {
|
|
51
|
+
/**
|
|
52
|
+
* Type guard that checks if a value is an non-negative integer less than 256.
|
|
53
|
+
*
|
|
54
|
+
* @param value - The value to check
|
|
55
|
+
* @returns `true` if the value is an non-negative integer less than 256, `false` otherwise
|
|
56
|
+
* @see {@link isUint8} for usage examples
|
|
57
|
+
*/
|
|
58
|
+
is,
|
|
59
|
+
/**
|
|
60
|
+
* The smallest value representable as `Uint8` (the lower saturation target of
|
|
61
|
+
* `fromNumber`).
|
|
62
|
+
*/
|
|
63
|
+
MIN_VALUE,
|
|
64
|
+
/**
|
|
65
|
+
* The largest value representable as `Uint8` (the upper saturation target of
|
|
66
|
+
* `fromNumber`).
|
|
67
|
+
*/
|
|
68
|
+
MAX_VALUE,
|
|
69
|
+
/**
|
|
70
|
+
* Returns the largest of the given non-negative integers.
|
|
71
|
+
*
|
|
72
|
+
* @param values - The non-negative integers to compare (at least one required)
|
|
73
|
+
* @returns The largest value as an `Uint8`
|
|
74
|
+
*/
|
|
75
|
+
max: max_,
|
|
76
|
+
/**
|
|
77
|
+
* Returns the smallest of the given non-negative integers.
|
|
78
|
+
*
|
|
79
|
+
* @param values - The non-negative integers to compare (at least one required)
|
|
80
|
+
* @returns The smallest value as an `Uint8`
|
|
81
|
+
*/
|
|
82
|
+
min: min_,
|
|
83
|
+
/**
|
|
84
|
+
* Converts an arbitrary `number` into an `Uint8`, rounding to the nearest
|
|
85
|
+
* integer and saturating the result into the range `[MIN_VALUE, MAX_VALUE]`.
|
|
86
|
+
*
|
|
87
|
+
* Unlike `asUint8`, this is total: out-of-range inputs are clamped to the
|
|
88
|
+
* nearest representable `Uint8` instead of throwing.
|
|
89
|
+
*
|
|
90
|
+
* @param value - The value to convert
|
|
91
|
+
* @returns The value as an `Uint8`
|
|
92
|
+
*/
|
|
93
|
+
fromNumber,
|
|
94
|
+
/**
|
|
95
|
+
* Generates a random `Uint8` within the given range.
|
|
96
|
+
*
|
|
97
|
+
* The range is inclusive on both ends.
|
|
98
|
+
*
|
|
99
|
+
* @param min - The minimum value (inclusive)
|
|
100
|
+
* @param max - The maximum value (inclusive)
|
|
101
|
+
* @returns A random `Uint8` in `[min, max]`
|
|
102
|
+
*/
|
|
103
|
+
random,
|
|
104
|
+
/**
|
|
105
|
+
* Raises `a` to the power `b`, returning `a ** b` as an `Uint8` (floored to
|
|
106
|
+
* an integer).
|
|
107
|
+
*
|
|
108
|
+
* @param a - The base non-negative integer
|
|
109
|
+
* @param b - The exponent non-negative integer
|
|
110
|
+
* @returns `a ** b` as an `Uint8`
|
|
111
|
+
*/
|
|
112
|
+
pow,
|
|
113
|
+
/**
|
|
114
|
+
* Adds two non-negative integers, returning `a + b` as an `Uint8`.
|
|
115
|
+
*
|
|
116
|
+
* @param a - The first non-negative integer
|
|
117
|
+
* @param b - The second non-negative integer
|
|
118
|
+
* @returns The sum of `a` and `b` as an `Uint8`
|
|
119
|
+
*/
|
|
120
|
+
add,
|
|
121
|
+
/**
|
|
122
|
+
* Subtracts two non-negative integers, returning `a - b` as an `Uint8`.
|
|
123
|
+
*
|
|
124
|
+
* @param a - The first non-negative integer
|
|
125
|
+
* @param b - The second non-negative integer
|
|
126
|
+
* @returns The difference of `a` and `b` as an `Uint8`
|
|
127
|
+
*/
|
|
128
|
+
sub,
|
|
129
|
+
/**
|
|
130
|
+
* Multiplies two non-negative integers, returning `a * b` as an `Uint8`.
|
|
131
|
+
*
|
|
132
|
+
* @param a - The first non-negative integer
|
|
133
|
+
* @param b - The second non-negative integer
|
|
134
|
+
* @returns The product of `a` and `b` as an `Uint8`
|
|
135
|
+
*/
|
|
136
|
+
mul,
|
|
137
|
+
/**
|
|
138
|
+
* Divides two non-negative integers using floor division (`⌊a / b⌋`): the
|
|
139
|
+
* result is `a / b` rounded toward negative infinity, as an `Uint8`.
|
|
140
|
+
*
|
|
141
|
+
* @param a - The dividend
|
|
142
|
+
* @param b - The divisor (must be non-zero)
|
|
143
|
+
* @returns The floored quotient as an `Uint8`
|
|
144
|
+
*/
|
|
145
|
+
div,
|
|
131
146
|
};
|
|
132
147
|
|
|
133
|
-
|
|
134
|
-
//# sourceMappingURL=uint8.mjs.map
|
|
148
|
+
//# sourceMappingURL=uint8.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"uint8.mjs","sources":["../../../src/number/enum/uint8.mts"],"
|
|
1
|
+
{"version":3,"file":"uint8.mjs","sourceRoot":"","sources":["../../../src/number/enum/uint8.mts"],"names":[],"mappings":"AAKA,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAInE,MAAM,iBAAiB,GAAG,uCAAuC,CAAC;AAElE,MAAM,EACJ,SAAS,EACT,SAAS,EACT,QAAQ,EAAE,YAAY,EACtB,UAAU,EAAE,cAAc,EAC1B,EAAE,EAAE,MAAM,EACV,MAAM,EAAE,UAAU,GACnB,GAAG,oBAAoB,CAAC,kBAAkB,CAAC,mBAAmB,CAC7D;IACE,oBAAoB,EAAE,aAAa;IACnC,SAAS,EAAE,CAAC;IACZ,SAAS,EAAE,GAAG;IACd,iBAAiB;CACT,CACX,CAAC;AAEF,MAAM,EAAE,GAAG,CAAC,CAAS,EAAc,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;AAEhD,MAAM,QAAQ,GAAG,CAAC,CAAS,EAAS,EAAE;AACpC,oEAAoE;AACpE,YAAY,CAAC,CAAC,CAAU,CAAC;AAE3B,MAAM,UAAU,GAAG,CAAC,CAAS,EAAS,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;AAErE,MAAM,IAAI,GAAG,CAAC,GAAG,MAAwB,EAAS,EAAE,CAClD,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC;AAEhC,MAAM,IAAI,GAAG,CAAC,GAAG,MAAwB,EAAS,EAAE,CAClD,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC;AAEhC,MAAM,GAAG,GAAG,CAAC,CAAQ,EAAE,CAAQ,EAAS,EAAE,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;AAE9D,MAAM,GAAG,GAAG,CAAC,CAAQ,EAAE,CAAQ,EAAS,EAAE,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;AAE7D,MAAM,GAAG,GAAG,CAAC,CAAQ,EAAE,CAAQ,EAAS,EAAE,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;AAE7D,MAAM,GAAG,GAAG,CAAC,CAAQ,EAAE,CAAQ,EAAS,EAAE,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;AAE7D,MAAM,GAAG,GAAG,CAAC,CAAQ,EAAE,CAA0B,EAAS,EAAE,CAC1D,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;AAEhC,MAAM,MAAM,GAAG,CAAC,GAAU,EAAE,GAAU,EAAS,EAAE,CAC/C,QAAQ,CAAC,UAAU,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;AAE7D;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,OAAO,GAAG,EAAE,CAAC;AAE1B;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,OAAO,GAAG,QAAQ,CAAC;AAEhC;;;;;GAKG;AACH,MAAM,CAAC,MAAM,KAAK,GAAG;IACnB;;;;;;OAMG;IACH,EAAE;IAEF;;;OAGG;IACH,SAAS;IAET;;;OAGG;IACH,SAAS;IAET;;;;;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"}
|