bitNot.js 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. "use strict";
  2. Object.defineProperty(exports, "__esModule", {
  3. value: true
  4. });
  5. exports.createBitNot = void 0;
  6. var _bitwise = require("../../utils/bignumber/bitwise.js");
  7. var _collection = require("../../utils/collection.js");
  8. var _factory = require("../../utils/factory.js");
  9. var _index = require("../../plain/number/index.js");
  10. var name = 'bitNot';
  11. var dependencies = ['typed'];
  12. var createBitNot = /* #__PURE__ */(0, _factory.factory)(name, dependencies, function (_ref) {
  13. var typed = _ref.typed;
  14. /**
  15. * Bitwise NOT value, `~x`.
  16. * For matrices, the function is evaluated element wise.
  17. * For units, the function is evaluated on the best prefix base.
  18. *
  19. * Syntax:
  20. *
  21. * math.bitNot(x)
  22. *
  23. * Examples:
  24. *
  25. * math.bitNot(1) // returns number -2
  26. *
  27. * math.bitNot([2, -3, 4]) // returns Array [-3, 2, -5]
  28. *
  29. * See also:
  30. *
  31. * bitAnd, bitOr, bitXor, leftShift, rightArithShift, rightLogShift
  32. *
  33. * @param {number | BigNumber | Array | Matrix} x Value to not
  34. * @return {number | BigNumber | Array | Matrix} NOT of `x`
  35. */
  36. return typed(name, {
  37. number: _index.bitNotNumber,
  38. BigNumber: _bitwise.bitNotBigNumber,
  39. 'Array | Matrix': typed.referToSelf(function (self) {
  40. return function (x) {
  41. return (0, _collection.deepMap)(x, self);
  42. };
  43. })
  44. });
  45. });
  46. exports.createBitNot = createBitNot;