"use strict"; var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) { if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) { if (ar || !(i in from)) { if (!ar) ar = Array.prototype.slice.call(from, 0, i); ar[i] = from[i]; } } return to.concat(ar || Array.prototype.slice.call(from)); }; Object.defineProperty(exports, "__esModule", { value: true }); exports.fromReadonlyNonEmptyArray = exports.has = exports.emptyRecord = exports.emptyReadonlyArray = exports.tail = exports.head = exports.isNonEmpty = exports.singleton = exports.right = exports.left = exports.isRight = exports.isLeft = exports.some = exports.none = exports.isSome = exports.isNone = void 0; // ------------------------------------------------------------------------------------- // Option // ------------------------------------------------------------------------------------- /** @internal */ var isNone = function (fa) { return fa._tag === 'None'; }; exports.isNone = isNone; /** @internal */ var isSome = function (fa) { return fa._tag === 'Some'; }; exports.isSome = isSome; /** @internal */ exports.none = { _tag: 'None' }; /** @internal */ var some = function (a) { return ({ _tag: 'Some', value: a }); }; exports.some = some; // ------------------------------------------------------------------------------------- // Either // ------------------------------------------------------------------------------------- /** @internal */ var isLeft = function (ma) { return ma._tag === 'Left'; }; exports.isLeft = isLeft; /** @internal */ var isRight = function (ma) { return ma._tag === 'Right'; }; exports.isRight = isRight; /** @internal */ var left = function (e) { return ({ _tag: 'Left', left: e }); }; exports.left = left; /** @internal */ var right = function (a) { return ({ _tag: 'Right', right: a }); }; exports.right = right; // ------------------------------------------------------------------------------------- // ReadonlyNonEmptyArray // ------------------------------------------------------------------------------------- /** @internal */ var singleton = function (a) { return [a]; }; exports.singleton = singleton; /** @internal */ var isNonEmpty = function (as) { return as.length > 0; }; exports.isNonEmpty = isNonEmpty; /** @internal */ var head = function (as) { return as[0]; }; exports.head = head; /** @internal */ var tail = function (as) { return as.slice(1); }; exports.tail = tail; // ------------------------------------------------------------------------------------- // empty // ------------------------------------------------------------------------------------- /** @internal */ exports.emptyReadonlyArray = []; /** @internal */ exports.emptyRecord = {}; // ------------------------------------------------------------------------------------- // Record // ------------------------------------------------------------------------------------- /** @internal */ exports.has = Object.prototype.hasOwnProperty; // ------------------------------------------------------------------------------------- // NonEmptyArray // ------------------------------------------------------------------------------------- /** @internal */ var fromReadonlyNonEmptyArray = function (as) { return __spreadArray([as[0]], as.slice(1), true); }; exports.fromReadonlyNonEmptyArray = fromReadonlyNonEmptyArray;