UNPKG

molstar

Version:

A comprehensive macromolecular library.

120 lines 4.73 kB
"use strict"; /** * Copyright (c) 2017 mol* contributors, licensed under MIT, See LICENSE file for more info. * * @author David Sehnal <david.sehnal@gmail.com> */ Object.defineProperty(exports, "__esModule", { value: true }); exports.Predicates = void 0; var Predicates; (function (Predicates) { function isSetLike(x) { return !!x && !!x.has; } function eq(p, value) { return function (l) { return p(l) === value; }; } Predicates.eq = eq; function lt(p, value) { return function (l) { return p(l) < value; }; } Predicates.lt = lt; function lte(p, value) { return function (l) { return p(l) <= value; }; } Predicates.lte = lte; function gt(p, value) { return function (l) { return p(l) > value; }; } Predicates.gt = gt; function gte(p, value) { return function (l) { return p(l) >= value; }; } Predicates.gte = gte; function _true(ctx) { return true; } function _false(ctx) { return false; } function inSet(p, values) { if (isSetLike(values)) { return function (l) { return values.has(p(l)); }; } else { if (values.length === 0) return _false; var set_1 = new Set(); for (var i = 0; i < values.length; i++) set_1.add(values[i]); return function (l) { return set_1.has(p(l)); }; } } Predicates.inSet = inSet; function and() { var ps = []; for (var _i = 0; _i < arguments.length; _i++) { ps[_i] = arguments[_i]; } switch (ps.length) { case 0: return _true; case 1: return ps[0]; case 2: { var a_1 = ps[0], b_1 = ps[1]; return function (l) { return a_1(l) && b_1(l); }; } case 3: { var a_2 = ps[0], b_2 = ps[1], c_1 = ps[2]; return function (l) { return a_2(l) && b_2(l) && c_1(l); }; } case 4: { var a_3 = ps[0], b_3 = ps[1], c_2 = ps[2], d_1 = ps[3]; return function (l) { return a_3(l) && b_3(l) && c_2(l) && d_1(l); }; } case 5: { var a_4 = ps[0], b_4 = ps[1], c_3 = ps[2], d_2 = ps[3], e_1 = ps[4]; return function (l) { return a_4(l) && b_4(l) && c_3(l) && d_2(l) && e_1(l); }; } case 6: { var a_5 = ps[0], b_5 = ps[1], c_4 = ps[2], d_3 = ps[3], e_2 = ps[4], f_1 = ps[5]; return function (l) { return a_5(l) && b_5(l) && c_4(l) && d_3(l) && e_2(l) && f_1(l); }; } default: { var count_1 = ps.length; return function (l) { for (var i = 0; i < count_1; i++) if (!ps[i]) return false; return true; }; } } } Predicates.and = and; function or() { var ps = []; for (var _i = 0; _i < arguments.length; _i++) { ps[_i] = arguments[_i]; } switch (ps.length) { case 0: return _false; case 1: return ps[0]; case 2: { var a_6 = ps[0], b_6 = ps[1]; return function (l) { return a_6(l) || b_6(l); }; } case 3: { var a_7 = ps[0], b_7 = ps[1], c_5 = ps[2]; return function (l) { return a_7(l) || b_7(l) || c_5(l); }; } case 4: { var a_8 = ps[0], b_8 = ps[1], c_6 = ps[2], d_4 = ps[3]; return function (l) { return a_8(l) || b_8(l) || c_6(l) || d_4(l); }; } case 5: { var a_9 = ps[0], b_9 = ps[1], c_7 = ps[2], d_5 = ps[3], e_3 = ps[4]; return function (l) { return a_9(l) || b_9(l) || c_7(l) || d_5(l) || e_3(l); }; } case 6: { var a_10 = ps[0], b_10 = ps[1], c_8 = ps[2], d_6 = ps[3], e_4 = ps[4], f_2 = ps[5]; return function (l) { return a_10(l) || b_10(l) || c_8(l) || d_6(l) || e_4(l) || f_2(l); }; } default: { var count_2 = ps.length; return function (l) { for (var i = 0; i < count_2; i++) if (ps[i]) return true; return false; }; } } } Predicates.or = or; })(Predicates || (Predicates = {})); exports.Predicates = Predicates; //# sourceMappingURL=predicates.js.map