resin 0.3.1 → 0.4.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.
Files changed (84) hide show
  1. data/amber/bin/amberc +10 -350
  2. data/amber/js/Benchfib.deploy.js +80 -89
  3. data/amber/js/Benchfib.js +80 -89
  4. data/amber/js/Canvas.deploy.js +558 -545
  5. data/amber/js/Canvas.js +563 -545
  6. data/amber/js/Compiler-AST.deploy.js +431 -243
  7. data/amber/js/Compiler-AST.js +487 -244
  8. data/amber/js/Compiler-Core.deploy.js +201 -1045
  9. data/amber/js/Compiler-Core.js +208 -1207
  10. data/amber/js/Compiler-Exceptions.deploy.js +37 -18
  11. data/amber/js/Compiler-Exceptions.js +42 -18
  12. data/amber/js/Compiler-IR.deploy.js +1071 -774
  13. data/amber/js/Compiler-IR.js +1194 -848
  14. data/amber/js/Compiler-Inlining.deploy.js +395 -373
  15. data/amber/js/Compiler-Inlining.js +395 -373
  16. data/amber/js/Compiler-Interpreter.deploy.js +1202 -0
  17. data/amber/js/Compiler-Interpreter.js +1631 -0
  18. data/amber/js/Compiler-Semantic.deploy.js +695 -600
  19. data/amber/js/Compiler-Semantic.js +721 -611
  20. data/amber/js/Compiler-Tests.deploy.js +699 -376
  21. data/amber/js/Compiler-Tests.js +834 -381
  22. data/amber/js/Compiler.deploy.js +8563 -1805
  23. data/amber/js/Compiler.js +11476 -2633
  24. data/amber/js/Examples.deploy.js +29 -29
  25. data/amber/js/Examples.js +29 -29
  26. data/amber/js/IDE.deploy.js +3292 -2649
  27. data/amber/js/IDE.js +3318 -2710
  28. data/amber/js/Importer-Exporter.deploy.js +393 -349
  29. data/amber/js/Importer-Exporter.js +398 -354
  30. data/amber/js/Kernel-Announcements.deploy.js +53 -44
  31. data/amber/js/Kernel-Announcements.js +55 -44
  32. data/amber/js/Kernel-Classes.deploy.js +566 -368
  33. data/amber/js/Kernel-Classes.js +660 -402
  34. data/amber/js/Kernel-Collections.deploy.js +1149 -1098
  35. data/amber/js/Kernel-Collections.js +1183 -1116
  36. data/amber/js/Kernel-Exceptions.deploy.js +173 -75
  37. data/amber/js/Kernel-Exceptions.js +215 -77
  38. data/amber/js/Kernel-Methods.deploy.js +530 -313
  39. data/amber/js/Kernel-Methods.js +632 -338
  40. data/amber/js/Kernel-Objects.deploy.js +1734 -1577
  41. data/amber/js/Kernel-Objects.js +1867 -1654
  42. data/amber/js/Kernel-Tests.deploy.js +1416 -973
  43. data/amber/js/Kernel-Tests.js +1495 -981
  44. data/amber/js/Kernel-Transcript.deploy.js +23 -24
  45. data/amber/js/Kernel-Transcript.js +25 -26
  46. data/amber/js/SUnit-Tests.deploy.js +402 -0
  47. data/amber/js/SUnit-Tests.js +518 -0
  48. data/amber/js/SUnit.deploy.js +535 -237
  49. data/amber/js/SUnit.js +634 -246
  50. data/amber/js/amber.js +90 -53
  51. data/amber/js/boot.js +441 -255
  52. data/amber/js/init.js +1 -3
  53. data/amber/js/lib/CodeMirror/codemirror.css +3 -0
  54. data/amber/js/lib/CodeMirror/codemirror.js +104 -55
  55. data/amber/js/lib/peg-0.7.0.min.js +9 -0
  56. data/amber/js/parser.js +1504 -802
  57. data/amber/js/parser.pegjs +170 -165
  58. data/amber/st/Canvas.st +6 -0
  59. data/amber/st/Compiler-AST.st +54 -3
  60. data/amber/st/Compiler-Core.st +6 -551
  61. data/amber/st/Compiler-Exceptions.st +4 -0
  62. data/amber/st/Compiler-IR.st +205 -87
  63. data/amber/st/Compiler-Interpreter.st +597 -0
  64. data/amber/st/Compiler-Semantic.st +46 -21
  65. data/amber/st/Compiler-Tests.st +254 -7
  66. data/amber/st/Compiler.st +3172 -1541
  67. data/amber/st/IDE.st +57 -93
  68. data/amber/st/Importer-Exporter.st +4 -7
  69. data/amber/st/Kernel-Announcements.st +8 -0
  70. data/amber/st/Kernel-Classes.st +149 -40
  71. data/amber/st/Kernel-Collections.st +43 -32
  72. data/amber/st/Kernel-Exceptions.st +70 -1
  73. data/amber/st/Kernel-Methods.st +165 -27
  74. data/amber/st/Kernel-Objects.st +215 -140
  75. data/amber/st/Kernel-Tests.st +195 -10
  76. data/amber/st/Kernel-Transcript.st +1 -3
  77. data/amber/st/SUnit-Tests.st +186 -0
  78. data/amber/st/SUnit.st +186 -14
  79. data/bin/resin +6 -0
  80. data/lib/resin/cli.rb +19 -0
  81. metadata +41 -25
  82. data/amber/js/lib/peg-0.6.2.min.js +0 -2
  83. data/bin/resin-compile +0 -6
  84. data/bin/runresin +0 -12
@@ -4,12 +4,12 @@ smalltalk.addMethod(
4
4
  "__minus_gt",
5
5
  smalltalk.method({
6
6
  selector: "->",
7
- fn: function (anObject) {
8
- var self = this;
9
- var $1;
10
- $1 = smalltalk.send(smalltalk.Association || Association, "_key_value_", [self, anObject]);
11
- return $1;
12
- }
7
+ fn: function (anObject){
8
+ var self=this;
9
+ return smalltalk.withContext(function($ctx1) {
10
+ $1=_st((smalltalk.Association || Association))._key_value_(self,anObject);
11
+ return $1;
12
+ }, function($ctx1) {$ctx1.fill(self,"->",{anObject:anObject}, smalltalk.Object)})}
13
13
  }),
14
14
  smalltalk.Object);
15
15
 
@@ -17,12 +17,12 @@ smalltalk.addMethod(
17
17
  "__eq",
18
18
  smalltalk.method({
19
19
  selector: "=",
20
- fn: function (anObject) {
21
- var self = this;
22
- var $1;
23
- $1 = smalltalk.send(self, "__eq_eq", [anObject]);
24
- return $1;
25
- }
20
+ fn: function (anObject){
21
+ var self=this;
22
+ return smalltalk.withContext(function($ctx1) {
23
+ $1=_st(self).__eq_eq(anObject);
24
+ return $1;
25
+ }, function($ctx1) {$ctx1.fill(self,"=",{anObject:anObject}, smalltalk.Object)})}
26
26
  }),
27
27
  smalltalk.Object);
28
28
 
@@ -30,12 +30,12 @@ smalltalk.addMethod(
30
30
  "__eq_eq",
31
31
  smalltalk.method({
32
32
  selector: "==",
33
- fn: function (anObject) {
34
- var self = this;
35
- var $1;
36
- $1 = smalltalk.send(smalltalk.send(self, "_identityHash", []), "__eq", [smalltalk.send(anObject, "_identityHash", [])]);
37
- return $1;
38
- }
33
+ fn: function (anObject){
34
+ var self=this;
35
+ return smalltalk.withContext(function($ctx1) {
36
+ $1=_st(_st(self)._identityHash()).__eq(_st(anObject)._identityHash());
37
+ return $1;
38
+ }, function($ctx1) {$ctx1.fill(self,"==",{anObject:anObject}, smalltalk.Object)})}
39
39
  }),
40
40
  smalltalk.Object);
41
41
 
