rubico 2.7.10 → 2.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/_internal/curryArity.js +14 -12
- package/_internal/mapMapEntries.js +1 -1
- package/_internal/objectMapEntries.js +1 -1
- package/curry.js +59 -3
- package/dist/Transducer.es.js +1 -1
- package/dist/Transducer.es.min.js +1 -1
- package/dist/Transducer.js +1 -1
- package/dist/Transducer.min.js +1 -1
- package/dist/Transducer.mjs +1 -1
- package/dist/__.es.js +1 -1
- package/dist/__.es.min.js +1 -1
- package/dist/__.js +1 -1
- package/dist/__.min.js +1 -1
- package/dist/__.mjs +1 -1
- package/dist/all.es.js +1 -1
- package/dist/all.es.min.js +1 -1
- package/dist/all.js +1 -1
- package/dist/all.min.js +1 -1
- package/dist/all.mjs +1 -1
- package/dist/always.es.js +1 -1
- package/dist/always.es.min.js +1 -1
- package/dist/always.js +1 -1
- package/dist/always.min.js +1 -1
- package/dist/always.mjs +1 -1
- package/dist/and.es.js +1 -1
- package/dist/and.es.min.js +1 -1
- package/dist/and.js +1 -1
- package/dist/and.min.js +1 -1
- package/dist/and.mjs +1 -1
- package/dist/assign.es.js +1 -1
- package/dist/assign.es.min.js +1 -1
- package/dist/assign.js +1 -1
- package/dist/assign.min.js +1 -1
- package/dist/assign.mjs +1 -1
- package/dist/compose.es.js +1 -1
- package/dist/compose.es.min.js +1 -1
- package/dist/compose.js +1 -1
- package/dist/compose.min.js +1 -1
- package/dist/compose.mjs +1 -1
- package/dist/curry.es.js +17 -13
- package/dist/curry.es.min.js +2 -2
- package/dist/curry.js +17 -13
- package/dist/curry.min.js +2 -2
- package/dist/curry.mjs +17 -13
- package/dist/eq.es.js +1 -1
- package/dist/eq.es.min.js +1 -1
- package/dist/eq.js +1 -1
- package/dist/eq.min.js +1 -1
- package/dist/eq.mjs +1 -1
- package/dist/every.es.js +1 -1
- package/dist/every.es.min.js +1 -1
- package/dist/every.js +1 -1
- package/dist/every.min.js +1 -1
- package/dist/every.mjs +1 -1
- package/dist/filter.es.js +1 -1
- package/dist/filter.es.min.js +1 -1
- package/dist/filter.js +1 -1
- package/dist/filter.min.js +1 -1
- package/dist/filter.mjs +1 -1
- package/dist/flatMap.es.js +1 -1
- package/dist/flatMap.es.min.js +1 -1
- package/dist/flatMap.js +1 -1
- package/dist/flatMap.min.js +1 -1
- package/dist/flatMap.mjs +1 -1
- package/dist/forEach.es.js +1 -1
- package/dist/forEach.es.min.js +1 -1
- package/dist/forEach.js +1 -1
- package/dist/forEach.min.js +1 -1
- package/dist/forEach.mjs +1 -1
- package/dist/get.es.js +1 -1
- package/dist/get.es.min.js +1 -1
- package/dist/get.js +1 -1
- package/dist/get.min.js +1 -1
- package/dist/get.mjs +1 -1
- package/dist/gt.es.js +1 -1
- package/dist/gt.es.min.js +1 -1
- package/dist/gt.js +1 -1
- package/dist/gt.min.js +1 -1
- package/dist/gt.mjs +1 -1
- package/dist/gte.es.js +1 -1
- package/dist/gte.es.min.js +1 -1
- package/dist/gte.js +1 -1
- package/dist/gte.min.js +1 -1
- package/dist/gte.mjs +1 -1
- package/dist/lt.es.js +1 -1
- package/dist/lt.es.min.js +1 -1
- package/dist/lt.js +1 -1
- package/dist/lt.min.js +1 -1
- package/dist/lt.mjs +1 -1
- package/dist/lte.es.js +1 -1
- package/dist/lte.es.min.js +1 -1
- package/dist/lte.js +1 -1
- package/dist/lte.min.js +1 -1
- package/dist/lte.mjs +1 -1
- package/dist/map.es.js +13 -13
- package/dist/map.es.min.js +2 -2
- package/dist/map.js +13 -13
- package/dist/map.min.js +2 -2
- package/dist/map.mjs +13 -13
- package/dist/not.es.js +1 -1
- package/dist/not.es.min.js +1 -1
- package/dist/not.js +1 -1
- package/dist/not.min.js +1 -1
- package/dist/not.mjs +1 -1
- package/dist/omit.es.js +1 -1
- package/dist/omit.es.min.js +1 -1
- package/dist/omit.js +1 -1
- package/dist/omit.min.js +1 -1
- package/dist/omit.mjs +1 -1
- package/dist/or.es.js +1 -1
- package/dist/or.es.min.js +1 -1
- package/dist/or.js +1 -1
- package/dist/or.min.js +1 -1
- package/dist/or.mjs +1 -1
- package/dist/pick.es.js +1 -1
- package/dist/pick.es.min.js +1 -1
- package/dist/pick.js +1 -1
- package/dist/pick.min.js +1 -1
- package/dist/pick.mjs +1 -1
- package/dist/pipe.es.js +1 -1
- package/dist/pipe.es.min.js +1 -1
- package/dist/pipe.js +1 -1
- package/dist/pipe.min.js +1 -1
- package/dist/pipe.mjs +1 -1
- package/dist/reduce.es.js +1 -1
- package/dist/reduce.es.min.js +1 -1
- package/dist/reduce.js +1 -1
- package/dist/reduce.min.js +1 -1
- package/dist/reduce.mjs +1 -1
- package/dist/rubico.es.js +19 -15
- package/dist/rubico.es.min.js +2 -2
- package/dist/rubico.global.js +19 -15
- package/dist/rubico.global.min.js +2 -2
- package/dist/rubico.js +19 -15
- package/dist/rubico.min.js +2 -2
- package/dist/rubico.mjs +19 -15
- package/dist/set.es.js +1 -1
- package/dist/set.es.min.js +1 -1
- package/dist/set.js +1 -1
- package/dist/set.min.js +1 -1
- package/dist/set.mjs +1 -1
- package/dist/some.es.js +1 -1
- package/dist/some.es.min.js +1 -1
- package/dist/some.js +1 -1
- package/dist/some.min.js +1 -1
- package/dist/some.mjs +1 -1
- package/dist/switchCase.es.js +1 -1
- package/dist/switchCase.es.min.js +1 -1
- package/dist/switchCase.js +1 -1
- package/dist/switchCase.min.js +1 -1
- package/dist/switchCase.mjs +1 -1
- package/dist/tap.es.js +1 -1
- package/dist/tap.es.min.js +1 -1
- package/dist/tap.js +1 -1
- package/dist/tap.min.js +1 -1
- package/dist/tap.mjs +1 -1
- package/dist/thunkify.es.js +1 -1
- package/dist/thunkify.es.min.js +1 -1
- package/dist/thunkify.js +1 -1
- package/dist/thunkify.min.js +1 -1
- package/dist/thunkify.mjs +1 -1
- package/dist/transform.es.js +1 -1
- package/dist/transform.es.min.js +1 -1
- package/dist/transform.js +1 -1
- package/dist/transform.min.js +1 -1
- package/dist/transform.mjs +1 -1
- package/dist/tryCatch.es.js +1 -1
- package/dist/tryCatch.es.min.js +1 -1
- package/dist/tryCatch.js +1 -1
- package/dist/tryCatch.min.js +1 -1
- package/dist/tryCatch.mjs +1 -1
- package/dist/x/append.es.js +1 -1
- package/dist/x/append.es.min.js +1 -1
- package/dist/x/append.js +1 -1
- package/dist/x/append.min.js +1 -1
- package/dist/x/append.mjs +1 -1
- package/dist/x/callProp.es.js +1 -1
- package/dist/x/callProp.es.min.js +1 -1
- package/dist/x/callProp.js +1 -1
- package/dist/x/callProp.min.js +1 -1
- package/dist/x/callProp.mjs +1 -1
- package/dist/x/defaultsDeep.es.js +1 -1
- package/dist/x/defaultsDeep.es.min.js +1 -1
- package/dist/x/defaultsDeep.js +1 -1
- package/dist/x/defaultsDeep.min.js +1 -1
- package/dist/x/defaultsDeep.mjs +1 -1
- package/dist/x/differenceWith.es.js +1 -1
- package/dist/x/differenceWith.es.min.js +1 -1
- package/dist/x/differenceWith.js +1 -1
- package/dist/x/differenceWith.min.js +1 -1
- package/dist/x/differenceWith.mjs +1 -1
- package/dist/x/filterOut.es.js +1 -1
- package/dist/x/filterOut.es.min.js +1 -1
- package/dist/x/filterOut.js +1 -1
- package/dist/x/filterOut.min.js +1 -1
- package/dist/x/filterOut.mjs +1 -1
- package/dist/x/find.es.js +1 -1
- package/dist/x/find.es.min.js +1 -1
- package/dist/x/find.js +1 -1
- package/dist/x/find.min.js +1 -1
- package/dist/x/find.mjs +1 -1
- package/dist/x/findIndex.es.js +1 -1
- package/dist/x/findIndex.es.min.js +1 -1
- package/dist/x/findIndex.js +1 -1
- package/dist/x/findIndex.min.js +1 -1
- package/dist/x/findIndex.mjs +1 -1
- package/dist/x/first.es.js +1 -1
- package/dist/x/first.es.min.js +1 -1
- package/dist/x/first.js +1 -1
- package/dist/x/first.min.js +1 -1
- package/dist/x/first.mjs +1 -1
- package/dist/x/flatten.es.js +1 -1
- package/dist/x/flatten.es.min.js +1 -1
- package/dist/x/flatten.js +1 -1
- package/dist/x/flatten.min.js +1 -1
- package/dist/x/flatten.mjs +1 -1
- package/dist/x/groupBy.es.js +1 -1
- package/dist/x/groupBy.es.min.js +1 -1
- package/dist/x/groupBy.js +1 -1
- package/dist/x/groupBy.min.js +1 -1
- package/dist/x/groupBy.mjs +1 -1
- package/dist/x/has.es.js +1 -1
- package/dist/x/has.es.min.js +1 -1
- package/dist/x/has.js +1 -1
- package/dist/x/has.min.js +1 -1
- package/dist/x/has.mjs +1 -1
- package/dist/x/identity.es.js +1 -1
- package/dist/x/identity.es.min.js +1 -1
- package/dist/x/identity.js +1 -1
- package/dist/x/identity.min.js +1 -1
- package/dist/x/identity.mjs +1 -1
- package/dist/x/includes.es.js +1 -1
- package/dist/x/includes.es.min.js +1 -1
- package/dist/x/includes.js +1 -1
- package/dist/x/includes.min.js +1 -1
- package/dist/x/includes.mjs +1 -1
- package/dist/x/isDeepEqual.es.js +1 -1
- package/dist/x/isDeepEqual.es.min.js +1 -1
- package/dist/x/isDeepEqual.js +1 -1
- package/dist/x/isDeepEqual.min.js +1 -1
- package/dist/x/isDeepEqual.mjs +1 -1
- package/dist/x/isEmpty.es.js +1 -1
- package/dist/x/isEmpty.es.min.js +1 -1
- package/dist/x/isEmpty.js +1 -1
- package/dist/x/isEmpty.min.js +1 -1
- package/dist/x/isEmpty.mjs +1 -1
- package/dist/x/isEqual.es.js +1 -1
- package/dist/x/isEqual.es.min.js +1 -1
- package/dist/x/isEqual.js +1 -1
- package/dist/x/isEqual.min.js +1 -1
- package/dist/x/isEqual.mjs +1 -1
- package/dist/x/isFunction.es.js +1 -1
- package/dist/x/isFunction.es.min.js +1 -1
- package/dist/x/isFunction.js +1 -1
- package/dist/x/isFunction.min.js +1 -1
- package/dist/x/isFunction.mjs +1 -1
- package/dist/x/isIn.es.js +1 -1
- package/dist/x/isIn.es.min.js +1 -1
- package/dist/x/isIn.js +1 -1
- package/dist/x/isIn.min.js +1 -1
- package/dist/x/isIn.mjs +1 -1
- package/dist/x/isObject.es.js +1 -1
- package/dist/x/isObject.es.min.js +1 -1
- package/dist/x/isObject.js +1 -1
- package/dist/x/isObject.min.js +1 -1
- package/dist/x/isObject.mjs +1 -1
- package/dist/x/isString.es.js +1 -1
- package/dist/x/isString.es.min.js +1 -1
- package/dist/x/isString.js +1 -1
- package/dist/x/isString.min.js +1 -1
- package/dist/x/isString.mjs +1 -1
- package/dist/x/keys.es.js +1 -1
- package/dist/x/keys.es.min.js +1 -1
- package/dist/x/keys.js +1 -1
- package/dist/x/keys.min.js +1 -1
- package/dist/x/keys.mjs +1 -1
- package/dist/x/last.es.js +1 -1
- package/dist/x/last.es.min.js +1 -1
- package/dist/x/last.js +1 -1
- package/dist/x/last.min.js +1 -1
- package/dist/x/last.mjs +1 -1
- package/dist/x/maxBy.es.js +1 -1
- package/dist/x/maxBy.es.min.js +1 -1
- package/dist/x/maxBy.js +1 -1
- package/dist/x/maxBy.min.js +1 -1
- package/dist/x/maxBy.mjs +1 -1
- package/dist/x/noop.es.js +1 -1
- package/dist/x/noop.es.min.js +1 -1
- package/dist/x/noop.js +1 -1
- package/dist/x/noop.min.js +1 -1
- package/dist/x/noop.mjs +1 -1
- package/dist/x/pluck.es.js +13 -13
- package/dist/x/pluck.es.min.js +2 -2
- package/dist/x/pluck.js +13 -13
- package/dist/x/pluck.min.js +2 -2
- package/dist/x/pluck.mjs +13 -13
- package/dist/x/prepend.es.js +1 -1
- package/dist/x/prepend.es.min.js +1 -1
- package/dist/x/prepend.js +1 -1
- package/dist/x/prepend.min.js +1 -1
- package/dist/x/prepend.mjs +1 -1
- package/dist/x/size.es.js +1 -1
- package/dist/x/size.es.min.js +1 -1
- package/dist/x/size.js +1 -1
- package/dist/x/size.min.js +1 -1
- package/dist/x/size.mjs +1 -1
- package/dist/x/trace.es.js +1 -1
- package/dist/x/trace.es.min.js +1 -1
- package/dist/x/trace.js +1 -1
- package/dist/x/trace.min.js +1 -1
- package/dist/x/trace.mjs +1 -1
- package/dist/x/unionWith.es.js +1 -1
- package/dist/x/unionWith.es.min.js +1 -1
- package/dist/x/unionWith.js +1 -1
- package/dist/x/unionWith.min.js +1 -1
- package/dist/x/unionWith.mjs +1 -1
- package/dist/x/uniq.es.js +1 -1
- package/dist/x/uniq.es.min.js +1 -1
- package/dist/x/uniq.js +1 -1
- package/dist/x/uniq.min.js +1 -1
- package/dist/x/uniq.mjs +1 -1
- package/dist/x/unless.es.js +1 -1
- package/dist/x/unless.es.min.js +1 -1
- package/dist/x/unless.js +1 -1
- package/dist/x/unless.min.js +1 -1
- package/dist/x/unless.mjs +1 -1
- package/dist/x/values.es.js +1 -1
- package/dist/x/values.es.min.js +1 -1
- package/dist/x/values.js +1 -1
- package/dist/x/values.min.js +1 -1
- package/dist/x/values.mjs +1 -1
- package/dist/x/when.es.js +1 -1
- package/dist/x/when.es.min.js +1 -1
- package/dist/x/when.js +1 -1
- package/dist/x/when.min.js +1 -1
- package/dist/x/when.mjs +1 -1
- package/es.js +19 -15
- package/index.js +19 -15
- package/package.json +1 -1
package/_internal/curryArity.js
CHANGED
|
@@ -9,13 +9,14 @@ const __ = require('./placeholder')
|
|
|
9
9
|
*
|
|
10
10
|
* var arity number,
|
|
11
11
|
* func function,
|
|
12
|
+
* context object,
|
|
12
13
|
* args Array<__|any>,
|
|
13
14
|
* curried function
|
|
14
15
|
*
|
|
15
|
-
* _curryArity(arity, func, args) -> curried|any
|
|
16
|
+
* _curryArity(context, arity, func, args) -> curried|any
|
|
16
17
|
* ```
|
|
17
18
|
*/
|
|
18
|
-
const _curryArity = (arity, func, args) => function curried(...curriedArgs) {
|
|
19
|
+
const _curryArity = (arity, func, context, args) => function curried(...curriedArgs) {
|
|
19
20
|
const argsLength = args.length,
|
|
20
21
|
curriedArgsLength = curriedArgs.length,
|
|
21
22
|
nextArgs = []
|
|
@@ -36,8 +37,8 @@ const _curryArity = (arity, func, args) => function curried(...curriedArgs) {
|
|
|
36
37
|
}
|
|
37
38
|
if (nextArgs.length == arity) {
|
|
38
39
|
return numCurriedPlaceholders == 0
|
|
39
|
-
? func(
|
|
40
|
-
: curryArity(arity, func, nextArgs)
|
|
40
|
+
? func.apply(context, nextArgs)
|
|
41
|
+
: curryArity(arity, func, context, nextArgs)
|
|
41
42
|
}
|
|
42
43
|
}
|
|
43
44
|
|
|
@@ -49,11 +50,11 @@ const _curryArity = (arity, func, args) => function curried(...curriedArgs) {
|
|
|
49
50
|
nextArgs.push(curriedArg)
|
|
50
51
|
if (nextArgs.length == arity) {
|
|
51
52
|
return numCurriedPlaceholders == 0
|
|
52
|
-
? func(
|
|
53
|
-
: curryArity(arity, func, nextArgs)
|
|
53
|
+
? func.apply(context, nextArgs)
|
|
54
|
+
: curryArity(arity, func, context, nextArgs)
|
|
54
55
|
}
|
|
55
56
|
}
|
|
56
|
-
return curryArity(arity, func, nextArgs)
|
|
57
|
+
return curryArity(arity, func, context, nextArgs)
|
|
57
58
|
}
|
|
58
59
|
|
|
59
60
|
/**
|
|
@@ -65,29 +66,30 @@ const _curryArity = (arity, func, args) => function curried(...curriedArgs) {
|
|
|
65
66
|
*
|
|
66
67
|
* var arity number,
|
|
67
68
|
* func function,
|
|
69
|
+
* context object,
|
|
68
70
|
* args Array<__|any>,
|
|
69
71
|
* curried function
|
|
70
72
|
*
|
|
71
|
-
* curryArity(arity, func, args) -> curried|any
|
|
73
|
+
* curryArity(arity, func, context, args) -> curried|any
|
|
72
74
|
* ```
|
|
73
75
|
*
|
|
74
76
|
* @description
|
|
75
77
|
* Create a curried version of a function with specified arity.
|
|
76
78
|
*/
|
|
77
79
|
|
|
78
|
-
const curryArity = function (arity, func, args) {
|
|
80
|
+
const curryArity = function (arity, func, context, args) {
|
|
79
81
|
const argsLength = args.length
|
|
80
82
|
if (argsLength < arity) {
|
|
81
|
-
return _curryArity(arity, func, args)
|
|
83
|
+
return _curryArity(arity, func, context, args)
|
|
82
84
|
}
|
|
83
85
|
let argsIndex = -1
|
|
84
86
|
while (++argsIndex < argsLength) {
|
|
85
87
|
const arg = args[argsIndex]
|
|
86
88
|
if (arg == __) {
|
|
87
|
-
return _curryArity(arity, func, args)
|
|
89
|
+
return _curryArity(arity, func, context, args)
|
|
88
90
|
}
|
|
89
91
|
}
|
|
90
|
-
return func(
|
|
92
|
+
return func.apply(context, args)
|
|
91
93
|
}
|
|
92
94
|
|
|
93
95
|
module.exports = curryArity
|
|
@@ -11,7 +11,7 @@ const mapMapEntriesForEachCallback = (
|
|
|
11
11
|
) => function callback(value, key) {
|
|
12
12
|
const mapping = mapper([key, value])
|
|
13
13
|
if (isPromise(mapping)) {
|
|
14
|
-
promises.push(mapping.then(spread2(curryArity(3, mapSet, [result]))))
|
|
14
|
+
promises.push(mapping.then(spread2(curryArity(3, mapSet, this, [result]))))
|
|
15
15
|
} else {
|
|
16
16
|
result.set(mapping[0], mapping[1])
|
|
17
17
|
}
|
|
@@ -24,7 +24,7 @@ const objectMapEntries = function (object, mapper) {
|
|
|
24
24
|
mapping = mapper([key, value])
|
|
25
25
|
if (isPromise(mapping)) {
|
|
26
26
|
promises.push(mapping.then(
|
|
27
|
-
spread2(curryArity(3, objectSet, [result]))))
|
|
27
|
+
spread2(curryArity(3, objectSet, this, [result]))))
|
|
28
28
|
} else {
|
|
29
29
|
result[mapping[0]] = mapping[1]
|
|
30
30
|
}
|
package/curry.js
CHANGED
|
@@ -17,7 +17,7 @@ const curryArity = require('./_internal/curryArity')
|
|
|
17
17
|
* ```
|
|
18
18
|
*
|
|
19
19
|
* @description
|
|
20
|
-
*
|
|
20
|
+
* Enables partial application of a function's arguments in any order. Provide the placeholder value `__` to specify an argument to be resolved in the partially applied function.
|
|
21
21
|
*
|
|
22
22
|
* ```javascript [playground]
|
|
23
23
|
* const add = (a, b, c) => a + b + c
|
|
@@ -38,11 +38,12 @@ const curryArity = require('./_internal/curryArity')
|
|
|
38
38
|
* * [thunkify](/docs/thunkify)
|
|
39
39
|
* * [always](/docs/always)
|
|
40
40
|
* * [curry.arity](/docs/curry.arity)
|
|
41
|
+
* * [curry.call](/docs/curry.call)
|
|
41
42
|
* * [__](/docs/__)
|
|
42
43
|
* * [Transducer.map](/docs/Transducer.map)
|
|
43
44
|
*
|
|
44
45
|
*/
|
|
45
|
-
const curry = (func, ...args) => curryArity(func.length, func, args)
|
|
46
|
+
const curry = (func, ...args) => curryArity(func.length, func, this, args)
|
|
46
47
|
|
|
47
48
|
/**
|
|
48
49
|
* @name curry.arity
|
|
@@ -74,12 +75,67 @@ const curry = (func, ...args) => curryArity(func.length, func, args)
|
|
|
74
75
|
* * [thunkify](/docs/thunkify)
|
|
75
76
|
* * [always](/docs/always)
|
|
76
77
|
* * [curry](/docs/curry)
|
|
78
|
+
* * [curry.call](/docs/curry.call)
|
|
77
79
|
* * [__](/docs/__)
|
|
78
80
|
* * [Transducer.map](/docs/Transducer.map)
|
|
79
81
|
*
|
|
80
82
|
*/
|
|
81
83
|
curry.arity = function curryArity_(arity, func, ...args) {
|
|
82
|
-
return curryArity(arity, func, args)
|
|
84
|
+
return curryArity(arity, func, this, args)
|
|
83
85
|
}
|
|
84
86
|
|
|
87
|
+
/**
|
|
88
|
+
* @name curry.call
|
|
89
|
+
*
|
|
90
|
+
* @synopsis
|
|
91
|
+
* ```coffeescript [specscript]
|
|
92
|
+
* type __ = Symbol(placeholder)
|
|
93
|
+
* type ArgsWithPlaceholder = Array<__|any>
|
|
94
|
+
*
|
|
95
|
+
* n number
|
|
96
|
+
* args ArgsWithPlaceholder
|
|
97
|
+
* moreArgs ArgsWithPlaceholder
|
|
98
|
+
*
|
|
99
|
+
* curry.call(func function, context object, ...args) -> curriedFuncOrResult function|any
|
|
100
|
+
* curriedFuncOrResult(...moreArgs) -> anotherCurriedFuncOrResult function|any
|
|
101
|
+
* ```
|
|
102
|
+
*
|
|
103
|
+
* @description
|
|
104
|
+
* `curry` with specified context.
|
|
105
|
+
*
|
|
106
|
+
* ```javascript [playground]
|
|
107
|
+
* class Point {
|
|
108
|
+
* constructor(x, y) {
|
|
109
|
+
* this.x = x
|
|
110
|
+
* this.y = y
|
|
111
|
+
* }
|
|
112
|
+
*
|
|
113
|
+
* toString() {
|
|
114
|
+
* return `(${this.x}, ${this.y})`
|
|
115
|
+
* }
|
|
116
|
+
* }
|
|
117
|
+
*
|
|
118
|
+
* const point = new Point(100, 100)
|
|
119
|
+
*
|
|
120
|
+
* const box = { x: 5, y: 10 }
|
|
121
|
+
*
|
|
122
|
+
* console.log(curry.call(point.toString, point))
|
|
123
|
+
* console.log(curry.call(point.toString, box))
|
|
124
|
+
* ```
|
|
125
|
+
*
|
|
126
|
+
* See also:
|
|
127
|
+
* * [eq](/docs/eq)
|
|
128
|
+
* * [thunkify](/docs/thunkify)
|
|
129
|
+
* * [always](/docs/always)
|
|
130
|
+
* * [curry](/docs/curry)
|
|
131
|
+
* * [curry.arity](/docs/curry.arity)
|
|
132
|
+
* * [__](/docs/__)
|
|
133
|
+
* * [Transducer.map](/docs/Transducer.map)
|
|
134
|
+
*
|
|
135
|
+
*/
|
|
136
|
+
curry.call = function call(func, context, ...args) {
|
|
137
|
+
return curryArity(func.length, func, context, args)
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
|
|
85
141
|
module.exports = curry
|
package/dist/Transducer.es.js
CHANGED
package/dist/Transducer.js
CHANGED
package/dist/Transducer.min.js
CHANGED
package/dist/Transducer.mjs
CHANGED
package/dist/__.es.js
CHANGED
package/dist/__.es.min.js
CHANGED
package/dist/__.js
CHANGED
package/dist/__.min.js
CHANGED
package/dist/__.mjs
CHANGED
package/dist/all.es.js
CHANGED
package/dist/all.es.min.js
CHANGED
package/dist/all.js
CHANGED
package/dist/all.min.js
CHANGED
package/dist/all.mjs
CHANGED
package/dist/always.es.js
CHANGED
package/dist/always.es.min.js
CHANGED
package/dist/always.js
CHANGED
package/dist/always.min.js
CHANGED
package/dist/always.mjs
CHANGED
package/dist/and.es.js
CHANGED
package/dist/and.es.min.js
CHANGED
package/dist/and.js
CHANGED
package/dist/and.min.js
CHANGED
package/dist/and.mjs
CHANGED
package/dist/assign.es.js
CHANGED
package/dist/assign.es.min.js
CHANGED
package/dist/assign.js
CHANGED
package/dist/assign.min.js
CHANGED
package/dist/assign.mjs
CHANGED
package/dist/compose.es.js
CHANGED
package/dist/compose.es.min.js
CHANGED
package/dist/compose.js
CHANGED
package/dist/compose.min.js
CHANGED
package/dist/compose.mjs
CHANGED
package/dist/curry.es.js
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* rubico v2.
|
|
2
|
+
* rubico v2.8.0
|
|
3
3
|
* https://github.com/a-synchronous/rubico
|
|
4
4
|
* (c) 2019-2026 Richard Tong
|
|
5
5
|
* rubico may be freely distributed under the MIT license.
|
|
6
6
|
*/
|
|
7
7
|
const __ = Symbol.for('placeholder')
|
|
8
8
|
|
|
9
|
-
const _curryArity = (arity, func, args) => function curried(...curriedArgs) {
|
|
9
|
+
const _curryArity = (arity, func, context, args) => function curried(...curriedArgs) {
|
|
10
10
|
const argsLength = args.length,
|
|
11
11
|
curriedArgsLength = curriedArgs.length,
|
|
12
12
|
nextArgs = []
|
|
@@ -27,8 +27,8 @@ const _curryArity = (arity, func, args) => function curried(...curriedArgs) {
|
|
|
27
27
|
}
|
|
28
28
|
if (nextArgs.length == arity) {
|
|
29
29
|
return numCurriedPlaceholders == 0
|
|
30
|
-
? func(
|
|
31
|
-
: curryArity(arity, func, nextArgs)
|
|
30
|
+
? func.apply(context, nextArgs)
|
|
31
|
+
: curryArity(arity, func, context, nextArgs)
|
|
32
32
|
}
|
|
33
33
|
}
|
|
34
34
|
|
|
@@ -40,32 +40,36 @@ const _curryArity = (arity, func, args) => function curried(...curriedArgs) {
|
|
|
40
40
|
nextArgs.push(curriedArg)
|
|
41
41
|
if (nextArgs.length == arity) {
|
|
42
42
|
return numCurriedPlaceholders == 0
|
|
43
|
-
? func(
|
|
44
|
-
: curryArity(arity, func, nextArgs)
|
|
43
|
+
? func.apply(context, nextArgs)
|
|
44
|
+
: curryArity(arity, func, context, nextArgs)
|
|
45
45
|
}
|
|
46
46
|
}
|
|
47
|
-
return curryArity(arity, func, nextArgs)
|
|
47
|
+
return curryArity(arity, func, context, nextArgs)
|
|
48
48
|
}
|
|
49
49
|
|
|
50
|
-
const curryArity = function (arity, func, args) {
|
|
50
|
+
const curryArity = function (arity, func, context, args) {
|
|
51
51
|
const argsLength = args.length
|
|
52
52
|
if (argsLength < arity) {
|
|
53
|
-
return _curryArity(arity, func, args)
|
|
53
|
+
return _curryArity(arity, func, context, args)
|
|
54
54
|
}
|
|
55
55
|
let argsIndex = -1
|
|
56
56
|
while (++argsIndex < argsLength) {
|
|
57
57
|
const arg = args[argsIndex]
|
|
58
58
|
if (arg == __) {
|
|
59
|
-
return _curryArity(arity, func, args)
|
|
59
|
+
return _curryArity(arity, func, context, args)
|
|
60
60
|
}
|
|
61
61
|
}
|
|
62
|
-
return func(
|
|
62
|
+
return func.apply(context, args)
|
|
63
63
|
}
|
|
64
64
|
|
|
65
|
-
const curry = (func, ...args) => curryArity(func.length, func, args)
|
|
65
|
+
const curry = (func, ...args) => curryArity(func.length, func, this, args)
|
|
66
66
|
|
|
67
67
|
curry.arity = function curryArity_(arity, func, ...args) {
|
|
68
|
-
return curryArity(arity, func, args)
|
|
68
|
+
return curryArity(arity, func, this, args)
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
curry.call = function call(func, context, ...args) {
|
|
72
|
+
return curryArity(func.length, func, context, args)
|
|
69
73
|
}
|
|
70
74
|
|
|
71
75
|
export default curry
|
package/dist/curry.es.min.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* rubico v2.
|
|
2
|
+
* rubico v2.8.0
|
|
3
3
|
* https://github.com/a-synchronous/rubico
|
|
4
4
|
* (c) 2019-2026 Richard Tong
|
|
5
5
|
* rubico may be freely distributed under the MIT license.
|
|
6
6
|
*/
|
|
7
|
-
const __=Symbol.for("placeholder"),_curryArity=(r,t,u)=>function(...
|
|
7
|
+
const __=Symbol.for("placeholder"),_curryArity=(r,t,u,n)=>function(...y){const c=n.length,e=y.length,i=[];let l=-1,o=-1,f=0;for(;++l<c;){const c=n[l];if(c==__&&(o+=1)<e){const r=y[o];r==__&&(f+=1),i.push(r)}else i.push(c);if(i.length==r)return 0==f?t.apply(u,i):curryArity(r,t,u,i)}for(;++o<e;){const n=y[o];if(n==__&&(f+=1),i.push(n),i.length==r)return 0==f?t.apply(u,i):curryArity(r,t,u,i)}return curryArity(r,t,u,i)},curryArity=function(r,t,u,n){const y=n.length;if(y<r)return _curryArity(r,t,u,n);let c=-1;for(;++c<y;){if(n[c]==__)return _curryArity(r,t,u,n)}return t.apply(u,n)},curry=(r,...t)=>curryArity(r.length,r,this,t);curry.arity=function(r,t,...u){return curryArity(r,t,this,u)},curry.call=function(r,t,...u){return curryArity(r.length,r,t,u)};export default curry;
|
package/dist/curry.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* rubico v2.
|
|
2
|
+
* rubico v2.8.0
|
|
3
3
|
* https://github.com/a-synchronous/rubico
|
|
4
4
|
* (c) 2019-2026 Richard Tong
|
|
5
5
|
* rubico may be freely distributed under the MIT license.
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
}(typeof globalThis == 'object' ? globalThis : this, (function () { 'use strict'
|
|
13
13
|
const __ = Symbol.for('placeholder')
|
|
14
14
|
|
|
15
|
-
const _curryArity = (arity, func, args) => function curried(...curriedArgs) {
|
|
15
|
+
const _curryArity = (arity, func, context, args) => function curried(...curriedArgs) {
|
|
16
16
|
const argsLength = args.length,
|
|
17
17
|
curriedArgsLength = curriedArgs.length,
|
|
18
18
|
nextArgs = []
|
|
@@ -33,8 +33,8 @@ const _curryArity = (arity, func, args) => function curried(...curriedArgs) {
|
|
|
33
33
|
}
|
|
34
34
|
if (nextArgs.length == arity) {
|
|
35
35
|
return numCurriedPlaceholders == 0
|
|
36
|
-
? func(
|
|
37
|
-
: curryArity(arity, func, nextArgs)
|
|
36
|
+
? func.apply(context, nextArgs)
|
|
37
|
+
: curryArity(arity, func, context, nextArgs)
|
|
38
38
|
}
|
|
39
39
|
}
|
|
40
40
|
|
|
@@ -46,32 +46,36 @@ const _curryArity = (arity, func, args) => function curried(...curriedArgs) {
|
|
|
46
46
|
nextArgs.push(curriedArg)
|
|
47
47
|
if (nextArgs.length == arity) {
|
|
48
48
|
return numCurriedPlaceholders == 0
|
|
49
|
-
? func(
|
|
50
|
-
: curryArity(arity, func, nextArgs)
|
|
49
|
+
? func.apply(context, nextArgs)
|
|
50
|
+
: curryArity(arity, func, context, nextArgs)
|
|
51
51
|
}
|
|
52
52
|
}
|
|
53
|
-
return curryArity(arity, func, nextArgs)
|
|
53
|
+
return curryArity(arity, func, context, nextArgs)
|
|
54
54
|
}
|
|
55
55
|
|
|
56
|
-
const curryArity = function (arity, func, args) {
|
|
56
|
+
const curryArity = function (arity, func, context, args) {
|
|
57
57
|
const argsLength = args.length
|
|
58
58
|
if (argsLength < arity) {
|
|
59
|
-
return _curryArity(arity, func, args)
|
|
59
|
+
return _curryArity(arity, func, context, args)
|
|
60
60
|
}
|
|
61
61
|
let argsIndex = -1
|
|
62
62
|
while (++argsIndex < argsLength) {
|
|
63
63
|
const arg = args[argsIndex]
|
|
64
64
|
if (arg == __) {
|
|
65
|
-
return _curryArity(arity, func, args)
|
|
65
|
+
return _curryArity(arity, func, context, args)
|
|
66
66
|
}
|
|
67
67
|
}
|
|
68
|
-
return func(
|
|
68
|
+
return func.apply(context, args)
|
|
69
69
|
}
|
|
70
70
|
|
|
71
|
-
const curry = (func, ...args) => curryArity(func.length, func, args)
|
|
71
|
+
const curry = (func, ...args) => curryArity(func.length, func, this, args)
|
|
72
72
|
|
|
73
73
|
curry.arity = function curryArity_(arity, func, ...args) {
|
|
74
|
-
return curryArity(arity, func, args)
|
|
74
|
+
return curryArity(arity, func, this, args)
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
curry.call = function call(func, context, ...args) {
|
|
78
|
+
return curryArity(func.length, func, context, args)
|
|
75
79
|
}
|
|
76
80
|
|
|
77
81
|
return curry
|
package/dist/curry.min.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* rubico v2.
|
|
2
|
+
* rubico v2.8.0
|
|
3
3
|
* https://github.com/a-synchronous/rubico
|
|
4
4
|
* (c) 2019-2026 Richard Tong
|
|
5
5
|
* rubico may be freely distributed under the MIT license.
|
|
6
6
|
*/
|
|
7
7
|
|
|
8
|
-
!function(t,n){"object"==typeof module?module.exports=n:"function"==typeof define?define(()=>n):t.curry=n}("object"==typeof globalThis?globalThis:this,function(){"use strict";const t=Symbol.for("placeholder"),n=(n,o,r)=>function(...u){const f=
|
|
8
|
+
!function(t,n){"object"==typeof module?module.exports=n:"function"==typeof define?define(()=>n):t.curry=n}("object"==typeof globalThis?globalThis:this,function(){"use strict";const t=Symbol.for("placeholder"),n=(n,o,r,l)=>function(...u){const f=l.length,i=u.length,c=[];let s=-1,h=-1,p=0;for(;++s<f;){const f=l[s];if(f==t&&(h+=1)<i){const n=u[h];n==t&&(p+=1),c.push(n)}else c.push(f);if(c.length==n)return 0==p?o.apply(r,c):e(n,o,r,c)}for(;++h<i;){const l=u[h];if(l==t&&(p+=1),c.push(l),c.length==n)return 0==p?o.apply(r,c):e(n,o,r,c)}return e(n,o,r,c)},e=function(e,o,r,l){const u=l.length;if(u<e)return n(e,o,r,l);let f=-1;for(;++f<u;){if(l[f]==t)return n(e,o,r,l)}return o.apply(r,l)},o=(t,...n)=>e(t.length,t,this,n);return o.arity=function(t,n,...o){return e(t,n,this,o)},o.call=function(t,n,...o){return e(t.length,t,n,o)},o}());
|