list
Version:
Fast purely functional immutable lists.
96 lines • 3.17 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
var L = require("./index");
// All functions of arity 1 are simply re-exported as they don't require currying
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.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.fromArray = index_1.fromArray;
exports.toArray = index_1.toArray;
exports.reverse = index_1.reverse;
exports.fromIterable = index_1.fromIterable;
exports.sort = index_1.sort;
exports.group = index_1.group;
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:
// Assume 1
return curry2(function (b, c) { return f(a, b, c); });
}
};
}
// Arity 2
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.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.chain = curry2(L.chain);
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.indexOf = curry2(L.indexOf);
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.dropLast = curry2(L.dropLast);
exports.takeWhile = curry2(L.takeWhile);
exports.dropWhile = curry2(L.dropWhile);
exports.splitAt = curry2(L.splitAt);
exports.sortBy = curry2(L.sortBy);
exports.sortWith = curry2(L.sortWith);
exports.groupWith = curry2(L.groupWith);
exports.zip = curry2(L.zip);
// Arity 3
exports.foldl = curry3(L.foldl);
exports.reduce = exports.foldl;
exports.foldr = curry3(L.foldr);
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);
//# sourceMappingURL=curried.js.map
;