UNPKG

list

Version:

Fast purely functional immutable lists.

122 lines (121 loc) 4.09 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var L = require("./index"); var index_1 = require("./index"); exports.Node = index_1.Node; exports.List = index_1.List; exports.list = index_1.list; exports.isList = index_1.isList; exports.length = index_1.length; exports.of = index_1.of; exports.empty = index_1.empty; exports.first = index_1.first; exports.head = index_1.head; exports.last = index_1.last; exports.flatten = index_1.flatten; exports.pop = index_1.pop; exports.init = index_1.init; exports.tail = index_1.tail; exports.from = index_1.from; exports.toArray = index_1.toArray; exports.reverse = index_1.reverse; exports.backwards = index_1.backwards; exports.sort = index_1.sort; exports.group = index_1.group; exports.dropRepeats = index_1.dropRepeats; exports.isEmpty = index_1.isEmpty; function curry2(f) { return function curried(a, b) { return arguments.length === 2 ? f(a, b) : function (b) { return f(a, b); }; }; } function curry3(f) { return function curried(a, b, c) { switch (arguments.length) { case 3: return f(a, b, c); case 2: return function (c) { return f(a, b, c); }; default: return curry2(function (b, c) { return f(a, b, c); }); } }; } function curry4(f) { return function curried(a, b, c, d) { switch (arguments.length) { case 4: return f(a, b, c, d); case 3: return function (d) { return f(a, b, c, d); }; case 2: return curry2(function (c, d) { return f(a, b, c, d); }); default: return curry3(function (b, c, d) { return f(a, b, c, d); }); } }; } exports.prepend = curry2(L.prepend); exports.append = curry2(L.append); exports.pair = curry2(L.pair); exports.repeat = curry2(L.repeat); exports.times = curry2(L.times); exports.nth = curry2(L.nth); exports.map = curry2(L.map); exports.forEach = curry2(L.forEach); exports.pluck = curry2(L.pluck); exports.intersperse = curry2(L.intersperse); exports.range = curry2(L.range); exports.filter = curry2(L.filter); exports.reject = curry2(L.reject); exports.partition = curry2(L.partition); exports.join = curry2(L.join); exports.ap = curry2(L.ap); exports.flatMap = curry2(L.flatMap); exports.chain = exports.flatMap; exports.every = curry2(L.every); exports.all = curry2(L.all); exports.some = curry2(L.some); exports.any = curry2(L.any); exports.none = curry2(L.none); exports.find = curry2(L.find); exports.findLast = curry2(L.findLast); exports.indexOf = curry2(L.indexOf); exports.lastIndexOf = curry2(L.lastIndexOf); exports.findIndex = curry2(L.findIndex); exports.includes = curry2(L.includes); exports.contains = exports.includes; exports.equals = curry2(L.equals); exports.concat = curry2(L.concat); exports.take = curry2(L.take); exports.takeLast = curry2(L.takeLast); exports.drop = curry2(L.drop); exports.dropRepeatsWith = curry2(L.groupWith); exports.dropLast = curry2(L.dropLast); exports.takeWhile = curry2(L.takeWhile); exports.takeLastWhile = curry2(L.takeLastWhile); exports.dropWhile = curry2(L.dropWhile); exports.splitAt = curry2(L.splitAt); exports.splitWhen = curry2(L.splitWhen); exports.splitEvery = curry2(L.splitEvery); exports.sortBy = curry2(L.sortBy); exports.sortWith = curry2(L.sortWith); exports.groupWith = curry2(L.groupWith); exports.zip = curry2(L.zip); exports.sequence = curry2(L.sequence); exports.foldl = curry3(L.foldl); exports.reduce = exports.foldl; exports.scan = curry3(L.scan); exports.foldr = curry3(L.foldr); exports.traverse = curry3(L.traverse); exports.equalsWith = curry3(L.equalsWith); exports.reduceRight = exports.foldr; exports.update = curry3(L.update); exports.adjust = curry3(L.adjust); exports.slice = curry3(L.slice); exports.remove = curry3(L.remove); exports.insert = curry3(L.insert); exports.insertAll = curry3(L.insertAll); exports.zipWith = curry3(L.zipWith); exports.foldlWhile = curry4(L.foldlWhile); exports.reduceWhile = exports.foldlWhile;