/
dcont.js
35 lines (35 loc) · 1.34 KB
/
dcont.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
/*
* THIS FILE IS AUTO GENERATED FROM 'lib/spec/dcont.kep'
* DO NOT EDIT
*/
define(["require", "exports"], (function(require, exports) {
"use strict";
var DContMonad;
(DContMonad = (function(instance, newPrompt, pushPrompt, withSubCont, pushSubCont) {
(instance.prototype.newPrompt = newPrompt);
(instance.newPrompt = instance.prototype.newPrompt);
(instance.prototype.pushPrompt = pushPrompt);
(instance.pushPrompt = instance.prototype.pushPrompt);
(instance.prototype.withSubCont = withSubCont);
(instance.withSubCont = instance.prototype.withSubCont);
(instance.prototype.pushSubCont = pushSubCont);
(instance.pushSubCont = instance.prototype.pushSubCont);
(instance.prototype.reset = (function(f) {
return newPrompt.chain((function(p) {
return pushPrompt(p, f(p));
}));
}));
(instance.reset = instance.prototype.reset);
(instance.prototype.shift = (function(p, f) {
var t = this;
return withSubCont(p, (function(k) {
return pushPrompt(p, f((function(c) {
return pushPrompt(p, pushSubCont(k, c));
})));
}));
}));
(instance.shift = instance.prototype.shift);
return instance;
}));
return DContMonad;
}));