mathjs 8.1.0 → 12.2.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/CONTRIBUTING.md +11 -10
- package/HISTORY.md +772 -1
- package/NOTICE +1 -1
- package/README.md +33 -16
- package/bin/cli.js +12 -12
- package/lib/browser/math.js +2 -40
- package/lib/browser/math.js.LICENSE.txt +43 -0
- package/lib/browser/math.js.map +1 -1
- package/lib/cjs/constants.js +40 -61
- package/lib/cjs/core/config.js +2 -3
- package/lib/cjs/core/create.js +31 -46
- package/lib/cjs/core/function/config.js +15 -20
- package/lib/cjs/core/function/import.js +28 -82
- package/lib/cjs/core/function/typed.js +71 -49
- package/lib/cjs/defaultInstance.js +4 -12
- package/lib/cjs/entry/allFactoriesAny.js +5 -10
- package/lib/cjs/entry/allFactoriesNumber.js +5 -10
- package/lib/cjs/entry/configReadonly.js +4 -11
- package/lib/cjs/entry/dependenciesAny/dependenciesAbs.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesAccessorNode.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesAcos.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesAcosh.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesAcot.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesAcoth.generated.js +3 -8
- package/lib/cjs/entry/dependenciesAny/dependenciesAcsc.generated.js +3 -8
- package/lib/cjs/entry/dependenciesAny/dependenciesAcsch.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesAdd.generated.js +5 -11
- package/lib/cjs/entry/dependenciesAny/dependenciesAddScalar.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesAnd.generated.js +5 -10
- package/lib/cjs/entry/dependenciesAny/dependenciesAndTransform.generated.js +29 -0
- package/lib/cjs/entry/dependenciesAny/dependenciesApply.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesApplyTransform.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesArg.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesArrayNode.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesAsec.generated.js +3 -8
- package/lib/cjs/entry/dependenciesAny/dependenciesAsech.generated.js +3 -8
- package/lib/cjs/entry/dependenciesAny/dependenciesAsin.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesAsinh.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesAssignmentNode.generated.js +3 -8
- package/lib/cjs/entry/dependenciesAny/dependenciesAtan.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesAtan2.generated.js +5 -10
- package/lib/cjs/entry/dependenciesAny/dependenciesAtanh.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesAtomicMass.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesAvogadro.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesBellNumbers.generated.js +3 -10
- package/lib/cjs/entry/dependenciesAny/dependenciesBigNumberClass.generated.js +3 -5
- package/lib/cjs/entry/dependenciesAny/dependenciesBignumber.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesBin.generated.js +5 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesBitAnd.generated.js +5 -8
- package/lib/cjs/entry/dependenciesAny/dependenciesBitAndTransform.generated.js +29 -0
- package/lib/cjs/entry/dependenciesAny/dependenciesBitNot.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesBitOr.generated.js +5 -9
- package/lib/cjs/entry/dependenciesAny/dependenciesBitOrTransform.generated.js +25 -0
- package/lib/cjs/entry/dependenciesAny/dependenciesBitXor.generated.js +5 -8
- package/lib/cjs/entry/dependenciesAny/dependenciesBlockNode.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesBohrMagneton.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesBohrRadius.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesBoltzmann.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesBoolean.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesCatalan.generated.js +3 -12
- package/lib/cjs/entry/dependenciesAny/dependenciesCbrt.generated.js +3 -12
- package/lib/cjs/entry/dependenciesAny/dependenciesCeil.generated.js +7 -9
- package/lib/cjs/entry/dependenciesAny/dependenciesChain.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesChainClass.generated.js +5 -5
- package/lib/cjs/entry/dependenciesAny/dependenciesClassicalElectronRadius.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesClone.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesColumn.generated.js +3 -9
- package/lib/cjs/entry/dependenciesAny/dependenciesColumnTransform.generated.js +3 -9
- package/lib/cjs/entry/dependenciesAny/dependenciesCombinations.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesCombinationsWithRep.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesCompare.generated.js +5 -11
- package/lib/cjs/entry/dependenciesAny/dependenciesCompareNatural.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesCompareText.generated.js +5 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesCompile.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesComplex.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesComplexClass.generated.js +3 -5
- package/lib/cjs/entry/dependenciesAny/dependenciesComposition.generated.js +3 -12
- package/lib/cjs/entry/dependenciesAny/dependenciesConcat.generated.js +3 -8
- package/lib/cjs/entry/dependenciesAny/dependenciesConcatTransform.generated.js +3 -8
- package/lib/cjs/entry/dependenciesAny/dependenciesConditionalNode.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesConductanceQuantum.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesConj.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesConstantNode.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesCorr.generated.js +35 -0
- package/lib/cjs/entry/dependenciesAny/dependenciesCos.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesCosh.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesCot.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesCoth.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesCoulomb.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesCount.generated.js +21 -0
- package/lib/cjs/entry/dependenciesAny/dependenciesCreateUnit.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesCross.generated.js +3 -9
- package/lib/cjs/entry/dependenciesAny/dependenciesCsc.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesCsch.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesCtranspose.generated.js +3 -8
- package/lib/cjs/entry/dependenciesAny/dependenciesCube.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesCumSum.generated.js +21 -0
- package/lib/cjs/entry/dependenciesAny/dependenciesCumSumTransform.generated.js +21 -0
- package/lib/cjs/entry/dependenciesAny/dependenciesDeepEqual.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesDenseMatrixClass.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesDerivative.generated.js +3 -16
- package/lib/cjs/entry/dependenciesAny/dependenciesDet.generated.js +9 -15
- package/lib/cjs/entry/dependenciesAny/dependenciesDeuteronMass.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesDiag.generated.js +3 -9
- package/lib/cjs/entry/dependenciesAny/dependenciesDiff.generated.js +3 -9
- package/lib/cjs/entry/dependenciesAny/dependenciesDiffTransform.generated.js +3 -10
- package/lib/cjs/entry/dependenciesAny/dependenciesDistance.generated.js +7 -17
- package/lib/cjs/entry/dependenciesAny/dependenciesDivide.generated.js +3 -11
- package/lib/cjs/entry/dependenciesAny/dependenciesDivideScalar.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesDot.generated.js +3 -10
- package/lib/cjs/entry/dependenciesAny/dependenciesDotDivide.generated.js +5 -10
- package/lib/cjs/entry/dependenciesAny/dependenciesDotMultiply.generated.js +5 -9
- package/lib/cjs/entry/dependenciesAny/dependenciesDotPow.generated.js +5 -10
- package/lib/cjs/entry/dependenciesAny/dependenciesE.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesEfimovFactor.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesEigs.generated.js +39 -19
- package/lib/cjs/entry/dependenciesAny/dependenciesElectricConstant.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesElectronMass.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesElementaryCharge.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesEqual.generated.js +5 -9
- package/lib/cjs/entry/dependenciesAny/dependenciesEqualScalar.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesEqualText.generated.js +3 -8
- package/lib/cjs/entry/dependenciesAny/dependenciesErf.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesEvaluate.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesExp.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesExpm.generated.js +3 -11
- package/lib/cjs/entry/dependenciesAny/dependenciesExpm1.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesFactorial.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesFalse.generated.js +3 -5
- package/lib/cjs/entry/dependenciesAny/dependenciesFaraday.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesFermiCoupling.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesFft.generated.js +41 -0
- package/lib/cjs/entry/dependenciesAny/dependenciesFibonacciHeapClass.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesFilter.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesFilterTransform.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesFineStructure.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesFirstRadiation.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesFix.generated.js +9 -10
- package/lib/cjs/entry/dependenciesAny/dependenciesFlatten.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesFloor.generated.js +7 -9
- package/lib/cjs/entry/dependenciesAny/dependenciesForEach.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesForEachTransform.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesFormat.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesFraction.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesFractionClass.generated.js +3 -5
- package/lib/cjs/entry/dependenciesAny/dependenciesFreqz.generated.js +27 -0
- package/lib/cjs/entry/dependenciesAny/dependenciesFunctionAssignmentNode.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesFunctionNode.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesGamma.generated.js +3 -10
- package/lib/cjs/entry/dependenciesAny/dependenciesGasConstant.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesGcd.generated.js +9 -10
- package/lib/cjs/entry/dependenciesAny/dependenciesGetMatrixDataType.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesGravitationConstant.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesGravity.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesHartreeEnergy.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesHasNumericValue.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesHelp.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesHelpClass.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesHex.generated.js +5 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesHypot.generated.js +3 -13
- package/lib/cjs/entry/dependenciesAny/dependenciesI.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesIdentity.generated.js +3 -10
- package/lib/cjs/entry/dependenciesAny/dependenciesIfft.generated.js +23 -0
- package/lib/cjs/entry/dependenciesAny/dependenciesIm.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesImmutableDenseMatrixClass.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesIndex.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesIndexClass.generated.js +5 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesIndexNode.generated.js +3 -10
- package/lib/cjs/entry/dependenciesAny/dependenciesIndexTransform.generated.js +5 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesInfinity.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesIntersect.generated.js +9 -16
- package/lib/cjs/entry/dependenciesAny/dependenciesInv.generated.js +3 -14
- package/lib/cjs/entry/dependenciesAny/dependenciesInverseConductanceQuantum.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesInvmod.generated.js +31 -0
- package/lib/cjs/entry/dependenciesAny/dependenciesIsInteger.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesIsNaN.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesIsNegative.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesIsNumeric.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesIsPositive.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesIsPrime.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesIsZero.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesKldivergence.generated.js +5 -13
- package/lib/cjs/entry/dependenciesAny/dependenciesKlitzing.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesKron.generated.js +3 -8
- package/lib/cjs/entry/dependenciesAny/dependenciesLN10.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesLN2.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesLOG10E.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesLOG2E.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesLarger.generated.js +5 -8
- package/lib/cjs/entry/dependenciesAny/dependenciesLargerEq.generated.js +5 -8
- package/lib/cjs/entry/dependenciesAny/dependenciesLcm.generated.js +5 -8
- package/lib/cjs/entry/dependenciesAny/dependenciesLeafCount.generated.js +19 -0
- package/lib/cjs/entry/dependenciesAny/dependenciesLeftShift.generated.js +5 -10
- package/lib/cjs/entry/dependenciesAny/dependenciesLgamma.generated.js +19 -0
- package/lib/cjs/entry/dependenciesAny/dependenciesLog.generated.js +3 -8
- package/lib/cjs/entry/dependenciesAny/dependenciesLog10.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesLog1p.generated.js +3 -9
- package/lib/cjs/entry/dependenciesAny/dependenciesLog2.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesLoschmidt.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesLsolve.generated.js +5 -14
- package/lib/cjs/entry/dependenciesAny/dependenciesLsolveAll.generated.js +5 -14
- package/lib/cjs/entry/dependenciesAny/dependenciesLup.generated.js +5 -20
- package/lib/cjs/entry/dependenciesAny/dependenciesLusolve.generated.js +3 -12
- package/lib/cjs/entry/dependenciesAny/dependenciesLyap.generated.js +25 -0
- package/lib/cjs/entry/dependenciesAny/dependenciesMad.generated.js +3 -10
- package/lib/cjs/entry/dependenciesAny/dependenciesMagneticConstant.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesMagneticFluxQuantum.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesMap.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesMapTransform.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesMatrix.generated.js +3 -9
- package/lib/cjs/entry/dependenciesAny/dependenciesMatrixClass.generated.js +3 -5
- package/lib/cjs/entry/dependenciesAny/dependenciesMatrixFromColumns.generated.js +23 -0
- package/lib/cjs/entry/dependenciesAny/dependenciesMatrixFromFunction.generated.js +21 -0
- package/lib/cjs/entry/dependenciesAny/dependenciesMatrixFromRows.generated.js +23 -0
- package/lib/cjs/entry/dependenciesAny/dependenciesMax.generated.js +3 -8
- package/lib/cjs/entry/dependenciesAny/dependenciesMaxTransform.generated.js +3 -8
- package/lib/cjs/entry/dependenciesAny/dependenciesMean.generated.js +3 -8
- package/lib/cjs/entry/dependenciesAny/dependenciesMeanTransform.generated.js +3 -8
- package/lib/cjs/entry/dependenciesAny/dependenciesMedian.generated.js +3 -10
- package/lib/cjs/entry/dependenciesAny/dependenciesMin.generated.js +3 -8
- package/lib/cjs/entry/dependenciesAny/dependenciesMinTransform.generated.js +3 -8
- package/lib/cjs/entry/dependenciesAny/dependenciesMod.generated.js +9 -9
- package/lib/cjs/entry/dependenciesAny/dependenciesMode.generated.js +3 -8
- package/lib/cjs/entry/dependenciesAny/dependenciesMolarMass.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesMolarMassC12.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesMolarPlanckConstant.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesMolarVolume.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesMultinomial.generated.js +3 -12
- package/lib/cjs/entry/dependenciesAny/dependenciesMultiply.generated.js +3 -11
- package/lib/cjs/entry/dependenciesAny/dependenciesMultiplyScalar.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesNaN.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesNeutronMass.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesNode.generated.js +3 -5
- package/lib/cjs/entry/dependenciesAny/dependenciesNorm.generated.js +3 -18
- package/lib/cjs/entry/dependenciesAny/dependenciesNot.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesNthRoot.generated.js +5 -9
- package/lib/cjs/entry/dependenciesAny/dependenciesNthRoots.generated.js +3 -8
- package/lib/cjs/entry/dependenciesAny/dependenciesNuclearMagneton.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesNull.generated.js +3 -5
- package/lib/cjs/entry/dependenciesAny/dependenciesNumber.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesNumeric.generated.js +3 -8
- package/lib/cjs/entry/dependenciesAny/dependenciesObjectNode.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesOct.generated.js +5 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesOnes.generated.js +3 -8
- package/lib/cjs/entry/dependenciesAny/dependenciesOperatorNode.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesOr.generated.js +5 -9
- package/lib/cjs/entry/dependenciesAny/dependenciesOrTransform.generated.js +25 -0
- package/lib/cjs/entry/dependenciesAny/dependenciesParenthesisNode.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesParse.generated.js +3 -22
- package/lib/cjs/entry/dependenciesAny/dependenciesParser.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesParserClass.generated.js +5 -8
- package/lib/cjs/entry/dependenciesAny/dependenciesPartitionSelect.generated.js +3 -9
- package/lib/cjs/entry/dependenciesAny/dependenciesPermutations.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesPhi.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesPi.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesPickRandom.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesPinv.generated.js +39 -0
- package/lib/cjs/entry/dependenciesAny/dependenciesPlanckCharge.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesPlanckConstant.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesPlanckLength.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesPlanckMass.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesPlanckTemperature.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesPlanckTime.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesPolynomialRoot.generated.js +41 -0
- package/lib/cjs/entry/dependenciesAny/dependenciesPow.generated.js +5 -12
- package/lib/cjs/entry/dependenciesAny/dependenciesPrint.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesPrintTransform.generated.js +23 -0
- package/lib/cjs/entry/dependenciesAny/dependenciesProd.generated.js +3 -8
- package/lib/cjs/entry/dependenciesAny/dependenciesProtonMass.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesQr.generated.js +5 -22
- package/lib/cjs/entry/dependenciesAny/dependenciesQuantileSeq.generated.js +17 -10
- package/lib/cjs/entry/dependenciesAny/dependenciesQuantileSeqTransform.generated.js +39 -0
- package/lib/cjs/entry/dependenciesAny/dependenciesQuantumOfCirculation.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesRandom.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesRandomInt.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesRange.generated.js +7 -12
- package/lib/cjs/entry/dependenciesAny/dependenciesRangeClass.generated.js +3 -5
- package/lib/cjs/entry/dependenciesAny/dependenciesRangeNode.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesRangeTransform.generated.js +7 -12
- package/lib/cjs/entry/dependenciesAny/dependenciesRationalize.generated.js +17 -22
- package/lib/cjs/entry/dependenciesAny/dependenciesRe.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesReducedPlanckConstant.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesRelationalNode.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesReplacer.generated.js +3 -5
- package/lib/cjs/entry/dependenciesAny/dependenciesReshape.generated.js +3 -8
- package/lib/cjs/entry/dependenciesAny/dependenciesResize.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesResolve.generated.js +27 -0
- package/lib/cjs/entry/dependenciesAny/dependenciesResultSet.generated.js +3 -5
- package/lib/cjs/entry/dependenciesAny/dependenciesReviver.generated.js +3 -5
- package/lib/cjs/entry/dependenciesAny/dependenciesRightArithShift.generated.js +5 -10
- package/lib/cjs/entry/dependenciesAny/dependenciesRightLogShift.generated.js +5 -10
- package/lib/cjs/entry/dependenciesAny/dependenciesRotate.generated.js +3 -8
- package/lib/cjs/entry/dependenciesAny/dependenciesRotationMatrix.generated.js +3 -16
- package/lib/cjs/entry/dependenciesAny/dependenciesRound.generated.js +3 -11
- package/lib/cjs/entry/dependenciesAny/dependenciesRow.generated.js +3 -9
- package/lib/cjs/entry/dependenciesAny/dependenciesRowTransform.generated.js +3 -9
- package/lib/cjs/entry/dependenciesAny/dependenciesRydberg.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesSQRT1_2.generated.js +4 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesSQRT2.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesSackurTetrode.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesSchur.generated.js +29 -0
- package/lib/cjs/entry/dependenciesAny/dependenciesSec.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesSech.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesSecondRadiation.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesSetCartesian.generated.js +3 -11
- package/lib/cjs/entry/dependenciesAny/dependenciesSetDifference.generated.js +3 -11
- package/lib/cjs/entry/dependenciesAny/dependenciesSetDistinct.generated.js +3 -11
- package/lib/cjs/entry/dependenciesAny/dependenciesSetIntersect.generated.js +3 -11
- package/lib/cjs/entry/dependenciesAny/dependenciesSetIsSubset.generated.js +3 -10
- package/lib/cjs/entry/dependenciesAny/dependenciesSetMultiplicity.generated.js +3 -10
- package/lib/cjs/entry/dependenciesAny/dependenciesSetPowerset.generated.js +3 -10
- package/lib/cjs/entry/dependenciesAny/dependenciesSetSize.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesSetSymDifference.generated.js +3 -11
- package/lib/cjs/entry/dependenciesAny/dependenciesSetUnion.generated.js +3 -12
- package/lib/cjs/entry/dependenciesAny/dependenciesSign.generated.js +3 -9
- package/lib/cjs/entry/dependenciesAny/dependenciesSimplify.generated.js +19 -21
- package/lib/cjs/entry/dependenciesAny/dependenciesSimplifyConstant.generated.js +39 -0
- package/lib/cjs/entry/dependenciesAny/dependenciesSimplifyCore.generated.js +51 -0
- package/lib/cjs/entry/dependenciesAny/dependenciesSin.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesSinh.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesSize.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesSlu.generated.js +3 -15
- package/lib/cjs/entry/dependenciesAny/dependenciesSmaller.generated.js +5 -8
- package/lib/cjs/entry/dependenciesAny/dependenciesSmallerEq.generated.js +5 -8
- package/lib/cjs/entry/dependenciesAny/dependenciesSolveODE.generated.js +45 -0
- package/lib/cjs/entry/dependenciesAny/dependenciesSort.generated.js +3 -9
- package/lib/cjs/entry/dependenciesAny/dependenciesSpaClass.generated.js +3 -8
- package/lib/cjs/entry/dependenciesAny/dependenciesSparse.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesSparseMatrixClass.generated.js +3 -8
- package/lib/cjs/entry/dependenciesAny/dependenciesSpeedOfLight.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesSplitUnit.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesSqrt.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesSqrtm.generated.js +5 -15
- package/lib/cjs/entry/dependenciesAny/dependenciesSquare.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesSqueeze.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesStd.generated.js +5 -8
- package/lib/cjs/entry/dependenciesAny/dependenciesStdTransform.generated.js +5 -8
- package/lib/cjs/entry/dependenciesAny/dependenciesStefanBoltzmann.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesStirlingS2.generated.js +9 -18
- package/lib/cjs/entry/dependenciesAny/dependenciesString.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesSubset.generated.js +7 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesSubsetTransform.generated.js +7 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesSubtract.generated.js +7 -13
- package/lib/cjs/entry/dependenciesAny/dependenciesSubtractScalar.generated.js +17 -0
- package/lib/cjs/entry/dependenciesAny/dependenciesSum.generated.js +3 -8
- package/lib/cjs/entry/dependenciesAny/dependenciesSumTransform.generated.js +3 -8
- package/lib/cjs/entry/dependenciesAny/dependenciesSylvester.generated.js +45 -0
- package/lib/cjs/entry/dependenciesAny/dependenciesSymbolNode.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesSymbolicEqual.generated.js +23 -0
- package/lib/cjs/entry/dependenciesAny/dependenciesTan.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesTanh.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesTau.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesThomsonCrossSection.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesTo.generated.js +5 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesTrace.generated.js +3 -8
- package/lib/cjs/entry/dependenciesAny/dependenciesTranspose.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesTrue.generated.js +3 -5
- package/lib/cjs/entry/dependenciesAny/dependenciesTypeOf.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesTyped.generated.js +3 -9
- package/lib/cjs/entry/dependenciesAny/dependenciesUnaryMinus.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesUnaryPlus.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesUnequal.generated.js +5 -9
- package/lib/cjs/entry/dependenciesAny/dependenciesUnitClass.generated.js +5 -22
- package/lib/cjs/entry/dependenciesAny/dependenciesUnitFunction.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesUppercaseE.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesUppercasePi.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesUsolve.generated.js +5 -14
- package/lib/cjs/entry/dependenciesAny/dependenciesUsolveAll.generated.js +5 -14
- package/lib/cjs/entry/dependenciesAny/dependenciesVacuumImpedance.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesVariance.generated.js +3 -12
- package/lib/cjs/entry/dependenciesAny/dependenciesVarianceTransform.generated.js +3 -12
- package/lib/cjs/entry/dependenciesAny/dependenciesVersion.generated.js +3 -5
- package/lib/cjs/entry/dependenciesAny/dependenciesWeakMixingAngle.generated.js +3 -6
- package/lib/cjs/entry/dependenciesAny/dependenciesWienDisplacement.generated.js +3 -7
- package/lib/cjs/entry/dependenciesAny/dependenciesXgcd.generated.js +3 -8
- package/lib/cjs/entry/dependenciesAny/dependenciesXor.generated.js +5 -8
- package/lib/cjs/entry/dependenciesAny/dependenciesZeros.generated.js +3 -8
- package/lib/cjs/entry/dependenciesAny/dependenciesZeta.generated.js +45 -0
- package/lib/cjs/entry/dependenciesAny/dependenciesZpk2tf.generated.js +25 -0
- package/lib/cjs/entry/dependenciesAny.generated.js +1150 -1256
- package/lib/cjs/entry/dependenciesNumber/dependenciesAbs.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesAccessorNode.generated.js +3 -7
- package/lib/cjs/entry/dependenciesNumber/dependenciesAcos.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesAcosh.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesAcot.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesAcoth.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesAcsc.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesAcsch.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesAdd.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesAddScalar.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesAnd.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesApply.generated.js +3 -7
- package/lib/cjs/entry/dependenciesNumber/dependenciesApplyTransform.generated.js +3 -7
- package/lib/cjs/entry/dependenciesNumber/dependenciesArrayNode.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesAsec.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesAsech.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesAsin.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesAsinh.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesAssignmentNode.generated.js +3 -8
- package/lib/cjs/entry/dependenciesNumber/dependenciesAtan.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesAtan2.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesAtanh.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesBellNumbers.generated.js +3 -10
- package/lib/cjs/entry/dependenciesNumber/dependenciesBitAnd.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesBitNot.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesBitOr.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesBitXor.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesBlockNode.generated.js +3 -7
- package/lib/cjs/entry/dependenciesNumber/dependenciesBoolean.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesCatalan.generated.js +3 -12
- package/lib/cjs/entry/dependenciesNumber/dependenciesCbrt.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesCeil.generated.js +5 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesChain.generated.js +3 -7
- package/lib/cjs/entry/dependenciesNumber/dependenciesChainClass.generated.js +5 -5
- package/lib/cjs/entry/dependenciesNumber/dependenciesClone.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesCombinations.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesCombinationsWithRep.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesCompare.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesCompareNatural.generated.js +3 -7
- package/lib/cjs/entry/dependenciesNumber/dependenciesCompareText.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesCompile.generated.js +3 -7
- package/lib/cjs/entry/dependenciesNumber/dependenciesComposition.generated.js +3 -12
- package/lib/cjs/entry/dependenciesNumber/dependenciesConditionalNode.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesConstantNode.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesCorr.generated.js +35 -0
- package/lib/cjs/entry/dependenciesNumber/dependenciesCos.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesCosh.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesCot.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesCoth.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesCsc.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesCsch.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesCube.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesCumSum.generated.js +21 -0
- package/lib/cjs/entry/dependenciesNumber/dependenciesCumSumTransform.generated.js +21 -0
- package/lib/cjs/entry/dependenciesNumber/dependenciesDeepEqual.generated.js +3 -7
- package/lib/cjs/entry/dependenciesNumber/dependenciesDerivative.generated.js +3 -16
- package/lib/cjs/entry/dependenciesNumber/dependenciesDivide.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesDivideScalar.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesE.generated.js +3 -5
- package/lib/cjs/entry/dependenciesNumber/dependenciesEqual.generated.js +3 -7
- package/lib/cjs/entry/dependenciesNumber/dependenciesEqualScalar.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesEqualText.generated.js +3 -8
- package/lib/cjs/entry/dependenciesNumber/dependenciesErf.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesEvaluate.generated.js +3 -7
- package/lib/cjs/entry/dependenciesNumber/dependenciesExp.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesExpm1.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesFactorial.generated.js +3 -7
- package/lib/cjs/entry/dependenciesNumber/dependenciesFalse.generated.js +3 -5
- package/lib/cjs/entry/dependenciesNumber/dependenciesFilter.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesFilterTransform.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesFix.generated.js +7 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesFloor.generated.js +5 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesForEach.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesForEachTransform.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesFormat.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesFunctionAssignmentNode.generated.js +3 -7
- package/lib/cjs/entry/dependenciesNumber/dependenciesFunctionNode.generated.js +3 -7
- package/lib/cjs/entry/dependenciesNumber/dependenciesGamma.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesGcd.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesHasNumericValue.generated.js +3 -7
- package/lib/cjs/entry/dependenciesNumber/dependenciesHelp.generated.js +3 -7
- package/lib/cjs/entry/dependenciesNumber/dependenciesHelpClass.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesHypot.generated.js +3 -13
- package/lib/cjs/entry/dependenciesNumber/dependenciesIndex.generated.js +3 -5
- package/lib/cjs/entry/dependenciesNumber/dependenciesIndexNode.generated.js +3 -10
- package/lib/cjs/entry/dependenciesNumber/dependenciesInfinity.generated.js +3 -5
- package/lib/cjs/entry/dependenciesNumber/dependenciesIsInteger.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesIsNaN.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesIsNegative.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesIsNumeric.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesIsPositive.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesIsPrime.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesIsZero.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesLN10.generated.js +3 -5
- package/lib/cjs/entry/dependenciesNumber/dependenciesLN2.generated.js +3 -5
- package/lib/cjs/entry/dependenciesNumber/dependenciesLOG10E.generated.js +3 -5
- package/lib/cjs/entry/dependenciesNumber/dependenciesLOG2E.generated.js +3 -5
- package/lib/cjs/entry/dependenciesNumber/dependenciesLarger.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesLargerEq.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesLcm.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesLeftShift.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesLgamma.generated.js +17 -0
- package/lib/cjs/entry/dependenciesNumber/dependenciesLog.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesLog10.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesLog1p.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesLog2.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesMad.generated.js +3 -10
- package/lib/cjs/entry/dependenciesNumber/dependenciesMap.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesMapTransform.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesMatrix.generated.js +3 -5
- package/lib/cjs/entry/dependenciesNumber/dependenciesMax.generated.js +3 -8
- package/lib/cjs/entry/dependenciesNumber/dependenciesMaxTransform.generated.js +3 -8
- package/lib/cjs/entry/dependenciesNumber/dependenciesMean.generated.js +3 -8
- package/lib/cjs/entry/dependenciesNumber/dependenciesMeanTransform.generated.js +3 -8
- package/lib/cjs/entry/dependenciesNumber/dependenciesMedian.generated.js +3 -10
- package/lib/cjs/entry/dependenciesNumber/dependenciesMin.generated.js +3 -8
- package/lib/cjs/entry/dependenciesNumber/dependenciesMinTransform.generated.js +3 -8
- package/lib/cjs/entry/dependenciesNumber/dependenciesMod.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesMode.generated.js +3 -8
- package/lib/cjs/entry/dependenciesNumber/dependenciesMultinomial.generated.js +3 -12
- package/lib/cjs/entry/dependenciesNumber/dependenciesMultiply.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesMultiplyScalar.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesNaN.generated.js +3 -5
- package/lib/cjs/entry/dependenciesNumber/dependenciesNode.generated.js +3 -5
- package/lib/cjs/entry/dependenciesNumber/dependenciesNorm.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesNot.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesNthRoot.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesNull.generated.js +3 -5
- package/lib/cjs/entry/dependenciesNumber/dependenciesNumber.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesNumeric.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesObjectNode.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesOperatorNode.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesOr.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesParenthesisNode.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesParse.generated.js +3 -22
- package/lib/cjs/entry/dependenciesNumber/dependenciesParser.generated.js +3 -7
- package/lib/cjs/entry/dependenciesNumber/dependenciesParserClass.generated.js +5 -8
- package/lib/cjs/entry/dependenciesNumber/dependenciesPartitionSelect.generated.js +3 -9
- package/lib/cjs/entry/dependenciesNumber/dependenciesPermutations.generated.js +3 -7
- package/lib/cjs/entry/dependenciesNumber/dependenciesPhi.generated.js +3 -5
- package/lib/cjs/entry/dependenciesNumber/dependenciesPi.generated.js +3 -5
- package/lib/cjs/entry/dependenciesNumber/dependenciesPickRandom.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesPow.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesPrint.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesProd.generated.js +3 -8
- package/lib/cjs/entry/dependenciesNumber/dependenciesQuantileSeq.generated.js +15 -10
- package/lib/cjs/entry/dependenciesNumber/dependenciesRandom.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesRandomInt.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesRange.generated.js +7 -11
- package/lib/cjs/entry/dependenciesNumber/dependenciesRangeClass.generated.js +3 -5
- package/lib/cjs/entry/dependenciesNumber/dependenciesRangeNode.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesRangeTransform.generated.js +7 -11
- package/lib/cjs/entry/dependenciesNumber/dependenciesRationalize.generated.js +17 -20
- package/lib/cjs/entry/dependenciesNumber/dependenciesRelationalNode.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesReplacer.generated.js +3 -5
- package/lib/cjs/entry/dependenciesNumber/dependenciesResolve.generated.js +27 -0
- package/lib/cjs/entry/dependenciesNumber/dependenciesResultSet.generated.js +3 -5
- package/lib/cjs/entry/dependenciesNumber/dependenciesReviver.generated.js +3 -5
- package/lib/cjs/entry/dependenciesNumber/dependenciesRightArithShift.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesRightLogShift.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesRound.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesSQRT1_2.generated.js +3 -5
- package/lib/cjs/entry/dependenciesNumber/dependenciesSQRT2.generated.js +3 -5
- package/lib/cjs/entry/dependenciesNumber/dependenciesSec.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesSech.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesSign.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesSimplify.generated.js +19 -19
- package/lib/cjs/entry/dependenciesNumber/dependenciesSimplifyConstant.generated.js +35 -0
- package/lib/cjs/entry/dependenciesNumber/dependenciesSimplifyCore.generated.js +51 -0
- package/lib/cjs/entry/dependenciesNumber/dependenciesSin.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesSinh.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesSize.generated.js +3 -7
- package/lib/cjs/entry/dependenciesNumber/dependenciesSmaller.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesSmallerEq.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesSqrt.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesSquare.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesStd.generated.js +5 -8
- package/lib/cjs/entry/dependenciesNumber/dependenciesStdTransform.generated.js +5 -8
- package/lib/cjs/entry/dependenciesNumber/dependenciesStirlingS2.generated.js +7 -18
- package/lib/cjs/entry/dependenciesNumber/dependenciesString.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesSubset.generated.js +3 -5
- package/lib/cjs/entry/dependenciesNumber/dependenciesSubsetTransform.generated.js +3 -5
- package/lib/cjs/entry/dependenciesNumber/dependenciesSubtract.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesSubtractScalar.generated.js +17 -0
- package/lib/cjs/entry/dependenciesNumber/dependenciesSum.generated.js +3 -8
- package/lib/cjs/entry/dependenciesNumber/dependenciesSumTransform.generated.js +3 -8
- package/lib/cjs/entry/dependenciesNumber/dependenciesSymbolNode.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesTan.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesTanh.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesTau.generated.js +3 -5
- package/lib/cjs/entry/dependenciesNumber/dependenciesTrue.generated.js +3 -5
- package/lib/cjs/entry/dependenciesNumber/dependenciesTypeOf.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesTyped.generated.js +3 -5
- package/lib/cjs/entry/dependenciesNumber/dependenciesUnaryMinus.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesUnaryPlus.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesUnequal.generated.js +3 -7
- package/lib/cjs/entry/dependenciesNumber/dependenciesUppercaseE.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesUppercasePi.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesVariance.generated.js +3 -12
- package/lib/cjs/entry/dependenciesNumber/dependenciesVarianceTransform.generated.js +3 -12
- package/lib/cjs/entry/dependenciesNumber/dependenciesVersion.generated.js +3 -5
- package/lib/cjs/entry/dependenciesNumber/dependenciesXgcd.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesXor.generated.js +3 -6
- package/lib/cjs/entry/dependenciesNumber/dependenciesZeta.generated.js +41 -0
- package/lib/cjs/entry/dependenciesNumber.generated.js +627 -760
- package/lib/cjs/entry/impureFunctionsAny.generated.js +446 -323
- package/lib/cjs/entry/impureFunctionsNumber.generated.js +299 -260
- package/lib/cjs/entry/mainAny.js +8 -24
- package/lib/cjs/entry/mainNumber.js +8 -24
- package/lib/cjs/entry/pureFunctionsAny.generated.js +1038 -1058
- package/lib/cjs/entry/pureFunctionsNumber.generated.js +296 -407
- package/lib/cjs/entry/typeChecks.js +18 -13
- package/lib/cjs/error/ArgumentsError.js +0 -3
- package/lib/cjs/error/DimensionError.js +0 -3
- package/lib/cjs/error/IndexError.js +0 -6
- package/lib/cjs/expression/Help.js +10 -30
- package/lib/cjs/expression/Parser.js +37 -43
- package/lib/cjs/expression/embeddedDocs/constants/Infinity.js +2 -3
- package/lib/cjs/expression/embeddedDocs/constants/LN10.js +2 -3
- package/lib/cjs/expression/embeddedDocs/constants/LN2.js +2 -3
- package/lib/cjs/expression/embeddedDocs/constants/LOG10E.js +2 -3
- package/lib/cjs/expression/embeddedDocs/constants/LOG2E.js +2 -3
- package/lib/cjs/expression/embeddedDocs/constants/NaN.js +2 -3
- package/lib/cjs/expression/embeddedDocs/constants/SQRT1_2.js +2 -3
- package/lib/cjs/expression/embeddedDocs/constants/SQRT2.js +2 -3
- package/lib/cjs/expression/embeddedDocs/constants/e.js +2 -3
- package/lib/cjs/expression/embeddedDocs/constants/false.js +2 -3
- package/lib/cjs/expression/embeddedDocs/constants/i.js +2 -3
- package/lib/cjs/expression/embeddedDocs/constants/null.js +2 -3
- package/lib/cjs/expression/embeddedDocs/constants/phi.js +2 -3
- package/lib/cjs/expression/embeddedDocs/constants/pi.js +2 -3
- package/lib/cjs/expression/embeddedDocs/constants/tau.js +2 -3
- package/lib/cjs/expression/embeddedDocs/constants/true.js +2 -3
- package/lib/cjs/expression/embeddedDocs/constants/version.js +2 -3
- package/lib/cjs/expression/embeddedDocs/construction/bignumber.js +2 -3
- package/lib/cjs/expression/embeddedDocs/construction/boolean.js +2 -3
- package/lib/cjs/expression/embeddedDocs/construction/complex.js +2 -3
- package/lib/cjs/expression/embeddedDocs/construction/createUnit.js +2 -3
- package/lib/cjs/expression/embeddedDocs/construction/fraction.js +5 -6
- package/lib/cjs/expression/embeddedDocs/construction/index.js +3 -4
- package/lib/cjs/expression/embeddedDocs/construction/matrix.js +2 -3
- package/lib/cjs/expression/embeddedDocs/construction/number.js +2 -3
- package/lib/cjs/expression/embeddedDocs/construction/sparse.js +2 -3
- package/lib/cjs/expression/embeddedDocs/construction/splitUnit.js +2 -3
- package/lib/cjs/expression/embeddedDocs/construction/string.js +2 -3
- package/lib/cjs/expression/embeddedDocs/construction/unit.js +2 -3
- package/lib/cjs/expression/embeddedDocs/core/config.js +2 -3
- package/lib/cjs/expression/embeddedDocs/core/import.js +2 -3
- package/lib/cjs/expression/embeddedDocs/core/typed.js +3 -4
- package/lib/cjs/expression/embeddedDocs/embeddedDocs.js +272 -440
- package/lib/cjs/expression/embeddedDocs/function/algebra/derivative.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/algebra/leafCount.js +14 -0
- package/lib/cjs/expression/embeddedDocs/function/algebra/lsolve.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/algebra/lsolveAll.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/algebra/lup.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/algebra/lusolve.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/algebra/lyap.js +14 -0
- package/lib/cjs/expression/embeddedDocs/function/algebra/polynomialRoot.js +14 -0
- package/lib/cjs/expression/embeddedDocs/function/algebra/qr.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/algebra/rationalize.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/algebra/resolve.js +15 -0
- package/lib/cjs/expression/embeddedDocs/function/algebra/schur.js +14 -0
- package/lib/cjs/expression/embeddedDocs/function/algebra/simplify.js +3 -4
- package/lib/cjs/expression/embeddedDocs/function/algebra/simplifyConstant.js +14 -0
- package/lib/cjs/expression/embeddedDocs/function/algebra/simplifyCore.js +14 -0
- package/lib/cjs/expression/embeddedDocs/function/algebra/slu.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/algebra/sylvester.js +14 -0
- package/lib/cjs/expression/embeddedDocs/function/algebra/symbolicEqual.js +14 -0
- package/lib/cjs/expression/embeddedDocs/function/algebra/usolve.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/algebra/usolveAll.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/arithmetic/abs.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/arithmetic/add.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/arithmetic/cbrt.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/arithmetic/ceil.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/arithmetic/cube.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/arithmetic/divide.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/arithmetic/dotDivide.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/arithmetic/dotMultiply.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/arithmetic/dotPow.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/arithmetic/exp.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/arithmetic/expm.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/arithmetic/expm1.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/arithmetic/fix.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/arithmetic/floor.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/arithmetic/gcd.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/arithmetic/hypot.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/arithmetic/invmod.js +14 -0
- package/lib/cjs/expression/embeddedDocs/function/arithmetic/lcm.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/arithmetic/log.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/arithmetic/log10.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/arithmetic/log1p.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/arithmetic/log2.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/arithmetic/mod.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/arithmetic/multiply.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/arithmetic/norm.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/arithmetic/nthRoot.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/arithmetic/nthRoots.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/arithmetic/pow.js +3 -4
- package/lib/cjs/expression/embeddedDocs/function/arithmetic/round.js +4 -5
- package/lib/cjs/expression/embeddedDocs/function/arithmetic/sign.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/arithmetic/sqrt.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/arithmetic/sqrtm.js +3 -4
- package/lib/cjs/expression/embeddedDocs/function/arithmetic/square.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/arithmetic/subtract.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/arithmetic/unaryMinus.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/arithmetic/unaryPlus.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/arithmetic/xgcd.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/bitwise/bitAnd.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/bitwise/bitNot.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/bitwise/bitOr.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/bitwise/bitXor.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/bitwise/leftShift.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/bitwise/rightArithShift.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/bitwise/rightLogShift.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/combinatorics/bellNumbers.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/combinatorics/catalan.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/combinatorics/composition.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/combinatorics/stirlingS2.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/complex/arg.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/complex/conj.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/complex/im.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/complex/re.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/expression/evaluate.js +4 -5
- package/lib/cjs/expression/embeddedDocs/function/expression/help.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/geometry/distance.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/geometry/intersect.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/logical/and.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/logical/not.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/logical/or.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/logical/xor.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/matrix/column.js +3 -4
- package/lib/cjs/expression/embeddedDocs/function/matrix/concat.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/matrix/count.js +14 -0
- package/lib/cjs/expression/embeddedDocs/function/matrix/cross.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/matrix/ctranspose.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/matrix/det.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/matrix/diag.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/matrix/diff.js +3 -4
- package/lib/cjs/expression/embeddedDocs/function/matrix/dot.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/matrix/eigs.js +4 -5
- package/lib/cjs/expression/embeddedDocs/function/matrix/fft.js +14 -0
- package/lib/cjs/expression/embeddedDocs/function/matrix/filter.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/matrix/flatten.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/matrix/forEach.js +3 -4
- package/lib/cjs/expression/embeddedDocs/function/matrix/getMatrixDataType.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/matrix/identity.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/matrix/ifft.js +14 -0
- package/lib/cjs/expression/embeddedDocs/function/matrix/inv.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/matrix/kron.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/matrix/map.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/matrix/matrixFromColumns.js +14 -0
- package/lib/cjs/expression/embeddedDocs/function/matrix/matrixFromFunction.js +14 -0
- package/lib/cjs/expression/embeddedDocs/function/matrix/matrixFromRows.js +14 -0
- package/lib/cjs/expression/embeddedDocs/function/matrix/ones.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/matrix/partitionSelect.js +3 -4
- package/lib/cjs/expression/embeddedDocs/function/matrix/pinv.js +14 -0
- package/lib/cjs/expression/embeddedDocs/function/matrix/range.js +3 -4
- package/lib/cjs/expression/embeddedDocs/function/matrix/reshape.js +3 -4
- package/lib/cjs/expression/embeddedDocs/function/matrix/resize.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/matrix/rotate.js +3 -4
- package/lib/cjs/expression/embeddedDocs/function/matrix/rotationMatrix.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/matrix/row.js +3 -4
- package/lib/cjs/expression/embeddedDocs/function/matrix/size.js +3 -4
- package/lib/cjs/expression/embeddedDocs/function/matrix/sort.js +3 -4
- package/lib/cjs/expression/embeddedDocs/function/matrix/squeeze.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/matrix/subset.js +4 -5
- package/lib/cjs/expression/embeddedDocs/function/matrix/trace.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/matrix/transpose.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/matrix/zeros.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/numeric/solveODE.js +14 -0
- package/lib/cjs/expression/embeddedDocs/function/probability/combinations.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/probability/combinationsWithRep.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/probability/distribution.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/probability/factorial.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/probability/gamma.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/probability/kldivergence.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/probability/lgamma.js +14 -0
- package/lib/cjs/expression/embeddedDocs/function/probability/multinomial.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/probability/permutations.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/probability/pickRandom.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/probability/random.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/probability/randomInt.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/relational/compare.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/relational/compareNatural.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/relational/compareText.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/relational/deepEqual.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/relational/equal.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/relational/equalText.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/relational/larger.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/relational/largerEq.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/relational/smaller.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/relational/smallerEq.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/relational/unequal.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/set/setCartesian.js +3 -4
- package/lib/cjs/expression/embeddedDocs/function/set/setDifference.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/set/setDistinct.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/set/setIntersect.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/set/setIsSubset.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/set/setMultiplicity.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/set/setPowerset.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/set/setSize.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/set/setSymDifference.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/set/setUnion.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/signal/freqz.js +14 -0
- package/lib/cjs/expression/embeddedDocs/function/signal/zpk2tf.js +14 -0
- package/lib/cjs/expression/embeddedDocs/function/special/erf.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/special/zeta.js +14 -0
- package/lib/cjs/expression/embeddedDocs/function/statistics/corr.js +14 -0
- package/lib/cjs/expression/embeddedDocs/function/statistics/cumsum.js +14 -0
- package/lib/cjs/expression/embeddedDocs/function/statistics/mad.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/statistics/max.js +3 -4
- package/lib/cjs/expression/embeddedDocs/function/statistics/mean.js +3 -4
- package/lib/cjs/expression/embeddedDocs/function/statistics/median.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/statistics/min.js +3 -4
- package/lib/cjs/expression/embeddedDocs/function/statistics/mode.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/statistics/prod.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/statistics/quantileSeq.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/statistics/std.js +3 -4
- package/lib/cjs/expression/embeddedDocs/function/statistics/sum.js +3 -4
- package/lib/cjs/expression/embeddedDocs/function/statistics/variance.js +3 -4
- package/lib/cjs/expression/embeddedDocs/function/trigonometry/acos.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/trigonometry/acosh.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/trigonometry/acot.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/trigonometry/acoth.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/trigonometry/acsc.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/trigonometry/acsch.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/trigonometry/asec.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/trigonometry/asech.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/trigonometry/asin.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/trigonometry/asinh.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/trigonometry/atan.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/trigonometry/atan2.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/trigonometry/atanh.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/trigonometry/cos.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/trigonometry/cosh.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/trigonometry/cot.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/trigonometry/coth.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/trigonometry/csc.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/trigonometry/csch.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/trigonometry/sec.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/trigonometry/sech.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/trigonometry/sin.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/trigonometry/sinh.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/trigonometry/tan.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/trigonometry/tanh.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/units/to.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/utils/bin.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/utils/clone.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/utils/format.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/utils/hasNumericValue.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/utils/hex.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/utils/isInteger.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/utils/isNaN.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/utils/isNegative.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/utils/isNumeric.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/utils/isPositive.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/utils/isPrime.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/utils/isZero.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/utils/numeric.js +3 -4
- package/lib/cjs/expression/embeddedDocs/function/utils/oct.js +2 -3
- package/lib/cjs/expression/embeddedDocs/function/utils/print.js +3 -4
- package/lib/cjs/expression/embeddedDocs/function/utils/typeOf.js +2 -3
- package/lib/cjs/expression/function/compile.js +3 -8
- package/lib/cjs/expression/function/evaluate.js +8 -12
- package/lib/cjs/expression/function/help.js +5 -16
- package/lib/cjs/expression/function/parser.js +8 -12
- package/lib/cjs/expression/keywords.js +1 -4
- package/lib/cjs/expression/node/AccessorNode.js +193 -180
- package/lib/cjs/expression/node/ArrayNode.js +199 -177
- package/lib/cjs/expression/node/AssignmentNode.js +301 -288
- package/lib/cjs/expression/node/BlockNode.js +207 -183
- package/lib/cjs/expression/node/ConditionalNode.js +224 -207
- package/lib/cjs/expression/node/ConstantNode.js +194 -181
- package/lib/cjs/expression/node/FunctionAssignmentNode.js +257 -218
- package/lib/cjs/expression/node/FunctionNode.js +424 -367
- package/lib/cjs/expression/node/IndexNode.js +241 -268
- package/lib/cjs/expression/node/Node.js +385 -393
- package/lib/cjs/expression/node/ObjectNode.js +200 -194
- package/lib/cjs/expression/node/OperatorNode.js +447 -470
- package/lib/cjs/expression/node/ParenthesisNode.js +179 -156
- package/lib/cjs/expression/node/RangeNode.js +249 -253
- package/lib/cjs/expression/node/RelationalNode.js +218 -204
- package/lib/cjs/expression/node/SymbolNode.js +210 -191
- package/lib/cjs/expression/node/utils/access.js +3 -8
- package/lib/cjs/expression/node/utils/assign.js +11 -11
- package/lib/cjs/expression/operators.js +116 -42
- package/lib/cjs/expression/parse.js +292 -412
- package/lib/cjs/expression/transform/and.transform.js +39 -0
- package/lib/cjs/expression/transform/apply.transform.js +6 -13
- package/lib/cjs/expression/transform/bitAnd.transform.js +44 -0
- package/lib/cjs/expression/transform/bitOr.transform.js +45 -0
- package/lib/cjs/expression/transform/column.transform.js +8 -15
- package/lib/cjs/expression/transform/concat.transform.js +5 -13
- package/lib/cjs/expression/transform/cumsum.transform.js +49 -0
- package/lib/cjs/expression/transform/diff.transform.js +9 -25
- package/lib/cjs/expression/transform/filter.transform.js +8 -29
- package/lib/cjs/expression/transform/forEach.transform.js +7 -30
- package/lib/cjs/expression/transform/index.transform.js +14 -17
- package/lib/cjs/expression/transform/map.transform.js +8 -31
- package/lib/cjs/expression/transform/max.transform.js +8 -24
- package/lib/cjs/expression/transform/mean.transform.js +7 -23
- package/lib/cjs/expression/transform/min.transform.js +8 -24
- package/lib/cjs/expression/transform/or.transform.js +37 -0
- package/lib/cjs/expression/transform/print.transform.js +46 -0
- package/lib/cjs/expression/transform/quantileSeq.transform.js +71 -0
- package/lib/cjs/expression/transform/range.transform.js +16 -18
- package/lib/cjs/expression/transform/row.transform.js +8 -15
- package/lib/cjs/expression/transform/std.transform.js +10 -24
- package/lib/cjs/expression/transform/subset.transform.js +10 -11
- package/lib/cjs/expression/transform/sum.transform.js +8 -24
- package/lib/cjs/expression/transform/utils/compileInlineExpression.js +6 -9
- package/lib/cjs/expression/transform/utils/errorTransform.js +0 -3
- package/lib/cjs/expression/transform/utils/lastDimToZeroBase.js +22 -0
- package/lib/cjs/expression/transform/variance.transform.js +11 -27
- package/lib/cjs/factoriesAny.js +877 -915
- package/lib/cjs/factoriesNumber.js +443 -495
- package/lib/cjs/function/algebra/decomposition/lup.js +140 -178
- package/lib/cjs/function/algebra/decomposition/qr.js +44 -61
- package/lib/cjs/function/algebra/decomposition/schur.js +74 -0
- package/lib/cjs/function/algebra/decomposition/slu.js +20 -25
- package/lib/cjs/function/algebra/derivative.js +75 -180
- package/lib/cjs/function/algebra/leafCount.js +58 -0
- package/lib/cjs/function/algebra/lyap.js +56 -0
- package/lib/cjs/function/algebra/polynomialRoot.js +138 -0
- package/lib/cjs/function/algebra/rationalize.js +238 -294
- package/lib/cjs/function/algebra/resolve.js +131 -0
- package/lib/cjs/function/algebra/simplify/util.js +151 -74
- package/lib/cjs/function/algebra/simplify/wildcards.js +38 -0
- package/lib/cjs/function/algebra/simplify.js +855 -419
- package/lib/cjs/function/algebra/simplifyConstant.js +488 -0
- package/lib/cjs/function/algebra/simplifyCore.js +299 -0
- package/lib/cjs/function/algebra/solver/lsolve.js +33 -41
- package/lib/cjs/function/algebra/solver/lsolveAll.js +42 -59
- package/lib/cjs/function/algebra/solver/lusolve.js +17 -28
- package/lib/cjs/function/algebra/solver/usolve.js +37 -46
- package/lib/cjs/function/algebra/solver/usolveAll.js +46 -59
- package/lib/cjs/function/algebra/solver/utils/solveValidation.js +4 -32
- package/lib/cjs/function/algebra/sparse/csAmd.js +252 -307
- package/lib/cjs/function/algebra/sparse/csChol.js +74 -91
- package/lib/cjs/function/algebra/sparse/csCounts.js +39 -58
- package/lib/cjs/function/algebra/sparse/csCumsum.js +8 -11
- package/lib/cjs/function/algebra/sparse/csDfs.js +34 -42
- package/lib/cjs/function/algebra/sparse/csEreach.js +24 -31
- package/lib/cjs/function/algebra/sparse/csEtree.js +23 -28
- package/lib/cjs/function/algebra/sparse/csFkeep.js +20 -25
- package/lib/cjs/function/algebra/sparse/csFlip.js +0 -1
- package/lib/cjs/function/algebra/sparse/csIpvec.js +2 -4
- package/lib/cjs/function/algebra/sparse/csLeaf.js +13 -16
- package/lib/cjs/function/algebra/sparse/csLu.js +73 -95
- package/lib/cjs/function/algebra/sparse/csMark.js +0 -2
- package/lib/cjs/function/algebra/sparse/csMarked.js +0 -1
- package/lib/cjs/function/algebra/sparse/csPermute.js +20 -25
- package/lib/cjs/function/algebra/sparse/csPost.js +14 -24
- package/lib/cjs/function/algebra/sparse/csReach.js +14 -20
- package/lib/cjs/function/algebra/sparse/csSpsolve.js +34 -43
- package/lib/cjs/function/algebra/sparse/csSqr.js +64 -89
- package/lib/cjs/function/algebra/sparse/csSymperm.js +35 -47
- package/lib/cjs/function/algebra/sparse/csTdfs.js +12 -15
- package/lib/cjs/function/algebra/sparse/csUnflip.js +0 -2
- package/lib/cjs/function/algebra/sylvester.js +126 -0
- package/lib/cjs/function/algebra/symbolicEqual.js +64 -0
- package/lib/cjs/function/arithmetic/abs.js +9 -22
- package/lib/cjs/function/arithmetic/add.js +69 -121
- package/lib/cjs/function/arithmetic/addScalar.js +17 -16
- package/lib/cjs/function/arithmetic/cbrt.js +24 -40
- package/lib/cjs/function/arithmetic/ceil.js +102 -86
- package/lib/cjs/function/arithmetic/cube.js +7 -17
- package/lib/cjs/function/arithmetic/divide.js +16 -21
- package/lib/cjs/function/arithmetic/divideScalar.js +7 -25
- package/lib/cjs/function/arithmetic/dotDivide.js +32 -82
- package/lib/cjs/function/arithmetic/dotMultiply.js +25 -75
- package/lib/cjs/function/arithmetic/dotPow.js +38 -79
- package/lib/cjs/function/arithmetic/exp.js +10 -19
- package/lib/cjs/function/arithmetic/expm1.js +13 -18
- package/lib/cjs/function/arithmetic/fix.js +75 -41
- package/lib/cjs/function/arithmetic/floor.js +107 -85
- package/lib/cjs/function/arithmetic/gcd.js +97 -90
- package/lib/cjs/function/arithmetic/hypot.js +17 -23
- package/lib/cjs/function/arithmetic/invmod.js +64 -0
- package/lib/cjs/function/arithmetic/lcm.js +37 -90
- package/lib/cjs/function/arithmetic/log.js +15 -22
- package/lib/cjs/function/arithmetic/log10.js +9 -13
- package/lib/cjs/function/arithmetic/log1p.js +18 -21
- package/lib/cjs/function/arithmetic/log2.js +10 -14
- package/lib/cjs/function/arithmetic/mod.js +62 -92
- package/lib/cjs/function/arithmetic/multiply.js +352 -371
- package/lib/cjs/function/arithmetic/multiplyScalar.js +4 -16
- package/lib/cjs/function/arithmetic/norm.js +45 -78
- package/lib/cjs/function/arithmetic/nthRoot.js +98 -128
- package/lib/cjs/function/arithmetic/nthRoots.js +13 -22
- package/lib/cjs/function/arithmetic/pow.js +52 -51
- package/lib/cjs/function/arithmetic/round.js +122 -100
- package/lib/cjs/function/arithmetic/sign.js +20 -19
- package/lib/cjs/function/arithmetic/sqrt.js +10 -18
- package/lib/cjs/function/arithmetic/square.js +8 -17
- package/lib/cjs/function/arithmetic/subtract.js +40 -135
- package/lib/cjs/function/arithmetic/subtractScalar.js +52 -0
- package/lib/cjs/function/arithmetic/unaryMinus.js +17 -24
- package/lib/cjs/function/arithmetic/unaryPlus.js +10 -14
- package/lib/cjs/function/arithmetic/xgcd.js +14 -21
- package/lib/cjs/function/bitwise/bitAnd.js +24 -75
- package/lib/cjs/function/bitwise/bitNot.js +8 -13
- package/lib/cjs/function/bitwise/bitOr.js +25 -76
- package/lib/cjs/function/bitwise/bitXor.js +24 -75
- package/lib/cjs/function/bitwise/leftShift.js +73 -101
- package/lib/cjs/function/bitwise/rightArithShift.js +74 -102
- package/lib/cjs/function/bitwise/rightLogShift.js +73 -98
- package/lib/cjs/function/bitwise/useMatrixForArrayScalar.js +33 -0
- package/lib/cjs/function/combinatorics/bellNumbers.js +8 -14
- package/lib/cjs/function/combinatorics/catalan.js +8 -13
- package/lib/cjs/function/combinatorics/composition.js +8 -13
- package/lib/cjs/function/combinatorics/stirlingS2.js +49 -31
- package/lib/cjs/function/complex/arg.js +8 -10
- package/lib/cjs/function/complex/conj.js +8 -14
- package/lib/cjs/function/complex/im.js +9 -12
- package/lib/cjs/function/complex/re.js +8 -14
- package/lib/cjs/function/geometry/distance.js +44 -91
- package/lib/cjs/function/geometry/intersect.js +100 -102
- package/lib/cjs/function/logical/and.js +83 -100
- package/lib/cjs/function/logical/not.js +15 -14
- package/lib/cjs/function/logical/or.js +29 -77
- package/lib/cjs/function/logical/xor.js +28 -76
- package/lib/cjs/function/matrix/apply.js +4 -25
- package/lib/cjs/function/matrix/column.js +9 -14
- package/lib/cjs/function/matrix/concat.js +11 -56
- package/lib/cjs/function/matrix/count.js +43 -0
- package/lib/cjs/function/matrix/cross.js +6 -14
- package/lib/cjs/function/matrix/ctranspose.js +4 -8
- package/lib/cjs/function/matrix/det.js +48 -57
- package/lib/cjs/function/matrix/diag.js +23 -38
- package/lib/cjs/function/matrix/diff.js +23 -40
- package/lib/cjs/function/matrix/dot.js +24 -49
- package/lib/cjs/function/matrix/eigs/complexEigs.js +744 -0
- package/lib/cjs/function/matrix/eigs/realSymmetric.js +303 -0
- package/lib/cjs/function/matrix/eigs.js +271 -379
- package/lib/cjs/function/matrix/expm.js +28 -45
- package/lib/cjs/function/matrix/fft.js +152 -0
- package/lib/cjs/function/matrix/filter.js +4 -20
- package/lib/cjs/function/matrix/flatten.js +8 -14
- package/lib/cjs/function/matrix/forEach.js +6 -24
- package/lib/cjs/function/matrix/getMatrixDataType.js +3 -9
- package/lib/cjs/function/matrix/identity.js +16 -33
- package/lib/cjs/function/matrix/ifft.js +43 -0
- package/lib/cjs/function/matrix/inv.js +22 -47
- package/lib/cjs/function/matrix/kron.js +5 -13
- package/lib/cjs/function/matrix/map.js +23 -28
- package/lib/cjs/function/matrix/matrixFromColumns.js +106 -0
- package/lib/cjs/function/matrix/matrixFromFunction.js +78 -0
- package/lib/cjs/function/matrix/matrixFromRows.js +94 -0
- package/lib/cjs/function/matrix/ones.js +12 -26
- package/lib/cjs/function/matrix/partitionSelect.js +24 -32
- package/lib/cjs/function/matrix/pinv.js +190 -0
- package/lib/cjs/function/matrix/range.js +45 -148
- package/lib/cjs/function/matrix/reshape.js +9 -15
- package/lib/cjs/function/matrix/resize.js +8 -31
- package/lib/cjs/function/matrix/rotate.js +9 -22
- package/lib/cjs/function/matrix/rotationMatrix.js +16 -36
- package/lib/cjs/function/matrix/row.js +9 -14
- package/lib/cjs/function/matrix/size.js +5 -11
- package/lib/cjs/function/matrix/sort.js +9 -23
- package/lib/cjs/function/matrix/sqrtm.js +18 -31
- package/lib/cjs/function/matrix/squeeze.js +5 -11
- package/lib/cjs/function/matrix/subset.js +114 -66
- package/lib/cjs/function/matrix/trace.js +24 -39
- package/lib/cjs/function/matrix/transpose.js +81 -99
- package/lib/cjs/function/matrix/zeros.js +13 -26
- package/lib/cjs/function/numeric/solveODE.js +314 -0
- package/lib/cjs/function/probability/combinations.js +4 -14
- package/lib/cjs/function/probability/combinationsWithRep.js +2 -19
- package/lib/cjs/function/probability/factorial.js +8 -13
- package/lib/cjs/function/probability/gamma.js +52 -68
- package/lib/cjs/function/probability/kldivergence.js +16 -26
- package/lib/cjs/function/probability/lgamma.js +141 -0
- package/lib/cjs/function/probability/multinomial.js +8 -14
- package/lib/cjs/function/probability/permutations.js +7 -21
- package/lib/cjs/function/probability/pickRandom.js +12 -34
- package/lib/cjs/function/probability/random.js +12 -25
- package/lib/cjs/function/probability/randomInt.js +5 -15
- package/lib/cjs/function/probability/util/randomMatrix.js +0 -3
- package/lib/cjs/function/probability/util/seededRNG.js +7 -10
- package/lib/cjs/function/relational/compare.js +35 -90
- package/lib/cjs/function/relational/compareNatural.js +75 -102
- package/lib/cjs/function/relational/compareText.js +18 -55
- package/lib/cjs/function/relational/compareUnits.js +20 -0
- package/lib/cjs/function/relational/deepEqual.js +4 -11
- package/lib/cjs/function/relational/equal.js +30 -101
- package/lib/cjs/function/relational/equalScalar.js +10 -20
- package/lib/cjs/function/relational/equalText.js +4 -8
- package/lib/cjs/function/relational/larger.js +32 -87
- package/lib/cjs/function/relational/largerEq.js +32 -87
- package/lib/cjs/function/relational/smaller.js +32 -87
- package/lib/cjs/function/relational/smallerEq.js +32 -87
- package/lib/cjs/function/relational/unequal.js +31 -103
- package/lib/cjs/function/set/setCartesian.js +14 -21
- package/lib/cjs/function/set/setDifference.js +11 -22
- package/lib/cjs/function/set/setDistinct.js +11 -20
- package/lib/cjs/function/set/setIntersect.js +11 -20
- package/lib/cjs/function/set/setIsSubset.js +7 -17
- package/lib/cjs/function/set/setMultiplicity.js +6 -14
- package/lib/cjs/function/set/setPowerset.js +12 -23
- package/lib/cjs/function/set/setSize.js +6 -12
- package/lib/cjs/function/set/setSymDifference.js +7 -13
- package/lib/cjs/function/set/setUnion.js +8 -14
- package/lib/cjs/function/signal/freqz.js +116 -0
- package/lib/cjs/function/signal/zpk2tf.js +94 -0
- package/lib/cjs/function/special/erf.js +20 -31
- package/lib/cjs/function/special/zeta.js +170 -0
- package/lib/cjs/function/statistics/corr.js +94 -0
- package/lib/cjs/function/statistics/cumsum.js +127 -0
- package/lib/cjs/function/statistics/mad.js +6 -15
- package/lib/cjs/function/statistics/max.js +12 -22
- package/lib/cjs/function/statistics/mean.js +8 -19
- package/lib/cjs/function/statistics/median.js +15 -24
- package/lib/cjs/function/statistics/min.js +11 -21
- package/lib/cjs/function/statistics/mode.js +6 -19
- package/lib/cjs/function/statistics/prod.js +11 -17
- package/lib/cjs/function/statistics/quantileSeq.js +108 -209
- package/lib/cjs/function/statistics/std.js +13 -12
- package/lib/cjs/function/statistics/sum.js +12 -20
- package/lib/cjs/function/statistics/utils/improveErrorMessage.js +0 -5
- package/lib/cjs/function/statistics/variance.js +14 -28
- package/lib/cjs/function/string/bin.js +21 -4
- package/lib/cjs/function/string/format.js +40 -28
- package/lib/cjs/function/string/hex.js +22 -6
- package/lib/cjs/function/string/oct.js +24 -6
- package/lib/cjs/function/string/print.js +7 -13
- package/lib/cjs/function/trigonometry/acos.js +8 -16
- package/lib/cjs/function/trigonometry/acosh.js +6 -18
- package/lib/cjs/function/trigonometry/acot.js +9 -19
- package/lib/cjs/function/trigonometry/acoth.js +9 -19
- package/lib/cjs/function/trigonometry/acsc.js +11 -22
- package/lib/cjs/function/trigonometry/acsch.js +7 -16
- package/lib/cjs/function/trigonometry/asec.js +11 -21
- package/lib/cjs/function/trigonometry/asech.js +9 -21
- package/lib/cjs/function/trigonometry/asin.js +9 -18
- package/lib/cjs/function/trigonometry/asinh.js +6 -16
- package/lib/cjs/function/trigonometry/atan.js +7 -17
- package/lib/cjs/function/trigonometry/atan2.js +36 -80
- package/lib/cjs/function/trigonometry/atanh.js +8 -19
- package/lib/cjs/function/trigonometry/cos.js +12 -25
- package/lib/cjs/function/trigonometry/cosh.js +7 -26
- package/lib/cjs/function/trigonometry/cot.js +10 -21
- package/lib/cjs/function/trigonometry/coth.js +7 -23
- package/lib/cjs/function/trigonometry/csc.js +12 -23
- package/lib/cjs/function/trigonometry/csch.js +7 -23
- package/lib/cjs/function/trigonometry/sec.js +12 -23
- package/lib/cjs/function/trigonometry/sech.js +7 -23
- package/lib/cjs/function/trigonometry/sin.js +12 -26
- package/lib/cjs/function/trigonometry/sinh.js +7 -27
- package/lib/cjs/function/trigonometry/tan.js +12 -26
- package/lib/cjs/function/trigonometry/tanh.js +7 -27
- package/lib/cjs/function/trigonometry/trigUnit.js +20 -0
- package/lib/cjs/function/unit/to.js +17 -53
- package/lib/cjs/function/utils/clone.js +3 -8
- package/lib/cjs/function/utils/hasNumericValue.js +8 -8
- package/lib/cjs/function/utils/isInteger.js +9 -12
- package/lib/cjs/function/utils/isNaN.js +3 -9
- package/lib/cjs/function/utils/isNegative.js +13 -15
- package/lib/cjs/function/utils/isNumeric.js +8 -11
- package/lib/cjs/function/utils/isPositive.js +13 -15
- package/lib/cjs/function/utils/isPrime.js +63 -19
- package/lib/cjs/function/utils/isZero.js +23 -25
- package/lib/cjs/function/utils/numeric.js +16 -18
- package/lib/cjs/function/utils/typeOf.js +40 -51
- package/lib/cjs/header.js +3 -3
- package/lib/cjs/index.js +0 -2
- package/lib/cjs/json/replacer.js +2 -6
- package/lib/cjs/json/reviver.js +2 -8
- package/lib/cjs/number.js +0 -2
- package/lib/cjs/plain/bignumber/arithmetic.js +2 -12
- package/lib/cjs/plain/bignumber/index.js +1 -8
- package/lib/cjs/plain/number/arithmetic.js +47 -131
- package/lib/cjs/plain/number/bitwise.js +0 -23
- package/lib/cjs/plain/number/combinations.js +17 -15
- package/lib/cjs/plain/number/constants.js +5 -10
- package/lib/cjs/plain/number/index.js +0 -18
- package/lib/cjs/plain/number/logical.js +1 -9
- package/lib/cjs/plain/number/probability.js +41 -18
- package/lib/cjs/plain/number/trigonometry.js +1 -53
- package/lib/cjs/plain/number/utils.js +1 -13
- package/lib/cjs/type/bignumber/BigNumber.js +9 -19
- package/lib/cjs/type/bignumber/function/bignumber.js +31 -11
- package/lib/cjs/type/boolean.js +9 -15
- package/lib/cjs/type/chain/Chain.js +36 -42
- package/lib/cjs/type/chain/function/chain.js +3 -7
- package/lib/cjs/type/complex/Complex.js +17 -41
- package/lib/cjs/type/complex/function/complex.js +8 -13
- package/lib/cjs/type/fraction/Fraction.js +9 -12
- package/lib/cjs/type/fraction/function/fraction.js +36 -21
- package/lib/cjs/type/matrix/DenseMatrix.js +288 -227
- package/lib/cjs/type/matrix/FibonacciHeap.js +121 -162
- package/lib/cjs/type/matrix/ImmutableDenseMatrix.js +22 -46
- package/lib/cjs/type/matrix/Matrix.js +28 -39
- package/lib/cjs/type/matrix/MatrixIndex.js +62 -72
- package/lib/cjs/type/matrix/Range.js +16 -53
- package/lib/cjs/type/matrix/Spa.js +36 -57
- package/lib/cjs/type/matrix/SparseMatrix.js +524 -551
- package/lib/cjs/type/matrix/function/index.js +9 -12
- package/lib/cjs/type/matrix/function/matrix.js +8 -13
- package/lib/cjs/type/matrix/function/sparse.js +9 -7
- package/lib/cjs/type/matrix/utils/broadcast.js +77 -0
- package/lib/cjs/type/matrix/utils/{algorithm01.js → matAlgo01xDSid.js} +40 -41
- package/lib/cjs/type/matrix/utils/{algorithm02.js → matAlgo02xDS0.js} +48 -49
- package/lib/cjs/type/matrix/utils/{algorithm03.js → matAlgo03xDSf.js} +45 -46
- package/lib/cjs/type/matrix/utils/{algorithm04.js → matAlgo04xSidSid.js} +78 -79
- package/lib/cjs/type/matrix/utils/{algorithm05.js → matAlgo05xSfSf.js} +78 -80
- package/lib/cjs/type/matrix/utils/{algorithm06.js → matAlgo06xS0S0.js} +66 -67
- package/lib/cjs/type/matrix/utils/{algorithm07.js → matAlgo07xSSf.js} +52 -55
- package/lib/cjs/type/matrix/utils/{algorithm08.js → matAlgo08xS0Sid.js} +73 -74
- package/lib/cjs/type/matrix/utils/{algorithm09.js → matAlgo09xS0Sf.js} +62 -62
- package/lib/cjs/type/matrix/utils/{algorithm10.js → matAlgo10xSids.js} +38 -39
- package/lib/cjs/type/matrix/utils/{algorithm11.js → matAlgo11xS0s.js} +44 -44
- package/lib/cjs/type/matrix/utils/{algorithm12.js → matAlgo12xSfs.js} +38 -39
- package/lib/cjs/type/matrix/utils/{algorithm13.js → matAlgo13xDD.js} +31 -34
- package/lib/cjs/type/matrix/utils/{algorithm14.js → matAlgo14xDs.js} +23 -25
- package/lib/cjs/type/matrix/utils/matrixAlgorithmSuite.js +222 -0
- package/lib/cjs/type/number.js +83 -25
- package/lib/cjs/type/resultset/ResultSet.js +7 -16
- package/lib/cjs/type/string.js +7 -11
- package/lib/cjs/type/unit/Unit.js +382 -515
- package/lib/cjs/type/unit/function/createUnit.js +5 -8
- package/lib/cjs/type/unit/function/splitUnit.js +3 -7
- package/lib/cjs/type/unit/function/unit.js +20 -15
- package/lib/cjs/type/unit/physicalConstants.js +66 -114
- package/lib/cjs/utils/applyCallback.js +73 -0
- package/lib/cjs/utils/array.js +368 -174
- package/lib/cjs/utils/bignumber/bitwise.js +14 -97
- package/lib/cjs/utils/bignumber/constants.js +20 -19
- package/lib/cjs/utils/bignumber/formatter.js +92 -31
- package/lib/cjs/utils/bignumber/nearlyEqual.js +8 -10
- package/lib/cjs/utils/collection.js +25 -68
- package/lib/cjs/utils/complex.js +0 -2
- package/lib/cjs/utils/customs.js +39 -48
- package/lib/cjs/utils/emitter.js +3 -5
- package/lib/cjs/utils/factory.js +14 -31
- package/lib/cjs/utils/function.js +31 -27
- package/lib/cjs/utils/is.js +64 -92
- package/lib/cjs/utils/latex.js +17 -24
- package/lib/cjs/utils/log.js +2 -9
- package/lib/cjs/utils/lruQueue.js +57 -0
- package/lib/cjs/utils/map.js +166 -0
- package/lib/cjs/utils/noop.js +1 -6
- package/lib/cjs/utils/number.js +176 -167
- package/lib/cjs/utils/object.js +43 -98
- package/lib/cjs/utils/print.js +7 -0
- package/lib/cjs/utils/product.js +0 -4
- package/lib/cjs/utils/scope.js +29 -0
- package/lib/cjs/utils/snapshot.js +53 -108
- package/lib/cjs/utils/string.js +41 -61
- package/lib/cjs/utils/switch.js +26 -0
- package/lib/cjs/version.js +3 -4
- package/lib/esm/constants.js +24 -20
- package/lib/esm/core/create.js +29 -30
- package/lib/esm/core/function/config.js +12 -10
- package/lib/esm/core/function/import.js +23 -70
- package/lib/esm/core/function/typed.js +63 -39
- package/lib/esm/entry/configReadonly.js +3 -5
- package/lib/esm/entry/dependenciesAny/dependenciesAdd.generated.js +2 -0
- package/lib/esm/entry/dependenciesAny/dependenciesAnd.generated.js +2 -0
- package/lib/esm/entry/dependenciesAny/dependenciesAndTransform.generated.js +22 -0
- package/lib/esm/entry/dependenciesAny/dependenciesAtan2.generated.js +2 -0
- package/lib/esm/entry/dependenciesAny/dependenciesBin.generated.js +2 -0
- package/lib/esm/entry/dependenciesAny/dependenciesBitAnd.generated.js +2 -0
- package/lib/esm/entry/dependenciesAny/dependenciesBitAndTransform.generated.js +22 -0
- package/lib/esm/entry/dependenciesAny/dependenciesBitOr.generated.js +2 -0
- package/lib/esm/entry/dependenciesAny/dependenciesBitOrTransform.generated.js +18 -0
- package/lib/esm/entry/dependenciesAny/dependenciesBitXor.generated.js +2 -0
- package/lib/esm/entry/dependenciesAny/dependenciesCeil.generated.js +4 -0
- package/lib/esm/entry/dependenciesAny/dependenciesChainClass.generated.js +2 -0
- package/lib/esm/entry/dependenciesAny/dependenciesCompare.generated.js +2 -0
- package/lib/esm/entry/dependenciesAny/dependenciesCompareText.generated.js +2 -0
- package/lib/esm/entry/dependenciesAny/dependenciesCorr.generated.js +28 -0
- package/lib/esm/entry/dependenciesAny/dependenciesCount.generated.js +14 -0
- package/lib/esm/entry/dependenciesAny/dependenciesCumSum.generated.js +14 -0
- package/lib/esm/entry/dependenciesAny/dependenciesCumSumTransform.generated.js +14 -0
- package/lib/esm/entry/dependenciesAny/dependenciesDet.generated.js +6 -4
- package/lib/esm/entry/dependenciesAny/dependenciesDistance.generated.js +4 -4
- package/lib/esm/entry/dependenciesAny/dependenciesDotDivide.generated.js +2 -0
- package/lib/esm/entry/dependenciesAny/dependenciesDotMultiply.generated.js +2 -0
- package/lib/esm/entry/dependenciesAny/dependenciesDotPow.generated.js +2 -0
- package/lib/esm/entry/dependenciesAny/dependenciesEigs.generated.js +36 -0
- package/lib/esm/entry/dependenciesAny/dependenciesEqual.generated.js +2 -0
- package/lib/esm/entry/dependenciesAny/dependenciesFft.generated.js +34 -0
- package/lib/esm/entry/dependenciesAny/dependenciesFix.generated.js +6 -0
- package/lib/esm/entry/dependenciesAny/dependenciesFloor.generated.js +4 -0
- package/lib/esm/entry/dependenciesAny/dependenciesFreqz.generated.js +20 -0
- package/lib/esm/entry/dependenciesAny/dependenciesGcd.generated.js +6 -0
- package/lib/esm/entry/dependenciesAny/dependenciesHex.generated.js +2 -0
- package/lib/esm/entry/dependenciesAny/dependenciesIfft.generated.js +16 -0
- package/lib/esm/entry/dependenciesAny/dependenciesIndexClass.generated.js +2 -0
- package/lib/esm/entry/dependenciesAny/dependenciesIndexNode.generated.js +0 -2
- package/lib/esm/entry/dependenciesAny/dependenciesIndexTransform.generated.js +2 -0
- package/lib/esm/entry/dependenciesAny/dependenciesIntersect.generated.js +6 -0
- package/lib/esm/entry/dependenciesAny/dependenciesInvmod.generated.js +24 -0
- package/lib/esm/entry/dependenciesAny/dependenciesKldivergence.generated.js +2 -0
- package/lib/esm/entry/dependenciesAny/dependenciesLarger.generated.js +2 -0
- package/lib/esm/entry/dependenciesAny/dependenciesLargerEq.generated.js +2 -0
- package/lib/esm/entry/dependenciesAny/dependenciesLcm.generated.js +2 -0
- package/lib/esm/entry/dependenciesAny/dependenciesLeafCount.generated.js +12 -0
- package/lib/esm/entry/dependenciesAny/dependenciesLeftShift.generated.js +2 -0
- package/lib/esm/entry/dependenciesAny/dependenciesLgamma.generated.js +12 -0
- package/lib/esm/entry/dependenciesAny/dependenciesLsolve.generated.js +2 -2
- package/lib/esm/entry/dependenciesAny/dependenciesLsolveAll.generated.js +2 -2
- package/lib/esm/entry/dependenciesAny/dependenciesLup.generated.js +2 -2
- package/lib/esm/entry/dependenciesAny/dependenciesLyap.generated.js +18 -0
- package/lib/esm/entry/dependenciesAny/dependenciesMatrixFromColumns.generated.js +16 -0
- package/lib/esm/entry/dependenciesAny/dependenciesMatrixFromFunction.generated.js +14 -0
- package/lib/esm/entry/dependenciesAny/dependenciesMatrixFromRows.generated.js +16 -0
- package/lib/esm/entry/dependenciesAny/dependenciesMod.generated.js +6 -0
- package/lib/esm/entry/dependenciesAny/dependenciesNthRoot.generated.js +2 -0
- package/lib/esm/entry/dependenciesAny/dependenciesOct.generated.js +2 -0
- package/lib/esm/entry/dependenciesAny/dependenciesOr.generated.js +2 -0
- package/lib/esm/entry/dependenciesAny/dependenciesOrTransform.generated.js +18 -0
- package/lib/esm/entry/dependenciesAny/dependenciesParserClass.generated.js +2 -2
- package/lib/esm/entry/dependenciesAny/dependenciesPinv.generated.js +32 -0
- package/lib/esm/entry/dependenciesAny/dependenciesPolynomialRoot.generated.js +34 -0
- package/lib/esm/entry/dependenciesAny/dependenciesPow.generated.js +2 -0
- package/lib/esm/entry/dependenciesAny/dependenciesPrintTransform.generated.js +16 -0
- package/lib/esm/entry/dependenciesAny/dependenciesQr.generated.js +2 -2
- package/lib/esm/entry/dependenciesAny/dependenciesQuantileSeq.generated.js +14 -0
- package/lib/esm/entry/dependenciesAny/dependenciesQuantileSeqTransform.generated.js +32 -0
- package/lib/esm/entry/dependenciesAny/dependenciesRange.generated.js +4 -0
- package/lib/esm/entry/dependenciesAny/dependenciesRangeTransform.generated.js +4 -0
- package/lib/esm/entry/dependenciesAny/dependenciesRationalize.generated.js +14 -0
- package/lib/esm/entry/dependenciesAny/dependenciesResolve.generated.js +20 -0
- package/lib/esm/entry/dependenciesAny/dependenciesRightArithShift.generated.js +2 -0
- package/lib/esm/entry/dependenciesAny/dependenciesRightLogShift.generated.js +2 -0
- package/lib/esm/entry/dependenciesAny/dependenciesSchur.generated.js +22 -0
- package/lib/esm/entry/dependenciesAny/dependenciesSimplify.generated.js +16 -0
- package/lib/esm/entry/dependenciesAny/dependenciesSimplifyConstant.generated.js +32 -0
- package/lib/esm/entry/dependenciesAny/dependenciesSimplifyCore.generated.js +44 -0
- package/lib/esm/entry/dependenciesAny/dependenciesSmaller.generated.js +2 -0
- package/lib/esm/entry/dependenciesAny/dependenciesSmallerEq.generated.js +2 -0
- package/lib/esm/entry/dependenciesAny/dependenciesSolveODE.generated.js +38 -0
- package/lib/esm/entry/dependenciesAny/dependenciesSqrtm.generated.js +2 -0
- package/lib/esm/entry/dependenciesAny/dependenciesStd.generated.js +2 -0
- package/lib/esm/entry/dependenciesAny/dependenciesStdTransform.generated.js +2 -0
- package/lib/esm/entry/dependenciesAny/dependenciesStirlingS2.generated.js +6 -2
- package/lib/esm/entry/dependenciesAny/dependenciesSubset.generated.js +4 -0
- package/lib/esm/entry/dependenciesAny/dependenciesSubsetTransform.generated.js +4 -0
- package/lib/esm/entry/dependenciesAny/dependenciesSubtract.generated.js +4 -2
- package/lib/esm/entry/dependenciesAny/dependenciesSubtractScalar.generated.js +10 -0
- package/lib/esm/entry/dependenciesAny/dependenciesSylvester.generated.js +38 -0
- package/lib/esm/entry/dependenciesAny/dependenciesSymbolicEqual.generated.js +16 -0
- package/lib/esm/entry/dependenciesAny/dependenciesTo.generated.js +2 -0
- package/lib/esm/entry/dependenciesAny/dependenciesUnequal.generated.js +2 -0
- package/lib/esm/entry/dependenciesAny/dependenciesUnitClass.generated.js +2 -2
- package/lib/esm/entry/dependenciesAny/dependenciesUsolve.generated.js +2 -2
- package/lib/esm/entry/dependenciesAny/dependenciesUsolveAll.generated.js +2 -2
- package/lib/esm/entry/dependenciesAny/dependenciesXor.generated.js +2 -0
- package/lib/esm/entry/dependenciesAny/dependenciesZeta.generated.js +38 -0
- package/lib/esm/entry/dependenciesAny/dependenciesZpk2tf.generated.js +18 -0
- package/lib/esm/entry/dependenciesAny.generated.js +297 -266
- package/lib/esm/entry/dependenciesNumber/dependenciesCeil.generated.js +2 -0
- package/lib/esm/entry/dependenciesNumber/dependenciesChainClass.generated.js +2 -0
- package/lib/esm/entry/dependenciesNumber/dependenciesCorr.generated.js +28 -0
- package/lib/esm/entry/dependenciesNumber/dependenciesCumSum.generated.js +14 -0
- package/lib/esm/entry/dependenciesNumber/dependenciesCumSumTransform.generated.js +14 -0
- package/lib/esm/entry/dependenciesNumber/dependenciesFix.generated.js +4 -0
- package/lib/esm/entry/dependenciesNumber/dependenciesFloor.generated.js +2 -0
- package/lib/esm/entry/dependenciesNumber/dependenciesIndexNode.generated.js +0 -2
- package/lib/esm/entry/dependenciesNumber/dependenciesLgamma.generated.js +10 -0
- package/lib/esm/entry/dependenciesNumber/dependenciesParserClass.generated.js +2 -2
- package/lib/esm/entry/dependenciesNumber/dependenciesQuantileSeq.generated.js +12 -0
- package/lib/esm/entry/dependenciesNumber/dependenciesRange.generated.js +4 -0
- package/lib/esm/entry/dependenciesNumber/dependenciesRangeTransform.generated.js +4 -0
- package/lib/esm/entry/dependenciesNumber/dependenciesRationalize.generated.js +14 -0
- package/lib/esm/entry/dependenciesNumber/dependenciesResolve.generated.js +20 -0
- package/lib/esm/entry/dependenciesNumber/dependenciesSimplify.generated.js +16 -0
- package/lib/esm/entry/dependenciesNumber/dependenciesSimplifyConstant.generated.js +28 -0
- package/lib/esm/entry/dependenciesNumber/dependenciesSimplifyCore.generated.js +44 -0
- package/lib/esm/entry/dependenciesNumber/dependenciesStd.generated.js +2 -0
- package/lib/esm/entry/dependenciesNumber/dependenciesStdTransform.generated.js +2 -0
- package/lib/esm/entry/dependenciesNumber/dependenciesStirlingS2.generated.js +4 -2
- package/lib/esm/entry/dependenciesNumber/dependenciesSubtractScalar.generated.js +10 -0
- package/lib/esm/entry/dependenciesNumber/dependenciesZeta.generated.js +34 -0
- package/lib/esm/entry/dependenciesNumber.generated.js +171 -163
- package/lib/esm/entry/impureFunctionsAny.generated.js +425 -274
- package/lib/esm/entry/impureFunctionsNumber.generated.js +283 -216
- package/lib/esm/entry/mainAny.js +10 -5
- package/lib/esm/entry/mainNumber.js +10 -5
- package/lib/esm/entry/pureFunctionsAny.generated.js +1028 -753
- package/lib/esm/entry/pureFunctionsNumber.generated.js +279 -223
- package/lib/esm/entry/typeChecks.js +1 -1
- package/lib/esm/error/ArgumentsError.js +0 -1
- package/lib/esm/error/DimensionError.js +0 -1
- package/lib/esm/error/IndexError.js +0 -4
- package/lib/esm/expression/Help.js +9 -23
- package/lib/esm/expression/Parser.js +36 -37
- package/lib/esm/expression/embeddedDocs/construction/fraction.js +3 -3
- package/lib/esm/expression/embeddedDocs/construction/index.js +1 -1
- package/lib/esm/expression/embeddedDocs/core/typed.js +1 -1
- package/lib/esm/expression/embeddedDocs/embeddedDocs.js +261 -209
- package/lib/esm/expression/embeddedDocs/function/algebra/leafCount.js +8 -0
- package/lib/esm/expression/embeddedDocs/function/algebra/lyap.js +8 -0
- package/lib/esm/expression/embeddedDocs/function/algebra/polynomialRoot.js +8 -0
- package/lib/esm/expression/embeddedDocs/function/algebra/resolve.js +9 -0
- package/lib/esm/expression/embeddedDocs/function/algebra/schur.js +8 -0
- package/lib/esm/expression/embeddedDocs/function/algebra/simplify.js +1 -1
- package/lib/esm/expression/embeddedDocs/function/algebra/simplifyConstant.js +8 -0
- package/lib/esm/expression/embeddedDocs/function/algebra/simplifyCore.js +8 -0
- package/lib/esm/expression/embeddedDocs/function/algebra/sylvester.js +8 -0
- package/lib/esm/expression/embeddedDocs/function/algebra/symbolicEqual.js +8 -0
- package/lib/esm/expression/embeddedDocs/function/arithmetic/invmod.js +8 -0
- package/lib/esm/expression/embeddedDocs/function/arithmetic/pow.js +1 -1
- package/lib/esm/expression/embeddedDocs/function/arithmetic/round.js +2 -2
- package/lib/esm/expression/embeddedDocs/function/arithmetic/sqrtm.js +1 -1
- package/lib/esm/expression/embeddedDocs/function/expression/evaluate.js +2 -2
- package/lib/esm/expression/embeddedDocs/function/matrix/column.js +1 -1
- package/lib/esm/expression/embeddedDocs/function/matrix/count.js +8 -0
- package/lib/esm/expression/embeddedDocs/function/matrix/diff.js +1 -1
- package/lib/esm/expression/embeddedDocs/function/matrix/eigs.js +2 -2
- package/lib/esm/expression/embeddedDocs/function/matrix/fft.js +8 -0
- package/lib/esm/expression/embeddedDocs/function/matrix/forEach.js +1 -1
- package/lib/esm/expression/embeddedDocs/function/matrix/ifft.js +8 -0
- package/lib/esm/expression/embeddedDocs/function/matrix/matrixFromColumns.js +8 -0
- package/lib/esm/expression/embeddedDocs/function/matrix/matrixFromFunction.js +8 -0
- package/lib/esm/expression/embeddedDocs/function/matrix/matrixFromRows.js +8 -0
- package/lib/esm/expression/embeddedDocs/function/matrix/partitionSelect.js +1 -1
- package/lib/esm/expression/embeddedDocs/function/matrix/pinv.js +8 -0
- package/lib/esm/expression/embeddedDocs/function/matrix/range.js +1 -1
- package/lib/esm/expression/embeddedDocs/function/matrix/reshape.js +1 -1
- package/lib/esm/expression/embeddedDocs/function/matrix/rotate.js +1 -1
- package/lib/esm/expression/embeddedDocs/function/matrix/row.js +1 -1
- package/lib/esm/expression/embeddedDocs/function/matrix/size.js +1 -1
- package/lib/esm/expression/embeddedDocs/function/matrix/sort.js +1 -1
- package/lib/esm/expression/embeddedDocs/function/matrix/subset.js +2 -2
- package/lib/esm/expression/embeddedDocs/function/numeric/solveODE.js +8 -0
- package/lib/esm/expression/embeddedDocs/function/probability/lgamma.js +8 -0
- package/lib/esm/expression/embeddedDocs/function/set/setCartesian.js +1 -1
- package/lib/esm/expression/embeddedDocs/function/signal/freqz.js +8 -0
- package/lib/esm/expression/embeddedDocs/function/signal/zpk2tf.js +8 -0
- package/lib/esm/expression/embeddedDocs/function/special/zeta.js +8 -0
- package/lib/esm/expression/embeddedDocs/function/statistics/corr.js +8 -0
- package/lib/esm/expression/embeddedDocs/function/statistics/cumsum.js +8 -0
- package/lib/esm/expression/embeddedDocs/function/statistics/max.js +1 -1
- package/lib/esm/expression/embeddedDocs/function/statistics/mean.js +1 -1
- package/lib/esm/expression/embeddedDocs/function/statistics/min.js +1 -1
- package/lib/esm/expression/embeddedDocs/function/statistics/std.js +1 -1
- package/lib/esm/expression/embeddedDocs/function/statistics/sum.js +1 -1
- package/lib/esm/expression/embeddedDocs/function/statistics/variance.js +1 -1
- package/lib/esm/expression/embeddedDocs/function/utils/numeric.js +1 -1
- package/lib/esm/expression/embeddedDocs/function/utils/print.js +1 -1
- package/lib/esm/expression/function/compile.js +1 -2
- package/lib/esm/expression/function/evaluate.js +6 -6
- package/lib/esm/expression/function/help.js +2 -7
- package/lib/esm/expression/function/parser.js +6 -7
- package/lib/esm/expression/keywords.js +1 -3
- package/lib/esm/expression/node/AccessorNode.js +150 -170
- package/lib/esm/expression/node/ArrayNode.js +149 -159
- package/lib/esm/expression/node/AssignmentNode.js +249 -267
- package/lib/esm/expression/node/BlockNode.js +156 -164
- package/lib/esm/expression/node/ConditionalNode.js +186 -201
- package/lib/esm/expression/node/ConstantNode.js +145 -163
- package/lib/esm/expression/node/FunctionAssignmentNode.js +195 -195
- package/lib/esm/expression/node/FunctionNode.js +367 -357
- package/lib/esm/expression/node/IndexNode.js +178 -230
- package/lib/esm/expression/node/Node.js +316 -375
- package/lib/esm/expression/node/ObjectNode.js +154 -177
- package/lib/esm/expression/node/OperatorNode.js +399 -456
- package/lib/esm/expression/node/ParenthesisNode.js +126 -138
- package/lib/esm/expression/node/RangeNode.js +200 -238
- package/lib/esm/expression/node/RelationalNode.js +169 -183
- package/lib/esm/expression/node/SymbolNode.js +156 -170
- package/lib/esm/expression/node/utils/access.js +0 -2
- package/lib/esm/expression/node/utils/assign.js +7 -4
- package/lib/esm/expression/operators.js +101 -33
- package/lib/esm/expression/parse.js +273 -388
- package/lib/esm/expression/transform/and.transform.js +35 -0
- package/lib/esm/expression/transform/apply.transform.js +4 -5
- package/lib/esm/expression/transform/bitAnd.transform.js +40 -0
- package/lib/esm/expression/transform/bitOr.transform.js +41 -0
- package/lib/esm/expression/transform/column.transform.js +4 -5
- package/lib/esm/expression/transform/concat.transform.js +2 -4
- package/lib/esm/expression/transform/cumsum.transform.js +46 -0
- package/lib/esm/expression/transform/diff.transform.js +4 -14
- package/lib/esm/expression/transform/filter.transform.js +8 -21
- package/lib/esm/expression/transform/forEach.transform.js +6 -22
- package/lib/esm/expression/transform/index.transform.js +13 -12
- package/lib/esm/expression/transform/map.transform.js +8 -23
- package/lib/esm/expression/transform/max.transform.js +4 -14
- package/lib/esm/expression/transform/mean.transform.js +4 -14
- package/lib/esm/expression/transform/min.transform.js +4 -14
- package/lib/esm/expression/transform/or.transform.js +33 -0
- package/lib/esm/expression/transform/print.transform.js +42 -0
- package/lib/esm/expression/transform/quantileSeq.transform.js +59 -0
- package/lib/esm/expression/transform/range.transform.js +9 -7
- package/lib/esm/expression/transform/row.transform.js +4 -5
- package/lib/esm/expression/transform/std.transform.js +7 -15
- package/lib/esm/expression/transform/subset.transform.js +9 -5
- package/lib/esm/expression/transform/sum.transform.js +5 -15
- package/lib/esm/expression/transform/utils/compileInlineExpression.js +7 -8
- package/lib/esm/expression/transform/utils/errorTransform.js +1 -2
- package/lib/esm/expression/transform/utils/lastDimToZeroBase.js +17 -0
- package/lib/esm/expression/transform/variance.transform.js +4 -14
- package/lib/esm/factoriesAny.js +36 -3
- package/lib/esm/factoriesNumber.js +83 -38
- package/lib/esm/function/algebra/decomposition/lup.js +128 -162
- package/lib/esm/function/algebra/decomposition/qr.js +30 -45
- package/lib/esm/function/algebra/decomposition/schur.js +70 -0
- package/lib/esm/function/algebra/decomposition/slu.js +10 -9
- package/lib/esm/function/algebra/derivative.js +63 -164
- package/lib/esm/function/algebra/leafCount.js +54 -0
- package/lib/esm/function/algebra/lyap.js +52 -0
- package/lib/esm/function/algebra/polynomialRoot.js +122 -0
- package/lib/esm/function/algebra/rationalize.js +220 -272
- package/lib/esm/function/algebra/resolve.js +97 -0
- package/lib/esm/function/algebra/simplify/util.js +148 -67
- package/lib/esm/function/algebra/simplify/wildcards.js +20 -0
- package/lib/esm/function/algebra/simplify.js +823 -380
- package/lib/esm/function/algebra/simplifyConstant.js +457 -0
- package/lib/esm/function/algebra/simplifyCore.js +288 -0
- package/lib/esm/function/algebra/solver/lsolve.js +27 -31
- package/lib/esm/function/algebra/solver/lsolveAll.js +34 -35
- package/lib/esm/function/algebra/solver/lusolve.js +10 -15
- package/lib/esm/function/algebra/solver/usolve.js +31 -36
- package/lib/esm/function/algebra/solver/usolveAll.js +38 -35
- package/lib/esm/function/algebra/solver/utils/solveValidation.js +9 -33
- package/lib/esm/function/algebra/sparse/csAmd.js +249 -298
- package/lib/esm/function/algebra/sparse/csChol.js +66 -78
- package/lib/esm/function/algebra/sparse/csCounts.js +38 -53
- package/lib/esm/function/algebra/sparse/csCumsum.js +8 -10
- package/lib/esm/function/algebra/sparse/csDfs.js +35 -39
- package/lib/esm/function/algebra/sparse/csEreach.js +25 -29
- package/lib/esm/function/algebra/sparse/csEtree.js +23 -27
- package/lib/esm/function/algebra/sparse/csFkeep.js +20 -24
- package/lib/esm/function/algebra/sparse/csIpvec.js +2 -3
- package/lib/esm/function/algebra/sparse/csLeaf.js +15 -17
- package/lib/esm/function/algebra/sparse/csLu.js +69 -87
- package/lib/esm/function/algebra/sparse/csMark.js +1 -1
- package/lib/esm/function/algebra/sparse/csPermute.js +20 -24
- package/lib/esm/function/algebra/sparse/csPost.js +15 -23
- package/lib/esm/function/algebra/sparse/csReach.js +15 -17
- package/lib/esm/function/algebra/sparse/csSpsolve.js +31 -36
- package/lib/esm/function/algebra/sparse/csSqr.js +61 -78
- package/lib/esm/function/algebra/sparse/csSymperm.js +33 -41
- package/lib/esm/function/algebra/sparse/csTdfs.js +12 -14
- package/lib/esm/function/algebra/sparse/csUnflip.js +1 -1
- package/lib/esm/function/algebra/sylvester.js +118 -0
- package/lib/esm/function/algebra/symbolicEqual.js +60 -0
- package/lib/esm/function/arithmetic/abs.js +4 -18
- package/lib/esm/function/arithmetic/add.js +59 -104
- package/lib/esm/function/arithmetic/addScalar.js +10 -7
- package/lib/esm/function/arithmetic/cbrt.js +16 -26
- package/lib/esm/function/arithmetic/ceil.js +76 -42
- package/lib/esm/function/arithmetic/cube.js +6 -11
- package/lib/esm/function/arithmetic/divide.js +10 -9
- package/lib/esm/function/arithmetic/divideScalar.js +3 -21
- package/lib/esm/function/arithmetic/dotDivide.js +28 -68
- package/lib/esm/function/arithmetic/dotMultiply.js +22 -64
- package/lib/esm/function/arithmetic/dotPow.js +34 -66
- package/lib/esm/function/arithmetic/exp.js +9 -13
- package/lib/esm/function/arithmetic/expm1.js +11 -11
- package/lib/esm/function/arithmetic/fix.js +60 -25
- package/lib/esm/function/arithmetic/floor.js +81 -42
- package/lib/esm/function/arithmetic/gcd.js +86 -79
- package/lib/esm/function/arithmetic/hypot.js +8 -12
- package/lib/esm/function/arithmetic/invmod.js +55 -0
- package/lib/esm/function/arithmetic/lcm.js +33 -81
- package/lib/esm/function/arithmetic/log.js +8 -12
- package/lib/esm/function/arithmetic/log10.js +2 -5
- package/lib/esm/function/arithmetic/log1p.js +6 -10
- package/lib/esm/function/arithmetic/log2.js +3 -6
- package/lib/esm/function/arithmetic/mod.js +59 -78
- package/lib/esm/function/arithmetic/multiply.js +330 -351
- package/lib/esm/function/arithmetic/multiplyScalar.js +3 -15
- package/lib/esm/function/arithmetic/norm.js +32 -62
- package/lib/esm/function/arithmetic/nthRoot.js +53 -96
- package/lib/esm/function/arithmetic/nthRoots.js +10 -16
- package/lib/esm/function/arithmetic/pow.js +44 -37
- package/lib/esm/function/arithmetic/round.js +71 -77
- package/lib/esm/function/arithmetic/sign.js +10 -10
- package/lib/esm/function/arithmetic/sqrt.js +7 -11
- package/lib/esm/function/arithmetic/square.js +7 -11
- package/lib/esm/function/arithmetic/subtract.js +37 -121
- package/lib/esm/function/arithmetic/subtractScalar.js +46 -0
- package/lib/esm/function/arithmetic/unaryMinus.js +8 -18
- package/lib/esm/function/arithmetic/unaryPlus.js +3 -6
- package/lib/esm/function/arithmetic/xgcd.js +10 -13
- package/lib/esm/function/bitwise/bitAnd.js +22 -63
- package/lib/esm/function/bitwise/bitNot.js +3 -6
- package/lib/esm/function/bitwise/bitOr.js +22 -63
- package/lib/esm/function/bitwise/bitXor.js +22 -63
- package/lib/esm/function/bitwise/leftShift.js +45 -69
- package/lib/esm/function/bitwise/rightArithShift.js +46 -70
- package/lib/esm/function/bitwise/rightLogShift.js +46 -68
- package/lib/esm/function/bitwise/useMatrixForArrayScalar.js +13 -0
- package/lib/esm/function/combinatorics/bellNumbers.js +3 -6
- package/lib/esm/function/combinatorics/catalan.js +1 -3
- package/lib/esm/function/combinatorics/composition.js +1 -3
- package/lib/esm/function/combinatorics/stirlingS2.js +39 -18
- package/lib/esm/function/complex/arg.js +3 -5
- package/lib/esm/function/complex/conj.js +4 -14
- package/lib/esm/function/complex/im.js +5 -14
- package/lib/esm/function/complex/re.js +4 -14
- package/lib/esm/function/geometry/distance.js +38 -81
- package/lib/esm/function/geometry/intersect.js +87 -87
- package/lib/esm/function/logical/and.js +41 -65
- package/lib/esm/function/logical/not.js +4 -8
- package/lib/esm/function/logical/or.js +22 -65
- package/lib/esm/function/logical/xor.js +22 -65
- package/lib/esm/function/matrix/apply.js +3 -17
- package/lib/esm/function/matrix/column.js +5 -5
- package/lib/esm/function/matrix/concat.js +10 -46
- package/lib/esm/function/matrix/count.js +39 -0
- package/lib/esm/function/matrix/cross.js +2 -6
- package/lib/esm/function/matrix/ctranspose.js +1 -2
- package/lib/esm/function/matrix/det.js +43 -48
- package/lib/esm/function/matrix/diag.js +19 -28
- package/lib/esm/function/matrix/diff.js +11 -31
- package/lib/esm/function/matrix/dot.js +19 -40
- package/lib/esm/function/matrix/eigs/complexEigs.js +698 -0
- package/lib/esm/function/matrix/eigs/realSymmetric.js +297 -0
- package/lib/esm/function/matrix/eigs.js +258 -360
- package/lib/esm/function/matrix/expm.js +24 -36
- package/lib/esm/function/matrix/fft.js +128 -0
- package/lib/esm/function/matrix/filter.js +4 -14
- package/lib/esm/function/matrix/flatten.js +6 -7
- package/lib/esm/function/matrix/forEach.js +6 -18
- package/lib/esm/function/matrix/getMatrixDataType.js +2 -3
- package/lib/esm/function/matrix/identity.js +10 -21
- package/lib/esm/function/matrix/ifft.js +37 -0
- package/lib/esm/function/matrix/inv.js +13 -32
- package/lib/esm/function/matrix/kron.js +2 -6
- package/lib/esm/function/matrix/map.js +23 -23
- package/lib/esm/function/matrix/matrixFromColumns.js +88 -0
- package/lib/esm/function/matrix/matrixFromFunction.js +74 -0
- package/lib/esm/function/matrix/matrixFromRows.js +76 -0
- package/lib/esm/function/matrix/ones.js +8 -16
- package/lib/esm/function/matrix/partitionSelect.js +20 -23
- package/lib/esm/function/matrix/pinv.js +179 -0
- package/lib/esm/function/matrix/range.js +38 -137
- package/lib/esm/function/matrix/reshape.js +8 -10
- package/lib/esm/function/matrix/resize.js +6 -19
- package/lib/esm/function/matrix/rotate.js +6 -15
- package/lib/esm/function/matrix/rotationMatrix.js +4 -20
- package/lib/esm/function/matrix/row.js +5 -5
- package/lib/esm/function/matrix/size.js +2 -3
- package/lib/esm/function/matrix/sort.js +5 -15
- package/lib/esm/function/matrix/sqrtm.js +8 -15
- package/lib/esm/function/matrix/squeeze.js +3 -4
- package/lib/esm/function/matrix/subset.js +113 -58
- package/lib/esm/function/matrix/trace.js +21 -31
- package/lib/esm/function/matrix/transpose.js +79 -94
- package/lib/esm/function/matrix/zeros.js +11 -17
- package/lib/esm/function/numeric/solveODE.js +284 -0
- package/lib/esm/function/probability/combinations.js +4 -9
- package/lib/esm/function/probability/combinationsWithRep.js +2 -13
- package/lib/esm/function/probability/factorial.js +2 -7
- package/lib/esm/function/probability/gamma.js +48 -59
- package/lib/esm/function/probability/kldivergence.js +6 -15
- package/lib/esm/function/probability/lgamma.js +137 -0
- package/lib/esm/function/probability/multinomial.js +1 -3
- package/lib/esm/function/probability/permutations.js +6 -14
- package/lib/esm/function/probability/pickRandom.js +6 -22
- package/lib/esm/function/probability/random.js +6 -12
- package/lib/esm/function/probability/randomInt.js +2 -6
- package/lib/esm/function/probability/util/randomMatrix.js +0 -2
- package/lib/esm/function/probability/util/seededRNG.js +6 -5
- package/lib/esm/function/relational/compare.js +28 -72
- package/lib/esm/function/relational/compareNatural.js +73 -93
- package/lib/esm/function/relational/compareText.js +17 -47
- package/lib/esm/function/relational/compareUnits.js +14 -0
- package/lib/esm/function/relational/deepEqual.js +2 -6
- package/lib/esm/function/relational/equal.js +26 -88
- package/lib/esm/function/relational/equalScalar.js +7 -10
- package/lib/esm/function/relational/equalText.js +1 -2
- package/lib/esm/function/relational/larger.js +30 -78
- package/lib/esm/function/relational/largerEq.js +30 -78
- package/lib/esm/function/relational/smaller.js +30 -78
- package/lib/esm/function/relational/smallerEq.js +30 -78
- package/lib/esm/function/relational/unequal.js +26 -89
- package/lib/esm/function/set/setCartesian.js +8 -11
- package/lib/esm/function/set/setDifference.js +5 -12
- package/lib/esm/function/set/setDistinct.js +5 -10
- package/lib/esm/function/set/setIntersect.js +5 -10
- package/lib/esm/function/set/setIsSubset.js +2 -8
- package/lib/esm/function/set/setMultiplicity.js +1 -5
- package/lib/esm/function/set/setPowerset.js +7 -14
- package/lib/esm/function/set/setSize.js +4 -6
- package/lib/esm/function/set/setSymDifference.js +1 -3
- package/lib/esm/function/set/setUnion.js +1 -3
- package/lib/esm/function/signal/freqz.js +115 -0
- package/lib/esm/function/signal/zpk2tf.js +82 -0
- package/lib/esm/function/special/erf.js +16 -26
- package/lib/esm/function/special/zeta.js +148 -0
- package/lib/esm/function/statistics/corr.js +84 -0
- package/lib/esm/function/statistics/cumsum.js +123 -0
- package/lib/esm/function/statistics/mad.js +1 -5
- package/lib/esm/function/statistics/max.js +8 -13
- package/lib/esm/function/statistics/mean.js +5 -10
- package/lib/esm/function/statistics/median.js +10 -13
- package/lib/esm/function/statistics/min.js +7 -12
- package/lib/esm/function/statistics/mode.js +3 -12
- package/lib/esm/function/statistics/prod.js +7 -8
- package/lib/esm/function/statistics/quantileSeq.js +91 -200
- package/lib/esm/function/statistics/std.js +10 -6
- package/lib/esm/function/statistics/sum.js +8 -11
- package/lib/esm/function/statistics/utils/improveErrorMessage.js +1 -4
- package/lib/esm/function/statistics/variance.js +7 -15
- package/lib/esm/function/string/bin.js +24 -3
- package/lib/esm/function/string/format.js +39 -23
- package/lib/esm/function/string/hex.js +25 -5
- package/lib/esm/function/string/oct.js +26 -4
- package/lib/esm/function/string/print.js +7 -7
- package/lib/esm/function/trigonometry/acos.js +5 -9
- package/lib/esm/function/trigonometry/acosh.js +3 -10
- package/lib/esm/function/trigonometry/acot.js +7 -12
- package/lib/esm/function/trigonometry/acoth.js +5 -10
- package/lib/esm/function/trigonometry/acsc.js +7 -13
- package/lib/esm/function/trigonometry/acsch.js +5 -9
- package/lib/esm/function/trigonometry/asec.js +7 -12
- package/lib/esm/function/trigonometry/asech.js +5 -12
- package/lib/esm/function/trigonometry/asin.js +6 -11
- package/lib/esm/function/trigonometry/asinh.js +5 -10
- package/lib/esm/function/trigonometry/atan.js +6 -12
- package/lib/esm/function/trigonometry/atan2.js +33 -69
- package/lib/esm/function/trigonometry/atanh.js +5 -11
- package/lib/esm/function/trigonometry/cos.js +11 -22
- package/lib/esm/function/trigonometry/cosh.js +6 -22
- package/lib/esm/function/trigonometry/cot.js +10 -20
- package/lib/esm/function/trigonometry/coth.js +7 -22
- package/lib/esm/function/trigonometry/csc.js +12 -22
- package/lib/esm/function/trigonometry/csch.js +7 -22
- package/lib/esm/function/trigonometry/sec.js +12 -22
- package/lib/esm/function/trigonometry/sech.js +7 -22
- package/lib/esm/function/trigonometry/sin.js +11 -23
- package/lib/esm/function/trigonometry/sinh.js +6 -23
- package/lib/esm/function/trigonometry/tan.js +11 -23
- package/lib/esm/function/trigonometry/tanh.js +6 -23
- package/lib/esm/function/trigonometry/trigUnit.js +14 -0
- package/lib/esm/function/unit/to.js +17 -50
- package/lib/esm/function/utils/clone.js +2 -3
- package/lib/esm/function/utils/hasNumericValue.js +4 -3
- package/lib/esm/function/utils/isInteger.js +4 -6
- package/lib/esm/function/utils/isNaN.js +2 -3
- package/lib/esm/function/utils/isNegative.js +4 -9
- package/lib/esm/function/utils/isNumeric.js +5 -12
- package/lib/esm/function/utils/isPositive.js +4 -9
- package/lib/esm/function/utils/isPrime.js +56 -14
- package/lib/esm/function/utils/isZero.js +14 -19
- package/lib/esm/function/utils/numeric.js +13 -10
- package/lib/esm/function/utils/typeOf.js +39 -46
- package/lib/esm/header.js +1 -1
- package/lib/esm/json/replacer.js +0 -1
- package/lib/esm/json/reviver.js +1 -4
- package/lib/esm/plain/bignumber/index.js +2 -1
- package/lib/esm/plain/number/arithmetic.js +41 -74
- package/lib/esm/plain/number/bitwise.js +0 -7
- package/lib/esm/plain/number/combinations.js +17 -11
- package/lib/esm/plain/number/probability.js +37 -11
- package/lib/esm/type/bignumber/BigNumber.js +6 -10
- package/lib/esm/type/bignumber/function/bignumber.js +23 -5
- package/lib/esm/type/boolean.js +4 -10
- package/lib/esm/type/chain/Chain.js +35 -35
- package/lib/esm/type/chain/function/chain.js +1 -2
- package/lib/esm/type/complex/Complex.js +14 -30
- package/lib/esm/type/complex/function/complex.js +2 -7
- package/lib/esm/type/fraction/Fraction.js +6 -4
- package/lib/esm/type/fraction/function/fraction.js +28 -15
- package/lib/esm/type/matrix/DenseMatrix.js +240 -220
- package/lib/esm/type/matrix/FibonacciHeap.js +121 -159
- package/lib/esm/type/matrix/ImmutableDenseMatrix.js +20 -39
- package/lib/esm/type/matrix/Matrix.js +26 -34
- package/lib/esm/type/matrix/MatrixIndex.js +64 -68
- package/lib/esm/type/matrix/Range.js +14 -46
- package/lib/esm/type/matrix/Spa.js +33 -51
- package/lib/esm/type/matrix/SparseMatrix.js +504 -553
- package/lib/esm/type/matrix/function/index.js +7 -6
- package/lib/esm/type/matrix/function/matrix.js +4 -6
- package/lib/esm/type/matrix/function/sparse.js +7 -2
- package/lib/esm/type/matrix/utils/broadcast.js +69 -0
- package/lib/esm/type/matrix/utils/{algorithm01.js → matAlgo01xDSid.js} +38 -35
- package/lib/esm/type/matrix/utils/{algorithm02.js → matAlgo02xDS0.js} +45 -42
- package/lib/esm/type/matrix/utils/{algorithm03.js → matAlgo03xDSf.js} +43 -40
- package/lib/esm/type/matrix/utils/{algorithm04.js → matAlgo04xSidSid.js} +75 -72
- package/lib/esm/type/matrix/utils/{algorithm05.js → matAlgo05xSfSf.js} +75 -73
- package/lib/esm/type/matrix/utils/{algorithm06.js → matAlgo06xS0S0.js} +63 -59
- package/lib/esm/type/matrix/utils/{algorithm07.js → matAlgo07xSSf.js} +49 -48
- package/lib/esm/type/matrix/utils/{algorithm08.js → matAlgo08xS0Sid.js} +70 -67
- package/lib/esm/type/matrix/utils/{algorithm09.js → matAlgo09xS0Sf.js} +59 -55
- package/lib/esm/type/matrix/utils/{algorithm10.js → matAlgo10xSids.js} +35 -33
- package/lib/esm/type/matrix/utils/{algorithm11.js → matAlgo11xS0s.js} +41 -38
- package/lib/esm/type/matrix/utils/{algorithm12.js → matAlgo12xSfs.js} +35 -33
- package/lib/esm/type/matrix/utils/{algorithm13.js → matAlgo13xDD.js} +29 -28
- package/lib/esm/type/matrix/utils/{algorithm14.js → matAlgo14xDs.js} +21 -19
- package/lib/esm/type/matrix/utils/matrixAlgorithmSuite.js +156 -0
- package/lib/esm/type/number.js +76 -20
- package/lib/esm/type/resultset/ResultSet.js +5 -11
- package/lib/esm/type/string.js +2 -5
- package/lib/esm/type/unit/Unit.js +361 -493
- package/lib/esm/type/unit/function/createUnit.js +3 -3
- package/lib/esm/type/unit/function/splitUnit.js +2 -3
- package/lib/esm/type/unit/function/unit.js +14 -9
- package/lib/esm/type/unit/physicalConstants.js +24 -17
- package/lib/esm/utils/applyCallback.js +67 -0
- package/lib/esm/utils/array.js +341 -137
- package/lib/esm/utils/bignumber/bitwise.js +13 -89
- package/lib/esm/utils/bignumber/constants.js +17 -9
- package/lib/esm/utils/bignumber/formatter.js +94 -28
- package/lib/esm/utils/bignumber/nearlyEqual.js +8 -9
- package/lib/esm/utils/collection.js +25 -60
- package/lib/esm/utils/complex.js +1 -1
- package/lib/esm/utils/customs.js +31 -40
- package/lib/esm/utils/emitter.js +3 -2
- package/lib/esm/utils/factory.js +12 -20
- package/lib/esm/utils/function.js +29 -20
- package/lib/esm/utils/is.js +33 -23
- package/lib/esm/utils/latex.js +10 -8
- package/lib/esm/utils/log.js +0 -2
- package/lib/esm/utils/lruQueue.js +51 -0
- package/lib/esm/utils/map.js +120 -0
- package/lib/esm/utils/number.js +158 -106
- package/lib/esm/utils/object.js +34 -70
- package/lib/esm/utils/print.js +1 -0
- package/lib/esm/utils/product.js +0 -3
- package/lib/esm/utils/scope.js +24 -0
- package/lib/esm/utils/snapshot.js +37 -86
- package/lib/esm/utils/string.js +36 -48
- package/lib/esm/utils/switch.js +20 -0
- package/lib/esm/version.js +2 -1
- package/package.json +71 -45
- package/types/EXPLANATION.md +54 -0
- package/types/index.d.ts +6967 -0
- package/types/tslint.json +6 -0
- package/docs/command_line_interface.md +0 -87
- package/docs/core/chaining.md +0 -41
- package/docs/core/configuration.md +0 -144
- package/docs/core/extension.md +0 -263
- package/docs/core/index.md +0 -21
- package/docs/core/serialization.md +0 -50
- package/docs/custom_bundling.md +0 -116
- package/docs/datatypes/bignumbers.md +0 -102
- package/docs/datatypes/complex_numbers.md +0 -168
- package/docs/datatypes/fractions.md +0 -75
- package/docs/datatypes/index.md +0 -67
- package/docs/datatypes/matrices.md +0 -343
- package/docs/datatypes/numbers.md +0 -106
- package/docs/datatypes/units.md +0 -444
- package/docs/expressions/algebra.md +0 -83
- package/docs/expressions/customization.md +0 -379
- package/docs/expressions/expression_trees.md +0 -699
- package/docs/expressions/html_classes.md +0 -38
- package/docs/expressions/index.md +0 -21
- package/docs/expressions/parsing.md +0 -207
- package/docs/expressions/security.md +0 -89
- package/docs/expressions/syntax.md +0 -648
- package/docs/getting_started.md +0 -124
- package/docs/index.md +0 -39
- package/docs/reference/.gitignore +0 -1
- package/docs/reference/.npmignore +0 -1
- package/docs/reference/classes/densematrix.md +0 -247
- package/docs/reference/classes/fibonacciheap.md +0 -70
- package/docs/reference/classes/matrixindex.md +0 -133
- package/docs/reference/classes/matrixrange.md +0 -158
- package/docs/reference/classes/resultset.md +0 -47
- package/docs/reference/classes/sparsematrix.md +0 -245
- package/docs/reference/classes/unit.md +0 -242
- package/docs/reference/classes.md +0 -86
- package/docs/reference/constants.md +0 -29
- package/docs/reference/functions/.gitignore +0 -1
- package/docs/reference/functions/.npmignore +0 -1
- package/docs/reference/functions/abs.md +0 -40
- package/docs/reference/functions/acos.md +0 -43
- package/docs/reference/functions/acosh.md +0 -41
- package/docs/reference/functions/acot.md +0 -42
- package/docs/reference/functions/acoth.md +0 -40
- package/docs/reference/functions/acsc.md +0 -43
- package/docs/reference/functions/acsch.md +0 -40
- package/docs/reference/functions/add.md +0 -53
- package/docs/reference/functions/and.md +0 -47
- package/docs/reference/functions/apply.md +0 -50
- package/docs/reference/functions/arg.md +0 -47
- package/docs/reference/functions/asec.md +0 -43
- package/docs/reference/functions/asech.md +0 -40
- package/docs/reference/functions/asin.md +0 -43
- package/docs/reference/functions/asinh.md +0 -40
- package/docs/reference/functions/atan.md +0 -43
- package/docs/reference/functions/atan2.md +0 -50
- package/docs/reference/functions/atanh.md +0 -40
- package/docs/reference/functions/bellNumbers.md +0 -39
- package/docs/reference/functions/bignumber.md +0 -47
- package/docs/reference/functions/bin.md +0 -38
- package/docs/reference/functions/bitAnd.md +0 -45
- package/docs/reference/functions/bitNot.md +0 -45
- package/docs/reference/functions/bitOr.md +0 -46
- package/docs/reference/functions/bitXor.md +0 -45
- package/docs/reference/functions/boolean.md +0 -50
- package/docs/reference/functions/catalan.md +0 -39
- package/docs/reference/functions/cbrt.md +0 -54
- package/docs/reference/functions/ceil.md +0 -57
- package/docs/reference/functions/chain.md +0 -54
- package/docs/reference/functions/clone.md +0 -37
- package/docs/reference/functions/column.md +0 -39
- package/docs/reference/functions/combinations.md +0 -43
- package/docs/reference/functions/combinationsWithRep.md +0 -43
- package/docs/reference/functions/compare.md +0 -61
- package/docs/reference/functions/compareNatural.md +0 -86
- package/docs/reference/functions/compareText.md +0 -48
- package/docs/reference/functions/compile.md +0 -50
- package/docs/reference/functions/complex.md +0 -61
- package/docs/reference/functions/composition.md +0 -40
- package/docs/reference/functions/concat.md +0 -50
- package/docs/reference/functions/config.md +0 -44
- package/docs/reference/functions/conj.md +0 -44
- package/docs/reference/functions/cos.md +0 -45
- package/docs/reference/functions/cosh.md +0 -40
- package/docs/reference/functions/cot.md +0 -41
- package/docs/reference/functions/coth.md +0 -43
- package/docs/reference/functions/createUnit.md +0 -52
- package/docs/reference/functions/cross.md +0 -52
- package/docs/reference/functions/csc.md +0 -41
- package/docs/reference/functions/csch.md +0 -43
- package/docs/reference/functions/ctranspose.md +0 -44
- package/docs/reference/functions/cube.md +0 -45
- package/docs/reference/functions/deepEqual.md +0 -47
- package/docs/reference/functions/derivative.md +0 -55
- package/docs/reference/functions/det.md +0 -43
- package/docs/reference/functions/diag.md +0 -55
- package/docs/reference/functions/diff.md +0 -64
- package/docs/reference/functions/distance.md +0 -74
- package/docs/reference/functions/divide.md +0 -49
- package/docs/reference/functions/dot.md +0 -42
- package/docs/reference/functions/dotDivide.md +0 -46
- package/docs/reference/functions/dotMultiply.md +0 -46
- package/docs/reference/functions/dotPow.md +0 -43
- package/docs/reference/functions/eigs.md +0 -48
- package/docs/reference/functions/equal.md +0 -69
- package/docs/reference/functions/equalText.md +0 -47
- package/docs/reference/functions/erf.md +0 -43
- package/docs/reference/functions/evaluate.md +0 -50
- package/docs/reference/functions/exp.md +0 -48
- package/docs/reference/functions/expm.md +0 -43
- package/docs/reference/functions/expm1.md +0 -48
- package/docs/reference/functions/factorial.md +0 -43
- package/docs/reference/functions/filter.md +0 -44
- package/docs/reference/functions/fix.md +0 -55
- package/docs/reference/functions/flatten.md +0 -39
- package/docs/reference/functions/floor.md +0 -56
- package/docs/reference/functions/forEach.md +0 -35
- package/docs/reference/functions/format.md +0 -104
- package/docs/reference/functions/fraction.md +0 -45
- package/docs/reference/functions/gamma.md +0 -43
- package/docs/reference/functions/gcd.md +0 -44
- package/docs/reference/functions/getMatrixDataType.md +0 -53
- package/docs/reference/functions/hasNumericValue.md +0 -49
- package/docs/reference/functions/help.md +0 -36
- package/docs/reference/functions/hex.md +0 -38
- package/docs/reference/functions/hypot.md +0 -45
- package/docs/reference/functions/identity.md +0 -51
- package/docs/reference/functions/im.md +0 -47
- package/docs/reference/functions/import.md +0 -68
- package/docs/reference/functions/index.md +0 -55
- package/docs/reference/functions/intersect.md +0 -44
- package/docs/reference/functions/inv.md +0 -39
- package/docs/reference/functions/isInteger.md +0 -49
- package/docs/reference/functions/isNaN.md +0 -50
- package/docs/reference/functions/isNegative.md +0 -49
- package/docs/reference/functions/isNumeric.md +0 -49
- package/docs/reference/functions/isPositive.md +0 -51
- package/docs/reference/functions/isPrime.md +0 -48
- package/docs/reference/functions/isZero.md +0 -53
- package/docs/reference/functions/kldivergence.md +0 -35
- package/docs/reference/functions/kron.md +0 -47
- package/docs/reference/functions/larger.md +0 -54
- package/docs/reference/functions/largerEq.md +0 -50
- package/docs/reference/functions/lcm.md +0 -48
- package/docs/reference/functions/leftShift.md +0 -46
- package/docs/reference/functions/log.md +0 -51
- package/docs/reference/functions/log10.md +0 -44
- package/docs/reference/functions/log1p.md +0 -48
- package/docs/reference/functions/log2.md +0 -44
- package/docs/reference/functions/lsolve.md +0 -45
- package/docs/reference/functions/lsolveAll.md +0 -45
- package/docs/reference/functions/lup.md +0 -46
- package/docs/reference/functions/lusolve.md +0 -53
- package/docs/reference/functions/mad.md +0 -44
- package/docs/reference/functions/map.md +0 -42
- package/docs/reference/functions/matrix.md +0 -56
- package/docs/reference/functions/max.md +0 -55
- package/docs/reference/functions/mean.md +0 -51
- package/docs/reference/functions/median.md +0 -51
- package/docs/reference/functions/min.md +0 -55
- package/docs/reference/functions/mod.md +0 -53
- package/docs/reference/functions/mode.md +0 -44
- package/docs/reference/functions/multinomial.md +0 -40
- package/docs/reference/functions/multiply.md +0 -54
- package/docs/reference/functions/norm.md +0 -53
- package/docs/reference/functions/not.md +0 -44
- package/docs/reference/functions/nthRoot.md +0 -47
- package/docs/reference/functions/nthRoots.md +0 -52
- package/docs/reference/functions/number.md +0 -49
- package/docs/reference/functions/numeric.md +0 -46
- package/docs/reference/functions/oct.md +0 -38
- package/docs/reference/functions/ones.md +0 -53
- package/docs/reference/functions/or.md +0 -47
- package/docs/reference/functions/parse.md +0 -56
- package/docs/reference/functions/parser.md +0 -64
- package/docs/reference/functions/partitionSelect.md +0 -47
- package/docs/reference/functions/permutations.md +0 -45
- package/docs/reference/functions/pickRandom.md +0 -53
- package/docs/reference/functions/pow.md +0 -53
- package/docs/reference/functions/print.md +0 -58
- package/docs/reference/functions/prod.md +0 -49
- package/docs/reference/functions/qr.md +0 -59
- package/docs/reference/functions/quantileSeq.md +0 -56
- package/docs/reference/functions/random.md +0 -48
- package/docs/reference/functions/randomInt.md +0 -47
- package/docs/reference/functions/range.md +0 -64
- package/docs/reference/functions/rationalize.md +0 -62
- package/docs/reference/functions/re.md +0 -47
- package/docs/reference/functions/reshape.md +0 -50
- package/docs/reference/functions/resize.md +0 -45
- package/docs/reference/functions/rightArithShift.md +0 -46
- package/docs/reference/functions/rightLogShift.md +0 -46
- package/docs/reference/functions/rotate.md +0 -47
- package/docs/reference/functions/rotationMatrix.md +0 -51
- package/docs/reference/functions/round.md +0 -55
- package/docs/reference/functions/row.md +0 -39
- package/docs/reference/functions/sec.md +0 -41
- package/docs/reference/functions/sech.md +0 -43
- package/docs/reference/functions/setCartesian.md +0 -41
- package/docs/reference/functions/setDifference.md +0 -41
- package/docs/reference/functions/setDistinct.md +0 -37
- package/docs/reference/functions/setIntersect.md +0 -40
- package/docs/reference/functions/setIsSubset.md +0 -41
- package/docs/reference/functions/setMultiplicity.md +0 -40
- package/docs/reference/functions/setPowerset.md +0 -37
- package/docs/reference/functions/setSize.md +0 -41
- package/docs/reference/functions/setSymDifference.md +0 -41
- package/docs/reference/functions/setUnion.md +0 -40
- package/docs/reference/functions/sign.md +0 -46
- package/docs/reference/functions/simplify.md +0 -90
- package/docs/reference/functions/sin.md +0 -45
- package/docs/reference/functions/sinh.md +0 -40
- package/docs/reference/functions/size.md +0 -43
- package/docs/reference/functions/slu.md +0 -51
- package/docs/reference/functions/smaller.md +0 -54
- package/docs/reference/functions/smallerEq.md +0 -50
- package/docs/reference/functions/sort.md +0 -50
- package/docs/reference/functions/sparse.md +0 -51
- package/docs/reference/functions/splitUnit.md +0 -37
- package/docs/reference/functions/sqrt.md +0 -44
- package/docs/reference/functions/sqrtm.md +0 -40
- package/docs/reference/functions/square.md +0 -45
- package/docs/reference/functions/squeeze.md +0 -47
- package/docs/reference/functions/std.md +0 -70
- package/docs/reference/functions/stirlingS2.md +0 -42
- package/docs/reference/functions/string.md +0 -49
- package/docs/reference/functions/subset.md +0 -51
- package/docs/reference/functions/subtract.md +0 -48
- package/docs/reference/functions/sum.md +0 -47
- package/docs/reference/functions/tan.md +0 -43
- package/docs/reference/functions/tanh.md +0 -44
- package/docs/reference/functions/to.md +0 -41
- package/docs/reference/functions/trace.md +0 -44
- package/docs/reference/functions/transpose.md +0 -43
- package/docs/reference/functions/typeOf.md +0 -75
- package/docs/reference/functions/typed.md +0 -56
- package/docs/reference/functions/unaryMinus.md +0 -43
- package/docs/reference/functions/unaryPlus.md +0 -42
- package/docs/reference/functions/unequal.md +0 -68
- package/docs/reference/functions/unit.md +0 -48
- package/docs/reference/functions/usolve.md +0 -45
- package/docs/reference/functions/usolveAll.md +0 -45
- package/docs/reference/functions/variance.md +0 -72
- package/docs/reference/functions/xgcd.md +0 -41
- package/docs/reference/functions/xor.md +0 -47
- package/docs/reference/functions/zeros.md +0 -51
- package/docs/reference/functions.md +0 -285
- package/docs/reference/index.md +0 -5
- package/examples/advanced/convert_fraction_to_bignumber.js +0 -59
- package/examples/advanced/custom_argument_parsing.js +0 -98
- package/examples/advanced/custom_datatype.js +0 -53
- package/examples/advanced/custom_evaluate_using_factories.js +0 -19
- package/examples/advanced/custom_evaluate_using_import.js +0 -18
- package/examples/advanced/custom_loading.js +0 -33
- package/examples/advanced/custom_relational_functions.js +0 -62
- package/examples/advanced/expression_trees.js +0 -55
- package/examples/advanced/function_transform.js +0 -50
- package/examples/advanced/more_secure_eval.js +0 -36
- package/examples/advanced/use_bigint.js +0 -43
- package/examples/advanced/web_server/math_worker.js +0 -24
- package/examples/advanced/web_server/server.js +0 -80
- package/examples/algebra.js +0 -34
- package/examples/basic_usage.js +0 -49
- package/examples/bignumbers.js +0 -52
- package/examples/browser/angle_configuration.html +0 -134
- package/examples/browser/basic_usage.html +0 -39
- package/examples/browser/currency_conversion.html +0 -125
- package/examples/browser/custom_separators.html +0 -81
- package/examples/browser/plot.html +0 -78
- package/examples/browser/pretty_printing_with_mathjax.html +0 -122
- package/examples/browser/printing_html.html +0 -170
- package/examples/browser/requirejs_loading.html +0 -20
- package/examples/browser/rocket_trajectory_optimization.html +0 -152
- package/examples/browser/webworkers/webworkers.html +0 -80
- package/examples/browser/webworkers/worker.js +0 -28
- package/examples/chaining.js +0 -56
- package/examples/complex_numbers.js +0 -67
- package/examples/expressions.js +0 -188
- package/examples/fractions.js +0 -74
- package/examples/import.js +0 -95
- package/examples/matrices.js +0 -101
- package/examples/objects.js +0 -35
- package/examples/package.json +0 -3
- package/examples/serialization.js +0 -16
- package/examples/sparse_matrices.js +0 -19
- package/examples/units.js +0 -108
- package/lib/cjs/function/algebra/simplify/resolve.js +0 -70
- package/lib/cjs/function/algebra/simplify/simplifyConstant.js +0 -332
- package/lib/cjs/function/algebra/simplify/simplifyCore.js +0 -199
- package/lib/cjs/function/string/baseUtils.js +0 -45
- package/lib/cjs/utils/polyfills.js +0 -14
- package/lib/esm/function/algebra/simplify/resolve.js +0 -62
- package/lib/esm/function/algebra/simplify/simplifyConstant.js +0 -316
- package/lib/esm/function/algebra/simplify/simplifyCore.js +0 -191
- package/lib/esm/function/string/baseUtils.js +0 -38
- package/lib/esm/utils/polyfills.js +0 -12
@@ -1,12 +1,11 @@
|
|
1
|
-
|
2
|
-
|
1
|
+
import _extends from "@babel/runtime/helpers/extends";
|
3
2
|
import { factory } from '../utils/factory.js';
|
4
|
-
import { isAccessorNode, isConstantNode, isFunctionNode, isOperatorNode, isSymbolNode } from '../utils/is.js';
|
3
|
+
import { isAccessorNode, isConstantNode, isFunctionNode, isOperatorNode, isSymbolNode, rule2Node } from '../utils/is.js';
|
5
4
|
import { deepMap } from '../utils/collection.js';
|
6
5
|
import { hasOwnProperty } from '../utils/object.js';
|
7
6
|
var name = 'parse';
|
8
7
|
var dependencies = ['typed', 'numeric', 'config', 'AccessorNode', 'ArrayNode', 'AssignmentNode', 'BlockNode', 'ConditionalNode', 'ConstantNode', 'FunctionAssignmentNode', 'FunctionNode', 'IndexNode', 'ObjectNode', 'OperatorNode', 'ParenthesisNode', 'RangeNode', 'RelationalNode', 'SymbolNode'];
|
9
|
-
export var createParse = /* #__PURE__ */factory(name, dependencies,
|
8
|
+
export var createParse = /* #__PURE__ */factory(name, dependencies, _ref => {
|
10
9
|
var {
|
11
10
|
typed,
|
12
11
|
numeric,
|
@@ -27,7 +26,6 @@ export var createParse = /* #__PURE__ */factory(name, dependencies, (_ref) => {
|
|
27
26
|
RelationalNode,
|
28
27
|
SymbolNode
|
29
28
|
} = _ref;
|
30
|
-
|
31
29
|
/**
|
32
30
|
* Parse an expression. Returns a node tree, which can be evaluated by
|
33
31
|
* invoking node.evaluate().
|
@@ -80,26 +78,27 @@ export var createParse = /* #__PURE__ */factory(name, dependencies, (_ref) => {
|
|
80
78
|
},
|
81
79
|
'Array | Matrix, Object': parseMultiple
|
82
80
|
});
|
83
|
-
|
84
81
|
function parseMultiple(expressions) {
|
85
82
|
var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
86
|
-
var extraNodes = options.nodes !== undefined ? options.nodes : {};
|
83
|
+
var extraNodes = options.nodes !== undefined ? options.nodes : {};
|
87
84
|
|
85
|
+
// parse an array or matrix with expressions
|
88
86
|
return deepMap(expressions, function (elem) {
|
89
87
|
if (typeof elem !== 'string') throw new TypeError('String expected');
|
90
88
|
return parseStart(elem, extraNodes);
|
91
89
|
});
|
92
|
-
}
|
93
|
-
|
90
|
+
}
|
94
91
|
|
92
|
+
// token types enumeration
|
95
93
|
var TOKENTYPE = {
|
96
94
|
NULL: 0,
|
97
95
|
DELIMITER: 1,
|
98
96
|
NUMBER: 2,
|
99
97
|
SYMBOL: 3,
|
100
98
|
UNKNOWN: 4
|
101
|
-
};
|
99
|
+
};
|
102
100
|
|
101
|
+
// map with all delimiters
|
103
102
|
var DELIMITERS = {
|
104
103
|
',': true,
|
105
104
|
'(': true,
|
@@ -137,8 +136,9 @@ export var createParse = /* #__PURE__ */factory(name, dependencies, (_ref) => {
|
|
137
136
|
'<<': true,
|
138
137
|
'>>': true,
|
139
138
|
'>>>': true
|
140
|
-
};
|
139
|
+
};
|
141
140
|
|
141
|
+
// map with all named delimiters
|
142
142
|
var NAMED_DELIMITERS = {
|
143
143
|
mod: true,
|
144
144
|
to: true,
|
@@ -152,10 +152,21 @@ export var createParse = /* #__PURE__ */factory(name, dependencies, (_ref) => {
|
|
152
152
|
true: true,
|
153
153
|
false: false,
|
154
154
|
null: null,
|
155
|
-
undefined
|
155
|
+
undefined
|
156
156
|
};
|
157
157
|
var NUMERIC_CONSTANTS = ['NaN', 'Infinity'];
|
158
|
-
|
158
|
+
var ESCAPE_CHARACTERS = {
|
159
|
+
'"': '"',
|
160
|
+
"'": "'",
|
161
|
+
'\\': '\\',
|
162
|
+
'/': '/',
|
163
|
+
b: '\b',
|
164
|
+
f: '\f',
|
165
|
+
n: '\n',
|
166
|
+
r: '\r',
|
167
|
+
t: '\t'
|
168
|
+
// note that \u is handled separately in parseStringToken()
|
169
|
+
};
|
159
170
|
function initialState() {
|
160
171
|
return {
|
161
172
|
extraNodes: {},
|
@@ -173,9 +184,9 @@ export var createParse = /* #__PURE__ */factory(name, dependencies, (_ref) => {
|
|
173
184
|
nestingLevel: 0,
|
174
185
|
// level of nesting inside parameters, used to ignore newline characters
|
175
186
|
conditionalLevel: null // when a conditional is being parsed, the level of the conditional is stored here
|
176
|
-
|
177
187
|
};
|
178
188
|
}
|
189
|
+
|
179
190
|
/**
|
180
191
|
* View upto `length` characters of the expression starting at the current character.
|
181
192
|
*
|
@@ -184,11 +195,10 @@ export var createParse = /* #__PURE__ */factory(name, dependencies, (_ref) => {
|
|
184
195
|
* @returns {string}
|
185
196
|
* @private
|
186
197
|
*/
|
187
|
-
|
188
|
-
|
189
198
|
function currentString(state, length) {
|
190
199
|
return state.expression.substr(state.index, length);
|
191
200
|
}
|
201
|
+
|
192
202
|
/**
|
193
203
|
* View the current character. Returns '' if end of expression is reached.
|
194
204
|
*
|
@@ -196,86 +206,82 @@ export var createParse = /* #__PURE__ */factory(name, dependencies, (_ref) => {
|
|
196
206
|
* @returns {string}
|
197
207
|
* @private
|
198
208
|
*/
|
199
|
-
|
200
|
-
|
201
209
|
function currentCharacter(state) {
|
202
210
|
return currentString(state, 1);
|
203
211
|
}
|
212
|
+
|
204
213
|
/**
|
205
214
|
* Get the next character from the expression.
|
206
215
|
* The character is stored into the char c. If the end of the expression is
|
207
216
|
* reached, the function puts an empty string in c.
|
208
217
|
* @private
|
209
218
|
*/
|
210
|
-
|
211
|
-
|
212
219
|
function next(state) {
|
213
220
|
state.index++;
|
214
221
|
}
|
222
|
+
|
215
223
|
/**
|
216
224
|
* Preview the previous character from the expression.
|
217
225
|
* @return {string} cNext
|
218
226
|
* @private
|
219
227
|
*/
|
220
|
-
|
221
|
-
|
222
228
|
function prevCharacter(state) {
|
223
229
|
return state.expression.charAt(state.index - 1);
|
224
230
|
}
|
231
|
+
|
225
232
|
/**
|
226
233
|
* Preview the next character from the expression.
|
227
234
|
* @return {string} cNext
|
228
235
|
* @private
|
229
236
|
*/
|
230
|
-
|
231
|
-
|
232
237
|
function nextCharacter(state) {
|
233
238
|
return state.expression.charAt(state.index + 1);
|
234
239
|
}
|
240
|
+
|
235
241
|
/**
|
236
242
|
* Get next token in the current string expr.
|
237
243
|
* The token and token type are available as token and tokenType
|
238
244
|
* @private
|
239
245
|
*/
|
240
|
-
|
241
|
-
|
242
246
|
function getToken(state) {
|
243
247
|
state.tokenType = TOKENTYPE.NULL;
|
244
248
|
state.token = '';
|
245
|
-
state.comment = '';
|
246
|
-
// space, tab, and newline when inside parameters
|
247
|
-
|
248
|
-
while (parse.isWhitespace(currentCharacter(state), state.nestingLevel)) {
|
249
|
-
next(state);
|
250
|
-
} // skip comment
|
251
|
-
|
249
|
+
state.comment = '';
|
252
250
|
|
253
|
-
|
254
|
-
|
255
|
-
|
251
|
+
// skip over ignored characters:
|
252
|
+
while (true) {
|
253
|
+
// comments:
|
254
|
+
if (currentCharacter(state) === '#') {
|
255
|
+
while (currentCharacter(state) !== '\n' && currentCharacter(state) !== '') {
|
256
|
+
state.comment += currentCharacter(state);
|
257
|
+
next(state);
|
258
|
+
}
|
259
|
+
}
|
260
|
+
// whitespace: space, tab, and newline when inside parameters
|
261
|
+
if (parse.isWhitespace(currentCharacter(state), state.nestingLevel)) {
|
256
262
|
next(state);
|
263
|
+
} else {
|
264
|
+
break;
|
257
265
|
}
|
258
|
-
}
|
259
|
-
|
266
|
+
}
|
260
267
|
|
268
|
+
// check for end of expression
|
261
269
|
if (currentCharacter(state) === '') {
|
262
270
|
// token is still empty
|
263
271
|
state.tokenType = TOKENTYPE.DELIMITER;
|
264
272
|
return;
|
265
|
-
}
|
266
|
-
|
273
|
+
}
|
267
274
|
|
275
|
+
// check for new line character
|
268
276
|
if (currentCharacter(state) === '\n' && !state.nestingLevel) {
|
269
277
|
state.tokenType = TOKENTYPE.DELIMITER;
|
270
278
|
state.token = currentCharacter(state);
|
271
279
|
next(state);
|
272
280
|
return;
|
273
281
|
}
|
274
|
-
|
275
282
|
var c1 = currentCharacter(state);
|
276
283
|
var c2 = currentString(state, 2);
|
277
284
|
var c3 = currentString(state, 3);
|
278
|
-
|
279
285
|
if (c3.length === 3 && DELIMITERS[c3]) {
|
280
286
|
state.tokenType = TOKENTYPE.DELIMITER;
|
281
287
|
state.token = c3;
|
@@ -283,92 +289,102 @@ export var createParse = /* #__PURE__ */factory(name, dependencies, (_ref) => {
|
|
283
289
|
next(state);
|
284
290
|
next(state);
|
285
291
|
return;
|
286
|
-
}
|
287
|
-
|
292
|
+
}
|
288
293
|
|
294
|
+
// check for delimiters consisting of 2 characters
|
289
295
|
if (c2.length === 2 && DELIMITERS[c2]) {
|
290
296
|
state.tokenType = TOKENTYPE.DELIMITER;
|
291
297
|
state.token = c2;
|
292
298
|
next(state);
|
293
299
|
next(state);
|
294
300
|
return;
|
295
|
-
}
|
296
|
-
|
301
|
+
}
|
297
302
|
|
303
|
+
// check for delimiters consisting of 1 character
|
298
304
|
if (DELIMITERS[c1]) {
|
299
305
|
state.tokenType = TOKENTYPE.DELIMITER;
|
300
306
|
state.token = c1;
|
301
307
|
next(state);
|
302
308
|
return;
|
303
|
-
}
|
304
|
-
|
309
|
+
}
|
305
310
|
|
311
|
+
// check for a number
|
306
312
|
if (parse.isDigitDot(c1)) {
|
307
|
-
state.tokenType = TOKENTYPE.NUMBER;
|
313
|
+
state.tokenType = TOKENTYPE.NUMBER;
|
308
314
|
|
315
|
+
// check for binary, octal, or hex
|
309
316
|
var _c = currentString(state, 2);
|
310
|
-
|
311
317
|
if (_c === '0b' || _c === '0o' || _c === '0x') {
|
312
318
|
state.token += currentCharacter(state);
|
313
319
|
next(state);
|
314
320
|
state.token += currentCharacter(state);
|
315
321
|
next(state);
|
316
|
-
|
317
322
|
while (parse.isHexDigit(currentCharacter(state))) {
|
318
323
|
state.token += currentCharacter(state);
|
319
324
|
next(state);
|
320
325
|
}
|
321
|
-
|
326
|
+
if (currentCharacter(state) === '.') {
|
327
|
+
// this number has a radix point
|
328
|
+
state.token += '.';
|
329
|
+
next(state);
|
330
|
+
// get the digits after the radix
|
331
|
+
while (parse.isHexDigit(currentCharacter(state))) {
|
332
|
+
state.token += currentCharacter(state);
|
333
|
+
next(state);
|
334
|
+
}
|
335
|
+
} else if (currentCharacter(state) === 'i') {
|
336
|
+
// this number has a word size suffix
|
337
|
+
state.token += 'i';
|
338
|
+
next(state);
|
339
|
+
// get the word size
|
340
|
+
while (parse.isDigit(currentCharacter(state))) {
|
341
|
+
state.token += currentCharacter(state);
|
342
|
+
next(state);
|
343
|
+
}
|
344
|
+
}
|
322
345
|
return;
|
323
|
-
}
|
324
|
-
|
346
|
+
}
|
325
347
|
|
348
|
+
// get number, can have a single dot
|
326
349
|
if (currentCharacter(state) === '.') {
|
327
350
|
state.token += currentCharacter(state);
|
328
351
|
next(state);
|
329
|
-
|
330
352
|
if (!parse.isDigit(currentCharacter(state))) {
|
331
353
|
// this is no number, it is just a dot (can be dot notation)
|
332
354
|
state.tokenType = TOKENTYPE.DELIMITER;
|
355
|
+
return;
|
333
356
|
}
|
334
357
|
} else {
|
335
358
|
while (parse.isDigit(currentCharacter(state))) {
|
336
359
|
state.token += currentCharacter(state);
|
337
360
|
next(state);
|
338
361
|
}
|
339
|
-
|
340
362
|
if (parse.isDecimalMark(currentCharacter(state), nextCharacter(state))) {
|
341
363
|
state.token += currentCharacter(state);
|
342
364
|
next(state);
|
343
365
|
}
|
344
366
|
}
|
345
|
-
|
346
367
|
while (parse.isDigit(currentCharacter(state))) {
|
347
368
|
state.token += currentCharacter(state);
|
348
369
|
next(state);
|
349
|
-
}
|
350
|
-
|
351
|
-
|
370
|
+
}
|
371
|
+
// check for exponential notation like "2.3e-4", "1.23e50" or "2e+4"
|
352
372
|
if (currentCharacter(state) === 'E' || currentCharacter(state) === 'e') {
|
353
373
|
if (parse.isDigit(nextCharacter(state)) || nextCharacter(state) === '-' || nextCharacter(state) === '+') {
|
354
374
|
state.token += currentCharacter(state);
|
355
375
|
next(state);
|
356
|
-
|
357
376
|
if (currentCharacter(state) === '+' || currentCharacter(state) === '-') {
|
358
377
|
state.token += currentCharacter(state);
|
359
378
|
next(state);
|
360
|
-
}
|
361
|
-
|
362
|
-
|
379
|
+
}
|
380
|
+
// Scientific notation MUST be followed by an exponent
|
363
381
|
if (!parse.isDigit(currentCharacter(state))) {
|
364
382
|
throw createSyntaxError(state, 'Digit expected, got "' + currentCharacter(state) + '"');
|
365
383
|
}
|
366
|
-
|
367
384
|
while (parse.isDigit(currentCharacter(state))) {
|
368
385
|
state.token += currentCharacter(state);
|
369
386
|
next(state);
|
370
387
|
}
|
371
|
-
|
372
388
|
if (parse.isDecimalMark(currentCharacter(state), nextCharacter(state))) {
|
373
389
|
throw createSyntaxError(state, 'Digit expected, got "' + currentCharacter(state) + '"');
|
374
390
|
}
|
@@ -377,65 +393,57 @@ export var createParse = /* #__PURE__ */factory(name, dependencies, (_ref) => {
|
|
377
393
|
throw createSyntaxError(state, 'Digit expected, got "' + currentCharacter(state) + '"');
|
378
394
|
}
|
379
395
|
}
|
380
|
-
|
381
396
|
return;
|
382
|
-
}
|
383
|
-
|
397
|
+
}
|
384
398
|
|
399
|
+
// check for variables, functions, named operators
|
385
400
|
if (parse.isAlpha(currentCharacter(state), prevCharacter(state), nextCharacter(state))) {
|
386
401
|
while (parse.isAlpha(currentCharacter(state), prevCharacter(state), nextCharacter(state)) || parse.isDigit(currentCharacter(state))) {
|
387
402
|
state.token += currentCharacter(state);
|
388
403
|
next(state);
|
389
404
|
}
|
390
|
-
|
391
405
|
if (hasOwnProperty(NAMED_DELIMITERS, state.token)) {
|
392
406
|
state.tokenType = TOKENTYPE.DELIMITER;
|
393
407
|
} else {
|
394
408
|
state.tokenType = TOKENTYPE.SYMBOL;
|
395
409
|
}
|
396
|
-
|
397
410
|
return;
|
398
|
-
}
|
399
|
-
|
411
|
+
}
|
400
412
|
|
413
|
+
// something unknown is found, wrong characters -> a syntax error
|
401
414
|
state.tokenType = TOKENTYPE.UNKNOWN;
|
402
|
-
|
403
415
|
while (currentCharacter(state) !== '') {
|
404
416
|
state.token += currentCharacter(state);
|
405
417
|
next(state);
|
406
418
|
}
|
407
|
-
|
408
419
|
throw createSyntaxError(state, 'Syntax error in part "' + state.token + '"');
|
409
420
|
}
|
421
|
+
|
410
422
|
/**
|
411
423
|
* Get next token and skip newline tokens
|
412
424
|
*/
|
413
|
-
|
414
|
-
|
415
425
|
function getTokenSkipNewline(state) {
|
416
426
|
do {
|
417
427
|
getToken(state);
|
418
428
|
} while (state.token === '\n'); // eslint-disable-line no-unmodified-loop-condition
|
419
|
-
|
420
429
|
}
|
430
|
+
|
421
431
|
/**
|
422
432
|
* Open parameters.
|
423
433
|
* New line characters will be ignored until closeParams(state) is called
|
424
434
|
*/
|
425
|
-
|
426
|
-
|
427
435
|
function openParams(state) {
|
428
436
|
state.nestingLevel++;
|
429
437
|
}
|
438
|
+
|
430
439
|
/**
|
431
440
|
* Close parameters.
|
432
441
|
* New line characters will no longer be ignored
|
433
442
|
*/
|
434
|
-
|
435
|
-
|
436
443
|
function closeParams(state) {
|
437
444
|
state.nestingLevel--;
|
438
445
|
}
|
446
|
+
|
439
447
|
/**
|
440
448
|
* Checks whether the current character `c` is a valid alpha character:
|
441
449
|
*
|
@@ -454,21 +462,19 @@ export var createParse = /* #__PURE__ */factory(name, dependencies, (_ref) => {
|
|
454
462
|
* @param {string} cNext Next character
|
455
463
|
* @return {boolean}
|
456
464
|
*/
|
457
|
-
|
458
|
-
|
459
465
|
parse.isAlpha = function isAlpha(c, cPrev, cNext) {
|
460
466
|
return parse.isValidLatinOrGreek(c) || parse.isValidMathSymbol(c, cNext) || parse.isValidMathSymbol(cPrev, c);
|
461
467
|
};
|
468
|
+
|
462
469
|
/**
|
463
470
|
* Test whether a character is a valid latin, greek, or letter-like character
|
464
471
|
* @param {string} c
|
465
472
|
* @return {boolean}
|
466
473
|
*/
|
467
|
-
|
468
|
-
|
469
474
|
parse.isValidLatinOrGreek = function isValidLatinOrGreek(c) {
|
470
475
|
return /^[a-zA-Z_$\u00C0-\u02AF\u0370-\u03FF\u2100-\u214F]$/.test(c);
|
471
476
|
};
|
477
|
+
|
472
478
|
/**
|
473
479
|
* Test whether two given 16 bit characters form a surrogate pair of a
|
474
480
|
* unicode math symbol.
|
@@ -484,23 +490,21 @@ export var createParse = /* #__PURE__ */factory(name, dependencies, (_ref) => {
|
|
484
490
|
* @param {string} low
|
485
491
|
* @return {boolean}
|
486
492
|
*/
|
487
|
-
|
488
|
-
|
489
493
|
parse.isValidMathSymbol = function isValidMathSymbol(high, low) {
|
490
494
|
return /^[\uD835]$/.test(high) && /^[\uDC00-\uDFFF]$/.test(low) && /^[^\uDC55\uDC9D\uDCA0\uDCA1\uDCA3\uDCA4\uDCA7\uDCA8\uDCAD\uDCBA\uDCBC\uDCC4\uDD06\uDD0B\uDD0C\uDD15\uDD1D\uDD3A\uDD3F\uDD45\uDD47-\uDD49\uDD51\uDEA6\uDEA7\uDFCC\uDFCD]$/.test(low);
|
491
495
|
};
|
496
|
+
|
492
497
|
/**
|
493
498
|
* Check whether given character c is a white space character: space, tab, or enter
|
494
499
|
* @param {string} c
|
495
500
|
* @param {number} nestingLevel
|
496
501
|
* @return {boolean}
|
497
502
|
*/
|
498
|
-
|
499
|
-
|
500
503
|
parse.isWhitespace = function isWhitespace(c, nestingLevel) {
|
501
504
|
// TODO: also take '\r' carriage return as newline? Or does that give problems on mac?
|
502
505
|
return c === ' ' || c === '\t' || c === '\n' && nestingLevel > 0;
|
503
506
|
};
|
507
|
+
|
504
508
|
/**
|
505
509
|
* Test whether the character c is a decimal mark (dot).
|
506
510
|
* This is the case when it's not the start of a delimiter '.*', './', or '.^'
|
@@ -508,72 +512,66 @@ export var createParse = /* #__PURE__ */factory(name, dependencies, (_ref) => {
|
|
508
512
|
* @param {string} cNext
|
509
513
|
* @return {boolean}
|
510
514
|
*/
|
511
|
-
|
512
|
-
|
513
515
|
parse.isDecimalMark = function isDecimalMark(c, cNext) {
|
514
516
|
return c === '.' && cNext !== '/' && cNext !== '*' && cNext !== '^';
|
515
517
|
};
|
518
|
+
|
516
519
|
/**
|
517
520
|
* checks if the given char c is a digit or dot
|
518
521
|
* @param {string} c a string with one character
|
519
522
|
* @return {boolean}
|
520
523
|
*/
|
521
|
-
|
522
|
-
|
523
524
|
parse.isDigitDot = function isDigitDot(c) {
|
524
525
|
return c >= '0' && c <= '9' || c === '.';
|
525
526
|
};
|
527
|
+
|
526
528
|
/**
|
527
529
|
* checks if the given char c is a digit
|
528
530
|
* @param {string} c a string with one character
|
529
531
|
* @return {boolean}
|
530
532
|
*/
|
531
|
-
|
532
|
-
|
533
533
|
parse.isDigit = function isDigit(c) {
|
534
534
|
return c >= '0' && c <= '9';
|
535
535
|
};
|
536
|
+
|
536
537
|
/**
|
537
538
|
* checks if the given char c is a hex digit
|
538
539
|
* @param {string} c a string with one character
|
539
540
|
* @return {boolean}
|
540
541
|
*/
|
541
|
-
|
542
|
-
|
543
542
|
parse.isHexDigit = function isHexDigit(c) {
|
544
543
|
return c >= '0' && c <= '9' || c >= 'a' && c <= 'f' || c >= 'A' && c <= 'F';
|
545
544
|
};
|
545
|
+
|
546
546
|
/**
|
547
547
|
* Start of the parse levels below, in order of precedence
|
548
548
|
* @return {Node} node
|
549
549
|
* @private
|
550
550
|
*/
|
551
|
-
|
552
|
-
|
553
551
|
function parseStart(expression, extraNodes) {
|
554
552
|
var state = initialState();
|
555
|
-
|
556
553
|
_extends(state, {
|
557
554
|
expression,
|
558
555
|
extraNodes
|
559
556
|
});
|
560
|
-
|
561
557
|
getToken(state);
|
562
|
-
var node = parseBlock(state);
|
563
|
-
// an expression ends with a empty character '' and tokenType DELIMITER
|
558
|
+
var node = parseBlock(state);
|
564
559
|
|
560
|
+
// check for garbage at the end of the expression
|
561
|
+
// an expression ends with a empty character '' and tokenType DELIMITER
|
565
562
|
if (state.token !== '') {
|
566
563
|
if (state.tokenType === TOKENTYPE.DELIMITER) {
|
567
564
|
// user entered a not existing operator like "//"
|
565
|
+
|
568
566
|
// TODO: give hints for aliases, for example with "<>" give as hint " did you mean !== ?"
|
569
567
|
throw createError(state, 'Unexpected operator ' + state.token);
|
570
568
|
} else {
|
571
569
|
throw createSyntaxError(state, 'Unexpected part "' + state.token + '"');
|
572
570
|
}
|
573
571
|
}
|
574
|
-
|
575
572
|
return node;
|
576
573
|
}
|
574
|
+
|
577
575
|
/**
|
578
576
|
* Parse a block with expressions. Expressions can be separated by a newline
|
579
577
|
* character '\n', or by a semicolon ';'. In case of a semicolon, no output
|
@@ -581,53 +579,53 @@ export var createParse = /* #__PURE__ */factory(name, dependencies, (_ref) => {
|
|
581
579
|
* @return {Node} node
|
582
580
|
* @private
|
583
581
|
*/
|
584
|
-
|
585
|
-
|
586
582
|
function parseBlock(state) {
|
587
583
|
var node;
|
588
584
|
var blocks = [];
|
589
585
|
var visible;
|
590
|
-
|
591
586
|
if (state.token !== '' && state.token !== '\n' && state.token !== ';') {
|
592
587
|
node = parseAssignment(state);
|
593
|
-
|
594
|
-
|
595
|
-
|
588
|
+
if (state.comment) {
|
589
|
+
node.comment = state.comment;
|
590
|
+
}
|
591
|
+
}
|
596
592
|
|
593
|
+
// TODO: simplify this loop
|
597
594
|
while (state.token === '\n' || state.token === ';') {
|
598
595
|
// eslint-disable-line no-unmodified-loop-condition
|
599
596
|
if (blocks.length === 0 && node) {
|
600
597
|
visible = state.token !== ';';
|
601
598
|
blocks.push({
|
602
|
-
node
|
603
|
-
visible
|
599
|
+
node,
|
600
|
+
visible
|
604
601
|
});
|
605
602
|
}
|
606
|
-
|
607
603
|
getToken(state);
|
608
|
-
|
609
604
|
if (state.token !== '\n' && state.token !== ';' && state.token !== '') {
|
610
605
|
node = parseAssignment(state);
|
611
|
-
|
606
|
+
if (state.comment) {
|
607
|
+
node.comment = state.comment;
|
608
|
+
}
|
612
609
|
visible = state.token !== ';';
|
613
610
|
blocks.push({
|
614
|
-
node
|
615
|
-
visible
|
611
|
+
node,
|
612
|
+
visible
|
616
613
|
});
|
617
614
|
}
|
618
615
|
}
|
619
|
-
|
620
616
|
if (blocks.length > 0) {
|
621
617
|
return new BlockNode(blocks);
|
622
618
|
} else {
|
623
619
|
if (!node) {
|
624
620
|
node = new ConstantNode(undefined);
|
625
|
-
|
621
|
+
if (state.comment) {
|
622
|
+
node.comment = state.comment;
|
623
|
+
}
|
626
624
|
}
|
627
|
-
|
628
625
|
return node;
|
629
626
|
}
|
630
627
|
}
|
628
|
+
|
631
629
|
/**
|
632
630
|
* Assignment of a function or variable,
|
633
631
|
* - can be a variable like 'a=2.3'
|
@@ -636,12 +634,9 @@ export var createParse = /* #__PURE__ */factory(name, dependencies, (_ref) => {
|
|
636
634
|
* @return {Node} node
|
637
635
|
* @private
|
638
636
|
*/
|
639
|
-
|
640
|
-
|
641
637
|
function parseAssignment(state) {
|
642
638
|
var name, args, value, valid;
|
643
639
|
var node = parseConditional(state);
|
644
|
-
|
645
640
|
if (state.token === '=') {
|
646
641
|
if (isSymbolNode(node)) {
|
647
642
|
// parse a variable assignment like 'a = 2/3'
|
@@ -666,19 +661,17 @@ export var createParse = /* #__PURE__ */factory(name, dependencies, (_ref) => {
|
|
666
661
|
valid = false;
|
667
662
|
}
|
668
663
|
});
|
669
|
-
|
670
664
|
if (valid) {
|
671
665
|
getTokenSkipNewline(state);
|
672
666
|
value = parseAssignment(state);
|
673
667
|
return new FunctionAssignmentNode(name, args, value);
|
674
668
|
}
|
675
669
|
}
|
676
|
-
|
677
670
|
throw createSyntaxError(state, 'Invalid left hand side of assignment operator =');
|
678
671
|
}
|
679
|
-
|
680
672
|
return node;
|
681
673
|
}
|
674
|
+
|
682
675
|
/**
|
683
676
|
* conditional operation
|
684
677
|
*
|
@@ -689,11 +682,8 @@ export var createParse = /* #__PURE__ */factory(name, dependencies, (_ref) => {
|
|
689
682
|
* @return {Node} node
|
690
683
|
* @private
|
691
684
|
*/
|
692
|
-
|
693
|
-
|
694
685
|
function parseConditional(state) {
|
695
686
|
var node = parseLogicalOr(state);
|
696
|
-
|
697
687
|
while (state.token === '?') {
|
698
688
|
// eslint-disable-line no-unmodified-loop-condition
|
699
689
|
// set a conditional level, the range operator will be ignored as long
|
@@ -708,127 +698,108 @@ export var createParse = /* #__PURE__ */factory(name, dependencies, (_ref) => {
|
|
708
698
|
getTokenSkipNewline(state);
|
709
699
|
var falseExpr = parseAssignment(state); // Note: check for conditional operator again, right associativity
|
710
700
|
|
711
|
-
node = new ConditionalNode(condition, trueExpr, falseExpr);
|
701
|
+
node = new ConditionalNode(condition, trueExpr, falseExpr);
|
712
702
|
|
703
|
+
// restore the previous conditional level
|
713
704
|
state.conditionalLevel = prev;
|
714
705
|
}
|
715
|
-
|
716
706
|
return node;
|
717
707
|
}
|
708
|
+
|
718
709
|
/**
|
719
710
|
* logical or, 'x or y'
|
720
711
|
* @return {Node} node
|
721
712
|
* @private
|
722
713
|
*/
|
723
|
-
|
724
|
-
|
725
714
|
function parseLogicalOr(state) {
|
726
715
|
var node = parseLogicalXor(state);
|
727
|
-
|
728
716
|
while (state.token === 'or') {
|
729
717
|
// eslint-disable-line no-unmodified-loop-condition
|
730
718
|
getTokenSkipNewline(state);
|
731
719
|
node = new OperatorNode('or', 'or', [node, parseLogicalXor(state)]);
|
732
720
|
}
|
733
|
-
|
734
721
|
return node;
|
735
722
|
}
|
723
|
+
|
736
724
|
/**
|
737
725
|
* logical exclusive or, 'x xor y'
|
738
726
|
* @return {Node} node
|
739
727
|
* @private
|
740
728
|
*/
|
741
|
-
|
742
|
-
|
743
729
|
function parseLogicalXor(state) {
|
744
730
|
var node = parseLogicalAnd(state);
|
745
|
-
|
746
731
|
while (state.token === 'xor') {
|
747
732
|
// eslint-disable-line no-unmodified-loop-condition
|
748
733
|
getTokenSkipNewline(state);
|
749
734
|
node = new OperatorNode('xor', 'xor', [node, parseLogicalAnd(state)]);
|
750
735
|
}
|
751
|
-
|
752
736
|
return node;
|
753
737
|
}
|
738
|
+
|
754
739
|
/**
|
755
740
|
* logical and, 'x and y'
|
756
741
|
* @return {Node} node
|
757
742
|
* @private
|
758
743
|
*/
|
759
|
-
|
760
|
-
|
761
744
|
function parseLogicalAnd(state) {
|
762
745
|
var node = parseBitwiseOr(state);
|
763
|
-
|
764
746
|
while (state.token === 'and') {
|
765
747
|
// eslint-disable-line no-unmodified-loop-condition
|
766
748
|
getTokenSkipNewline(state);
|
767
749
|
node = new OperatorNode('and', 'and', [node, parseBitwiseOr(state)]);
|
768
750
|
}
|
769
|
-
|
770
751
|
return node;
|
771
752
|
}
|
753
|
+
|
772
754
|
/**
|
773
755
|
* bitwise or, 'x | y'
|
774
756
|
* @return {Node} node
|
775
757
|
* @private
|
776
758
|
*/
|
777
|
-
|
778
|
-
|
779
759
|
function parseBitwiseOr(state) {
|
780
760
|
var node = parseBitwiseXor(state);
|
781
|
-
|
782
761
|
while (state.token === '|') {
|
783
762
|
// eslint-disable-line no-unmodified-loop-condition
|
784
763
|
getTokenSkipNewline(state);
|
785
764
|
node = new OperatorNode('|', 'bitOr', [node, parseBitwiseXor(state)]);
|
786
765
|
}
|
787
|
-
|
788
766
|
return node;
|
789
767
|
}
|
768
|
+
|
790
769
|
/**
|
791
770
|
* bitwise exclusive or (xor), 'x ^| y'
|
792
771
|
* @return {Node} node
|
793
772
|
* @private
|
794
773
|
*/
|
795
|
-
|
796
|
-
|
797
774
|
function parseBitwiseXor(state) {
|
798
775
|
var node = parseBitwiseAnd(state);
|
799
|
-
|
800
776
|
while (state.token === '^|') {
|
801
777
|
// eslint-disable-line no-unmodified-loop-condition
|
802
778
|
getTokenSkipNewline(state);
|
803
779
|
node = new OperatorNode('^|', 'bitXor', [node, parseBitwiseAnd(state)]);
|
804
780
|
}
|
805
|
-
|
806
781
|
return node;
|
807
782
|
}
|
783
|
+
|
808
784
|
/**
|
809
785
|
* bitwise and, 'x & y'
|
810
786
|
* @return {Node} node
|
811
787
|
* @private
|
812
788
|
*/
|
813
|
-
|
814
|
-
|
815
789
|
function parseBitwiseAnd(state) {
|
816
790
|
var node = parseRelational(state);
|
817
|
-
|
818
791
|
while (state.token === '&') {
|
819
792
|
// eslint-disable-line no-unmodified-loop-condition
|
820
793
|
getTokenSkipNewline(state);
|
821
794
|
node = new OperatorNode('&', 'bitAnd', [node, parseRelational(state)]);
|
822
795
|
}
|
823
|
-
|
824
796
|
return node;
|
825
797
|
}
|
798
|
+
|
826
799
|
/**
|
827
800
|
* Parse a chained conditional, like 'a > b >= c'
|
828
801
|
* @return {Node} node
|
829
802
|
*/
|
830
|
-
|
831
|
-
|
832
803
|
function parseRelational(state) {
|
833
804
|
var params = [parseShift(state)];
|
834
805
|
var conditionals = [];
|
@@ -840,7 +811,6 @@ export var createParse = /* #__PURE__ */factory(name, dependencies, (_ref) => {
|
|
840
811
|
'<=': 'smallerEq',
|
841
812
|
'>=': 'largerEq'
|
842
813
|
};
|
843
|
-
|
844
814
|
while (hasOwnProperty(operators, state.token)) {
|
845
815
|
// eslint-disable-line no-unmodified-loop-condition
|
846
816
|
var cond = {
|
@@ -851,7 +821,6 @@ export var createParse = /* #__PURE__ */factory(name, dependencies, (_ref) => {
|
|
851
821
|
getTokenSkipNewline(state);
|
852
822
|
params.push(parseShift(state));
|
853
823
|
}
|
854
|
-
|
855
824
|
if (params.length === 1) {
|
856
825
|
return params[0];
|
857
826
|
} else if (params.length === 2) {
|
@@ -860,13 +829,12 @@ export var createParse = /* #__PURE__ */factory(name, dependencies, (_ref) => {
|
|
860
829
|
return new RelationalNode(conditionals.map(c => c.fn), params);
|
861
830
|
}
|
862
831
|
}
|
832
|
+
|
863
833
|
/**
|
864
834
|
* Bitwise left shift, bitwise right arithmetic shift, bitwise right logical shift
|
865
835
|
* @return {Node} node
|
866
836
|
* @private
|
867
837
|
*/
|
868
|
-
|
869
|
-
|
870
838
|
function parseShift(state) {
|
871
839
|
var node, name, fn, params;
|
872
840
|
node = parseConversion(state);
|
@@ -875,7 +843,6 @@ export var createParse = /* #__PURE__ */factory(name, dependencies, (_ref) => {
|
|
875
843
|
'>>': 'rightArithShift',
|
876
844
|
'>>>': 'rightLogShift'
|
877
845
|
};
|
878
|
-
|
879
846
|
while (hasOwnProperty(operators, state.token)) {
|
880
847
|
name = state.token;
|
881
848
|
fn = operators[name];
|
@@ -883,30 +850,25 @@ export var createParse = /* #__PURE__ */factory(name, dependencies, (_ref) => {
|
|
883
850
|
params = [node, parseConversion(state)];
|
884
851
|
node = new OperatorNode(name, fn, params);
|
885
852
|
}
|
886
|
-
|
887
853
|
return node;
|
888
854
|
}
|
855
|
+
|
889
856
|
/**
|
890
857
|
* conversion operators 'to' and 'in'
|
891
858
|
* @return {Node} node
|
892
859
|
* @private
|
893
860
|
*/
|
894
|
-
|
895
|
-
|
896
861
|
function parseConversion(state) {
|
897
862
|
var node, name, fn, params;
|
898
863
|
node = parseRange(state);
|
899
864
|
var operators = {
|
900
865
|
to: 'to',
|
901
866
|
in: 'to' // alias of 'to'
|
902
|
-
|
903
867
|
};
|
904
|
-
|
905
868
|
while (hasOwnProperty(operators, state.token)) {
|
906
869
|
name = state.token;
|
907
870
|
fn = operators[name];
|
908
871
|
getTokenSkipNewline(state);
|
909
|
-
|
910
872
|
if (name === 'in' && state.token === '') {
|
911
873
|
// end of expression -> this is the unit 'in' ('inch')
|
912
874
|
node = new OperatorNode('*', 'multiply', [node, new SymbolNode('in')], true);
|
@@ -916,20 +878,17 @@ export var createParse = /* #__PURE__ */factory(name, dependencies, (_ref) => {
|
|
916
878
|
node = new OperatorNode(name, fn, params);
|
917
879
|
}
|
918
880
|
}
|
919
|
-
|
920
881
|
return node;
|
921
882
|
}
|
883
|
+
|
922
884
|
/**
|
923
885
|
* parse range, "start:end", "start:step:end", ":", "start:", ":end", etc
|
924
886
|
* @return {Node} node
|
925
887
|
* @private
|
926
888
|
*/
|
927
|
-
|
928
|
-
|
929
889
|
function parseRange(state) {
|
930
890
|
var node;
|
931
891
|
var params = [];
|
932
|
-
|
933
892
|
if (state.token === ':') {
|
934
893
|
// implicit start=1 (one-based)
|
935
894
|
node = new ConstantNode(1);
|
@@ -937,15 +896,14 @@ export var createParse = /* #__PURE__ */factory(name, dependencies, (_ref) => {
|
|
937
896
|
// explicit start
|
938
897
|
node = parseAddSubtract(state);
|
939
898
|
}
|
940
|
-
|
941
899
|
if (state.token === ':' && state.conditionalLevel !== state.nestingLevel) {
|
942
900
|
// we ignore the range operator when a conditional operator is being processed on the same level
|
943
|
-
params.push(node);
|
901
|
+
params.push(node);
|
944
902
|
|
903
|
+
// parse step and end
|
945
904
|
while (state.token === ':' && params.length < 3) {
|
946
905
|
// eslint-disable-line no-unmodified-loop-condition
|
947
906
|
getTokenSkipNewline(state);
|
948
|
-
|
949
907
|
if (state.token === ')' || state.token === ']' || state.token === ',' || state.token === '') {
|
950
908
|
// implicit end
|
951
909
|
params.push(new SymbolNode('end'));
|
@@ -954,7 +912,6 @@ export var createParse = /* #__PURE__ */factory(name, dependencies, (_ref) => {
|
|
954
912
|
params.push(parseAddSubtract(state));
|
955
913
|
}
|
956
914
|
}
|
957
|
-
|
958
915
|
if (params.length === 3) {
|
959
916
|
// params = [start, step, end]
|
960
917
|
node = new RangeNode(params[0], params[2], params[1]); // start, end, step
|
@@ -964,16 +921,14 @@ export var createParse = /* #__PURE__ */factory(name, dependencies, (_ref) => {
|
|
964
921
|
node = new RangeNode(params[0], params[1]); // start, end
|
965
922
|
}
|
966
923
|
}
|
967
|
-
|
968
924
|
return node;
|
969
925
|
}
|
926
|
+
|
970
927
|
/**
|
971
928
|
* add or subtract
|
972
929
|
* @return {Node} node
|
973
930
|
* @private
|
974
931
|
*/
|
975
|
-
|
976
|
-
|
977
932
|
function parseAddSubtract(state) {
|
978
933
|
var node, name, fn, params;
|
979
934
|
node = parseMultiplyDivide(state);
|
@@ -981,24 +936,26 @@ export var createParse = /* #__PURE__ */factory(name, dependencies, (_ref) => {
|
|
981
936
|
'+': 'add',
|
982
937
|
'-': 'subtract'
|
983
938
|
};
|
984
|
-
|
985
939
|
while (hasOwnProperty(operators, state.token)) {
|
986
940
|
name = state.token;
|
987
941
|
fn = operators[name];
|
988
942
|
getTokenSkipNewline(state);
|
989
|
-
|
943
|
+
var rightNode = parseMultiplyDivide(state);
|
944
|
+
if (rightNode.isPercentage) {
|
945
|
+
params = [node, new OperatorNode('*', 'multiply', [node, rightNode])];
|
946
|
+
} else {
|
947
|
+
params = [node, rightNode];
|
948
|
+
}
|
990
949
|
node = new OperatorNode(name, fn, params);
|
991
950
|
}
|
992
|
-
|
993
951
|
return node;
|
994
952
|
}
|
953
|
+
|
995
954
|
/**
|
996
955
|
* multiply, divide, modulus
|
997
956
|
* @return {Node} node
|
998
957
|
* @private
|
999
958
|
*/
|
1000
|
-
|
1001
|
-
|
1002
959
|
function parseMultiplyDivide(state) {
|
1003
960
|
var node, last, name, fn;
|
1004
961
|
node = parseImplicitMultiplication(state);
|
@@ -1007,11 +964,8 @@ export var createParse = /* #__PURE__ */factory(name, dependencies, (_ref) => {
|
|
1007
964
|
'*': 'multiply',
|
1008
965
|
'.*': 'dotMultiply',
|
1009
966
|
'/': 'divide',
|
1010
|
-
'./': 'dotDivide'
|
1011
|
-
'%': 'mod',
|
1012
|
-
mod: 'mod'
|
967
|
+
'./': 'dotDivide'
|
1013
968
|
};
|
1014
|
-
|
1015
969
|
while (true) {
|
1016
970
|
if (hasOwnProperty(operators, state.token)) {
|
1017
971
|
// explicit operators
|
@@ -1024,21 +978,18 @@ export var createParse = /* #__PURE__ */factory(name, dependencies, (_ref) => {
|
|
1024
978
|
break;
|
1025
979
|
}
|
1026
980
|
}
|
1027
|
-
|
1028
981
|
return node;
|
1029
982
|
}
|
983
|
+
|
1030
984
|
/**
|
1031
985
|
* implicit multiplication
|
1032
986
|
* @return {Node} node
|
1033
987
|
* @private
|
1034
988
|
*/
|
1035
|
-
|
1036
|
-
|
1037
989
|
function parseImplicitMultiplication(state) {
|
1038
990
|
var node, last;
|
1039
991
|
node = parseRule2(state);
|
1040
992
|
last = node;
|
1041
|
-
|
1042
993
|
while (true) {
|
1043
994
|
if (state.tokenType === TOKENTYPE.SYMBOL || state.token === 'in' && isConstantNode(node) || state.tokenType === TOKENTYPE.NUMBER && !isConstantNode(last) && (!isOperatorNode(last) || last.op === '!') || state.token === '(') {
|
1044
995
|
// parse implicit multiplication
|
@@ -1047,78 +998,98 @@ export var createParse = /* #__PURE__ */factory(name, dependencies, (_ref) => {
|
|
1047
998
|
// number: implicit multiplication like '(2+3)2'
|
1048
999
|
// parenthesis: implicit multiplication like '2(3+4)', '(3+4)(1+2)'
|
1049
1000
|
last = parseRule2(state);
|
1050
|
-
node = new OperatorNode('*', 'multiply', [node, last], true
|
1051
|
-
/* implicit */
|
1052
|
-
);
|
1001
|
+
node = new OperatorNode('*', 'multiply', [node, last], true /* implicit */);
|
1053
1002
|
} else {
|
1054
1003
|
break;
|
1055
1004
|
}
|
1056
1005
|
}
|
1057
|
-
|
1058
1006
|
return node;
|
1059
1007
|
}
|
1008
|
+
|
1060
1009
|
/**
|
1061
1010
|
* Infamous "rule 2" as described in https://github.com/josdejong/mathjs/issues/792#issuecomment-361065370
|
1011
|
+
* And as amended in https://github.com/josdejong/mathjs/issues/2370#issuecomment-1054052164
|
1062
1012
|
* Explicit division gets higher precedence than implicit multiplication
|
1063
|
-
* when the division matches this pattern:
|
1013
|
+
* when the division matches this pattern:
|
1014
|
+
* [unaryPrefixOp]?[number] / [number] [symbol]
|
1064
1015
|
* @return {Node} node
|
1065
1016
|
* @private
|
1066
1017
|
*/
|
1067
|
-
|
1068
|
-
|
1069
1018
|
function parseRule2(state) {
|
1070
|
-
var node =
|
1019
|
+
var node = parsePercentage(state);
|
1071
1020
|
var last = node;
|
1072
1021
|
var tokenStates = [];
|
1073
|
-
|
1074
1022
|
while (true) {
|
1075
1023
|
// Match the "number /" part of the pattern "number / number symbol"
|
1076
|
-
if (state.token === '/' &&
|
1024
|
+
if (state.token === '/' && rule2Node(last)) {
|
1077
1025
|
// Look ahead to see if the next token is a number
|
1078
1026
|
tokenStates.push(_extends({}, state));
|
1079
|
-
getTokenSkipNewline(state);
|
1027
|
+
getTokenSkipNewline(state);
|
1080
1028
|
|
1029
|
+
// Match the "number / number" part of the pattern
|
1081
1030
|
if (state.tokenType === TOKENTYPE.NUMBER) {
|
1082
1031
|
// Look ahead again
|
1083
1032
|
tokenStates.push(_extends({}, state));
|
1084
|
-
getTokenSkipNewline(state);
|
1033
|
+
getTokenSkipNewline(state);
|
1085
1034
|
|
1035
|
+
// Match the "symbol" part of the pattern, or a left parenthesis
|
1086
1036
|
if (state.tokenType === TOKENTYPE.SYMBOL || state.token === '(') {
|
1087
1037
|
// We've matched the pattern "number / number symbol".
|
1088
1038
|
// Rewind once and build the "number / number" node; the symbol will be consumed later
|
1089
1039
|
_extends(state, tokenStates.pop());
|
1090
|
-
|
1091
1040
|
tokenStates.pop();
|
1092
|
-
last =
|
1041
|
+
last = parsePercentage(state);
|
1093
1042
|
node = new OperatorNode('/', 'divide', [node, last]);
|
1094
1043
|
} else {
|
1095
1044
|
// Not a match, so rewind
|
1096
1045
|
tokenStates.pop();
|
1097
|
-
|
1098
1046
|
_extends(state, tokenStates.pop());
|
1099
|
-
|
1100
1047
|
break;
|
1101
1048
|
}
|
1102
1049
|
} else {
|
1103
1050
|
// Not a match, so rewind
|
1104
1051
|
_extends(state, tokenStates.pop());
|
1105
|
-
|
1106
1052
|
break;
|
1107
1053
|
}
|
1108
1054
|
} else {
|
1109
1055
|
break;
|
1110
1056
|
}
|
1111
1057
|
}
|
1058
|
+
return node;
|
1059
|
+
}
|
1112
1060
|
|
1061
|
+
/**
|
1062
|
+
* percentage or mod
|
1063
|
+
* @return {Node} node
|
1064
|
+
* @private
|
1065
|
+
*/
|
1066
|
+
function parsePercentage(state) {
|
1067
|
+
var node, name, fn, params;
|
1068
|
+
node = parseUnary(state);
|
1069
|
+
var operators = {
|
1070
|
+
'%': 'mod',
|
1071
|
+
mod: 'mod'
|
1072
|
+
};
|
1073
|
+
while (hasOwnProperty(operators, state.token)) {
|
1074
|
+
name = state.token;
|
1075
|
+
fn = operators[name];
|
1076
|
+
getTokenSkipNewline(state);
|
1077
|
+
if (name === '%' && state.tokenType === TOKENTYPE.DELIMITER && state.token !== '(') {
|
1078
|
+
// If the expression contains only %, then treat that as /100
|
1079
|
+
node = new OperatorNode('/', 'divide', [node, new ConstantNode(100)], false, true);
|
1080
|
+
} else {
|
1081
|
+
params = [node, parseUnary(state)];
|
1082
|
+
node = new OperatorNode(name, fn, params);
|
1083
|
+
}
|
1084
|
+
}
|
1113
1085
|
return node;
|
1114
1086
|
}
|
1087
|
+
|
1115
1088
|
/**
|
1116
1089
|
* Unary plus and minus, and logical and bitwise not
|
1117
1090
|
* @return {Node} node
|
1118
1091
|
* @private
|
1119
1092
|
*/
|
1120
|
-
|
1121
|
-
|
1122
1093
|
function parseUnary(state) {
|
1123
1094
|
var name, params, fn;
|
1124
1095
|
var operators = {
|
@@ -1127,7 +1098,6 @@ export var createParse = /* #__PURE__ */factory(name, dependencies, (_ref) => {
|
|
1127
1098
|
'~': 'bitNot',
|
1128
1099
|
not: 'not'
|
1129
1100
|
};
|
1130
|
-
|
1131
1101
|
if (hasOwnProperty(operators, state.token)) {
|
1132
1102
|
fn = operators[state.token];
|
1133
1103
|
name = state.token;
|
@@ -1135,39 +1105,33 @@ export var createParse = /* #__PURE__ */factory(name, dependencies, (_ref) => {
|
|
1135
1105
|
params = [parseUnary(state)];
|
1136
1106
|
return new OperatorNode(name, fn, params);
|
1137
1107
|
}
|
1138
|
-
|
1139
1108
|
return parsePow(state);
|
1140
1109
|
}
|
1110
|
+
|
1141
1111
|
/**
|
1142
1112
|
* power
|
1143
1113
|
* Note: power operator is right associative
|
1144
1114
|
* @return {Node} node
|
1145
1115
|
* @private
|
1146
1116
|
*/
|
1147
|
-
|
1148
|
-
|
1149
1117
|
function parsePow(state) {
|
1150
1118
|
var node, name, fn, params;
|
1151
1119
|
node = parseLeftHandOperators(state);
|
1152
|
-
|
1153
1120
|
if (state.token === '^' || state.token === '.^') {
|
1154
1121
|
name = state.token;
|
1155
1122
|
fn = name === '^' ? 'pow' : 'dotPow';
|
1156
1123
|
getTokenSkipNewline(state);
|
1157
1124
|
params = [node, parseUnary(state)]; // Go back to unary, we can have '2^-3'
|
1158
|
-
|
1159
1125
|
node = new OperatorNode(name, fn, params);
|
1160
1126
|
}
|
1161
|
-
|
1162
1127
|
return node;
|
1163
1128
|
}
|
1129
|
+
|
1164
1130
|
/**
|
1165
1131
|
* Left hand operators: factorial x!, ctranspose x'
|
1166
1132
|
* @return {Node} node
|
1167
1133
|
* @private
|
1168
1134
|
*/
|
1169
|
-
|
1170
|
-
|
1171
1135
|
function parseLeftHandOperators(state) {
|
1172
1136
|
var node, name, fn, params;
|
1173
1137
|
node = parseCustomNodes(state);
|
@@ -1175,7 +1139,6 @@ export var createParse = /* #__PURE__ */factory(name, dependencies, (_ref) => {
|
|
1175
1139
|
'!': 'factorial',
|
1176
1140
|
'\'': 'ctranspose'
|
1177
1141
|
};
|
1178
|
-
|
1179
1142
|
while (hasOwnProperty(operators, state.token)) {
|
1180
1143
|
name = state.token;
|
1181
1144
|
fn = operators[name];
|
@@ -1184,9 +1147,9 @@ export var createParse = /* #__PURE__ */factory(name, dependencies, (_ref) => {
|
|
1184
1147
|
node = new OperatorNode(name, fn, params);
|
1185
1148
|
node = parseAccessors(state, node);
|
1186
1149
|
}
|
1187
|
-
|
1188
1150
|
return node;
|
1189
1151
|
}
|
1152
|
+
|
1190
1153
|
/**
|
1191
1154
|
* Parse a custom node handler. A node handler can be used to process
|
1192
1155
|
* nodes in a custom way, for example for handling a plot.
|
@@ -1215,59 +1178,51 @@ export var createParse = /* #__PURE__ */factory(name, dependencies, (_ref) => {
|
|
1215
1178
|
* @return {Node} node
|
1216
1179
|
* @private
|
1217
1180
|
*/
|
1218
|
-
|
1219
|
-
|
1220
1181
|
function parseCustomNodes(state) {
|
1221
1182
|
var params = [];
|
1222
|
-
|
1223
1183
|
if (state.tokenType === TOKENTYPE.SYMBOL && hasOwnProperty(state.extraNodes, state.token)) {
|
1224
1184
|
var CustomNode = state.extraNodes[state.token];
|
1225
|
-
getToken(state);
|
1185
|
+
getToken(state);
|
1226
1186
|
|
1187
|
+
// parse parameters
|
1227
1188
|
if (state.token === '(') {
|
1228
1189
|
params = [];
|
1229
1190
|
openParams(state);
|
1230
1191
|
getToken(state);
|
1231
|
-
|
1232
1192
|
if (state.token !== ')') {
|
1233
|
-
params.push(parseAssignment(state));
|
1193
|
+
params.push(parseAssignment(state));
|
1234
1194
|
|
1195
|
+
// parse a list with parameters
|
1235
1196
|
while (state.token === ',') {
|
1236
1197
|
// eslint-disable-line no-unmodified-loop-condition
|
1237
1198
|
getToken(state);
|
1238
1199
|
params.push(parseAssignment(state));
|
1239
1200
|
}
|
1240
1201
|
}
|
1241
|
-
|
1242
1202
|
if (state.token !== ')') {
|
1243
1203
|
throw createSyntaxError(state, 'Parenthesis ) expected');
|
1244
1204
|
}
|
1245
|
-
|
1246
1205
|
closeParams(state);
|
1247
1206
|
getToken(state);
|
1248
|
-
}
|
1249
|
-
// noinspection JSValidateTypes
|
1250
|
-
|
1207
|
+
}
|
1251
1208
|
|
1209
|
+
// create a new custom node
|
1210
|
+
// noinspection JSValidateTypes
|
1252
1211
|
return new CustomNode(params);
|
1253
1212
|
}
|
1254
|
-
|
1255
1213
|
return parseSymbol(state);
|
1256
1214
|
}
|
1215
|
+
|
1257
1216
|
/**
|
1258
1217
|
* parse symbols: functions, variables, constants, units
|
1259
1218
|
* @return {Node} node
|
1260
1219
|
* @private
|
1261
1220
|
*/
|
1262
|
-
|
1263
|
-
|
1264
1221
|
function parseSymbol(state) {
|
1265
1222
|
var node, name;
|
1266
|
-
|
1267
1223
|
if (state.tokenType === TOKENTYPE.SYMBOL || state.tokenType === TOKENTYPE.DELIMITER && state.token in NAMED_DELIMITERS) {
|
1268
1224
|
name = state.token;
|
1269
1225
|
getToken(state);
|
1270
|
-
|
1271
1226
|
if (hasOwnProperty(CONSTANTS, name)) {
|
1272
1227
|
// true, false, null, ...
|
1273
1228
|
node = new ConstantNode(CONSTANTS[name]);
|
@@ -1276,15 +1231,15 @@ export var createParse = /* #__PURE__ */factory(name, dependencies, (_ref) => {
|
|
1276
1231
|
node = new ConstantNode(numeric(name, 'number'));
|
1277
1232
|
} else {
|
1278
1233
|
node = new SymbolNode(name);
|
1279
|
-
}
|
1280
|
-
|
1234
|
+
}
|
1281
1235
|
|
1236
|
+
// parse function parameters and matrix index
|
1282
1237
|
node = parseAccessors(state, node);
|
1283
1238
|
return node;
|
1284
1239
|
}
|
1285
|
-
|
1286
|
-
return parseDoubleQuotesString(state);
|
1240
|
+
return parseString(state);
|
1287
1241
|
}
|
1242
|
+
|
1288
1243
|
/**
|
1289
1244
|
* parse accessors:
|
1290
1245
|
* - function invocation in round brackets (...), for example sqrt(2)
|
@@ -1299,35 +1254,29 @@ export var createParse = /* #__PURE__ */factory(name, dependencies, (_ref) => {
|
|
1299
1254
|
* @return {Node} node
|
1300
1255
|
* @private
|
1301
1256
|
*/
|
1302
|
-
|
1303
|
-
|
1304
1257
|
function parseAccessors(state, node, types) {
|
1305
1258
|
var params;
|
1306
|
-
|
1307
1259
|
while ((state.token === '(' || state.token === '[' || state.token === '.') && (!types || types.indexOf(state.token) !== -1)) {
|
1308
1260
|
// eslint-disable-line no-unmodified-loop-condition
|
1309
1261
|
params = [];
|
1310
|
-
|
1311
1262
|
if (state.token === '(') {
|
1312
1263
|
if (isSymbolNode(node) || isAccessorNode(node)) {
|
1313
1264
|
// function invocation like fn(2, 3) or obj.fn(2, 3)
|
1314
1265
|
openParams(state);
|
1315
1266
|
getToken(state);
|
1316
|
-
|
1317
1267
|
if (state.token !== ')') {
|
1318
|
-
params.push(parseAssignment(state));
|
1268
|
+
params.push(parseAssignment(state));
|
1319
1269
|
|
1270
|
+
// parse a list with parameters
|
1320
1271
|
while (state.token === ',') {
|
1321
1272
|
// eslint-disable-line no-unmodified-loop-condition
|
1322
1273
|
getToken(state);
|
1323
1274
|
params.push(parseAssignment(state));
|
1324
1275
|
}
|
1325
1276
|
}
|
1326
|
-
|
1327
1277
|
if (state.token !== ')') {
|
1328
1278
|
throw createSyntaxError(state, 'Parenthesis ) expected');
|
1329
1279
|
}
|
1330
|
-
|
1331
1280
|
closeParams(state);
|
1332
1281
|
getToken(state);
|
1333
1282
|
node = new FunctionNode(node, params);
|
@@ -1341,196 +1290,147 @@ export var createParse = /* #__PURE__ */factory(name, dependencies, (_ref) => {
|
|
1341
1290
|
// index notation like variable[2, 3]
|
1342
1291
|
openParams(state);
|
1343
1292
|
getToken(state);
|
1344
|
-
|
1345
1293
|
if (state.token !== ']') {
|
1346
|
-
params.push(parseAssignment(state));
|
1294
|
+
params.push(parseAssignment(state));
|
1347
1295
|
|
1296
|
+
// parse a list with parameters
|
1348
1297
|
while (state.token === ',') {
|
1349
1298
|
// eslint-disable-line no-unmodified-loop-condition
|
1350
1299
|
getToken(state);
|
1351
1300
|
params.push(parseAssignment(state));
|
1352
1301
|
}
|
1353
1302
|
}
|
1354
|
-
|
1355
1303
|
if (state.token !== ']') {
|
1356
1304
|
throw createSyntaxError(state, 'Parenthesis ] expected');
|
1357
1305
|
}
|
1358
|
-
|
1359
1306
|
closeParams(state);
|
1360
1307
|
getToken(state);
|
1361
1308
|
node = new AccessorNode(node, new IndexNode(params));
|
1362
1309
|
} else {
|
1363
1310
|
// dot notation like variable.prop
|
1364
1311
|
getToken(state);
|
1365
|
-
|
1366
|
-
if (
|
1312
|
+
var isPropertyName = state.tokenType === TOKENTYPE.SYMBOL || state.tokenType === TOKENTYPE.DELIMITER && state.token in NAMED_DELIMITERS;
|
1313
|
+
if (!isPropertyName) {
|
1367
1314
|
throw createSyntaxError(state, 'Property name expected after dot');
|
1368
1315
|
}
|
1369
|
-
|
1370
1316
|
params.push(new ConstantNode(state.token));
|
1371
1317
|
getToken(state);
|
1372
1318
|
var dotNotation = true;
|
1373
1319
|
node = new AccessorNode(node, new IndexNode(params, dotNotation));
|
1374
1320
|
}
|
1375
1321
|
}
|
1376
|
-
|
1377
1322
|
return node;
|
1378
1323
|
}
|
1379
|
-
/**
|
1380
|
-
* Parse a double quotes string.
|
1381
|
-
* @return {Node} node
|
1382
|
-
* @private
|
1383
|
-
*/
|
1384
|
-
|
1385
|
-
|
1386
|
-
function parseDoubleQuotesString(state) {
|
1387
|
-
var node, str;
|
1388
|
-
|
1389
|
-
if (state.token === '"') {
|
1390
|
-
str = parseDoubleQuotesStringToken(state); // create constant
|
1391
|
-
|
1392
|
-
node = new ConstantNode(str); // parse index parameters
|
1393
|
-
|
1394
|
-
node = parseAccessors(state, node);
|
1395
|
-
return node;
|
1396
|
-
}
|
1397
|
-
|
1398
|
-
return parseSingleQuotesString(state);
|
1399
|
-
}
|
1400
|
-
/**
|
1401
|
-
* Parse a string surrounded by double quotes "..."
|
1402
|
-
* @return {string}
|
1403
|
-
*/
|
1404
|
-
|
1405
|
-
|
1406
|
-
function parseDoubleQuotesStringToken(state) {
|
1407
|
-
var str = '';
|
1408
1324
|
|
1409
|
-
while (currentCharacter(state) !== '' && currentCharacter(state) !== '"') {
|
1410
|
-
if (currentCharacter(state) === '\\') {
|
1411
|
-
// escape character, immediately process the next
|
1412
|
-
// character to prevent stopping at a next '\"'
|
1413
|
-
str += currentCharacter(state);
|
1414
|
-
next(state);
|
1415
|
-
}
|
1416
|
-
|
1417
|
-
str += currentCharacter(state);
|
1418
|
-
next(state);
|
1419
|
-
}
|
1420
|
-
|
1421
|
-
getToken(state);
|
1422
|
-
|
1423
|
-
if (state.token !== '"') {
|
1424
|
-
throw createSyntaxError(state, 'End of string " expected');
|
1425
|
-
}
|
1426
|
-
|
1427
|
-
getToken(state);
|
1428
|
-
return JSON.parse('"' + str + '"'); // unescape escaped characters
|
1429
|
-
}
|
1430
1325
|
/**
|
1431
|
-
* Parse a single
|
1326
|
+
* Parse a single or double quoted string.
|
1432
1327
|
* @return {Node} node
|
1433
1328
|
* @private
|
1434
1329
|
*/
|
1435
|
-
|
1436
|
-
|
1437
|
-
function parseSingleQuotesString(state) {
|
1330
|
+
function parseString(state) {
|
1438
1331
|
var node, str;
|
1332
|
+
if (state.token === '"' || state.token === "'") {
|
1333
|
+
str = parseStringToken(state, state.token);
|
1439
1334
|
|
1440
|
-
|
1441
|
-
|
1442
|
-
|
1443
|
-
node = new ConstantNode(str); // parse index parameters
|
1335
|
+
// create constant
|
1336
|
+
node = new ConstantNode(str);
|
1444
1337
|
|
1338
|
+
// parse index parameters
|
1445
1339
|
node = parseAccessors(state, node);
|
1446
1340
|
return node;
|
1447
1341
|
}
|
1448
|
-
|
1449
1342
|
return parseMatrix(state);
|
1450
1343
|
}
|
1344
|
+
|
1451
1345
|
/**
|
1452
|
-
* Parse a string surrounded by single quotes
|
1346
|
+
* Parse a string surrounded by single or double quotes
|
1347
|
+
* @param {Object} state
|
1348
|
+
* @param {"'" | "\""} quote
|
1453
1349
|
* @return {string}
|
1454
1350
|
*/
|
1455
|
-
|
1456
|
-
|
1457
|
-
function parseSingleQuotesStringToken(state) {
|
1351
|
+
function parseStringToken(state, quote) {
|
1458
1352
|
var str = '';
|
1459
|
-
|
1460
|
-
while (currentCharacter(state) !== '' && currentCharacter(state) !== '\'') {
|
1353
|
+
while (currentCharacter(state) !== '' && currentCharacter(state) !== quote) {
|
1461
1354
|
if (currentCharacter(state) === '\\') {
|
1462
|
-
|
1463
|
-
|
1355
|
+
next(state);
|
1356
|
+
var char = currentCharacter(state);
|
1357
|
+
var escapeChar = ESCAPE_CHARACTERS[char];
|
1358
|
+
if (escapeChar !== undefined) {
|
1359
|
+
// an escaped control character like \" or \n
|
1360
|
+
str += escapeChar;
|
1361
|
+
state.index += 1;
|
1362
|
+
} else if (char === 'u') {
|
1363
|
+
// escaped unicode character
|
1364
|
+
var unicode = state.expression.slice(state.index + 1, state.index + 5);
|
1365
|
+
if (/^[0-9A-Fa-f]{4}$/.test(unicode)) {
|
1366
|
+
// test whether the string holds four hexadecimal values
|
1367
|
+
str += String.fromCharCode(parseInt(unicode, 16));
|
1368
|
+
state.index += 5;
|
1369
|
+
} else {
|
1370
|
+
throw createSyntaxError(state, "Invalid unicode character \\u".concat(unicode));
|
1371
|
+
}
|
1372
|
+
} else {
|
1373
|
+
throw createSyntaxError(state, "Bad escape character \\".concat(char));
|
1374
|
+
}
|
1375
|
+
} else {
|
1376
|
+
// any regular character
|
1464
1377
|
str += currentCharacter(state);
|
1465
1378
|
next(state);
|
1466
1379
|
}
|
1467
|
-
|
1468
|
-
str += currentCharacter(state);
|
1469
|
-
next(state);
|
1470
1380
|
}
|
1471
|
-
|
1472
1381
|
getToken(state);
|
1473
|
-
|
1474
|
-
|
1475
|
-
throw createSyntaxError(state, 'End of string \' expected');
|
1382
|
+
if (state.token !== quote) {
|
1383
|
+
throw createSyntaxError(state, "End of string ".concat(quote, " expected"));
|
1476
1384
|
}
|
1477
|
-
|
1478
1385
|
getToken(state);
|
1479
|
-
return
|
1386
|
+
return str;
|
1480
1387
|
}
|
1388
|
+
|
1481
1389
|
/**
|
1482
1390
|
* parse the matrix
|
1483
1391
|
* @return {Node} node
|
1484
1392
|
* @private
|
1485
1393
|
*/
|
1486
|
-
|
1487
|
-
|
1488
1394
|
function parseMatrix(state) {
|
1489
1395
|
var array, params, rows, cols;
|
1490
|
-
|
1491
1396
|
if (state.token === '[') {
|
1492
1397
|
// matrix [...]
|
1493
1398
|
openParams(state);
|
1494
1399
|
getToken(state);
|
1495
|
-
|
1496
1400
|
if (state.token !== ']') {
|
1497
1401
|
// this is a non-empty matrix
|
1498
1402
|
var row = parseRow(state);
|
1499
|
-
|
1500
1403
|
if (state.token === ';') {
|
1501
1404
|
// 2 dimensional array
|
1502
1405
|
rows = 1;
|
1503
|
-
params = [row];
|
1406
|
+
params = [row];
|
1504
1407
|
|
1408
|
+
// the rows of the matrix are separated by dot-comma's
|
1505
1409
|
while (state.token === ';') {
|
1506
1410
|
// eslint-disable-line no-unmodified-loop-condition
|
1507
1411
|
getToken(state);
|
1508
1412
|
params[rows] = parseRow(state);
|
1509
1413
|
rows++;
|
1510
1414
|
}
|
1511
|
-
|
1512
1415
|
if (state.token !== ']') {
|
1513
1416
|
throw createSyntaxError(state, 'End of matrix ] expected');
|
1514
1417
|
}
|
1515
|
-
|
1516
1418
|
closeParams(state);
|
1517
|
-
getToken(state);
|
1419
|
+
getToken(state);
|
1518
1420
|
|
1421
|
+
// check if the number of columns matches in all rows
|
1519
1422
|
cols = params[0].items.length;
|
1520
|
-
|
1521
1423
|
for (var r = 1; r < rows; r++) {
|
1522
1424
|
if (params[r].items.length !== cols) {
|
1523
1425
|
throw createError(state, 'Column dimensions mismatch ' + '(' + params[r].items.length + ' !== ' + cols + ')');
|
1524
1426
|
}
|
1525
1427
|
}
|
1526
|
-
|
1527
1428
|
array = new ArrayNode(params);
|
1528
1429
|
} else {
|
1529
1430
|
// 1 dimensional vector
|
1530
1431
|
if (state.token !== ']') {
|
1531
1432
|
throw createSyntaxError(state, 'End of matrix ] expected');
|
1532
1433
|
}
|
1533
|
-
|
1534
1434
|
closeParams(state);
|
1535
1435
|
getToken(state);
|
1536
1436
|
array = row;
|
@@ -1541,116 +1441,102 @@ export var createParse = /* #__PURE__ */factory(name, dependencies, (_ref) => {
|
|
1541
1441
|
getToken(state);
|
1542
1442
|
array = new ArrayNode([]);
|
1543
1443
|
}
|
1544
|
-
|
1545
1444
|
return parseAccessors(state, array);
|
1546
1445
|
}
|
1547
|
-
|
1548
1446
|
return parseObject(state);
|
1549
1447
|
}
|
1448
|
+
|
1550
1449
|
/**
|
1551
1450
|
* Parse a single comma-separated row from a matrix, like 'a, b, c'
|
1552
1451
|
* @return {ArrayNode} node
|
1553
1452
|
*/
|
1554
|
-
|
1555
|
-
|
1556
1453
|
function parseRow(state) {
|
1557
1454
|
var params = [parseAssignment(state)];
|
1558
1455
|
var len = 1;
|
1559
|
-
|
1560
1456
|
while (state.token === ',') {
|
1561
1457
|
// eslint-disable-line no-unmodified-loop-condition
|
1562
|
-
getToken(state);
|
1458
|
+
getToken(state);
|
1563
1459
|
|
1460
|
+
// parse expression
|
1564
1461
|
params[len] = parseAssignment(state);
|
1565
1462
|
len++;
|
1566
1463
|
}
|
1567
|
-
|
1568
1464
|
return new ArrayNode(params);
|
1569
1465
|
}
|
1466
|
+
|
1570
1467
|
/**
|
1571
1468
|
* parse an object, enclosed in angle brackets{...}, for example {value: 2}
|
1572
1469
|
* @return {Node} node
|
1573
1470
|
* @private
|
1574
1471
|
*/
|
1575
|
-
|
1576
|
-
|
1577
1472
|
function parseObject(state) {
|
1578
1473
|
if (state.token === '{') {
|
1579
1474
|
openParams(state);
|
1580
1475
|
var key;
|
1581
1476
|
var properties = {};
|
1582
|
-
|
1583
1477
|
do {
|
1584
1478
|
getToken(state);
|
1585
|
-
|
1586
1479
|
if (state.token !== '}') {
|
1587
1480
|
// parse key
|
1588
|
-
if (state.token === '"') {
|
1589
|
-
key =
|
1590
|
-
} else if (state.token === '\'') {
|
1591
|
-
key = parseSingleQuotesStringToken(state);
|
1481
|
+
if (state.token === '"' || state.token === "'") {
|
1482
|
+
key = parseStringToken(state, state.token);
|
1592
1483
|
} else if (state.tokenType === TOKENTYPE.SYMBOL || state.tokenType === TOKENTYPE.DELIMITER && state.token in NAMED_DELIMITERS) {
|
1593
1484
|
key = state.token;
|
1594
1485
|
getToken(state);
|
1595
1486
|
} else {
|
1596
1487
|
throw createSyntaxError(state, 'Symbol or string expected as object key');
|
1597
|
-
}
|
1598
|
-
|
1488
|
+
}
|
1599
1489
|
|
1490
|
+
// parse key/value separator
|
1600
1491
|
if (state.token !== ':') {
|
1601
1492
|
throw createSyntaxError(state, 'Colon : expected after object key');
|
1602
1493
|
}
|
1494
|
+
getToken(state);
|
1603
1495
|
|
1604
|
-
|
1605
|
-
|
1496
|
+
// parse key
|
1606
1497
|
properties[key] = parseAssignment(state);
|
1607
1498
|
}
|
1608
1499
|
} while (state.token === ','); // eslint-disable-line no-unmodified-loop-condition
|
1609
1500
|
|
1610
|
-
|
1611
1501
|
if (state.token !== '}') {
|
1612
1502
|
throw createSyntaxError(state, 'Comma , or bracket } expected after object value');
|
1613
1503
|
}
|
1614
|
-
|
1615
1504
|
closeParams(state);
|
1616
1505
|
getToken(state);
|
1617
|
-
var node = new ObjectNode(properties);
|
1506
|
+
var node = new ObjectNode(properties);
|
1618
1507
|
|
1508
|
+
// parse index parameters
|
1619
1509
|
node = parseAccessors(state, node);
|
1620
1510
|
return node;
|
1621
1511
|
}
|
1622
|
-
|
1623
1512
|
return parseNumber(state);
|
1624
1513
|
}
|
1514
|
+
|
1625
1515
|
/**
|
1626
1516
|
* parse a number
|
1627
1517
|
* @return {Node} node
|
1628
1518
|
* @private
|
1629
1519
|
*/
|
1630
|
-
|
1631
|
-
|
1632
1520
|
function parseNumber(state) {
|
1633
1521
|
var numberStr;
|
1634
|
-
|
1635
1522
|
if (state.tokenType === TOKENTYPE.NUMBER) {
|
1636
1523
|
// this is a number
|
1637
1524
|
numberStr = state.token;
|
1638
1525
|
getToken(state);
|
1639
1526
|
return new ConstantNode(numeric(numberStr, config.number));
|
1640
1527
|
}
|
1641
|
-
|
1642
1528
|
return parseParentheses(state);
|
1643
1529
|
}
|
1530
|
+
|
1644
1531
|
/**
|
1645
1532
|
* parentheses
|
1646
1533
|
* @return {Node} node
|
1647
1534
|
* @private
|
1648
1535
|
*/
|
1649
|
-
|
1650
|
-
|
1651
1536
|
function parseParentheses(state) {
|
1652
|
-
var node;
|
1537
|
+
var node;
|
1653
1538
|
|
1539
|
+
// check if it is a parenthesized expression
|
1654
1540
|
if (state.token === '(') {
|
1655
1541
|
// parentheses (...)
|
1656
1542
|
openParams(state);
|
@@ -1660,23 +1546,20 @@ export var createParse = /* #__PURE__ */factory(name, dependencies, (_ref) => {
|
|
1660
1546
|
if (state.token !== ')') {
|
1661
1547
|
throw createSyntaxError(state, 'Parenthesis ) expected');
|
1662
1548
|
}
|
1663
|
-
|
1664
1549
|
closeParams(state);
|
1665
1550
|
getToken(state);
|
1666
1551
|
node = new ParenthesisNode(node);
|
1667
1552
|
node = parseAccessors(state, node);
|
1668
1553
|
return node;
|
1669
1554
|
}
|
1670
|
-
|
1671
1555
|
return parseEnd(state);
|
1672
1556
|
}
|
1557
|
+
|
1673
1558
|
/**
|
1674
1559
|
* Evaluated when the expression is not yet ended but expected to end
|
1675
1560
|
* @return {Node} res
|
1676
1561
|
* @private
|
1677
1562
|
*/
|
1678
|
-
|
1679
|
-
|
1680
1563
|
function parseEnd(state) {
|
1681
1564
|
if (state.token === '') {
|
1682
1565
|
// syntax error or unexpected end of expression
|
@@ -1685,12 +1568,12 @@ export var createParse = /* #__PURE__ */factory(name, dependencies, (_ref) => {
|
|
1685
1568
|
throw createSyntaxError(state, 'Value expected');
|
1686
1569
|
}
|
1687
1570
|
}
|
1571
|
+
|
1688
1572
|
/**
|
1689
1573
|
* Shortcut for getting the current row value (one based)
|
1690
1574
|
* Returns the line of the currently handled expression
|
1691
1575
|
* @private
|
1692
1576
|
*/
|
1693
|
-
|
1694
1577
|
/* TODO: implement keeping track on the row number
|
1695
1578
|
function row () {
|
1696
1579
|
return null
|
@@ -1702,11 +1585,10 @@ export var createParse = /* #__PURE__ */factory(name, dependencies, (_ref) => {
|
|
1702
1585
|
* Returns the column (position) where the last state.token starts
|
1703
1586
|
* @private
|
1704
1587
|
*/
|
1705
|
-
|
1706
|
-
|
1707
1588
|
function col(state) {
|
1708
1589
|
return state.index - state.token.length + 1;
|
1709
1590
|
}
|
1591
|
+
|
1710
1592
|
/**
|
1711
1593
|
* Create an error
|
1712
1594
|
* @param {Object} state
|
@@ -1714,14 +1596,13 @@ export var createParse = /* #__PURE__ */factory(name, dependencies, (_ref) => {
|
|
1714
1596
|
* @return {SyntaxError} instantiated error
|
1715
1597
|
* @private
|
1716
1598
|
*/
|
1717
|
-
|
1718
|
-
|
1719
1599
|
function createSyntaxError(state, message) {
|
1720
1600
|
var c = col(state);
|
1721
1601
|
var error = new SyntaxError(message + ' (char ' + c + ')');
|
1722
1602
|
error.char = c;
|
1723
1603
|
return error;
|
1724
1604
|
}
|
1605
|
+
|
1725
1606
|
/**
|
1726
1607
|
* Create an error
|
1727
1608
|
* @param {Object} state
|
@@ -1729,8 +1610,6 @@ export var createParse = /* #__PURE__ */factory(name, dependencies, (_ref) => {
|
|
1729
1610
|
* @return {Error} instantiated error
|
1730
1611
|
* @private
|
1731
1612
|
*/
|
1732
|
-
|
1733
|
-
|
1734
1613
|
function createError(state, message) {
|
1735
1614
|
var c = col(state);
|
1736
1615
|
var error = new SyntaxError(message + ' (char ' + c + ')');
|
@@ -1738,5 +1617,11 @@ export var createParse = /* #__PURE__ */factory(name, dependencies, (_ref) => {
|
|
1738
1617
|
return error;
|
1739
1618
|
}
|
1740
1619
|
|
1620
|
+
// Now that we can parse, automatically convert strings to Nodes by parsing
|
1621
|
+
typed.addConversion({
|
1622
|
+
from: 'string',
|
1623
|
+
to: 'Node',
|
1624
|
+
convert: parse
|
1625
|
+
});
|
1741
1626
|
return parse;
|
1742
1627
|
});
|