multiplyScalar.js 1.3 KB

1234567891011121314151617181920212223242526272829303132333435
  1. import { factory } from '../../utils/factory.js';
  2. import { multiplyNumber } from '../../plain/number/index.js';
  3. var name = 'multiplyScalar';
  4. var dependencies = ['typed'];
  5. export var createMultiplyScalar = /* #__PURE__ */factory(name, dependencies, _ref => {
  6. var {
  7. typed
  8. } = _ref;
  9. /**
  10. * Multiply two scalar values, `x * y`.
  11. * This function is meant for internal use: it is used by the public function
  12. * `multiply`
  13. *
  14. * This function does not support collections (Array or Matrix).
  15. *
  16. * @param {number | BigNumber | Fraction | Complex | Unit} x First value to multiply
  17. * @param {number | BigNumber | Fraction | Complex} y Second value to multiply
  18. * @return {number | BigNumber | Fraction | Complex | Unit} Multiplication of `x` and `y`
  19. * @private
  20. */
  21. return typed('multiplyScalar', {
  22. 'number, number': multiplyNumber,
  23. 'Complex, Complex': function ComplexComplex(x, y) {
  24. return x.mul(y);
  25. },
  26. 'BigNumber, BigNumber': function BigNumberBigNumber(x, y) {
  27. return x.times(y);
  28. },
  29. 'Fraction, Fraction': function FractionFraction(x, y) {
  30. return x.mul(y);
  31. },
  32. 'number | Fraction | BigNumber | Complex, Unit': (x, y) => y.multiply(x),
  33. 'Unit, number | Fraction | BigNumber | Complex | Unit': (x, y) => x.multiply(y)
  34. });
  35. });