mathjs 11.2.1 → 11.3.0

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