@@ -43,13 +43,17 @@ smalltalk.addMethod(
43
43
  "_asJSON",
44
44
  smalltalk.method({
45
45
  selector: "asJSON",
46
- fn: function () {
47
- var self = this;
48
- var variables;
49
- variables = smalltalk.send(smalltalk.HashedCollection || HashedCollection, "_new", []);
50
- smalltalk.send(smalltalk.send(smalltalk.send(self, "_class", []), "_allInstanceVariableNames", []), "_do_", [function (each) {return smalltalk.send(variables, "_at_put_", [each, smalltalk.send(smalltalk.send(self, "_instVarAt_", [each]), "_asJSON", [])]);}]);
51
- return variables;
52
- }
46
+ fn: function (){
47
+ var self=this;
48
+ var variables;
49
+ return smalltalk.withContext(function($ctx1) {
50
+ variables=_st((smalltalk.HashedCollection || HashedCollection))._new();
51
+ _st(_st(_st(self)._class())._allInstanceVariableNames())._do_((function(each){
52
+ return smalltalk.withContext(function($ctx2) {
53
+ }, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
54
+ $1=variables;
55
+ return $1;
56
+ }, function($ctx1) {$ctx1.fill(self,"asJSON",{variables:variables}, smalltalk.Object)})}
53
57
  }),
54
58
  smalltalk.Object);
55
59
 
@@ -57,12 +61,12 @@ smalltalk.addMethod(
57
61
  "_asJSONString",
58
62
  smalltalk.method({
59
63
  selector: "asJSONString",
60
- fn: function () {
61
- var self = this;
62
- var $1;
63
- $1 = smalltalk.send(smalltalk.JSON || JSON, "_stringify_", [smalltalk.send(self, "_asJSON", [])]);
64
- return $1;
65
- }
64
+ fn: function (){
65
+ var self=this;
66
+ return smalltalk.withContext(function($ctx1) {
67
+ $1=_st((smalltalk.JSON || JSON))._stringify_(_st(self)._asJSON());
68
+ return $1;
69
+ }, function($ctx1) {$ctx1.fill(self,"asJSONString",{}, smalltalk.Object)})}
66
70
  }),
67
71
  smalltalk.Object);
68
72
 
@@ -70,12 +74,12 @@ smalltalk.addMethod(
70
74
  "_asJavascript",
71
75
  smalltalk.method({
72
76
  selector: "asJavascript",
73
- fn: function () {
74
- var self = this;
75
- var $1;
76
- $1 = smalltalk.send(self, "_asString", []);
77
- return $1;
78
- }
77
+ fn: function (){
78
+ var self=this;
79
+ return smalltalk.withContext(function($ctx1) {
80
+ $1=_st(self)._asString();
81
+ return $1;
82
+ }, function($ctx1) {$ctx1.fill(self,"asJavascript",{}, smalltalk.Object)})}
79
83
  }),
80
84
  smalltalk.Object);
81
85
 
@@ -83,12 +87,12 @@ smalltalk.addMethod(
83
87
  "_asString",
84
88
  smalltalk.method({
85
89
  selector: "asString",
86
- fn: function () {
87
- var self = this;
88
- var $1;
89
- $1 = smalltalk.send(self, "_printString", []);
90
- return $1;
91
- }
90
+ fn: function (){
91
+ var self=this;
92
+ return smalltalk.withContext(function($ctx1) {
93
+ $1=_st(self)._printString();
94
+ return $1;
95
+ }, function($ctx1) {$ctx1.fill(self,"asString",{}, smalltalk.Object)})}
92
96
  }),
93
97
  smalltalk.Object);
94
98
 
@@ -96,11 +100,10 @@ smalltalk.addMethod(
96
100
  "_basicAt_",
97
101
  smalltalk.method({
98
102
  selector: "basicAt:",
99
- fn: function (aString) {
100
- var self = this;
101
- return self[aString];
102
- return self;
103
- }
103
+ fn: function (aString){
104
+ var self=this;
105
+ return smalltalk.withContext(function($ctx1) {
106
+ return self}, function($ctx1) {$ctx1.fill(self,"basicAt:",{aString:aString}, smalltalk.Object)})}
104
107
  }),
105
108
  smalltalk.Object);
106
109
 
@@ -108,11 +111,10 @@ smalltalk.addMethod(
108
111
  "_basicAt_put_",
109
112
  smalltalk.method({
110
113
  selector: "basicAt:put:",
111
- fn: function (aString, anObject) {
112
- var self = this;
113
- return self[aString] = anObject;
114
- return self;
115
- }
114
+ fn: function (aString,anObject){
115
+ var self=this;
116
+ return smalltalk.withContext(function($ctx1) {
117
+ return self}, function($ctx1) {$ctx1.fill(self,"basicAt:put:",{aString:aString,anObject:anObject}, smalltalk.Object)})}
116
118
  }),
117
119
  smalltalk.Object);
118
120
 
@@ -120,12 +122,10 @@ smalltalk.addMethod(
120
122
  "_basicDelete_",
121
123
  smalltalk.method({
122
124
  selector: "basicDelete:",
123
- fn: function (aString) {
124
- var self = this;
125
- delete self[aString];
126
- return aString;
127
- return self;
128
- }
125
+ fn: function (aString){
126
+ var self=this;
127
+ return smalltalk.withContext(function($ctx1) {
128
+ return self}, function($ctx1) {$ctx1.fill(self,"basicDelete:",{aString:aString}, smalltalk.Object)})}
129
129
  }),
130
130
  smalltalk.Object);
131
131
 
@@ -133,12 +133,12 @@ smalltalk.addMethod(
133
133
  "_basicPerform_",
134
134
  smalltalk.method({
135
135
  selector: "basicPerform:",
136
- fn: function (aSymbol) {
137
- var self = this;
138
- var $1;
139
- $1 = smalltalk.send(self, "_basicPerform_withArguments_", [aSymbol, []]);
140
- return $1;
141
- }
136
+ fn: function (aSymbol){
137
+ var self=this;
138
+ return smalltalk.withContext(function($ctx1) {
139
+ $1=_st(self)._basicPerform_withArguments_(aSymbol,[]);
140
+ return $1;
141
+ }, function($ctx1) {$ctx1.fill(self,"basicPerform:",{aSymbol:aSymbol}, smalltalk.Object)})}
142
142
  }),
143
143
  smalltalk.Object);
144
144
 
@@ -146,11 +146,10 @@ smalltalk.addMethod(
146
146
  "_basicPerform_withArguments_",
147
147
  smalltalk.method({
148
148
  selector: "basicPerform:withArguments:",
149
- fn: function (aSymbol, aCollection) {
150
- var self = this;
151
- return self[aSymbol].apply(self, aCollection);
152
- return self;
153
- }
149
+ fn: function (aSymbol,aCollection){
150
+ var self=this;
151
+ return smalltalk.withContext(function($ctx1) {
152
+ return self}, function($ctx1) {$ctx1.fill(self,"basicPerform:withArguments:",{aSymbol:aSymbol,aCollection:aCollection}, smalltalk.Object)})}
154
153
  }),
155
154
  smalltalk.Object);
156
155
 
@@ -158,11 +157,10 @@ smalltalk.addMethod(
158
157
  "_class",
159
158
  smalltalk.method({
160
159
  selector: "class",
161
- fn: function () {
162
- var self = this;
163
- return self.klass;
164
- return self;
165
- }
160
+ fn: function (){
161
+ var self=this;
162
+ return smalltalk.withContext(function($ctx1) {
163
+ return self}, function($ctx1) {$ctx1.fill(self,"class",{}, smalltalk.Object)})}
166
164
  }),
167
165
  smalltalk.Object);
168
166
 
@@ -170,12 +168,12 @@ smalltalk.addMethod(
170
168
  "_copy",
171
169
  smalltalk.method({
172
170
  selector: "copy",
173
- fn: function () {
174
- var self = this;
175
- var $1;
176
- $1 = smalltalk.send(smalltalk.send(self, "_shallowCopy", []), "_postCopy", []);
177
- return $1;
178
- }
171
+ fn: function (){
172
+ var self=this;
173
+ return smalltalk.withContext(function($ctx1) {
174
+ $1=_st(_st(self)._shallowCopy())._postCopy();
175
+ return $1;
176
+ }, function($ctx1) {$ctx1.fill(self,"copy",{}, smalltalk.Object)})}
179
177
  }),
180
178
  smalltalk.Object);
181
179
 
@@ -183,17 +181,18 @@ smalltalk.addMethod(
183
181
  "_deepCopy",
184
182
  smalltalk.method({
185
183
  selector: "deepCopy",
186
- fn: function () {
187
- var self = this;
188
- var copy = self.klass._new();
189
- for (var i in self) {
190
- if (/^@.+/.test(i)) {
191
- copy[i] = self[i]._deepCopy();
192
- }
193
- }
194
- return copy;
195
- return self;
196
- }
184
+ fn: function (){
185
+ var self=this;
186
+ return smalltalk.withContext(function($ctx1) {
197
187
 
188
+ var copy = self.klass._new();
189
+ for(var i in self) {
190
+ if(/^@.+/.test(i)) {
191
+ copy[i] = self[i]._deepCopy();
192
+ }
193
+ }
194
+ return copy;
195
+ ;
196
+ return self}, function($ctx1) {$ctx1.fill(self,"deepCopy",{}, smalltalk.Object)})}
198
197
  }),
199
198
  smalltalk.Object);
200
199
 
@@ -201,11 +200,10 @@ smalltalk.addMethod(
201
200
  "_deprecatedAPI",
202
201
  smalltalk.method({
203
202
  selector: "deprecatedAPI",
204
- fn: function () {
205
- var self = this;
206
- smalltalk.send(console, "_warn_", [smalltalk.send(smalltalk.send(smalltalk.send(smalltalk.send(smalltalk.send(thisContext, "_home", []), "_asString", []), "__comma", [" is deprecated! (in "]), "__comma", [smalltalk.send(smalltalk.send(smalltalk.send(thisContext, "_home", []), "_home", []), "_asString", [])]), "__comma", [")"])]);
207
- return self;
208
- }
203
+ fn: function (){
204
+ var self=this;
205
+ return smalltalk.withContext(function($ctx1) {
206
+ return self}, function($ctx1) {$ctx1.fill(self,"deprecatedAPI",{}, smalltalk.Object)})}
209
207
  }),
210
208
  smalltalk.Object);
211
209
 
@@ -213,15 +211,14 @@ smalltalk.addMethod(
213
211
  "_doesNotUnderstand_",
214
212
  smalltalk.method({
215
213
  selector: "doesNotUnderstand:",
216
- fn: function (aMessage) {
217
- var self = this;
218
- var $1, $2;
219
- $1 = smalltalk.send(smalltalk.MessageNotUnderstood || MessageNotUnderstood, "_new", []);
220
- smalltalk.send($1, "_receiver_", [self]);
221
- smalltalk.send($1, "_message_", [aMessage]);
222
- $2 = smalltalk.send($1, "_signal", []);
223
- return self;
224
- }
214
+ fn: function (aMessage){
215
+ var self=this;
216
+ return smalltalk.withContext(function($ctx1) {
217
+ $1=_st((smalltalk.MessageNotUnderstood || MessageNotUnderstood))._new();
218
+ _st($1)._receiver_(self);
219
+ _st($1)._message_(aMessage);
220
+ $2=_st($1)._signal();
221
+ return self}, function($ctx1) {$ctx1.fill(self,"doesNotUnderstand:",{aMessage:aMessage}, smalltalk.Object)})}
225
222
  }),
226
223
  smalltalk.Object);
227
224
 
@@ -229,11 +226,10 @@ smalltalk.addMethod(
229
226
  "_error_",
230
227
  smalltalk.method({
231
228
  selector: "error:",
232
- fn: function (aString) {
233
- var self = this;
234
- smalltalk.send(smalltalk.Error || Error, "_signal_", [aString]);
235
- return self;
236
- }
229
+ fn: function (aString){
230
+ var self=this;
231
+ return smalltalk.withContext(function($ctx1) {
232
+ return self}, function($ctx1) {$ctx1.fill(self,"error:",{aString:aString}, smalltalk.Object)})}
237
233
  }),
238
234
  smalltalk.Object);
239
235
 
@@ -241,11 +237,10 @@ smalltalk.addMethod(
241
237
  "_halt",
242
238
  smalltalk.method({
243
239
  selector: "halt",
244
- fn: function () {
245
- var self = this;
246
- smalltalk.send(self, "_error_", ["Halt encountered"]);
247
- return self;
248
- }
240
+ fn: function (){
241
+ var self=this;
242
+ return smalltalk.withContext(function($ctx1) {
243
+ return self}, function($ctx1) {$ctx1.fill(self,"halt",{}, smalltalk.Object)})}
249
244
  }),
250
245
  smalltalk.Object);
251
246
 
@@ -253,17 +248,16 @@ smalltalk.addMethod(
253
248
  "_identityHash",
254
249
  smalltalk.method({
255
250
  selector: "identityHash",
256
- fn: function () {
257
- var self = this;
258
- var hash = self.identityHash;
259
- if (hash) {
260
- return hash;
261
- }
262
- hash = smalltalk.nextId();
263
- Object.defineProperty(self, "identityHash", {value: hash});
264
- return hash;
265
- return self;
266
- }
251
+ fn: function (){
252
+ var self=this;
253
+ return smalltalk.withContext(function($ctx1) {
254
+ var hash=self.identityHash;
255
+ if (hash) return hash;
256
+ hash=smalltalk.nextId();
257
+ Object.defineProperty(self, 'identityHash', {value:hash});
258
+ return hash;
259
+ ;
260
+ return self}, function($ctx1) {$ctx1.fill(self,"identityHash",{}, smalltalk.Object)})}
267
261
  }),
268
262
  smalltalk.Object);
269
263
 
@@ -271,10 +265,12 @@ smalltalk.addMethod(
271
265
  "_ifNil_",
272
266
  smalltalk.method({
273
267
  selector: "ifNil:",
274
- fn: function (aBlock) {
275
- var self = this;
276
- return self;
277
- }
268
+ fn: function (aBlock){
269
+ var self=this;
270
+ return smalltalk.withContext(function($ctx1) {
271
+ $1=self;
272
+ return $1;
273
+ }, function($ctx1) {$ctx1.fill(self,"ifNil:",{aBlock:aBlock}, smalltalk.Object)})}
278
274
  }),
279
275
  smalltalk.Object);
280
276
 
@@ -282,12 +278,12 @@ smalltalk.addMethod(
282
278
  "_ifNil_ifNotNil_",
283
279
  smalltalk.method({
284
280
  selector: "ifNil:ifNotNil:",
285
- fn: function (aBlock, anotherBlock) {
286
- var self = this;
287
- var $1;
288
- $1 = smalltalk.send(anotherBlock, "_value", []);
289
- return $1;
290
- }
281
+ fn: function (aBlock,anotherBlock){
282
+ var self=this;
283
+ return smalltalk.withContext(function($ctx1) {
284
+ $1=_st(anotherBlock)._value();
285
+ return $1;
286
+ }, function($ctx1) {$ctx1.fill(self,"ifNil:ifNotNil:",{aBlock:aBlock,anotherBlock:anotherBlock}, smalltalk.Object)})}
291
287
  }),
292
288
  smalltalk.Object);
293
289
 
@@ -295,12 +291,12 @@ smalltalk.addMethod(
295
291
  "_ifNotNil_",
296
292
  smalltalk.method({
297
293
  selector: "ifNotNil:",
298
- fn: function (aBlock) {
299
- var self = this;
300
- var $1;
301
- $1 = smalltalk.send(aBlock, "_value", []);
302
- return $1;
303
- }
294
+ fn: function (aBlock){
295
+ var self=this;
296
+ return smalltalk.withContext(function($ctx1) {
297
+ $1=_st(aBlock)._value();
298
+ return $1;
299
+ }, function($ctx1) {$ctx1.fill(self,"ifNotNil:",{aBlock:aBlock}, smalltalk.Object)})}
304
300
  }),
305
301
  smalltalk.Object);
306
302
 
@@ -308,12 +304,12 @@ smalltalk.addMethod(
308
304
  "_ifNotNil_ifNil_",
309
305
  smalltalk.method({
310
306
  selector: "ifNotNil:ifNil:",
311
- fn: function (aBlock, anotherBlock) {
312
- var self = this;
313
- var $1;
314
- $1 = smalltalk.send(aBlock, "_value", []);
315
- return $1;
316
- }
307
+ fn: function (aBlock,anotherBlock){
308
+ var self=this;
309
+ return smalltalk.withContext(function($ctx1) {
310
+ $1=_st(aBlock)._value();
311
+ return $1;
312
+ }, function($ctx1) {$ctx1.fill(self,"ifNotNil:ifNil:",{aBlock:aBlock,anotherBlock:anotherBlock}, smalltalk.Object)})}
317
313
  }),
318
314
  smalltalk.Object);
319
315
 
@@ -321,10 +317,9 @@ smalltalk.addMethod(
321
317
  "_initialize",
322
318
  smalltalk.method({
323
319
  selector: "initialize",
324
- fn: function () {
325
- var self = this;
326
- return self;
327
- }
320
+ fn: function (){
321
+ var self=this;
322
+ return smalltalk.withContext(function($ctx1) {
328
323
  }),
329
324
  smalltalk.Object);
330
325
 
@@ -332,13 +327,10 @@ smalltalk.addMethod(
332
327
  "_instVarAt_",
333
328
  smalltalk.method({
334
329
  selector: "instVarAt:",
335
- fn: function (aSymbol) {
336
- var self = this;
337
- var varname;
338
- varname = smalltalk.send(aSymbol, "_asString", []);
339
- return self["@" + varname];
340
- return self;
341
- }
330
+ fn: function (aSymbol){
331
+ var self=this;
332
+ return smalltalk.withContext(function($ctx1) {
333
+ return self}, function($ctx1) {$ctx1.fill(self,"instVarAt:",{aSymbol:aSymbol}, smalltalk.Object)})}
342
334
  }),
343
335
  smalltalk.Object);
344
336
 
@@ -346,13 +338,21 @@ smalltalk.addMethod(
346
338
  "_instVarAt_put_",
347
339
  smalltalk.method({
348
340
  selector: "instVarAt:put:",
349
- fn: function (aSymbol, anObject) {
350
- var self = this;
351
- var varname;
352
- varname = smalltalk.send(aSymbol, "_asString", []);
353
- self["@" + varname] = anObject;
354
- return self;
355
- }
341
+ fn: function (aSymbol,anObject){
342
+ var self=this;
343
+ return smalltalk.withContext(function($ctx1) {
344
+ return self}, function($ctx1) {$ctx1.fill(self,"instVarAt:put:",{aSymbol:aSymbol,anObject:anObject}, smalltalk.Object)})}
345
+ }),
346
+ smalltalk.Object);
347
+
348
+ smalltalk.addMethod(
349
+ "_isBoolean",
350
+ smalltalk.method({
351
+ selector: "isBoolean",
352
+ fn: function (){
353
+ var self=this;
354
+ return smalltalk.withContext(function($ctx1) {
355
+ }, function($ctx1) {$ctx1.fill(self,"isBoolean",{}, smalltalk.Object)})}
356
356
  }),
357
357
  smalltalk.Object);
358
358
 
@@ -360,10 +360,10 @@ smalltalk.addMethod(
360
360
  "_isClass",
361
361
  smalltalk.method({
362
362
  selector: "isClass",
363
- fn: function () {
364
- var self = this;
365
- return false;
366
- }
363
+ fn: function (){
364
+ var self=this;
365
+ return smalltalk.withContext(function($ctx1) {
366
+ }, function($ctx1) {$ctx1.fill(self,"isClass",{}, smalltalk.Object)})}
367
367
  }),
368
368
  smalltalk.Object);
369
369
 
@@ -371,17 +371,17 @@ smalltalk.addMethod(
371
371
  "_isKindOf_",
372
372
  smalltalk.method({
373
373
  selector: "isKindOf:",
374
- fn: function (aClass) {
375
- var self = this;
376
- var $2, $1;
377
- $2 = smalltalk.send(self, "_isMemberOf_", [aClass]);
378
- if (smalltalk.assert($2)) {
379
- $1 = true;
380
- } else {
381
- $1 = smalltalk.send(smalltalk.send(self, "_class", []), "_inheritsFrom_", [aClass]);
382
- }
383
- return $1;
384
- }
374
+ fn: function (aClass){
375
+ var self=this;
376
+ return smalltalk.withContext(function($ctx1) {
377
+ $2=_st(self)._isMemberOf_(aClass);
378
+ if(smalltalk.assert($2)){
379
+ $1=true;
380
+ } else {
381
+ $1=_st(_st(self)._class())._inheritsFrom_(aClass);
382
+ };
383
+ return $1;
384
+ }, function($ctx1) {$ctx1.fill(self,"isKindOf:",{aClass:aClass}, smalltalk.Object)})}
385
385
  }),
386
386
  smalltalk.Object);
387
387
 
@@ -389,12 +389,12 @@ smalltalk.addMethod(
389
389
  "_isMemberOf_",
390
390
  smalltalk.method({
391
391
  selector: "isMemberOf:",
392
- fn: function (aClass) {
393
- var self = this;
394
- var $1;
395
- $1 = smalltalk.send(smalltalk.send(self, "_class", []), "__eq", [aClass]);
396
- return $1;
397
- }
392
+ fn: function (aClass){
393
+ var self=this;
394
+ return smalltalk.withContext(function($ctx1) {
395
+ $1=_st(_st(self)._class()).__eq(aClass);
396
+ return $1;
397
+ }, function($ctx1) {$ctx1.fill(self,"isMemberOf:",{aClass:aClass}, smalltalk.Object)})}
398
398
  }),
399
399
  smalltalk.Object);
400
400
 
@@ -402,10 +402,10 @@ smalltalk.addMethod(
402
402
  "_isMetaclass",
403
403
  smalltalk.method({
404
404
  selector: "isMetaclass",
405
- fn: function () {
406
- var self = this;
407
- return false;
408
- }
405
+ fn: function (){
406
+ var self=this;
407
+ return smalltalk.withContext(function($ctx1) {
408
+ }, function($ctx1) {$ctx1.fill(self,"isMetaclass",{}, smalltalk.Object)})}
409
409
  }),
410
410
  smalltalk.Object);
411
411
 
@@ -413,10 +413,10 @@ smalltalk.addMethod(
413
413
  "_isNil",
414
414
  smalltalk.method({
415
415
  selector: "isNil",
416
- fn: function () {
417
- var self = this;
418
- return false;
419
- }
416
+ fn: function (){
417
+ var self=this;
418
+ return smalltalk.withContext(function($ctx1) {
419
+ }, function($ctx1) {$ctx1.fill(self,"isNil",{}, smalltalk.Object)})}
420
420
  }),
421
421
  smalltalk.Object);
422
422
 
@@ -424,10 +424,10 @@ smalltalk.addMethod(
424
424
  "_isNumber",
425
425
  smalltalk.method({
426
426
  selector: "isNumber",
427
- fn: function () {
428
- var self = this;
429
- return false;
430
- }
427
+ fn: function (){
428
+ var self=this;
429
+ return smalltalk.withContext(function($ctx1) {
430
+ }, function($ctx1) {$ctx1.fill(self,"isNumber",{}, smalltalk.Object)})}
431
431
  }),
432
432
  smalltalk.Object);
433
433
 
@@ -435,10 +435,10 @@ smalltalk.addMethod(
435
435
  "_isParseFailure",
436
436
  smalltalk.method({
437
437
  selector: "isParseFailure",
438
- fn: function () {
439
- var self = this;
440
- return false;
441
- }
438
+ fn: function (){
439
+ var self=this;
440
+ return smalltalk.withContext(function($ctx1) {
441
+ }, function($ctx1) {$ctx1.fill(self,"isParseFailure",{}, smalltalk.Object)})}
442
442
  }),
443
443
  smalltalk.Object);
444
444
 
@@ -446,10 +446,10 @@ smalltalk.addMethod(
446
446
  "_isString",
447
447
  smalltalk.method({
448
448
  selector: "isString",
449
- fn: function () {
450
- var self = this;
451
- return false;
452
- }
449
+ fn: function (){
450
+ var self=this;
451
+ return smalltalk.withContext(function($ctx1) {
452
+ }, function($ctx1) {$ctx1.fill(self,"isString",{}, smalltalk.Object)})}
453
453
  }),
454
454
  smalltalk.Object);
455
455
 
@@ -457,10 +457,10 @@ smalltalk.addMethod(
457
457
  "_isSymbol",
458
458
  smalltalk.method({
459
459
  selector: "isSymbol",
460
- fn: function () {
461
- var self = this;
462
- return false;
463
- }
460
+ fn: function (){
461
+ var self=this;
462
+ return smalltalk.withContext(function($ctx1) {
463
+ }, function($ctx1) {$ctx1.fill(self,"isSymbol",{}, smalltalk.Object)})}
464
464
  }),
465
465
  smalltalk.Object);
466
466
 
@@ -468,12 +468,17 @@ smalltalk.addMethod(
468
468
  "_log_block_",
469
469
  smalltalk.method({
470
470
  selector: "log:block:",
471
- fn: function (aString, aBlock) {
472
- var self = this;
473
- var result;
474
- smalltalk.send(console, "_log_", [smalltalk.send(smalltalk.send(aString, "__comma", [" time: "]), "__comma", [smalltalk.send(smalltalk.send(smalltalk.Date || Date, "_millisecondsToRun_", [function () {result = smalltalk.send(aBlock, "_value", []);return result;}]), "_printString", [])])]);
475
- return result;
476
- }
471
+ fn: function (aString,aBlock){
472
+ var self=this;
473
+ var result;
474
+ return smalltalk.withContext(function($ctx1) {
475
+ _st(console)._log_(_st(_st(aString).__comma(" time: ")).__comma(_st(_st((smalltalk.Date || Date))._millisecondsToRun_((function(){
476
+ return smalltalk.withContext(function($ctx2) {
477
+ return result;
478
+ }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})})))._printString()));
479
+ $1=result;
480
+ return $1;
481
+ }, function($ctx1) {$ctx1.fill(self,"log:block:",{aString:aString,aBlock:aBlock,result:result}, smalltalk.Object)})}
477
482
  }),
478
483
  smalltalk.Object);
479
484
 
@@ -481,12 +486,12 @@ smalltalk.addMethod(
481
486
  "_notNil",
482
487
  smalltalk.method({
483
488
  selector: "notNil",
484
- fn: function () {
485
- var self = this;
486
- var $1;
487
- $1 = smalltalk.send(smalltalk.send(self, "_isNil", []), "_not", []);
488
- return $1;
489
- }
489
+ fn: function (){
490
+ var self=this;
491
+ return smalltalk.withContext(function($ctx1) {
492
+ $1=_st(_st(self)._isNil())._not();
493
+ return $1;
494
+ }, function($ctx1) {$ctx1.fill(self,"notNil",{}, smalltalk.Object)})}
490
495
  }),
491
496
  smalltalk.Object);
492
497
 
@@ -494,12 +499,12 @@ smalltalk.addMethod(
494
499
  "_perform_",
495
500
  smalltalk.method({
496
501
  selector: "perform:",
497
- fn: function (aSymbol) {
498
- var self = this;
499
- var $1;
500
- $1 = smalltalk.send(self, "_perform_withArguments_", [aSymbol, []]);
501
- return $1;
502
- }
502
+ fn: function (aSymbol){
503
+ var self=this;
504
+ return smalltalk.withContext(function($ctx1) {
505
+ $1=_st(self)._perform_withArguments_(aSymbol,[]);
506
+ return $1;
507
+ }, function($ctx1) {$ctx1.fill(self,"perform:",{aSymbol:aSymbol}, smalltalk.Object)})}
503
508
  }),
504
509
  smalltalk.Object);
505
510
 
@@ -507,13 +512,10 @@ smalltalk.addMethod(
507
512
  "_perform_withArguments_",
508
513
  smalltalk.method({
509
514
  selector: "perform:withArguments:",
510
- fn: function (aSymbol, aCollection) {
511
- var self = this;
512
- var selector;
513
- selector = smalltalk.send(aSymbol, "_asSelector", []);
514
- return smalltalk.send(self, selector, aCollection);
515
- return self;
516
- }
515
+ fn: function (aSymbol,aCollection){
516
+ var self=this;
517
+ return smalltalk.withContext(function($ctx1) {
518
+ return self}, function($ctx1) {$ctx1.fill(self,"perform:withArguments:",{aSymbol:aSymbol,aCollection:aCollection}, smalltalk.Object)})}
517
519
  }),
518
520
  smalltalk.Object);
519
521
 
@@ -521,10 +523,9 @@ smalltalk.addMethod(
521
523
  "_postCopy",
522
524
  smalltalk.method({
523
525
  selector: "postCopy",
524
- fn: function () {
525
- var self = this;
526
- return self;
527
- }
526
+ fn: function (){
527
+ var self=this;
528
+ return smalltalk.withContext(function($ctx1) {
528
529
  }),
529
530
  smalltalk.Object);
530
531
 
@@ -532,11 +533,10 @@ smalltalk.addMethod(
532
533
  "_printNl",
533
534
  smalltalk.method({
534
535
  selector: "printNl",
535
- fn: function () {
536
- var self = this;
537
- console.log(self);
538
- return self;
539
- }
536
+ fn: function (){
537
+ var self=this;
538
+ return smalltalk.withContext(function($ctx1) {
539
+ return self}, function($ctx1) {$ctx1.fill(self,"printNl",{}, smalltalk.Object)})}
540
540
  }),
541
541
  smalltalk.Object);
542
542
 
@@ -544,12 +544,12 @@ smalltalk.addMethod(
544
544
  "_printString",
545
545
  smalltalk.method({
546
546
  selector: "printString",
547
- fn: function () {
548
- var self = this;
549
- var $1;
550
- $1 = smalltalk.send("a ", "__comma", [smalltalk.send(smalltalk.send(self, "_class", []), "_name", [])]);
551
- return $1;
552
- }
547
+ fn: function (){
548
+ var self=this;
549
+ return smalltalk.withContext(function($ctx1) {
550
+ $1=_st("a ").__comma(_st(_st(self)._class())._name());
551
+ return $1;
552
+ }, function($ctx1) {$ctx1.fill(self,"printString",{}, smalltalk.Object)})}
553
553
  }),
554
554
  smalltalk.Object);
555
555
 
@@ -557,12 +557,12 @@ smalltalk.addMethod(
557
557
  "_respondsTo_",
558
558
  smalltalk.method({
559
559
  selector: "respondsTo:",
560
- fn: function (aSelector) {
561
- var self = this;
562
- var $1;
563
- $1 = smalltalk.send(smalltalk.send(self, "_class", []), "_canUnderstand_", [aSelector]);
564
- return $1;
565
- }
560
+ fn: function (aSelector){
561
+ var self=this;
562
+ return smalltalk.withContext(function($ctx1) {
563
+ $1=_st(_st(self)._class())._canUnderstand_(aSelector);
564
+ return $1;
565
+ }, function($ctx1) {$ctx1.fill(self,"respondsTo:",{aSelector:aSelector}, smalltalk.Object)})}
566
566
  }),
567
567
  smalltalk.Object);
568
568
 
@@ -570,17 +570,18 @@ smalltalk.addMethod(
570
570
  "_shallowCopy",
571
571
  smalltalk.method({
572
572
  selector: "shallowCopy",
573
- fn: function () {
574
- var self = this;
575
- var copy = self.klass._new();
576
- for (var i in self) {
577
- if (/^@.+/.test(i)) {
578
- copy[i] = self[i];
579
- }
580
- }
581
- return copy;
582
- return self;
583
- }
573
+ fn: function (){
574
+ var self=this;
575
+ return smalltalk.withContext(function($ctx1) {
576
+ var copy = self.klass._new();
577
+ for(var i in self) {
578
+ if(/^@.+/.test(i)) {
579
+ copy[i] = self[i];
580
+ }
581
+ }
582
+ return copy;
583
+ ;
584
+ return self}, function($ctx1) {$ctx1.fill(self,"shallowCopy",{}, smalltalk.Object)})}
584
585
  }),
585
586
  smalltalk.Object);
586
587
 
@@ -588,11 +589,10 @@ smalltalk.addMethod(
588
589
  "_shouldNotImplement",
589
590
  smalltalk.method({
590
591
  selector: "shouldNotImplement",
591
- fn: function () {
592
- var self = this;
593
- smalltalk.send(self, "_error_", [smalltalk.send("This method should not be implemented in ", "__comma", [smalltalk.send(smalltalk.send(self, "_class", []), "_name", [])])]);
594
- return self;
595
- }
592
+ fn: function (){
593
+ var self=this;
594
+ return smalltalk.withContext(function($ctx1) {
595
+ return self}, function($ctx1) {$ctx1.fill(self,"shouldNotImplement",{}, smalltalk.Object)})}
596
596
  }),
597
597
  smalltalk.Object);
598
598
 
@@ -600,11 +600,10 @@ smalltalk.addMethod(
600
600
  "_size",
601
601
  smalltalk.method({
602
602
  selector: "size",
603
- fn: function () {
604
- var self = this;
605
- smalltalk.send(self, "_error_", ["Object not indexable"]);
606
- return self;
607
- }
603
+ fn: function (){
604
+ var self=this;
605
+ return smalltalk.withContext(function($ctx1) {
606
+ return self}, function($ctx1) {$ctx1.fill(self,"size",{}, smalltalk.Object)})}
608
607
  }),
609
608
  smalltalk.Object);
610
609
 
@@ -612,11 +611,10 @@ smalltalk.addMethod(
612
611
  "_storeOn_",
613
612
  smalltalk.method({
614
613
  selector: "storeOn:",
615
- fn: function (aStream) {
616
- var self = this;
617
- smalltalk.send(aStream, "_nextPutAll_", [smalltalk.send(self, "_printString", [])]);
618
- return self;
619
- }
614
+ fn: function (aStream){
615
+ var self=this;
616
+ return smalltalk.withContext(function($ctx1) {
617
+ return self}, function($ctx1) {$ctx1.fill(self,"storeOn:",{aStream:aStream}, smalltalk.Object)})}
620
618
  }),
621
619
  smalltalk.Object);
622
620
 
@@ -624,12 +622,14 @@ smalltalk.addMethod(
624
622
  "_storeString",
625
623
  smalltalk.method({
626
624
  selector: "storeString",
627
- fn: function () {
628
- var self = this;
629
- var $1;
630
- $1 = smalltalk.send(smalltalk.String || String, "_streamContents_", [function (s) {return smalltalk.send(self, "_storeOn_", [s]);}]);
631
- return $1;
632
- }
625
+ fn: function (){
626
+ var self=this;
627
+ return smalltalk.withContext(function($ctx1) {
628
+ $1=_st((smalltalk.String || String))._streamContents_((function(s){
629
+ return smalltalk.withContext(function($ctx2) {
630
+ }, function($ctx2) {$ctx2.fillBlock({s:s},$ctx1)})}));
631
+ return $1;
632
+ }, function($ctx1) {$ctx1.fill(self,"storeString",{}, smalltalk.Object)})}
633
633
  }),
634
634
  smalltalk.Object);
635
635
 
@@ -637,11 +637,23 @@ smalltalk.addMethod(
637
637
  "_subclassResponsibility",
638
638
  smalltalk.method({
639
639
  selector: "subclassResponsibility",
640
- fn: function () {
641
- var self = this;
642
- smalltalk.send(self, "_error_", ["This method is a responsibility of a subclass"]);
643
- return self;
644
- }
640
+ fn: function (){
641
+ var self=this;
642
+ return smalltalk.withContext(function($ctx1) {
643
+ return self}, function($ctx1) {$ctx1.fill(self,"subclassResponsibility",{}, smalltalk.Object)})}
644
+ }),
645
+ smalltalk.Object);
646
+
647
+ smalltalk.addMethod(
648
+ "_test",
649
+ smalltalk.method({
650
+ selector: "test",
651
+ fn: function (){
652
+ var self=this;
653
+ var a;
654
+ return smalltalk.withContext(function($ctx1) {
655
+ _st(self)._halt();
656
+ return self}, function($ctx1) {$ctx1.fill(self,"test",{a:a}, smalltalk.Object)})}
645
657
  }),
646
658
  smalltalk.Object);
647
659
 
@@ -649,11 +661,10 @@ smalltalk.addMethod(
649
661
  "_throw_",
650
662
  smalltalk.method({
651
663
  selector: "throw:",
652
- fn: function (anObject) {
653
- var self = this;
654
- throw anObject;
655
- return self;
656
- }
664
+ fn: function (anObject){
665
+ var self=this;
666
+ return smalltalk.withContext(function($ctx1) {
657
667
  throw anObject ;
668
+ return self}, function($ctx1) {$ctx1.fill(self,"throw:",{anObject:anObject}, smalltalk.Object)})}
658
669
  }),
659
670
  smalltalk.Object);
660
671
 
@@ -661,16 +672,10 @@ smalltalk.addMethod(
661
672
  "_try_catch_",
662
673
  smalltalk.method({
663
674
  selector: "try:catch:",
664
- fn: function (aBlock, anotherBlock) {
665
- var self = this;
666
- try {
667
- result = aBlock();
668
- } catch (e) {
669
- result = anotherBlock(e);
670
- }
671
- return result;
672
- return self;
673
- }
675
+ fn: function (aBlock,anotherBlock){
676
+ var self=this;
677
+ return smalltalk.withContext(function($ctx1) {
678
+ return self}, function($ctx1) {$ctx1.fill(self,"try:catch:",{aBlock:aBlock,anotherBlock:anotherBlock}, smalltalk.Object)})}
674
679
  }),
675
680
  smalltalk.Object);
676
681
 
@@ -678,10 +683,10 @@ smalltalk.addMethod(
678
683
  "_value",
679
684
  smalltalk.method({
680
685
  selector: "value",
681
- fn: function () {
682
- var self = this;
683
- return self;
684
- }
686
+ fn: function (){
687
+ var self=this;
688
+ return smalltalk.withContext(function($ctx1) {
689
+ return self}, function($ctx1) {$ctx1.fill(self,"value",{}, smalltalk.Object)})}
685
690
  }),
686
691
  smalltalk.Object);
687
692
 
@@ -689,36 +694,38 @@ smalltalk.addMethod(
689
694
  "_yourself",
690
695
  smalltalk.method({
691
696
  selector: "yourself",
692
- fn: function () {
693
- var self = this;
694
- return self;
695
- }
697
+ fn: function (){
698
+ var self=this;
699
+ return smalltalk.withContext(function($ctx1) {
700
+ $1=self;
701
+ return $1;
702
+ }, function($ctx1) {$ctx1.fill(self,"yourself",{}, smalltalk.Object)})}
696
703
  }),
697
704
  smalltalk.Object);
698
705
 
699
706
  smalltalk.addMethod(
700
- "_~_eq",
707
+ "__tild_eq",
701
708
  smalltalk.method({
702
709
  selector: "~=",
703
- fn: function (anObject) {
704
- var self = this;
705
- var $1;
706
- $1 = smalltalk.send(smalltalk.send(self, "__eq", [anObject]), "__eq", [false]);
707
- return $1;
708
- }
710
+ fn: function (anObject){
711
+ var self=this;
712
+ return smalltalk.withContext(function($ctx1) {
713
+ $1=_st(_st(self).__eq(anObject)).__eq(false);
714
+ return $1;
715
+ }, function($ctx1) {$ctx1.fill(self,"~=",{anObject:anObject}, smalltalk.Object)})}
709
716
  }),
710
717
  smalltalk.Object);
711
718
 
712
719
  smalltalk.addMethod(
713
- "_~~",
720
+ "__tild_tild",
714
721
  smalltalk.method({
715
722
  selector: "~~",
716
- fn: function (anObject) {
717
- var self = this;
718
- var $1;
719
- $1 = smalltalk.send(smalltalk.send(self, "__eq_eq", [anObject]), "__eq", [false]);
720
- return $1;
721
- }
723
+ fn: function (anObject){
724
+ var self=this;
725
+ return smalltalk.withContext(function($ctx1) {
726
+ $1=_st(_st(self).__eq_eq(anObject)).__eq(false);
727
+ return $1;
728
+ }, function($ctx1) {$ctx1.fill(self,"~~",{anObject:anObject}, smalltalk.Object)})}
722
729
  }),
723
730
  smalltalk.Object);
724
731
 
@@ -727,28 +734,28 @@ smalltalk.addMethod(
727
734
  "_initialize",
728
735
  smalltalk.method({
729
736
  selector: "initialize",
730
- fn: function () {
731
- var self = this;
732
- return self;
733
- }
737
+ fn: function (){
738
+ var self=this;
739
+ return smalltalk.withContext(function($ctx1) {
734
740
  }),
735
741
  smalltalk.Object.klass);
736
742
 
737
743
 
738
744
  smalltalk.addClass('Boolean', smalltalk.Object, [], 'Kernel-Objects');
739
745
  smalltalk.addMethod(
740
- "_&",
746
+ "__and",
741
747
  smalltalk.method({
742
748
  selector: "&",
743
- fn: function (aBoolean) {
744
- var self = this;
745
- if (self == true) {
746
- return aBoolean;
747
- } else {
748
- return false;
749
- }
750
- return self;
751
- }
749
+ fn: function (aBoolean){
750
+ var self=this;
751
+ return smalltalk.withContext(function($ctx1) {
752
+ if(self == true) {
753
+ return aBoolean;
754
+ } else {
755
+ return false;
756
+ }
757
+ ;
758
+ return self}, function($ctx1) {$ctx1.fill(self,"&",{aBoolean:aBoolean}, smalltalk.Boolean)})}
752
759
  }),
753
760
  smalltalk.Boolean);
754
761
 
@@ -756,16 +763,15 @@ smalltalk.addMethod(
756
763
  "__eq",
757
764
  smalltalk.method({
758
765
  selector: "=",
759
- fn: function (aBoolean) {
760
- var self = this;
761
- var $1;
762
- $1 = smalltalk.send(smalltalk.send(aBoolean, "_class", []), "__eq", [smalltalk.send(self, "_class", [])]);
763
- if (!smalltalk.assert($1)) {
764
- return false;
765
- }
766
- return Boolean(self == true) == aBoolean;
767
- return self;
768
- }
766
+ fn: function (aBoolean){
767
+ var self=this;
768
+ return smalltalk.withContext(function($ctx1) {
769
+ if(! aBoolean._isBoolean || ! aBoolean._isBoolean()) {
770
+ return false;
771
+ }
772
+ return Boolean(self == true) == aBoolean
773
+ ;
774
+ return self}, function($ctx1) {$ctx1.fill(self,"=",{aBoolean:aBoolean}, smalltalk.Boolean)})}
769
775
  }),
770
776
  smalltalk.Boolean);
771
777
 
@@ -773,12 +779,12 @@ smalltalk.addMethod(
773
779
  "__eq_eq",
774
780
  smalltalk.method({
775
781
  selector: "==",
776
- fn: function (aBoolean) {
777
- var self = this;
778
- var $1;
779
- $1 = smalltalk.send(self, "__eq", [aBoolean]);
780
- return $1;
781
- }
782
+ fn: function (aBoolean){
783
+ var self=this;
784
+ return smalltalk.withContext(function($ctx1) {
785
+ $1=_st(self).__eq(aBoolean);
786
+ return $1;
787
+ }, function($ctx1) {$ctx1.fill(self,"==",{aBoolean:aBoolean}, smalltalk.Boolean)})}
782
788
  }),
783
789
  smalltalk.Boolean);
784
790
 
@@ -786,13 +792,15 @@ smalltalk.addMethod(
786
792
  "_and_",
787
793
  smalltalk.method({
788
794
  selector: "and:",
789
- fn: function (aBlock) {
790
- var self = this;
791
- var $2, $1;
792
- $2 = smalltalk.send(self, "__eq", [true]);
793
- $1 = smalltalk.send($2, "_ifTrue_ifFalse_", [aBlock, function () {return false;}]);
794
- return $1;
795
- }
795
+ fn: function (aBlock){
796
+ var self=this;
797
+ return smalltalk.withContext(function($ctx1) {
798
+ $2=_st(self).__eq(true);
799
+ $1=_st($2)._ifTrue_ifFalse_(aBlock,(function(){
800
+ return smalltalk.withContext(function($ctx2) {
801
+ }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
802
+ return $1;
803
+ }, function($ctx1) {$ctx1.fill(self,"and:",{aBlock:aBlock}, smalltalk.Boolean)})}
796
804
  }),
797
805
  smalltalk.Boolean);
798
806
 
@@ -800,10 +808,12 @@ smalltalk.addMethod(
800
808
  "_asJSON",
801
809
  smalltalk.method({
802
810
  selector: "asJSON",
803
- fn: function () {
804
- var self = this;
805
- return self;
806
- }
811
+ fn: function (){
812
+ var self=this;
813
+ return smalltalk.withContext(function($ctx1) {
814
+ $1=self;
815
+ return $1;
816
+ }, function($ctx1) {$ctx1.fill(self,"asJSON",{}, smalltalk.Boolean)})}
807
817
  }),
808
818
  smalltalk.Boolean);
809
819
 
@@ -811,10 +821,12 @@ smalltalk.addMethod(
811
821
  "_deepCopy",
812
822
  smalltalk.method({
813
823
  selector: "deepCopy",
814
- fn: function () {
815
- var self = this;
816
- return self;
817
- }
824
+ fn: function (){
825
+ var self=this;
826
+ return smalltalk.withContext(function($ctx1) {
827
+ $1=self;
828
+ return $1;
829
+ }, function($ctx1) {$ctx1.fill(self,"deepCopy",{}, smalltalk.Boolean)})}
818
830
  }),
819
831
  smalltalk.Boolean);
820
832
 
@@ -822,12 +834,14 @@ smalltalk.addMethod(
822
834
  "_ifFalse_",
823
835
  smalltalk.method({
824
836
  selector: "ifFalse:",
825
- fn: function (aBlock) {
826
- var self = this;
827
- var $1;
828
- $1 = smalltalk.send(self, "_ifTrue_ifFalse_", [function () {}, aBlock]);
829
- return $1;
830
- }
837
+ fn: function (aBlock){
838
+ var self=this;
839
+ return smalltalk.withContext(function($ctx1) {
840
+ $2=self;
841
+ $1=_st($2)._ifTrue_ifFalse_((function(){
842
+ return smalltalk.withContext(function($ctx2) {
843
+ return $1;
844
+ }, function($ctx1) {$ctx1.fill(self,"ifFalse:",{aBlock:aBlock}, smalltalk.Boolean)})}
831
845
  }),
832
846
  smalltalk.Boolean);
833
847
 
@@ -835,12 +849,13 @@ smalltalk.addMethod(
835
849
  "_ifFalse_ifTrue_",
836
850
  smalltalk.method({
837
851
  selector: "ifFalse:ifTrue:",
838
- fn: function (aBlock, anotherBlock) {
839
- var self = this;
840
- var $1;
841
- $1 = smalltalk.send(self, "_ifTrue_ifFalse_", [anotherBlock, aBlock]);
842
- return $1;
843
- }
852
+ fn: function (aBlock,anotherBlock){
853
+ var self=this;
854
+ return smalltalk.withContext(function($ctx1) {
855
+ $2=self;
856
+ $1=_st($2)._ifTrue_ifFalse_(anotherBlock,aBlock);
857
+ return $1;
858
+ }, function($ctx1) {$ctx1.fill(self,"ifFalse:ifTrue:",{aBlock:aBlock,anotherBlock:anotherBlock}, smalltalk.Boolean)})}
844
859
  }),
845
860
  smalltalk.Boolean);
846
861
 
@@ -848,12 +863,14 @@ smalltalk.addMethod(
848
863
  "_ifTrue_",
849
864
  smalltalk.method({
850
865
  selector: "ifTrue:",
851
- fn: function (aBlock) {
852
- var self = this;
853
- var $1;
854
- $1 = smalltalk.send(self, "_ifTrue_ifFalse_", [aBlock, function () {}]);
855
- return $1;
856
- }
866
+ fn: function (aBlock){
867
+ var self=this;
868
+ return smalltalk.withContext(function($ctx1) {
869
+ $2=self;
870
+ $1=_st($2)._ifTrue_ifFalse_(aBlock,(function(){
871
+ return smalltalk.withContext(function($ctx2) {
872
+ return $1;
873
+ }, function($ctx1) {$ctx1.fill(self,"ifTrue:",{aBlock:aBlock}, smalltalk.Boolean)})}
857
874
  }),
858
875
  smalltalk.Boolean);
859
876
 
@@ -861,15 +878,27 @@ smalltalk.addMethod(
861
878
  "_ifTrue_ifFalse_",
862
879
  smalltalk.method({
863
880
  selector: "ifTrue:ifFalse:",
864
- fn: function (aBlock, anotherBlock) {
865
- var self = this;
866
- if (self == true) {
867
- return aBlock();
868
- } else {
869
- return anotherBlock();
870
- }
871
- return self;
872
- }
881
+ fn: function (aBlock,anotherBlock){
882
+ var self=this;
883
+ return smalltalk.withContext(function($ctx1) {
884
+ if(self == true) {
885
+ return aBlock();
886
+ } else {
887
+ return anotherBlock();
888
+ }
889
+ ;
890
+ return self}, function($ctx1) {$ctx1.fill(self,"ifTrue:ifFalse:",{aBlock:aBlock,anotherBlock:anotherBlock}, smalltalk.Boolean)})}
891
+ }),
892
+ smalltalk.Boolean);
893
+
894
+ smalltalk.addMethod(
895
+ "_isBoolean",
896
+ smalltalk.method({
897
+ selector: "isBoolean",
898
+ fn: function (){
899
+ var self=this;
900
+ return smalltalk.withContext(function($ctx1) {
901
+ }, function($ctx1) {$ctx1.fill(self,"isBoolean",{}, smalltalk.Boolean)})}
873
902
  }),
874
903
  smalltalk.Boolean);
875
904
 
@@ -877,12 +906,12 @@ smalltalk.addMethod(
877
906
  "_not",
878
907
  smalltalk.method({
879
908
  selector: "not",
880
- fn: function () {
881
- var self = this;
882
- var $1;
883
- $1 = smalltalk.send(self, "__eq", [false]);
884
- return $1;
885
- }
909
+ fn: function (){
910
+ var self=this;
911
+ return smalltalk.withContext(function($ctx1) {
912
+ $1=_st(self).__eq(false);
913
+ return $1;
914
+ }, function($ctx1) {$ctx1.fill(self,"not",{}, smalltalk.Boolean)})}
886
915
  }),
887
916
  smalltalk.Boolean);
888
917
 
@@ -890,13 +919,15 @@ smalltalk.addMethod(
890
919
  "_or_",
891
920
  smalltalk.method({
892
921
  selector: "or:",
893
- fn: function (aBlock) {
894
- var self = this;
895
- var $2, $1;
896
- $2 = smalltalk.send(self, "__eq", [true]);
897
- $1 = smalltalk.send($2, "_ifTrue_ifFalse_", [function () {return true;}, aBlock]);
898
- return $1;
899
- }
922
+ fn: function (aBlock){
923
+ var self=this;
924
+ return smalltalk.withContext(function($ctx1) {
925
+ $2=_st(self).__eq(true);
926
+ $1=_st($2)._ifTrue_ifFalse_((function(){
927
+ return smalltalk.withContext(function($ctx2) {
928
+ }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),aBlock);
929
+ return $1;
930
+ }, function($ctx1) {$ctx1.fill(self,"or:",{aBlock:aBlock}, smalltalk.Boolean)})}
900
931
  }),
901
932
  smalltalk.Boolean);
902
933
 
@@ -904,11 +935,10 @@ smalltalk.addMethod(
904
935
  "_printString",
905
936
  smalltalk.method({
906
937
  selector: "printString",
907
- fn: function () {
908
- var self = this;
909
- return self.toString();
910
- return self;
911
- }
938
+ fn: function (){
939
+ var self=this;
940
+ return smalltalk.withContext(function($ctx1) {
941
+ return self}, function($ctx1) {$ctx1.fill(self,"printString",{}, smalltalk.Boolean)})}
912
942
  }),
913
943
  smalltalk.Boolean);
914
944
 
@@ -916,26 +946,29 @@ smalltalk.addMethod(
916
946
  "_shallowCopy",
917
947
  smalltalk.method({
918
948
  selector: "shallowCopy",
919
- fn: function () {
920
- var self = this;
921
- return self;
922
- }
949
+ fn: function (){
950
+ var self=this;
951
+ return smalltalk.withContext(function($ctx1) {
952
+ $1=self;
953
+ return $1;
954
+ }, function($ctx1) {$ctx1.fill(self,"shallowCopy",{}, smalltalk.Boolean)})}
923
955
  }),
924
956
  smalltalk.Boolean);
925
957
 
926
958
  smalltalk.addMethod(
927
- "_|",
959
+ "__or",
928
960
  smalltalk.method({
929
961
  selector: "|",
930
- fn: function (aBoolean) {
931
- var self = this;
932
- if (self == true) {
933
- return true;
934
- } else {
935
- return aBoolean;
936
- }
937
- return self;
938
- }
962
+ fn: function (aBoolean){
963
+ var self=this;
964
+ return smalltalk.withContext(function($ctx1) {
965
+ if(self == true) {
966
+ return true;
967
+ } else {
968
+ return aBoolean;
969
+ }
970
+ ;
971
+ return self}, function($ctx1) {$ctx1.fill(self,"|",{aBoolean:aBoolean}, smalltalk.Boolean)})}
939
972
  }),
940
973
  smalltalk.Boolean);
941
974
 
@@ -946,11 +979,10 @@ smalltalk.addMethod(
946
979
  "__plus",
947
980
  smalltalk.method({
948
981
  selector: "+",
949
- fn: function (aDate) {
950
- var self = this;
951
- return self + aDate;
952
- return self;
953
- }
982
+ fn: function (aDate){
983
+ var self=this;
984
+ return smalltalk.withContext(function($ctx1) {
985
+ return self}, function($ctx1) {$ctx1.fill(self,"+",{aDate:aDate}, smalltalk.Date)})}
954
986
  }),
955
987
  smalltalk.Date);
956
988
 
@@ -958,11 +990,10 @@ smalltalk.addMethod(
958
990
  "__minus",
959
991
  smalltalk.method({
960
992
  selector: "-",
961
- fn: function (aDate) {
962
- var self = this;
963
- return self - aDate;
964
- return self;
965
- }
993
+ fn: function (aDate){
994
+ var self=this;
995
+ return smalltalk.withContext(function($ctx1) {
996
+ return self}, function($ctx1) {$ctx1.fill(self,"-",{aDate:aDate}, smalltalk.Date)})}
966
997
  }),
967
998
  smalltalk.Date);
968
999
 
@@ -970,11 +1001,10 @@ smalltalk.addMethod(
970
1001
  "__lt",
971
1002
  smalltalk.method({
972
1003
  selector: "<",
973
- fn: function (aDate) {
974
- var self = this;
975
- return self < aDate;
976
- return self;
977
- }
1004
+ fn: function (aDate){
1005
+ var self=this;
1006
+ return smalltalk.withContext(function($ctx1) {
1007
+ return self}, function($ctx1) {$ctx1.fill(self,"<",{aDate:aDate}, smalltalk.Date)})}
978
1008
  }),
979
1009
  smalltalk.Date);
980
1010
 
@@ -982,11 +1012,10 @@ smalltalk.addMethod(
982
1012
  "__lt_eq",
983
1013
  smalltalk.method({
984
1014
  selector: "<=",
985
- fn: function (aDate) {
986
- var self = this;
987
- return self <= aDate;
988
- return self;
989
- }
1015
+ fn: function (aDate){
1016
+ var self=this;
1017
+ return smalltalk.withContext(function($ctx1) {
1018
+ return self}, function($ctx1) {$ctx1.fill(self,"<=",{aDate:aDate}, smalltalk.Date)})}
990
1019
  }),
991
1020
  smalltalk.Date);
992
1021
 
@@ -994,11 +1023,10 @@ smalltalk.addMethod(
994
1023
  "__gt",
995
1024
  smalltalk.method({
996
1025
  selector: ">",
997
- fn: function (aDate) {
998
- var self = this;
999
- return self > aDate;
1000
- return self;
1001
- }
1026
+ fn: function (aDate){
1027
+ var self=this;
1028
+ return smalltalk.withContext(function($ctx1) {
1029
+ return self}, function($ctx1) {$ctx1.fill(self,">",{aDate:aDate}, smalltalk.Date)})}
1002
1030
  }),
1003
1031
  smalltalk.Date);
1004
1032
 
@@ -1006,11 +1034,10 @@ smalltalk.addMethod(
1006
1034
  "__gt_eq",
1007
1035
  smalltalk.method({
1008
1036
  selector: ">=",
1009
- fn: function (aDate) {
1010
- var self = this;
1011
- return self >= aDate;
1012
- return self;
1013
- }
1037
+ fn: function (aDate){
1038
+ var self=this;
1039
+ return smalltalk.withContext(function($ctx1) {
1040
+ return self}, function($ctx1) {$ctx1.fill(self,">=",{aDate:aDate}, smalltalk.Date)})}
1014
1041
  }),
1015
1042
  smalltalk.Date);
1016
1043
 
@@ -1018,11 +1045,10 @@ smalltalk.addMethod(
1018
1045
  "_asDateString",
1019
1046
  smalltalk.method({
1020
1047
  selector: "asDateString",
1021
- fn: function () {
1022
- var self = this;
1023
- return self.toDateString();
1024
- return self;
1025
- }
1048
+ fn: function (){
1049
+ var self=this;
1050
+ return smalltalk.withContext(function($ctx1) {
1051
+ return self}, function($ctx1) {$ctx1.fill(self,"asDateString",{}, smalltalk.Date)})}
1026
1052
  }),
1027
1053
  smalltalk.Date);
1028
1054
 
@@ -1030,11 +1056,10 @@ smalltalk.addMethod(
1030
1056
  "_asLocaleString",
1031
1057
  smalltalk.method({
1032
1058
  selector: "asLocaleString",
1033
- fn: function () {
1034
- var self = this;
1035
- return self.toLocaleString();
1036
- return self;
1037
- }
1059
+ fn: function (){
1060
+ var self=this;
1061
+ return smalltalk.withContext(function($ctx1) {
1062
+ return self}, function($ctx1) {$ctx1.fill(self,"asLocaleString",{}, smalltalk.Date)})}
1038
1063
  }),
1039
1064
  smalltalk.Date);
1040
1065
 
@@ -1042,12 +1067,12 @@ smalltalk.addMethod(
1042
1067
  "_asMilliseconds",
1043
1068
  smalltalk.method({
1044
1069
  selector: "asMilliseconds",
1045
- fn: function () {
1046
- var self = this;
1047
- var $1;
1048
- $1 = smalltalk.send(self, "_time", []);
1049
- return $1;
1050
- }
1070
+ fn: function (){
1071
+ var self=this;
1072
+ return smalltalk.withContext(function($ctx1) {
1073
+ $1=_st(self)._time();
1074
+ return $1;
1075
+ }, function($ctx1) {$ctx1.fill(self,"asMilliseconds",{}, smalltalk.Date)})}
1051
1076
  }),
1052
1077
  smalltalk.Date);
1053
1078
 
@@ -1055,12 +1080,12 @@ smalltalk.addMethod(
1055
1080
  "_asNumber",
1056
1081
  smalltalk.method({
1057
1082
  selector: "asNumber",
1058
- fn: function () {
1059
- var self = this;
1060
- var $1;
1061
- $1 = smalltalk.send(self, "_asMilliseconds", []);
1062
- return $1;
1063
- }
1083
+ fn: function (){
1084
+ var self=this;
1085
+ return smalltalk.withContext(function($ctx1) {
1086
+ $1=_st(self)._asMilliseconds();
1087
+ return $1;
1088
+ }, function($ctx1) {$ctx1.fill(self,"asNumber",{}, smalltalk.Date)})}
1064
1089
  }),
1065
1090
  smalltalk.Date);
1066
1091
 
@@ -1068,11 +1093,10 @@ smalltalk.addMethod(
1068
1093
  "_asString",
1069
1094
  smalltalk.method({
1070
1095
  selector: "asString",
1071
- fn: function () {
1072
- var self = this;
1073
- return self.toString();
1074
- return self;
1075
- }
1096
+ fn: function (){
1097
+ var self=this;
1098
+ return smalltalk.withContext(function($ctx1) {
1099
+ return self}, function($ctx1) {$ctx1.fill(self,"asString",{}, smalltalk.Date)})}
1076
1100
  }),
1077
1101
  smalltalk.Date);
1078
1102
 
@@ -1080,11 +1104,10 @@ smalltalk.addMethod(
1080
1104
  "_asTimeString",
1081
1105
  smalltalk.method({
1082
1106
  selector: "asTimeString",
1083
- fn: function () {
1084
- var self = this;
1085
- return self.toTimeString();
1086
- return self;
1087
- }
1107
+ fn: function (){
1108
+ var self=this;
1109
+ return smalltalk.withContext(function($ctx1) {
1110
+ return self}, function($ctx1) {$ctx1.fill(self,"asTimeString",{}, smalltalk.Date)})}
1088
1111
  }),
1089
1112
  smalltalk.Date);
1090
1113
 
@@ -1092,12 +1115,12 @@ smalltalk.addMethod(
1092
1115
  "_day",
1093
1116
  smalltalk.method({
1094
1117
  selector: "day",
1095
- fn: function () {
1096
- var self = this;
1097
- var $1;
1098
- $1 = smalltalk.send(self, "_dayOfWeek", []);
1099
- return $1;
1100
- }
1118
+ fn: function (){
1119
+ var self=this;
1120
+ return smalltalk.withContext(function($ctx1) {
1121
+ $1=_st(self)._dayOfWeek();
1122
+ return $1;
1123
+ }, function($ctx1) {$ctx1.fill(self,"day",{}, smalltalk.Date)})}
1101
1124
  }),
1102
1125
  smalltalk.Date);
1103
1126
 
@@ -1105,11 +1128,10 @@ smalltalk.addMethod(
1105
1128
  "_day_",
1106
1129
  smalltalk.method({
1107
1130
  selector: "day:",
1108
- fn: function (aNumber) {
1109
- var self = this;
1110
- smalltalk.send(self, "_dayOfWeek_", [aNumber]);
1111
- return self;
1112
- }
1131
+ fn: function (aNumber){
1132
+ var self=this;
1133
+ return smalltalk.withContext(function($ctx1) {
1134
+ return self}, function($ctx1) {$ctx1.fill(self,"day:",{aNumber:aNumber}, smalltalk.Date)})}
1113
1135
  }),
1114
1136
  smalltalk.Date);
1115
1137
 
@@ -1117,11 +1139,10 @@ smalltalk.addMethod(
1117
1139
  "_dayOfMonth",
1118
1140
  smalltalk.method({
1119
1141
  selector: "dayOfMonth",
1120
- fn: function () {
1121
- var self = this;
1122
- return self.getDate();
1123
- return self;
1124
- }
1142
+ fn: function (){
1143
+ var self=this;
1144
+ return smalltalk.withContext(function($ctx1) {
1145
+ return self}, function($ctx1) {$ctx1.fill(self,"dayOfMonth",{}, smalltalk.Date)})}
1125
1146
  }),
1126
1147
  smalltalk.Date);
1127
1148
 
@@ -1129,11 +1150,10 @@ smalltalk.addMethod(
1129
1150
  "_dayOfMonth_",
1130
1151
  smalltalk.method({
1131
1152
  selector: "dayOfMonth:",
1132
- fn: function (aNumber) {
1133
- var self = this;
1134
- self.setDate(aNumber);
1135
- return self;
1136
- }
1153
+ fn: function (aNumber){
1154
+ var self=this;
1155
+ return smalltalk.withContext(function($ctx1) {
1156
+ return self}, function($ctx1) {$ctx1.fill(self,"dayOfMonth:",{aNumber:aNumber}, smalltalk.Date)})}
1137
1157
  }),
1138
1158
  smalltalk.Date);
1139
1159
 
@@ -1141,11 +1161,10 @@ smalltalk.addMethod(
1141
1161
  "_dayOfWeek",
1142
1162
  smalltalk.method({
1143
1163
  selector: "dayOfWeek",
1144
- fn: function () {
1145
- var self = this;
1146
- return self.getDay() + 1;
1147
- return self;
1148
- }
1164
+ fn: function (){
1165
+ var self=this;
1166
+ return smalltalk.withContext(function($ctx1) {
1167
+ return self}, function($ctx1) {$ctx1.fill(self,"dayOfWeek",{}, smalltalk.Date)})}
1149
1168
  }),
1150
1169
  smalltalk.Date);
1151
1170
 
@@ -1153,11 +1172,10 @@ smalltalk.addMethod(
1153
1172
  "_dayOfWeek_",
1154
1173
  smalltalk.method({
1155
1174
  selector: "dayOfWeek:",
1156
- fn: function (aNumber) {
1157
- var self = this;
1158
- return self.setDay(aNumber - 1);
1159
- return self;
1160
- }
1175
+ fn: function (aNumber){
1176
+ var self=this;
1177
+ return smalltalk.withContext(function($ctx1) {
1178
+ return self}, function($ctx1) {$ctx1.fill(self,"dayOfWeek:",{aNumber:aNumber}, smalltalk.Date)})}
1161
1179
  }),
1162
1180
  smalltalk.Date);
1163
1181
 
@@ -1165,11 +1183,10 @@ smalltalk.addMethod(
1165
1183
  "_hours",
1166
1184
  smalltalk.method({
1167
1185
  selector: "hours",
1168
- fn: function () {
1169
- var self = this;
1170
- return self.getHours();
1171
- return self;
1172
- }
1186
+ fn: function (){
1187
+ var self=this;
1188
+ return smalltalk.withContext(function($ctx1) {
1189
+ return self}, function($ctx1) {$ctx1.fill(self,"hours",{}, smalltalk.Date)})}
1173
1190
  }),
1174
1191
  smalltalk.Date);
1175
1192
 
@@ -1177,11 +1194,10 @@ smalltalk.addMethod(
1177
1194
  "_hours_",
1178
1195
  smalltalk.method({
1179
1196
  selector: "hours:",
1180
- fn: function (aNumber) {
1181
- var self = this;
1182
- self.setHours(aNumber);
1183
- return self;
1184
- }
1197
+ fn: function (aNumber){
1198
+ var self=this;
1199
+ return smalltalk.withContext(function($ctx1) {
1200
+ return self}, function($ctx1) {$ctx1.fill(self,"hours:",{aNumber:aNumber}, smalltalk.Date)})}
1185
1201
  }),
1186
1202
  smalltalk.Date);
1187
1203
 
@@ -1189,11 +1205,10 @@ smalltalk.addMethod(
1189
1205
  "_milliseconds",
1190
1206
  smalltalk.method({
1191
1207
  selector: "milliseconds",
1192
- fn: function () {
1193
- var self = this;
1194
- return self.getMilliseconds();
1195
- return self;
1196
- }
1208
+ fn: function (){
1209
+ var self=this;
1210
+ return smalltalk.withContext(function($ctx1) {
1211
+ return self}, function($ctx1) {$ctx1.fill(self,"milliseconds",{}, smalltalk.Date)})}
1197
1212
  }),
1198
1213
  smalltalk.Date);
1199
1214
 
@@ -1201,11 +1216,10 @@ smalltalk.addMethod(
1201
1216
  "_milliseconds_",
1202
1217
  smalltalk.method({
1203
1218
  selector: "milliseconds:",
1204
- fn: function (aNumber) {
1205
- var self = this;
1206
- self.setMilliseconds(aNumber);
1207
- return self;
1208
- }
1219
+ fn: function (aNumber){
1220
+ var self=this;
1221
+ return smalltalk.withContext(function($ctx1) {
1222
+ return self}, function($ctx1) {$ctx1.fill(self,"milliseconds:",{aNumber:aNumber}, smalltalk.Date)})}
1209
1223
  }),
1210
1224
  smalltalk.Date);
1211
1225
 
@@ -1213,11 +1227,10 @@ smalltalk.addMethod(
1213
1227
  "_minutes",
1214
1228
  smalltalk.method({
1215
1229
  selector: "minutes",
1216
- fn: function () {
1217
- var self = this;
1218
- return self.getMinutes();
1219
- return self;
1220
- }
1230
+ fn: function (){
1231
+ var self=this;
1232
+ return smalltalk.withContext(function($ctx1) {
1233
+ return self}, function($ctx1) {$ctx1.fill(self,"minutes",{}, smalltalk.Date)})}
1221
1234
  }),
1222
1235
  smalltalk.Date);
1223
1236
 
@@ -1225,11 +1238,10 @@ smalltalk.addMethod(
1225
1238
  "_minutes_",
1226
1239
  smalltalk.method({
1227
1240
  selector: "minutes:",
1228
- fn: function (aNumber) {
1229
- var self = this;
1230
- self.setMinutes(aNumber);
1231
- return self;
1232
- }
1241
+ fn: function (aNumber){
1242
+ var self=this;
1243
+ return smalltalk.withContext(function($ctx1) {
1244
+ return self}, function($ctx1) {$ctx1.fill(self,"minutes:",{aNumber:aNumber}, smalltalk.Date)})}
1233
1245
  }),
1234
1246
  smalltalk.Date);
1235
1247
 
@@ -1237,11 +1249,10 @@ smalltalk.addMethod(
1237
1249
  "_month",
1238
1250
  smalltalk.method({
1239
1251
  selector: "month",
1240
- fn: function () {
1241
- var self = this;
1242
- return self.getMonth() + 1;
1243
- return self;
1244
- }
1252
+ fn: function (){
1253
+ var self=this;
1254
+ return smalltalk.withContext(function($ctx1) {
1255
+ return self}, function($ctx1) {$ctx1.fill(self,"month",{}, smalltalk.Date)})}
1245
1256
  }),
1246
1257
  smalltalk.Date);
1247
1258
 
@@ -1249,11 +1260,10 @@ smalltalk.addMethod(
1249
1260
  "_month_",
1250
1261
  smalltalk.method({
1251
1262
  selector: "month:",
1252
- fn: function (aNumber) {
1253
- var self = this;
1254
- self.setMonth(aNumber - 1);
1255
- return self;
1256
- }
1263
+ fn: function (aNumber){
1264
+ var self=this;
1265
+ return smalltalk.withContext(function($ctx1) {
1266
+ return self}, function($ctx1) {$ctx1.fill(self,"month:",{aNumber:aNumber}, smalltalk.Date)})}
1257
1267
  }),
1258
1268
  smalltalk.Date);
1259
1269
 
@@ -1261,12 +1271,12 @@ smalltalk.addMethod(
1261
1271
  "_printString",
1262
1272
  smalltalk.method({
1263
1273
  selector: "printString",
1264
- fn: function () {
1265
- var self = this;
1266
- var $1;
1267
- $1 = smalltalk.send(self, "_asString", []);
1268
- return $1;
1269
- }
1274
+ fn: function (){
1275
+ var self=this;
1276
+ return smalltalk.withContext(function($ctx1) {
1277
+ $1=_st(self)._asString();
1278
+ return $1;
1279
+ }, function($ctx1) {$ctx1.fill(self,"printString",{}, smalltalk.Date)})}
1270
1280
  }),
1271
1281
  smalltalk.Date);
1272
1282
 
@@ -1274,11 +1284,10 @@ smalltalk.addMethod(
1274
1284
  "_seconds",
1275
1285
  smalltalk.method({
1276
1286
  selector: "seconds",
1277
- fn: function () {
1278
- var self = this;
1279
- return self.getSeconds();
1280
- return self;
1281
- }
1287
+ fn: function (){
1288
+ var self=this;
1289
+ return smalltalk.withContext(function($ctx1) {
1290
+ return self}, function($ctx1) {$ctx1.fill(self,"seconds",{}, smalltalk.Date)})}
1282
1291
  }),
1283
1292
  smalltalk.Date);
1284
1293
 
@@ -1286,11 +1295,10 @@ smalltalk.addMethod(
1286
1295
  "_seconds_",
1287
1296
  smalltalk.method({
1288
1297
  selector: "seconds:",
1289
- fn: function (aNumber) {
1290
- var self = this;
1291
- self.setSeconds(aNumber);
1292
- return self;
1293
- }
1298
+ fn: function (aNumber){
1299
+ var self=this;
1300
+ return smalltalk.withContext(function($ctx1) {
1301
+ return self}, function($ctx1) {$ctx1.fill(self,"seconds:",{aNumber:aNumber}, smalltalk.Date)})}
1294
1302
  }),
1295
1303
  smalltalk.Date);
1296
1304
 
@@ -1298,11 +1306,10 @@ smalltalk.addMethod(
1298
1306
  "_time",
1299
1307
  smalltalk.method({
1300
1308
  selector: "time",
1301
- fn: function () {
1302
- var self = this;
1303
- return self.getTime();
1304
- return self;
1305
- }
1309
+ fn: function (){
1310
+ var self=this;
1311
+ return smalltalk.withContext(function($ctx1) {
1312
+ return self}, function($ctx1) {$ctx1.fill(self,"time",{}, smalltalk.Date)})}
1306
1313
  }),
1307
1314
  smalltalk.Date);
1308
1315
 
@@ -1310,11 +1317,10 @@ smalltalk.addMethod(
1310
1317
  "_time_",
1311
1318
  smalltalk.method({
1312
1319
  selector: "time:",
1313
- fn: function (aNumber) {
1314
- var self = this;
1315
- self.setTime(aNumber);
1316
- return self;
1317
- }
1320
+ fn: function (aNumber){
1321
+ var self=this;
1322
+ return smalltalk.withContext(function($ctx1) {
1323
+ return self}, function($ctx1) {$ctx1.fill(self,"time:",{aNumber:aNumber}, smalltalk.Date)})}
1318
1324
  }),
1319
1325
  smalltalk.Date);
1320
1326
 
@@ -1322,11 +1328,10 @@ smalltalk.addMethod(
1322
1328
  "_year",
1323
1329
  smalltalk.method({
1324
1330
  selector: "year",
1325
- fn: function () {
1326
- var self = this;
1327
- return self.getFullYear();
1328
- return self;
1329
- }
1331
+ fn: function (){
1332
+ var self=this;
1333
+ return smalltalk.withContext(function($ctx1) {
1334
+ return self}, function($ctx1) {$ctx1.fill(self,"year",{}, smalltalk.Date)})}
1330
1335
  }),
1331
1336
  smalltalk.Date);
1332
1337
 
@@ -1334,11 +1339,10 @@ smalltalk.addMethod(
1334
1339
  "_year_",
1335
1340
  smalltalk.method({
1336
1341
  selector: "year:",
1337
- fn: function (aNumber) {
1338
- var self = this;
1339
- self.setFullYear(aNumber);
1340
- return self;
1341
- }
1342
+ fn: function (aNumber){
1343
+ var self=this;
1344
+ return smalltalk.withContext(function($ctx1) {
1345
+ return self}, function($ctx1) {$ctx1.fill(self,"year:",{aNumber:aNumber}, smalltalk.Date)})}
1342
1346
  }),
1343
1347
  smalltalk.Date);
1344
1348
 
@@ -1347,12 +1351,12 @@ smalltalk.addMethod(
1347
1351
  "_fromMilliseconds_",
1348
1352
  smalltalk.method({
1349
1353
  selector: "fromMilliseconds:",
1350
- fn: function (aNumber) {
1351
- var self = this;
1352
- var $1;
1353
- $1 = smalltalk.send(self, "_new_", [aNumber]);
1354
- return $1;
1355
- }
1354
+ fn: function (aNumber){
1355
+ var self=this;
1356
+ return smalltalk.withContext(function($ctx1) {
1357
+ $1=_st(self)._new_(aNumber);
1358
+ return $1;
1359
+ }, function($ctx1) {$ctx1.fill(self,"fromMilliseconds:",{aNumber:aNumber}, smalltalk.Date.klass)})}
1356
1360
  }),
1357
1361
  smalltalk.Date.klass);
1358
1362
 
@@ -1360,12 +1364,12 @@ smalltalk.addMethod(
1360
1364
  "_fromSeconds_",
1361
1365
  smalltalk.method({
1362
1366
  selector: "fromSeconds:",
1363
- fn: function (aNumber) {
1364
- var self = this;
1365
- var $1;
1366
- $1 = smalltalk.send(self, "_fromMilliseconds_", [smalltalk.send(aNumber, "__star", [1000])]);
1367
- return $1;
1368
- }
1367
+ fn: function (aNumber){
1368
+ var self=this;
1369
+ return smalltalk.withContext(function($ctx1) {
1370
+ $1=_st(self)._fromMilliseconds_(_st(aNumber).__star((1000)));
1371
+ return $1;
1372
+ }, function($ctx1) {$ctx1.fill(self,"fromSeconds:",{aNumber:aNumber}, smalltalk.Date.klass)})}
1369
1373
  }),
1370
1374
  smalltalk.Date.klass);
1371
1375
 
@@ -1373,12 +1377,12 @@ smalltalk.addMethod(
1373
1377
  "_fromString_",
1374
1378
  smalltalk.method({
1375
1379
  selector: "fromString:",
1376
- fn: function (aString) {
1377
- var self = this;
1378
- var $1;
1379
- $1 = smalltalk.send(self, "_new_", [aString]);
1380
- return $1;
1381
- }
1380
+ fn: function (aString){
1381
+ var self=this;
1382
+ return smalltalk.withContext(function($ctx1) {
1383
+ $1=_st(self)._new_(aString);
1384
+ return $1;
1385
+ }, function($ctx1) {$ctx1.fill(self,"fromString:",{aString:aString}, smalltalk.Date.klass)})}
1382
1386
  }),
1383
1387
  smalltalk.Date.klass);
1384
1388
 
@@ -1386,15 +1390,15 @@ smalltalk.addMethod(
1386
1390
  "_millisecondsToRun_",
1387
1391
  smalltalk.method({
1388
1392
  selector: "millisecondsToRun:",
1389
- fn: function (aBlock) {
1390
- var self = this;
1391
- var $1;
1392
- var t;
1393
- t = smalltalk.send(smalltalk.Date || Date, "_now", []);
1394
- smalltalk.send(aBlock, "_value", []);
1395
- $1 = smalltalk.send(smalltalk.send(smalltalk.Date || Date, "_now", []), "__minus", [t]);
1396
- return $1;
1397
- }
1393
+ fn: function (aBlock){
1394
+ var self=this;
1395
+ var t;
1396
+ return smalltalk.withContext(function($ctx1) {
1397
+ t=_st((smalltalk.Date || Date))._now();
1398
+ _st(aBlock)._value();
1399
+ $1=_st(_st((smalltalk.Date || Date))._now()).__minus(t);
1400
+ return $1;
1401
+ }, function($ctx1) {$ctx1.fill(self,"millisecondsToRun:",{aBlock:aBlock,t:t}, smalltalk.Date.klass)})}
1398
1402
  }),
1399
1403
  smalltalk.Date.klass);
1400
1404
 
@@ -1402,11 +1406,10 @@ smalltalk.addMethod(
1402
1406
  "_new_",
1403
1407
  smalltalk.method({
1404
1408
  selector: "new:",
1405
- fn: function (anObject) {
1406
- var self = this;
1407
- return new Date(anObject);
1408
- return self;
1409
- }
1409
+ fn: function (anObject){
1410
+ var self=this;
1411
+ return smalltalk.withContext(function($ctx1) {
1412
+ return self}, function($ctx1) {$ctx1.fill(self,"new:",{anObject:anObject}, smalltalk.Date.klass)})}
1410
1413
  }),
1411
1414
  smalltalk.Date.klass);
1412
1415
 
@@ -1414,12 +1417,12 @@ smalltalk.addMethod(
1414
1417
  "_now",
1415
1418
  smalltalk.method({
1416
1419
  selector: "now",
1417
- fn: function () {
1418
- var self = this;
1419
- var $1;
1420
- $1 = smalltalk.send(self, "_today", []);
1421
- return $1;
1422
- }
1420
+ fn: function (){
1421
+ var self=this;
1422
+ return smalltalk.withContext(function($ctx1) {
1423
+ $1=_st(self)._today();
1424
+ return $1;
1425
+ }, function($ctx1) {$ctx1.fill(self,"now",{}, smalltalk.Date.klass)})}
1423
1426
  }),
1424
1427
  smalltalk.Date.klass);
1425
1428
 
@@ -1427,28 +1430,40 @@ smalltalk.addMethod(
1427
1430
  "_today",
1428
1431
  smalltalk.method({
1429
1432
  selector: "today",
1430
- fn: function () {
1431
- var self = this;
1432
- var $1;
1433
- $1 = smalltalk.send(self, "_new", []);
1434
- return $1;
1435
- }
1433
+ fn: function (){
1434
+ var self=this;
1435
+ return smalltalk.withContext(function($ctx1) {
1436
+ $1=_st(self)._new();
1437
+ return $1;
1438
+ }, function($ctx1) {$ctx1.fill(self,"today",{}, smalltalk.Date.klass)})}
1436
1439
  }),
1437
1440
  smalltalk.Date.klass);
1438
1441
 
1439
1442
 
1440
1443
  smalltalk.addClass('JSObjectProxy', smalltalk.Object, ['jsObject'], 'Kernel-Objects');
1444
+ smalltalk.addMethod(
1445
+ "_addObjectVariablesTo_",
1446
+ smalltalk.method({
1447
+ selector: "addObjectVariablesTo:",
1448
+ fn: function (aDictionary){
1449
+ var self=this;
1450
+ return smalltalk.withContext(function($ctx1) {
1451
+ for(var i in self['@jsObject']) {
1452
+ aDictionary._at_put_(i, self['@jsObject'][i]);
1453
+ }
1454
+ ;
1455
+ return self}, function($ctx1) {$ctx1.fill(self,"addObjectVariablesTo:",{aDictionary:aDictionary}, smalltalk.JSObjectProxy)})}
1456
+ }),
1457
+ smalltalk.JSObjectProxy);
1458
+
1441
1459
  smalltalk.addMethod(
1442
1460
  "_at_",
1443
1461
  smalltalk.method({
1444
1462
  selector: "at:",
1445
- fn: function (aSymbol) {
1446
- var self = this;
1447
- var attr;
1448
- attr = smalltalk.send(aSymbol, "_asString", []);
1449
- return self['@jsObject'][attr];
1450
- return self;
1451
- }
1463
+ fn: function (aSymbol){
1464
+ var self=this;
1465
+ return smalltalk.withContext(function($ctx1) {
1466
+ return self}, function($ctx1) {$ctx1.fill(self,"at:",{aSymbol:aSymbol}, smalltalk.JSObjectProxy)})}
1452
1467
  }),
1453
1468
  smalltalk.JSObjectProxy);
1454
1469
 
@@ -1456,13 +1471,28 @@ smalltalk.addMethod(
1456
1471
  "_at_put_",
1457
1472
  smalltalk.method({
1458
1473
  selector: "at:put:",
1459
- fn: function (aSymbol, anObject) {
1460
- var self = this;
1461
- var attr;
1462
- attr = smalltalk.send(aSymbol, "_asString", []);
1463
- self['@jsObject'][attr] = anObject;
1464
- return self;
1465
- }
1474
+ fn: function (aSymbol,anObject){
1475
+ var self=this;
1476
+ return smalltalk.withContext(function($ctx1) {
1477
+ return self}, function($ctx1) {$ctx1.fill(self,"at:put:",{aSymbol:aSymbol,anObject:anObject}, smalltalk.JSObjectProxy)})}
1478
+ }),
1479
+ smalltalk.JSObjectProxy);
1480
+
1481
+ smalltalk.addMethod(
1482
+ "_canForwardMessage_",
1483
+ smalltalk.method({
1484
+ selector: "canForwardMessage:",
1485
+ fn: function (aMessage){
1486
+ var self=this;
1487
+ return smalltalk.withContext(function($ctx1) {
1488
+ var jsSelector = aMessage._selector()._asJavaScriptSelector();
1489
+ if(jsSelector in self._jsObject()) {
1490
+ return true
1491
+ } else {
1492
+ return false;
1493
+ }
1494
+ ;
1495
+ return self}, function($ctx1) {$ctx1.fill(self,"canForwardMessage:",{aMessage:aMessage}, smalltalk.JSObjectProxy)})}
1466
1496
  }),
1467
1497
  smalltalk.JSObjectProxy);
1468
1498
 
@@ -1470,22 +1500,31 @@ smalltalk.addMethod(
1470
1500
  "_doesNotUnderstand_",
1471
1501
  smalltalk.method({
1472
1502
  selector: "doesNotUnderstand:",
1473
- fn: function (aMessage) {
1474
- var self = this;
1475
- var obj;
1476
- var selector;
1477
- var jsSelector;
1478
- var arguments;
1479
- obj = smalltalk.send(self, "_jsObject", []);
1480
- selector = smalltalk.send(aMessage, "_selector", []);
1481
- jsSelector = smalltalk.send(selector, "_asJavaScriptSelector", []);
1482
- arguments = smalltalk.send(aMessage, "_arguments", []);
1483
- if (obj[jsSelector] != undefined) {
1484
- return smalltalk.send(obj, jsSelector, arguments);
1485
- }
1486
- smalltalk.send(self, "_doesNotUnderstand_", [aMessage], smalltalk.Object);
1487
- return self;
1488
- }
1503
+ fn: function (aMessage){
1504
+ var self=this;
1505
+ return smalltalk.withContext(function($ctx1) {
1506
+ $2=_st(self)._canForwardMessage_(aMessage);
1507
+ if(smalltalk.assert($2)){
1508
+ $1=_st(self)._forwardMessage_(aMessage);
1509
+ } else {
1510
+ $3=smalltalk.Object.fn.prototype._doesNotUnderstand_.apply(_st(self), [aMessage]);
1511
+ return $3;
1512
+ };
1513
+ return $1;
1514
+ }, function($ctx1) {$ctx1.fill(self,"doesNotUnderstand:",{aMessage:aMessage}, smalltalk.JSObjectProxy)})}
1515
+ }),
1516
+ smalltalk.JSObjectProxy);
1517
+
1518
+ smalltalk.addMethod(
1519
+ "_forwardMessage_",
1520
+ smalltalk.method({
1521
+ selector: "forwardMessage:",
1522
+ fn: function (aMessage){
1523
+ var self=this;
1524
+ return smalltalk.withContext(function($ctx1) {
1525
+ return smalltalk.send(self._jsObject(), aMessage._selector()._asJavaScriptSelector(), aMessage._arguments());
1526
+ ;
1527
+ return self}, function($ctx1) {$ctx1.fill(self,"forwardMessage:",{aMessage:aMessage}, smalltalk.JSObjectProxy)})}
1489
1528
  }),
1490
1529
  smalltalk.JSObjectProxy);
1491
1530
 
@@ -1493,18 +1532,15 @@ smalltalk.addMethod(
1493
1532
  "_inspectOn_",
1494
1533
  smalltalk.method({
1495
1534
  selector: "inspectOn:",
1496
- fn: function (anInspector) {
1497
- var self = this;
1498
- var variables;
1499
- variables = smalltalk.send(smalltalk.Dictionary || Dictionary, "_new", []);
1500
- smalltalk.send(variables, "_at_put_", ["#self", smalltalk.send(self, "_jsObject", [])]);
1501
- smalltalk.send(anInspector, "_setLabel_", [smalltalk.send(self, "_printString", [])]);
1502
- for (var i in self['@jsObject']) {
1503
- variables._at_put_(i, self['@jsObject'][i]);
1504
- }
1505
- smalltalk.send(anInspector, "_setVariables_", [variables]);
1506
- return self;
1507
- }
1535
+ fn: function (anInspector){
1536
+ var self=this;
1537
+ var variables;
1538
+ return smalltalk.withContext(function($ctx1) {
1539
+ _st(variables)._at_put_("#self",_st(self)._jsObject());
1540
+ _st(anInspector)._setLabel_(_st(self)._printString());
1541
+ _st(self)._addObjectVariablesTo_(variables);
1542
+ _st(anInspector)._setVariables_(variables);
1543
+ return self}, function($ctx1) {$ctx1.fill(self,"inspectOn:",{anInspector:anInspector,variables:variables}, smalltalk.JSObjectProxy)})}
1508
1544
  }),
1509
1545
  smalltalk.JSObjectProxy);
1510
1546
 
@@ -1512,10 +1548,12 @@ smalltalk.addMethod(
1512
1548
  "_jsObject",
1513
1549
  smalltalk.method({
1514
1550
  selector: "jsObject",
1515
- fn: function () {
1516
- var self = this;
1517
- return self['@jsObject'];
1518
- }
1551
+ fn: function (){
1552
+ var self=this;
1553
+ return smalltalk.withContext(function($ctx1) {
1554
+ $1=self["@jsObject"];
1555
+ return $1;
1556
+ }, function($ctx1) {$ctx1.fill(self,"jsObject",{}, smalltalk.JSObjectProxy)})}
1519
1557
  }),
1520
1558
  smalltalk.JSObjectProxy);
1521
1559
 
@@ -1523,11 +1561,26 @@ smalltalk.addMethod(
1523
1561
  "_jsObject_",
1524
1562
  smalltalk.method({
1525
1563
  selector: "jsObject:",
1526
- fn: function (aJSObject) {
1527
- var self = this;
1528
- self['@jsObject'] = aJSObject;
1529
- return self;
1530
- }
1564
+ fn: function (aJSObject){
1565
+ var self=this;
1566
+ return smalltalk.withContext(function($ctx1) {
1567
+ return self}, function($ctx1) {$ctx1.fill(self,"jsObject:",{aJSObject:aJSObject}, smalltalk.JSObjectProxy)})}
1568
+ }),
1569
+ smalltalk.JSObjectProxy);
1570
+
1571
+ smalltalk.addMethod(
1572
+ "_keysAndValuesDo_",
1573
+ smalltalk.method({
1574
+ selector: "keysAndValuesDo:",
1575
+ fn: function (aBlock){
1576
+ var self=this;
1577
+ return smalltalk.withContext(function($ctx1) {
1578
+ var o = self['@jsObject'];
1579
+ for(var i in o) {
1580
+ aBlock(i, o[i]);
1581
+ }
1582
+ ;
1583
+ return self}, function($ctx1) {$ctx1.fill(self,"keysAndValuesDo:",{aBlock:aBlock}, smalltalk.JSObjectProxy)})}
1531
1584
  }),
1532
1585
  smalltalk.JSObjectProxy);
1533
1586
 
@@ -1535,12 +1588,12 @@ smalltalk.addMethod(
1535
1588
  "_printString",
1536
1589
  smalltalk.method({
1537
1590
  selector: "printString",
1538
- fn: function () {
1539
- var self = this;
1540
- var $1;
1541
- $1 = smalltalk.send(smalltalk.send(self, "_jsObject", []), "_toString", []);
1542
- return $1;
1543
- }
1591
+ fn: function (){
1592
+ var self=this;
1593
+ return smalltalk.withContext(function($ctx1) {
1594
+ $1=_st(_st(self)._jsObject())._toString();
1595
+ return $1;
1596
+ }, function($ctx1) {$ctx1.fill(self,"printString",{}, smalltalk.JSObjectProxy)})}
1544
1597
  }),
1545
1598
  smalltalk.JSObjectProxy);
1546
1599
 
@@ -1549,29 +1602,28 @@ smalltalk.addMethod(
1549
1602
  "_on_",
1550
1603
  smalltalk.method({
1551
1604
  selector: "on:",
1552
- fn: function (aJSObject) {
1553
- var self = this;
1554
- var $2, $3, $1;
1555
- $2 = smalltalk.send(self, "_new", []);
1556
- smalltalk.send($2, "_jsObject_", [aJSObject]);
1557
- $3 = smalltalk.send($2, "_yourself", []);
1558
- $1 = $3;
1559
- return $1;
1560
- }
1605
+ fn: function (aJSObject){
1606
+ var self=this;
1607
+ return smalltalk.withContext(function($ctx1) {
1608
+ $2=_st(self)._new();
1609
+ _st($2)._jsObject_(aJSObject);
1610
+ $3=_st($2)._yourself();
1611
+ $1=$3;
1612
+ return $1;
1613
+ }, function($ctx1) {$ctx1.fill(self,"on:",{aJSObject:aJSObject}, smalltalk.JSObjectProxy.klass)})}
1561
1614
  }),
1562
1615
  smalltalk.JSObjectProxy.klass);
1563
1616
 
1564
1617
 
1565
1618
  smalltalk.addClass('Number', smalltalk.Object, [], 'Kernel-Objects');
1566
1619
  smalltalk.addMethod(
1567
- "_&",
1620
+ "__and",
1568
1621
  smalltalk.method({
1569
1622
  selector: "&",
1570
- fn: function (aNumber) {
1571
- var self = this;
1572
- return self & aNumber;
1573
- return self;
1574
- }
1623
+ fn: function (aNumber){
1624
+ var self=this;
1625
+ return smalltalk.withContext(function($ctx1) {
1626
+ return self}, function($ctx1) {$ctx1.fill(self,"&",{aNumber:aNumber}, smalltalk.Number)})}
1575
1627
  }),
1576
1628
  smalltalk.Number);
1577
1629
 
@@ -1579,11 +1631,10 @@ smalltalk.addMethod(
1579
1631
  "__star",
1580
1632
  smalltalk.method({
1581
1633
  selector: "*",
1582
- fn: function (aNumber) {
1583
- var self = this;
1584
- return self * aNumber;
1585
- return self;
1586
- }
1634
+ fn: function (aNumber){
1635
+ var self=this;
1636
+ return smalltalk.withContext(function($ctx1) {
1637
+ return self}, function($ctx1) {$ctx1.fill(self,"*",{aNumber:aNumber}, smalltalk.Number)})}
1587
1638
  }),
1588
1639
  smalltalk.Number);
1589
1640
 
@@ -1591,11 +1642,10 @@ smalltalk.addMethod(
1591
1642
  "__plus",
1592
1643
  smalltalk.method({
1593
1644
  selector: "+",
1594
- fn: function (aNumber) {
1595
- var self = this;
1596
- return self + aNumber;
1597
- return self;
1598
- }
1645
+ fn: function (aNumber){
1646
+ var self=this;
1647
+ return smalltalk.withContext(function($ctx1) {
1648
+ return self}, function($ctx1) {$ctx1.fill(self,"+",{aNumber:aNumber}, smalltalk.Number)})}
1599
1649
  }),
1600
1650
  smalltalk.Number);
1601
1651
 
@@ -1603,11 +1653,10 @@ smalltalk.addMethod(
1603
1653
  "__minus",
1604
1654
  smalltalk.method({
1605
1655
  selector: "-",
1606
- fn: function (aNumber) {
1607
- var self = this;
1608
- return self - aNumber;
1609
- return self;
1610
- }
1656
+ fn: function (aNumber){
1657
+ var self=this;
1658
+ return smalltalk.withContext(function($ctx1) {
1659
+ return self}, function($ctx1) {$ctx1.fill(self,"-",{aNumber:aNumber}, smalltalk.Number)})}
1611
1660
  }),
1612
1661
  smalltalk.Number);
1613
1662
 
@@ -1615,11 +1664,10 @@ smalltalk.addMethod(
1615
1664
  "__slash",
1616
1665
  smalltalk.method({
1617
1666
  selector: "/",
1618
- fn: function (aNumber) {
1619
- var self = this;
1620
- return self / aNumber;
1621
- return self;
1622
- }
1667
+ fn: function (aNumber){
1668
+ var self=this;
1669
+ return smalltalk.withContext(function($ctx1) {
1670
+ return self}, function($ctx1) {$ctx1.fill(self,"/",{aNumber:aNumber}, smalltalk.Number)})}
1623
1671
  }),
1624
1672
  smalltalk.Number);
1625
1673
 
@@ -1627,11 +1675,10 @@ smalltalk.addMethod(
1627
1675
  "__lt",
1628
1676
  smalltalk.method({
1629
1677
  selector: "<",
1630
- fn: function (aNumber) {
1631
- var self = this;
1632
- return self < aNumber;
1633
- return self;
1634
- }
1678
+ fn: function (aNumber){
1679
+ var self=this;
1680
+ return smalltalk.withContext(function($ctx1) {
1681
+ return self}, function($ctx1) {$ctx1.fill(self,"<",{aNumber:aNumber}, smalltalk.Number)})}
1635
1682
  }),
1636
1683
  smalltalk.Number);
1637
1684
 
@@ -1639,11 +1686,10 @@ smalltalk.addMethod(
1639
1686
  "__lt_eq",
1640
1687
  smalltalk.method({
1641
1688
  selector: "<=",
1642
- fn: function (aNumber) {
1643
- var self = this;
1644
- return self <= aNumber;
1645
- return self;
1646
- }
1689
+ fn: function (aNumber){
1690
+ var self=this;
1691
+ return smalltalk.withContext(function($ctx1) {
1692
+ return self}, function($ctx1) {$ctx1.fill(self,"<=",{aNumber:aNumber}, smalltalk.Number)})}
1647
1693
  }),
1648
1694
  smalltalk.Number);
1649
1695
 
@@ -1651,16 +1697,15 @@ smalltalk.addMethod(
1651
1697
  "__eq",
1652
1698
  smalltalk.method({
1653
1699
  selector: "=",
1654
- fn: function (aNumber) {
1655
- var self = this;
1656
- var $1;
1657
- $1 = smalltalk.send(aNumber, "_isNumber", []);
1658
- if (!smalltalk.assert($1)) {
1659
- return false;
1660
- }
1661
- return Number(self) == aNumber;
1662
- return self;
1663
- }
1700
+ fn: function (aNumber){
1701
+ var self=this;
1702
+ return smalltalk.withContext(function($ctx1) {
1703
+ if(! aNumber._isNumber || ! aNumber._isNumber()) {
1704
+ return false;
1705
+ }
1706
+ return Number(self) == aNumber
1707
+ ;
1708
+ return self}, function($ctx1) {$ctx1.fill(self,"=",{aNumber:aNumber}, smalltalk.Number)})}
1664
1709
  }),
1665
1710
  smalltalk.Number);
1666
1711
 
@@ -1668,11 +1713,10 @@ smalltalk.addMethod(
1668
1713
  "__gt",
1669
1714
  smalltalk.method({
1670
1715
  selector: ">",
1671
- fn: function (aNumber) {
1672
- var self = this;
1673
- return self > aNumber;
1674
- return self;
1675
- }
1716
+ fn: function (aNumber){
1717
+ var self=this;
1718
+ return smalltalk.withContext(function($ctx1) {
1719
+ return self}, function($ctx1) {$ctx1.fill(self,">",{aNumber:aNumber}, smalltalk.Number)})}
1676
1720
  }),
1677
1721
  smalltalk.Number);
1678
1722
 
@@ -1680,11 +1724,10 @@ smalltalk.addMethod(
1680
1724
  "__gt_eq",
1681
1725
  smalltalk.method({
1682
1726
  selector: ">=",
1683
- fn: function (aNumber) {
1684
- var self = this;
1685
- return self >= aNumber;
1686
- return self;
1687
- }
1727
+ fn: function (aNumber){
1728
+ var self=this;
1729
+ return smalltalk.withContext(function($ctx1) {
1730
+ return self}, function($ctx1) {$ctx1.fill(self,">=",{aNumber:aNumber}, smalltalk.Number)})}
1688
1731
  }),
1689
1732
  smalltalk.Number);
1690
1733
 
@@ -1692,17 +1735,28 @@ smalltalk.addMethod(
1692
1735
  "__at",
1693
1736
  smalltalk.method({
1694
1737
  selector: "@",
1695
- fn: function (aNumber) {
1696
- var self = this;
1697
- var $1;
1698
- $1 = smalltalk.send(smalltalk.Point || Point, "_x_y_", [self, aNumber]);
1699
- return $1;
1700
- }
1738
+ fn: function (aNumber){
1739
+ var self=this;
1740
+ return smalltalk.withContext(function($ctx1) {
1741
+ $1=_st((smalltalk.Point || Point))._x_y_(self,aNumber);
1742
+ return $1;
1743
+ }, function($ctx1) {$ctx1.fill(self,"@",{aNumber:aNumber}, smalltalk.Number)})}
1744
+ }),
1745
+ smalltalk.Number);
1746
+
1747
+ smalltalk.addMethod(
1748
+ "__backslash",
1749
+ smalltalk.method({
1750
+ selector: "\x5c",
1751
+ fn: function (aNumber){
1752
+ var self=this;
1753
+ return smalltalk.withContext(function($ctx1) {
1754
+ return self}, function($ctx1) {$ctx1.fill(self,"\x5c\x5c",{aNumber:aNumber}, smalltalk.Number)})}
1701
1755
  }),
1702
1756
  smalltalk.Number);
1703
1757
 
1704
1758
  smalltalk.addMethod(
1705
- "_\x5c\x5c",
1759
+ "__backslash_backslash",
1706
1760
  smalltalk.method({
1707
1761
  selector: "\x5c\x5c",
1708
1762
  fn: function (aNumber) {
@@ -1717,12 +1771,10 @@ smalltalk.addMethod(
1717
1771
  "_abs",
1718
1772
  smalltalk.method({
1719
1773
  selector: "abs",
1720
- fn: function () {
1721
- var self = this;
1722
- var $1;
1723
- $1 = Math.abs(self);
1724
- return $1;
1725
- }
1774
+ fn: function (){
1775
+ var self=this;
1776
+ return smalltalk.withContext(function($ctx1) {
1777
+ return self}, function($ctx1) {$ctx1.fill(self,"abs",{}, smalltalk.Number)})}
1726
1778
  }),
1727
1779
  smalltalk.Number);
1728
1780
 
@@ -1730,10 +1782,12 @@ smalltalk.addMethod(
1730
1782
  "_asJSON",
1731
1783
  smalltalk.method({
1732
1784
  selector: "asJSON",
1733
- fn: function () {
1734
- var self = this;
1735
- return self;
1736
- }
1785
+ fn: function (){
1786
+ var self=this;
1787
+ return smalltalk.withContext(function($ctx1) {
1788
+ $1=self;
1789
+ return $1;
1790
+ }, function($ctx1) {$ctx1.fill(self,"asJSON",{}, smalltalk.Number)})}
1737
1791
  }),
1738
1792
  smalltalk.Number);
1739
1793
 
@@ -1741,12 +1795,12 @@ smalltalk.addMethod(
1741
1795
  "_asJavascript",
1742
1796
  smalltalk.method({
1743
1797
  selector: "asJavascript",
1744
- fn: function () {
1745
- var self = this;
1746
- var $1;
1747
- $1 = smalltalk.send(smalltalk.send("(", "__comma", [smalltalk.send(self, "_printString", [])]), "__comma", [")"]);
1748
- return $1;
1749
- }
1798
+ fn: function (){
1799
+ var self=this;
1800
+ return smalltalk.withContext(function($ctx1) {
1801
+ $1=_st(_st("(").__comma(_st(self)._printString())).__comma(")");
1802
+ return $1;
1803
+ }, function($ctx1) {$ctx1.fill(self,"asJavascript",{}, smalltalk.Number)})}
1750
1804
  }),
1751
1805
  smalltalk.Number);
1752
1806
 
@@ -1754,12 +1808,12 @@ smalltalk.addMethod(
1754
1808
  "_asPoint",
1755
1809
  smalltalk.method({
1756
1810
  selector: "asPoint",
1757
- fn: function () {
1758
- var self = this;
1759
- var $1;
1760
- $1 = smalltalk.send(smalltalk.Point || Point, "_x_y_", [self, self]);
1761
- return $1;
1762
- }
1811
+ fn: function (){
1812
+ var self=this;
1813
+ return smalltalk.withContext(function($ctx1) {
1814
+ $1=_st((smalltalk.Point || Point))._x_y_(self,self);
1815
+ return $1;
1816
+ }, function($ctx1) {$ctx1.fill(self,"asPoint",{}, smalltalk.Number)})}
1763
1817
  }),
1764
1818
  smalltalk.Number);
1765
1819
 
@@ -1767,12 +1821,12 @@ smalltalk.addMethod(
1767
1821
  "_asString",
1768
1822
  smalltalk.method({
1769
1823
  selector: "asString",
1770
- fn: function () {
1771
- var self = this;
1772
- var $1;
1773
- $1 = smalltalk.send(self, "_printString", []);
1774
- return $1;
1775
- }
1824
+ fn: function (){
1825
+ var self=this;
1826
+ return smalltalk.withContext(function($ctx1) {
1827
+ $1=_st(self)._printString();
1828
+ return $1;
1829
+ }, function($ctx1) {$ctx1.fill(self,"asString",{}, smalltalk.Number)})}
1776
1830
  }),
1777
1831
  smalltalk.Number);
1778
1832
 
@@ -1780,36 +1834,12 @@ smalltalk.addMethod(
1780
1834
  "_atRandom",
1781
1835
  smalltalk.method({
1782
1836
  selector: "atRandom",
1783
- fn: function () {
1784
- var self = this;
1785
- var $1;
1786
- $1 = smalltalk.send(smalltalk.send(smalltalk.send(smalltalk.send(smalltalk.send(smalltalk.Random || Random, "_new", []), "_next", []), "__star", [self]), "_truncated", []), "__plus", [1]);
1787
- return $1;
1788
- }
1789
- }),
1790
- smalltalk.Number);
1791
-
1792
- smalltalk.addMethod(
1793
- "_clearInterval",
1794
- smalltalk.method({
1795
- selector: "clearInterval",
1796
- fn: function () {
1797
- var self = this;
1798
- clearInterval(Number(self));
1799
- return self;
1800
- }
1801
- }),
1802
- smalltalk.Number);
1803
-
1804
- smalltalk.addMethod(
1805
- "_clearTimeout",
1806
- smalltalk.method({
1807
- selector: "clearTimeout",
1808
- fn: function () {
1809
- var self = this;
1810
- clearTimeout(Number(self));
1811
- return self;
1812
- }
1837
+ fn: function (){
1838
+ var self=this;
1839
+ return smalltalk.withContext(function($ctx1) {
1840
+ $1=_st(_st(_st(_st(_st((smalltalk.Random || Random))._new())._next()).__star(self))._truncated()).__plus((1));
1841
+ return $1;
1842
+ }, function($ctx1) {$ctx1.fill(self,"atRandom",{}, smalltalk.Number)})}
1813
1843
  }),
1814
1844
  smalltalk.Number);
1815
1845
 
@@ -1817,10 +1847,12 @@ smalltalk.addMethod(
1817
1847
  "_copy",
1818
1848
  smalltalk.method({
1819
1849
  selector: "copy",
1820
- fn: function () {
1821
- var self = this;
1822
- return self;
1823
- }
1850
+ fn: function (){
1851
+ var self=this;
1852
+ return smalltalk.withContext(function($ctx1) {
1853
+ $1=self;
1854
+ return $1;
1855
+ }, function($ctx1) {$ctx1.fill(self,"copy",{}, smalltalk.Number)})}
1824
1856
  }),
1825
1857
  smalltalk.Number);
1826
1858
 
@@ -1828,12 +1860,12 @@ smalltalk.addMethod(
1828
1860
  "_deepCopy",
1829
1861
  smalltalk.method({
1830
1862
  selector: "deepCopy",
1831
- fn: function () {
1832
- var self = this;
1833
- var $1;
1834
- $1 = smalltalk.send(self, "_copy", []);
1835
- return $1;
1836
- }
1863
+ fn: function (){
1864
+ var self=this;
1865
+ return smalltalk.withContext(function($ctx1) {
1866
+ $1=_st(self)._copy();
1867
+ return $1;
1868
+ }, function($ctx1) {$ctx1.fill(self,"deepCopy",{}, smalltalk.Number)})}
1837
1869
  }),
1838
1870
  smalltalk.Number);
1839
1871
 
@@ -1841,12 +1873,12 @@ smalltalk.addMethod(
1841
1873
  "_even",
1842
1874
  smalltalk.method({
1843
1875
  selector: "even",
1844
- fn: function () {
1845
- var self = this;
1846
- var $1;
1847
- $1 = smalltalk.send(0, "__eq", [smalltalk.send(self, "_\\\\", [2])]);
1848
- return $1;
1849
- }
1876
+ fn: function (){
1877
+ var self=this;
1878
+ return smalltalk.withContext(function($ctx1) {
1879
+ $1=_st((0)).__eq(_st(self).__backslash_backslash((2)));
1880
+ return $1;
1881
+ }, function($ctx1) {$ctx1.fill(self,"even",{}, smalltalk.Number)})}
1850
1882
  }),
1851
1883
  smalltalk.Number);
1852
1884
 
@@ -1854,12 +1886,12 @@ smalltalk.addMethod(
1854
1886
  "_identityHash",
1855
1887
  smalltalk.method({
1856
1888
  selector: "identityHash",
1857
- fn: function () {
1858
- var self = this;
1859
- var $1;
1860
- $1 = smalltalk.send(smalltalk.send(self, "_asString", []), "__comma", ["n"]);
1861
- return $1;
1862
- }
1889
+ fn: function (){
1890
+ var self=this;
1891
+ return smalltalk.withContext(function($ctx1) {
1892
+ $1=_st(_st(self)._asString()).__comma("n");
1893
+ return $1;
1894
+ }, function($ctx1) {$ctx1.fill(self,"identityHash",{}, smalltalk.Number)})}
1863
1895
  }),
1864
1896
  smalltalk.Number);
1865
1897
 
@@ -1867,10 +1899,10 @@ smalltalk.addMethod(
1867
1899
  "_isNumber",
1868
1900
  smalltalk.method({
1869
1901
  selector: "isNumber",
1870
- fn: function () {
1871
- var self = this;
1872
- return true;
1873
- }
1902
+ fn: function (){
1903
+ var self=this;
1904
+ return smalltalk.withContext(function($ctx1) {
1905
+ }, function($ctx1) {$ctx1.fill(self,"isNumber",{}, smalltalk.Number)})}
1874
1906
  }),
1875
1907
  smalltalk.Number);
1876
1908
 
@@ -1878,12 +1910,12 @@ smalltalk.addMethod(
1878
1910
  "_isZero",
1879
1911
  smalltalk.method({
1880
1912
  selector: "isZero",
1881
- fn: function () {
1882
- var self = this;
1883
- var $1;
1884
- $1 = smalltalk.send(self, "__eq", [0]);
1885
- return $1;
1886
- }
1913
+ fn: function (){
1914
+ var self=this;
1915
+ return smalltalk.withContext(function($ctx1) {
1916
+ $1=_st(self).__eq((0));
1917
+ return $1;
1918
+ }, function($ctx1) {$ctx1.fill(self,"isZero",{}, smalltalk.Number)})}
1887
1919
  }),
1888
1920
  smalltalk.Number);
1889
1921
 
@@ -1891,11 +1923,10 @@ smalltalk.addMethod(
1891
1923
  "_max_",
1892
1924
  smalltalk.method({
1893
1925
  selector: "max:",
1894
- fn: function (aNumber) {
1895
- var self = this;
1896
- return Math.max(self, aNumber);
1897
- return self;
1898
- }
1926
+ fn: function (aNumber){
1927
+ var self=this;
1928
+ return smalltalk.withContext(function($ctx1) {
1929
+ return self}, function($ctx1) {$ctx1.fill(self,"max:",{aNumber:aNumber}, smalltalk.Number)})}
1899
1930
  }),
1900
1931
  smalltalk.Number);
1901
1932
 
@@ -1903,11 +1934,10 @@ smalltalk.addMethod(
1903
1934
  "_min_",
1904
1935
  smalltalk.method({
1905
1936
  selector: "min:",
1906
- fn: function (aNumber) {
1907
- var self = this;
1908
- return Math.min(self, aNumber);
1909
- return self;
1910
- }
1937
+ fn: function (aNumber){
1938
+ var self=this;
1939
+ return smalltalk.withContext(function($ctx1) {
1940
+ return self}, function($ctx1) {$ctx1.fill(self,"min:",{aNumber:aNumber}, smalltalk.Number)})}
1911
1941
  }),
1912
1942
  smalltalk.Number);
1913
1943
 
@@ -1915,12 +1945,12 @@ smalltalk.addMethod(
1915
1945
  "_negated",
1916
1946
  smalltalk.method({
1917
1947
  selector: "negated",
1918
- fn: function () {
1919
- var self = this;
1920
- var $1;
1921
- $1 = smalltalk.send(0, "__minus", [self]);
1922
- return $1;
1923
- }
1948
+ fn: function (){
1949
+ var self=this;
1950
+ return smalltalk.withContext(function($ctx1) {
1951
+ $1=_st((0)).__minus(self);
1952
+ return $1;
1953
+ }, function($ctx1) {$ctx1.fill(self,"negated",{}, smalltalk.Number)})}
1924
1954
  }),
1925
1955
  smalltalk.Number);
1926
1956
 
@@ -1928,12 +1958,12 @@ smalltalk.addMethod(
1928
1958
  "_negative",
1929
1959
  smalltalk.method({
1930
1960
  selector: "negative",
1931
- fn: function () {
1932
- var self = this;
1933
- var $1;
1934
- $1 = smalltalk.send(self, "__lt", [0]);
1935
- return $1;
1936
- }
1961
+ fn: function (){
1962
+ var self=this;
1963
+ return smalltalk.withContext(function($ctx1) {
1964
+ $1=_st(self).__lt((0));
1965
+ return $1;
1966
+ }, function($ctx1) {$ctx1.fill(self,"negative",{}, smalltalk.Number)})}
1937
1967
  }),
1938
1968
  smalltalk.Number);
1939
1969
 
@@ -1941,12 +1971,12 @@ smalltalk.addMethod(
1941
1971
  "_odd",
1942
1972
  smalltalk.method({
1943
1973
  selector: "odd",
1944
- fn: function () {
1945
- var self = this;
1946
- var $1;
1947
- $1 = smalltalk.send(smalltalk.send(self, "_even", []), "_not", []);
1948
- return $1;
1949
- }
1974
+ fn: function (){
1975
+ var self=this;
1976
+ return smalltalk.withContext(function($ctx1) {
1977
+ $1=_st(_st(self)._even())._not();
1978
+ return $1;
1979
+ }, function($ctx1) {$ctx1.fill(self,"odd",{}, smalltalk.Number)})}
1950
1980
  }),
1951
1981
  smalltalk.Number);
1952
1982
 
@@ -1954,12 +1984,12 @@ smalltalk.addMethod(
1954
1984
  "_positive",
1955
1985
  smalltalk.method({
1956
1986
  selector: "positive",
1957
- fn: function () {
1958
- var self = this;
1959
- var $1;
1960
- $1 = smalltalk.send(self, "__gt_eq", [0]);
1961
- return $1;
1962
- }
1987
+ fn: function (){
1988
+ var self=this;
1989
+ return smalltalk.withContext(function($ctx1) {
1990
+ $1=_st(self).__gt_eq((0));
1991
+ return $1;
1992
+ }, function($ctx1) {$ctx1.fill(self,"positive",{}, smalltalk.Number)})}
1963
1993
  }),
1964
1994
  smalltalk.Number);
1965
1995
 
@@ -1967,11 +1997,10 @@ smalltalk.addMethod(
1967
1997
  "_printShowingDecimalPlaces_",
1968
1998
  smalltalk.method({
1969
1999
  selector: "printShowingDecimalPlaces:",
1970
- fn: function (placesDesired) {
1971
- var self = this;
1972
- return self.toFixed(placesDesired);
1973
- return self;
1974
- }
2000
+ fn: function (placesDesired){
2001
+ var self=this;
2002
+ return smalltalk.withContext(function($ctx1) {
2003
+ return self}, function($ctx1) {$ctx1.fill(self,"printShowingDecimalPlaces:",{placesDesired:placesDesired}, smalltalk.Number)})}
1975
2004
  }),
1976
2005
  smalltalk.Number);
1977
2006
 
@@ -1979,11 +2008,10 @@ smalltalk.addMethod(
1979
2008
  "_printString",
1980
2009
  smalltalk.method({
1981
2010
  selector: "printString",
1982
- fn: function () {
1983
- var self = this;
1984
- return String(self);
1985
- return self;
1986
- }
2011
+ fn: function (){
2012
+ var self=this;
2013
+ return smalltalk.withContext(function($ctx1) {
2014
+ return self}, function($ctx1) {$ctx1.fill(self,"printString",{}, smalltalk.Number)})}
1987
2015
  }),
1988
2016
  smalltalk.Number);
1989
2017
 
@@ -1991,11 +2019,10 @@ smalltalk.addMethod(
1991
2019
  "_rounded",
1992
2020
  smalltalk.method({
1993
2021
  selector: "rounded",
1994
- fn: function () {
1995
- var self = this;
1996
- return Math.round(self);
1997
- return self;
1998
- }
2022
+ fn: function (){
2023
+ var self=this;
2024
+ return smalltalk.withContext(function($ctx1) {
2025
+ return self}, function($ctx1) {$ctx1.fill(self,"rounded",{}, smalltalk.Number)})}
1999
2026
  }),
2000
2027
  smalltalk.Number);
2001
2028
 
@@ -2003,11 +2030,10 @@ smalltalk.addMethod(
2003
2030
  "_sqrt",
2004
2031
  smalltalk.method({
2005
2032
  selector: "sqrt",
2006
- fn: function () {
2007
- var self = this;
2008
- return Math.sqrt(self);
2009
- return self;
2010
- }
2033
+ fn: function (){
2034
+ var self=this;
2035
+ return smalltalk.withContext(function($ctx1) {
2036
+ return self}, function($ctx1) {$ctx1.fill(self,"sqrt",{}, smalltalk.Number)})}
2011
2037
  }),
2012
2038
  smalltalk.Number);
2013
2039
 
@@ -2015,12 +2041,12 @@ smalltalk.addMethod(
2015
2041
  "_squared",
2016
2042
  smalltalk.method({
2017
2043
  selector: "squared",
2018
- fn: function () {
2019
- var self = this;
2020
- var $1;
2021
- $1 = smalltalk.send(self, "__star", [self]);
2022
- return $1;
2023
- }
2044
+ fn: function (){
2045
+ var self=this;
2046
+ return smalltalk.withContext(function($ctx1) {
2047
+ $1=_st(self).__star(self);
2048
+ return $1;
2049
+ }, function($ctx1) {$ctx1.fill(self,"squared",{}, smalltalk.Number)})}
2024
2050
  }),
2025
2051
  smalltalk.Number);
2026
2052
 
@@ -2028,15 +2054,18 @@ smalltalk.addMethod(
2028
2054
  "_timesRepeat_",
2029
2055
  smalltalk.method({
2030
2056
  selector: "timesRepeat:",
2031
- fn: function (aBlock) {
2032
- var self = this;
2033
- var integer;
2034
- var count;
2035
- integer = smalltalk.send(self, "_truncated", []);
2036
- count = 1;
2037
- smalltalk.send(function () {return smalltalk.send(count, "__gt", [self]);}, "_whileFalse_", [function () {smalltalk.send(aBlock, "_value", []);count = smalltalk.send(count, "__plus", [1]);return count;}]);
2038
- return self;
2039
- }
2057
+ fn: function (aBlock){
2058
+ var self=this;
2059
+ var count;
2060
+ return smalltalk.withContext(function($ctx1) {
2061
+ _st((function(){
2062
+ return smalltalk.withContext(function($ctx2) {
2063
+ }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._whileFalse_((function(){
2064
+ return smalltalk.withContext(function($ctx2) {
2065
+ count=_st(count).__plus((1));
2066
+ return count;
2067
+ }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
2068
+ return self}, function($ctx1) {$ctx1.fill(self,"timesRepeat:",{aBlock:aBlock,count:count}, smalltalk.Number)})}
2040
2069
  }),
2041
2070
  smalltalk.Number);
2042
2071
 
@@ -2044,19 +2073,24 @@ smalltalk.addMethod(
2044
2073
  "_to_",
2045
2074
  smalltalk.method({
2046
2075
  selector: "to:",
2047
- fn: function (aNumber) {
2048
- var self = this;
2049
- var array;
2050
- var first;
2051
- var last;
2052
- var count;
2053
- first = smalltalk.send(self, "_truncated", []);
2054
- last = smalltalk.send(smalltalk.send(aNumber, "_truncated", []), "__plus", [1]);
2055
- count = 1;
2056
- array = smalltalk.send(smalltalk.Array || Array, "_new", []);
2057
- smalltalk.send(smalltalk.send(last, "__minus", [first]), "_timesRepeat_", [function () {smalltalk.send(array, "_at_put_", [count, first]);count = smalltalk.send(count, "__plus", [1]);count;first = smalltalk.send(first, "__plus", [1]);return first;}]);
2058
- return array;
2059
- }
2076
+ fn: function (aNumber){
2077
+ var self=this;
2078
+ var array,first,last,count;
2079
+ return smalltalk.withContext(function($ctx1) {
2080
+ first=_st(self)._truncated();
2081
+ last=_st(_st(aNumber)._truncated()).__plus((1));
2082
+ count=(1);
2083
+ array=_st((smalltalk.Array || Array))._new();
2084
+ _st(_st(last).__minus(first))._timesRepeat_((function(){
2085
+ return smalltalk.withContext(function($ctx2) {
2086
+ count=_st(count).__plus((1));
2087
+ count;
2088
+ first=_st(first).__plus((1));
2089
+ return first;
2090
+ }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
2091
+ $1=array;
2092
+ return $1;
2093
+ }, function($ctx1) {$ctx1.fill(self,"to:",{aNumber:aNumber,array:array,first:first,last:last,count:count}, smalltalk.Number)})}
2060
2094
  }),
2061
2095
  smalltalk.Number);
2062
2096
 
@@ -2064,27 +2098,42 @@ smalltalk.addMethod(
2064
2098
  "_to_by_",
2065
2099
  smalltalk.method({
2066
2100
  selector: "to:by:",
2067
- fn: function (stop, step) {
2068
- var self = this;
2069
- var $1, $2;
2070
- var array;
2071
- var value;
2072
- var pos;
2073
- value = self;
2074
- array = smalltalk.send(smalltalk.Array || Array, "_new", []);
2075
- pos = 1;
2076
- $1 = smalltalk.send(step, "__eq", [0]);
2077
- if (smalltalk.assert($1)) {
2078
- smalltalk.send(self, "_error_", ["step must be non-zero"]);
2079
- }
2080
- $2 = smalltalk.send(step, "__lt", [0]);
2081
- if (smalltalk.assert($2)) {
2082
- smalltalk.send(function () {return smalltalk.send(value, "__gt_eq", [stop]);}, "_whileTrue_", [function () {smalltalk.send(array, "_at_put_", [pos, value]);pos = smalltalk.send(pos, "__plus", [1]);pos;value = smalltalk.send(value, "__plus", [step]);return value;}]);
2083
- } else {
2084
- smalltalk.send(function () {return smalltalk.send(value, "__lt_eq", [stop]);}, "_whileTrue_", [function () {smalltalk.send(array, "_at_put_", [pos, value]);pos = smalltalk.send(pos, "__plus", [1]);pos;value = smalltalk.send(value, "__plus", [step]);return value;}]);
2085
- }
2086
- return array;
2087
- }
2101
+ fn: function (stop,step){
2102
+ var self=this;
2103
+ var array,value,pos;
2104
+ return smalltalk.withContext(function($ctx1) {
2105
+ value=self;
2106
+ array=_st((smalltalk.Array || Array))._new();
2107
+ pos=(1);
2108
+ $1=_st(step).__eq((0));
2109
+ if(smalltalk.assert($1)){
2110
+ _st(self)._error_("step must be non-zero");
2111
+ };
2112
+ $2=_st(step).__lt((0));
2113
+ if(smalltalk.assert($2)){
2114
+ _st((function(){
2115
+ return smalltalk.withContext(function($ctx2) {
2116
+ }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._whileTrue_((function(){
2117
+ return smalltalk.withContext(function($ctx2) {
2118
+ pos=_st(pos).__plus((1));
2119
+ pos;
2120
+ value=_st(value).__plus(step);
2121
+ return value;
2122
+ }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
2123
+ } else {
2124
+ _st((function(){
2125
+ return smalltalk.withContext(function($ctx2) {
2126
+ }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._whileTrue_((function(){
2127
+ return smalltalk.withContext(function($ctx2) {
2128
+ pos=_st(pos).__plus((1));
2129
+ pos;
2130
+ value=_st(value).__plus(step);
2131
+ return value;
2132
+ }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
2133
+ };
2134
+ $3=array;
2135
+ return $3;
2136
+ }, function($ctx1) {$ctx1.fill(self,"to:by:",{stop:stop,step:step,array:array,value:value,pos:pos}, smalltalk.Number)})}
2088
2137
  }),
2089
2138
  smalltalk.Number);
2090
2139
 
@@ -2092,23 +2141,34 @@ smalltalk.addMethod(
2092
2141
  "_to_by_do_",
2093
2142
  smalltalk.method({
2094
2143
  selector: "to:by:do:",
2095
- fn: function (stop, step, aBlock) {
2096
- var self = this;
2097
- var $1, $2;
2098
- var value;
2099
- value = self;
2100
- $1 = smalltalk.send(step, "__eq", [0]);
2101
- if (smalltalk.assert($1)) {
2102
- smalltalk.send(self, "_error_", ["step must be non-zero"]);
2103
- }
2104
- $2 = smalltalk.send(step, "__lt", [0]);
2105
- if (smalltalk.assert($2)) {
2106
- smalltalk.send(function () {return smalltalk.send(value, "__gt_eq", [stop]);}, "_whileTrue_", [function () {smalltalk.send(aBlock, "_value_", [value]);value = smalltalk.send(value, "__plus", [step]);return value;}]);
2107
- } else {
2108
- smalltalk.send(function () {return smalltalk.send(value, "__lt_eq", [stop]);}, "_whileTrue_", [function () {smalltalk.send(aBlock, "_value_", [value]);value = smalltalk.send(value, "__plus", [step]);return value;}]);
2109
- }
2110
- return self;
2111
- }
2144
+ fn: function (stop,step,aBlock){
2145
+ var self=this;
2146
+ var value;
2147
+ return smalltalk.withContext(function($ctx1) {
2148
+ value=self;
2149
+ $1=_st(step).__eq((0));
2150
+ if(smalltalk.assert($1)){
2151
+ _st(self)._error_("step must be non-zero");
2152
+ };
2153
+ $2=_st(step).__lt((0));
2154
+ if(smalltalk.assert($2)){
2155
+ _st((function(){
2156
+ return smalltalk.withContext(function($ctx2) {
2157
+ }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._whileTrue_((function(){
2158
+ return smalltalk.withContext(function($ctx2) {
2159
+ value=_st(value).__plus(step);
2160
+ return value;
2161
+ }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
2162
+ } else {
2163
+ _st((function(){
2164
+ return smalltalk.withContext(function($ctx2) {
2165
+ }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._whileTrue_((function(){
2166
+ return smalltalk.withContext(function($ctx2) {
2167
+ value=_st(value).__plus(step);
2168
+ return value;
2169
+ }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
2170
+ };
2171
+ return self}, function($ctx1) {$ctx1.fill(self,"to:by:do:",{stop:stop,step:step,aBlock:aBlock,value:value}, smalltalk.Number)})}
2112
2172
  }),
2113
2173
  smalltalk.Number);
2114
2174
 
@@ -2116,13 +2176,18 @@ smalltalk.addMethod(
2116
2176
  "_to_do_",
2117
2177
  smalltalk.method({
2118
2178
  selector: "to:do:",
2119
- fn: function (stop, aBlock) {
2120
- var self = this;
2121
- var nextValue;
2122
- nextValue = self;
2123
- smalltalk.send(function () {return smalltalk.send(nextValue, "__lt_eq", [stop]);}, "_whileTrue_", [function () {smalltalk.send(aBlock, "_value_", [nextValue]);nextValue = smalltalk.send(nextValue, "__plus", [1]);return nextValue;}]);
2124
- return self;
2125
- }
2179
+ fn: function (stop,aBlock){
2180
+ var self=this;
2181
+ var nextValue;
2182
+ return smalltalk.withContext(function($ctx1) {
2183
+ _st((function(){
2184
+ return smalltalk.withContext(function($ctx2) {
2185
+ }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._whileTrue_((function(){
2186
+ return smalltalk.withContext(function($ctx2) {
2187
+ nextValue=_st(nextValue).__plus((1));
2188
+ return nextValue;
2189
+ }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
2190
+ return self}, function($ctx1) {$ctx1.fill(self,"to:do:",{stop:stop,aBlock:aBlock,nextValue:nextValue}, smalltalk.Number)})}
2126
2191
  }),
2127
2192
  smalltalk.Number);
2128
2193
 
@@ -2130,30 +2195,27 @@ smalltalk.addMethod(
2130
2195
  "_truncated",
2131
2196
  smalltalk.method({
2132
2197
  selector: "truncated",
2133
- fn: function () {
2134
- var self = this;
2135
- var $1;
2136
- var result;
2137
- $1 = smalltalk.send(self, "__gt_eq", [0]);
2138
- if (smalltalk.assert($1)) {
2139
- result = Math.floor(self);
2140
- } else {
2141
- result = Math.floor(self * -1) * -1;
2142
- }
2143
- return result;
2144
- }
2198
+ fn: function (){
2199
+ var self=this;
2200
+ return smalltalk.withContext(function($ctx1) {
2201
+ if(self >= 0) {
2202
+ return Math.floor(self);
2203
+ } else {
2204
+ return Math.floor(self * (-1)) * (-1);
2205
+ };
2206
+ ;
2207
+ return self}, function($ctx1) {$ctx1.fill(self,"truncated",{}, smalltalk.Number)})}
2145
2208
  }),
2146
2209
  smalltalk.Number);
2147
2210
 
2148
2211
  smalltalk.addMethod(
2149
- "_|",
2212
+ "__or",
2150
2213
  smalltalk.method({
2151
2214
  selector: "|",
2152
- fn: function (aNumber) {
2153
- var self = this;
2154
- return self | aNumber;
2155
- return self;
2156
- }
2215
+ fn: function (aNumber){
2216
+ var self=this;
2217
+ return smalltalk.withContext(function($ctx1) {
2218
+ return self}, function($ctx1) {$ctx1.fill(self,"|",{aNumber:aNumber}, smalltalk.Number)})}
2157
2219
  }),
2158
2220
  smalltalk.Number);
2159
2221
 
@@ -2162,11 +2224,10 @@ smalltalk.addMethod(
2162
2224
  "_pi",
2163
2225
  smalltalk.method({
2164
2226
  selector: "pi",
2165
- fn: function () {
2166
- var self = this;
2167
- return Math.PI;
2168
- return self;
2169
- }
2227
+ fn: function (){
2228
+ var self=this;
2229
+ return smalltalk.withContext(function($ctx1) {
2230
+ return self}, function($ctx1) {$ctx1.fill(self,"pi",{}, smalltalk.Number.klass)})}
2170
2231
  }),
2171
2232
  smalltalk.Number.klass);
2172
2233
 
@@ -2176,11 +2237,10 @@ smalltalk.addMethod(
2176
2237
  "_addElement_",
2177
2238
  smalltalk.method({
2178
2239
  selector: "addElement:",
2179
- fn: function (anObject) {
2180
- var self = this;
2181
- self.addElement(anObject);
2182
- return self;
2183
- }
2240
+ fn: function (anObject){
2241
+ var self=this;
2242
+ return smalltalk.withContext(function($ctx1) {
2243
+ return self}, function($ctx1) {$ctx1.fill(self,"addElement:",{anObject:anObject}, smalltalk.Organizer)})}
2184
2244
  }),
2185
2245
  smalltalk.Organizer);
2186
2246
 
@@ -2188,24 +2248,23 @@ smalltalk.addMethod(
2188
2248
  "_elements",
2189
2249
  smalltalk.method({
2190
2250
  selector: "elements",
2191
- fn: function () {
2192
- var self = this;
2193
- var $1;
2194
- $1 = smalltalk.send(smalltalk.send(self, "_basicAt_", ["elements"]), "_copy", []);
2195
- return $1;
2196
- }
2251
+ fn: function (){
2252
+ var self=this;
2253
+ return smalltalk.withContext(function($ctx1) {
2254
+ $1=_st(_st(self)._basicAt_("elements"))._copy();
2255
+ return $1;
2256
+ }, function($ctx1) {$ctx1.fill(self,"elements",{}, smalltalk.Organizer)})}
2197
2257
  }),
2198
2258
  smalltalk.Organizer);
2199
2259
 
2200
2260
  smalltalk.addMethod(
2201
2261
  "_removeElement_",
2202
2262
  smalltalk.method({
2203
- selector: "removeElement:",
2204
- fn: function (anObject) {
2205
- var self = this;
2206
- self.removeElement(anObject);
2207
- return self;
2208
- }
2263
+ selector: "removeElement:",
2264
+ fn: function (anObject){
2265
+ var self=this;
2266
+ return smalltalk.withContext(function($ctx1) {
2267
+ return self}, function($ctx1) {$ctx1.fill(self,"removeElement:",{anObject:anObject}, smalltalk.Organizer)})}
2209
2268
  }),
2210
2269
  smalltalk.Organizer);
2211
2270
 
@@ -2216,12 +2275,12 @@ smalltalk.addMethod(
2216
2275
  "_classes",
2217
2276
  smalltalk.method({
2218
2277
  selector: "classes",
2219
- fn: function () {
2220
- var self = this;
2221
- var $1;
2222
- $1 = smalltalk.send(smalltalk.send(self, "_organization", []), "_elements", []);
2223
- return $1;
2224
- }
2278
+ fn: function (){
2279
+ var self=this;
2280
+ return smalltalk.withContext(function($ctx1) {
2281
+ $1=_st(_st(self)._organization())._elements();
2282
+ return $1;
2283
+ }, function($ctx1) {$ctx1.fill(self,"classes",{}, smalltalk.Package)})}
2225
2284
  }),
2226
2285
  smalltalk.Package);
2227
2286
 
@@ -2229,17 +2288,17 @@ smalltalk.addMethod(
2229
2288
  "_commitPathJs",
2230
2289
  smalltalk.method({
2231
2290
  selector: "commitPathJs",
2232
- fn: function () {
2233
- var self = this;
2234
- var $1;
2235
- if (($receiver = self['@commitPathJs']) == nil ||
2236
- $receiver == undefined) {
2237
- $1 = smalltalk.send(smalltalk.send(self, "_class", []), "_defaultCommitPathJs", []);
2238
- } else {
2239
- $1 = self['@commitPathJs'];
2240
- }
2241
- return $1;
2242
- }
2291
+ fn: function (){
2292
+ var self=this;
2293
+ return smalltalk.withContext(function($ctx1) {
2294
+ $2=self["@commitPathJs"];
2295
+ if(($receiver = $2) == nil || $receiver == undefined){
2296
+ $1=_st(_st(self)._class())._defaultCommitPathJs();
2297
+ } else {
2298
+ $1=$2;
2299
+ };
2300
+ return $1;
2301
+ }, function($ctx1) {$ctx1.fill(self,"commitPathJs",{}, smalltalk.Package)})}
2243
2302
  }),
2244
2303
  smalltalk.Package);
2245
2304
 
@@ -2247,11 +2306,10 @@ smalltalk.addMethod(
2247
2306
  "_commitPathJs_",
2248
2307
  smalltalk.method({
2249
2308
  selector: "commitPathJs:",
2250
- fn: function (aString) {
2251
- var self = this;
2252
- self['@commitPathJs'] = aString;
2253
- return self;
2254
- }
2309
+ fn: function (aString){
2310
+ var self=this;
2311
+ return smalltalk.withContext(function($ctx1) {
2312
+ return self}, function($ctx1) {$ctx1.fill(self,"commitPathJs:",{aString:aString}, smalltalk.Package)})}
2255
2313
  }),
2256
2314
  smalltalk.Package);
2257
2315
 
@@ -2259,17 +2317,17 @@ smalltalk.addMethod(
2259
2317
  "_commitPathSt",
2260
2318
  smalltalk.method({
2261
2319
  selector: "commitPathSt",
2262
- fn: function () {
2263
- var self = this;
2264
- var $1;
2265
- if (($receiver = self['@commitPathSt']) == nil ||
2266
- $receiver == undefined) {
2267
- $1 = smalltalk.send(smalltalk.send(self, "_class", []), "_defaultCommitPathSt", []);
2268
- } else {
2269
- $1 = self['@commitPathSt'];
2270
- }
2271
- return $1;
2272
- }
2320
+ fn: function (){
2321
+ var self=this;
2322
+ return smalltalk.withContext(function($ctx1) {
2323
+ $2=self["@commitPathSt"];
2324
+ if(($receiver = $2) == nil || $receiver == undefined){
2325
+ $1=_st(_st(self)._class())._defaultCommitPathSt();
2326
+ } else {
2327
+ $1=$2;
2328
+ };
2329
+ return $1;
2330
+ }, function($ctx1) {$ctx1.fill(self,"commitPathSt",{}, smalltalk.Package)})}
2273
2331
  }),
2274
2332
  smalltalk.Package);
2275
2333
 
@@ -2277,11 +2335,10 @@ smalltalk.addMethod(
2277
2335
  "_commitPathSt_",
2278
2336
  smalltalk.method({
2279
2337
  selector: "commitPathSt:",
2280
- fn: function (aString) {
2281
- var self = this;
2282
- self['@commitPathSt'] = aString;
2283
- return self;
2284
- }
2338
+ fn: function (aString){
2339
+ var self=this;
2340
+ return smalltalk.withContext(function($ctx1) {
2341
+ return self}, function($ctx1) {$ctx1.fill(self,"commitPathSt:",{aString:aString}, smalltalk.Package)})}
2285
2342
  }),
2286
2343
  smalltalk.Package);
2287
2344
 
@@ -2289,12 +2346,14 @@ smalltalk.addMethod(
2289
2346
  "_dependencies",
2290
2347
  smalltalk.method({
2291
2348
  selector: "dependencies",
2292
- fn: function () {
2293
- var self = this;
2294
- var $1;
2295
- $1 = smalltalk.send(self, "_propertyAt_ifAbsent_", ["dependencies", function () {return [];}]);
2296
- return $1;
2297
- }
2349
+ fn: function (){
2350
+ var self=this;
2351
+ return smalltalk.withContext(function($ctx1) {
2352
+ $1=_st(self)._propertyAt_ifAbsent_("dependencies",(function(){
2353
+ return smalltalk.withContext(function($ctx2) {
2354
+ }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
2355
+ return $1;
2356
+ }, function($ctx1) {$ctx1.fill(self,"dependencies",{}, smalltalk.Package)})}
2298
2357
  }),
2299
2358
  smalltalk.Package);
2300
2359
 
@@ -2302,12 +2361,12 @@ smalltalk.addMethod(
2302
2361
  "_dependencies_",
2303
2362
  smalltalk.method({
2304
2363
  selector: "dependencies:",
2305
- fn: function (anArray) {
2306
- var self = this;
2307
- var $1;
2308
- $1 = smalltalk.send(self, "_propertyAt_put_", ["dependencies", anArray]);
2309
- return $1;
2310
- }
2364
+ fn: function (anArray){
2365
+ var self=this;
2366
+ return smalltalk.withContext(function($ctx1) {
2367
+ $1=_st(self)._propertyAt_put_("dependencies",anArray);
2368
+ return $1;
2369
+ }, function($ctx1) {$ctx1.fill(self,"dependencies:",{anArray:anArray}, smalltalk.Package)})}
2311
2370
  }),
2312
2371
  smalltalk.Package);
2313
2372
 
@@ -2315,11 +2374,10 @@ smalltalk.addMethod(
2315
2374
  "_jsProperties",
2316
2375
  smalltalk.method({
2317
2376
  selector: "jsProperties",
2318
- fn: function () {
2319
- var self = this;
2320
- return self.properties;
2321
- return self;
2322
- }
2377
+ fn: function (){
2378
+ var self=this;
2379
+ return smalltalk.withContext(function($ctx1) {
2380
+ return self}, function($ctx1) {$ctx1.fill(self,"jsProperties",{}, smalltalk.Package)})}
2323
2381
  }),
2324
2382
  smalltalk.Package);
2325
2383
 
@@ -2327,11 +2385,10 @@ smalltalk.addMethod(
2327
2385
  "_jsProperties_",
2328
2386
  smalltalk.method({
2329
2387
  selector: "jsProperties:",
2330
- fn: function (aJSObject) {
2331
- var self = this;
2332
- return self.properties = aJSObject;
2333
- return self;
2334
- }
2388
+ fn: function (aJSObject){
2389
+ var self=this;
2390
+ return smalltalk.withContext(function($ctx1) {
2391
+ return self}, function($ctx1) {$ctx1.fill(self,"jsProperties:",{aJSObject:aJSObject}, smalltalk.Package)})}
2335
2392
  }),
2336
2393
  smalltalk.Package);
2337
2394
 
@@ -2339,11 +2396,10 @@ smalltalk.addMethod(
2339
2396
  "_name",
2340
2397
  smalltalk.method({
2341
2398
  selector: "name",
2342
- fn: function () {
2343
- var self = this;
2344
- return self.pkgName;
2345
- return self;
2346
- }
2399
+ fn: function (){
2400
+ var self=this;
2401
+ return smalltalk.withContext(function($ctx1) {
2402
+ return self}, function($ctx1) {$ctx1.fill(self,"name",{}, smalltalk.Package)})}
2347
2403
  }),
2348
2404
  smalltalk.Package);
2349
2405
 
@@ -2351,11 +2407,10 @@ smalltalk.addMethod(
2351
2407
  "_name_",
2352
2408
  smalltalk.method({
2353
2409
  selector: "name:",
2354
- fn: function (aString) {
2355
- var self = this;
2356
- self.pkgName = aString;
2357
- return self;
2358
- }
2410
+ fn: function (aString){
2411
+ var self=this;
2412
+ return smalltalk.withContext(function($ctx1) {
2413
+ return self}, function($ctx1) {$ctx1.fill(self,"name:",{aString:aString}, smalltalk.Package)})}
2359
2414
  }),
2360
2415
  smalltalk.Package);
2361
2416
 
@@ -2363,12 +2418,12 @@ smalltalk.addMethod(
2363
2418
  "_organization",
2364
2419
  smalltalk.method({
2365
2420
  selector: "organization",
2366
- fn: function () {
2367
- var self = this;
2368
- var $1;
2369
- $1 = smalltalk.send(self, "_basicAt_", ["organization"]);
2370
- return $1;
2371
- }
2421
+ fn: function (){
2422
+ var self=this;
2423
+ return smalltalk.withContext(function($ctx1) {
2424
+ $1=_st(self)._basicAt_("organization");
2425
+ return $1;
2426
+ }, function($ctx1) {$ctx1.fill(self,"organization",{}, smalltalk.Package)})}
2372
2427
  }),
2373
2428
  smalltalk.Package);
2374
2429
 
@@ -2376,12 +2431,12 @@ smalltalk.addMethod(
2376
2431
  "_printString",
2377
2432
  smalltalk.method({
2378
2433
  selector: "printString",
2379
- fn: function () {
2380
- var self = this;
2381
- var $1;
2382
- $1 = smalltalk.send(self, "_name", []);
2383
- return $1;
2384
- }
2434
+ fn: function (){
2435
+ var self=this;
2436
+ return smalltalk.withContext(function($ctx1) {
2437
+ $1=_st(self)._name();
2438
+ return $1;
2439
+ }, function($ctx1) {$ctx1.fill(self,"printString",{}, smalltalk.Package)})}
2385
2440
  }),
2386
2441
  smalltalk.Package);
2387
2442
 
@@ -2389,27 +2444,12 @@ smalltalk.addMethod(
2389
2444
  "_properties",
2390
2445
  smalltalk.method({
2391
2446
  selector: "properties",
2392
- fn: function () {
2393
- var self = this;
2394
- var $1;
2395
- $1 = smalltalk.send(smalltalk.send(smalltalk.Smalltalk || Smalltalk, "_current", []), "_readJSObject_", [smalltalk.send(self, "_basicAt_", ["properties"])]);
2396
- return $1;
2397
- }
2398
- }),
2399
- smalltalk.Package);
2400
-
2401
- smalltalk.addMethod(
2402
- "_properties_",
2403
- smalltalk.method({
2404
- selector: "properties:",
2405
- fn: function (aDict) {
2406
- var self = this;
2407
- var object;
2408
- object = {};
2409
- smalltalk.send(aDict, "_keysAndValuesDo_", [function (key, value) {return object[key] = value;}]);
2410
- return self.properties = object;
2411
- return self;
2412
- }
2447
+ fn: function (){
2448
+ var self=this;
2449
+ return smalltalk.withContext(function($ctx1) {
2450
+ $1=_st(_st((smalltalk.Smalltalk || Smalltalk))._current())._readJSObject_(_st(self)._basicAt_("properties"));
2451
+ return $1;
2452
+ }, function($ctx1) {$ctx1.fill(self,"properties",{}, smalltalk.Package)})}
2413
2453
  }),
2414
2454
  smalltalk.Package);
2415
2455
 
@@ -2417,11 +2457,10 @@ smalltalk.addMethod(
2417
2457
  "_propertiesAsJSON",
2418
2458
  smalltalk.method({
2419
2459
  selector: "propertiesAsJSON",
2420
- fn: function () {
2421
- var self = this;
2422
- return JSON.stringify(self.properties);
2423
- return self;
2424
- }
2460
+ fn: function (){
2461
+ var self=this;
2462
+ return smalltalk.withContext(function($ctx1) {
2463
+ return self}, function($ctx1) {$ctx1.fill(self,"propertiesAsJSON",{}, smalltalk.Package)})}
2425
2464
  }),
2426
2465
  smalltalk.Package);
2427
2466
 
@@ -2429,11 +2468,10 @@ smalltalk.addMethod(
2429
2468
  "_propertyAt_",
2430
2469
  smalltalk.method({
2431
2470
  selector: "propertyAt:",
2432
- fn: function (key) {
2433
- var self = this;
2434
- return self.properties[key];
2435
- return self;
2436
- }
2471
+ fn: function (key){
2472
+ var self=this;
2473
+ return smalltalk.withContext(function($ctx1) {
2474
+ return self}, function($ctx1) {$ctx1.fill(self,"propertyAt:",{key:key}, smalltalk.Package)})}
2437
2475
  }),
2438
2476
  smalltalk.Package);
2439
2477
 
@@ -2441,17 +2479,17 @@ smalltalk.addMethod(
2441
2479
  "_propertyAt_ifAbsent_",
2442
2480
  smalltalk.method({
2443
2481
  selector: "propertyAt:ifAbsent:",
2444
- fn: function (key, block) {
2445
- var self = this;
2446
- var $2, $1;
2447
- $2 = smalltalk.send(self, "_propertyAt_", [key]);
2448
- if (($receiver = $2) == nil || $receiver == undefined) {
2449
- $1 = smalltalk.send(block, "_value", []);
2450
- } else {
2451
- $1 = $2;
2452
- }
2453
- return $1;
2454
- }
2482
+ fn: function (key,block){
2483
+ var self=this;
2484
+ return smalltalk.withContext(function($ctx1) {
2485
+ $2=_st(self)._propertyAt_(key);
2486
+ if(($receiver = $2) == nil || $receiver == undefined){
2487
+ $1=_st(block)._value();
2488
+ } else {
2489
+ $1=$2;
2490
+ };
2491
+ return $1;
2492
+ }, function($ctx1) {$ctx1.fill(self,"propertyAt:ifAbsent:",{key:key,block:block}, smalltalk.Package)})}
2455
2493
  }),
2456
2494
  smalltalk.Package);
2457
2495
 
@@ -2459,11 +2497,28 @@ smalltalk.addMethod(
2459
2497
  "_propertyAt_put_",
2460
2498
  smalltalk.method({
2461
2499
  selector: "propertyAt:put:",
2462
- fn: function (key, value) {
2463
- var self = this;
2464
- return self.properties[key] = value;
2465
- return self;
2466
- }
2500
+ fn: function (key,value){
2501
+ var self=this;
2502
+ return smalltalk.withContext(function($ctx1) {
2503
+ return self}, function($ctx1) {$ctx1.fill(self,"propertyAt:put:",{key:key,value:value}, smalltalk.Package)})}
2504
+ }),
2505
+ smalltalk.Package);
2506
+
2507
+ smalltalk.addMethod(
2508
+ "_setupClasses",
2509
+ smalltalk.method({
2510
+ selector: "setupClasses",
2511
+ fn: function (){
2512
+ var self=this;
2513
+ return smalltalk.withContext(function($ctx1) {
2514
+ $1=_st(self)._classes();
2515
+ _st($1)._do_((function(each){
2516
+ return smalltalk.withContext(function($ctx2) {
2517
+ }, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
2518
+ $2=_st($1)._do_((function(each){
2519
+ return smalltalk.withContext(function($ctx2) {
2520
+ }, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
2521
+ return self}, function($ctx1) {$ctx1.fill(self,"setupClasses",{}, smalltalk.Package)})}
2467
2522
  }),
2468
2523
  smalltalk.Package);
2469
2524
 
@@ -2471,30 +2526,30 @@ smalltalk.addMethod(
2471
2526
  "_sortedClasses",
2472
2527
  smalltalk.method({
2473
2528
  selector: "sortedClasses",
2474
- fn: function () {
2475
- var self = this;
2476
- var $1;
2477
- $1 = smalltalk.send(smalltalk.send(self, "_class", []), "_sortedClasses_", [smalltalk.send(self, "_classes", [])]);
2478
- return $1;
2479
- }
2529
+ fn: function (){
2530
+ var self=this;
2531
+ return smalltalk.withContext(function($ctx1) {
2532
+ $1=_st(_st(self)._class())._sortedClasses_(_st(self)._classes());
2533
+ return $1;
2534
+ }, function($ctx1) {$ctx1.fill(self,"sortedClasses",{}, smalltalk.Package)})}
2480
2535
  }),
2481
2536
  smalltalk.Package);
2482
2537
 
2483
2538
 
2484
2539
  smalltalk.Package.klass.iVarNames = ['defaultCommitPathJs','defaultCommitPathSt'];
2485
2540
  smalltalk.addMethod(
2486
- "_commitToLocalStorage_",
2541
+ "_commitPathsFromLoader",
2487
2542
  smalltalk.method({
2488
- selector: "commitToLocalStorage:",
2489
- fn: function (aPackageName) {
2490
- var self = this;
2491
- var key;
2492
- var sourceCode;
2493
- key = smalltalk.send("smalltalk.packages.", "__comma", [aPackageName]);
2494
- sourceCode = smalltalk.send(smalltalk.send(smalltalk.Exporter || Exporter, "_new", []), "_exportPackage_", [aPackageName]);
2495
- localStorage[key] = escape(sourceCode);
2496
- return self;
2497
- }
2543
+ selector: "commitPathsFromLoader",
2544
+ fn: function (){
2545
+ var self=this;
2546
+ return smalltalk.withContext(function($ctx1) {
2547
+ var cp = smalltalk['@@commitPath'];
2548
+ if (!cp) return;
2549
+ if (cp.js) self._defaultCommitPathJs_(cp.js);
2550
+ if (cp.st) self._defaultCommitPathSt_(cp.st);
2551
+ ;
2552
+ return self}, function($ctx1) {$ctx1.fill(self,"commitPathsFromLoader",{}, smalltalk.Package.klass)})}
2498
2553
  }),
2499
2554
  smalltalk.Package.klass);
2500
2555
 
@@ -2502,18 +2557,18 @@ smalltalk.addMethod(
2502
2557
  "_defaultCommitPathJs",
2503
2558
  smalltalk.method({
2504
2559
  selector: "defaultCommitPathJs",
2505
- fn: function () {
2506
- var self = this;
2507
- var $1;
2508
- if (($receiver = self['@defaultCommitPathJs']) == nil ||
2509
- $receiver == undefined) {
2510
- self['@defaultCommitPathJs'] = "js";
2511
- $1 = self['@defaultCommitPathJs'];
2512
- } else {
2513
- $1 = self['@defaultCommitPathJs'];
2514
- }
2515
- return $1;
2516
- }
2560
+ fn: function (){
2561
+ var self=this;
2562
+ return smalltalk.withContext(function($ctx1) {
2563
+ $2=self["@defaultCommitPathJs"];
2564
+ if(($receiver = $2) == nil || $receiver == undefined){
2565
+ self["@defaultCommitPathJs"]="js";
2566
+ $1=self["@defaultCommitPathJs"];
2567
+ } else {
2568
+ $1=$2;
2569
+ };
2570
+ return $1;
2571
+ }, function($ctx1) {$ctx1.fill(self,"defaultCommitPathJs",{}, smalltalk.Package.klass)})}
2517
2572
  }),
2518
2573
  smalltalk.Package.klass);
2519
2574
 
@@ -2521,11 +2576,10 @@ smalltalk.addMethod(
2521
2576
  "_defaultCommitPathJs_",
2522
2577
  smalltalk.method({
2523
2578
  selector: "defaultCommitPathJs:",
2524
- fn: function (aString) {
2525
- var self = this;
2526
- self['@defaultCommitPathJs'] = aString;
2527
- return self;
2528
- }
2579
+ fn: function (aString){
2580
+ var self=this;
2581
+ return smalltalk.withContext(function($ctx1) {
2582
+ return self}, function($ctx1) {$ctx1.fill(self,"defaultCommitPathJs:",{aString:aString}, smalltalk.Package.klass)})}
2529
2583
  }),
2530
2584
  smalltalk.Package.klass);
2531
2585
 
@@ -2533,18 +2587,18 @@ smalltalk.addMethod(
2533
2587
  "_defaultCommitPathSt",
2534
2588
  smalltalk.method({
2535
2589
  selector: "defaultCommitPathSt",
2536
- fn: function () {
2537
- var self = this;
2538
- var $1;
2539
- if (($receiver = self['@defaultCommitPathSt']) == nil ||
2540
- $receiver == undefined) {
2541
- self['@defaultCommitPathSt'] = "st";
2542
- $1 = self['@defaultCommitPathSt'];
2543
- } else {
2544
- $1 = self['@defaultCommitPathSt'];
2545
- }
2546
- return $1;
2547
- }
2590
+ fn: function (){
2591
+ var self=this;
2592
+ return smalltalk.withContext(function($ctx1) {
2593
+ $2=self["@defaultCommitPathSt"];
2594
+ if(($receiver = $2) == nil || $receiver == undefined){
2595
+ self["@defaultCommitPathSt"]="st";
2596
+ $1=self["@defaultCommitPathSt"];
2597
+ } else {
2598
+ $1=$2;
2599
+ };
2600
+ return $1;
2601
+ }, function($ctx1) {$ctx1.fill(self,"defaultCommitPathSt",{}, smalltalk.Package.klass)})}
2548
2602
  }),
2549
2603
  smalltalk.Package.klass);
2550
2604
 
@@ -2552,11 +2606,10 @@ smalltalk.addMethod(
2552
2606
  "_defaultCommitPathSt_",
2553
2607
  smalltalk.method({
2554
2608
  selector: "defaultCommitPathSt:",
2555
- fn: function (aString) {
2556
- var self = this;
2557
- self['@defaultCommitPathSt'] = aString;
2558
- return self;
2559
- }
2609
+ fn: function (aString){
2610
+ var self=this;
2611
+ return smalltalk.withContext(function($ctx1) {
2612
+ return self}, function($ctx1) {$ctx1.fill(self,"defaultCommitPathSt:",{aString:aString}, smalltalk.Package.klass)})}
2560
2613
  }),
2561
2614
  smalltalk.Package.klass);
2562
2615
 
@@ -2564,11 +2617,10 @@ smalltalk.addMethod(
2564
2617
  "_fetch_",
2565
2618
  smalltalk.method({
2566
2619
  selector: "fetch:",
2567
- fn: function (aPackageName) {
2568
- var self = this;
2569
- smalltalk.send(self, "_fetch_prefix_", [aPackageName, smalltalk.send(smalltalk.send(self, "_defaultCommitPathJs", []), "__comma", ["/"])]);
2570
- return self;
2571
- }
2620
+ fn: function (aPackageName){
2621
+ var self=this;
2622
+ return smalltalk.withContext(function($ctx1) {
2623
+ return self}, function($ctx1) {$ctx1.fill(self,"fetch:",{aPackageName:aPackageName}, smalltalk.Package.klass)})}
2572
2624
  }),
2573
2625
  smalltalk.Package.klass);
2574
2626
 
@@ -2576,26 +2628,24 @@ smalltalk.addMethod(
2576
2628
  "_fetch_prefix_",
2577
2629
  smalltalk.method({
2578
2630
  selector: "fetch:prefix:",
2579
- fn: function (aPackageName, aPrefix) {
2580
- var self = this;
2581
- smalltalk.send(jQuery, "_getScript_onSuccess_", [smalltalk.send(smalltalk.send(aPrefix, "__comma", [aPackageName]), "__comma", [".js"]), function () {return smalltalk.send(smalltalk.Package || Package, "_init_", [aPackageName]);}]);
2582
- return self;
2583
- }
2631
+ fn: function (aPackageName,aPrefix){
2632
+ var self=this;
2633
+ return smalltalk.withContext(function($ctx1) {
2634
+ return smalltalk.withContext(function($ctx2) {
2635
+ }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
2636
+ return self}, function($ctx1) {$ctx1.fill(self,"fetch:prefix:",{aPackageName:aPackageName,aPrefix:aPrefix}, smalltalk.Package.klass)})}
2584
2637
  }),
2585
2638
  smalltalk.Package.klass);
2586
2639
 
2587
2640
  smalltalk.addMethod(
2588
- "_init_",
2641
+ "_initialize",
2589
2642
  smalltalk.method({
2590
- selector: "init:",
2591
- fn: function (aPackageName) {
2592
- var self = this;
2593
- var $1, $2;
2594
- $1 = smalltalk.send(smalltalk.send(smalltalk, "_classes", []), "_select_", [function (each) {return each.pkg.pkgName == aPackageName;}]);
2595
- smalltalk.send($1, "_do_", [function (each) {return smalltalk.init(each);}]);
2596
- $2 = smalltalk.send($1, "_do_", [function (each) {return smalltalk.send(each, "_initialize", []);}]);
2597
- return self;
2598
- }
2643
+ selector: "initialize",
2644
+ fn: function (){
2645
+ var self=this;
2646
+ return smalltalk.withContext(function($ctx1) {
2647
+ _st(self)._commitPathsFromLoader();
2648
+ return self}, function($ctx1) {$ctx1.fill(self,"initialize",{}, smalltalk.Package.klass)})}
2599
2649
  }),
2600
2650
  smalltalk.Package.klass);
2601
2651
 
@@ -2603,12 +2653,12 @@ smalltalk.addMethod(
2603
2653
  "_named_",
2604
2654
  smalltalk.method({
2605
2655
  selector: "named:",
2606
- fn: function (aPackageName) {
2607
- var self = this;
2608
- var $1;
2609
- $1 = smalltalk.send(smalltalk.send(smalltalk.Smalltalk || Smalltalk, "_current", []), "_packageAt_", [aPackageName]);
2610
- return $1;
2611
- }
2656
+ fn: function (aPackageName){
2657
+ var self=this;
2658
+ return smalltalk.withContext(function($ctx1) {
2659
+ $1=_st(_st((smalltalk.Smalltalk || Smalltalk))._current())._packageAt_(aPackageName);
2660
+ return $1;
2661
+ }, function($ctx1) {$ctx1.fill(self,"named:",{aPackageName:aPackageName}, smalltalk.Package.klass)})}
2612
2662
  }),
2613
2663
  smalltalk.Package.klass);
2614
2664
 
@@ -2616,12 +2666,12 @@ smalltalk.addMethod(
2616
2666
  "_named_ifAbsent_",
2617
2667
  smalltalk.method({
2618
2668
  selector: "named:ifAbsent:",
2619
- fn: function (aPackageName, aBlock) {
2620
- var self = this;
2621
- var $1;
2622
- $1 = smalltalk.send(smalltalk.send(smalltalk.Smalltalk || Smalltalk, "_current", []), "_packageAt_ifAbsent_", [aPackageName, aBlock]);
2623
- return $1;
2624
- }
2669
+ fn: function (aPackageName,aBlock){
2670
+ var self=this;
2671
+ return smalltalk.withContext(function($ctx1) {
2672
+ $1=_st(_st((smalltalk.Smalltalk || Smalltalk))._current())._packageAt_ifAbsent_(aPackageName,aBlock);
2673
+ return $1;
2674
+ }, function($ctx1) {$ctx1.fill(self,"named:ifAbsent:",{aPackageName:aPackageName,aBlock:aBlock}, smalltalk.Package.klass)})}
2625
2675
  }),
2626
2676
  smalltalk.Package.klass);
2627
2677
 
@@ -2629,12 +2679,11 @@ smalltalk.addMethod(
2629
2679
  "_resetCommitPaths",
2630
2680
  smalltalk.method({
2631
2681
  selector: "resetCommitPaths",
2632
- fn: function () {
2633
- var self = this;
2634
- self['@defaultCommitPathJs'] = nil;
2635
- self['@defaultCommitPathSt'] = nil;
2636
- return self;
2637
- }
2682
+ fn: function (){
2683
+ var self=this;
2684
+ return smalltalk.withContext(function($ctx1) {
2685
+ self["@defaultCommitPathSt"]=nil;
2686
+ return self}, function($ctx1) {$ctx1.fill(self,"resetCommitPaths",{}, smalltalk.Package.klass)})}
2638
2687
  }),
2639
2688
  smalltalk.Package.klass);
2640
2689
 
@@ -2642,22 +2691,35 @@ smalltalk.addMethod(
2642
2691
  "_sortedClasses_",
2643
2692
  smalltalk.method({
2644
2693
  selector: "sortedClasses:",
2645
- fn: function (classes) {
2646
- var self = this;
2647
- var $1;
2648
- var children;
2649
- var others;
2650
- var nodes;
2651
- var expandedClasses;
2652
- children = [];
2653
- others = [];
2654
- smalltalk.send(classes, "_do_", [function (each) {$1 = smalltalk.send(classes, "_includes_", [smalltalk.send(each, "_superclass", [])]);if (smalltalk.assert($1)) {return smalltalk.send(others, "_add_", [each]);} else {return smalltalk.send(children, "_add_", [each]);}}]);
2655
- nodes = smalltalk.send(children, "_collect_", [function (each) {return smalltalk.send(smalltalk.ClassSorterNode || ClassSorterNode, "_on_classes_level_", [each, others, 0]);}]);
2656
- nodes = smalltalk.send(nodes, "_sorted_", [function (a, b) {return smalltalk.send(smalltalk.send(smalltalk.send(a, "_theClass", []), "_name", []), "__lt_eq", [smalltalk.send(smalltalk.send(b, "_theClass", []), "_name", [])]);}]);
2657
- expandedClasses = smalltalk.send(smalltalk.Array || Array, "_new", []);
2658
- smalltalk.send(nodes, "_do_", [function (aNode) {return smalltalk.send(aNode, "_traverseClassesWith_", [expandedClasses]);}]);
2659
- return expandedClasses;
2660
- }
2694
+ fn: function (classes){
2695
+ var self=this;
2696
+ var children,others,nodes,expandedClasses;
2697
+ return smalltalk.withContext(function($ctx1) {
2698
+ children=[];
2699
+ others=[];
2700
+ $1=classes;
2701
+ $2=(function(each){
2702
+ return smalltalk.withContext(function($ctx2) {
2703
+ if(smalltalk.assert($3)){
2704
+ return _st(others)._add_(each);
2705
+ } else {
2706
+ return _st(children)._add_(each);
2707
+ };
2708
+ }, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})});
2709
+ _st($1)._do_($2);
2710
+ nodes=_st(children)._collect_((function(each){
2711
+ return smalltalk.withContext(function($ctx2) {
2712
+ }, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
2713
+ nodes=_st(nodes)._sorted_((function(a,b){
2714
+ return smalltalk.withContext(function($ctx2) {
2715
+ }, function($ctx2) {$ctx2.fillBlock({a:a,b:b},$ctx1)})}));
2716
+ expandedClasses=_st((smalltalk.Array || Array))._new();
2717
+ _st(nodes)._do_((function(aNode){
2718
+ return smalltalk.withContext(function($ctx2) {
2719
+ }, function($ctx2) {$ctx2.fillBlock({aNode:aNode},$ctx1)})}));
2720
+ $4=expandedClasses;
2721
+ return $4;
2722
+ }, function($ctx1) {$ctx1.fill(self,"sortedClasses:",{classes:classes,children:children,others:others,nodes:nodes,expandedClasses:expandedClasses}, smalltalk.Package.klass)})}
2661
2723
  }),
2662
2724
  smalltalk.Package.klass);
2663
2725
 
@@ -2667,12 +2729,12 @@ smalltalk.addMethod(
2667
2729
  "__star",
2668
2730
  smalltalk.method({
2669
2731
  selector: "*",
2670
- fn: function (aPoint) {
2671
- var self = this;
2672
- var $1;
2673
- $1 = smalltalk.send(smalltalk.Point || Point, "_x_y_", [smalltalk.send(smalltalk.send(self, "_x", []), "__star", [smalltalk.send(smalltalk.send(aPoint, "_asPoint", []), "_x", [])]), smalltalk.send(smalltalk.send(self, "_y", []), "__star", [smalltalk.send(smalltalk.send(aPoint, "_asPoint", []), "_y", [])])]);
2674
- return $1;
2675
- }
2732
+ fn: function (aPoint){
2733
+ var self=this;
2734
+ return smalltalk.withContext(function($ctx1) {
2735
+ $1=_st((smalltalk.Point || Point))._x_y_(_st(_st(self)._x()).__star(_st(_st(aPoint)._asPoint())._x()),_st(_st(self)._y()).__star(_st(_st(aPoint)._asPoint())._y()));
2736
+ return $1;
2737
+ }, function($ctx1) {$ctx1.fill(self,"*",{aPoint:aPoint}, smalltalk.Point)})}
2676
2738
  }),
2677
2739
  smalltalk.Point);
2678
2740
 
@@ -2680,12 +2742,12 @@ smalltalk.addMethod(
2680
2742
  "__plus",
2681
2743
  smalltalk.method({
2682
2744
  selector: "+",
2683
- fn: function (aPoint) {
2684
- var self = this;
2685
- var $1;
2686
- $1 = smalltalk.send(smalltalk.Point || Point, "_x_y_", [smalltalk.send(smalltalk.send(self, "_x", []), "__plus", [smalltalk.send(smalltalk.send(aPoint, "_asPoint", []), "_x", [])]), smalltalk.send(smalltalk.send(self, "_y", []), "__plus", [smalltalk.send(smalltalk.send(aPoint, "_asPoint", []), "_y", [])])]);
2687
- return $1;
2688
- }
2745
+ fn: function (aPoint){
2746
+ var self=this;
2747
+ return smalltalk.withContext(function($ctx1) {
2748
+ $1=_st((smalltalk.Point || Point))._x_y_(_st(_st(self)._x()).__plus(_st(_st(aPoint)._asPoint())._x()),_st(_st(self)._y()).__plus(_st(_st(aPoint)._asPoint())._y()));
2749
+ return $1;
2750
+ }, function($ctx1) {$ctx1.fill(self,"+",{aPoint:aPoint}, smalltalk.Point)})}
2689
2751
  }),
2690
2752
  smalltalk.Point);
2691
2753
 
@@ -2693,12 +2755,12 @@ smalltalk.addMethod(
2693
2755
  "__minus",
2694
2756
  smalltalk.method({
2695
2757
  selector: "-",
2696
- fn: function (aPoint) {
2697
- var self = this;
2698
- var $1;
2699
- $1 = smalltalk.send(smalltalk.Point || Point, "_x_y_", [smalltalk.send(smalltalk.send(self, "_x", []), "__minus", [smalltalk.send(smalltalk.send(aPoint, "_asPoint", []), "_x", [])]), smalltalk.send(smalltalk.send(self, "_y", []), "__minus", [smalltalk.send(smalltalk.send(aPoint, "_asPoint", []), "_y", [])])]);
2700
- return $1;
2701
- }
2758
+ fn: function (aPoint){
2759
+ var self=this;
2760
+ return smalltalk.withContext(function($ctx1) {
2761
+ $1=_st((smalltalk.Point || Point))._x_y_(_st(_st(self)._x()).__minus(_st(_st(aPoint)._asPoint())._x()),_st(_st(self)._y()).__minus(_st(_st(aPoint)._asPoint())._y()));
2762
+ return $1;
2763
+ }, function($ctx1) {$ctx1.fill(self,"-",{aPoint:aPoint}, smalltalk.Point)})}
2702
2764
  }),
2703
2765
  smalltalk.Point);
2704
2766
 
@@ -2706,12 +2768,12 @@ smalltalk.addMethod(
2706
2768
  "__slash",
2707
2769
  smalltalk.method({
2708
2770
  selector: "/",
2709
- fn: function (aPoint) {
2710
- var self = this;
2711
- var $1;
2712
- $1 = smalltalk.send(smalltalk.Point || Point, "_x_y_", [smalltalk.send(smalltalk.send(self, "_x", []), "__slash", [smalltalk.send(smalltalk.send(aPoint, "_asPoint", []), "_x", [])]), smalltalk.send(smalltalk.send(self, "_y", []), "__slash", [smalltalk.send(smalltalk.send(aPoint, "_asPoint", []), "_y", [])])]);
2713
- return $1;
2714
- }
2771
+ fn: function (aPoint){
2772
+ var self=this;
2773
+ return smalltalk.withContext(function($ctx1) {
2774
+ $1=_st((smalltalk.Point || Point))._x_y_(_st(_st(self)._x()).__slash(_st(_st(aPoint)._asPoint())._x()),_st(_st(self)._y()).__slash(_st(_st(aPoint)._asPoint())._y()));
2775
+ return $1;
2776
+ }, function($ctx1) {$ctx1.fill(self,"/",{aPoint:aPoint}, smalltalk.Point)})}
2715
2777
  }),
2716
2778
  smalltalk.Point);
2717
2779
 
@@ -2719,12 +2781,14 @@ smalltalk.addMethod(
2719
2781
  "__eq",
2720
2782
  smalltalk.method({
2721
2783
  selector: "=",
2722
- fn: function (aPoint) {
2723
- var self = this;
2724
- var $1;
2725
- $1 = smalltalk.send(smalltalk.send(smalltalk.send(aPoint, "_class", []), "__eq", [smalltalk.send(self, "_class", [])]), "_and_", [function () {return smalltalk.send(smalltalk.send(smalltalk.send(aPoint, "_x", []), "__eq", [smalltalk.send(self, "_x", [])]), "_&", [smalltalk.send(smalltalk.send(aPoint, "_y", []), "__eq", [smalltalk.send(self, "_y", [])])]);}]);
2726
- return $1;
2727
- }
2784
+ fn: function (aPoint){
2785
+ var self=this;
2786
+ return smalltalk.withContext(function($ctx1) {
2787
+ $1=_st(_st(_st(aPoint)._class()).__eq(_st(self)._class()))._and_((function(){
2788
+ return smalltalk.withContext(function($ctx2) {
2789
+ }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
2790
+ return $1;
2791
+ }, function($ctx1) {$ctx1.fill(self,"=",{aPoint:aPoint}, smalltalk.Point)})}
2728
2792
  }),
2729
2793
  smalltalk.Point);
2730
2794
 
@@ -2732,10 +2796,12 @@ smalltalk.addMethod(
2732
2796
  "_asPoint",
2733
2797
  smalltalk.method({
2734
2798
  selector: "asPoint",
2735
- fn: function () {
2736
- var self = this;
2737
- return self;
2738
- }
2799
+ fn: function (){
2800
+ var self=this;
2801
+ return smalltalk.withContext(function($ctx1) {
2802
+ $1=self;
2803
+ return $1;
2804
+ }, function($ctx1) {$ctx1.fill(self,"asPoint",{}, smalltalk.Point)})}
2739
2805
  }),
2740
2806
  smalltalk.Point);
2741
2807
 
@@ -2743,12 +2809,23 @@ smalltalk.addMethod(
2743
2809
  "_printString",
2744
2810
  smalltalk.method({
2745
2811
  selector: "printString",
2746
- fn: function () {
2747
- var self = this;
2748
- var $2, $1;
2749
- $1 = smalltalk.send(smalltalk.String || String, "_streamContents_", [function (stream) {smalltalk.send(stream, "_nextPutAll_", [smalltalk.send(smalltalk.send(self['@x'], "_printString", []), "__comma", ["@"])]);$2 = smalltalk.send(smalltalk.send(self['@y'], "_notNil", []), "_and_", [function () {return smalltalk.send(self['@y'], "_negative", []);}]);if (smalltalk.assert($2)) {smalltalk.send(stream, "_space", []);}return smalltalk.send(stream, "_nextPutAll_", [smalltalk.send(self['@y'], "_printString", [])]);}]);
2750
- return $1;
2751
- }
2812
+ fn: function (){
2813
+ var self=this;
2814
+ return smalltalk.withContext(function($ctx1) {
2815
+ $2=(smalltalk.String || String);
2816
+ $3=(function(stream){
2817
+ return smalltalk.withContext(function($ctx2) {
2818
+ $4=_st(_st(self["@y"])._notNil())._and_((function(){
2819
+ return smalltalk.withContext(function($ctx3) {
2820
+ }, function($ctx3) {$ctx3.fillBlock({},$ctx1)})}));
2821
+ if(smalltalk.assert($4)){
2822
+ _st(stream)._space();
2823
+ };
2824
+ return _st(stream)._nextPutAll_(_st(self["@y"])._printString());
2825
+ }, function($ctx2) {$ctx2.fillBlock({stream:stream},$ctx1)})});
2826
+ $1=_st($2)._streamContents_($3);
2827
+ return $1;
2828
+ }, function($ctx1) {$ctx1.fill(self,"printString",{}, smalltalk.Point)})}
2752
2829
  }),
2753
2830
  smalltalk.Point);
2754
2831
 
@@ -2756,12 +2833,12 @@ smalltalk.addMethod(
2756
2833
  "_translateBy_",
2757
2834
  smalltalk.method({
2758
2835
  selector: "translateBy:",
2759
- fn: function (delta) {
2760
- var self = this;
2761
- var $1;
2762
- $1 = smalltalk.send(smalltalk.send(smalltalk.send(delta, "_x", []), "__plus", [self['@x']]), "__at", [smalltalk.send(smalltalk.send(delta, "_y", []), "__plus", [self['@y']])]);
2763
- return $1;
2764
- }
2836
+ fn: function (delta){
2837
+ var self=this;
2838
+ return smalltalk.withContext(function($ctx1) {
2839
+ $1=_st(_st(_st(delta)._x()).__plus(self["@x"])).__at(_st(_st(delta)._y()).__plus(self["@y"]));
2840
+ return $1;
2841
+ }, function($ctx1) {$ctx1.fill(self,"translateBy:",{delta:delta}, smalltalk.Point)})}
2765
2842
  }),
2766
2843
  smalltalk.Point);
2767
2844
 
@@ -2769,10 +2846,12 @@ smalltalk.addMethod(
2769
2846
  "_x",
2770
2847
  smalltalk.method({
2771
2848
  selector: "x",
2772
- fn: function () {
2773
- var self = this;
2774
- return self['@x'];
2775
- }
2849
+ fn: function (){
2850
+ var self=this;
2851
+ return smalltalk.withContext(function($ctx1) {
2852
+ $1=self["@x"];
2853
+ return $1;
2854
+ }, function($ctx1) {$ctx1.fill(self,"x",{}, smalltalk.Point)})}
2776
2855
  }),
2777
2856
  smalltalk.Point);
2778
2857
 
@@ -2780,11 +2859,10 @@ smalltalk.addMethod(
2780
2859
  "_x_",
2781
2860
  smalltalk.method({
2782
2861
  selector: "x:",
2783
- fn: function (aNumber) {
2784
- var self = this;
2785
- self['@x'] = aNumber;
2786
- return self;
2787
- }
2862
+ fn: function (aNumber){
2863
+ var self=this;
2864
+ return smalltalk.withContext(function($ctx1) {
2865
+ return self}, function($ctx1) {$ctx1.fill(self,"x:",{aNumber:aNumber}, smalltalk.Point)})}
2788
2866
  }),
2789
2867
  smalltalk.Point);
2790
2868
 
@@ -2792,10 +2870,12 @@ smalltalk.addMethod(
2792
2870
  "_y",
2793
2871
  smalltalk.method({
2794
2872
  selector: "y",
2795
- fn: function () {
2796
- var self = this;
2797
- return self['@y'];
2798
- }
2873
+ fn: function (){
2874
+ var self=this;
2875
+ return smalltalk.withContext(function($ctx1) {
2876
+ $1=self["@y"];
2877
+ return $1;
2878
+ }, function($ctx1) {$ctx1.fill(self,"y",{}, smalltalk.Point)})}
2799
2879
  }),
2800
2880
  smalltalk.Point);
2801
2881
 
@@ -2803,11 +2883,10 @@ smalltalk.addMethod(
2803
2883
  "_y_",
2804
2884
  smalltalk.method({
2805
2885
  selector: "y:",
2806
- fn: function (aNumber) {
2807
- var self = this;
2808
- self['@y'] = aNumber;
2809
- return self;
2810
- }
2886
+ fn: function (aNumber){
2887
+ var self=this;
2888
+ return smalltalk.withContext(function($ctx1) {
2889
+ return self}, function($ctx1) {$ctx1.fill(self,"y:",{aNumber:aNumber}, smalltalk.Point)})}
2811
2890
  }),
2812
2891
  smalltalk.Point);
2813
2892
 
@@ -2816,16 +2895,16 @@ smalltalk.addMethod(
2816
2895
  "_x_y_",
2817
2896
  smalltalk.method({
2818
2897
  selector: "x:y:",
2819
- fn: function (aNumber, anotherNumber) {
2820
- var self = this;
2821
- var $2, $3, $1;
2822
- $2 = smalltalk.send(self, "_new", []);
2823
- smalltalk.send($2, "_x_", [aNumber]);
2824
- smalltalk.send($2, "_y_", [anotherNumber]);
2825
- $3 = smalltalk.send($2, "_yourself", []);
2826
- $1 = $3;
2827
- return $1;
2828
- }
2898
+ fn: function (aNumber,anotherNumber){
2899
+ var self=this;
2900
+ return smalltalk.withContext(function($ctx1) {
2901
+ $2=_st(self)._new();
2902
+ _st($2)._x_(aNumber);
2903
+ _st($2)._y_(anotherNumber);
2904
+ $3=_st($2)._yourself();
2905
+ $1=$3;
2906
+ return $1;
2907
+ }, function($ctx1) {$ctx1.fill(self,"x:y:",{aNumber:aNumber,anotherNumber:anotherNumber}, smalltalk.Point.klass)})}
2829
2908
  }),
2830
2909
  smalltalk.Point.klass);
2831
2910
 
@@ -2835,11 +2914,10 @@ smalltalk.addMethod(
2835
2914
  "_next",
2836
2915
  smalltalk.method({
2837
2916
  selector: "next",
2838
- fn: function () {
2839
- var self = this;
2840
- return Math.random();
2841
- return self;
2842
- }
2917
+ fn: function (){
2918
+ var self=this;
2919
+ return smalltalk.withContext(function($ctx1) {
2920
+ return self}, function($ctx1) {$ctx1.fill(self,"next",{}, smalltalk.Random)})}
2843
2921
  }),
2844
2922
  smalltalk.Random);
2845
2923
 
@@ -2847,27 +2925,48 @@ smalltalk.addMethod(
2847
2925
  "_next_",
2848
2926
  smalltalk.method({
2849
2927
  selector: "next:",
2850
- fn: function (anInteger) {
2851
- var self = this;
2852
- var $1;
2853
- $1 = smalltalk.send(smalltalk.send(1, "_to_", [anInteger]), "_collect_", [function (each) {return smalltalk.send(self, "_next", []);}]);
2854
- return $1;
2855
- }
2928
+ fn: function (anInteger){
2929
+ var self=this;
2930
+ return smalltalk.withContext(function($ctx1) {
2931
+ $1=_st(_st((1))._to_(anInteger))._collect_((function(each){
2932
+ return smalltalk.withContext(function($ctx2) {
2933
+ }, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
2934
+ return $1;
2935
+ }, function($ctx1) {$ctx1.fill(self,"next:",{anInteger:anInteger}, smalltalk.Random)})}
2856
2936
  }),
2857
2937
  smalltalk.Random);
2858
2938
 
2859
2939
 
2860
2940
 
2861
2941
  smalltalk.addClass('Smalltalk', smalltalk.Object, [], 'Kernel-Objects');
2942
+ smalltalk.addMethod(
2943
+ "_asSmalltalkException_",
2944
+ smalltalk.method({
2945
+ selector: "asSmalltalkException:",
2946
+ fn: function (anObject){
2947
+ var self=this;
2948
+ return smalltalk.withContext(function($ctx1) {
2949
+ $2=_st(_st(self)._isSmalltalkObject_(anObject))._and_((function(){
2950
+ return smalltalk.withContext(function($ctx2) {
2951
+ }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
2952
+ if(smalltalk.assert($2)){
2953
+ $1=anObject;
2954
+ } else {
2955
+ $1=_st((smalltalk.JavaScriptException || JavaScriptException))._on_(anObject);
2956
+ };
2957
+ return $1;
2958
+ }, function($ctx1) {$ctx1.fill(self,"asSmalltalkException:",{anObject:anObject}, smalltalk.Smalltalk)})}
2959
+ }),
2960
+ smalltalk.Smalltalk);
2961
+
2862
2962
  smalltalk.addMethod(
2863
2963
  "_at_",
2864
2964
  smalltalk.method({
2865
2965
  selector: "at:",
2866
- fn: function (aSymbol) {
2867
- var self = this;
2868
- return self[aSymbol._asString()];
2869
- return self;
2870
- }
2966
+ fn: function (aSymbol){
2967
+ var self=this;
2968
+ return smalltalk.withContext(function($ctx1) {
2969
+ return self}, function($ctx1) {$ctx1.fill(self,"at:",{aSymbol:aSymbol}, smalltalk.Smalltalk)})}
2871
2970
  }),
2872
2971
  smalltalk.Smalltalk);
2873
2972
 
@@ -2875,11 +2974,10 @@ smalltalk.addMethod(
2875
2974
  "_basicParse_",
2876
2975
  smalltalk.method({
2877
2976
  selector: "basicParse:",
2878
- fn: function (aString) {
2879
- var self = this;
2880
- return smalltalk.parser.parse(aString);
2881
- return self;
2882
- }
2977
+ fn: function (aString){
2978
+ var self=this;
2979
+ return smalltalk.withContext(function($ctx1) {
2980
+ return self}, function($ctx1) {$ctx1.fill(self,"basicParse:",{aString:aString}, smalltalk.Smalltalk)})}
2883
2981
  }),
2884
2982
  smalltalk.Smalltalk);
2885
2983
 
@@ -2887,11 +2985,10 @@ smalltalk.addMethod(
2887
2985
  "_classes",
2888
2986
  smalltalk.method({
2889
2987
  selector: "classes",
2890
- fn: function () {
2891
- var self = this;
2892
- return self.classes();
2893
- return self;
2894
- }
2988
+ fn: function (){
2989
+ var self=this;
2990
+ return smalltalk.withContext(function($ctx1) {
2991
+ return self}, function($ctx1) {$ctx1.fill(self,"classes",{}, smalltalk.Smalltalk)})}
2895
2992
  }),
2896
2993
  smalltalk.Smalltalk);
2897
2994
 
@@ -2899,11 +2996,10 @@ smalltalk.addMethod(
2899
2996
  "_createPackage_",
2900
2997
  smalltalk.method({
2901
2998
  selector: "createPackage:",
2902
- fn: function (packageName) {
2903
- var self = this;
2904
- return smalltalk.addPackage(packageName, nil);
2905
- return self;
2906
- }
2999
+ fn: function (packageName){
3000
+ var self=this;
3001
+ return smalltalk.withContext(function($ctx1) {
3002
+ return self}, function($ctx1) {$ctx1.fill(self,"createPackage:",{packageName:packageName}, smalltalk.Smalltalk)})}
2907
3003
  }),
2908
3004
  smalltalk.Smalltalk);
2909
3005
 
@@ -2911,14 +3007,17 @@ smalltalk.addMethod(
2911
3007
  "_createPackage_properties_",
2912
3008
  smalltalk.method({
2913
3009
  selector: "createPackage:properties:",
2914
- fn: function (packageName, aDict) {
2915
- var self = this;
2916
- var object;
2917
- object = {};
2918
- smalltalk.send(aDict, "_keysAndValuesDo_", [function (key, value) {return object[key] = value;}]);
2919
- return smalltalk.addPackage(packageName, object);
2920
- return self;
2921
- }
3010
+ fn: function (packageName,aDict){
3011
+ var self=this;
3012
+ return smalltalk.withContext(function($ctx1) {
3013
+ _st(self)._deprecatedAPI();
3014
+ $1=_st(aDict)._isEmpty();
3015
+ if(! smalltalk.assert($1)){
3016
+ _st(self)._error_("createPackage:properties: called with nonempty properties");
3017
+ };
3018
+ $2=_st(self)._createPackage_(packageName);
3019
+ return $2;
3020
+ }, function($ctx1) {$ctx1.fill(self,"createPackage:properties:",{packageName:packageName,aDict:aDict}, smalltalk.Smalltalk)})}
2922
3021
  }),
2923
3022
  smalltalk.Smalltalk);
2924
3023
 
@@ -2926,11 +3025,10 @@ smalltalk.addMethod(
2926
3025
  "_deleteClass_",
2927
3026
  smalltalk.method({
2928
3027
  selector: "deleteClass:",
2929
- fn: function (aClass) {
2930
- var self = this;
2931
- self.removeClass(aClass);
2932
- return self;
2933
- }
3028
+ fn: function (aClass){
3029
+ var self=this;
3030
+ return smalltalk.withContext(function($ctx1) {
3031
+ return self}, function($ctx1) {$ctx1.fill(self,"deleteClass:",{aClass:aClass}, smalltalk.Smalltalk)})}
2934
3032
  }),
2935
3033
  smalltalk.Smalltalk);
2936
3034
 
@@ -2938,11 +3036,21 @@ smalltalk.addMethod(
2938
3036
  "_deletePackage_",
2939
3037
  smalltalk.method({
2940
3038
  selector: "deletePackage:",
2941
- fn: function (packageName) {
2942
- var self = this;
2943
- delete smalltalk.packages[packageName];
2944
- return self;
2945
- }
3039
+ fn: function (packageName){
3040
+ var self=this;
3041
+ return smalltalk.withContext(function($ctx1) {
3042
+ return self}, function($ctx1) {$ctx1.fill(self,"deletePackage:",{packageName:packageName}, smalltalk.Smalltalk)})}
3043
+ }),
3044
+ smalltalk.Smalltalk);
3045
+
3046
+ smalltalk.addMethod(
3047
+ "_isSmalltalkObject_",
3048
+ smalltalk.method({
3049
+ selector: "isSmalltalkObject:",
3050
+ fn: function (anObject){
3051
+ var self=this;
3052
+ return smalltalk.withContext(function($ctx1) {
3053
+ return self}, function($ctx1) {$ctx1.fill(self,"isSmalltalkObject:",{anObject:anObject}, smalltalk.Smalltalk)})}
2946
3054
  }),
2947
3055
  smalltalk.Smalltalk);
2948
3056
 
@@ -2950,11 +3058,10 @@ smalltalk.addMethod(
2950
3058
  "_packageAt_",
2951
3059
  smalltalk.method({
2952
3060
  selector: "packageAt:",
2953
- fn: function (packageName) {
2954
- var self = this;
2955
- return self.packages[packageName];
2956
- return self;
2957
- }
3061
+ fn: function (packageName){
3062
+ var self=this;
3063
+ return smalltalk.withContext(function($ctx1) {
3064
+ return self}, function($ctx1) {$ctx1.fill(self,"packageAt:",{packageName:packageName}, smalltalk.Smalltalk)})}
2958
3065
  }),
2959
3066
  smalltalk.Smalltalk);
2960
3067
 
@@ -2962,13 +3069,13 @@ smalltalk.addMethod(
2962
3069
  "_packageAt_ifAbsent_",
2963
3070
  smalltalk.method({
2964
3071
  selector: "packageAt:ifAbsent:",
2965
- fn: function (packageName, aBlock) {
2966
- var self = this;
2967
- var $2, $1;
2968
- $2 = smalltalk.send(self, "_packageAt_", [packageName]);
2969
- $1 = smalltalk.send($2, "_ifNil_", [aBlock]);
2970
- return $1;
2971
- }
3072
+ fn: function (packageName,aBlock){
3073
+ var self=this;
3074
+ return smalltalk.withContext(function($ctx1) {
3075
+ $2=_st(self)._packageAt_(packageName);
3076
+ $1=_st($2)._ifNil_(aBlock);
3077
+ return $1;
3078
+ }, function($ctx1) {$ctx1.fill(self,"packageAt:ifAbsent:",{packageName:packageName,aBlock:aBlock}, smalltalk.Smalltalk)})}
2972
3079
  }),
2973
3080
  smalltalk.Smalltalk);
2974
3081
 
@@ -2976,11 +3083,10 @@ smalltalk.addMethod(
2976
3083
  "_packages",
2977
3084
  smalltalk.method({
2978
3085
  selector: "packages",
2979
- fn: function () {
2980
- var self = this;
2981
- return self.packages.all();
2982
- return self;
2983
- }
3086
+ fn: function (){
3087
+ var self=this;
3088
+ return smalltalk.withContext(function($ctx1) {
3089
+ return self}, function($ctx1) {$ctx1.fill(self,"packages",{}, smalltalk.Smalltalk)})}
2984
3090
  }),
2985
3091
  smalltalk.Smalltalk);
2986
3092
 
@@ -2988,12 +3094,19 @@ smalltalk.addMethod(
2988
3094
  "_parse_",
2989
3095
  smalltalk.method({
2990
3096
  selector: "parse:",
2991
- fn: function (aString) {
2992
- var self = this;
2993
- var result;
2994
- smalltalk.send(self, "_try_catch_", [function () {result = smalltalk.send(self, "_basicParse_", [aString]);return result;}, function (ex) {return smalltalk.send(smalltalk.send(self, "_parseError_parsing_", [ex, aString]), "_signal", []);}]);
2995
- return result;
2996
- }
3097
+ fn: function (aString){
3098
+ var self=this;
3099
+ var result;
3100
+ return smalltalk.withContext(function($ctx1) {
3101
+ _st(self)._try_catch_((function(){
3102
+ return smalltalk.withContext(function($ctx2) {
3103
+ return result;
3104
+ }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),(function(ex){
3105
+ return smalltalk.withContext(function($ctx2) {
3106
+ }, function($ctx2) {$ctx2.fillBlock({ex:ex},$ctx1)})}));
3107
+ $1=result;
3108
+ return $1;
3109
+ }, function($ctx1) {$ctx1.fill(self,"parse:",{aString:aString,result:result}, smalltalk.Smalltalk)})}
2997
3110
  }),
2998
3111
  smalltalk.Smalltalk);
2999
3112
 
@@ -3001,26 +3114,12 @@ smalltalk.addMethod(
3001
3114
  "_parseError_parsing_",
3002
3115
  smalltalk.method({
3003
3116
  selector: "parseError:parsing:",
3004
- fn: function (anException, aString) {
3005
- var self = this;
3006
- var $1;
3007
- var row;
3008
- var col;
3009
- var message;
3010
- var lines;
3011
- var badLine;
3012
- var code;
3013
- row = anException.line;
3014
- col = anException.column;
3015
- message = anException.message;
3016
- lines = smalltalk.send(aString, "_lines", []);
3017
- badLine = smalltalk.send(lines, "_at_", [row]);
3018
- badLine = smalltalk.send(smalltalk.send(smalltalk.send(badLine, "_copyFrom_to_", [1, smalltalk.send(col, "__minus", [1])]), "__comma", [" ===>"]), "__comma", [smalltalk.send(badLine, "_copyFrom_to_", [col, smalltalk.send(badLine, "_size", [])])]);
3019
- smalltalk.send(lines, "_at_put_", [row, badLine]);
3020
- code = smalltalk.send(smalltalk.String || String, "_streamContents_", [function (s) {return smalltalk.send(lines, "_withIndexDo_", [function (l, i) {return smalltalk.send(s, "_nextPutAll_", [smalltalk.send(smalltalk.send(smalltalk.send(smalltalk.send(i, "_asString", []), "__comma", [": "]), "__comma", [l]), "__comma", [smalltalk.send(smalltalk.String || String, "_lf", [])])]);}]);}]);
3021
- $1 = smalltalk.send(smalltalk.send(smalltalk.ParseError || ParseError, "_new", []), "_messageText_", [smalltalk.send(smalltalk.send(smalltalk.send(smalltalk.send(smalltalk.send(smalltalk.send(smalltalk.send(smalltalk.send("Parse error on line ", "__comma", [row]), "__comma", [" column "]), "__comma", [col]), "__comma", [" : "]), "__comma", [message]), "__comma", [" Below is code with line numbers and ===> marker inserted:"]), "__comma", [smalltalk.send(smalltalk.String || String, "_lf", [])]), "__comma", [code])]);
3022
- return $1;
3023
- }
3117
+ fn: function (anException,aString){
3118
+ var self=this;
3119
+ return smalltalk.withContext(function($ctx1) {
3120
+ $1=_st(_st((smalltalk.ParseError || ParseError))._new())._messageText_(_st(_st(_st(_st(_st("Parse error on line ").__comma(_st(anException)._basicAt_("line"))).__comma(" column ")).__comma(_st(anException)._basicAt_("column"))).__comma(" : Unexpected character ")).__comma(_st(anException)._basicAt_("found")));
3121
+ return $1;
3122
+ }, function($ctx1) {$ctx1.fill(self,"parseError:parsing:",{anException:anException,aString:aString}, smalltalk.Smalltalk)})}
3024
3123
  }),
3025
3124
  smalltalk.Smalltalk);
3026
3125
 
@@ -3028,10 +3127,10 @@ smalltalk.addMethod(
3028
3127
  "_pseudoVariableNames",
3029
3128
  smalltalk.method({
3030
3129
  selector: "pseudoVariableNames",
3031
- fn: function () {
3032
- var self = this;
3033
- return ["self", "super", "nil", "true", "false", "thisContext"];
3034
- }
3130
+ fn: function (){
3131
+ var self=this;
3132
+ return smalltalk.withContext(function($ctx1) {
3133
+ }, function($ctx1) {$ctx1.fill(self,"pseudoVariableNames",{}, smalltalk.Smalltalk)})}
3035
3134
  }),
3036
3135
  smalltalk.Smalltalk);
3037
3136
 
@@ -3039,11 +3138,10 @@ smalltalk.addMethod(
3039
3138
  "_readJSObject_",
3040
3139
  smalltalk.method({
3041
3140
  selector: "readJSObject:",
3042
- fn: function (anObject) {
3043
- var self = this;
3044
- return self.readJSObject(anObject);
3045
- return self;
3046
- }
3141
+ fn: function (anObject){
3142
+ var self=this;
3143
+ return smalltalk.withContext(function($ctx1) {
3144
+ return self}, function($ctx1) {$ctx1.fill(self,"readJSObject:",{anObject:anObject}, smalltalk.Smalltalk)})}
3047
3145
  }),
3048
3146
  smalltalk.Smalltalk);
3049
3147
 
@@ -3051,22 +3149,25 @@ smalltalk.addMethod(
3051
3149
  "_removeClass_",
3052
3150
  smalltalk.method({
3053
3151
  selector: "removeClass:",
3054
- fn: function (aClass) {
3055
- var self = this;
3056
- var $1, $2, $3;
3057
- $1 = smalltalk.send(aClass, "_isMetaclass", []);
3058
- if (smalltalk.assert($1)) {
3059
- smalltalk.send(self, "_error_", [smalltalk.send(smalltalk.send(aClass, "_asString", []), "__comma", [" is a Metaclass and cannot be removed!"])]);
3060
- }
3061
- smalltalk.send(smalltalk.send(smalltalk.send(aClass, "_methodDictionary", []), "_values", []), "_do_", [function (each) {return smalltalk.send(aClass, "_removeCompiledMethod_", [each]);}]);
3062
- smalltalk.send(smalltalk.send(smalltalk.send(smalltalk.send(aClass, "_class", []), "_methodDictionary", []), "_values", []), "_do_", [function (each) {return smalltalk.send(smalltalk.send(aClass, "_class", []), "_removeCompiledMethod_", [each]);}]);
3063
- smalltalk.send(self, "_deleteClass_", [aClass]);
3064
- $2 = smalltalk.send(smalltalk.ClassRemoved || ClassRemoved, "_new", []);
3065
- smalltalk.send($2, "_theClass_", [aClass]);
3066
- $3 = smalltalk.send($2, "_yourself", []);
3067
- smalltalk.send(smalltalk.send(smalltalk.SystemAnnouncer || SystemAnnouncer, "_current", []), "_announce_", [$3]);
3068
- return self;
3069
- }
3152
+ fn: function (aClass){
3153
+ var self=this;
3154
+ return smalltalk.withContext(function($ctx1) {
3155
+ $1=_st(aClass)._isMetaclass();
3156
+ if(smalltalk.assert($1)){
3157
+ _st(self)._error_(_st(_st(aClass)._asString()).__comma(" is a Metaclass and cannot be removed!"));
3158
+ };
3159
+ _st(_st(_st(aClass)._methodDictionary())._values())._do_((function(each){
3160
+ return smalltalk.withContext(function($ctx2) {
3161
+ }, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
3162
+ _st(_st(_st(_st(aClass)._class())._methodDictionary())._values())._do_((function(each){
3163
+ return smalltalk.withContext(function($ctx2) {
3164
+ }, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
3165
+ _st(self)._deleteClass_(aClass);
3166
+ $2=_st((smalltalk.ClassRemoved || ClassRemoved))._new();
3167
+ _st($2)._theClass_(aClass);
3168
+ $3=_st($2)._yourself();
3169
+ _st(_st((smalltalk.SystemAnnouncer || SystemAnnouncer))._current())._announce_($3);
3170
+ return self}, function($ctx1) {$ctx1.fill(self,"removeClass:",{aClass:aClass}, smalltalk.Smalltalk)})}
3070
3171
  }),
3071
3172
  smalltalk.Smalltalk);
3072
3173
 
@@ -3074,14 +3175,17 @@ smalltalk.addMethod(
3074
3175
  "_removePackage_",
3075
3176
  smalltalk.method({
3076
3177
  selector: "removePackage:",
3077
- fn: function (packageName) {
3078
- var self = this;
3079
- var pkg;
3080
- pkg = smalltalk.send(self, "_packageAt_ifAbsent_", [packageName, function () {return smalltalk.send(self, "_error_", [smalltalk.send("Missing package: ", "__comma", [packageName])]);}]);
3081
- smalltalk.send(smalltalk.send(pkg, "_classes", []), "_do_", [function (each) {return smalltalk.send(self, "_removeClass_", [each]);}]);
3082
- smalltalk.send(self, "_deletePackage_", [packageName]);
3083
- return self;
3084
- }
3178
+ fn: function (packageName){
3179
+ var self=this;
3180
+ var pkg;
3181
+ return smalltalk.withContext(function($ctx1) {
3182
+ return smalltalk.withContext(function($ctx2) {
3183
+ }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
3184
+ _st(_st(pkg)._classes())._do_((function(each){
3185
+ return smalltalk.withContext(function($ctx2) {
3186
+ }, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
3187
+ _st(self)._deletePackage_(packageName);
3188
+ return self}, function($ctx1) {$ctx1.fill(self,"removePackage:",{packageName:packageName,pkg:pkg}, smalltalk.Smalltalk)})}
3085
3189
  }),
3086
3190
  smalltalk.Smalltalk);
3087
3191
 
@@ -3089,21 +3193,23 @@ smalltalk.addMethod(
3089
3193
  "_renamePackage_to_",
3090
3194
  smalltalk.method({
3091
3195
  selector: "renamePackage:to:",
3092
- fn: function (packageName, newName) {
3093
- var self = this;
3094
- var $1;
3095
- var pkg;
3096
- pkg = smalltalk.send(self, "_packageAt_ifAbsent_", [packageName, function () {return smalltalk.send(self, "_error_", [smalltalk.send("Missing package: ", "__comma", [packageName])]);}]);
3097
- $1 = smalltalk.send(self, "_packageAt_", [newName]);
3098
- if (($receiver = $1) == nil || $receiver == undefined) {
3099
- } else {
3100
- smalltalk.send(self, "_error_", [smalltalk.send("Already exists a package called: ", "__comma", [newName])]);
3101
- }
3102
- smalltalk.packages[newName] = smalltalk.packages[packageName];
3103
- smalltalk.send(pkg, "_name_", [newName]);
3104
- smalltalk.send(self, "_deletePackage_", [packageName]);
3105
- return self;
3106
- }
3196
+ fn: function (packageName,newName){
3197
+ var self=this;
3198
+ var pkg;
3199
+ return smalltalk.withContext(function($ctx1) {
3200
+ pkg=_st(self)._packageAt_ifAbsent_(packageName,(function(){
3201
+ return smalltalk.withContext(function($ctx2) {
3202
+ }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
3203
+ $1=_st(self)._packageAt_(newName);
3204
+ if(($receiver = $1) == nil || $receiver == undefined){
3205
+ $1;
3206
+ } else {
3207
+ _st(self)._error_(_st("Already exists a package called: ").__comma(newName));
3208
+ };
3209
+ _st(_st(self)._basicAt_("packages"))._at_put_(newName,pkg);
3210
+ _st(pkg)._name_(newName);
3211
+ _st(self)._deletePackage_(packageName);
3212
+ return self}, function($ctx1) {$ctx1.fill(self,"renamePackage:to:",{packageName:packageName,newName:newName,pkg:pkg}, smalltalk.Smalltalk)})}
3107
3213
  }),
3108
3214
  smalltalk.Smalltalk);
3109
3215
 
@@ -3111,25 +3217,10 @@ smalltalk.addMethod(
3111
3217
  "_reservedWords",
3112
3218
  smalltalk.method({
3113
3219
  selector: "reservedWords",
3114
- fn: function () {
3115
- var self = this;
3116
- return self.reservedWords;
3117
- return self;
3118
- }
3119
- }),
3120
- smalltalk.Smalltalk);
3121
-
3122
- smalltalk.addMethod(
3123
- "_send_to_arguments_",
3124
- smalltalk.method({
3125
- selector: "send:to:arguments:",
3126
- fn: function (aSelector, anObject, aCollection) {
3127
- var self = this;
3128
- var selector;
3129
- selector = smalltalk.send(smalltalk.send(aSelector, "_asString", []), "_asSelector", []);
3130
- return self.send(anObject, selector, aCollection);
3131
- return self;
3132
- }
3220
+ fn: function (){
3221
+ var self=this;
3222
+ return smalltalk.withContext(function($ctx1) {
3223
+ return self}, function($ctx1) {$ctx1.fill(self,"reservedWords",{}, smalltalk.Smalltalk)})}
3133
3224
  }),
3134
3225
  smalltalk.Smalltalk);
3135
3226
 
@@ -3139,24 +3230,83 @@ smalltalk.addMethod(
3139
3230
  "_current",
3140
3231
  smalltalk.method({
3141
3232
  selector: "current",
3142
- fn: function () {
3143
- var self = this;
3144
- return smalltalk;
3145
- return self;
3146
- }
3233
+ fn: function (){
3234
+ var self=this;
3235
+ return smalltalk.withContext(function($ctx1) {
3236
+ return self}, function($ctx1) {$ctx1.fill(self,"current",{}, smalltalk.Smalltalk.klass)})}
3147
3237
  }),
3148
3238
  smalltalk.Smalltalk.klass);
3149
3239
 
3150
3240
 
3241
+ smalltalk.addClass('Timeout', smalltalk.Object, ['rawTimeout'], 'Kernel-Objects');
3242
+ smalltalk.addMethod(
3243
+ "_clearInterval",
3244
+ smalltalk.method({
3245
+ selector: "clearInterval",
3246
+ fn: function (){
3247
+ var self=this;
3248
+ return smalltalk.withContext(function($ctx1) {
3249
+ var interval = self["@rawTimeout"];
3250
+ clearInterval(interval);
3251
+ ;
3252
+ return self}, function($ctx1) {$ctx1.fill(self,"clearInterval",{}, smalltalk.Timeout)})}
3253
+ }),
3254
+ smalltalk.Timeout);
3255
+
3256
+ smalltalk.addMethod(
3257
+ "_clearTimeout",
3258
+ smalltalk.method({
3259
+ selector: "clearTimeout",
3260
+ fn: function (){
3261
+ var self=this;
3262
+ return smalltalk.withContext(function($ctx1) {
3263
+ var timeout = self["@rawTimeout"];
3264
+ clearTimeout(timeout);
3265
+ ;
3266
+ return self}, function($ctx1) {$ctx1.fill(self,"clearTimeout",{}, smalltalk.Timeout)})}
3267
+ }),
3268
+ smalltalk.Timeout);
3269
+
3270
+ smalltalk.addMethod(
3271
+ "_rawTimeout_",
3272
+ smalltalk.method({
3273
+ selector: "rawTimeout:",
3274
+ fn: function (anObject){
3275
+ var self=this;
3276
+ return smalltalk.withContext(function($ctx1) {
3277
+ return self}, function($ctx1) {$ctx1.fill(self,"rawTimeout:",{anObject:anObject}, smalltalk.Timeout)})}
3278
+ }),
3279
+ smalltalk.Timeout);
3280
+
3281
+
3282
+ smalltalk.addMethod(
3283
+ "_on_",
3284
+ smalltalk.method({
3285
+ selector: "on:",
3286
+ fn: function (anObject){
3287
+ var self=this;
3288
+ return smalltalk.withContext(function($ctx1) {
3289
+ $2=_st(self)._new();
3290
+ _st($2)._rawTimeout_(anObject);
3291
+ $3=_st($2)._yourself();
3292
+ $1=$3;
3293
+ return $1;
3294
+ }, function($ctx1) {$ctx1.fill(self,"on:",{anObject:anObject}, smalltalk.Timeout.klass)})}
3295
+ }),
3296
+ smalltalk.Timeout.klass);
3297
+
3298
+
3151
3299
  smalltalk.addClass('UndefinedObject', smalltalk.Object, [], 'Kernel-Objects');
3152
3300
  smalltalk.addMethod(
3153
3301
  "_asJSON",
3154
3302
  smalltalk.method({
3155
3303
  selector: "asJSON",
3156
- fn: function () {
3157
- var self = this;
3158
- return null;
3159
- }
3304
+ fn: function (){
3305
+ var self=this;
3306
+ return smalltalk.withContext(function($ctx1) {
3307
+ $1=null;
3308
+ return $1;
3309
+ }, function($ctx1) {$ctx1.fill(self,"asJSON",{}, smalltalk.UndefinedObject)})}
3160
3310
  }),
3161
3311
  smalltalk.UndefinedObject);
3162
3312
 
@@ -3164,10 +3314,12 @@ smalltalk.addMethod(
3164
3314
  "_deepCopy",
3165
3315
  smalltalk.method({
3166
3316
  selector: "deepCopy",
3167
- fn: function () {
3168
- var self = this;
3169
- return self;
3170
- }
3317
+ fn: function (){
3318
+ var self=this;
3319
+ return smalltalk.withContext(function($ctx1) {
3320
+ $1=self;
3321
+ return $1;
3322
+ }, function($ctx1) {$ctx1.fill(self,"deepCopy",{}, smalltalk.UndefinedObject)})}
3171
3323
  }),
3172
3324
  smalltalk.UndefinedObject);
3173
3325
 
@@ -3175,12 +3327,14 @@ smalltalk.addMethod(
3175
3327
  "_ifNil_",
3176
3328
  smalltalk.method({
3177
3329
  selector: "ifNil:",
3178
- fn: function (aBlock) {
3179
- var self = this;
3180
- var $1;
3181
- $1 = smalltalk.send(self, "_ifNil_ifNotNil_", [aBlock, function () {}]);
3182
- return $1;
3183
- }
3330
+ fn: function (aBlock){
3331
+ var self=this;
3332
+ return smalltalk.withContext(function($ctx1) {
3333
+ $2=self;
3334
+ $1=_st($2)._ifNil_ifNotNil_(aBlock,(function(){
3335
+ return smalltalk.withContext(function($ctx2) {
3336
+ return $1;
3337
+ }, function($ctx1) {$ctx1.fill(self,"ifNil:",{aBlock:aBlock}, smalltalk.UndefinedObject)})}
3184
3338
  }),
3185
3339
  smalltalk.UndefinedObject);
3186
3340
 
@@ -3188,12 +3342,12 @@ smalltalk.addMethod(
3188
3342
  "_ifNil_ifNotNil_",
3189
3343
  smalltalk.method({
3190
3344
  selector: "ifNil:ifNotNil:",
3191
- fn: function (aBlock, anotherBlock) {
3192
- var self = this;
3193
- var $1;
3194
- $1 = smalltalk.send(aBlock, "_value", []);
3195
- return $1;
3196
- }
3345
+ fn: function (aBlock,anotherBlock){
3346
+ var self=this;
3347
+ return smalltalk.withContext(function($ctx1) {
3348
+ $1=_st(aBlock)._value();
3349
+ return $1;
3350
+ }, function($ctx1) {$ctx1.fill(self,"ifNil:ifNotNil:",{aBlock:aBlock,anotherBlock:anotherBlock}, smalltalk.UndefinedObject)})}
3197
3351
  }),
3198
3352
  smalltalk.UndefinedObject);
3199
3353
 
@@ -3201,10 +3355,12 @@ smalltalk.addMethod(
3201
3355
  "_ifNotNil_",
3202
3356
  smalltalk.method({
3203
3357
  selector: "ifNotNil:",
3204
- fn: function (aBlock) {
3205
- var self = this;
3206
- return self;
3207
- }
3358
+ fn: function (aBlock){
3359
+ var self=this;
3360
+ return smalltalk.withContext(function($ctx1) {
3361
+ $1=self;
3362
+ return $1;
3363
+ }, function($ctx1) {$ctx1.fill(self,"ifNotNil:",{aBlock:aBlock}, smalltalk.UndefinedObject)})}
3208
3364
  }),
3209
3365
  smalltalk.UndefinedObject);
3210
3366
 
@@ -3212,12 +3368,12 @@ smalltalk.addMethod(
3212
3368
  "_ifNotNil_ifNil_",
3213
3369
  smalltalk.method({
3214
3370
  selector: "ifNotNil:ifNil:",
3215
- fn: function (aBlock, anotherBlock) {
3216
- var self = this;
3217
- var $1;
3218
- $1 = smalltalk.send(anotherBlock, "_value", []);
3219
- return $1;
3220
- }
3371
+ fn: function (aBlock,anotherBlock){
3372
+ var self=this;
3373
+ return smalltalk.withContext(function($ctx1) {
3374
+ $1=_st(anotherBlock)._value();
3375
+ return $1;
3376
+ }, function($ctx1) {$ctx1.fill(self,"ifNotNil:ifNil:",{aBlock:aBlock,anotherBlock:anotherBlock}, smalltalk.UndefinedObject)})}
3221
3377
  }),
3222
3378
  smalltalk.UndefinedObject);
3223
3379
 
@@ -3225,10 +3381,10 @@ smalltalk.addMethod(
3225
3381
  "_isNil",
3226
3382
  smalltalk.method({
3227
3383
  selector: "isNil",
3228
- fn: function () {
3229
- var self = this;
3230
- return true;
3231
- }
3384
+ fn: function (){
3385
+ var self=this;
3386
+ return smalltalk.withContext(function($ctx1) {
3387
+ }, function($ctx1) {$ctx1.fill(self,"isNil",{}, smalltalk.UndefinedObject)})}
3232
3388
  }),
3233
3389
  smalltalk.UndefinedObject);
3234
3390
 
@@ -3236,10 +3392,10 @@ smalltalk.addMethod(
3236
3392
  "_notNil",
3237
3393
  smalltalk.method({
3238
3394
  selector: "notNil",
3239
- fn: function () {
3240
- var self = this;
3241
- return false;
3242
- }
3395
+ fn: function (){
3396
+ var self=this;
3397
+ return smalltalk.withContext(function($ctx1) {
3398
+ }, function($ctx1) {$ctx1.fill(self,"notNil",{}, smalltalk.UndefinedObject)})}
3243
3399
  }),
3244
3400
  smalltalk.UndefinedObject);
3245
3401
 
@@ -3247,10 +3403,10 @@ smalltalk.addMethod(
3247
3403
  "_printString",
3248
3404
  smalltalk.method({
3249
3405
  selector: "printString",
3250
- fn: function () {
3251
- var self = this;
3252
- return "nil";
3253
- }
3406
+ fn: function (){
3407
+ var self=this;
3408
+ return smalltalk.withContext(function($ctx1) {
3409
+ }, function($ctx1) {$ctx1.fill(self,"printString",{}, smalltalk.UndefinedObject)})}
3254
3410
  }),
3255
3411
  smalltalk.UndefinedObject);
3256
3412
 
@@ -3258,10 +3414,12 @@ smalltalk.addMethod(
3258
3414
  "_shallowCopy",
3259
3415
  smalltalk.method({
3260
3416
  selector: "shallowCopy",
3261
- fn: function () {
3262
- var self = this;
3263
- return self;
3264
- }
3417
+ fn: function (){
3418
+ var self=this;
3419
+ return smalltalk.withContext(function($ctx1) {
3420
+ $1=self;
3421
+ return $1;
3422
+ }, function($ctx1) {$ctx1.fill(self,"shallowCopy",{}, smalltalk.UndefinedObject)})}
3265
3423
  }),
3266
3424
  smalltalk.UndefinedObject);
3267
3425
 
@@ -3269,12 +3427,12 @@ smalltalk.addMethod(
3269
3427
  "_subclass_instanceVariableNames_",
3270
3428
  smalltalk.method({
3271
3429
  selector: "subclass:instanceVariableNames:",
3272
- fn: function (aString, anotherString) {
3273
- var self = this;
3274
- var $1;
3275
- $1 = smalltalk.send(self, "_subclass_instanceVariableNames_package_", [aString, anotherString, nil]);
3276
- return $1;
3277
- }
3430
+ fn: function (aString,anotherString){
3431
+ var self=this;
3432
+ return smalltalk.withContext(function($ctx1) {
3433
+ $1=_st(self)._subclass_instanceVariableNames_package_(aString,anotherString,nil);
3434
+ return $1;
3435
+ }, function($ctx1) {$ctx1.fill(self,"subclass:instanceVariableNames:",{aString:aString,anotherString:anotherString}, smalltalk.UndefinedObject)})}
3278
3436
  }),
3279
3437
  smalltalk.UndefinedObject);
3280
3438
 
@@ -3282,13 +3440,13 @@ smalltalk.addMethod(
3282
3440
  "_subclass_instanceVariableNames_category_",
3283
3441
  smalltalk.method({
3284
3442
  selector: "subclass:instanceVariableNames:category:",
3285
- fn: function (aString, aString2, aString3) {
3286
- var self = this;
3287
- var $1;
3288
- smalltalk.send(self, "_deprecatedAPI", []);
3289
- $1 = smalltalk.send(self, "_subclass_instanceVariableNames_package_", [aString, aString2, aString3]);
3290
- return $1;
3291
- }
3443
+ fn: function (aString,aString2,aString3){
3444
+ var self=this;
3445
+ return smalltalk.withContext(function($ctx1) {
3446
+ _st(self)._deprecatedAPI();
3447
+ $1=_st(self)._subclass_instanceVariableNames_package_(aString,aString2,aString3);
3448
+ return $1;
3449
+ }, function($ctx1) {$ctx1.fill(self,"subclass:instanceVariableNames:category:",{aString:aString,aString2:aString2,aString3:aString3}, smalltalk.UndefinedObject)})}
3292
3450
  }),
3293
3451
  smalltalk.UndefinedObject);
3294
3452
 
@@ -3296,12 +3454,12 @@ smalltalk.addMethod(
3296
3454
  "_subclass_instanceVariableNames_package_",
3297
3455
  smalltalk.method({
3298
3456
  selector: "subclass:instanceVariableNames:package:",
3299
- fn: function (aString, aString2, aString3) {
3300
- var self = this;
3301
- var $1;
3302
- $1 = smalltalk.send(smalltalk.send(smalltalk.ClassBuilder || ClassBuilder, "_new", []), "_superclass_subclass_instanceVariableNames_package_", [self, aString, aString2, aString3]);
3303
- return $1;
3304
- }
3457
+ fn: function (aString,aString2,aString3){
3458
+ var self=this;
3459
+ return smalltalk.withContext(function($ctx1) {
3460
+ $1=_st(_st((smalltalk.ClassBuilder || ClassBuilder))._new())._superclass_subclass_instanceVariableNames_package_(self,_st(aString)._asString(),aString2,aString3);
3461
+ return $1;
3462
+ }, function($ctx1) {$ctx1.fill(self,"subclass:instanceVariableNames:package:",{aString:aString,aString2:aString2,aString3:aString3}, smalltalk.UndefinedObject)})}
3305
3463
  }),
3306
3464
  smalltalk.UndefinedObject);
3307
3465
 
@@ -3310,11 +3468,10 @@ smalltalk.addMethod(
3310
3468
  "_new",
3311
3469
  smalltalk.method({
3312
3470
  selector: "new",
3313
- fn: function () {
3314
- var self = this;
3315
- smalltalk.send(self, "_error_", ["You cannot create new instances of UndefinedObject. Use nil"]);
3316
- return self;
3317
- }
3471
+ fn: function (){
3472
+ var self=this;
3473
+ return smalltalk.withContext(function($ctx1) {
3474
+ return self}, function($ctx1) {$ctx1.fill(self,"new",{}, smalltalk.UndefinedObject.klass)})}
3318
3475
  }),
3319
3476
  smalltalk.UndefinedObject.klass);
3320
3477