mathjs 11.2.0 → 11.3.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (1322) hide show
  1. package/HISTORY.md +13 -0
  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',