was.js – Diff between revs 35 and 40
?pathlinks?
Rev 35 | Rev 40 | |||
---|---|---|---|---|
Line 1... | Line 1... | |||
1 | /*! was.js - v1.0.1 - 2019-08-01 |
1 | /*! was.js - v1.0.3 - 2019-08-01 |
|
2 | * http://grimore.org |
2 | * http://grimore.org |
|
3 | * Copyright (c) 2019 [object Object]; Licensed GPL-3.0 */ |
3 | * Copyright (c) 2019 [object Object]; Licensed GPL-3.0 */ |
|
4 | /* Copyright (C) 2017 Wizardry and Steamworks - License: GNU GPLv3 */ |
4 | /* Copyright (C) 2017 Wizardry and Steamworks - License: GNU GPLv3 */ |
|
5 | /*************************************************************************/ |
5 | /*************************************************************************/ |
|
6 | function wasProduct(a, b) { |
6 | function wasProduct(a, b) { |
|
Line 216... | Line 216... | |||
216 | |
216 | |
|
217 | /* Copyright (C) 2017 Wizardry and Steamworks - License: GNU GPLv3 */ |
217 | /* Copyright (C) 2017 Wizardry and Steamworks - License: GNU GPLv3 */ |
|
218 | /*************************************************************************/ |
218 | /*************************************************************************/ |
|
219 | /* fuss/lambda_calculus/functional_programming/aggregators @ grimore.org */ |
219 | /* fuss/lambda_calculus/functional_programming/aggregators @ grimore.org */ |
|
220 | /*************************************************************************/ |
- | ||
221 | // Vanilla ES6 JavaScript |
220 | /*************************************************************************/ |
|
222 | function wasSwitch() { |
221 | function wasSwitch() { |
|
223 | if(arguments.length - 2 % 2 !== 0) { |
222 | if(arguments.length % 2 !== 0) { |
|
224 | throw "Pairs of predicates expected for cases"; |
223 | throw "Pairs of predicates expected for cases"; |
|
Line 225... | Line 224... | |||
225 | } |
224 | } |
|
226 | |
225 | |
|
227 | (Array.isArray(arguments[0]) ? arguments[0] : [ arguments[0] ]).forEach((s) => { |
226 | (Array.isArray(arguments[0]) ? arguments[0] : [ arguments[0] ]).forEach(function(s) { |
|
228 | var m = false; |
227 | var m = false; |
|
229 | for(var i = 2; i < arguments.length; i += 2) { |
228 | for(var i = 2; i < arguments.length; i += 2) { |
|
230 | if(!arguments[i](s)) { |
229 | if(!arguments[i](s)) { |