|
- "use strict";
- Object.defineProperty(exports, "__esModule", { value: true });
- exports.monoidOrdering = exports.eqOrdering = exports.semigroupOrdering = exports.invert = exports.sign = exports.Monoid = exports.Semigroup = exports.Eq = exports.reverse = exports.match = exports.matchW = void 0;
- /**
- * Less strict version of [`match`](#match).
- *
- * The `W` suffix (short for **W**idening) means that the handler return types will be merged.
- *
- * @category pattern matching
- * @since 2.12.0
- */
- var matchW = function (onLessThan, onEqual, onGreaterThan) {
- return function (o) {
- return o === -1 ? onLessThan() : o === 0 ? onEqual() : onGreaterThan();
- };
- };
- exports.matchW = matchW;
- /**
- * @category pattern matching
- * @since 2.10.0
- */
- exports.match = exports.matchW;
- // -------------------------------------------------------------------------------------
- // combinators
- // -------------------------------------------------------------------------------------
- /**
- * @since 2.10.0
- */
- var reverse = function (o) { return (o === -1 ? 1 : o === 1 ? -1 : 0); };
- exports.reverse = reverse;
- // -------------------------------------------------------------------------------------
- // instances
- // -------------------------------------------------------------------------------------
- /**
- * @category instances
- * @since 2.10.0
- */
- exports.Eq = {
- equals: function (x, y) { return x === y; }
- };
- /**
- * @category instances
- * @since 2.10.0
- */
- exports.Semigroup = {
- concat: function (x, y) { return (x !== 0 ? x : y); }
- };
- /**
- * @category instances
- * @since 2.10.0
- */
- exports.Monoid = {
- concat: exports.Semigroup.concat,
- empty: 0
- };
- // -------------------------------------------------------------------------------------
- // utils
- // -------------------------------------------------------------------------------------
- /**
- * @since 2.0.0
- */
- var sign = function (n) { return (n <= -1 ? -1 : n >= 1 ? 1 : 0); };
- exports.sign = sign;
- // -------------------------------------------------------------------------------------
- // deprecated
- // -------------------------------------------------------------------------------------
- /**
- * Use [`reverse`](#reverse) instead.
- *
- * @category zone of death
- * @since 2.0.0
- * @deprecated
- */
- exports.invert = exports.reverse;
- /**
- * Use [`Semigroup`](#semigroup) instead
- *
- * @category zone of death
- * @since 2.0.0
- * @deprecated
- */
- exports.semigroupOrdering = exports.Semigroup;
- /**
- * Use [`Eq`](#eq) instead
- *
- * @category zone of death
- * @since 2.0.0
- * @deprecated
- */
- exports.eqOrdering = exports.Eq;
- /**
- * Use [`Monoid`](#monoid) instead
- *
- * @category zone of death
- * @since 2.4.0
- * @deprecated
- */
- exports.monoidOrdering = exports.Monoid;
|