Skip to content
This repository was archived by the owner on Oct 4, 2020. It is now read-only.

Commit 18cff12

Browse files
committed
Add code from eff-functions by @hdgarrood
1 parent fab73c7 commit 18cff12

File tree

2 files changed

+424
-0
lines changed

2 files changed

+424
-0
lines changed

src/Control/Monad/Eff/Uncurried.js

+229
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,229 @@
1+
exports.mkEffFn1 = function mkEffFn1(fn) {
2+
return function(x) {
3+
return fn(x)();
4+
};
5+
};
6+
7+
exports.mkEffFn2 = function mkEffFn2(fn) {
8+
return function(a, b) {
9+
return fn(a)(b)();
10+
};
11+
};
12+
13+
exports.mkEffFn3 = function mkEffFn3(fn) {
14+
return function(a, b, c) {
15+
return fn(a)(b)(c)();
16+
};
17+
};
18+
19+
exports.mkEffFn4 = function mkEffFn4(fn) {
20+
return function(a, b, c, d) {
21+
return fn(a)(b)(c)(d)();
22+
};
23+
};
24+
25+
exports.mkEffFn5 = function mkEffFn5(fn) {
26+
return function(a, b, c, d, e) {
27+
return fn(a)(b)(c)(d)(e)();
28+
};
29+
};
30+
31+
exports.mkEffFn6 = function mkEffFn6(fn) {
32+
return function(a, b, c, d, e, f) {
33+
return fn(a)(b)(c)(d)(e)(f)();
34+
};
35+
};
36+
37+
exports.mkEffFn7 = function mkEffFn7(fn) {
38+
return function(a, b, c, d, e, f, g) {
39+
return fn(a)(b)(c)(d)(e)(f)(g)();
40+
};
41+
};
42+
43+
exports.mkEffFn8 = function mkEffFn8(fn) {
44+
return function(a, b, c, d, e, f, g, h) {
45+
return fn(a)(b)(c)(d)(e)(f)(g)(h)();
46+
};
47+
};
48+
49+
exports.mkEffFn9 = function mkEffFn9(fn) {
50+
return function(a, b, c, d, e, f, g, h, i) {
51+
return fn(a)(b)(c)(d)(e)(f)(g)(h)(i)();
52+
};
53+
};
54+
55+
exports.mkEffFn10 = function mkEffFn10(fn) {
56+
return function(a, b, c, d, e, f, g, h, i, j) {
57+
return fn(a)(b)(c)(d)(e)(f)(g)(h)(i)(j)();
58+
};
59+
};
60+
61+
exports.runEffFn1 = function runEffFn1(fn) {
62+
return function(a) {
63+
return function() {
64+
return fn(a);
65+
};
66+
};
67+
};
68+
69+
exports.runEffFn2 = function runEffFn2(fn) {
70+
return function(a) {
71+
return function(b) {
72+
return function() {
73+
return fn(a, b);
74+
};
75+
};
76+
};
77+
};
78+
79+
exports.runEffFn3 = function runEffFn3(fn) {
80+
return function(a) {
81+
return function(b) {
82+
return function(c) {
83+
return function() {
84+
return fn(a, b, c);
85+
};
86+
};
87+
};
88+
};
89+
};
90+
91+
exports.runEffFn4 = function runEffFn4(fn) {
92+
return function(a) {
93+
return function(b) {
94+
return function(c) {
95+
return function(d) {
96+
return function() {
97+
return fn(a, b, c, d);
98+
};
99+
};
100+
};
101+
};
102+
};
103+
};
104+
105+
exports.runEffFn5 = function runEffFn5(fn) {
106+
return function(a) {
107+
return function(b) {
108+
return function(c) {
109+
return function(d) {
110+
return function(e) {
111+
return function() {
112+
return fn(a, b, c, d, e);
113+
};
114+
};
115+
};
116+
};
117+
};
118+
};
119+
};
120+
121+
exports.runEffFn6 = function runEffFn6(fn) {
122+
return function(a) {
123+
return function(b) {
124+
return function(c) {
125+
return function(d) {
126+
return function(e) {
127+
return function(f) {
128+
return function() {
129+
return fn(a, b, c, d, e, f);
130+
};
131+
};
132+
};
133+
};
134+
};
135+
};
136+
};
137+
};
138+
139+
exports.runEffFn7 = function runEffFn7(fn) {
140+
return function(a) {
141+
return function(b) {
142+
return function(c) {
143+
return function(d) {
144+
return function(e) {
145+
return function(f) {
146+
return function(g) {
147+
return function() {
148+
return fn(a, b, c, d, e, f, g);
149+
};
150+
};
151+
};
152+
};
153+
};
154+
};
155+
};
156+
};
157+
};
158+
159+
exports.runEffFn8 = function runEffFn8(fn) {
160+
return function(a) {
161+
return function(b) {
162+
return function(c) {
163+
return function(d) {
164+
return function(e) {
165+
return function(f) {
166+
return function(g) {
167+
return function(h) {
168+
return function() {
169+
return fn(a, b, c, d, e, f, g, h);
170+
};
171+
};
172+
};
173+
};
174+
};
175+
};
176+
};
177+
};
178+
};
179+
};
180+
181+
exports.runEffFn9 = function runEffFn9(fn) {
182+
return function(a) {
183+
return function(b) {
184+
return function(c) {
185+
return function(d) {
186+
return function(e) {
187+
return function(f) {
188+
return function(g) {
189+
return function(h) {
190+
return function(i) {
191+
return function() {
192+
return fn(a, b, c, d, e, f, g, h, i);
193+
};
194+
};
195+
};
196+
};
197+
};
198+
};
199+
};
200+
};
201+
};
202+
};
203+
};
204+
205+
exports.runEffFn10 = function runEffFn10(fn) {
206+
return function(a) {
207+
return function(b) {
208+
return function(c) {
209+
return function(d) {
210+
return function(e) {
211+
return function(f) {
212+
return function(g) {
213+
return function(h) {
214+
return function(i) {
215+
return function(j) {
216+
return function() {
217+
return fn(a, b, c, d, e, f, g, h, i, j);
218+
};
219+
};
220+
};
221+
};
222+
};
223+
};
224+
};
225+
};
226+
};
227+
};
228+
};
229+
};

0 commit comments

Comments
 (0)