defaultSymbols.js 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162
  1. "use strict";
  2. exports.__esModule = true;
  3. exports["default"] = void 0;
  4. function last() {
  5. var _ref;
  6. return _ref = arguments.length - 1, _ref < 0 || arguments.length <= _ref ? undefined : arguments[_ref];
  7. }
  8. function negation(a) {
  9. return -a;
  10. }
  11. function addition(a, b) {
  12. return a + b;
  13. }
  14. function subtraction(a, b) {
  15. return a - b;
  16. }
  17. function multiplication(a, b) {
  18. return a * b;
  19. }
  20. function division(a, b) {
  21. return a / b;
  22. }
  23. function max() {
  24. return Math.max.apply(Math, arguments);
  25. }
  26. function min() {
  27. return Math.min.apply(Math, arguments);
  28. }
  29. function comma() {
  30. return Array.of.apply(Array, arguments);
  31. }
  32. var defaultSymbols = {
  33. symbols: {
  34. '*': {
  35. infix: {
  36. symbol: '*',
  37. f: multiplication,
  38. notation: 'infix',
  39. precedence: 4,
  40. rightToLeft: 0,
  41. argCount: 2
  42. },
  43. symbol: '*',
  44. regSymbol: '\\*'
  45. },
  46. '/': {
  47. infix: {
  48. symbol: '/',
  49. f: division,
  50. notation: 'infix',
  51. precedence: 4,
  52. rightToLeft: 0,
  53. argCount: 2
  54. },
  55. symbol: '/',
  56. regSymbol: '/'
  57. },
  58. '+': {
  59. infix: {
  60. symbol: '+',
  61. f: addition,
  62. notation: 'infix',
  63. precedence: 2,
  64. rightToLeft: 0,
  65. argCount: 2
  66. },
  67. prefix: {
  68. symbol: '+',
  69. f: last,
  70. notation: 'prefix',
  71. precedence: 3,
  72. rightToLeft: 0,
  73. argCount: 1
  74. },
  75. symbol: '+',
  76. regSymbol: '\\+'
  77. },
  78. '-': {
  79. infix: {
  80. symbol: '-',
  81. f: subtraction,
  82. notation: 'infix',
  83. precedence: 2,
  84. rightToLeft: 0,
  85. argCount: 2
  86. },
  87. prefix: {
  88. symbol: '-',
  89. f: negation,
  90. notation: 'prefix',
  91. precedence: 3,
  92. rightToLeft: 0,
  93. argCount: 1
  94. },
  95. symbol: '-',
  96. regSymbol: '-'
  97. },
  98. ',': {
  99. infix: {
  100. symbol: ',',
  101. f: comma,
  102. notation: 'infix',
  103. precedence: 1,
  104. rightToLeft: 0,
  105. argCount: 2
  106. },
  107. symbol: ',',
  108. regSymbol: ','
  109. },
  110. '(': {
  111. prefix: {
  112. symbol: '(',
  113. f: last,
  114. notation: 'prefix',
  115. precedence: 0,
  116. rightToLeft: 0,
  117. argCount: 1
  118. },
  119. symbol: '(',
  120. regSymbol: '\\('
  121. },
  122. ')': {
  123. postfix: {
  124. symbol: ')',
  125. f: undefined,
  126. notation: 'postfix',
  127. precedence: 0,
  128. rightToLeft: 0,
  129. argCount: 1
  130. },
  131. symbol: ')',
  132. regSymbol: '\\)'
  133. },
  134. min: {
  135. func: {
  136. symbol: 'min',
  137. f: min,
  138. notation: 'func',
  139. precedence: 0,
  140. rightToLeft: 0,
  141. argCount: 1
  142. },
  143. symbol: 'min',
  144. regSymbol: 'min\\b'
  145. },
  146. max: {
  147. func: {
  148. symbol: 'max',
  149. f: max,
  150. notation: 'func',
  151. precedence: 0,
  152. rightToLeft: 0,
  153. argCount: 1
  154. },
  155. symbol: 'max',
  156. regSymbol: 'max\\b'
  157. }
  158. }
  159. };
  160. var _default = exports["default"] = defaultSymbols;
  161. module.exports = exports.default;