@nberlette/math 0.7.0 → 0.7.1
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/cjs/abs.d.ts +7 -0
- package/cjs/abs.d.ts.map +1 -1
- package/cjs/abs.js +7 -0
- package/cjs/abs.js.map +1 -1
- package/cjs/acos.d.ts +7 -0
- package/cjs/acos.d.ts.map +1 -1
- package/cjs/acos.js +7 -0
- package/cjs/acos.js.map +1 -1
- package/cjs/acosh.d.ts.map +1 -1
- package/cjs/acosh.js +7 -0
- package/cjs/acosh.js.map +1 -1
- package/cjs/asin.d.ts.map +1 -1
- package/cjs/asin.js +7 -0
- package/cjs/asin.js.map +1 -1
- package/cjs/asinh.d.ts.map +1 -1
- package/cjs/asinh.js +7 -0
- package/cjs/asinh.js.map +1 -1
- package/cjs/atan.d.ts.map +1 -1
- package/cjs/atan.js +7 -0
- package/cjs/atan.js.map +1 -1
- package/cjs/atan2.d.ts.map +1 -1
- package/cjs/atan2.js +7 -0
- package/cjs/atan2.js.map +1 -1
- package/cjs/atanh.d.ts.map +1 -1
- package/cjs/atanh.js +7 -0
- package/cjs/atanh.js.map +1 -1
- package/cjs/cbrt.d.ts.map +1 -1
- package/cjs/cbrt.js +7 -0
- package/cjs/cbrt.js.map +1 -1
- package/cjs/ceil.d.ts +7 -0
- package/cjs/ceil.d.ts.map +1 -1
- package/cjs/ceil.js +7 -0
- package/cjs/ceil.js.map +1 -1
- package/cjs/clamp.d.ts.map +1 -1
- package/cjs/clamp.js +7 -0
- package/cjs/clamp.js.map +1 -1
- package/cjs/clz32.d.ts +7 -0
- package/cjs/clz32.d.ts.map +1 -1
- package/cjs/clz32.js +7 -0
- package/cjs/clz32.js.map +1 -1
- package/cjs/constants/e.d.ts +7 -0
- package/cjs/constants/e.d.ts.map +1 -1
- package/cjs/constants/e.js +7 -0
- package/cjs/constants/e.js.map +1 -1
- package/cjs/constants/epsilon.d.ts +7 -0
- package/cjs/constants/epsilon.d.ts.map +1 -1
- package/cjs/constants/epsilon.js +7 -0
- package/cjs/constants/epsilon.js.map +1 -1
- package/cjs/constants/index.d.ts +9 -0
- package/cjs/constants/index.d.ts.map +1 -1
- package/cjs/constants/index.js +9 -0
- package/cjs/constants/index.js.map +1 -1
- package/cjs/constants/infinity.d.ts +15 -0
- package/cjs/constants/infinity.d.ts.map +1 -1
- package/cjs/constants/infinity.js +15 -0
- package/cjs/constants/infinity.js.map +1 -1
- package/cjs/constants/ln10.d.ts +47 -3
- package/cjs/constants/ln10.d.ts.map +1 -1
- package/cjs/constants/ln10.js +33 -3
- package/cjs/constants/ln10.js.map +1 -1
- package/cjs/constants/ln2.d.ts +14 -0
- package/cjs/constants/ln2.d.ts.map +1 -1
- package/cjs/constants/ln2.js +14 -0
- package/cjs/constants/ln2.js.map +1 -1
- package/cjs/constants/log10e.d.ts +14 -0
- package/cjs/constants/log10e.d.ts.map +1 -1
- package/cjs/constants/log10e.js +14 -0
- package/cjs/constants/log10e.js.map +1 -1
- package/cjs/constants/log2e.d.ts +14 -0
- package/cjs/constants/log2e.d.ts.map +1 -1
- package/cjs/constants/log2e.js +14 -0
- package/cjs/constants/log2e.js.map +1 -1
- package/cjs/constants/max_safe_integer.d.ts +14 -0
- package/cjs/constants/max_safe_integer.d.ts.map +1 -1
- package/cjs/constants/max_safe_integer.js +14 -0
- package/cjs/constants/max_safe_integer.js.map +1 -1
- package/cjs/constants/max_value.d.ts +14 -0
- package/cjs/constants/max_value.d.ts.map +1 -1
- package/cjs/constants/max_value.js +14 -0
- package/cjs/constants/max_value.js.map +1 -1
- package/cjs/constants/min_safe_integer.d.ts +14 -0
- package/cjs/constants/min_safe_integer.d.ts.map +1 -1
- package/cjs/constants/min_safe_integer.js +14 -0
- package/cjs/constants/min_safe_integer.js.map +1 -1
- package/cjs/constants/min_value.d.ts +14 -0
- package/cjs/constants/min_value.d.ts.map +1 -1
- package/cjs/constants/min_value.js +14 -0
- package/cjs/constants/min_value.js.map +1 -1
- package/cjs/constants/nan.d.ts +7 -0
- package/cjs/constants/nan.d.ts.map +1 -1
- package/cjs/constants/nan.js +7 -0
- package/cjs/constants/nan.js.map +1 -1
- package/cjs/constants/negative_infinity.d.ts +14 -0
- package/cjs/constants/negative_infinity.d.ts.map +1 -1
- package/cjs/constants/negative_infinity.js +14 -0
- package/cjs/constants/negative_infinity.js.map +1 -1
- package/cjs/constants/pi.d.ts +14 -0
- package/cjs/constants/pi.d.ts.map +1 -1
- package/cjs/constants/pi.js +14 -0
- package/cjs/constants/pi.js.map +1 -1
- package/cjs/constants/positive_infinity.d.ts +14 -0
- package/cjs/constants/positive_infinity.d.ts.map +1 -1
- package/cjs/constants/positive_infinity.js +14 -0
- package/cjs/constants/positive_infinity.js.map +1 -1
- package/cjs/constants/positive_zero.d.ts +7 -0
- package/cjs/constants/positive_zero.d.ts.map +1 -1
- package/cjs/constants/positive_zero.js +7 -0
- package/cjs/constants/positive_zero.js.map +1 -1
- package/cjs/constants/sqrt1_2.d.ts +14 -0
- package/cjs/constants/sqrt1_2.d.ts.map +1 -1
- package/cjs/constants/sqrt1_2.js +14 -0
- package/cjs/constants/sqrt1_2.js.map +1 -1
- package/cjs/constants/sqrt2.d.ts +14 -0
- package/cjs/constants/sqrt2.d.ts.map +1 -1
- package/cjs/constants/sqrt2.js +14 -0
- package/cjs/constants/sqrt2.js.map +1 -1
- package/cjs/cos.d.ts.map +1 -1
- package/cjs/cos.js +7 -0
- package/cjs/cos.js.map +1 -1
- package/cjs/cosh.d.ts.map +1 -1
- package/cjs/cosh.js +7 -0
- package/cjs/cosh.js.map +1 -1
- package/cjs/exp.d.ts.map +1 -1
- package/cjs/exp.js +10 -0
- package/cjs/exp.js.map +1 -1
- package/cjs/expm1.d.ts.map +1 -1
- package/cjs/expm1.js +7 -0
- package/cjs/expm1.js.map +1 -1
- package/cjs/f16round.d.ts.map +1 -1
- package/cjs/f16round.js +7 -0
- package/cjs/f16round.js.map +1 -1
- package/cjs/float16/constants.d.ts +7 -0
- package/cjs/float16/constants.d.ts.map +1 -1
- package/cjs/float16/constants.js +7 -0
- package/cjs/float16/constants.js.map +1 -1
- package/cjs/float16/decode.d.ts.map +1 -1
- package/cjs/float16/decode.js +7 -0
- package/cjs/float16/decode.js.map +1 -1
- package/cjs/float16/encode.d.ts +7 -0
- package/cjs/float16/encode.d.ts.map +1 -1
- package/cjs/float16/encode.js +7 -0
- package/cjs/float16/encode.js.map +1 -1
- package/cjs/float16/guards.d.ts.map +1 -1
- package/cjs/float16/guards.js +8 -0
- package/cjs/float16/guards.js.map +1 -1
- package/cjs/float16/index.d.ts +9 -0
- package/cjs/float16/index.d.ts.map +1 -1
- package/cjs/float16/index.js +9 -0
- package/cjs/float16/index.js.map +1 -1
- package/cjs/float16/round.d.ts.map +1 -1
- package/cjs/float16/round.js +7 -0
- package/cjs/float16/round.js.map +1 -1
- package/cjs/float32/constants.d.ts +7 -0
- package/cjs/float32/constants.d.ts.map +1 -1
- package/cjs/float32/constants.js +7 -0
- package/cjs/float32/constants.js.map +1 -1
- package/cjs/float32/decode.d.ts.map +1 -1
- package/cjs/float32/decode.js +7 -0
- package/cjs/float32/decode.js.map +1 -1
- package/cjs/float32/encode.d.ts.map +1 -1
- package/cjs/float32/encode.js +7 -0
- package/cjs/float32/encode.js.map +1 -1
- package/cjs/float32/guards.d.ts.map +1 -1
- package/cjs/float32/guards.js +9 -0
- package/cjs/float32/guards.js.map +1 -1
- package/cjs/float32/index.d.ts +9 -0
- package/cjs/float32/index.d.ts.map +1 -1
- package/cjs/float32/index.js +9 -0
- package/cjs/float32/index.js.map +1 -1
- package/cjs/float32/round.d.ts.map +1 -1
- package/cjs/float32/round.js +7 -0
- package/cjs/float32/round.js.map +1 -1
- package/cjs/floor.d.ts.map +1 -1
- package/cjs/floor.js +7 -0
- package/cjs/floor.js.map +1 -1
- package/cjs/fround.d.ts.map +1 -1
- package/cjs/fround.js +7 -0
- package/cjs/fround.js.map +1 -1
- package/cjs/guards/finite.d.ts.map +1 -1
- package/cjs/guards/finite.js +8 -0
- package/cjs/guards/finite.js.map +1 -1
- package/cjs/guards/index.d.ts +10 -0
- package/cjs/guards/index.d.ts.map +1 -1
- package/cjs/guards/index.js +10 -0
- package/cjs/guards/index.js.map +1 -1
- package/cjs/guards/infinity.d.ts +15 -0
- package/cjs/guards/infinity.d.ts.map +1 -1
- package/cjs/guards/infinity.js +15 -0
- package/cjs/guards/infinity.js.map +1 -1
- package/cjs/guards/integer.d.ts +8 -0
- package/cjs/guards/integer.d.ts.map +1 -1
- package/cjs/guards/integer.js.map +1 -1
- package/cjs/guards/negative_infinity.d.ts +7 -0
- package/cjs/guards/negative_infinity.d.ts.map +1 -1
- package/cjs/guards/negative_infinity.js +7 -0
- package/cjs/guards/negative_infinity.js.map +1 -1
- package/cjs/guards/negative_zero.d.ts.map +1 -1
- package/cjs/guards/negative_zero.js +7 -0
- package/cjs/guards/negative_zero.js.map +1 -1
- package/cjs/guards/positive_infinity.d.ts +7 -0
- package/cjs/guards/positive_infinity.d.ts.map +1 -1
- package/cjs/guards/positive_infinity.js +7 -0
- package/cjs/guards/positive_infinity.js.map +1 -1
- package/cjs/guards/positive_zero.d.ts +8 -0
- package/cjs/guards/positive_zero.d.ts.map +1 -1
- package/cjs/guards/positive_zero.js +8 -0
- package/cjs/guards/positive_zero.js.map +1 -1
- package/cjs/guards/safe_integer.d.ts.map +1 -1
- package/cjs/guards/safe_integer.js +8 -0
- package/cjs/guards/safe_integer.js.map +1 -1
- package/cjs/hypot.d.ts.map +1 -1
- package/cjs/hypot.js +7 -0
- package/cjs/hypot.js.map +1 -1
- package/cjs/ieee754.d.ts +9 -0
- package/cjs/ieee754.d.ts.map +1 -1
- package/cjs/ieee754.js +9 -0
- package/cjs/ieee754.js.map +1 -1
- package/cjs/imul.d.ts +7 -0
- package/cjs/imul.d.ts.map +1 -1
- package/cjs/imul.js +7 -0
- package/cjs/imul.js.map +1 -1
- package/cjs/index.d.ts +1 -0
- package/cjs/index.d.ts.map +1 -1
- package/cjs/index.js +1 -0
- package/cjs/index.js.map +1 -1
- package/cjs/log.d.ts.map +1 -1
- package/cjs/log.js +7 -0
- package/cjs/log.js.map +1 -1
- package/cjs/log10.d.ts.map +1 -1
- package/cjs/log10.js +7 -0
- package/cjs/log10.js.map +1 -1
- package/cjs/log1p.d.ts.map +1 -1
- package/cjs/log1p.js +7 -0
- package/cjs/log1p.js.map +1 -1
- package/cjs/log2.d.ts.map +1 -1
- package/cjs/log2.js +7 -0
- package/cjs/log2.js.map +1 -1
- package/cjs/max.d.ts.map +1 -1
- package/cjs/max.js +4 -5
- package/cjs/max.js.map +1 -1
- package/cjs/min.d.ts.map +1 -1
- package/cjs/min.js +7 -0
- package/cjs/min.js.map +1 -1
- package/cjs/pow.d.ts +7 -0
- package/cjs/pow.d.ts.map +1 -1
- package/cjs/pow.js +7 -0
- package/cjs/pow.js.map +1 -1
- package/cjs/random.d.ts +19 -1
- package/cjs/random.d.ts.map +1 -1
- package/cjs/random.js +8 -12
- package/cjs/random.js.map +1 -1
- package/cjs/round.d.ts.map +1 -1
- package/cjs/round.js +7 -0
- package/cjs/round.js.map +1 -1
- package/cjs/sign.d.ts +7 -0
- package/cjs/sign.d.ts.map +1 -1
- package/cjs/sign.js +7 -0
- package/cjs/sign.js.map +1 -1
- package/cjs/sin.d.ts +7 -0
- package/cjs/sin.d.ts.map +1 -1
- package/cjs/sin.js +7 -0
- package/cjs/sin.js.map +1 -1
- package/cjs/sinh.d.ts +7 -0
- package/cjs/sinh.d.ts.map +1 -1
- package/cjs/sinh.js +7 -0
- package/cjs/sinh.js.map +1 -1
- package/cjs/sqrt.d.ts +1 -0
- package/cjs/sqrt.d.ts.map +1 -1
- package/cjs/sqrt.js +8 -0
- package/cjs/sqrt.js.map +1 -1
- package/cjs/tan.d.ts.map +1 -1
- package/cjs/tan.js +7 -0
- package/cjs/tan.js.map +1 -1
- package/cjs/tanh.d.ts +7 -0
- package/cjs/tanh.d.ts.map +1 -1
- package/cjs/tanh.js +7 -0
- package/cjs/tanh.js.map +1 -1
- package/cjs/trunc.d.ts.map +1 -1
- package/cjs/trunc.js +4 -6
- package/cjs/trunc.js.map +1 -1
- package/cjs/types/finite.d.ts +15 -0
- package/cjs/types/finite.d.ts.map +1 -1
- package/cjs/types/finite.js +15 -0
- package/cjs/types/finite.js.map +1 -1
- package/cjs/types/float.d.ts +8 -0
- package/cjs/types/float.d.ts.map +1 -1
- package/cjs/types/float.js.map +1 -1
- package/cjs/types/index.d.ts +7 -0
- package/cjs/types/index.d.ts.map +1 -1
- package/cjs/types/index.js +7 -0
- package/cjs/types/index.js.map +1 -1
- package/cjs/types/integer.d.ts +8 -0
- package/cjs/types/integer.d.ts.map +1 -1
- package/cjs/types/integer.js.map +1 -1
- package/cjs/types/precision.d.ts +8 -0
- package/cjs/types/precision.d.ts.map +1 -1
- package/cjs/types/precision.js +8 -0
- package/cjs/types/precision.js.map +1 -1
- package/cjs/types/safe_integer.d.ts +18 -0
- package/cjs/types/safe_integer.d.ts.map +1 -1
- package/cjs/types/safe_integer.js +18 -0
- package/cjs/types/safe_integer.js.map +1 -1
- package/esm/abs.d.ts +7 -0
- package/esm/abs.d.ts.map +1 -1
- package/esm/abs.js +7 -0
- package/esm/abs.js.map +1 -1
- package/esm/acos.d.ts +7 -0
- package/esm/acos.d.ts.map +1 -1
- package/esm/acos.js +7 -0
- package/esm/acos.js.map +1 -1
- package/esm/acosh.d.ts.map +1 -1
- package/esm/acosh.js +7 -0
- package/esm/acosh.js.map +1 -1
- package/esm/asin.d.ts.map +1 -1
- package/esm/asin.js +7 -0
- package/esm/asin.js.map +1 -1
- package/esm/asinh.d.ts.map +1 -1
- package/esm/asinh.js +7 -0
- package/esm/asinh.js.map +1 -1
- package/esm/atan.d.ts.map +1 -1
- package/esm/atan.js +7 -0
- package/esm/atan.js.map +1 -1
- package/esm/atan2.d.ts.map +1 -1
- package/esm/atan2.js +7 -0
- package/esm/atan2.js.map +1 -1
- package/esm/atanh.d.ts.map +1 -1
- package/esm/atanh.js +7 -0
- package/esm/atanh.js.map +1 -1
- package/esm/cbrt.d.ts.map +1 -1
- package/esm/cbrt.js +7 -0
- package/esm/cbrt.js.map +1 -1
- package/esm/ceil.d.ts +7 -0
- package/esm/ceil.d.ts.map +1 -1
- package/esm/ceil.js +7 -0
- package/esm/ceil.js.map +1 -1
- package/esm/clamp.d.ts.map +1 -1
- package/esm/clamp.js +7 -0
- package/esm/clamp.js.map +1 -1
- package/esm/clz32.d.ts +7 -0
- package/esm/clz32.d.ts.map +1 -1
- package/esm/clz32.js +7 -0
- package/esm/clz32.js.map +1 -1
- package/esm/constants/e.d.ts +7 -0
- package/esm/constants/e.d.ts.map +1 -1
- package/esm/constants/e.js +7 -0
- package/esm/constants/e.js.map +1 -1
- package/esm/constants/epsilon.d.ts +7 -0
- package/esm/constants/epsilon.d.ts.map +1 -1
- package/esm/constants/epsilon.js +7 -0
- package/esm/constants/epsilon.js.map +1 -1
- package/esm/constants/index.d.ts +9 -0
- package/esm/constants/index.d.ts.map +1 -1
- package/esm/constants/index.js +9 -0
- package/esm/constants/index.js.map +1 -1
- package/esm/constants/infinity.d.ts +15 -0
- package/esm/constants/infinity.d.ts.map +1 -1
- package/esm/constants/infinity.js +15 -0
- package/esm/constants/infinity.js.map +1 -1
- package/esm/constants/ln10.d.ts +47 -3
- package/esm/constants/ln10.d.ts.map +1 -1
- package/esm/constants/ln10.js +33 -3
- package/esm/constants/ln10.js.map +1 -1
- package/esm/constants/ln2.d.ts +14 -0
- package/esm/constants/ln2.d.ts.map +1 -1
- package/esm/constants/ln2.js +14 -0
- package/esm/constants/ln2.js.map +1 -1
- package/esm/constants/log10e.d.ts +14 -0
- package/esm/constants/log10e.d.ts.map +1 -1
- package/esm/constants/log10e.js +14 -0
- package/esm/constants/log10e.js.map +1 -1
- package/esm/constants/log2e.d.ts +14 -0
- package/esm/constants/log2e.d.ts.map +1 -1
- package/esm/constants/log2e.js +14 -0
- package/esm/constants/log2e.js.map +1 -1
- package/esm/constants/max_safe_integer.d.ts +14 -0
- package/esm/constants/max_safe_integer.d.ts.map +1 -1
- package/esm/constants/max_safe_integer.js +14 -0
- package/esm/constants/max_safe_integer.js.map +1 -1
- package/esm/constants/max_value.d.ts +14 -0
- package/esm/constants/max_value.d.ts.map +1 -1
- package/esm/constants/max_value.js +14 -0
- package/esm/constants/max_value.js.map +1 -1
- package/esm/constants/min_safe_integer.d.ts +14 -0
- package/esm/constants/min_safe_integer.d.ts.map +1 -1
- package/esm/constants/min_safe_integer.js +14 -0
- package/esm/constants/min_safe_integer.js.map +1 -1
- package/esm/constants/min_value.d.ts +14 -0
- package/esm/constants/min_value.d.ts.map +1 -1
- package/esm/constants/min_value.js +14 -0
- package/esm/constants/min_value.js.map +1 -1
- package/esm/constants/nan.d.ts +7 -0
- package/esm/constants/nan.d.ts.map +1 -1
- package/esm/constants/nan.js +7 -0
- package/esm/constants/nan.js.map +1 -1
- package/esm/constants/negative_infinity.d.ts +14 -0
- package/esm/constants/negative_infinity.d.ts.map +1 -1
- package/esm/constants/negative_infinity.js +14 -0
- package/esm/constants/negative_infinity.js.map +1 -1
- package/esm/constants/pi.d.ts +14 -0
- package/esm/constants/pi.d.ts.map +1 -1
- package/esm/constants/pi.js +14 -0
- package/esm/constants/pi.js.map +1 -1
- package/esm/constants/positive_infinity.d.ts +14 -0
- package/esm/constants/positive_infinity.d.ts.map +1 -1
- package/esm/constants/positive_infinity.js +14 -0
- package/esm/constants/positive_infinity.js.map +1 -1
- package/esm/constants/positive_zero.d.ts +7 -0
- package/esm/constants/positive_zero.d.ts.map +1 -1
- package/esm/constants/positive_zero.js +7 -0
- package/esm/constants/positive_zero.js.map +1 -1
- package/esm/constants/sqrt1_2.d.ts +14 -0
- package/esm/constants/sqrt1_2.d.ts.map +1 -1
- package/esm/constants/sqrt1_2.js +14 -0
- package/esm/constants/sqrt1_2.js.map +1 -1
- package/esm/constants/sqrt2.d.ts +14 -0
- package/esm/constants/sqrt2.d.ts.map +1 -1
- package/esm/constants/sqrt2.js +14 -0
- package/esm/constants/sqrt2.js.map +1 -1
- package/esm/cos.d.ts.map +1 -1
- package/esm/cos.js +7 -0
- package/esm/cos.js.map +1 -1
- package/esm/cosh.d.ts.map +1 -1
- package/esm/cosh.js +7 -0
- package/esm/cosh.js.map +1 -1
- package/esm/exp.d.ts.map +1 -1
- package/esm/exp.js +10 -0
- package/esm/exp.js.map +1 -1
- package/esm/expm1.d.ts.map +1 -1
- package/esm/expm1.js +7 -0
- package/esm/expm1.js.map +1 -1
- package/esm/f16round.d.ts.map +1 -1
- package/esm/f16round.js +7 -0
- package/esm/f16round.js.map +1 -1
- package/esm/float16/constants.d.ts +7 -0
- package/esm/float16/constants.d.ts.map +1 -1
- package/esm/float16/constants.js +7 -0
- package/esm/float16/constants.js.map +1 -1
- package/esm/float16/decode.d.ts.map +1 -1
- package/esm/float16/decode.js +7 -0
- package/esm/float16/decode.js.map +1 -1
- package/esm/float16/encode.d.ts +7 -0
- package/esm/float16/encode.d.ts.map +1 -1
- package/esm/float16/encode.js +7 -0
- package/esm/float16/encode.js.map +1 -1
- package/esm/float16/guards.d.ts.map +1 -1
- package/esm/float16/guards.js +8 -0
- package/esm/float16/guards.js.map +1 -1
- package/esm/float16/index.d.ts +9 -0
- package/esm/float16/index.d.ts.map +1 -1
- package/esm/float16/index.js +9 -0
- package/esm/float16/index.js.map +1 -1
- package/esm/float16/round.d.ts.map +1 -1
- package/esm/float16/round.js +7 -0
- package/esm/float16/round.js.map +1 -1
- package/esm/float32/constants.d.ts +7 -0
- package/esm/float32/constants.d.ts.map +1 -1
- package/esm/float32/constants.js +7 -0
- package/esm/float32/constants.js.map +1 -1
- package/esm/float32/decode.d.ts.map +1 -1
- package/esm/float32/decode.js +7 -0
- package/esm/float32/decode.js.map +1 -1
- package/esm/float32/encode.d.ts.map +1 -1
- package/esm/float32/encode.js +7 -0
- package/esm/float32/encode.js.map +1 -1
- package/esm/float32/guards.d.ts.map +1 -1
- package/esm/float32/guards.js +9 -0
- package/esm/float32/guards.js.map +1 -1
- package/esm/float32/index.d.ts +9 -0
- package/esm/float32/index.d.ts.map +1 -1
- package/esm/float32/index.js +9 -0
- package/esm/float32/index.js.map +1 -1
- package/esm/float32/round.d.ts.map +1 -1
- package/esm/float32/round.js +7 -0
- package/esm/float32/round.js.map +1 -1
- package/esm/floor.d.ts.map +1 -1
- package/esm/floor.js +7 -0
- package/esm/floor.js.map +1 -1
- package/esm/fround.d.ts.map +1 -1
- package/esm/fround.js +7 -0
- package/esm/fround.js.map +1 -1
- package/esm/guards/finite.d.ts.map +1 -1
- package/esm/guards/finite.js +8 -0
- package/esm/guards/finite.js.map +1 -1
- package/esm/guards/index.d.ts +10 -0
- package/esm/guards/index.d.ts.map +1 -1
- package/esm/guards/index.js +10 -0
- package/esm/guards/index.js.map +1 -1
- package/esm/guards/infinity.d.ts +15 -0
- package/esm/guards/infinity.d.ts.map +1 -1
- package/esm/guards/infinity.js +15 -0
- package/esm/guards/infinity.js.map +1 -1
- package/esm/guards/integer.d.ts +8 -0
- package/esm/guards/integer.d.ts.map +1 -1
- package/esm/guards/integer.js.map +1 -1
- package/esm/guards/negative_infinity.d.ts +7 -0
- package/esm/guards/negative_infinity.d.ts.map +1 -1
- package/esm/guards/negative_infinity.js +7 -0
- package/esm/guards/negative_infinity.js.map +1 -1
- package/esm/guards/negative_zero.d.ts.map +1 -1
- package/esm/guards/negative_zero.js +7 -0
- package/esm/guards/negative_zero.js.map +1 -1
- package/esm/guards/positive_infinity.d.ts +7 -0
- package/esm/guards/positive_infinity.d.ts.map +1 -1
- package/esm/guards/positive_infinity.js +7 -0
- package/esm/guards/positive_infinity.js.map +1 -1
- package/esm/guards/positive_zero.d.ts +8 -0
- package/esm/guards/positive_zero.d.ts.map +1 -1
- package/esm/guards/positive_zero.js +8 -0
- package/esm/guards/positive_zero.js.map +1 -1
- package/esm/guards/safe_integer.d.ts.map +1 -1
- package/esm/guards/safe_integer.js +8 -0
- package/esm/guards/safe_integer.js.map +1 -1
- package/esm/hypot.d.ts.map +1 -1
- package/esm/hypot.js +7 -0
- package/esm/hypot.js.map +1 -1
- package/esm/ieee754.d.ts +9 -0
- package/esm/ieee754.d.ts.map +1 -1
- package/esm/ieee754.js +9 -0
- package/esm/ieee754.js.map +1 -1
- package/esm/imul.d.ts +7 -0
- package/esm/imul.d.ts.map +1 -1
- package/esm/imul.js +7 -0
- package/esm/imul.js.map +1 -1
- package/esm/index.d.ts +1 -0
- package/esm/index.d.ts.map +1 -1
- package/esm/index.js +1 -0
- package/esm/index.js.map +1 -1
- package/esm/log.d.ts.map +1 -1
- package/esm/log.js +7 -0
- package/esm/log.js.map +1 -1
- package/esm/log10.d.ts.map +1 -1
- package/esm/log10.js +7 -0
- package/esm/log10.js.map +1 -1
- package/esm/log1p.d.ts.map +1 -1
- package/esm/log1p.js +7 -0
- package/esm/log1p.js.map +1 -1
- package/esm/log2.d.ts.map +1 -1
- package/esm/log2.js +7 -0
- package/esm/log2.js.map +1 -1
- package/esm/max.d.ts.map +1 -1
- package/esm/max.js +4 -5
- package/esm/max.js.map +1 -1
- package/esm/min.d.ts.map +1 -1
- package/esm/min.js +7 -0
- package/esm/min.js.map +1 -1
- package/esm/pow.d.ts +7 -0
- package/esm/pow.d.ts.map +1 -1
- package/esm/pow.js +7 -0
- package/esm/pow.js.map +1 -1
- package/esm/random.d.ts +19 -1
- package/esm/random.d.ts.map +1 -1
- package/esm/random.js +8 -12
- package/esm/random.js.map +1 -1
- package/esm/round.d.ts.map +1 -1
- package/esm/round.js +7 -0
- package/esm/round.js.map +1 -1
- package/esm/sign.d.ts +7 -0
- package/esm/sign.d.ts.map +1 -1
- package/esm/sign.js +7 -0
- package/esm/sign.js.map +1 -1
- package/esm/sin.d.ts +7 -0
- package/esm/sin.d.ts.map +1 -1
- package/esm/sin.js +7 -0
- package/esm/sin.js.map +1 -1
- package/esm/sinh.d.ts +7 -0
- package/esm/sinh.d.ts.map +1 -1
- package/esm/sinh.js +7 -0
- package/esm/sinh.js.map +1 -1
- package/esm/sqrt.d.ts +1 -0
- package/esm/sqrt.d.ts.map +1 -1
- package/esm/sqrt.js +8 -0
- package/esm/sqrt.js.map +1 -1
- package/esm/tan.d.ts.map +1 -1
- package/esm/tan.js +7 -0
- package/esm/tan.js.map +1 -1
- package/esm/tanh.d.ts +7 -0
- package/esm/tanh.d.ts.map +1 -1
- package/esm/tanh.js +7 -0
- package/esm/tanh.js.map +1 -1
- package/esm/trunc.d.ts.map +1 -1
- package/esm/trunc.js +4 -6
- package/esm/trunc.js.map +1 -1
- package/esm/types/finite.d.ts +15 -0
- package/esm/types/finite.d.ts.map +1 -1
- package/esm/types/finite.js +15 -0
- package/esm/types/finite.js.map +1 -1
- package/esm/types/float.d.ts +8 -0
- package/esm/types/float.d.ts.map +1 -1
- package/esm/types/float.js.map +1 -1
- package/esm/types/index.d.ts +7 -0
- package/esm/types/index.d.ts.map +1 -1
- package/esm/types/index.js +7 -0
- package/esm/types/index.js.map +1 -1
- package/esm/types/integer.d.ts +8 -0
- package/esm/types/integer.d.ts.map +1 -1
- package/esm/types/integer.js.map +1 -1
- package/esm/types/precision.d.ts +8 -0
- package/esm/types/precision.d.ts.map +1 -1
- package/esm/types/precision.js +8 -0
- package/esm/types/precision.js.map +1 -1
- package/esm/types/safe_integer.d.ts +18 -0
- package/esm/types/safe_integer.d.ts.map +1 -1
- package/esm/types/safe_integer.js +18 -0
- package/esm/types/safe_integer.js.map +1 -1
- package/nberlette-math-0.7.0.tgz +0 -0
- package/package.json +1 -1
- package/src/abs.ts +7 -0
- package/src/acos.ts +7 -0
- package/src/acosh.ts +7 -0
- package/src/asin.ts +7 -0
- package/src/asinh.ts +7 -0
- package/src/atan.ts +7 -0
- package/src/atan2.ts +7 -0
- package/src/atanh.ts +7 -0
- package/src/cbrt.ts +7 -0
- package/src/ceil.ts +7 -0
- package/src/clamp.ts +7 -0
- package/src/clz32.ts +7 -0
- package/src/constants/e.ts +7 -0
- package/src/constants/epsilon.ts +7 -0
- package/src/constants/index.ts +9 -0
- package/src/constants/infinity.ts +16 -0
- package/src/constants/ln10.ts +49 -3
- package/src/constants/ln2.ts +15 -0
- package/src/constants/log10e.ts +15 -0
- package/src/constants/log2e.ts +15 -0
- package/src/constants/max_safe_integer.ts +15 -0
- package/src/constants/max_value.ts +15 -0
- package/src/constants/min_safe_integer.ts +15 -0
- package/src/constants/min_value.ts +15 -0
- package/src/constants/nan.ts +7 -0
- package/src/constants/negative_infinity.ts +15 -0
- package/src/constants/pi.ts +15 -0
- package/src/constants/positive_infinity.ts +15 -0
- package/src/constants/positive_zero.ts +7 -0
- package/src/constants/sqrt1_2.ts +15 -0
- package/src/constants/sqrt2.ts +15 -0
- package/src/cos.ts +7 -0
- package/src/cosh.ts +7 -0
- package/src/exp.ts +10 -0
- package/src/expm1.ts +7 -0
- package/src/f16round.ts +7 -0
- package/src/float16/constants.ts +8 -3
- package/src/float16/decode.ts +7 -0
- package/src/float16/encode.ts +7 -0
- package/src/float16/guards.ts +8 -0
- package/src/float16/index.ts +9 -0
- package/src/float16/round.ts +7 -0
- package/src/float32/constants.ts +8 -3
- package/src/float32/decode.ts +7 -0
- package/src/float32/encode.ts +7 -0
- package/src/float32/guards.ts +9 -0
- package/src/float32/index.ts +9 -0
- package/src/float32/round.ts +7 -0
- package/src/floor.ts +7 -0
- package/src/fround.ts +7 -0
- package/src/guards/finite.ts +8 -0
- package/src/guards/index.ts +10 -0
- package/src/guards/infinity.ts +16 -0
- package/src/guards/integer.ts +8 -0
- package/src/guards/negative_infinity.ts +7 -0
- package/src/guards/negative_zero.ts +7 -0
- package/src/guards/positive_infinity.ts +7 -0
- package/src/guards/positive_zero.ts +8 -0
- package/src/guards/safe_integer.ts +8 -0
- package/src/hypot.ts +7 -0
- package/src/ieee754.ts +9 -0
- package/src/imul.ts +7 -0
- package/src/index.ts +1 -0
- package/src/log.ts +7 -0
- package/src/log10.ts +7 -0
- package/src/log1p.ts +7 -0
- package/src/log2.ts +7 -0
- package/src/max.ts +4 -5
- package/src/min.ts +7 -0
- package/src/pow.ts +7 -0
- package/src/random.ts +29 -12
- package/src/round.ts +7 -0
- package/src/sign.ts +7 -0
- package/src/sin.ts +7 -0
- package/src/sinh.ts +7 -0
- package/src/sqrt.ts +8 -0
- package/src/tan.ts +7 -0
- package/src/tanh.ts +7 -0
- package/src/trunc.ts +4 -6
- package/src/types/finite.ts +16 -0
- package/src/types/float.ts +8 -0
- package/src/types/index.ts +8 -0
- package/src/types/integer.ts +8 -0
- package/src/types/precision.ts +8 -0
- package/src/types/safe_integer.ts +19 -0
package/src/constants/ln2.ts
CHANGED
|
@@ -1,3 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This module provides runtime and type-level implementations of the
|
|
3
|
+
* `LN2` constant, the natural logarithm of 2.
|
|
4
|
+
*
|
|
5
|
+
* @example
|
|
6
|
+
* ```ts
|
|
7
|
+
* import { LN2 } from "@nick/math/constants/ln2";
|
|
8
|
+
* import assert from "node:assert";
|
|
9
|
+
*
|
|
10
|
+
* assert.strictEqual(LN2, Math.LN2);
|
|
11
|
+
* ```
|
|
12
|
+
* @category Constants
|
|
13
|
+
* @module ln2
|
|
14
|
+
*/
|
|
15
|
+
|
|
1
16
|
/**
|
|
2
17
|
* Represents the natural logarithm of `2`, approximately equal to
|
|
3
18
|
* `0.6931471805599453`.
|
package/src/constants/log10e.ts
CHANGED
|
@@ -1,3 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This module provides runtime and type-level implementations of the
|
|
3
|
+
* `LOG10E` constant, the base-10 logarithm of e.
|
|
4
|
+
*
|
|
5
|
+
* @example
|
|
6
|
+
* ```ts
|
|
7
|
+
* import { LOG10E } from "@nick/math/constants/log10e";
|
|
8
|
+
* import assert from "node:assert";
|
|
9
|
+
*
|
|
10
|
+
* assert.strictEqual(LOG10E, Math.LOG10E);
|
|
11
|
+
* ```
|
|
12
|
+
* @category Constants
|
|
13
|
+
* @module log10e
|
|
14
|
+
*/
|
|
15
|
+
|
|
1
16
|
/**
|
|
2
17
|
* Represents the base-10 logarithm of `e` (Euler's number), approximately
|
|
3
18
|
* equal to `0.4342944819032518`.
|
package/src/constants/log2e.ts
CHANGED
|
@@ -1,3 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This module provides runtime and type-level implementations of the
|
|
3
|
+
* `LOG2E` constant, the base-2 logarithm of e.
|
|
4
|
+
*
|
|
5
|
+
* @example
|
|
6
|
+
* ```ts
|
|
7
|
+
* import { LOG2E } from "@nick/math/constants/log2e";
|
|
8
|
+
* import assert from "node:assert";
|
|
9
|
+
*
|
|
10
|
+
* assert.strictEqual(LOG2E, Math.LOG2E);
|
|
11
|
+
* ```
|
|
12
|
+
* @category Constants
|
|
13
|
+
* @module log2e
|
|
14
|
+
*/
|
|
15
|
+
|
|
1
16
|
/**
|
|
2
17
|
* Represents the base-2 logarithm of `e` (Euler's number), approximately equal
|
|
3
18
|
* to `1.4426950408889634`.
|
|
@@ -1,3 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This module provides runtime and type-level implementations of the
|
|
3
|
+
* `MAX_SAFE_INTEGER` constant, matching `Number.MAX_SAFE_INTEGER`.
|
|
4
|
+
*
|
|
5
|
+
* @example
|
|
6
|
+
* ```ts
|
|
7
|
+
* import { MAX_SAFE_INTEGER } from "@nick/math/constants/max-safe-integer";
|
|
8
|
+
* import assert from "node:assert";
|
|
9
|
+
*
|
|
10
|
+
* assert.strictEqual(MAX_SAFE_INTEGER, Number.MAX_SAFE_INTEGER);
|
|
11
|
+
* ```
|
|
12
|
+
* @category Constants
|
|
13
|
+
* @module max-safe-integer
|
|
14
|
+
*/
|
|
15
|
+
|
|
1
16
|
/**
|
|
2
17
|
* Represents the largest integer that can be represented in JavaScript without
|
|
3
18
|
* losing precision, which is approximately equal to `9007199254740991`.
|
|
@@ -1,3 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This module provides runtime and type-level implementations of the
|
|
3
|
+
* `MAX_VALUE` constant, matching `Number.MAX_VALUE`.
|
|
4
|
+
*
|
|
5
|
+
* @example
|
|
6
|
+
* ```ts
|
|
7
|
+
* import { MAX_VALUE } from "@nick/math/constants/max-value";
|
|
8
|
+
* import assert from "node:assert";
|
|
9
|
+
*
|
|
10
|
+
* assert.strictEqual(MAX_VALUE, Number.MAX_VALUE);
|
|
11
|
+
* ```
|
|
12
|
+
* @category Constants
|
|
13
|
+
* @module max-value
|
|
14
|
+
*/
|
|
15
|
+
|
|
1
16
|
/**
|
|
2
17
|
* Represents the largest positive finite number that can be represented in
|
|
3
18
|
* JavaScript, which is approximately equal to `1.7976931348623157e+308`.
|
|
@@ -1,3 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This module provides runtime and type-level implementations of the
|
|
3
|
+
* `MIN_SAFE_INTEGER` constant, matching `Number.MIN_SAFE_INTEGER`.
|
|
4
|
+
*
|
|
5
|
+
* @example
|
|
6
|
+
* ```ts
|
|
7
|
+
* import { MIN_SAFE_INTEGER } from "@nick/math/constants/min-safe-integer";
|
|
8
|
+
* import assert from "node:assert";
|
|
9
|
+
*
|
|
10
|
+
* assert.strictEqual(MIN_SAFE_INTEGER, Number.MIN_SAFE_INTEGER);
|
|
11
|
+
* ```
|
|
12
|
+
* @category Constants
|
|
13
|
+
* @module min-safe-integer
|
|
14
|
+
*/
|
|
15
|
+
|
|
1
16
|
/**
|
|
2
17
|
* Represents the smallest integer that can be represented in JavaScript
|
|
3
18
|
* without losing precision, which is approximately equal to
|
|
@@ -1,3 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This module provides runtime and type-level implementations of the
|
|
3
|
+
* `MIN_VALUE` constant, matching `Number.MIN_VALUE`.
|
|
4
|
+
*
|
|
5
|
+
* @example
|
|
6
|
+
* ```ts
|
|
7
|
+
* import { MIN_VALUE } from "@nick/math/constants/min-value";
|
|
8
|
+
* import assert from "node:assert";
|
|
9
|
+
*
|
|
10
|
+
* assert.strictEqual(MIN_VALUE, Number.MIN_VALUE);
|
|
11
|
+
* ```
|
|
12
|
+
* @category Constants
|
|
13
|
+
* @module min-value
|
|
14
|
+
*/
|
|
15
|
+
|
|
1
16
|
/**
|
|
2
17
|
* Represents the smallest positive number that is greater than zero, which is
|
|
3
18
|
* approximately equal to `5e-324`.
|
package/src/constants/nan.ts
CHANGED
|
@@ -8,6 +8,13 @@
|
|
|
8
8
|
* mathematical operations, such as dividing zero by zero, or parsing a string
|
|
9
9
|
* that does not represent a valid number with `parseInt` or `parseFloat`.
|
|
10
10
|
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```ts
|
|
13
|
+
* import { NAN } from "@nick/math/constants/nan";
|
|
14
|
+
* import assert from "node:assert";
|
|
15
|
+
*
|
|
16
|
+
* assert.ok(Number.isNaN(NAN));
|
|
17
|
+
* ```
|
|
11
18
|
* @module nan
|
|
12
19
|
*/
|
|
13
20
|
|
|
@@ -1,3 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This module provides runtime and type-level implementations of the
|
|
3
|
+
* `NEGATIVE_INFINITY` constant, matching `Number.NEGATIVE_INFINITY`.
|
|
4
|
+
*
|
|
5
|
+
* @example
|
|
6
|
+
* ```ts
|
|
7
|
+
* import { NEGATIVE_INFINITY } from "@nick/math/constants/negative-infinity";
|
|
8
|
+
* import assert from "node:assert";
|
|
9
|
+
*
|
|
10
|
+
* assert.strictEqual(NEGATIVE_INFINITY, Number.NEGATIVE_INFINITY);
|
|
11
|
+
* ```
|
|
12
|
+
* @category Constants
|
|
13
|
+
* @module negative-infinity
|
|
14
|
+
*/
|
|
15
|
+
|
|
1
16
|
/**
|
|
2
17
|
* Negative Infinity is a special value representing negative infinity, which
|
|
3
18
|
* is less than any other number. It is approximately equal to
|
package/src/constants/pi.ts
CHANGED
|
@@ -1,3 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This module provides runtime and type-level implementations of the
|
|
3
|
+
* `PI` constant, matching `Math.PI`.
|
|
4
|
+
*
|
|
5
|
+
* @example
|
|
6
|
+
* ```ts
|
|
7
|
+
* import { PI } from "@nick/math/constants/pi";
|
|
8
|
+
* import assert from "node:assert";
|
|
9
|
+
*
|
|
10
|
+
* assert.strictEqual(PI, Math.PI);
|
|
11
|
+
* ```
|
|
12
|
+
* @category Constants
|
|
13
|
+
* @module pi
|
|
14
|
+
*/
|
|
15
|
+
|
|
1
16
|
/**
|
|
2
17
|
* Represents the mathematical constant `π` (pi), the ratio of a circle's
|
|
3
18
|
* circumference to its diameter, approximately equal to `3.141592653589793`.
|
|
@@ -1,3 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This module provides runtime and type-level implementations of the
|
|
3
|
+
* `POSITIVE_INFINITY` constant, matching `Number.POSITIVE_INFINITY`.
|
|
4
|
+
*
|
|
5
|
+
* @example
|
|
6
|
+
* ```ts
|
|
7
|
+
* import { POSITIVE_INFINITY } from "@nick/math/constants/positive-infinity";
|
|
8
|
+
* import assert from "node:assert";
|
|
9
|
+
*
|
|
10
|
+
* assert.strictEqual(POSITIVE_INFINITY, Number.POSITIVE_INFINITY);
|
|
11
|
+
* ```
|
|
12
|
+
* @category Constants
|
|
13
|
+
* @module positive-infinity
|
|
14
|
+
*/
|
|
15
|
+
|
|
1
16
|
/**
|
|
2
17
|
* Positive Infinity is a special value representing positive infinity, which
|
|
3
18
|
* is greater than any other number. It is approximately equal to
|
|
@@ -4,6 +4,13 @@
|
|
|
4
4
|
* native JavaScript language, provided for stronger type-safety when working
|
|
5
5
|
* with positive zero values.
|
|
6
6
|
*
|
|
7
|
+
* @example
|
|
8
|
+
* ```ts
|
|
9
|
+
* import { POSITIVE_ZERO } from "@nick/math/constants/positive-zero";
|
|
10
|
+
* import assert from "node:assert";
|
|
11
|
+
*
|
|
12
|
+
* assert.ok(Object.is(POSITIVE_ZERO, 0));
|
|
13
|
+
* ```
|
|
7
14
|
* @module positive-zero
|
|
8
15
|
*/
|
|
9
16
|
|
package/src/constants/sqrt1_2.ts
CHANGED
|
@@ -1,3 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This module provides runtime and type-level implementations of the
|
|
3
|
+
* `SQRT1_2` constant, matching `Math.SQRT1_2`.
|
|
4
|
+
*
|
|
5
|
+
* @example
|
|
6
|
+
* ```ts
|
|
7
|
+
* import { SQRT1_2 } from "@nick/math/constants/sqrt1_2";
|
|
8
|
+
* import assert from "node:assert";
|
|
9
|
+
*
|
|
10
|
+
* assert.strictEqual(SQRT1_2, Math.SQRT1_2);
|
|
11
|
+
* ```
|
|
12
|
+
* @category Constants
|
|
13
|
+
* @module sqrt1-2
|
|
14
|
+
*/
|
|
15
|
+
|
|
1
16
|
/**
|
|
2
17
|
* The square root of `1/2`, approximately equal to `0.7071067811865476`.
|
|
3
18
|
*
|
package/src/constants/sqrt2.ts
CHANGED
|
@@ -1,3 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This module provides runtime and type-level implementations of the
|
|
3
|
+
* `SQRT2` constant, matching `Math.SQRT2`.
|
|
4
|
+
*
|
|
5
|
+
* @example
|
|
6
|
+
* ```ts
|
|
7
|
+
* import { SQRT2 } from "@nick/math/constants/sqrt2";
|
|
8
|
+
* import assert from "node:assert";
|
|
9
|
+
*
|
|
10
|
+
* assert.strictEqual(SQRT2, Math.SQRT2);
|
|
11
|
+
* ```
|
|
12
|
+
* @category Constants
|
|
13
|
+
* @module sqrt2
|
|
14
|
+
*/
|
|
15
|
+
|
|
1
16
|
/**
|
|
2
17
|
* The square root of `2`, approximately equal to `1.4142135623730951`.
|
|
3
18
|
*
|
package/src/cos.ts
CHANGED
|
@@ -1,6 +1,13 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Calculates the cosine of a number, returning a value in the range `[-1, 1]`.
|
|
3
3
|
*
|
|
4
|
+
* @example
|
|
5
|
+
* ```ts
|
|
6
|
+
* import { cos } from "@nick/math/cos";
|
|
7
|
+
* import assert from "node:assert";
|
|
8
|
+
*
|
|
9
|
+
* assert.strictEqual(cos(0), 1);
|
|
10
|
+
* ```
|
|
4
11
|
* @module cos
|
|
5
12
|
*/
|
|
6
13
|
import { abs } from "./abs.js";
|
package/src/cosh.ts
CHANGED
|
@@ -1,6 +1,13 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Calculates the hyperbolic cosine of a number.
|
|
3
3
|
*
|
|
4
|
+
* @example
|
|
5
|
+
* ```ts
|
|
6
|
+
* import { cosh } from "@nick/math/cosh";
|
|
7
|
+
* import assert from "node:assert";
|
|
8
|
+
*
|
|
9
|
+
* assert.strictEqual(cosh(0), 1);
|
|
10
|
+
* ```
|
|
4
11
|
* @module cosh
|
|
5
12
|
*/
|
|
6
13
|
import { exp } from "./exp.js";
|
package/src/exp.ts
CHANGED
|
@@ -1,4 +1,14 @@
|
|
|
1
1
|
/**
|
|
2
|
+
* Provides the `exp` function, a local implementation of `Math.exp` for
|
|
3
|
+
* computing exponentials (`e^x`) without relying on the global `Math` object.
|
|
4
|
+
*
|
|
5
|
+
* @example
|
|
6
|
+
* ```ts
|
|
7
|
+
* import { exp } from "@nick/math/exp";
|
|
8
|
+
* import assert from "node:assert";
|
|
9
|
+
*
|
|
10
|
+
* assert.strictEqual(exp(0), 1);
|
|
11
|
+
* ```
|
|
2
12
|
* @category Exponential
|
|
3
13
|
* @module exp
|
|
4
14
|
*/
|
package/src/expm1.ts
CHANGED
|
@@ -2,6 +2,13 @@
|
|
|
2
2
|
* Calculates the exponential of `x` minus 1 (`exp(x) - 1`) with a high degree
|
|
3
3
|
* of accuracy, even for very small values of `x`.
|
|
4
4
|
*
|
|
5
|
+
* @example
|
|
6
|
+
* ```ts
|
|
7
|
+
* import { expm1 } from "@nick/math/expm1";
|
|
8
|
+
* import assert from "node:assert";
|
|
9
|
+
*
|
|
10
|
+
* assert.strictEqual(expm1(0), 0);
|
|
11
|
+
* ```
|
|
5
12
|
* @module expm1
|
|
6
13
|
*/
|
|
7
14
|
import { EPSILON } from "./constants/epsilon.js";
|
package/src/f16round.ts
CHANGED
|
@@ -8,6 +8,13 @@
|
|
|
8
8
|
*
|
|
9
9
|
* [Float16Array]: https://github.com/tc39/proposal-float16array
|
|
10
10
|
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```ts
|
|
13
|
+
* import { f16round } from "@nick/math/f16round";
|
|
14
|
+
* import assert from "node:assert";
|
|
15
|
+
*
|
|
16
|
+
* assert.strictEqual(f16round(1.337), Math.f16round(1.337));
|
|
17
|
+
* ```
|
|
11
18
|
* @module f16round
|
|
12
19
|
*/
|
|
13
20
|
import { roundFloat16 } from "./float16/round.js";
|
package/src/float16/constants.ts
CHANGED
|
@@ -8,11 +8,16 @@
|
|
|
8
8
|
* of completeness and transparency, as well as for potential userland usage in
|
|
9
9
|
* cases where the constants are needed for custom encoding/decoding logic.
|
|
10
10
|
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```ts
|
|
13
|
+
* import { FLOAT16_EXPONENT_BITS } from "@nick/math/float16/constants";
|
|
14
|
+
* import assert from "node:assert";
|
|
15
|
+
*
|
|
16
|
+
* assert.strictEqual(FLOAT16_EXPONENT_BITS, 5);
|
|
17
|
+
* ```
|
|
11
18
|
* @module float16/constants
|
|
12
19
|
*/
|
|
13
20
|
|
|
14
|
-
import type { FloatFormat } from "../internal/ieee754.js";
|
|
15
|
-
|
|
16
21
|
/**
|
|
17
22
|
* Well-known bit pattern representing `NaN` in the IEEE-754 half-precision (or
|
|
18
23
|
* "binary16") format.
|
|
@@ -103,4 +108,4 @@ export default {
|
|
|
103
108
|
negative_infinity: FLOAT16_NEGATIVE_INFINITY,
|
|
104
109
|
negative_zero: FLOAT16_NEGATIVE_ZERO,
|
|
105
110
|
positive_zero: FLOAT16_POSITIVE_ZERO,
|
|
106
|
-
} as const
|
|
111
|
+
} as const;
|
package/src/float16/decode.ts
CHANGED
|
@@ -13,6 +13,13 @@
|
|
|
13
13
|
* value into a standard JavaScript number, which can be used in arithmetic
|
|
14
14
|
* operations or passed to other functions.
|
|
15
15
|
*
|
|
16
|
+
* @example
|
|
17
|
+
* ```ts
|
|
18
|
+
* import { decodeFloat16 } from "@nick/math/float16/decode";
|
|
19
|
+
* import assert from "node:assert";
|
|
20
|
+
*
|
|
21
|
+
* assert.strictEqual(decodeFloat16(0x3C00), 1);
|
|
22
|
+
* ```
|
|
16
23
|
* @module float16/decode
|
|
17
24
|
*/
|
|
18
25
|
import float16 from "./constants.js";
|
package/src/float16/encode.ts
CHANGED
|
@@ -13,6 +13,13 @@
|
|
|
13
13
|
* DataView via `setUint16`, or used in other applications that require the
|
|
14
14
|
* `Float16` format.
|
|
15
15
|
*
|
|
16
|
+
* @example
|
|
17
|
+
* ```ts
|
|
18
|
+
* import { encodeFloat16 } from "@nick/math/float16/encode";
|
|
19
|
+
* import assert from "node:assert";
|
|
20
|
+
*
|
|
21
|
+
* assert.strictEqual(encodeFloat16(1), 0x3C00);
|
|
22
|
+
* ```
|
|
16
23
|
* @module float16/encode
|
|
17
24
|
*/
|
|
18
25
|
|
package/src/float16/guards.ts
CHANGED
|
@@ -2,6 +2,14 @@
|
|
|
2
2
|
* This submodule provides type guards specific to the float16 module of the
|
|
3
3
|
* `@nick/math` library, namely the {@linkcode isFloat16} predicate function.
|
|
4
4
|
*
|
|
5
|
+
* @example
|
|
6
|
+
* ```ts
|
|
7
|
+
* import { isFloat16 } from "@nick/math/float16/guards";
|
|
8
|
+
* import assert from "node:assert";
|
|
9
|
+
*
|
|
10
|
+
* assert.ok(isFloat16(0.5));
|
|
11
|
+
* assert.ok(!isFloat16(0.1));
|
|
12
|
+
* ```
|
|
5
13
|
* @module float16/guards
|
|
6
14
|
*/
|
|
7
15
|
import { isNaN } from "../guards/nan.js";
|
package/src/float16/index.ts
CHANGED
|
@@ -2,6 +2,15 @@
|
|
|
2
2
|
* Utilities for working with `float16` values (16-bit half precision floating
|
|
3
3
|
* point numbers), as defined by IEEE 754-2008.
|
|
4
4
|
*
|
|
5
|
+
* @example
|
|
6
|
+
* ```ts
|
|
7
|
+
* import { decodeFloat16, encodeFloat16 } from "@nick/math/float16";
|
|
8
|
+
* import assert from "node:assert";
|
|
9
|
+
*
|
|
10
|
+
* const encoded = encodeFloat16(1);
|
|
11
|
+
* assert.strictEqual(decodeFloat16(encoded), 1);
|
|
12
|
+
* ```
|
|
13
|
+
* @category IEEE-754
|
|
5
14
|
* @module float16
|
|
6
15
|
*/
|
|
7
16
|
export * from "./decode.js";
|
package/src/float16/round.ts
CHANGED
|
@@ -10,6 +10,13 @@
|
|
|
10
10
|
*
|
|
11
11
|
* [Float16Array]: https://github.com/tc39/proposal-float16array
|
|
12
12
|
*
|
|
13
|
+
* @example
|
|
14
|
+
* ```ts
|
|
15
|
+
* import { roundFloat16 } from "@nick/math/float16/round";
|
|
16
|
+
* import assert from "node:assert";
|
|
17
|
+
*
|
|
18
|
+
* assert.strictEqual(roundFloat16(1.337), Math.f16round(1.337));
|
|
19
|
+
* ```
|
|
13
20
|
* @module float16/round
|
|
14
21
|
*/
|
|
15
22
|
import { encodeFloat16 } from "./encode.js";
|
package/src/float32/constants.ts
CHANGED
|
@@ -8,11 +8,16 @@
|
|
|
8
8
|
* of completeness and transparency, as well as for potential userland usage in
|
|
9
9
|
* cases where the constants are needed for custom encoding/decoding logic.
|
|
10
10
|
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```ts
|
|
13
|
+
* import { FLOAT32_EXPONENT_BITS } from "@nick/math/float32/constants";
|
|
14
|
+
* import assert from "node:assert";
|
|
15
|
+
*
|
|
16
|
+
* assert.strictEqual(FLOAT32_EXPONENT_BITS, 8);
|
|
17
|
+
* ```
|
|
11
18
|
* @module float32/constants
|
|
12
19
|
*/
|
|
13
20
|
|
|
14
|
-
import type { FloatFormat } from "../internal/ieee754.js";
|
|
15
|
-
|
|
16
21
|
/**
|
|
17
22
|
* The number of bits used for the exponent in the IEEE-754 single-precision
|
|
18
23
|
* (or "binary32") format.
|
|
@@ -102,4 +107,4 @@ export default {
|
|
|
102
107
|
negative_infinity: FLOAT32_NEGATIVE_INFINITY,
|
|
103
108
|
negative_zero: FLOAT32_NEGATIVE_ZERO,
|
|
104
109
|
positive_zero: FLOAT32_POSITIVE_ZERO,
|
|
105
|
-
} as const
|
|
110
|
+
} as const;
|
package/src/float32/decode.ts
CHANGED
|
@@ -18,6 +18,13 @@
|
|
|
18
18
|
* with 32-bits of precision), use the {@linkcode decodeFloat32} function of
|
|
19
19
|
* this module, passing it the encoded value.
|
|
20
20
|
*
|
|
21
|
+
* @example
|
|
22
|
+
* ```ts
|
|
23
|
+
* import { decodeFloat32 } from "@nick/math/float32/decode";
|
|
24
|
+
* import assert from "node:assert";
|
|
25
|
+
*
|
|
26
|
+
* assert.strictEqual(decodeFloat32(0x3F800000), 1);
|
|
27
|
+
* ```
|
|
21
28
|
* @module float32/decode
|
|
22
29
|
*/
|
|
23
30
|
import float32 from "./constants.js";
|
package/src/float32/encode.ts
CHANGED
|
@@ -13,6 +13,13 @@
|
|
|
13
13
|
* {@linkcode decodeFloat32} function of the `./decode` module, passing it the
|
|
14
14
|
* encoded value returned by {@linkcode encodeFloat32}.
|
|
15
15
|
*
|
|
16
|
+
* @example
|
|
17
|
+
* ```ts
|
|
18
|
+
* import { encodeFloat32 } from "@nick/math/float32/encode";
|
|
19
|
+
* import assert from "node:assert";
|
|
20
|
+
*
|
|
21
|
+
* assert.strictEqual(encodeFloat32(1), 0x3F800000);
|
|
22
|
+
* ```
|
|
16
23
|
* @module float32/encode
|
|
17
24
|
*/
|
|
18
25
|
import float32 from "./constants.js";
|
package/src/float32/guards.ts
CHANGED
|
@@ -2,6 +2,15 @@
|
|
|
2
2
|
* This submodule provides type guards specific to the float32 module of the
|
|
3
3
|
* `@nick/math` library, namely the {@linkcode isFloat32} predicate function.
|
|
4
4
|
*
|
|
5
|
+
* @example
|
|
6
|
+
* ```ts
|
|
7
|
+
* import { isFiniteFloat32, isFloat32 } from "@nick/math/float32/guards";
|
|
8
|
+
* import assert from "node:assert";
|
|
9
|
+
*
|
|
10
|
+
* assert.ok(isFloat32(Math.fround(1.5)));
|
|
11
|
+
* assert.ok(isFiniteFloat32(Math.fround(1.5)));
|
|
12
|
+
* assert.ok(!isFloat32(1.1));
|
|
13
|
+
* ```
|
|
5
14
|
* @module float32/guards
|
|
6
15
|
*/
|
|
7
16
|
import { isNaN } from "../guards/nan.js";
|
package/src/float32/index.ts
CHANGED
|
@@ -2,6 +2,15 @@
|
|
|
2
2
|
* Utilities for working with `float32` values (32-bit single precision
|
|
3
3
|
* floating point numbers), as defined by IEEE 754-2008.
|
|
4
4
|
*
|
|
5
|
+
* @example
|
|
6
|
+
* ```ts
|
|
7
|
+
* import { decodeFloat32, encodeFloat32 } from "@nick/math/float32";
|
|
8
|
+
* import assert from "node:assert";
|
|
9
|
+
*
|
|
10
|
+
* const encoded = encodeFloat32(1);
|
|
11
|
+
* assert.strictEqual(decodeFloat32(encoded), 1);
|
|
12
|
+
* ```
|
|
13
|
+
* @category IEEE-754
|
|
5
14
|
* @module float32
|
|
6
15
|
*/
|
|
7
16
|
export * from "./decode.js";
|
package/src/float32/round.ts
CHANGED
|
@@ -2,6 +2,13 @@
|
|
|
2
2
|
* Rounds a number to the nearest 32-bit floating point value (single
|
|
3
3
|
* precision), following the IEEE 754-2008 specification.
|
|
4
4
|
*
|
|
5
|
+
* @example
|
|
6
|
+
* ```ts
|
|
7
|
+
* import { roundFloat32 } from "@nick/math/float32/round";
|
|
8
|
+
* import assert from "node:assert";
|
|
9
|
+
*
|
|
10
|
+
* assert.strictEqual(roundFloat32(1.337), Math.fround(1.337));
|
|
11
|
+
* ```
|
|
5
12
|
* @module float32/round
|
|
6
13
|
*/
|
|
7
14
|
import { encodeFloat32 } from "./encode.js";
|
package/src/floor.ts
CHANGED
|
@@ -2,6 +2,13 @@
|
|
|
2
2
|
* Performant local implementation of the `Math.floor` function.
|
|
3
3
|
*
|
|
4
4
|
* @category Arithmetic
|
|
5
|
+
* @example
|
|
6
|
+
* ```ts
|
|
7
|
+
* import { floor } from "@nick/math/floor";
|
|
8
|
+
* import assert from "node:assert";
|
|
9
|
+
*
|
|
10
|
+
* assert.strictEqual(floor(1.8), 1);
|
|
11
|
+
* ```
|
|
5
12
|
* @module floor
|
|
6
13
|
*/
|
|
7
14
|
import { NEGATIVE_INFINITY } from "./constants/negative_infinity.js";
|
package/src/fround.ts
CHANGED
|
@@ -2,6 +2,13 @@
|
|
|
2
2
|
* Rounds a number to the nearest 32-bit floating point value (single
|
|
3
3
|
* precision).
|
|
4
4
|
*
|
|
5
|
+
* @example
|
|
6
|
+
* ```ts
|
|
7
|
+
* import { fround } from "@nick/math/fround";
|
|
8
|
+
* import assert from "node:assert";
|
|
9
|
+
*
|
|
10
|
+
* assert.strictEqual(fround(1.337), Math.fround(1.337));
|
|
11
|
+
* ```
|
|
5
12
|
* @module fround
|
|
6
13
|
*/
|
|
7
14
|
import { roundFloat32 } from "./float32/round.js";
|
package/src/guards/finite.ts
CHANGED
|
@@ -5,6 +5,14 @@
|
|
|
5
5
|
* function. It is not dependent on the global `Number` object and will not be
|
|
6
6
|
* affected by global variable shadowing, reassignment, or malicious tampering.
|
|
7
7
|
*
|
|
8
|
+
* @example
|
|
9
|
+
* ```ts
|
|
10
|
+
* import { isFinite } from "@nick/math/guards/finite";
|
|
11
|
+
* import assert from "node:assert";
|
|
12
|
+
*
|
|
13
|
+
* assert.ok(isFinite(42));
|
|
14
|
+
* assert.ok(!isFinite(Infinity));
|
|
15
|
+
* ```
|
|
8
16
|
* @module guards/finite
|
|
9
17
|
*/
|
|
10
18
|
import { isNaN } from "./nan.js";
|
package/src/guards/index.ts
CHANGED
|
@@ -38,6 +38,16 @@
|
|
|
38
38
|
* [native-number-isnan]: https://mdn.io/Number.isNaN
|
|
39
39
|
* [native-object-is]: https://mdn.io/Object.is
|
|
40
40
|
*
|
|
41
|
+
* @example
|
|
42
|
+
* ```ts
|
|
43
|
+
* import { isFinite, isPositiveZero } from "@nick/math/guards";
|
|
44
|
+
* import assert from "node:assert";
|
|
45
|
+
*
|
|
46
|
+
* assert.ok(isFinite(123));
|
|
47
|
+
* assert.ok(isPositiveZero(0));
|
|
48
|
+
* assert.ok(!isPositiveZero(-0));
|
|
49
|
+
* ```
|
|
50
|
+
* @category Guards
|
|
41
51
|
* @module guards
|
|
42
52
|
*/
|
|
43
53
|
export * from "./finite.js";
|
package/src/guards/infinity.ts
CHANGED
|
@@ -1,2 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Re-exports the infinity guards for checking positive and negative
|
|
3
|
+
* infinite values.
|
|
4
|
+
*
|
|
5
|
+
* @example
|
|
6
|
+
* ```ts
|
|
7
|
+
* import { isNegativeInfinity, isPositiveInfinity } from "@nick/math/guards/infinity";
|
|
8
|
+
* import assert from "node:assert";
|
|
9
|
+
*
|
|
10
|
+
* assert.ok(isPositiveInfinity(1 / 0));
|
|
11
|
+
* assert.ok(isNegativeInfinity(-1 / 0));
|
|
12
|
+
* ```
|
|
13
|
+
* @category Guards
|
|
14
|
+
* @module guards/infinity
|
|
15
|
+
*/
|
|
16
|
+
|
|
1
17
|
export * from "./negative_infinity.js";
|
|
2
18
|
export * from "./positive_infinity.js";
|
package/src/guards/integer.ts
CHANGED
|
@@ -5,6 +5,14 @@
|
|
|
5
5
|
* @param it The number to check for being an integer.
|
|
6
6
|
* @returns `true` if the provided number is an integer, otherwise `false`.
|
|
7
7
|
* @category Arithmetic
|
|
8
|
+
* @example
|
|
9
|
+
* ```ts
|
|
10
|
+
* import { isInteger } from "@nick/math/guards/integer";
|
|
11
|
+
* import assert from "node:assert";
|
|
12
|
+
*
|
|
13
|
+
* assert.ok(isInteger(10));
|
|
14
|
+
* assert.ok(!isInteger(10.5));
|
|
15
|
+
* ```
|
|
8
16
|
* @module isInteger
|
|
9
17
|
*/
|
|
10
18
|
import type { Integer } from "../types/integer.js";
|
|
@@ -2,6 +2,13 @@
|
|
|
2
2
|
* Checks if the provided number is `-Infinity` (negative infinity), in a way
|
|
3
3
|
* that is immune to any global variable shadowing or reassignment.
|
|
4
4
|
*
|
|
5
|
+
* @example
|
|
6
|
+
* ```ts
|
|
7
|
+
* import { isNegativeInfinity } from "@nick/math/guards/negative-infinity";
|
|
8
|
+
* import assert from "node:assert";
|
|
9
|
+
*
|
|
10
|
+
* assert.ok(isNegativeInfinity(-1 / 0));
|
|
11
|
+
* ```
|
|
5
12
|
* @module negative-infinity
|
|
6
13
|
*/
|
|
7
14
|
import { NEGATIVE_INFINITY } from "../constants/negative_infinity.js";
|