@danielsimonjr/mathts-functions 0.64.3 → 0.66.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/algebra/decomposition/lup.d.ts +1 -1
- package/dist/algebra/decomposition/lup.d.ts.map +1 -1
- package/dist/algebra/decomposition/qr.d.ts +1 -1
- package/dist/algebra/decomposition/qr.d.ts.map +1 -1
- package/dist/algebra/decomposition/schur.d.ts +1 -1
- package/dist/algebra/decomposition/schur.d.ts.map +1 -1
- package/dist/algebra/decomposition/slu.d.ts +1 -1
- package/dist/algebra/decomposition/slu.d.ts.map +1 -1
- package/dist/algebra/leafCount.d.ts +1 -1
- package/dist/algebra/leafCount.d.ts.map +1 -1
- package/dist/algebra/lyap.d.ts +1 -1
- package/dist/algebra/lyap.d.ts.map +1 -1
- package/dist/algebra/polynomialRoot.d.ts +1 -1
- package/dist/algebra/polynomialRoot.d.ts.map +1 -1
- package/dist/algebra/rationalize.d.ts +1 -1
- package/dist/algebra/rationalize.d.ts.map +1 -1
- package/dist/algebra/resolve.d.ts +1 -1
- package/dist/algebra/resolve.d.ts.map +1 -1
- package/dist/algebra/simplifyCore.d.ts +1 -1
- package/dist/algebra/simplifyCore.d.ts.map +1 -1
- package/dist/algebra/solver/lsolve.d.ts +1 -1
- package/dist/algebra/solver/lsolve.d.ts.map +1 -1
- package/dist/algebra/solver/lsolveAll.d.ts +2 -2
- package/dist/algebra/solver/lsolveAll.d.ts.map +1 -1
- package/dist/algebra/solver/lusolve.d.ts +1 -1
- package/dist/algebra/solver/lusolve.d.ts.map +1 -1
- package/dist/algebra/solver/usolve.d.ts +1 -1
- package/dist/algebra/solver/usolve.d.ts.map +1 -1
- package/dist/algebra/solver/usolveAll.d.ts +2 -2
- package/dist/algebra/solver/usolveAll.d.ts.map +1 -1
- package/dist/algebra/sparse/csAmd.d.ts.map +1 -1
- package/dist/algebra/sparse/csCounts.d.ts.map +1 -1
- package/dist/algebra/sylvester.d.ts +1 -1
- package/dist/algebra/sylvester.d.ts.map +1 -1
- package/dist/algebra/symbolicEqual.d.ts +1 -1
- package/dist/algebra/symbolicEqual.d.ts.map +1 -1
- package/dist/arithmetic/abs.d.ts +1 -1
- package/dist/arithmetic/abs.d.ts.map +1 -1
- package/dist/arithmetic/addScalar.d.ts +1 -1
- package/dist/arithmetic/addScalar.d.ts.map +1 -1
- package/dist/arithmetic/cbrt.d.ts +1 -1
- package/dist/arithmetic/cbrt.d.ts.map +1 -1
- package/dist/arithmetic/ceil.d.ts +2 -2
- package/dist/arithmetic/ceil.d.ts.map +1 -1
- package/dist/arithmetic/cube.d.ts +1 -1
- package/dist/arithmetic/cube.d.ts.map +1 -1
- package/dist/arithmetic/divide.d.ts +2 -1
- package/dist/arithmetic/divide.d.ts.map +1 -1
- package/dist/arithmetic/divideScalar.d.ts +1 -1
- package/dist/arithmetic/divideScalar.d.ts.map +1 -1
- package/dist/arithmetic/exp.d.ts +1 -1
- package/dist/arithmetic/exp.d.ts.map +1 -1
- package/dist/arithmetic/expm1.d.ts +1 -1
- package/dist/arithmetic/expm1.d.ts.map +1 -1
- package/dist/arithmetic/fix.d.ts +2 -2
- package/dist/arithmetic/fix.d.ts.map +1 -1
- package/dist/arithmetic/floor.d.ts +2 -2
- package/dist/arithmetic/floor.d.ts.map +1 -1
- package/dist/arithmetic/gcd.d.ts.map +1 -1
- package/dist/arithmetic/hypot.d.ts.map +1 -1
- package/dist/arithmetic/log.d.ts +1 -1
- package/dist/arithmetic/log.d.ts.map +1 -1
- package/dist/arithmetic/log10.d.ts +1 -1
- package/dist/arithmetic/log10.d.ts.map +1 -1
- package/dist/arithmetic/log1p.d.ts +1 -1
- package/dist/arithmetic/log1p.d.ts.map +1 -1
- package/dist/arithmetic/log2.d.ts +1 -1
- package/dist/arithmetic/log2.d.ts.map +1 -1
- package/dist/arithmetic/mod.d.ts +1 -1
- package/dist/arithmetic/mod.d.ts.map +1 -1
- package/dist/arithmetic/multiplyScalar.d.ts +1 -1
- package/dist/arithmetic/multiplyScalar.d.ts.map +1 -1
- package/dist/arithmetic/norm.d.ts.map +1 -1
- package/dist/arithmetic/nthRoot.d.ts.map +1 -1
- package/dist/arithmetic/pow.d.ts +1 -1
- package/dist/arithmetic/pow.d.ts.map +1 -1
- package/dist/arithmetic/round.d.ts +1 -1
- package/dist/arithmetic/round.d.ts.map +1 -1
- package/dist/arithmetic/sign.d.ts +1 -1
- package/dist/arithmetic/sign.d.ts.map +1 -1
- package/dist/arithmetic/sqrt.d.ts +1 -1
- package/dist/arithmetic/sqrt.d.ts.map +1 -1
- package/dist/arithmetic/square.d.ts +1 -1
- package/dist/arithmetic/square.d.ts.map +1 -1
- package/dist/arithmetic/subtract.d.ts +1 -1
- package/dist/arithmetic/subtract.d.ts.map +1 -1
- package/dist/arithmetic/subtractScalar.d.ts +1 -1
- package/dist/arithmetic/subtractScalar.d.ts.map +1 -1
- package/dist/arithmetic/unaryMinus.d.ts +1 -1
- package/dist/arithmetic/unaryMinus.d.ts.map +1 -1
- package/dist/arithmetic/unaryPlus.d.ts +1 -1
- package/dist/arithmetic/unaryPlus.d.ts.map +1 -1
- package/dist/bitwise/bitAnd.d.ts +1 -1
- package/dist/bitwise/bitAnd.d.ts.map +1 -1
- package/dist/bitwise/bitNot.d.ts +1 -1
- package/dist/bitwise/bitNot.d.ts.map +1 -1
- package/dist/bitwise/bitOr.d.ts +1 -1
- package/dist/bitwise/bitOr.d.ts.map +1 -1
- package/dist/bitwise/bitXor.d.ts +1 -1
- package/dist/bitwise/bitXor.d.ts.map +1 -1
- package/dist/bitwise/leftShift.d.ts +1 -1
- package/dist/bitwise/leftShift.d.ts.map +1 -1
- package/dist/bitwise/rightArithShift.d.ts +1 -1
- package/dist/bitwise/rightArithShift.d.ts.map +1 -1
- package/dist/bitwise/rightLogShift.d.ts +1 -1
- package/dist/bitwise/rightLogShift.d.ts.map +1 -1
- package/dist/bitwise/useMatrixForArrayScalar.d.ts.map +1 -1
- package/dist/{chunk-UMUT2YEC.js → chunk-5A2EZLXV.js} +77 -181
- package/dist/combinatorics/bellNumbers.d.ts +1 -1
- package/dist/combinatorics/bellNumbers.d.ts.map +1 -1
- package/dist/combinatorics/catalan.d.ts +1 -1
- package/dist/combinatorics/catalan.d.ts.map +1 -1
- package/dist/combinatorics/composition.d.ts +1 -1
- package/dist/combinatorics/composition.d.ts.map +1 -1
- package/dist/combinatorics/stirlingS2.d.ts +1 -1
- package/dist/combinatorics/stirlingS2.d.ts.map +1 -1
- package/dist/complex/arg.d.ts +1 -1
- package/dist/complex/arg.d.ts.map +1 -1
- package/dist/complex/conj.d.ts +1 -1
- package/dist/complex/conj.d.ts.map +1 -1
- package/dist/complex/im.d.ts +1 -1
- package/dist/complex/im.d.ts.map +1 -1
- package/dist/complex/re.d.ts +1 -1
- package/dist/complex/re.d.ts.map +1 -1
- package/dist/core/function/typed.d.ts +11 -1
- package/dist/core/function/typed.d.ts.map +1 -1
- package/dist/factories/evaluate.d.ts +48 -6
- package/dist/factories/evaluate.d.ts.map +1 -1
- package/dist/factories/index.d.ts +184 -184
- package/dist/factories/index.d.ts.map +1 -1
- package/dist/geometry/distance.d.ts +1 -1
- package/dist/geometry/distance.d.ts.map +1 -1
- package/dist/geometry/intersect.d.ts +1 -1
- package/dist/geometry/intersect.d.ts.map +1 -1
- package/dist/index.d.ts +4 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +500 -1993
- package/dist/logical/and.d.ts +1 -1
- package/dist/logical/and.d.ts.map +1 -1
- package/dist/logical/not.d.ts +1 -1
- package/dist/logical/not.d.ts.map +1 -1
- package/dist/logical/or.d.ts +1 -1
- package/dist/logical/or.d.ts.map +1 -1
- package/dist/logical/xor.d.ts +1 -1
- package/dist/logical/xor.d.ts.map +1 -1
- package/dist/matrix/column.d.ts +2 -1
- package/dist/matrix/column.d.ts.map +1 -1
- package/dist/matrix/concat.d.ts +1 -1
- package/dist/matrix/concat.d.ts.map +1 -1
- package/dist/matrix/count.d.ts +1 -1
- package/dist/matrix/count.d.ts.map +1 -1
- package/dist/matrix/cross.d.ts +1 -1
- package/dist/matrix/cross.d.ts.map +1 -1
- package/dist/matrix/ctranspose.d.ts +1 -1
- package/dist/matrix/ctranspose.d.ts.map +1 -1
- package/dist/matrix/det.d.ts +2 -1
- package/dist/matrix/det.d.ts.map +1 -1
- package/dist/matrix/diag.d.ts +1 -1
- package/dist/matrix/diag.d.ts.map +1 -1
- package/dist/matrix/diff.d.ts.map +1 -1
- package/dist/matrix/dot.d.ts +1 -1
- package/dist/matrix/dot.d.ts.map +1 -1
- package/dist/matrix/eigs/complexEigs.d.ts.map +1 -1
- package/dist/matrix/eigs/realSymmetric.d.ts.map +1 -1
- package/dist/matrix/eigs.d.ts +2 -1
- package/dist/matrix/eigs.d.ts.map +1 -1
- package/dist/matrix/fft.d.ts +1 -1
- package/dist/matrix/fft.d.ts.map +1 -1
- package/dist/matrix/filter.d.ts +1 -1
- package/dist/matrix/filter.d.ts.map +1 -1
- package/dist/matrix/flatten.d.ts +1 -1
- package/dist/matrix/flatten.d.ts.map +1 -1
- package/dist/matrix/forEach.d.ts +1 -1
- package/dist/matrix/forEach.d.ts.map +1 -1
- package/dist/matrix/getMatrixDataType.d.ts +1 -1
- package/dist/matrix/getMatrixDataType.d.ts.map +1 -1
- package/dist/matrix/identity.d.ts +1 -1
- package/dist/matrix/identity.d.ts.map +1 -1
- package/dist/matrix/ifft.d.ts +2 -1
- package/dist/matrix/ifft.d.ts.map +1 -1
- package/dist/matrix/inv.d.ts +2 -1
- package/dist/matrix/inv.d.ts.map +1 -1
- package/dist/matrix/kron.d.ts +2 -1
- package/dist/matrix/kron.d.ts.map +1 -1
- package/dist/matrix/map.d.ts +1 -1
- package/dist/matrix/map.d.ts.map +1 -1
- package/dist/matrix/matrixFromColumns.d.ts +2 -1
- package/dist/matrix/matrixFromColumns.d.ts.map +1 -1
- package/dist/matrix/matrixFromRows.d.ts +2 -1
- package/dist/matrix/matrixFromRows.d.ts.map +1 -1
- package/dist/matrix/ones.d.ts +1 -1
- package/dist/matrix/ones.d.ts.map +1 -1
- package/dist/matrix/partitionSelect.d.ts +2 -1
- package/dist/matrix/partitionSelect.d.ts.map +1 -1
- package/dist/matrix/range.d.ts +1 -1
- package/dist/matrix/range.d.ts.map +1 -1
- package/dist/matrix/reshape.d.ts +1 -1
- package/dist/matrix/reshape.d.ts.map +1 -1
- package/dist/matrix/resize.d.ts +1 -1
- package/dist/matrix/resize.d.ts.map +1 -1
- package/dist/matrix/row.d.ts +2 -1
- package/dist/matrix/row.d.ts.map +1 -1
- package/dist/matrix/size.d.ts +1 -1
- package/dist/matrix/size.d.ts.map +1 -1
- package/dist/matrix/sqrtm.d.ts +2 -1
- package/dist/matrix/sqrtm.d.ts.map +1 -1
- package/dist/matrix/squeeze.d.ts +1 -1
- package/dist/matrix/squeeze.d.ts.map +1 -1
- package/dist/matrix/subset.d.ts +1 -1
- package/dist/matrix/subset.d.ts.map +1 -1
- package/dist/matrix/trace.d.ts +1 -1
- package/dist/matrix/trace.d.ts.map +1 -1
- package/dist/matrix/transpose.d.ts +1 -1
- package/dist/matrix/transpose.d.ts.map +1 -1
- package/dist/matrix/utils/zerosAndOnes.d.ts +1 -1
- package/dist/matrix/utils/zerosAndOnes.d.ts.map +1 -1
- package/dist/matrix/zeros.d.ts +1 -1
- package/dist/matrix/zeros.d.ts.map +1 -1
- package/dist/numeric/gauss-legendre4.d.ts +75 -0
- package/dist/numeric/gauss-legendre4.d.ts.map +1 -0
- package/dist/numeric/propagate-uncertainty.d.ts +46 -0
- package/dist/numeric/propagate-uncertainty.d.ts.map +1 -0
- package/dist/numeric/rational-nullspace.d.ts +45 -0
- package/dist/numeric/rational-nullspace.d.ts.map +1 -0
- package/dist/numeric/solveODE.d.ts +2 -2
- package/dist/numeric/solveODE.d.ts.map +1 -1
- package/dist/probability/bernoulli.d.ts +1 -1
- package/dist/probability/bernoulli.d.ts.map +1 -1
- package/dist/probability/combinations.d.ts +1 -1
- package/dist/probability/combinations.d.ts.map +1 -1
- package/dist/probability/combinationsWithRep.d.ts +1 -1
- package/dist/probability/combinationsWithRep.d.ts.map +1 -1
- package/dist/probability/factorial.d.ts +1 -1
- package/dist/probability/factorial.d.ts.map +1 -1
- package/dist/probability/gamma.d.ts +1 -1
- package/dist/probability/gamma.d.ts.map +1 -1
- package/dist/probability/kldivergence.d.ts +1 -1
- package/dist/probability/kldivergence.d.ts.map +1 -1
- package/dist/probability/lgamma.d.ts +1 -1
- package/dist/probability/lgamma.d.ts.map +1 -1
- package/dist/probability/multinomial.d.ts +1 -1
- package/dist/probability/multinomial.d.ts.map +1 -1
- package/dist/probability/permutations.d.ts +1 -1
- package/dist/probability/permutations.d.ts.map +1 -1
- package/dist/probability/pickRandom.d.ts +1 -1
- package/dist/probability/pickRandom.d.ts.map +1 -1
- package/dist/probability/random.d.ts +2 -2
- package/dist/probability/random.d.ts.map +1 -1
- package/dist/probability/randomInt.d.ts +1 -1
- package/dist/probability/randomInt.d.ts.map +1 -1
- package/dist/relational/compare.d.ts +2 -2
- package/dist/relational/compare.d.ts.map +1 -1
- package/dist/relational/compareNatural.d.ts +1 -1
- package/dist/relational/compareNatural.d.ts.map +1 -1
- package/dist/relational/deepEqual.d.ts +1 -1
- package/dist/relational/deepEqual.d.ts.map +1 -1
- package/dist/relational/equal.d.ts +2 -2
- package/dist/relational/equal.d.ts.map +1 -1
- package/dist/relational/equalScalar.d.ts +1 -1
- package/dist/relational/equalScalar.d.ts.map +1 -1
- package/dist/relational/equalText.d.ts +1 -1
- package/dist/relational/equalText.d.ts.map +1 -1
- package/dist/relational/larger.d.ts +2 -2
- package/dist/relational/larger.d.ts.map +1 -1
- package/dist/relational/largerEq.d.ts +2 -2
- package/dist/relational/largerEq.d.ts.map +1 -1
- package/dist/relational/smaller.d.ts +2 -2
- package/dist/relational/smaller.d.ts.map +1 -1
- package/dist/relational/smallerEq.d.ts +2 -2
- package/dist/relational/smallerEq.d.ts.map +1 -1
- package/dist/relational/unequal.d.ts +2 -2
- package/dist/relational/unequal.d.ts.map +1 -1
- package/dist/set/setCartesian.d.ts +1 -1
- package/dist/set/setCartesian.d.ts.map +1 -1
- package/dist/set/setDifference.d.ts +1 -1
- package/dist/set/setDifference.d.ts.map +1 -1
- package/dist/set/setIntersect.d.ts +1 -1
- package/dist/set/setIntersect.d.ts.map +1 -1
- package/dist/set/setSymDifference.d.ts +1 -1
- package/dist/set/setSymDifference.d.ts.map +1 -1
- package/dist/set/setUnion.d.ts +1 -1
- package/dist/set/setUnion.d.ts.map +1 -1
- package/dist/signal/freqz.d.ts +2 -1
- package/dist/signal/freqz.d.ts.map +1 -1
- package/dist/signal/zpk2tf.d.ts +2 -1
- package/dist/signal/zpk2tf.d.ts.map +1 -1
- package/dist/special/erf.d.ts +1 -1
- package/dist/special/erf.d.ts.map +1 -1
- package/dist/special/zeta.d.ts +1 -1
- package/dist/special/zeta.d.ts.map +1 -1
- package/dist/statistics/corr.d.ts +1 -1
- package/dist/statistics/corr.d.ts.map +1 -1
- package/dist/statistics/cumsum.d.ts +1 -1
- package/dist/statistics/cumsum.d.ts.map +1 -1
- package/dist/statistics/mad.d.ts +1 -1
- package/dist/statistics/mad.d.ts.map +1 -1
- package/dist/statistics/max.d.ts +1 -1
- package/dist/statistics/max.d.ts.map +1 -1
- package/dist/statistics/mean.d.ts +1 -1
- package/dist/statistics/mean.d.ts.map +1 -1
- package/dist/statistics/median.d.ts +1 -1
- package/dist/statistics/median.d.ts.map +1 -1
- package/dist/statistics/min.d.ts +1 -1
- package/dist/statistics/min.d.ts.map +1 -1
- package/dist/statistics/mode.d.ts +1 -1
- package/dist/statistics/mode.d.ts.map +1 -1
- package/dist/statistics/prod.d.ts +1 -1
- package/dist/statistics/prod.d.ts.map +1 -1
- package/dist/statistics/quantileSeq.d.ts +1 -1
- package/dist/statistics/quantileSeq.d.ts.map +1 -1
- package/dist/statistics/std.d.ts +1 -1
- package/dist/statistics/std.d.ts.map +1 -1
- package/dist/statistics/sum.d.ts +1 -1
- package/dist/statistics/sum.d.ts.map +1 -1
- package/dist/statistics/variance.d.ts +1 -1
- package/dist/statistics/variance.d.ts.map +1 -1
- package/dist/string/bin.d.ts +1 -1
- package/dist/string/bin.d.ts.map +1 -1
- package/dist/string/format.d.ts +1 -1
- package/dist/string/format.d.ts.map +1 -1
- package/dist/string/hex.d.ts +1 -1
- package/dist/string/hex.d.ts.map +1 -1
- package/dist/string/oct.d.ts +1 -1
- package/dist/string/oct.d.ts.map +1 -1
- package/dist/string/print.d.ts +1 -1
- package/dist/string/print.d.ts.map +1 -1
- package/dist/trigonometry/acos.d.ts +1 -1
- package/dist/trigonometry/acos.d.ts.map +1 -1
- package/dist/trigonometry/asin.d.ts +1 -1
- package/dist/trigonometry/asin.d.ts.map +1 -1
- package/dist/trigonometry/atan.d.ts +1 -1
- package/dist/trigonometry/atan.d.ts.map +1 -1
- package/dist/trigonometry/atan2.d.ts +1 -1
- package/dist/trigonometry/atan2.d.ts.map +1 -1
- package/dist/trigonometry/cos.d.ts +1 -1
- package/dist/trigonometry/cos.d.ts.map +1 -1
- package/dist/trigonometry/sin.d.ts +1 -1
- package/dist/trigonometry/sin.d.ts.map +1 -1
- package/dist/trigonometry/tan.d.ts +1 -1
- package/dist/trigonometry/tan.d.ts.map +1 -1
- package/dist/type/matrix/function/index.d.ts +1 -1
- package/dist/type/matrix/function/index.d.ts.map +1 -1
- package/dist/type/unit/function/createUnit.d.ts +1 -1
- package/dist/type/unit/function/createUnit.d.ts.map +1 -1
- package/dist/type/unit/function/splitUnit.d.ts +1 -1
- package/dist/type/unit/function/splitUnit.d.ts.map +1 -1
- package/dist/type/unit/function/unit.d.ts +1 -1
- package/dist/type/unit/function/unit.d.ts.map +1 -1
- package/dist/type/unit/physicalConstants.d.ts +4 -7
- package/dist/type/unit/physicalConstants.d.ts.map +1 -1
- package/dist/typed/algebra.d.ts +14 -5
- package/dist/typed/algebra.d.ts.map +1 -1
- package/dist/typed/arithmetic.d.ts.map +1 -1
- package/dist/typed/geometry.d.ts +2 -6
- package/dist/typed/geometry.d.ts.map +1 -1
- package/dist/typed/hypothesis.d.ts +13 -0
- package/dist/typed/hypothesis.d.ts.map +1 -1
- package/dist/typed/numeric.d.ts +3 -1
- package/dist/typed/numeric.d.ts.map +1 -1
- package/dist/typed/signal.d.ts +1 -1
- package/dist/typed/signal.d.ts.map +1 -1
- package/dist/unit/to.d.ts +1 -1
- package/dist/unit/to.d.ts.map +1 -1
- package/dist/unit/toBest.d.ts +1 -1
- package/dist/unit/toBest.d.ts.map +1 -1
- package/dist/utils/bignumber/bitwise.d.ts +1 -0
- package/dist/utils/bignumber/bitwise.d.ts.map +1 -1
- package/dist/utils/clone.d.ts +1 -1
- package/dist/utils/clone.d.ts.map +1 -1
- package/dist/utils/hasNumericValue.d.ts +1 -1
- package/dist/utils/hasNumericValue.d.ts.map +1 -1
- package/dist/utils/isInteger.d.ts +1 -1
- package/dist/utils/isInteger.d.ts.map +1 -1
- package/dist/utils/isNaN.d.ts +1 -1
- package/dist/utils/isNaN.d.ts.map +1 -1
- package/dist/utils/isNegative.d.ts +1 -1
- package/dist/utils/isNegative.d.ts.map +1 -1
- package/dist/utils/isPositive.d.ts +1 -1
- package/dist/utils/isPositive.d.ts.map +1 -1
- package/dist/utils/isPrime.d.ts +1 -1
- package/dist/utils/isPrime.d.ts.map +1 -1
- package/dist/utils/isZero.d.ts +1 -1
- package/dist/utils/isZero.d.ts.map +1 -1
- package/dist/utils/typeOf.d.ts +1 -1
- package/dist/utils/typeOf.d.ts.map +1 -1
- package/dist/wasm/WasmLoader.d.ts +28 -210
- package/dist/wasm/WasmLoader.d.ts.map +1 -1
- package/dist/wasm/bitwise/wasm-bridge.d.ts.map +1 -1
- package/dist/wasm/bridges/common.d.ts +2 -0
- package/dist/wasm/bridges/common.d.ts.map +1 -1
- package/dist/wasm/elementwise/wasm-bridge.d.ts.map +1 -1
- package/dist/wasm/interpolation/wasm-bridge.d.ts.map +1 -1
- package/dist/wasm/mathts-as.wasm +0 -0
- package/dist/wasm/policy.d.ts +37 -0
- package/dist/wasm/policy.d.ts.map +1 -0
- package/dist/wasm/poly/wasm-bridge.d.ts.map +1 -1
- package/dist/wasm/signal/wasm-bridge.d.ts.map +1 -1
- package/dist/wasm/sort/wasm-bridge.d.ts.map +1 -1
- package/dist/wasm/special/wasm-bridge.d.ts.map +1 -1
- package/dist/wasm/wasm-manifest.json +1 -1
- package/dist/{wasm-bridge-C44GQ3DS.js → wasm-bridge-74YOKWIS.js} +1 -1
- package/package.json +8 -8
|
@@ -39,11 +39,6 @@ var WasmLoader = class _WasmLoader {
|
|
|
39
39
|
loading = null;
|
|
40
40
|
isNode;
|
|
41
41
|
lastMetrics = null;
|
|
42
|
-
// Memory pool for reusable allocations
|
|
43
|
-
float64Pool = [];
|
|
44
|
-
int32Pool = [];
|
|
45
|
-
poolSizeThreshold = 1024 * 1024;
|
|
46
|
-
// 1MB max per pool entry
|
|
47
42
|
constructor() {
|
|
48
43
|
this.isNode = typeof process !== "undefined" && process.versions?.node !== void 0;
|
|
49
44
|
}
|
|
@@ -64,7 +59,14 @@ var WasmLoader = class _WasmLoader {
|
|
|
64
59
|
return this.loading;
|
|
65
60
|
}
|
|
66
61
|
this.loading = this.loadModule(wasmPath);
|
|
67
|
-
|
|
62
|
+
try {
|
|
63
|
+
this.wasmModule = await this.loading;
|
|
64
|
+
} catch (error) {
|
|
65
|
+
this.compiledModule = null;
|
|
66
|
+
throw error;
|
|
67
|
+
} finally {
|
|
68
|
+
this.loading = null;
|
|
69
|
+
}
|
|
68
70
|
return this.wasmModule;
|
|
69
71
|
}
|
|
70
72
|
/**
|
|
@@ -246,175 +248,6 @@ var WasmLoader = class _WasmLoader {
|
|
|
246
248
|
getLoadingMetrics() {
|
|
247
249
|
return this.lastMetrics;
|
|
248
250
|
}
|
|
249
|
-
/**
|
|
250
|
-
* Allocate Float64Array in WASM memory
|
|
251
|
-
* Uses memory pooling for frequently reused sizes
|
|
252
|
-
*/
|
|
253
|
-
allocateFloat64Array(data) {
|
|
254
|
-
const module = this.wasmModule;
|
|
255
|
-
if (!module) throw new Error("WASM module not loaded");
|
|
256
|
-
const length = data.length;
|
|
257
|
-
const byteLength = length * 8;
|
|
258
|
-
let ptr;
|
|
259
|
-
if (byteLength <= this.poolSizeThreshold) {
|
|
260
|
-
const poolEntry = this.getFromPool(this.float64Pool, byteLength);
|
|
261
|
-
if (poolEntry) {
|
|
262
|
-
ptr = poolEntry.ptr;
|
|
263
|
-
poolEntry.inUse = true;
|
|
264
|
-
} else {
|
|
265
|
-
ptr = module.__new(byteLength, 2);
|
|
266
|
-
}
|
|
267
|
-
} else {
|
|
268
|
-
ptr = module.__new(byteLength, 2);
|
|
269
|
-
}
|
|
270
|
-
const array = new Float64Array(module.memory.buffer, ptr, length);
|
|
271
|
-
array.set(data);
|
|
272
|
-
return { ptr, array };
|
|
273
|
-
}
|
|
274
|
-
/**
|
|
275
|
-
* Allocate Float64Array without copying data (for output buffers)
|
|
276
|
-
*/
|
|
277
|
-
allocateFloat64ArrayEmpty(length) {
|
|
278
|
-
const module = this.wasmModule;
|
|
279
|
-
if (!module) throw new Error("WASM module not loaded");
|
|
280
|
-
const byteLength = length * 8;
|
|
281
|
-
let ptr;
|
|
282
|
-
if (byteLength <= this.poolSizeThreshold) {
|
|
283
|
-
const poolEntry = this.getFromPool(this.float64Pool, byteLength);
|
|
284
|
-
if (poolEntry) {
|
|
285
|
-
ptr = poolEntry.ptr;
|
|
286
|
-
poolEntry.inUse = true;
|
|
287
|
-
} else {
|
|
288
|
-
ptr = module.__new(byteLength, 2);
|
|
289
|
-
}
|
|
290
|
-
} else {
|
|
291
|
-
ptr = module.__new(byteLength, 2);
|
|
292
|
-
}
|
|
293
|
-
const array = new Float64Array(module.memory.buffer, ptr, length);
|
|
294
|
-
return { ptr, array };
|
|
295
|
-
}
|
|
296
|
-
/**
|
|
297
|
-
* Allocate Int32Array in WASM memory
|
|
298
|
-
* Uses memory pooling for frequently reused sizes
|
|
299
|
-
*/
|
|
300
|
-
allocateInt32Array(data) {
|
|
301
|
-
const module = this.wasmModule;
|
|
302
|
-
if (!module) throw new Error("WASM module not loaded");
|
|
303
|
-
const length = data.length;
|
|
304
|
-
const byteLength = length * 4;
|
|
305
|
-
let ptr;
|
|
306
|
-
if (byteLength <= this.poolSizeThreshold) {
|
|
307
|
-
const poolEntry = this.getFromPool(this.int32Pool, byteLength);
|
|
308
|
-
if (poolEntry) {
|
|
309
|
-
ptr = poolEntry.ptr;
|
|
310
|
-
poolEntry.inUse = true;
|
|
311
|
-
} else {
|
|
312
|
-
ptr = module.__new(byteLength, 1);
|
|
313
|
-
}
|
|
314
|
-
} else {
|
|
315
|
-
ptr = module.__new(byteLength, 1);
|
|
316
|
-
}
|
|
317
|
-
const array = new Int32Array(module.memory.buffer, ptr, length);
|
|
318
|
-
array.set(data);
|
|
319
|
-
return { ptr, array };
|
|
320
|
-
}
|
|
321
|
-
/**
|
|
322
|
-
* Allocate Int32Array without copying data (for output buffers)
|
|
323
|
-
*/
|
|
324
|
-
allocateInt32ArrayEmpty(length) {
|
|
325
|
-
const module = this.wasmModule;
|
|
326
|
-
if (!module) throw new Error("WASM module not loaded");
|
|
327
|
-
const byteLength = length * 4;
|
|
328
|
-
let ptr;
|
|
329
|
-
if (byteLength <= this.poolSizeThreshold) {
|
|
330
|
-
const poolEntry = this.getFromPool(this.int32Pool, byteLength);
|
|
331
|
-
if (poolEntry) {
|
|
332
|
-
ptr = poolEntry.ptr;
|
|
333
|
-
poolEntry.inUse = true;
|
|
334
|
-
} else {
|
|
335
|
-
ptr = module.__new(byteLength, 1);
|
|
336
|
-
}
|
|
337
|
-
} else {
|
|
338
|
-
ptr = module.__new(byteLength, 1);
|
|
339
|
-
}
|
|
340
|
-
const array = new Int32Array(module.memory.buffer, ptr, length);
|
|
341
|
-
return { ptr, array };
|
|
342
|
-
}
|
|
343
|
-
/**
|
|
344
|
-
* Get a suitable entry from the memory pool
|
|
345
|
-
*/
|
|
346
|
-
getFromPool(pool, requestedSize) {
|
|
347
|
-
let bestFit = null;
|
|
348
|
-
let bestFitWaste = Infinity;
|
|
349
|
-
for (const entry of pool) {
|
|
350
|
-
if (!entry.inUse && entry.size >= requestedSize) {
|
|
351
|
-
const waste = entry.size - requestedSize;
|
|
352
|
-
if (waste < bestFitWaste && entry.size <= requestedSize * 2) {
|
|
353
|
-
bestFit = entry;
|
|
354
|
-
bestFitWaste = waste;
|
|
355
|
-
}
|
|
356
|
-
}
|
|
357
|
-
}
|
|
358
|
-
return bestFit;
|
|
359
|
-
}
|
|
360
|
-
/**
|
|
361
|
-
* Return allocation to pool for reuse
|
|
362
|
-
*/
|
|
363
|
-
release(ptr, isFloat64 = true) {
|
|
364
|
-
const pool = isFloat64 ? this.float64Pool : this.int32Pool;
|
|
365
|
-
const entry = pool.find((e) => e.ptr === ptr);
|
|
366
|
-
if (entry) {
|
|
367
|
-
entry.inUse = false;
|
|
368
|
-
return;
|
|
369
|
-
}
|
|
370
|
-
this.free(ptr);
|
|
371
|
-
}
|
|
372
|
-
/**
|
|
373
|
-
* Free allocated memory (immediate, bypasses pool)
|
|
374
|
-
*/
|
|
375
|
-
free(ptr) {
|
|
376
|
-
const module = this.wasmModule;
|
|
377
|
-
if (!module) return;
|
|
378
|
-
this.float64Pool = this.float64Pool.filter((e) => e.ptr !== ptr);
|
|
379
|
-
this.int32Pool = this.int32Pool.filter((e) => e.ptr !== ptr);
|
|
380
|
-
module.__unpin(ptr);
|
|
381
|
-
}
|
|
382
|
-
/**
|
|
383
|
-
* Clear the memory pool
|
|
384
|
-
*/
|
|
385
|
-
clearPool() {
|
|
386
|
-
const module = this.wasmModule;
|
|
387
|
-
if (!module) return;
|
|
388
|
-
for (const entry of this.float64Pool) {
|
|
389
|
-
module.__unpin(entry.ptr);
|
|
390
|
-
}
|
|
391
|
-
for (const entry of this.int32Pool) {
|
|
392
|
-
module.__unpin(entry.ptr);
|
|
393
|
-
}
|
|
394
|
-
this.float64Pool = [];
|
|
395
|
-
this.int32Pool = [];
|
|
396
|
-
}
|
|
397
|
-
/**
|
|
398
|
-
* Get pool statistics
|
|
399
|
-
*/
|
|
400
|
-
getPoolStats() {
|
|
401
|
-
const f64InUse = this.float64Pool.filter((e) => e.inUse).length;
|
|
402
|
-
const f64Bytes = this.float64Pool.reduce((sum, e) => sum + e.size, 0);
|
|
403
|
-
const i32InUse = this.int32Pool.filter((e) => e.inUse).length;
|
|
404
|
-
const i32Bytes = this.int32Pool.reduce((sum, e) => sum + e.size, 0);
|
|
405
|
-
return {
|
|
406
|
-
float64: {
|
|
407
|
-
total: this.float64Pool.length,
|
|
408
|
-
inUse: f64InUse,
|
|
409
|
-
totalBytes: f64Bytes
|
|
410
|
-
},
|
|
411
|
-
int32: {
|
|
412
|
-
total: this.int32Pool.length,
|
|
413
|
-
inUse: i32InUse,
|
|
414
|
-
totalBytes: i32Bytes
|
|
415
|
-
}
|
|
416
|
-
};
|
|
417
|
-
}
|
|
418
251
|
/**
|
|
419
252
|
* Run garbage collection
|
|
420
253
|
*/
|
|
@@ -427,7 +260,6 @@ var WasmLoader = class _WasmLoader {
|
|
|
427
260
|
* Reset the loader (for testing)
|
|
428
261
|
*/
|
|
429
262
|
reset() {
|
|
430
|
-
this.clearPool();
|
|
431
263
|
this.wasmModule = null;
|
|
432
264
|
this.compiledModule = null;
|
|
433
265
|
this.loading = null;
|
|
@@ -435,6 +267,57 @@ var WasmLoader = class _WasmLoader {
|
|
|
435
267
|
}
|
|
436
268
|
};
|
|
437
269
|
var wasmLoader = WasmLoader.getInstance();
|
|
270
|
+
var INTEGRITY_FAILURE = "WASM integrity check failed";
|
|
271
|
+
async function loadWasm(wasmPath) {
|
|
272
|
+
try {
|
|
273
|
+
await wasmLoader.load(wasmPath);
|
|
274
|
+
return true;
|
|
275
|
+
} catch (error) {
|
|
276
|
+
if (error instanceof Error && error.message.startsWith(INTEGRITY_FAILURE)) throw error;
|
|
277
|
+
return false;
|
|
278
|
+
}
|
|
279
|
+
}
|
|
280
|
+
function isWasmLoaded() {
|
|
281
|
+
return wasmLoader.isLoaded();
|
|
282
|
+
}
|
|
283
|
+
|
|
284
|
+
// src/wasm/policy.ts
|
|
285
|
+
var WASM_DISPATCH_POLICY = {
|
|
286
|
+
// Element-wise (public `abs`, `sin`, ... on a Float64Array).
|
|
287
|
+
array_abs_ptr: { min: 1024 },
|
|
288
|
+
// 0.76/0.55 · 0.44/0.42 · 0.54/0.54 · 0.49/0.71
|
|
289
|
+
array_log10_ptr: { min: 1024 },
|
|
290
|
+
// 0.89/0.82 · 0.70/0.77 · 0.70/0.72 · 0.76/0.83
|
|
291
|
+
array_sin_ptr: { min: 1024, max: 131072 },
|
|
292
|
+
// 0.76/0.77 · 0.72/0.75 · (0.92/0.81 · 0.79/0.96)
|
|
293
|
+
array_log1p_ptr: { min: 1024, max: 16384 },
|
|
294
|
+
// 0.82/0.88 · (1.09/1.24 ...)
|
|
295
|
+
array_cos_ptr: { min: 16384 },
|
|
296
|
+
// (1.54/0.79) · 0.64/0.61 · 0.62/0.62 · 0.79/0.69
|
|
297
|
+
array_atanh_ptr: { min: 16384 },
|
|
298
|
+
// (0.93/0.85) · 0.70/0.73 · 0.77/0.78 · 0.81/0.83
|
|
299
|
+
array_log_ptr: { min: 16384 },
|
|
300
|
+
// (0.92/0.86) · 0.80/0.77 · 0.80/0.79 · 0.84/0.83
|
|
301
|
+
array_sec_ptr: { min: 16384, max: 1048576 },
|
|
302
|
+
// 0.76/0.79 · 0.76/0.83 · (0.90/0.88)
|
|
303
|
+
// A fused chain keeps its data in WASM memory between ops: (sin, exp) 0.36-0.49 and
|
|
304
|
+
// (tanh, expm1), both of which lose alone, 0.64-0.77, at every size.
|
|
305
|
+
fused_chain: { min: 1024 },
|
|
306
|
+
// Least-squares fits (public polyFit / chebyshevFit / legendreFit): 0.34-0.67.
|
|
307
|
+
poly_fit_f64: { min: 1024 },
|
|
308
|
+
cheb_fit_f64: { min: 1024 },
|
|
309
|
+
legendre_fit_f64: { min: 1024 },
|
|
310
|
+
// Only the largest measured size wins: lgamma 0.77/0.78, sort (median, quantile)
|
|
311
|
+
// 0.78/0.81 and 0.77/0.79 at 1M; 131K was 0.90-1.05.
|
|
312
|
+
lgamma_f64: { min: 1048576 },
|
|
313
|
+
sort_f64: { min: 1048576 }
|
|
314
|
+
};
|
|
315
|
+
var overrides = null;
|
|
316
|
+
function wasmPolicyAllows(kernel, n) {
|
|
317
|
+
const own = (o, k) => Object.prototype.hasOwnProperty.call(o, k);
|
|
318
|
+
const band = overrides !== null && own(overrides, kernel) ? overrides[kernel] : overrides !== null && own(overrides, "*") ? overrides["*"] : WASM_DISPATCH_POLICY[kernel];
|
|
319
|
+
return band != null && n >= band.min && (band.max === void 0 || n < band.max);
|
|
320
|
+
}
|
|
438
321
|
|
|
439
322
|
// src/wasm/bridges/common.ts
|
|
440
323
|
function getWasm() {
|
|
@@ -498,6 +381,9 @@ var AS_ID_ARRAY_BUFFER = 1;
|
|
|
498
381
|
var AS_ID_FLOAT64_ARRAY = 5;
|
|
499
382
|
var AS_ID_INT32_ARRAY = 6;
|
|
500
383
|
var AS_HEADER_BYTES = 12;
|
|
384
|
+
function resetAsHeap(mod) {
|
|
385
|
+
if (typeof mod.heap_reset === "function") mod.heap_reset();
|
|
386
|
+
}
|
|
501
387
|
function asAllocHeader(mod, byteLength, typeId) {
|
|
502
388
|
const bufferPtr = mod.__pin(mod.__new(byteLength, AS_ID_ARRAY_BUFFER)) >>> 0;
|
|
503
389
|
const headerPtr = mod.__new(AS_HEADER_BYTES, typeId) >>> 0;
|
|
@@ -546,6 +432,10 @@ function withAsF64(wasm, inputs, body) {
|
|
|
546
432
|
} catch {
|
|
547
433
|
}
|
|
548
434
|
}
|
|
435
|
+
try {
|
|
436
|
+
resetAsHeap(mod);
|
|
437
|
+
} catch {
|
|
438
|
+
}
|
|
549
439
|
}
|
|
550
440
|
}
|
|
551
441
|
function withAsI32(wasm, inputs, body) {
|
|
@@ -570,11 +460,15 @@ function withAsI32(wasm, inputs, body) {
|
|
|
570
460
|
} catch {
|
|
571
461
|
}
|
|
572
462
|
}
|
|
463
|
+
try {
|
|
464
|
+
resetAsHeap(mod);
|
|
465
|
+
} catch {
|
|
466
|
+
}
|
|
573
467
|
}
|
|
574
468
|
}
|
|
575
469
|
function makeUnaryArrayDispatch(cfg) {
|
|
576
470
|
return (xs) => {
|
|
577
|
-
if (xs.length >= cfg.threshold) {
|
|
471
|
+
if (xs.length >= cfg.threshold && wasmPolicyAllows(cfg.name, xs.length)) {
|
|
578
472
|
const wasm = getWasm();
|
|
579
473
|
if (wasm && isAsWasm(wasm)) {
|
|
580
474
|
const out = withAsF64(
|
|
@@ -623,7 +517,7 @@ function rankF64JS(data) {
|
|
|
623
517
|
}
|
|
624
518
|
function sortF64Dispatch(data) {
|
|
625
519
|
const n = data.length;
|
|
626
|
-
if (n >= WASM_SORT_THRESHOLD) {
|
|
520
|
+
if (n >= WASM_SORT_THRESHOLD && wasmPolicyAllows("sort_f64", n)) {
|
|
627
521
|
const wasm = getWasm();
|
|
628
522
|
if (wasm && isAsWasm(wasm)) {
|
|
629
523
|
try {
|
|
@@ -644,7 +538,7 @@ function sortF64Dispatch(data) {
|
|
|
644
538
|
}
|
|
645
539
|
function argsortF64Dispatch(data) {
|
|
646
540
|
const n = data.length;
|
|
647
|
-
if (n >= WASM_SORT_THRESHOLD) {
|
|
541
|
+
if (n >= WASM_SORT_THRESHOLD && wasmPolicyAllows("argsort_f64", n)) {
|
|
648
542
|
const wasm = getWasm();
|
|
649
543
|
if (wasm && isAsWasm(wasm)) {
|
|
650
544
|
try {
|
|
@@ -662,7 +556,7 @@ function argsortF64Dispatch(data) {
|
|
|
662
556
|
}
|
|
663
557
|
function rankF64Dispatch(data) {
|
|
664
558
|
const n = data.length;
|
|
665
|
-
if (n >= WASM_SORT_THRESHOLD) {
|
|
559
|
+
if (n >= WASM_SORT_THRESHOLD && wasmPolicyAllows("rank_f64", n)) {
|
|
666
560
|
const wasm = getWasm();
|
|
667
561
|
if (wasm && isAsWasm(wasm)) {
|
|
668
562
|
try {
|
|
@@ -681,7 +575,9 @@ function rankF64Dispatch(data) {
|
|
|
681
575
|
|
|
682
576
|
export {
|
|
683
577
|
__export,
|
|
684
|
-
|
|
578
|
+
loadWasm,
|
|
579
|
+
isWasmLoaded,
|
|
580
|
+
wasmPolicyAllows,
|
|
685
581
|
getWasm,
|
|
686
582
|
isAsWasm,
|
|
687
583
|
runUnaryPtr,
|
|
@@ -9,6 +9,6 @@ interface BellNumbersDependencies {
|
|
|
9
9
|
isInteger: (x: NumericValue) => boolean;
|
|
10
10
|
stirlingS2: (n: NumericValue, k: NumericValue) => NumericValue;
|
|
11
11
|
}
|
|
12
|
-
export declare const createBellNumbers: import("../utils/factory.js").FactoryFunction<BellNumbersDependencies,
|
|
12
|
+
export declare const createBellNumbers: import("../utils/factory.js").FactoryFunction<BellNumbersDependencies, TypedFunction>;
|
|
13
13
|
export {};
|
|
14
14
|
//# sourceMappingURL=bellNumbers.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bellNumbers.d.ts","sourceRoot":"","sources":["../../src/combinatorics/bellNumbers.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAGhE,KAAK,aAAa,GAAG,SAAS,CAAC;AAE/B,KAAK,YAAY,GAAG,MAAM,GAAG,aAAa,CAAC;AAE3C,UAAU,uBAAuB;IAC/B,KAAK,EAAE,aAAa,CAAC;IACrB,SAAS,EAAE,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,YAAY,KAAK,YAAY,CAAC;IAC9D,UAAU,EAAE,CAAC,CAAC,EAAE,YAAY,KAAK,OAAO,CAAC;IACzC,SAAS,EAAE,CAAC,CAAC,EAAE,YAAY,KAAK,OAAO,CAAC;IACxC,UAAU,EAAE,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,YAAY,KAAK,YAAY,CAAC;CAChE;AAKD,eAAO,MAAM,iBAAiB,
|
|
1
|
+
{"version":3,"file":"bellNumbers.d.ts","sourceRoot":"","sources":["../../src/combinatorics/bellNumbers.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAGhE,KAAK,aAAa,GAAG,SAAS,CAAC;AAE/B,KAAK,YAAY,GAAG,MAAM,GAAG,aAAa,CAAC;AAE3C,UAAU,uBAAuB;IAC/B,KAAK,EAAE,aAAa,CAAC;IACrB,SAAS,EAAE,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,YAAY,KAAK,YAAY,CAAC;IAC9D,UAAU,EAAE,CAAC,CAAC,EAAE,YAAY,KAAK,OAAO,CAAC;IACzC,SAAS,EAAE,CAAC,CAAC,EAAE,YAAY,KAAK,OAAO,CAAC;IACxC,UAAU,EAAE,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,YAAY,KAAK,YAAY,CAAC;CAChE;AAKD,eAAO,MAAM,iBAAiB,uFAyC7B,CAAC"}
|
|
@@ -11,6 +11,6 @@ interface CatalanDependencies {
|
|
|
11
11
|
isNegative: (x: NumericValue) => boolean;
|
|
12
12
|
isInteger: (x: NumericValue) => boolean;
|
|
13
13
|
}
|
|
14
|
-
export declare const createCatalan: import("../utils/factory.js").FactoryFunction<CatalanDependencies,
|
|
14
|
+
export declare const createCatalan: import("../utils/factory.js").FactoryFunction<CatalanDependencies, TypedFunction>;
|
|
15
15
|
export {};
|
|
16
16
|
//# sourceMappingURL=catalan.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"catalan.d.ts","sourceRoot":"","sources":["../../src/combinatorics/catalan.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAGhE,KAAK,aAAa,GAAG,SAAS,CAAC;AAE/B,KAAK,YAAY,GAAG,MAAM,GAAG,aAAa,CAAC;AAE3C,UAAU,mBAAmB;IAC3B,KAAK,EAAE,aAAa,CAAC;IACrB,SAAS,EAAE,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,YAAY,KAAK,YAAY,CAAC;IAC9D,YAAY,EAAE,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,YAAY,KAAK,YAAY,CAAC;IACjE,cAAc,EAAE,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,YAAY,KAAK,YAAY,CAAC;IACnE,YAAY,EAAE,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,YAAY,KAAK,YAAY,CAAC;IACjE,UAAU,EAAE,CAAC,CAAC,EAAE,YAAY,KAAK,OAAO,CAAC;IACzC,SAAS,EAAE,CAAC,CAAC,EAAE,YAAY,KAAK,OAAO,CAAC;CACzC;AAaD,eAAO,MAAM,aAAa,
|
|
1
|
+
{"version":3,"file":"catalan.d.ts","sourceRoot":"","sources":["../../src/combinatorics/catalan.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAGhE,KAAK,aAAa,GAAG,SAAS,CAAC;AAE/B,KAAK,YAAY,GAAG,MAAM,GAAG,aAAa,CAAC;AAE3C,UAAU,mBAAmB;IAC3B,KAAK,EAAE,aAAa,CAAC;IACrB,SAAS,EAAE,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,YAAY,KAAK,YAAY,CAAC;IAC9D,YAAY,EAAE,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,YAAY,KAAK,YAAY,CAAC;IACjE,cAAc,EAAE,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,YAAY,KAAK,YAAY,CAAC;IACnE,YAAY,EAAE,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,YAAY,KAAK,YAAY,CAAC;IACjE,UAAU,EAAE,CAAC,CAAC,EAAE,YAAY,KAAK,OAAO,CAAC;IACzC,SAAS,EAAE,CAAC,CAAC,EAAE,YAAY,KAAK,OAAO,CAAC;CACzC;AAaD,eAAO,MAAM,aAAa,mFA2CzB,CAAC"}
|
|
@@ -11,6 +11,6 @@ interface CompositionDependencies {
|
|
|
11
11
|
isInteger: (x: NumericValue) => boolean;
|
|
12
12
|
larger: (x: NumericValue, y: NumericValue) => boolean;
|
|
13
13
|
}
|
|
14
|
-
export declare const createComposition: import("../utils/factory.js").FactoryFunction<CompositionDependencies,
|
|
14
|
+
export declare const createComposition: import("../utils/factory.js").FactoryFunction<CompositionDependencies, TypedFunction>;
|
|
15
15
|
export {};
|
|
16
16
|
//# sourceMappingURL=composition.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"composition.d.ts","sourceRoot":"","sources":["../../src/combinatorics/composition.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAGhE,KAAK,aAAa,GAAG,SAAS,CAAC;AAE/B,KAAK,YAAY,GAAG,MAAM,GAAG,aAAa,CAAC;AAE3C,UAAU,uBAAuB;IAC/B,KAAK,EAAE,aAAa,CAAC;IACrB,SAAS,EAAE,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,YAAY,KAAK,YAAY,CAAC;IAC9D,YAAY,EAAE,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,YAAY,KAAK,YAAY,CAAC;IACjE,UAAU,EAAE,CAAC,CAAC,EAAE,YAAY,KAAK,OAAO,CAAC;IACzC,UAAU,EAAE,CAAC,CAAC,EAAE,YAAY,KAAK,OAAO,CAAC;IACzC,SAAS,EAAE,CAAC,CAAC,EAAE,YAAY,KAAK,OAAO,CAAC;IACxC,MAAM,EAAE,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,YAAY,KAAK,OAAO,CAAC;CACvD;AAaD,eAAO,MAAM,iBAAiB,
|
|
1
|
+
{"version":3,"file":"composition.d.ts","sourceRoot":"","sources":["../../src/combinatorics/composition.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAGhE,KAAK,aAAa,GAAG,SAAS,CAAC;AAE/B,KAAK,YAAY,GAAG,MAAM,GAAG,aAAa,CAAC;AAE3C,UAAU,uBAAuB;IAC/B,KAAK,EAAE,aAAa,CAAC;IACrB,SAAS,EAAE,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,YAAY,KAAK,YAAY,CAAC;IAC9D,YAAY,EAAE,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,YAAY,KAAK,YAAY,CAAC;IACjE,UAAU,EAAE,CAAC,CAAC,EAAE,YAAY,KAAK,OAAO,CAAC;IACzC,UAAU,EAAE,CAAC,CAAC,EAAE,YAAY,KAAK,OAAO,CAAC;IACzC,SAAS,EAAE,CAAC,CAAC,EAAE,YAAY,KAAK,OAAO,CAAC;IACxC,MAAM,EAAE,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,YAAY,KAAK,OAAO,CAAC;CACvD;AAaD,eAAO,MAAM,iBAAiB,uFAiD7B,CAAC"}
|
|
@@ -17,6 +17,6 @@ interface StirlingS2Dependencies {
|
|
|
17
17
|
bignumber?: (x: NumericValue) => BigNumberType;
|
|
18
18
|
larger: (x: NumericValue, y: NumericValue) => boolean;
|
|
19
19
|
}
|
|
20
|
-
export declare const createStirlingS2: import("../utils/factory.js").FactoryFunction<StirlingS2Dependencies,
|
|
20
|
+
export declare const createStirlingS2: import("../utils/factory.js").FactoryFunction<StirlingS2Dependencies, TypedFunction>;
|
|
21
21
|
export {};
|
|
22
22
|
//# sourceMappingURL=stirlingS2.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stirlingS2.d.ts","sourceRoot":"","sources":["../../src/combinatorics/stirlingS2.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAGhE,KAAK,aAAa,GAAG,SAAS,CAAC;AAE/B,KAAK,YAAY,GAAG,MAAM,GAAG,aAAa,CAAC;AAE3C,UAAU,sBAAsB;IAC9B,KAAK,EAAE,aAAa,CAAC;IACrB,SAAS,EAAE,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,YAAY,KAAK,YAAY,CAAC;IAC9D,cAAc,EAAE,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,YAAY,KAAK,YAAY,CAAC;IACnE,cAAc,EAAE,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,YAAY,KAAK,YAAY,CAAC;IACnE,YAAY,EAAE,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,YAAY,KAAK,YAAY,CAAC;IACjE,GAAG,EAAE,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,YAAY,KAAK,YAAY,CAAC;IACxD,SAAS,EAAE,CAAC,CAAC,EAAE,YAAY,KAAK,YAAY,CAAC;IAC7C,YAAY,EAAE,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,YAAY,KAAK,YAAY,CAAC;IACjE,UAAU,EAAE,CAAC,CAAC,EAAE,YAAY,KAAK,OAAO,CAAC;IACzC,SAAS,EAAE,CAAC,CAAC,EAAE,YAAY,KAAK,OAAO,CAAC;IACxC,MAAM,EAAE,CAAC,CAAC,EAAE,YAAY,KAAK,MAAM,CAAC;IACpC,SAAS,CAAC,EAAE,CAAC,CAAC,EAAE,YAAY,KAAK,aAAa,CAAC;IAC/C,MAAM,EAAE,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,YAAY,KAAK,OAAO,CAAC;CACvD;AAmBD,eAAO,MAAM,gBAAgB,
|
|
1
|
+
{"version":3,"file":"stirlingS2.d.ts","sourceRoot":"","sources":["../../src/combinatorics/stirlingS2.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAGhE,KAAK,aAAa,GAAG,SAAS,CAAC;AAE/B,KAAK,YAAY,GAAG,MAAM,GAAG,aAAa,CAAC;AAE3C,UAAU,sBAAsB;IAC9B,KAAK,EAAE,aAAa,CAAC;IACrB,SAAS,EAAE,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,YAAY,KAAK,YAAY,CAAC;IAC9D,cAAc,EAAE,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,YAAY,KAAK,YAAY,CAAC;IACnE,cAAc,EAAE,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,YAAY,KAAK,YAAY,CAAC;IACnE,YAAY,EAAE,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,YAAY,KAAK,YAAY,CAAC;IACjE,GAAG,EAAE,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,YAAY,KAAK,YAAY,CAAC;IACxD,SAAS,EAAE,CAAC,CAAC,EAAE,YAAY,KAAK,YAAY,CAAC;IAC7C,YAAY,EAAE,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,YAAY,KAAK,YAAY,CAAC;IACjE,UAAU,EAAE,CAAC,CAAC,EAAE,YAAY,KAAK,OAAO,CAAC;IACzC,SAAS,EAAE,CAAC,CAAC,EAAE,YAAY,KAAK,OAAO,CAAC;IACxC,MAAM,EAAE,CAAC,CAAC,EAAE,YAAY,KAAK,MAAM,CAAC;IACpC,SAAS,CAAC,EAAE,CAAC,CAAC,EAAE,YAAY,KAAK,aAAa,CAAC;IAC/C,MAAM,EAAE,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,YAAY,KAAK,OAAO,CAAC;CACvD;AAmBD,eAAO,MAAM,gBAAgB,sFAwF5B,CAAC"}
|
package/dist/complex/arg.d.ts
CHANGED
|
@@ -2,6 +2,6 @@ import type { TypedFunction } from '../core/function/typed.js';
|
|
|
2
2
|
interface ArgDependencies {
|
|
3
3
|
typed: TypedFunction;
|
|
4
4
|
}
|
|
5
|
-
export declare const createArg: import("../utils/factory.js").FactoryFunction<ArgDependencies,
|
|
5
|
+
export declare const createArg: import("../utils/factory.js").FactoryFunction<ArgDependencies, TypedFunction>;
|
|
6
6
|
export {};
|
|
7
7
|
//# sourceMappingURL=arg.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"arg.d.ts","sourceRoot":"","sources":["../../src/complex/arg.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAc/D,UAAU,eAAe;IACvB,KAAK,EAAE,aAAa,CAAC;CACtB;AAKD,eAAO,MAAM,SAAS,
|
|
1
|
+
{"version":3,"file":"arg.d.ts","sourceRoot":"","sources":["../../src/complex/arg.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAc/D,UAAU,eAAe;IACvB,KAAK,EAAE,aAAa,CAAC;CACtB;AAKD,eAAO,MAAM,SAAS,+EAmDrB,CAAC"}
|
package/dist/complex/conj.d.ts
CHANGED
|
@@ -2,6 +2,6 @@ import type { TypedFunction } from '../core/function/typed.js';
|
|
|
2
2
|
interface ConjDependencies {
|
|
3
3
|
typed: TypedFunction;
|
|
4
4
|
}
|
|
5
|
-
export declare const createConj: import("../utils/factory.js").FactoryFunction<ConjDependencies,
|
|
5
|
+
export declare const createConj: import("../utils/factory.js").FactoryFunction<ConjDependencies, TypedFunction>;
|
|
6
6
|
export {};
|
|
7
7
|
//# sourceMappingURL=conj.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"conj.d.ts","sourceRoot":"","sources":["../../src/complex/conj.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAO/D,UAAU,gBAAgB;IACxB,KAAK,EAAE,aAAa,CAAC;CACtB;AAKD,eAAO,MAAM,UAAU,
|
|
1
|
+
{"version":3,"file":"conj.d.ts","sourceRoot":"","sources":["../../src/complex/conj.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAO/D,UAAU,gBAAgB;IACxB,KAAK,EAAE,aAAa,CAAC;CACtB;AAKD,eAAO,MAAM,UAAU,gFA8CtB,CAAC"}
|
package/dist/complex/im.d.ts
CHANGED
|
@@ -2,6 +2,6 @@ import type { TypedFunction } from '../core/function/typed.js';
|
|
|
2
2
|
interface ImDependencies {
|
|
3
3
|
typed: TypedFunction;
|
|
4
4
|
}
|
|
5
|
-
export declare const createIm: import("../utils/factory.js").FactoryFunction<ImDependencies,
|
|
5
|
+
export declare const createIm: import("../utils/factory.js").FactoryFunction<ImDependencies, TypedFunction>;
|
|
6
6
|
export {};
|
|
7
7
|
//# sourceMappingURL=im.d.ts.map
|
package/dist/complex/im.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"im.d.ts","sourceRoot":"","sources":["../../src/complex/im.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAgB/D,UAAU,cAAc;IACtB,KAAK,EAAE,aAAa,CAAC;CACtB;AAKD,eAAO,MAAM,QAAQ,
|
|
1
|
+
{"version":3,"file":"im.d.ts","sourceRoot":"","sources":["../../src/complex/im.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAgB/D,UAAU,cAAc;IACtB,KAAK,EAAE,aAAa,CAAC;CACtB;AAKD,eAAO,MAAM,QAAQ,8EAuCnB,CAAC"}
|
package/dist/complex/re.d.ts
CHANGED
|
@@ -2,6 +2,6 @@ import type { TypedFunction } from '../core/function/typed.js';
|
|
|
2
2
|
interface ReDependencies {
|
|
3
3
|
typed: TypedFunction;
|
|
4
4
|
}
|
|
5
|
-
export declare const createRe: import("../utils/factory.js").FactoryFunction<ReDependencies,
|
|
5
|
+
export declare const createRe: import("../utils/factory.js").FactoryFunction<ReDependencies, TypedFunction>;
|
|
6
6
|
export {};
|
|
7
7
|
//# sourceMappingURL=re.d.ts.map
|
package/dist/complex/re.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"re.d.ts","sourceRoot":"","sources":["../../src/complex/re.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAQ/D,UAAU,cAAc;IACtB,KAAK,EAAE,aAAa,CAAC;CACtB;AAKD,eAAO,MAAM,QAAQ,
|
|
1
|
+
{"version":3,"file":"re.d.ts","sourceRoot":"","sources":["../../src/complex/re.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAQ/D,UAAU,cAAc;IACtB,KAAK,EAAE,aAAa,CAAC;CACtB;AAKD,eAAO,MAAM,QAAQ,8EAuCnB,CAAC"}
|
|
@@ -39,17 +39,27 @@
|
|
|
39
39
|
* Type definition for a signature map used in typed functions
|
|
40
40
|
*/
|
|
41
41
|
export type TypedSignatures = Record<string, (...args: unknown[]) => unknown>;
|
|
42
|
+
/**
|
|
43
|
+
* The signatures accepted when creating a typed function. Implementations are typed
|
|
44
|
+
* `(...args: never[]) => unknown`, the top type for "any function" in an input
|
|
45
|
+
* position (see `referToSelf` below).
|
|
46
|
+
*/
|
|
47
|
+
type TypedSignatureMap = Record<string, (...args: never[]) => unknown>;
|
|
42
48
|
/**
|
|
43
49
|
* Type definition for a typed function
|
|
44
50
|
*/
|
|
45
51
|
export interface TypedFunction {
|
|
52
|
+
(name: string, signatures: TypedSignatureMap | TypedFunction, ...moreSignatures: Array<TypedSignatureMap | TypedFunction>): TypedFunction;
|
|
46
53
|
(...args: unknown[]): unknown;
|
|
47
54
|
/** The signatures of this typed function (always present on a typed function) */
|
|
48
55
|
signatures: TypedSignatures;
|
|
49
56
|
/** Check if a value is a typed function */
|
|
50
57
|
isTypedFunction: (value: unknown) => value is TypedFunction;
|
|
51
58
|
referToSelf: (callback: (self: TypedFunction) => (...args: never[]) => unknown) => (...args: unknown[]) => unknown;
|
|
52
|
-
referTo: (...
|
|
59
|
+
referTo: (...args: [
|
|
60
|
+
...signatureNames: string[],
|
|
61
|
+
callback: (...refs: Array<(...args: unknown[]) => unknown>) => (...args: never[]) => unknown
|
|
62
|
+
]) => (...args: unknown[]) => unknown;
|
|
53
63
|
create: () => TypedFunction;
|
|
54
64
|
addTypes: (types: TypeDefinition[]) => void;
|
|
55
65
|
addConversions: (conversions: TypeConversion[]) => void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"typed.d.ts","sourceRoot":"","sources":["../../../src/core/function/typed.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AAiDH;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,OAAO,CAAC,CAAC;AAE9E;;GAEG;AACH,MAAM,WAAW,aAAa;
|
|
1
|
+
{"version":3,"file":"typed.d.ts","sourceRoot":"","sources":["../../../src/core/function/typed.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,6 +8,12 @@
|
|
|
8
8
|
* @packageDocumentation
|
|
9
9
|
*/
|
|
10
10
|
import { createEvaluate } from '@danielsimonjr/mathts-expression';
|
|
11
|
+
/** Map-like scope accepted by the expression compiler. */
|
|
12
|
+
interface Scope {
|
|
13
|
+
has(key: string): boolean;
|
|
14
|
+
get(key: string): unknown;
|
|
15
|
+
set(key: string, value: unknown): void;
|
|
16
|
+
}
|
|
11
17
|
/**
|
|
12
18
|
* Parse a math expression string into an AST node.
|
|
13
19
|
* Can be used for inspection or pre-compilation.
|
|
@@ -16,21 +22,52 @@ import { createEvaluate } from '@danielsimonjr/mathts-expression';
|
|
|
16
22
|
* typed-function conversion registrations.
|
|
17
23
|
*/
|
|
18
24
|
export declare const parse: Parameters<typeof createEvaluate>[0];
|
|
25
|
+
/**
|
|
26
|
+
* Options for {@link evaluate}, {@link compileExpr}, and {@link parser}.
|
|
27
|
+
*/
|
|
28
|
+
export interface PhysicsEvaluateOptions {
|
|
29
|
+
/**
|
|
30
|
+
* When `true`, disables the pre-compile AST validator.
|
|
31
|
+
* Only opt out when the host is providing trusted, hand-authored input.
|
|
32
|
+
*/
|
|
33
|
+
unsafe?: boolean;
|
|
34
|
+
/**
|
|
35
|
+
* Opt-in physics reading of bare `e`.
|
|
36
|
+
*
|
|
37
|
+
* When `true`, `e` is the elementary charge `1.602176634e-19 C` (a Unit).
|
|
38
|
+
* `E` stays unbound so a formula can use it for energy. Euler's number is
|
|
39
|
+
* only `exp(x)`, for example `exp(1)`. An explicit scope binding for `e`
|
|
40
|
+
* still wins. Default `false`: `e` is Euler's number.
|
|
41
|
+
*/
|
|
42
|
+
physics?: boolean;
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Scope in which bare `e` is the elementary charge.
|
|
46
|
+
*
|
|
47
|
+
* Pass the result as `evaluate`'s scope, or use `{ physics: true }`.
|
|
48
|
+
* Entries already present on `scope` win, including an explicit `e`.
|
|
49
|
+
*/
|
|
50
|
+
export declare function physicsScope(scope?: Record<string, unknown> | Scope): Record<string, unknown> | Scope;
|
|
19
51
|
/**
|
|
20
52
|
* Evaluate a math expression string against the full activated math scope.
|
|
21
53
|
*
|
|
22
54
|
* @param expr - Expression string (e.g., '2 + 3', 'sin(pi/2)', 'x^2')
|
|
23
55
|
* @param scope - Optional variable bindings (e.g., { x: 3 })
|
|
56
|
+
* @param options - Optional flags. `{ physics: true }` reads bare `e` as the elementary charge.
|
|
24
57
|
* @returns The result of evaluating the expression
|
|
25
58
|
*
|
|
26
59
|
* @example
|
|
27
60
|
* ```ts
|
|
28
|
-
* evaluate('2 + 3');
|
|
29
|
-
* evaluate('sin(pi / 2)');
|
|
30
|
-
* evaluate('x^2 + 1', { x: 3 })
|
|
61
|
+
* evaluate('2 + 3'); // 5
|
|
62
|
+
* evaluate('sin(pi / 2)'); // 1
|
|
63
|
+
* evaluate('x^2 + 1', { x: 3 }); // 10
|
|
64
|
+
* evaluate('e'); // Euler's number
|
|
65
|
+
* evaluate('e', undefined, { physics: true }); // 1.602176634e-19 C
|
|
66
|
+
* evaluate('exp(1)', undefined, { physics: true }); // Euler's number
|
|
31
67
|
* ```
|
|
32
68
|
*/
|
|
33
|
-
export declare
|
|
69
|
+
export declare function evaluate(expr: string, scope?: Record<string, unknown> | Scope, options?: PhysicsEvaluateOptions): unknown;
|
|
70
|
+
export declare function evaluate(exprs: string[], scope?: Record<string, unknown> | Scope, options?: PhysicsEvaluateOptions): unknown[];
|
|
34
71
|
/**
|
|
35
72
|
* Compile a math expression into a reusable CompiledExpression.
|
|
36
73
|
*
|
|
@@ -38,6 +75,7 @@ export declare const evaluate: ReturnType<typeof createEvaluate>;
|
|
|
38
75
|
* many times with different variable bindings.
|
|
39
76
|
*
|
|
40
77
|
* @param expr - Expression string to compile
|
|
78
|
+
* @param options - Optional flags. `{ physics: true }` reads bare `e` as the elementary charge.
|
|
41
79
|
* @returns CompiledExpression with an evaluate(scope?) method
|
|
42
80
|
*
|
|
43
81
|
* @example
|
|
@@ -45,9 +83,10 @@ export declare const evaluate: ReturnType<typeof createEvaluate>;
|
|
|
45
83
|
* const compiled = compileExpr('x^2 + y');
|
|
46
84
|
* compiled.evaluate({ x: 2, y: 1 }); // 5
|
|
47
85
|
* compiled.evaluate({ x: 3, y: 2 }); // 11
|
|
86
|
+
* compileExpr('e', { physics: true }).evaluate(); // 1.602176634e-19 C
|
|
48
87
|
* ```
|
|
49
88
|
*/
|
|
50
|
-
export declare function compileExpr(expr: string): import("@danielsimonjr/mathts-expression").CompiledExpression;
|
|
89
|
+
export declare function compileExpr(expr: string, options?: PhysicsEvaluateOptions): import("@danielsimonjr/mathts-expression").CompiledExpression;
|
|
51
90
|
/**
|
|
52
91
|
* A stateful parser with a retained scope. Variables persist across
|
|
53
92
|
* `evaluate` calls.
|
|
@@ -55,6 +94,7 @@ export declare function compileExpr(expr: string): import("@danielsimonjr/mathts
|
|
|
55
94
|
* Assignment expressions (`x = 5`) are rejected by the expression security
|
|
56
95
|
* validator — manage retained state with `set` / `get` instead.
|
|
57
96
|
*
|
|
97
|
+
* @param options - Optional flags. `{ physics: true }` reads bare `e` as the elementary charge.
|
|
58
98
|
* @example
|
|
59
99
|
* ```ts
|
|
60
100
|
* const p = parser();
|
|
@@ -62,9 +102,10 @@ export declare function compileExpr(expr: string): import("@danielsimonjr/mathts
|
|
|
62
102
|
* p.evaluate('x^2'); // 9
|
|
63
103
|
* p.set('y', p.evaluate('x + 1')); // retain a computed value
|
|
64
104
|
* p.get('y'); // 4
|
|
105
|
+
* parser({ physics: true }).evaluate('exp(1)'); // Euler's number
|
|
65
106
|
* ```
|
|
66
107
|
*/
|
|
67
|
-
export declare function parser(): {
|
|
108
|
+
export declare function parser(options?: PhysicsEvaluateOptions): {
|
|
68
109
|
/** The live scope object — assignments during `evaluate` land here. */
|
|
69
110
|
scope: Record<string, unknown>;
|
|
70
111
|
/** Evaluate an expression against the retained scope. */
|
|
@@ -88,4 +129,5 @@ export declare function replacer(_key: string, value: unknown): unknown;
|
|
|
88
129
|
* non-finite numbers tagged by {@link replacer} / the types' own `toJSON()`.
|
|
89
130
|
*/
|
|
90
131
|
export declare function reviver(_key: string, value: unknown): unknown;
|
|
132
|
+
export {};
|
|
91
133
|
//# sourceMappingURL=evaluate.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"evaluate.d.ts","sourceRoot":"","sources":["../../src/factories/evaluate.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EACL,cAAc,EAEf,MAAM,kCAAkC,CAAC;
|
|
1
|
+
{"version":3,"file":"evaluate.d.ts","sourceRoot":"","sources":["../../src/factories/evaluate.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EACL,cAAc,EAEf,MAAM,kCAAkC,CAAC;AAgB1C,0DAA0D;AAC1D,UAAU,KAAK;IACb,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IAC1B,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IAC1B,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI,CAAC;CACxC;AAqFD;;;;;;GAMG;AACH,eAAO,MAAM,KAAK,EAAyB,UAAU,CAAC,OAAO,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;AAmBhF;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC;;;OAGG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;;;;;;OAOG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAWD;;;;;GAKG;AACH,wBAAgB,YAAY,CAC1B,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,KAAK,GACtC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,KAAK,CAmBjC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,QAAQ,CACtB,IAAI,EAAE,MAAM,EACZ,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,KAAK,EACvC,OAAO,CAAC,EAAE,sBAAsB,GAC/B,OAAO,CAAC;AACX,wBAAgB,QAAQ,CACtB,KAAK,EAAE,MAAM,EAAE,EACf,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,KAAK,EACvC,OAAO,CAAC,EAAE,sBAAsB,GAC/B,OAAO,EAAE,CAAC;AAYb;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,sBAAsB,iEAazE;AAMD;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,MAAM,CAAC,OAAO,CAAC,EAAE,sBAAsB;IAOnD,uEAAuE;;IAEvE,yDAAyD;mBAC1C,MAAM,GAAG,OAAO;IAG/B,gCAAgC;cACtB,MAAM,GAAG,OAAO;IAG1B,+BAA+B;cACrB,MAAM,SAAS,OAAO,GAAG,IAAI;IAGvC,kCAAkC;iBACrB,MAAM,GAAG,IAAI;IAG1B,oCAAoC;aAC3B,IAAI;EAIhB;AAMD;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO,CAO9D;AAED;;;GAGG;AACH,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO,CAgB7D"}
|