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
@@ -6,14 +6,14 @@ smalltalk.method({
6
6
  selector: "=",
7
7
  fn: function (anAssociation){
8
8
  var self=this;
9
- var $1;
10
- $1=smalltalk.send(smalltalk.send(smalltalk.send(self,"_class",[]),"__eq",[smalltalk.send(anAssociation,"_class",[])]),"_and_",[(function(){
11
- return smalltalk.send(smalltalk.send(smalltalk.send(self,"_key",[]),"__eq",[smalltalk.send(anAssociation,"_key",[])]),"_and_",[(function(){
12
- return smalltalk.send(smalltalk.send(self,"_value",[]),"__eq",[smalltalk.send(anAssociation,"_value",[])]);
13
- })]);
14
- })]);
9
+ return smalltalk.withContext(function($ctx1) {
10
+ $1=_st(_st(_st(self)._class()).__eq(_st(anAssociation)._class()))._and_((function(){
11
+ return smalltalk.withContext(function($ctx2) {
12
+ return smalltalk.withContext(function($ctx3) {
13
+ }, function($ctx3) {$ctx3.fillBlock({},$ctx1)})}));
14
+ }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
15
15
  return $1;
16
- }
16
+ }, function($ctx1) {$ctx1.fill(self,"=",{anAssociation:anAssociation}, smalltalk.Association)})}
17
17
  }),
18
18
  smalltalk.Association);
19
19
 
@@ -23,8 +23,10 @@ smalltalk.method({
23
23
  selector: "key",
24
24
  fn: function (){
25
25
  var self=this;
26
- return self["@key"];
27
- }
26
+ return smalltalk.withContext(function($ctx1) {
27
+ $1=self["@key"];
28
+ return $1;
29
+ }, function($ctx1) {$ctx1.fill(self,"key",{}, smalltalk.Association)})}
28
30
  }),
29
31
  smalltalk.Association);
30
32
 
@@ -34,8 +36,8 @@ smalltalk.method({
34
36
  selector: "key:",
35
37
  fn: function (aKey){
36
38
  var self=this;
37
- self["@key"]=aKey;
38
- return self}
39
+ return smalltalk.withContext(function($ctx1) {
40
+ return self}, function($ctx1) {$ctx1.fill(self,"key:",{aKey:aKey}, smalltalk.Association)})}
39
41
  }),
40
42
  smalltalk.Association);
41
43
 
@@ -45,12 +47,12 @@ smalltalk.method({
45
47
  selector: "printString",
46
48
  fn: function (){
47
49
  var self=this;
48
- var $1;
49
- $1=smalltalk.send((smalltalk.String || String),"_streamContents_",[(function(aStream){
50
- return smalltalk.send(self,"_storeOn_",[aStream]);
51
- })]);
50
+ return smalltalk.withContext(function($ctx1) {
51
+ $1=_st((smalltalk.String || String))._streamContents_((function(aStream){
52
+ return smalltalk.withContext(function($ctx2) {
53
+ }, function($ctx2) {$ctx2.fillBlock({aStream:aStream},$ctx1)})}));
52
54
  return $1;
53
- }
55
+ }, function($ctx1) {$ctx1.fill(self,"printString",{}, smalltalk.Association)})}
54
56
  }),
55
57
  smalltalk.Association);
56
58
 
@@ -60,10 +62,10 @@ smalltalk.method({
60
62
  selector: "storeOn:",
61
63
  fn: function (aStream){
62
64
  var self=this;
63
- smalltalk.send(self["@key"],"_storeOn_",[aStream]);
64
- smalltalk.send(aStream,"_nextPutAll_",["->"]);
65
- smalltalk.send(self["@value"],"_storeOn_",[aStream]);
66
- return self}
65
+ return smalltalk.withContext(function($ctx1) {
66
+ _st(aStream)._nextPutAll_("->");
67
+ _st(self["@value"])._storeOn_(aStream);
68
+ return self}, function($ctx1) {$ctx1.fill(self,"storeOn:",{aStream:aStream}, smalltalk.Association)})}
67
69
  }),
68
70
  smalltalk.Association);
69
71
 
@@ -73,8 +75,10 @@ smalltalk.method({
73
75
  selector: "value",
74
76
  fn: function (){
75
77
  var self=this;
76
- return self["@value"];
77
- }
78
+ return smalltalk.withContext(function($ctx1) {
79
+ $1=self["@value"];
80
+ return $1;
81
+ }, function($ctx1) {$ctx1.fill(self,"value",{}, smalltalk.Association)})}
78
82
  }),
79
83
  smalltalk.Association);
80
84
 
@@ -84,8 +88,8 @@ smalltalk.method({
84
88
  selector: "value:",
85
89
  fn: function (aValue){
86
90
  var self=this;
87
- self["@value"]=aValue;
88
- return self}
91
+ return smalltalk.withContext(function($ctx1) {
92
+ return self}, function($ctx1) {$ctx1.fill(self,"value:",{aValue:aValue}, smalltalk.Association)})}
89
93
  }),
90
94
  smalltalk.Association);
91
95
 
@@ -96,14 +100,14 @@ smalltalk.method({
96
100
  selector: "key:value:",
97
101
  fn: function (aKey,aValue){
98
102
  var self=this;
99
- var $2,$3,$1;
100
- $2=smalltalk.send(self,"_new",[]);
101
- smalltalk.send($2,"_key_",[aKey]);
102
- smalltalk.send($2,"_value_",[aValue]);
103
- $3=smalltalk.send($2,"_yourself",[]);
103
+ return smalltalk.withContext(function($ctx1) {
104
+ $2=_st(self)._new();
105
+ _st($2)._key_(aKey);
106
+ _st($2)._value_(aValue);
107
+ $3=_st($2)._yourself();
104
108
  $1=$3;
105
109
  return $1;
106
- }
110
+ }, function($ctx1) {$ctx1.fill(self,"key:value:",{aKey:aKey,aValue:aValue}, smalltalk.Association.klass)})}
107
111
  }),
108
112
  smalltalk.Association.klass);
109
113
 
@@ -115,13 +119,13 @@ smalltalk.method({
115
119
  selector: ",",
116
120
  fn: function (aCollection){
117
121
  var self=this;
118
- var $2,$3,$1;
119
- $2=smalltalk.send(self,"_copy",[]);
120
- smalltalk.send($2,"_addAll_",[aCollection]);
121
- $3=smalltalk.send($2,"_yourself",[]);
122
+ return smalltalk.withContext(function($ctx1) {
123
+ $2=_st(self)._copy();
124
+ _st($2)._addAll_(aCollection);
125
+ $3=_st($2)._yourself();
122
126
  $1=$3;
123
127
  return $1;
124
- }
128
+ }, function($ctx1) {$ctx1.fill(self,",",{aCollection:aCollection}, smalltalk.Collection)})}
125
129
  }),
126
130
  smalltalk.Collection);
127
131
 
@@ -131,8 +135,8 @@ smalltalk.method({
131
135
  selector: "add:",
132
136
  fn: function (anObject){
133
137
  var self=this;
134
- smalltalk.send(self,"_subclassResponsibility",[]);
135
- return self}
138
+ return smalltalk.withContext(function($ctx1) {
139
+ return self}, function($ctx1) {$ctx1.fill(self,"add:",{anObject:anObject}, smalltalk.Collection)})}
136
140
  }),
137
141
  smalltalk.Collection);
138
142
 
@@ -142,11 +146,13 @@ smalltalk.method({
142
146
  selector: "addAll:",
143
147
  fn: function (aCollection){
144
148
  var self=this;
145
- smalltalk.send(aCollection,"_do_",[(function(each){
146
- return smalltalk.send(self,"_add_",[each]);
147
- })]);
148
- return aCollection;
149
- }
149
+ return smalltalk.withContext(function($ctx1) {
150
+ _st(aCollection)._do_((function(each){
151
+ return smalltalk.withContext(function($ctx2) {
152
+ }, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
153
+ $1=aCollection;
154
+ return $1;
155
+ }, function($ctx1) {$ctx1.fill(self,"addAll:",{aCollection:aCollection}, smalltalk.Collection)})}
150
156
  }),
151
157
  smalltalk.Collection);
152
158
 
@@ -156,10 +162,10 @@ smalltalk.method({
156
162
  selector: "asArray",
157
163
  fn: function (){
158
164
  var self=this;
159
- var $1;
160
- $1=smalltalk.send((smalltalk.Array || Array),"_withAll_",[self]);
165
+ return smalltalk.withContext(function($ctx1) {
166
+ $1=_st((smalltalk.Array || Array))._withAll_(self);
161
167
  return $1;
162
- }
168
+ }, function($ctx1) {$ctx1.fill(self,"asArray",{}, smalltalk.Collection)})}
163
169
  }),
164
170
  smalltalk.Collection);
165
171
 
@@ -169,12 +175,12 @@ smalltalk.method({
169
175
  selector: "asJSON",
170
176
  fn: function (){
171
177
  var self=this;
172
- var $1;
173
- $1=smalltalk.send(smalltalk.send(self,"_asArray",[]),"_collect_",[(function(each){
174
- return smalltalk.send(each,"_asJSON",[]);
175
- })]);
178
+ return smalltalk.withContext(function($ctx1) {
179
+ $1=_st(_st(self)._asArray())._collect_((function(each){
180
+ return smalltalk.withContext(function($ctx2) {
181
+ }, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
176
182
  return $1;
177
- }
183
+ }, function($ctx1) {$ctx1.fill(self,"asJSON",{}, smalltalk.Collection)})}
178
184
  }),
179
185
  smalltalk.Collection);
180
186
 
@@ -184,10 +190,10 @@ smalltalk.method({
184
190
  selector: "asOrderedCollection",
185
191
  fn: function (){
186
192
  var self=this;
187
- var $1;
188
- $1=smalltalk.send(self,"_asArray",[]);
193
+ return smalltalk.withContext(function($ctx1) {
194
+ $1=_st(self)._asArray();
189
195
  return $1;
190
- }
196
+ }, function($ctx1) {$ctx1.fill(self,"asOrderedCollection",{}, smalltalk.Collection)})}
191
197
  }),
192
198
  smalltalk.Collection);
193
199
 
@@ -197,10 +203,10 @@ smalltalk.method({
197
203
  selector: "asSet",
198
204
  fn: function (){
199
205
  var self=this;
200
- var $1;
201
- $1=smalltalk.send((smalltalk.Set || Set),"_withAll_",[self]);
206
+ return smalltalk.withContext(function($ctx1) {
207
+ $1=_st((smalltalk.Set || Set))._withAll_(self);
202
208
  return $1;
203
- }
209
+ }, function($ctx1) {$ctx1.fill(self,"asSet",{}, smalltalk.Collection)})}
204
210
  }),
205
211
  smalltalk.Collection);
206
212
 
@@ -210,15 +216,15 @@ smalltalk.method({
210
216
  selector: "collect:",
211
217
  fn: function (aBlock){
212
218
  var self=this;
213
- var $1;
214
219
  var stream;
215
- stream=smalltalk.send(smalltalk.send(smalltalk.send(self,"_class",[]),"_new",[]),"_writeStream",[]);
216
- smalltalk.send(self,"_do_",[(function(each){
217
- return smalltalk.send(stream,"_nextPut_",[smalltalk.send(aBlock,"_value_",[each])]);
218
- })]);
219
- $1=smalltalk.send(stream,"_contents",[]);
220
+ return smalltalk.withContext(function($ctx1) {
221
+ stream=_st(_st(_st(self)._class())._new())._writeStream();
222
+ _st(self)._do_((function(each){
223
+ return smalltalk.withContext(function($ctx2) {
224
+ }, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
225
+ $1=_st(stream)._contents();
220
226
  return $1;
221
- }
227
+ }, function($ctx1) {$ctx1.fill(self,"collect:",{aBlock:aBlock,stream:stream}, smalltalk.Collection)})}
222
228
  }),
223
229
  smalltalk.Collection);
224
230
 
@@ -228,13 +234,13 @@ smalltalk.method({
228
234
  selector: "copyWith:",
229
235
  fn: function (anObject){
230
236
  var self=this;
231
- var $2,$3,$1;
232
- $2=smalltalk.send(self,"_copy",[]);
233
- smalltalk.send($2,"_add_",[anObject]);
234
- $3=smalltalk.send($2,"_yourself",[]);
237
+ return smalltalk.withContext(function($ctx1) {
238
+ $2=_st(self)._copy();
239
+ _st($2)._add_(anObject);
240
+ $3=_st($2)._yourself();
235
241
  $1=$3;
236
242
  return $1;
237
- }
243
+ }, function($ctx1) {$ctx1.fill(self,"copyWith:",{anObject:anObject}, smalltalk.Collection)})}
238
244
  }),
239
245
  smalltalk.Collection);
240
246
 
@@ -244,13 +250,13 @@ smalltalk.method({
244
250
  selector: "copyWithAll:",
245
251
  fn: function (aCollection){
246
252
  var self=this;
247
- var $2,$3,$1;
248
- $2=smalltalk.send(self,"_copy",[]);
249
- smalltalk.send($2,"_addAll_",[aCollection]);
250
- $3=smalltalk.send($2,"_yourself",[]);
253
+ return smalltalk.withContext(function($ctx1) {
254
+ $2=_st(self)._copy();
255
+ _st($2)._addAll_(aCollection);
256
+ $3=_st($2)._yourself();
251
257
  $1=$3;
252
258
  return $1;
253
- }
259
+ }, function($ctx1) {$ctx1.fill(self,"copyWithAll:",{aCollection:aCollection}, smalltalk.Collection)})}
254
260
  }),
255
261
  smalltalk.Collection);
256
262
 
@@ -260,12 +266,12 @@ smalltalk.method({
260
266
  selector: "copyWithoutAll:",
261
267
  fn: function (aCollection){
262
268
  var self=this;
263
- var $1;
264
- $1=smalltalk.send(self,"_reject_",[(function(each){
265
- return smalltalk.send(aCollection,"_includes_",[each]);
266
- })]);
269
+ return smalltalk.withContext(function($ctx1) {
270
+ $1=_st(self)._reject_((function(each){
271
+ return smalltalk.withContext(function($ctx2) {
272
+ }, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
267
273
  return $1;
268
- }
274
+ }, function($ctx1) {$ctx1.fill(self,"copyWithoutAll:",{aCollection:aCollection}, smalltalk.Collection)})}
269
275
  }),
270
276
  smalltalk.Collection);
271
277
 
@@ -275,12 +281,12 @@ smalltalk.method({
275
281
  selector: "detect:",
276
282
  fn: function (aBlock){
277
283
  var self=this;
278
- var $1;
279
- $1=smalltalk.send(self,"_detect_ifNone_",[aBlock,(function(){
280
- return smalltalk.send(self,"_errorNotFound",[]);
281
- })]);
284
+ return smalltalk.withContext(function($ctx1) {
285
+ $1=_st(self)._detect_ifNone_(aBlock,(function(){
286
+ return smalltalk.withContext(function($ctx2) {
287
+ }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
282
288
  return $1;
283
- }
289
+ }, function($ctx1) {$ctx1.fill(self,"detect:",{aBlock:aBlock}, smalltalk.Collection)})}
284
290
  }),
285
291
  smalltalk.Collection);
286
292
 
@@ -290,14 +296,13 @@ smalltalk.method({
290
296
  selector: "detect:ifNone:",
291
297
  fn: function (aBlock,anotherBlock){
292
298
  var self=this;
293
-
299
+ return smalltalk.withContext(function($ctx1) {
294
300
  for(var i = 0; i < self.length; i++)
295
301
  if(aBlock(self[i]))
296
302
  return self[i];
297
303
  return anotherBlock();
298
304
  ;
299
- ;
300
- return self}
305
+ return self}, function($ctx1) {$ctx1.fill(self,"detect:ifNone:",{aBlock:aBlock,anotherBlock:anotherBlock}, smalltalk.Collection)})}
301
306
  }),
302
307
  smalltalk.Collection);
303
308
 
@@ -307,9 +312,8 @@ smalltalk.method({
307
312
  selector: "do:",
308
313
  fn: function (aBlock){
309
314
  var self=this;
310
- for(var i=0;i<self.length;i++){aBlock(self[i]);};
311
- ;
312
- return self}
315
+ return smalltalk.withContext(function($ctx1) {
316
+ return self}, function($ctx1) {$ctx1.fill(self,"do:",{aBlock:aBlock}, smalltalk.Collection)})}
313
317
  }),
314
318
  smalltalk.Collection);
315
319
 
@@ -320,17 +324,21 @@ selector: "do:separatedBy:",
320
324
  fn: function (aBlock,anotherBlock){
321
325
  var self=this;
322
326
  var first;
327
+ return smalltalk.withContext(function($ctx1) {
323
328
  first=true;
324
- smalltalk.send(self,"_do_",[(function(each){
325
- if(smalltalk.assert(first)){
329
+ $1=self;
330
+ $2=(function(each){
331
+ return smalltalk.withContext(function($ctx2) {
332
+ if(smalltalk.assert($3)){
326
333
  first=false;
327
334
  first;
328
335
  } else {
329
- smalltalk.send(anotherBlock,"_value",[]);
336
+ _st(anotherBlock)._value();
330
337
  };
331
- return smalltalk.send(aBlock,"_value_",[each]);
332
- })]);
333
- return self}
338
+ return _st(aBlock)._value_(each);
339
+ }, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})});
340
+ _st($1)._do_($2);
341
+ return self}, function($ctx1) {$ctx1.fill(self,"do:separatedBy:",{aBlock:aBlock,anotherBlock:anotherBlock,first:first}, smalltalk.Collection)})}
334
342
  }),
335
343
  smalltalk.Collection);
336
344
 
@@ -340,8 +348,8 @@ smalltalk.method({
340
348
  selector: "errorNotFound",
341
349
  fn: function (){
342
350
  var self=this;
343
- smalltalk.send(self,"_error_",["Object is not in the collection"]);
344
- return self}
351
+ return smalltalk.withContext(function($ctx1) {
352
+ return self}, function($ctx1) {$ctx1.fill(self,"errorNotFound",{}, smalltalk.Collection)})}
345
353
  }),
346
354
  smalltalk.Collection);
347
355
 
@@ -351,15 +359,15 @@ smalltalk.method({
351
359
  selector: "ifEmpty:",
352
360
  fn: function (aBlock){
353
361
  var self=this;
354
- var $2,$1;
355
- $2=smalltalk.send(self,"_isEmpty",[]);
362
+ return smalltalk.withContext(function($ctx1) {
363
+ $2=_st(self)._isEmpty();
356
364
  if(smalltalk.assert($2)){
357
- $1=smalltalk.send(aBlock,"_value",[]);
365
+ $1=_st(aBlock)._value();
358
366
  } else {
359
367
  $1=self;
360
368
  };
361
369
  return $1;
362
- }
370
+ }, function($ctx1) {$ctx1.fill(self,"ifEmpty:",{aBlock:aBlock}, smalltalk.Collection)})}
363
371
  }),
364
372
  smalltalk.Collection);
365
373
 
@@ -369,10 +377,10 @@ smalltalk.method({
369
377
  selector: "ifNotEmpty:",
370
378
  fn: function (aBlock){
371
379
  var self=this;
372
- var $1;
373
- $1=smalltalk.send(self,"_notEmpty",[]);
374
- smalltalk.send($1,"_ifTrue_",[aBlock]);
375
- return self}
380
+ return smalltalk.withContext(function($ctx1) {
381
+ $1=_st(self)._notEmpty();
382
+ _st($1)._ifTrue_(aBlock);
383
+ return self}, function($ctx1) {$ctx1.fill(self,"ifNotEmpty:",{aBlock:aBlock}, smalltalk.Collection)})}
376
384
  }),
377
385
  smalltalk.Collection);
378
386
 
@@ -382,15 +390,16 @@ smalltalk.method({
382
390
  selector: "includes:",
383
391
  fn: function (anObject){
384
392
  var self=this;
385
-
386
- var i = self.length;
387
- while (i--) {
388
- if (smalltalk.send(self[i], "__eq", [anObject])) {return true;}
389
- }
390
- return false
391
- ;
392
- ;
393
- return self}
393
+ var sentinel;
394
+ return smalltalk.withContext(function($ctx1) {
395
+ sentinel=_st((smalltalk.Object || Object))._new();
396
+ $1=_st(_st(self)._detect_ifNone_((function(each){
397
+ return smalltalk.withContext(function($ctx2) {
398
+ }, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}),(function(){
399
+ return smalltalk.withContext(function($ctx2) {
400
+ }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))).__tild_eq(sentinel);
401
+ return $1;
402
+ }, function($ctx1) {$ctx1.fill(self,"includes:",{anObject:anObject,sentinel:sentinel}, smalltalk.Collection)})}
394
403
  }),
395
404
  smalltalk.Collection);
396
405
 
@@ -401,13 +410,15 @@ selector: "inject:into:",
401
410
  fn: function (anObject,aBlock){
402
411
  var self=this;
403
412
  var result;
413
+ return smalltalk.withContext(function($ctx1) {
404
414
  result=anObject;
405
- smalltalk.send(self,"_do_",[(function(each){
406
- result=smalltalk.send(aBlock,"_value_value_",[result,each]);
407
- return result;
408
- })]);
415
+ _st(self)._do_((function(each){
416
+ return smalltalk.withContext(function($ctx2) {
409
417
  return result;
410
- }
418
+ }, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
419
+ $1=result;
420
+ return $1;
421
+ }, function($ctx1) {$ctx1.fill(self,"inject:into:",{anObject:anObject,aBlock:aBlock,result:result}, smalltalk.Collection)})}
411
422
  }),
412
423
  smalltalk.Collection);
413
424
 
@@ -417,22 +428,23 @@ smalltalk.method({
417
428
  selector: "intersection:",
418
429
  fn: function (aCollection){
419
430
  var self=this;
420
- var $1,$2;
421
- var set;
422
- var outputSet;
423
- set=smalltalk.send(self,"_asSet",[]);
424
- outputSet=smalltalk.send((smalltalk.Set || Set),"_new",[]);
425
- smalltalk.send(aCollection,"_do_",[(function(each){
426
- $1=smalltalk.send(smalltalk.send(set,"_includes_",[each]),"_and_",[(function(){
427
- return smalltalk.send(smalltalk.send(outputSet,"_includes_",[each]),"_not",[]);
428
- })]);
429
- if(smalltalk.assert($1)){
430
- return smalltalk.send(outputSet,"_add_",[each]);
431
+ var set,outputSet;
432
+ return smalltalk.withContext(function($ctx1) {
433
+ set=_st(self)._asSet();
434
+ outputSet=_st((smalltalk.Set || Set))._new();
435
+ $1=aCollection;
436
+ $2=(function(each){
437
+ return smalltalk.withContext(function($ctx2) {
438
+ return smalltalk.withContext(function($ctx3) {
439
+ }, function($ctx3) {$ctx3.fillBlock({},$ctx1)})}));
440
+ if(smalltalk.assert($3)){
441
+ return _st(outputSet)._add_(each);
431
442
  };
432
- })]);
433
- $2=smalltalk.send(smalltalk.send(self,"_class",[]),"_withAll_",[smalltalk.send(outputSet,"_asArray",[])]);
434
- return $2;
435
- }
443
+ }, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})});
444
+ _st($1)._do_($2);
445
+ $4=_st(_st(self)._class())._withAll_(_st(outputSet)._asArray());
446
+ return $4;
447
+ }, function($ctx1) {$ctx1.fill(self,"intersection:",{aCollection:aCollection,set:set,outputSet:outputSet}, smalltalk.Collection)})}
436
448
  }),
437
449
  smalltalk.Collection);
438
450
 
@@ -442,10 +454,10 @@ smalltalk.method({
442
454
  selector: "isEmpty",
443
455
  fn: function (){
444
456
  var self=this;
445
- var $1;
446
- $1=smalltalk.send(smalltalk.send(self,"_size",[]),"__eq",[(0)]);
457
+ return smalltalk.withContext(function($ctx1) {
458
+ $1=_st(_st(self)._size()).__eq((0));
447
459
  return $1;
448
- }
460
+ }, function($ctx1) {$ctx1.fill(self,"isEmpty",{}, smalltalk.Collection)})}
449
461
  }),
450
462
  smalltalk.Collection);
451
463
 
@@ -455,10 +467,10 @@ smalltalk.method({
455
467
  selector: "notEmpty",
456
468
  fn: function (){
457
469
  var self=this;
458
- var $1;
459
- $1=smalltalk.send(smalltalk.send(self,"_isEmpty",[]),"_not",[]);
470
+ return smalltalk.withContext(function($ctx1) {
471
+ $1=_st(_st(self)._isEmpty())._not();
460
472
  return $1;
461
- }
473
+ }, function($ctx1) {$ctx1.fill(self,"notEmpty",{}, smalltalk.Collection)})}
462
474
  }),
463
475
  smalltalk.Collection);
464
476
 
@@ -468,18 +480,21 @@ smalltalk.method({
468
480
  selector: "occurrencesOf:",
469
481
  fn: function (anObject){
470
482
  var self=this;
471
- var $1;
472
483
  var tally;
484
+ return smalltalk.withContext(function($ctx1) {
473
485
  tally=(0);
474
- smalltalk.send(self,"_do_",[(function(each){
475
- $1=smalltalk.send(anObject,"__eq",[each]);
476
- if(smalltalk.assert($1)){
477
- tally=smalltalk.send(tally,"__plus",[(1)]);
486
+ $1=self;
487
+ $2=(function(each){
488
+ return smalltalk.withContext(function($ctx2) {
489
+ if(smalltalk.assert($3)){
490
+ tally=_st(tally).__plus((1));
478
491
  return tally;
479
492
  };
480
- })]);
481
- return tally;
482
- }
493
+ }, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})});
494
+ _st($1)._do_($2);
495
+ $4=tally;
496
+ return $4;
497
+ }, function($ctx1) {$ctx1.fill(self,"occurrencesOf:",{anObject:anObject,tally:tally}, smalltalk.Collection)})}
483
498
  }),
484
499
  smalltalk.Collection);
485
500
 
@@ -489,18 +504,18 @@ smalltalk.method({
489
504
  selector: "printString",
490
505
  fn: function (){
491
506
  var self=this;
492
- var $1;
493
- $1=smalltalk.send((smalltalk.String || String),"_streamContents_",[(function(aStream){
494
- smalltalk.send(aStream,"_nextPutAll_",[smalltalk.send(smalltalk.send(self,"_printString",[],smalltalk.Object),"__comma",[" ("])]);
495
- smalltalk.send(self,"_do_separatedBy_",[(function(each){
496
- return smalltalk.send(aStream,"_nextPutAll_",[smalltalk.send(each,"_printString",[])]);
497
- }),(function(){
498
- return smalltalk.send(aStream,"_nextPutAll_",[" "]);
499
- })]);
500
- return smalltalk.send(aStream,"_nextPutAll_",[")"]);
501
- })]);
507
+ return smalltalk.withContext(function($ctx1) {
508
+ $1=_st((smalltalk.String || String))._streamContents_((function(aStream){
509
+ return smalltalk.withContext(function($ctx2) {
510
+ _st(self)._do_separatedBy_((function(each){
511
+ return smalltalk.withContext(function($ctx3) {
512
+ }, function($ctx3) {$ctx3.fillBlock({each:each},$ctx1)})}),(function(){
513
+ return smalltalk.withContext(function($ctx3) {
514
+ }, function($ctx3) {$ctx3.fillBlock({},$ctx1)})}));
515
+ return _st(aStream)._nextPutAll_(")");
516
+ }, function($ctx2) {$ctx2.fillBlock({aStream:aStream},$ctx1)})}));
502
517
  return $1;
503
- }
518
+ }, function($ctx1) {$ctx1.fill(self,"printString",{}, smalltalk.Collection)})}
504
519
  }),
505
520
  smalltalk.Collection);
506
521
 
@@ -510,10 +525,10 @@ smalltalk.method({
510
525
  selector: "readStream",
511
526
  fn: function (){
512
527
  var self=this;
513
- var $1;
514
- $1=smalltalk.send(self,"_stream",[]);
528
+ return smalltalk.withContext(function($ctx1) {
529
+ $1=_st(self)._stream();
515
530
  return $1;
516
- }
531
+ }, function($ctx1) {$ctx1.fill(self,"readStream",{}, smalltalk.Collection)})}
517
532
  }),
518
533
  smalltalk.Collection);
519
534
 
@@ -523,12 +538,12 @@ smalltalk.method({
523
538
  selector: "reject:",
524
539
  fn: function (aBlock){
525
540
  var self=this;
526
- var $1;
527
- $1=smalltalk.send(self,"_select_",[(function(each){
528
- return smalltalk.send(smalltalk.send(aBlock,"_value_",[each]),"__eq",[false]);
529
- })]);
541
+ return smalltalk.withContext(function($ctx1) {
542
+ $1=_st(self)._select_((function(each){
543
+ return smalltalk.withContext(function($ctx2) {
544
+ }, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
530
545
  return $1;
531
- }
546
+ }, function($ctx1) {$ctx1.fill(self,"reject:",{aBlock:aBlock}, smalltalk.Collection)})}
532
547
  }),
533
548
  smalltalk.Collection);
534
549
 
@@ -538,12 +553,12 @@ smalltalk.method({
538
553
  selector: "remove:",
539
554
  fn: function (anObject){
540
555
  var self=this;
541
- var $1;
542
- $1=smalltalk.send(self,"_remove_ifAbsent_",[anObject,(function(){
543
- return smalltalk.send(self,"_errorNotFound",[]);
544
- })]);
556
+ return smalltalk.withContext(function($ctx1) {
557
+ $1=_st(self)._remove_ifAbsent_(anObject,(function(){
558
+ return smalltalk.withContext(function($ctx2) {
559
+ }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
545
560
  return $1;
546
- }
561
+ }, function($ctx1) {$ctx1.fill(self,"remove:",{anObject:anObject}, smalltalk.Collection)})}
547
562
  }),
548
563
  smalltalk.Collection);
549
564
 
@@ -553,8 +568,8 @@ smalltalk.method({
553
568
  selector: "remove:ifAbsent:",
554
569
  fn: function (anObject,aBlock){
555
570
  var self=this;
556
- smalltalk.send(self,"_subclassResponsibility",[]);
557
- return self}
571
+ return smalltalk.withContext(function($ctx1) {
572
+ return self}, function($ctx1) {$ctx1.fill(self,"remove:ifAbsent:",{anObject:anObject,aBlock:aBlock}, smalltalk.Collection)})}
558
573
  }),
559
574
  smalltalk.Collection);
560
575
 
@@ -564,18 +579,20 @@ smalltalk.method({
564
579
  selector: "select:",
565
580
  fn: function (aBlock){
566
581
  var self=this;
567
- var $1,$2;
568
582
  var stream;
569
- stream=smalltalk.send(smalltalk.send(smalltalk.send(self,"_class",[]),"_new",[]),"_writeStream",[]);
570
- smalltalk.send(self,"_do_",[(function(each){
571
- $1=smalltalk.send(aBlock,"_value_",[each]);
572
- if(smalltalk.assert($1)){
573
- return smalltalk.send(stream,"_nextPut_",[each]);
583
+ return smalltalk.withContext(function($ctx1) {
584
+ stream=_st(_st(_st(self)._class())._new())._writeStream();
585
+ $1=self;
586
+ $2=(function(each){
587
+ return smalltalk.withContext(function($ctx2) {
588
+ if(smalltalk.assert($3)){
589
+ return _st(stream)._nextPut_(each);
574
590
  };
575
- })]);
576
- $2=smalltalk.send(stream,"_contents",[]);
577
- return $2;
578
- }
591
+ }, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})});
592
+ _st($1)._do_($2);
593
+ $4=_st(stream)._contents();
594
+ return $4;
595
+ }, function($ctx1) {$ctx1.fill(self,"select:",{aBlock:aBlock,stream:stream}, smalltalk.Collection)})}
579
596
  }),
580
597
  smalltalk.Collection);
581
598
 
@@ -585,8 +602,8 @@ smalltalk.method({
585
602
  selector: "size",
586
603
  fn: function (){
587
604
  var self=this;
588
- smalltalk.send(self,"_subclassResponsibility",[]);
589
- return self}
605
+ return smalltalk.withContext(function($ctx1) {
606
+ return self}, function($ctx1) {$ctx1.fill(self,"size",{}, smalltalk.Collection)})}
590
607
  }),
591
608
  smalltalk.Collection);
592
609
 
@@ -596,10 +613,10 @@ smalltalk.method({
596
613
  selector: "stream",
597
614
  fn: function (){
598
615
  var self=this;
599
- var $1;
600
- $1=smalltalk.send(smalltalk.send(self,"_streamClass",[]),"_on_",[self]);
616
+ return smalltalk.withContext(function($ctx1) {
617
+ $1=_st(_st(self)._streamClass())._on_(self);
601
618
  return $1;
602
- }
619
+ }, function($ctx1) {$ctx1.fill(self,"stream",{}, smalltalk.Collection)})}
603
620
  }),
604
621
  smalltalk.Collection);
605
622
 
@@ -609,10 +626,10 @@ smalltalk.method({
609
626
  selector: "streamClass",
610
627
  fn: function (){
611
628
  var self=this;
612
- var $1;
613
- $1=smalltalk.send(smalltalk.send(self,"_class",[]),"_streamClass",[]);
629
+ return smalltalk.withContext(function($ctx1) {
630
+ $1=_st(_st(self)._class())._streamClass();
614
631
  return $1;
615
- }
632
+ }, function($ctx1) {$ctx1.fill(self,"streamClass",{}, smalltalk.Collection)})}
616
633
  }),
617
634
  smalltalk.Collection);
618
635
 
@@ -622,10 +639,10 @@ smalltalk.method({
622
639
  selector: "writeStream",
623
640
  fn: function (){
624
641
  var self=this;
625
- var $1;
626
- $1=smalltalk.send(self,"_stream",[]);
642
+ return smalltalk.withContext(function($ctx1) {
643
+ $1=_st(self)._stream();
627
644
  return $1;
628
- }
645
+ }, function($ctx1) {$ctx1.fill(self,"writeStream",{}, smalltalk.Collection)})}
629
646
  }),
630
647
  smalltalk.Collection);
631
648
 
@@ -636,10 +653,10 @@ smalltalk.method({
636
653
  selector: "new:",
637
654
  fn: function (anInteger){
638
655
  var self=this;
639
- var $1;
640
- $1=smalltalk.send(self,"_new",[]);
656
+ return smalltalk.withContext(function($ctx1) {
657
+ $1=_st(self)._new();
641
658
  return $1;
642
- }
659
+ }, function($ctx1) {$ctx1.fill(self,"new:",{anInteger:anInteger}, smalltalk.Collection.klass)})}
643
660
  }),
644
661
  smalltalk.Collection.klass);
645
662
 
@@ -649,8 +666,10 @@ smalltalk.method({
649
666
  selector: "streamClass",
650
667
  fn: function (){
651
668
  var self=this;
652
- return (smalltalk.Stream || Stream);
653
- }
669
+ return smalltalk.withContext(function($ctx1) {
670
+ $1=(smalltalk.Stream || Stream);
671
+ return $1;
672
+ }, function($ctx1) {$ctx1.fill(self,"streamClass",{}, smalltalk.Collection.klass)})}
654
673
  }),
655
674
  smalltalk.Collection.klass);
656
675
 
@@ -660,13 +679,13 @@ smalltalk.method({
660
679
  selector: "with:",
661
680
  fn: function (anObject){
662
681
  var self=this;
663
- var $2,$3,$1;
664
- $2=smalltalk.send(self,"_new",[]);
665
- smalltalk.send($2,"_add_",[anObject]);
666
- $3=smalltalk.send($2,"_yourself",[]);
682
+ return smalltalk.withContext(function($ctx1) {
683
+ $2=_st(self)._new();
684
+ _st($2)._add_(anObject);
685
+ $3=_st($2)._yourself();
667
686
  $1=$3;
668
687
  return $1;
669
- }
688
+ }, function($ctx1) {$ctx1.fill(self,"with:",{anObject:anObject}, smalltalk.Collection.klass)})}
670
689
  }),
671
690
  smalltalk.Collection.klass);
672
691
 
@@ -676,14 +695,14 @@ smalltalk.method({
676
695
  selector: "with:with:",
677
696
  fn: function (anObject,anotherObject){
678
697
  var self=this;
679
- var $2,$3,$1;
680
- $2=smalltalk.send(self,"_new",[]);
681
- smalltalk.send($2,"_add_",[anObject]);
682
- smalltalk.send($2,"_add_",[anotherObject]);
683
- $3=smalltalk.send($2,"_yourself",[]);
698
+ return smalltalk.withContext(function($ctx1) {
699
+ $2=_st(self)._new();
700
+ _st($2)._add_(anObject);
701
+ _st($2)._add_(anotherObject);
702
+ $3=_st($2)._yourself();
684
703
  $1=$3;
685
704
  return $1;
686
- }
705
+ }, function($ctx1) {$ctx1.fill(self,"with:with:",{anObject:anObject,anotherObject:anotherObject}, smalltalk.Collection.klass)})}
687
706
  }),
688
707
  smalltalk.Collection.klass);
689
708
 
@@ -693,15 +712,15 @@ smalltalk.method({
693
712
  selector: "with:with:with:",
694
713
  fn: function (firstObject,secondObject,thirdObject){
695
714
  var self=this;
696
- var $2,$3,$1;
697
- $2=smalltalk.send(self,"_new",[]);
698
- smalltalk.send($2,"_add_",[firstObject]);
699
- smalltalk.send($2,"_add_",[secondObject]);
700
- smalltalk.send($2,"_add_",[thirdObject]);
701
- $3=smalltalk.send($2,"_yourself",[]);
715
+ return smalltalk.withContext(function($ctx1) {
716
+ $2=_st(self)._new();
717
+ _st($2)._add_(firstObject);
718
+ _st($2)._add_(secondObject);
719
+ _st($2)._add_(thirdObject);
720
+ $3=_st($2)._yourself();
702
721
  $1=$3;
703
722
  return $1;
704
- }
723
+ }, function($ctx1) {$ctx1.fill(self,"with:with:with:",{firstObject:firstObject,secondObject:secondObject,thirdObject:thirdObject}, smalltalk.Collection.klass)})}
705
724
  }),
706
725
  smalltalk.Collection.klass);
707
726
 
@@ -711,13 +730,13 @@ smalltalk.method({
711
730
  selector: "withAll:",
712
731
  fn: function (aCollection){
713
732
  var self=this;
714
- var $2,$3,$1;
715
- $2=smalltalk.send(self,"_new",[]);
716
- smalltalk.send($2,"_addAll_",[aCollection]);
717
- $3=smalltalk.send($2,"_yourself",[]);
733
+ return smalltalk.withContext(function($ctx1) {
734
+ $2=_st(self)._new();
735
+ _st($2)._addAll_(aCollection);
736
+ $3=_st($2)._yourself();
718
737
  $1=$3;
719
738
  return $1;
720
- }
739
+ }, function($ctx1) {$ctx1.fill(self,"withAll:",{aCollection:aCollection}, smalltalk.Collection.klass)})}
721
740
  }),
722
741
  smalltalk.Collection.klass);
723
742
 
@@ -729,8 +748,8 @@ smalltalk.method({
729
748
  selector: ",",
730
749
  fn: function (aCollection){
731
750
  var self=this;
732
- smalltalk.send(self,"_shouldNotImplement",[]);
733
- return self}
751
+ return smalltalk.withContext(function($ctx1) {
752
+ return self}, function($ctx1) {$ctx1.fill(self,",",{aCollection:aCollection}, smalltalk.HashedCollection)})}
734
753
  }),
735
754
  smalltalk.HashedCollection);
736
755
 
@@ -740,18 +759,18 @@ smalltalk.method({
740
759
  selector: "=",
741
760
  fn: function (aHashedCollection){
742
761
  var self=this;
743
- var $1,$2,$3;
744
- $1=smalltalk.send(smalltalk.send(self,"_class",[]),"__eq",[smalltalk.send(aHashedCollection,"_class",[])]);
762
+ return smalltalk.withContext(function($ctx1) {
763
+ $1=_st(_st(self)._class()).__eq(_st(aHashedCollection)._class());
745
764
  if(! smalltalk.assert($1)){
746
765
  return false;
747
766
  };
748
- $2=smalltalk.send(smalltalk.send(self,"_size",[]),"__eq",[smalltalk.send(aHashedCollection,"_size",[])]);
767
+ $2=_st(_st(self)._size()).__eq(_st(aHashedCollection)._size());
749
768
  if(! smalltalk.assert($2)){
750
769
  return false;
751
770
  };
752
- $3=smalltalk.send(smalltalk.send(self,"_associations",[]),"__eq",[smalltalk.send(aHashedCollection,"_associations",[])]);
771
+ $3=_st(_st(self)._associations()).__eq(_st(aHashedCollection)._associations());
753
772
  return $3;
754
- }
773
+ }, function($ctx1) {$ctx1.fill(self,"=",{aHashedCollection:aHashedCollection}, smalltalk.HashedCollection)})}
755
774
  }),
756
775
  smalltalk.HashedCollection);
757
776
 
@@ -761,8 +780,8 @@ smalltalk.method({
761
780
  selector: "add:",
762
781
  fn: function (anAssociation){
763
782
  var self=this;
764
- smalltalk.send(self,"_at_put_",[smalltalk.send(anAssociation,"_key",[]),smalltalk.send(anAssociation,"_value",[])]);
765
- return self}
783
+ return smalltalk.withContext(function($ctx1) {
784
+ return self}, function($ctx1) {$ctx1.fill(self,"add:",{anAssociation:anAssociation}, smalltalk.HashedCollection)})}
766
785
  }),
767
786
  smalltalk.HashedCollection);
768
787
 
@@ -772,9 +791,11 @@ smalltalk.method({
772
791
  selector: "addAll:",
773
792
  fn: function (aHashedCollection){
774
793
  var self=this;
775
- smalltalk.send(self,"_addAll_",[smalltalk.send(aHashedCollection,"_associations",[])],smalltalk.Collection);
776
- return aHashedCollection;
777
- }
794
+ return smalltalk.withContext(function($ctx1) {
795
+ smalltalk.Collection.fn.prototype._addAll_.apply(_st(self), [_st(aHashedCollection)._associations()]);
796
+ $1=aHashedCollection;
797
+ return $1;
798
+ }, function($ctx1) {$ctx1.fill(self,"addAll:",{aHashedCollection:aHashedCollection}, smalltalk.HashedCollection)})}
778
799
  }),
779
800
  smalltalk.HashedCollection);
780
801
 
@@ -784,10 +805,10 @@ smalltalk.method({
784
805
  selector: "asDictionary",
785
806
  fn: function (){
786
807
  var self=this;
787
- var $1;
788
- $1=smalltalk.send((smalltalk.Dictionary || Dictionary),"_fromPairs_",[smalltalk.send(self,"_associations",[])]);
808
+ return smalltalk.withContext(function($ctx1) {
809
+ $1=_st((smalltalk.Dictionary || Dictionary))._fromPairs_(_st(self)._associations());
789
810
  return $1;
790
- }
811
+ }, function($ctx1) {$ctx1.fill(self,"asDictionary",{}, smalltalk.HashedCollection)})}
791
812
  }),
792
813
  smalltalk.HashedCollection);
793
814
 
@@ -798,12 +819,14 @@ selector: "asJSON",
798
819
  fn: function (){
799
820
  var self=this;
800
821
  var c;
801
- c=smalltalk.send(smalltalk.send(self,"_class",[]),"_new",[]);
802
- smalltalk.send(self,"_keysAndValuesDo_",[(function(key,value){
803
- return smalltalk.send(c,"_at_put_",[key,smalltalk.send(value,"_asJSON",[])]);
804
- })]);
805
- return c;
806
- }
822
+ return smalltalk.withContext(function($ctx1) {
823
+ c=_st(_st(self)._class())._new();
824
+ _st(self)._keysAndValuesDo_((function(key,value){
825
+ return smalltalk.withContext(function($ctx2) {
826
+ }, function($ctx2) {$ctx2.fillBlock({key:key,value:value},$ctx1)})}));
827
+ $1=c;
828
+ return $1;
829
+ }, function($ctx1) {$ctx1.fill(self,"asJSON",{c:c}, smalltalk.HashedCollection)})}
807
830
  }),
808
831
  smalltalk.HashedCollection);
809
832
 
@@ -814,12 +837,14 @@ selector: "associations",
814
837
  fn: function (){
815
838
  var self=this;
816
839
  var associations;
840
+ return smalltalk.withContext(function($ctx1) {
817
841
  associations=[];
818
- smalltalk.send(smalltalk.send(self,"_keys",[]),"_do_",[(function(each){
819
- return smalltalk.send(associations,"_add_",[smalltalk.send((smalltalk.Association || Association),"_key_value_",[each,smalltalk.send(self,"_at_",[each])])]);
820
- })]);
821
- return associations;
822
- }
842
+ _st(_st(self)._keys())._do_((function(each){
843
+ return smalltalk.withContext(function($ctx2) {
844
+ }, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
845
+ $1=associations;
846
+ return $1;
847
+ }, function($ctx1) {$ctx1.fill(self,"associations",{associations:associations}, smalltalk.HashedCollection)})}
823
848
  }),
824
849
  smalltalk.HashedCollection);
825
850
 
@@ -829,8 +854,8 @@ smalltalk.method({
829
854
  selector: "associationsDo:",
830
855
  fn: function (aBlock){
831
856
  var self=this;
832
- smalltalk.send(smalltalk.send(self,"_associations",[]),"_do_",[aBlock]);
833
- return self}
857
+ return smalltalk.withContext(function($ctx1) {
858
+ return self}, function($ctx1) {$ctx1.fill(self,"associationsDo:",{aBlock:aBlock}, smalltalk.HashedCollection)})}
834
859
  }),
835
860
  smalltalk.HashedCollection);
836
861
 
@@ -840,12 +865,12 @@ smalltalk.method({
840
865
  selector: "at:",
841
866
  fn: function (aKey){
842
867
  var self=this;
843
- var $1;
844
- $1=smalltalk.send(self,"_at_ifAbsent_",[aKey,(function(){
845
- return smalltalk.send(self,"_errorNotFound",[]);
846
- })]);
868
+ return smalltalk.withContext(function($ctx1) {
869
+ $1=_st(self)._at_ifAbsent_(aKey,(function(){
870
+ return smalltalk.withContext(function($ctx2) {
871
+ }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
847
872
  return $1;
848
- }
873
+ }, function($ctx1) {$ctx1.fill(self,"at:",{aKey:aKey}, smalltalk.HashedCollection)})}
849
874
  }),
850
875
  smalltalk.HashedCollection);
851
876
 
@@ -855,13 +880,13 @@ smalltalk.method({
855
880
  selector: "at:ifAbsent:",
856
881
  fn: function (aKey,aBlock){
857
882
  var self=this;
858
- var $2,$1;
859
- $2=smalltalk.send(self,"_includesKey_",[aKey]);
860
- $1=smalltalk.send($2,"_ifTrue_ifFalse_",[(function(){
861
- return smalltalk.send(self,"_basicAt_",[aKey]);
862
- }),aBlock]);
883
+ return smalltalk.withContext(function($ctx1) {
884
+ $2=_st(self)._includesKey_(aKey);
885
+ $1=_st($2)._ifTrue_ifFalse_((function(){
886
+ return smalltalk.withContext(function($ctx2) {
887
+ }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),aBlock);
863
888
  return $1;
864
- }
889
+ }, function($ctx1) {$ctx1.fill(self,"at:ifAbsent:",{aKey:aKey,aBlock:aBlock}, smalltalk.HashedCollection)})}
865
890
  }),
866
891
  smalltalk.HashedCollection);
867
892
 
@@ -871,12 +896,12 @@ smalltalk.method({
871
896
  selector: "at:ifAbsentPut:",
872
897
  fn: function (aKey,aBlock){
873
898
  var self=this;
874
- var $1;
875
- $1=smalltalk.send(self,"_at_ifAbsent_",[aKey,(function(){
876
- return smalltalk.send(self,"_at_put_",[aKey,smalltalk.send(aBlock,"_value",[])]);
877
- })]);
899
+ return smalltalk.withContext(function($ctx1) {
900
+ $1=_st(self)._at_ifAbsent_(aKey,(function(){
901
+ return smalltalk.withContext(function($ctx2) {
902
+ }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
878
903
  return $1;
879
- }
904
+ }, function($ctx1) {$ctx1.fill(self,"at:ifAbsentPut:",{aKey:aKey,aBlock:aBlock}, smalltalk.HashedCollection)})}
880
905
  }),
881
906
  smalltalk.HashedCollection);
882
907
 
@@ -886,15 +911,15 @@ smalltalk.method({
886
911
  selector: "at:ifPresent:",
887
912
  fn: function (aKey,aBlock){
888
913
  var self=this;
889
- var $2,$1;
890
- $2=smalltalk.send(self,"_includesKey_",[aKey]);
914
+ return smalltalk.withContext(function($ctx1) {
915
+ $2=_st(self)._includesKey_(aKey);
891
916
  if(smalltalk.assert($2)){
892
- $1=smalltalk.send(aBlock,"_value_",[smalltalk.send(self,"_at_",[aKey])]);
917
+ $1=_st(aBlock)._value_(_st(self)._at_(aKey));
893
918
  } else {
894
919
  $1=nil;
895
920
  };
896
921
  return $1;
897
- }
922
+ }, function($ctx1) {$ctx1.fill(self,"at:ifPresent:",{aKey:aKey,aBlock:aBlock}, smalltalk.HashedCollection)})}
898
923
  }),
899
924
  smalltalk.HashedCollection);
900
925
 
@@ -904,13 +929,13 @@ smalltalk.method({
904
929
  selector: "at:ifPresent:ifAbsent:",
905
930
  fn: function (aKey,aBlock,anotherBlock){
906
931
  var self=this;
907
- var $2,$1;
908
- $2=smalltalk.send(self,"_includesKey_",[aKey]);
909
- $1=smalltalk.send($2,"_ifTrue_ifFalse_",[(function(){
910
- return smalltalk.send(aBlock,"_value_",[smalltalk.send(self,"_at_",[aKey])]);
911
- }),anotherBlock]);
932
+ return smalltalk.withContext(function($ctx1) {
933
+ $2=_st(self)._includesKey_(aKey);
934
+ $1=_st($2)._ifTrue_ifFalse_((function(){
935
+ return smalltalk.withContext(function($ctx2) {
936
+ }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),anotherBlock);
912
937
  return $1;
913
- }
938
+ }, function($ctx1) {$ctx1.fill(self,"at:ifPresent:ifAbsent:",{aKey:aKey,aBlock:aBlock,anotherBlock:anotherBlock}, smalltalk.HashedCollection)})}
914
939
  }),
915
940
  smalltalk.HashedCollection);
916
941
 
@@ -920,10 +945,10 @@ smalltalk.method({
920
945
  selector: "at:put:",
921
946
  fn: function (aKey,aValue){
922
947
  var self=this;
923
- var $1;
924
- $1=smalltalk.send(self,"_basicAt_put_",[aKey,aValue]);
948
+ return smalltalk.withContext(function($ctx1) {
949
+ $1=_st(self)._basicAt_put_(aKey,aValue);
925
950
  return $1;
926
- }
951
+ }, function($ctx1) {$ctx1.fill(self,"at:put:",{aKey:aKey,aValue:aValue}, smalltalk.HashedCollection)})}
927
952
  }),
928
953
  smalltalk.HashedCollection);
929
954
 
@@ -934,12 +959,14 @@ selector: "collect:",
934
959
  fn: function (aBlock){
935
960
  var self=this;
936
961
  var newDict;
937
- newDict=smalltalk.send(smalltalk.send(self,"_class",[]),"_new",[]);
938
- smalltalk.send(self,"_keysAndValuesDo_",[(function(key,value){
939
- return smalltalk.send(newDict,"_at_put_",[key,smalltalk.send(aBlock,"_value_",[value])]);
940
- })]);
941
- return newDict;
942
- }
962
+ return smalltalk.withContext(function($ctx1) {
963
+ newDict=_st(_st(self)._class())._new();
964
+ _st(self)._keysAndValuesDo_((function(key,value){
965
+ return smalltalk.withContext(function($ctx2) {
966
+ }, function($ctx2) {$ctx2.fillBlock({key:key,value:value},$ctx1)})}));
967
+ $1=newDict;
968
+ return $1;
969
+ }, function($ctx1) {$ctx1.fill(self,"collect:",{aBlock:aBlock,newDict:newDict}, smalltalk.HashedCollection)})}
943
970
  }),
944
971
  smalltalk.HashedCollection);
945
972
 
@@ -949,8 +976,8 @@ smalltalk.method({
949
976
  selector: "copyFrom:to:",
950
977
  fn: function (anIndex,anotherIndex){
951
978
  var self=this;
952
- smalltalk.send(self,"_shouldNotImplement",[]);
953
- return self}
979
+ return smalltalk.withContext(function($ctx1) {
980
+ return self}, function($ctx1) {$ctx1.fill(self,"copyFrom:to:",{anIndex:anIndex,anotherIndex:anotherIndex}, smalltalk.HashedCollection)})}
954
981
  }),
955
982
  smalltalk.HashedCollection);
956
983
 
@@ -961,12 +988,14 @@ selector: "deepCopy",
961
988
  fn: function (){
962
989
  var self=this;
963
990
  var copy;
964
- copy=smalltalk.send(smalltalk.send(self,"_class",[]),"_new",[]);
965
- smalltalk.send(self,"_associationsDo_",[(function(each){
966
- return smalltalk.send(copy,"_at_put_",[smalltalk.send(each,"_key",[]),smalltalk.send(smalltalk.send(each,"_value",[]),"_deepCopy",[])]);
967
- })]);
968
- return copy;
969
- }
991
+ return smalltalk.withContext(function($ctx1) {
992
+ copy=_st(_st(self)._class())._new();
993
+ _st(self)._associationsDo_((function(each){
994
+ return smalltalk.withContext(function($ctx2) {
995
+ }, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
996
+ $1=copy;
997
+ return $1;
998
+ }, function($ctx1) {$ctx1.fill(self,"deepCopy",{copy:copy}, smalltalk.HashedCollection)})}
970
999
  }),
971
1000
  smalltalk.HashedCollection);
972
1001
 
@@ -976,10 +1005,10 @@ smalltalk.method({
976
1005
  selector: "detect:ifNone:",
977
1006
  fn: function (aBlock,anotherBlock){
978
1007
  var self=this;
979
- var $1;
980
- $1=smalltalk.send(smalltalk.send(self,"_values",[]),"_detect_ifNone_",[aBlock,anotherBlock]);
1008
+ return smalltalk.withContext(function($ctx1) {
1009
+ $1=_st(_st(self)._values())._detect_ifNone_(aBlock,anotherBlock);
981
1010
  return $1;
982
- }
1011
+ }, function($ctx1) {$ctx1.fill(self,"detect:ifNone:",{aBlock:aBlock,anotherBlock:anotherBlock}, smalltalk.HashedCollection)})}
983
1012
  }),
984
1013
  smalltalk.HashedCollection);
985
1014
 
@@ -989,8 +1018,8 @@ smalltalk.method({
989
1018
  selector: "do:",
990
1019
  fn: function (aBlock){
991
1020
  var self=this;
992
- smalltalk.send(smalltalk.send(self,"_values",[]),"_do_",[aBlock]);
993
- return self}
1021
+ return smalltalk.withContext(function($ctx1) {
1022
+ return self}, function($ctx1) {$ctx1.fill(self,"do:",{aBlock:aBlock}, smalltalk.HashedCollection)})}
994
1023
  }),
995
1024
  smalltalk.HashedCollection);
996
1025
 
@@ -1000,10 +1029,10 @@ smalltalk.method({
1000
1029
  selector: "includes:",
1001
1030
  fn: function (anObject){
1002
1031
  var self=this;
1003
- var $1;
1004
- $1=smalltalk.send(smalltalk.send(self,"_values",[]),"_includes_",[anObject]);
1032
+ return smalltalk.withContext(function($ctx1) {
1033
+ $1=_st(_st(self)._values())._includes_(anObject);
1005
1034
  return $1;
1006
- }
1035
+ }, function($ctx1) {$ctx1.fill(self,"includes:",{anObject:anObject}, smalltalk.HashedCollection)})}
1007
1036
  }),
1008
1037
  smalltalk.HashedCollection);
1009
1038
 
@@ -1013,9 +1042,8 @@ smalltalk.method({
1013
1042
  selector: "includesKey:",
1014
1043
  fn: function (aKey){
1015
1044
  var self=this;
1016
- return self.hasOwnProperty(aKey);
1017
- ;
1018
- return self}
1045
+ return smalltalk.withContext(function($ctx1) {
1046
+ return self}, function($ctx1) {$ctx1.fill(self,"includesKey:",{aKey:aKey}, smalltalk.HashedCollection)})}
1019
1047
  }),
1020
1048
  smalltalk.HashedCollection);
1021
1049
 
@@ -1025,7 +1053,7 @@ smalltalk.method({
1025
1053
  selector: "keys",
1026
1054
  fn: function (){
1027
1055
  var self=this;
1028
-
1056
+ return smalltalk.withContext(function($ctx1) {
1029
1057
  if ('function'===typeof Object.keys) return Object.keys(self);
1030
1058
  var keys = [];
1031
1059
  for(var i in self) {
@@ -1035,8 +1063,7 @@ var self=this;
1035
1063
  };
1036
1064
  return keys;
1037
1065
  ;
1038
- ;
1039
- return self}
1066
+ return self}, function($ctx1) {$ctx1.fill(self,"keys",{}, smalltalk.HashedCollection)})}
1040
1067
  }),
1041
1068
  smalltalk.HashedCollection);
1042
1069
 
@@ -1046,10 +1073,10 @@ smalltalk.method({
1046
1073
  selector: "keysAndValuesDo:",
1047
1074
  fn: function (aBlock){
1048
1075
  var self=this;
1049
- smalltalk.send(self,"_associationsDo_",[(function(each){
1050
- return smalltalk.send(aBlock,"_value_value_",[smalltalk.send(each,"_key",[]),smalltalk.send(each,"_value",[])]);
1051
- })]);
1052
- return self}
1076
+ return smalltalk.withContext(function($ctx1) {
1077
+ return smalltalk.withContext(function($ctx2) {
1078
+ }, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
1079
+ return self}, function($ctx1) {$ctx1.fill(self,"keysAndValuesDo:",{aBlock:aBlock}, smalltalk.HashedCollection)})}
1053
1080
  }),
1054
1081
  smalltalk.HashedCollection);
1055
1082
 
@@ -1059,18 +1086,18 @@ smalltalk.method({
1059
1086
  selector: "printString",
1060
1087
  fn: function (){
1061
1088
  var self=this;
1062
- var $1;
1063
- $1=smalltalk.send((smalltalk.String || String),"_streamContents_",[(function(aStream){
1064
- smalltalk.send(aStream,"_nextPutAll_",[smalltalk.send(smalltalk.send("a ","__comma",[smalltalk.send(smalltalk.send(self,"_class",[]),"_name",[])]),"__comma",["("])]);
1065
- smalltalk.send(smalltalk.send(self,"_associations",[]),"_do_separatedBy_",[(function(each){
1066
- return smalltalk.send(each,"_storeOn_",[aStream]);
1067
- }),(function(){
1068
- return smalltalk.send(aStream,"_nextPutAll_",[" , "]);
1069
- })]);
1070
- return smalltalk.send(aStream,"_nextPutAll_",[")"]);
1071
- })]);
1089
+ return smalltalk.withContext(function($ctx1) {
1090
+ $1=_st((smalltalk.String || String))._streamContents_((function(aStream){
1091
+ return smalltalk.withContext(function($ctx2) {
1092
+ _st(_st(self)._associations())._do_separatedBy_((function(each){
1093
+ return smalltalk.withContext(function($ctx3) {
1094
+ }, function($ctx3) {$ctx3.fillBlock({each:each},$ctx1)})}),(function(){
1095
+ return smalltalk.withContext(function($ctx3) {
1096
+ }, function($ctx3) {$ctx3.fillBlock({},$ctx1)})}));
1097
+ return _st(aStream)._nextPutAll_(")");
1098
+ }, function($ctx2) {$ctx2.fillBlock({aStream:aStream},$ctx1)})}));
1072
1099
  return $1;
1073
- }
1100
+ }, function($ctx1) {$ctx1.fill(self,"printString",{}, smalltalk.HashedCollection)})}
1074
1101
  }),
1075
1102
  smalltalk.HashedCollection);
1076
1103
 
@@ -1080,10 +1107,10 @@ smalltalk.method({
1080
1107
  selector: "remove:ifAbsent:",
1081
1108
  fn: function (aKey,aBlock){
1082
1109
  var self=this;
1083
- var $1;
1084
- $1=smalltalk.send(self,"_removeKey_ifAbsent_",[aKey,aBlock]);
1110
+ return smalltalk.withContext(function($ctx1) {
1111
+ $1=_st(self)._removeKey_ifAbsent_(aKey,aBlock);
1085
1112
  return $1;
1086
- }
1113
+ }, function($ctx1) {$ctx1.fill(self,"remove:ifAbsent:",{aKey:aKey,aBlock:aBlock}, smalltalk.HashedCollection)})}
1087
1114
  }),
1088
1115
  smalltalk.HashedCollection);
1089
1116
 
@@ -1093,10 +1120,10 @@ smalltalk.method({
1093
1120
  selector: "removeKey:",
1094
1121
  fn: function (aKey){
1095
1122
  var self=this;
1096
- var $1;
1097
- $1=smalltalk.send(self,"_remove_",[aKey]);
1123
+ return smalltalk.withContext(function($ctx1) {
1124
+ $1=_st(self)._remove_(aKey);
1098
1125
  return $1;
1099
- }
1126
+ }, function($ctx1) {$ctx1.fill(self,"removeKey:",{aKey:aKey}, smalltalk.HashedCollection)})}
1100
1127
  }),
1101
1128
  smalltalk.HashedCollection);
1102
1129
 
@@ -1106,15 +1133,15 @@ smalltalk.method({
1106
1133
  selector: "removeKey:ifAbsent:",
1107
1134
  fn: function (aKey,aBlock){
1108
1135
  var self=this;
1109
- var $2,$1;
1110
- $2=smalltalk.send(self,"_includesKey_",[aKey]);
1136
+ return smalltalk.withContext(function($ctx1) {
1137
+ $2=_st(self)._includesKey_(aKey);
1111
1138
  if(smalltalk.assert($2)){
1112
- $1=smalltalk.send(self,"_basicDelete_",[aKey]);
1139
+ $1=_st(self)._basicDelete_(aKey);
1113
1140
  } else {
1114
- $1=smalltalk.send(aBlock,"_value",[]);
1141
+ $1=_st(aBlock)._value();
1115
1142
  };
1116
1143
  return $1;
1117
- }
1144
+ }, function($ctx1) {$ctx1.fill(self,"removeKey:ifAbsent:",{aKey:aKey,aBlock:aBlock}, smalltalk.HashedCollection)})}
1118
1145
  }),
1119
1146
  smalltalk.HashedCollection);
1120
1147
 
@@ -1124,17 +1151,20 @@ smalltalk.method({
1124
1151
  selector: "select:",
1125
1152
  fn: function (aBlock){
1126
1153
  var self=this;
1127
- var $1;
1128
1154
  var newDict;
1129
- newDict=smalltalk.send(smalltalk.send(self,"_class",[]),"_new",[]);
1130
- smalltalk.send(self,"_keysAndValuesDo_",[(function(key,value){
1131
- $1=smalltalk.send(aBlock,"_value_",[value]);
1132
- if(smalltalk.assert($1)){
1133
- return smalltalk.send(newDict,"_at_put_",[key,value]);
1155
+ return smalltalk.withContext(function($ctx1) {
1156
+ newDict=_st(_st(self)._class())._new();
1157
+ $1=self;
1158
+ $2=(function(key,value){
1159
+ return smalltalk.withContext(function($ctx2) {
1160
+ if(smalltalk.assert($3)){
1161
+ return _st(newDict)._at_put_(key,value);
1134
1162
  };
1135
- })]);
1136
- return newDict;
1137
- }
1163
+ }, function($ctx2) {$ctx2.fillBlock({key:key,value:value},$ctx1)})});
1164
+ _st($1)._keysAndValuesDo_($2);
1165
+ $4=newDict;
1166
+ return $4;
1167
+ }, function($ctx1) {$ctx1.fill(self,"select:",{aBlock:aBlock,newDict:newDict}, smalltalk.HashedCollection)})}
1138
1168
  }),
1139
1169
  smalltalk.HashedCollection);
1140
1170
 
@@ -1145,12 +1175,14 @@ selector: "shallowCopy",
1145
1175
  fn: function (){
1146
1176
  var self=this;
1147
1177
  var copy;
1148
- copy=smalltalk.send(smalltalk.send(self,"_class",[]),"_new",[]);
1149
- smalltalk.send(self,"_associationsDo_",[(function(each){
1150
- return smalltalk.send(copy,"_at_put_",[smalltalk.send(each,"_key",[]),smalltalk.send(each,"_value",[])]);
1151
- })]);
1152
- return copy;
1153
- }
1178
+ return smalltalk.withContext(function($ctx1) {
1179
+ copy=_st(_st(self)._class())._new();
1180
+ _st(self)._associationsDo_((function(each){
1181
+ return smalltalk.withContext(function($ctx2) {
1182
+ }, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
1183
+ $1=copy;
1184
+ return $1;
1185
+ }, function($ctx1) {$ctx1.fill(self,"shallowCopy",{copy:copy}, smalltalk.HashedCollection)})}
1154
1186
  }),
1155
1187
  smalltalk.HashedCollection);
1156
1188
 
@@ -1160,10 +1192,10 @@ smalltalk.method({
1160
1192
  selector: "size",
1161
1193
  fn: function (){
1162
1194
  var self=this;
1163
- var $1;
1164
- $1=smalltalk.send(smalltalk.send(self,"_keys",[]),"_size",[]);
1195
+ return smalltalk.withContext(function($ctx1) {
1196
+ $1=_st(_st(self)._keys())._size();
1165
1197
  return $1;
1166
- }
1198
+ }, function($ctx1) {$ctx1.fill(self,"size",{}, smalltalk.HashedCollection)})}
1167
1199
  }),
1168
1200
  smalltalk.HashedCollection);
1169
1201
 
@@ -1173,14 +1205,14 @@ smalltalk.method({
1173
1205
  selector: "storeOn:",
1174
1206
  fn: function (aStream){
1175
1207
  var self=this;
1176
- smalltalk.send(aStream,"_nextPutAll_",["#{"]);
1177
- smalltalk.send(smalltalk.send(self,"_associations",[]),"_do_separatedBy_",[(function(each){
1178
- return smalltalk.send(each,"_storeOn_",[aStream]);
1179
- }),(function(){
1180
- return smalltalk.send(aStream,"_nextPutAll_",[". "]);
1181
- })]);
1182
- smalltalk.send(aStream,"_nextPutAll_",["}"]);
1183
- return self}
1208
+ return smalltalk.withContext(function($ctx1) {
1209
+ _st(_st(self)._associations())._do_separatedBy_((function(each){
1210
+ return smalltalk.withContext(function($ctx2) {
1211
+ }, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}),(function(){
1212
+ return smalltalk.withContext(function($ctx2) {
1213
+ }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
1214
+ _st(aStream)._nextPutAll_("}");
1215
+ return self}, function($ctx1) {$ctx1.fill(self,"storeOn:",{aStream:aStream}, smalltalk.HashedCollection)})}
1184
1216
  }),
1185
1217
  smalltalk.HashedCollection);
1186
1218
 
@@ -1190,12 +1222,12 @@ smalltalk.method({
1190
1222
  selector: "values",
1191
1223
  fn: function (){
1192
1224
  var self=this;
1193
- var $1;
1194
- $1=smalltalk.send(smalltalk.send(self,"_keys",[]),"_collect_",[(function(each){
1195
- return smalltalk.send(self,"_at_",[each]);
1196
- })]);
1225
+ return smalltalk.withContext(function($ctx1) {
1226
+ $1=_st(_st(self)._keys())._collect_((function(each){
1227
+ return smalltalk.withContext(function($ctx2) {
1228
+ }, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
1197
1229
  return $1;
1198
- }
1230
+ }, function($ctx1) {$ctx1.fill(self,"values",{}, smalltalk.HashedCollection)})}
1199
1231
  }),
1200
1232
  smalltalk.HashedCollection);
1201
1233
 
@@ -1207,12 +1239,14 @@ selector: "fromPairs:",
1207
1239
  fn: function (aCollection){
1208
1240
  var self=this;
1209
1241
  var dict;
1210
- dict=smalltalk.send(self,"_new",[]);
1211
- smalltalk.send(aCollection,"_do_",[(function(each){
1212
- return smalltalk.send(dict,"_add_",[each]);
1213
- })]);
1214
- return dict;
1215
- }
1242
+ return smalltalk.withContext(function($ctx1) {
1243
+ dict=_st(self)._new();
1244
+ _st(aCollection)._do_((function(each){
1245
+ return smalltalk.withContext(function($ctx2) {
1246
+ }, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
1247
+ $1=dict;
1248
+ return $1;
1249
+ }, function($ctx1) {$ctx1.fill(self,"fromPairs:",{aCollection:aCollection,dict:dict}, smalltalk.HashedCollection.klass)})}
1216
1250
  }),
1217
1251
  smalltalk.HashedCollection.klass);
1218
1252
 
@@ -1224,10 +1258,10 @@ smalltalk.method({
1224
1258
  selector: "asHashedCollection",
1225
1259
  fn: function (){
1226
1260
  var self=this;
1227
- var $1;
1228
- $1=smalltalk.send((smalltalk.HashedCollection || HashedCollection),"_fromPairs_",[smalltalk.send(self,"_associations",[])]);
1261
+ return smalltalk.withContext(function($ctx1) {
1262
+ $1=_st((smalltalk.HashedCollection || HashedCollection))._fromPairs_(_st(self)._associations());
1229
1263
  return $1;
1230
- }
1264
+ }, function($ctx1) {$ctx1.fill(self,"asHashedCollection",{}, smalltalk.Dictionary)})}
1231
1265
  }),
1232
1266
  smalltalk.Dictionary);
1233
1267
 
@@ -1237,10 +1271,10 @@ smalltalk.method({
1237
1271
  selector: "asJSON",
1238
1272
  fn: function (){
1239
1273
  var self=this;
1240
- var $1;
1241
- $1=smalltalk.send(smalltalk.send(self,"_asHashedCollection",[]),"_asJSON",[]);
1274
+ return smalltalk.withContext(function($ctx1) {
1275
+ $1=_st(_st(self)._asHashedCollection())._asJSON();
1242
1276
  return $1;
1243
- }
1277
+ }, function($ctx1) {$ctx1.fill(self,"asJSON",{}, smalltalk.Dictionary)})}
1244
1278
  }),
1245
1279
  smalltalk.Dictionary);
1246
1280
 
@@ -1250,7 +1284,7 @@ smalltalk.method({
1250
1284
  selector: "at:ifAbsent:",
1251
1285
  fn: function (aKey,aBlock){
1252
1286
  var self=this;
1253
-
1287
+ return smalltalk.withContext(function($ctx1) {
1254
1288
  var index;
1255
1289
  for(var i=0;i<self['@keys'].length;i++){
1256
1290
  if(self['@keys'][i].__eq(aKey)) {index = i;}
@@ -1261,8 +1295,7 @@ var self=this;
1261
1295
  return self['@values'][index];
1262
1296
  }
1263
1297
  ;
1264
- ;
1265
- return self}
1298
+ return self}, function($ctx1) {$ctx1.fill(self,"at:ifAbsent:",{aKey:aKey,aBlock:aBlock}, smalltalk.Dictionary)})}
1266
1299
  }),
1267
1300
  smalltalk.Dictionary);
1268
1301
 
@@ -1272,7 +1305,7 @@ smalltalk.method({
1272
1305
  selector: "at:put:",
1273
1306
  fn: function (aKey,aValue){
1274
1307
  var self=this;
1275
-
1308
+ return smalltalk.withContext(function($ctx1) {
1276
1309
  var index = self['@keys'].indexOf(aKey);
1277
1310
  if(index === -1) {
1278
1311
  self['@values'].push(aValue);
@@ -1283,8 +1316,7 @@ var self=this;
1283
1316
 
1284
1317
  return aValue;
1285
1318
  ;
1286
- ;
1287
- return self}
1319
+ return self}, function($ctx1) {$ctx1.fill(self,"at:put:",{aKey:aKey,aValue:aValue}, smalltalk.Dictionary)})}
1288
1320
  }),
1289
1321
  smalltalk.Dictionary);
1290
1322
 
@@ -1294,10 +1326,10 @@ smalltalk.method({
1294
1326
  selector: "includesKey:",
1295
1327
  fn: function (aKey){
1296
1328
  var self=this;
1297
- var $1;
1298
- $1=smalltalk.send(self["@keys"],"_includes_",[aKey]);
1329
+ return smalltalk.withContext(function($ctx1) {
1330
+ $1=_st(self["@keys"])._includes_(aKey);
1299
1331
  return $1;
1300
- }
1332
+ }, function($ctx1) {$ctx1.fill(self,"includesKey:",{aKey:aKey}, smalltalk.Dictionary)})}
1301
1333
  }),
1302
1334
  smalltalk.Dictionary);
1303
1335
 
@@ -1307,10 +1339,10 @@ smalltalk.method({
1307
1339
  selector: "initialize",
1308
1340
  fn: function (){
1309
1341
  var self=this;
1310
- smalltalk.send(self,"_initialize",[],smalltalk.HashedCollection);
1342
+ return smalltalk.withContext(function($ctx1) {
1311
1343
  self["@keys"]=[];
1312
1344
  self["@values"]=[];
1313
- return self}
1345
+ return self}, function($ctx1) {$ctx1.fill(self,"initialize",{}, smalltalk.Dictionary)})}
1314
1346
  }),
1315
1347
  smalltalk.Dictionary);
1316
1348
 
@@ -1320,14 +1352,14 @@ smalltalk.method({
1320
1352
  selector: "keyAtValue:",
1321
1353
  fn: function (anObject){
1322
1354
  var self=this;
1323
- var $1;
1324
- $1=smalltalk.send(smalltalk.send(smalltalk.send(self,"_associations",[]),"_detect_ifNone_",[(function(k,v){
1325
- return smalltalk.send(v,"__eq_eq",[anObject]);
1326
- }),(function(){
1327
- return smalltalk.send(self,"_error_",["Not found"]);
1328
- })]),"_key",[]);
1355
+ return smalltalk.withContext(function($ctx1) {
1356
+ $1=_st(_st(_st(self)._associations())._detect_ifNone_((function(k,v){
1357
+ return smalltalk.withContext(function($ctx2) {
1358
+ }, function($ctx2) {$ctx2.fillBlock({k:k,v:v},$ctx1)})}),(function(){
1359
+ return smalltalk.withContext(function($ctx2) {
1360
+ }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})})))._key();
1329
1361
  return $1;
1330
- }
1362
+ }, function($ctx1) {$ctx1.fill(self,"keyAtValue:",{anObject:anObject}, smalltalk.Dictionary)})}
1331
1363
  }),
1332
1364
  smalltalk.Dictionary);
1333
1365
 
@@ -1337,10 +1369,10 @@ smalltalk.method({
1337
1369
  selector: "keys",
1338
1370
  fn: function (){
1339
1371
  var self=this;
1340
- var $1;
1341
- $1=smalltalk.send(self["@keys"],"_copy",[]);
1372
+ return smalltalk.withContext(function($ctx1) {
1373
+ $1=_st(self["@keys"])._copy();
1342
1374
  return $1;
1343
- }
1375
+ }, function($ctx1) {$ctx1.fill(self,"keys",{}, smalltalk.Dictionary)})}
1344
1376
  }),
1345
1377
  smalltalk.Dictionary);
1346
1378
 
@@ -1350,7 +1382,7 @@ smalltalk.method({
1350
1382
  selector: "removeKey:ifAbsent:",
1351
1383
  fn: function (aKey,aBlock){
1352
1384
  var self=this;
1353
-
1385
+ return smalltalk.withContext(function($ctx1) {
1354
1386
  var index = self['@keys'].indexOf(aKey);
1355
1387
  if(index === -1) {
1356
1388
  return aBlock()
@@ -1361,8 +1393,7 @@ var self=this;
1361
1393
  return value[0];
1362
1394
  };
1363
1395
  ;
1364
- ;
1365
- return self}
1396
+ return self}, function($ctx1) {$ctx1.fill(self,"removeKey:ifAbsent:",{aKey:aKey,aBlock:aBlock}, smalltalk.Dictionary)})}
1366
1397
  }),
1367
1398
  smalltalk.Dictionary);
1368
1399
 
@@ -1372,10 +1403,10 @@ smalltalk.method({
1372
1403
  selector: "valueAt:",
1373
1404
  fn: function (anObject){
1374
1405
  var self=this;
1375
- var $1;
1376
- $1=smalltalk.send(self,"_associationsDo_",[(2)]);
1406
+ return smalltalk.withContext(function($ctx1) {
1407
+ $1=_st(self)._associationsDo_((2));
1377
1408
  return $1;
1378
- }
1409
+ }, function($ctx1) {$ctx1.fill(self,"valueAt:",{anObject:anObject}, smalltalk.Dictionary)})}
1379
1410
  }),
1380
1411
  smalltalk.Dictionary);
1381
1412
 
@@ -1385,10 +1416,10 @@ smalltalk.method({
1385
1416
  selector: "values",
1386
1417
  fn: function (){
1387
1418
  var self=this;
1388
- var $1;
1389
- $1=smalltalk.send(self["@values"],"_copy",[]);
1419
+ return smalltalk.withContext(function($ctx1) {
1420
+ $1=_st(self["@values"])._copy();
1390
1421
  return $1;
1391
- }
1422
+ }, function($ctx1) {$ctx1.fill(self,"values",{}, smalltalk.Dictionary)})}
1392
1423
  }),
1393
1424
  smalltalk.Dictionary);
1394
1425
 
@@ -1401,25 +1432,27 @@ smalltalk.method({
1401
1432
  selector: "=",
1402
1433
  fn: function (aCollection){
1403
1434
  var self=this;
1404
- var $1,$2;
1435
+ return smalltalk.withContext(function($ctx1) {
1405
1436
  var $early={};
1406
1437
  try {
1407
- $1=smalltalk.send(smalltalk.send(smalltalk.send(self,"_class",[]),"__eq",[smalltalk.send(aCollection,"_class",[])]),"_and_",[(function(){
1408
- return smalltalk.send(smalltalk.send(self,"_size",[]),"__eq",[smalltalk.send(aCollection,"_size",[])]);
1409
- })]);
1438
+ $1=_st(_st(_st(self)._class()).__eq(_st(aCollection)._class()))._and_((function(){
1439
+ return smalltalk.withContext(function($ctx2) {
1440
+ }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
1410
1441
  if(! smalltalk.assert($1)){
1411
1442
  return false;
1412
1443
  };
1413
- smalltalk.send(self,"_withIndexDo_",[(function(each,i){
1414
- $2=smalltalk.send(smalltalk.send(aCollection,"_at_",[i]),"__eq",[each]);
1415
- if(! smalltalk.assert($2)){
1444
+ $2=self;
1445
+ $3=(function(each,i){
1446
+ return smalltalk.withContext(function($ctx2) {
1447
+ if(! smalltalk.assert($4)){
1416
1448
  throw $early=[false];
1417
1449
  };
1418
- })]);
1450
+ }, function($ctx2) {$ctx2.fillBlock({each:each,i:i},$ctx1)})});
1451
+ _st($2)._withIndexDo_($3);
1419
1452
  return true;
1420
1453
  }
1421
1454
  catch(e) {if(e===$early)return e[0]; throw e}
1422
- }
1455
+ }, function($ctx1) {$ctx1.fill(self,"=",{aCollection:aCollection}, smalltalk.SequenceableCollection)})}
1423
1456
  }),
1424
1457
  smalltalk.SequenceableCollection);
1425
1458
 
@@ -1429,8 +1462,8 @@ smalltalk.method({
1429
1462
  selector: "addLast:",
1430
1463
  fn: function (anObject){
1431
1464
  var self=this;
1432
- smalltalk.send(self,"_add_",[anObject]);
1433
- return self}
1465
+ return smalltalk.withContext(function($ctx1) {
1466
+ return self}, function($ctx1) {$ctx1.fill(self,"addLast:",{anObject:anObject}, smalltalk.SequenceableCollection)})}
1434
1467
  }),
1435
1468
  smalltalk.SequenceableCollection);
1436
1469
 
@@ -1440,10 +1473,10 @@ smalltalk.method({
1440
1473
  selector: "allButFirst",
1441
1474
  fn: function (){
1442
1475
  var self=this;
1443
- var $1;
1444
- $1=smalltalk.send(self,"_copyFrom_to_",[(2),smalltalk.send(self,"_size",[])]);
1476
+ return smalltalk.withContext(function($ctx1) {
1477
+ $1=_st(self)._copyFrom_to_((2),_st(self)._size());
1445
1478
  return $1;
1446
- }
1479
+ }, function($ctx1) {$ctx1.fill(self,"allButFirst",{}, smalltalk.SequenceableCollection)})}
1447
1480
  }),
1448
1481
  smalltalk.SequenceableCollection);
1449
1482
 
@@ -1453,10 +1486,10 @@ smalltalk.method({
1453
1486
  selector: "allButLast",
1454
1487
  fn: function (){
1455
1488
  var self=this;
1456
- var $1;
1457
- $1=smalltalk.send(self,"_copyFrom_to_",[(1),smalltalk.send(smalltalk.send(self,"_size",[]),"__minus",[(1)])]);
1489
+ return smalltalk.withContext(function($ctx1) {
1490
+ $1=_st(self)._copyFrom_to_((1),_st(_st(self)._size()).__minus((1)));
1458
1491
  return $1;
1459
- }
1492
+ }, function($ctx1) {$ctx1.fill(self,"allButLast",{}, smalltalk.SequenceableCollection)})}
1460
1493
  }),
1461
1494
  smalltalk.SequenceableCollection);
1462
1495
 
@@ -1466,12 +1499,12 @@ smalltalk.method({
1466
1499
  selector: "at:",
1467
1500
  fn: function (anIndex){
1468
1501
  var self=this;
1469
- var $1;
1470
- $1=smalltalk.send(self,"_at_ifAbsent_",[anIndex,(function(){
1471
- return smalltalk.send(self,"_errorNotFound",[]);
1472
- })]);
1502
+ return smalltalk.withContext(function($ctx1) {
1503
+ $1=_st(self)._at_ifAbsent_(anIndex,(function(){
1504
+ return smalltalk.withContext(function($ctx2) {
1505
+ }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
1473
1506
  return $1;
1474
- }
1507
+ }, function($ctx1) {$ctx1.fill(self,"at:",{anIndex:anIndex}, smalltalk.SequenceableCollection)})}
1475
1508
  }),
1476
1509
  smalltalk.SequenceableCollection);
1477
1510
 
@@ -1481,8 +1514,8 @@ smalltalk.method({
1481
1514
  selector: "at:ifAbsent:",
1482
1515
  fn: function (anIndex,aBlock){
1483
1516
  var self=this;
1484
- smalltalk.send(self,"_subclassResponsibility",[]);
1485
- return self}
1517
+ return smalltalk.withContext(function($ctx1) {
1518
+ return self}, function($ctx1) {$ctx1.fill(self,"at:ifAbsent:",{anIndex:anIndex,aBlock:aBlock}, smalltalk.SequenceableCollection)})}
1486
1519
  }),
1487
1520
  smalltalk.SequenceableCollection);
1488
1521
 
@@ -1492,8 +1525,8 @@ smalltalk.method({
1492
1525
  selector: "at:put:",
1493
1526
  fn: function (anIndex,anObject){
1494
1527
  var self=this;
1495
- smalltalk.send(self,"_subclassResponsibility",[]);
1496
- return self}
1528
+ return smalltalk.withContext(function($ctx1) {
1529
+ return self}, function($ctx1) {$ctx1.fill(self,"at:put:",{anIndex:anIndex,anObject:anObject}, smalltalk.SequenceableCollection)})}
1497
1530
  }),
1498
1531
  smalltalk.SequenceableCollection);
1499
1532
 
@@ -1503,10 +1536,10 @@ smalltalk.method({
1503
1536
  selector: "atRandom",
1504
1537
  fn: function (){
1505
1538
  var self=this;
1506
- var $1;
1507
- $1=smalltalk.send(self,"_at_",[smalltalk.send(smalltalk.send(self,"_size",[]),"_atRandom",[])]);
1539
+ return smalltalk.withContext(function($ctx1) {
1540
+ $1=_st(self)._at_(_st(_st(self)._size())._atRandom());
1508
1541
  return $1;
1509
- }
1542
+ }, function($ctx1) {$ctx1.fill(self,"atRandom",{}, smalltalk.SequenceableCollection)})}
1510
1543
  }),
1511
1544
  smalltalk.SequenceableCollection);
1512
1545
 
@@ -1516,15 +1549,16 @@ smalltalk.method({
1516
1549
  selector: "copyFrom:to:",
1517
1550
  fn: function (anIndex,anotherIndex){
1518
1551
  var self=this;
1519
- var range;
1520
- var newCollection;
1521
- range=smalltalk.send(anIndex,"_to_",[anotherIndex]);
1522
- newCollection=smalltalk.send(smalltalk.send(self,"_class",[]),"_new_",[smalltalk.send(range,"_size",[])]);
1523
- smalltalk.send(range,"_withIndexDo_",[(function(each,i){
1524
- return smalltalk.send(newCollection,"_at_put_",[i,smalltalk.send(self,"_at_",[each])]);
1525
- })]);
1526
- return newCollection;
1527
- }
1552
+ var range,newCollection;
1553
+ return smalltalk.withContext(function($ctx1) {
1554
+ range=_st(anIndex)._to_(anotherIndex);
1555
+ newCollection=_st(_st(self)._class())._new_(_st(range)._size());
1556
+ _st(range)._withIndexDo_((function(each,i){
1557
+ return smalltalk.withContext(function($ctx2) {
1558
+ }, function($ctx2) {$ctx2.fillBlock({each:each,i:i},$ctx1)})}));
1559
+ $1=newCollection;
1560
+ return $1;
1561
+ }, function($ctx1) {$ctx1.fill(self,"copyFrom:to:",{anIndex:anIndex,anotherIndex:anotherIndex,range:range,newCollection:newCollection}, smalltalk.SequenceableCollection)})}
1528
1562
  }),
1529
1563
  smalltalk.SequenceableCollection);
1530
1564
 
@@ -1535,12 +1569,14 @@ selector: "deepCopy",
1535
1569
  fn: function (){
1536
1570
  var self=this;
1537
1571
  var newCollection;
1538
- newCollection=smalltalk.send(smalltalk.send(self,"_class",[]),"_new_",[smalltalk.send(self,"_size",[])]);
1539
- smalltalk.send(self,"_withIndexDo_",[(function(each,index){
1540
- return smalltalk.send(newCollection,"_at_put_",[index,smalltalk.send(each,"_deepCopy",[])]);
1541
- })]);
1542
- return newCollection;
1543
- }
1572
+ return smalltalk.withContext(function($ctx1) {
1573
+ newCollection=_st(_st(self)._class())._new_(_st(self)._size());
1574
+ _st(self)._withIndexDo_((function(each,index){
1575
+ return smalltalk.withContext(function($ctx2) {
1576
+ }, function($ctx2) {$ctx2.fillBlock({each:each,index:index},$ctx1)})}));
1577
+ $1=newCollection;
1578
+ return $1;
1579
+ }, function($ctx1) {$ctx1.fill(self,"deepCopy",{newCollection:newCollection}, smalltalk.SequenceableCollection)})}
1544
1580
  }),
1545
1581
  smalltalk.SequenceableCollection);
1546
1582
 
@@ -1550,10 +1586,10 @@ smalltalk.method({
1550
1586
  selector: "first",
1551
1587
  fn: function (){
1552
1588
  var self=this;
1553
- var $1;
1554
- $1=smalltalk.send(self,"_at_",[(1)]);
1589
+ return smalltalk.withContext(function($ctx1) {
1590
+ $1=_st(self)._at_((1));
1555
1591
  return $1;
1556
- }
1592
+ }, function($ctx1) {$ctx1.fill(self,"first",{}, smalltalk.SequenceableCollection)})}
1557
1593
  }),
1558
1594
  smalltalk.SequenceableCollection);
1559
1595
 
@@ -1563,10 +1599,10 @@ smalltalk.method({
1563
1599
  selector: "first:",
1564
1600
  fn: function (n){
1565
1601
  var self=this;
1566
- var $1;
1567
- $1=smalltalk.send(self,"_copyFrom_to_",[(1),n]);
1602
+ return smalltalk.withContext(function($ctx1) {
1603
+ $1=_st(self)._copyFrom_to_((1),n);
1568
1604
  return $1;
1569
- }
1605
+ }, function($ctx1) {$ctx1.fill(self,"first:",{n:n}, smalltalk.SequenceableCollection)})}
1570
1606
  }),
1571
1607
  smalltalk.SequenceableCollection);
1572
1608
 
@@ -1576,10 +1612,25 @@ smalltalk.method({
1576
1612
  selector: "fourth",
1577
1613
  fn: function (){
1578
1614
  var self=this;
1579
- var $1;
1580
- $1=smalltalk.send(self,"_at_",[(4)]);
1615
+ return smalltalk.withContext(function($ctx1) {
1616
+ $1=_st(self)._at_((4));
1581
1617
  return $1;
1582
- }
1618
+ }, function($ctx1) {$ctx1.fill(self,"fourth",{}, smalltalk.SequenceableCollection)})}
1619
+ }),
1620
+ smalltalk.SequenceableCollection);
1621
+
1622
+ smalltalk.addMethod(
1623
+ "_includes_",
1624
+ smalltalk.method({
1625
+ selector: "includes:",
1626
+ fn: function (anObject){
1627
+ var self=this;
1628
+ return smalltalk.withContext(function($ctx1) {
1629
+ $1=_st(_st(self)._indexOf_ifAbsent_(anObject,(function(){
1630
+ return smalltalk.withContext(function($ctx2) {
1631
+ }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})})))._notNil();
1632
+ return $1;
1633
+ }, function($ctx1) {$ctx1.fill(self,"includes:",{anObject:anObject}, smalltalk.SequenceableCollection)})}
1583
1634
  }),
1584
1635
  smalltalk.SequenceableCollection);
1585
1636
 
@@ -1589,12 +1640,12 @@ smalltalk.method({
1589
1640
  selector: "indexOf:",
1590
1641
  fn: function (anObject){
1591
1642
  var self=this;
1592
- var $1;
1593
- $1=smalltalk.send(self,"_indexOf_ifAbsent_",[anObject,(function(){
1594
- return smalltalk.send(self,"_errorNotFound",[]);
1595
- })]);
1643
+ return smalltalk.withContext(function($ctx1) {
1644
+ $1=_st(self)._indexOf_ifAbsent_(anObject,(function(){
1645
+ return smalltalk.withContext(function($ctx2) {
1646
+ }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
1596
1647
  return $1;
1597
- }
1648
+ }, function($ctx1) {$ctx1.fill(self,"indexOf:",{anObject:anObject}, smalltalk.SequenceableCollection)})}
1598
1649
  }),
1599
1650
  smalltalk.SequenceableCollection);
1600
1651
 
@@ -1604,14 +1655,13 @@ smalltalk.method({
1604
1655
  selector: "indexOf:ifAbsent:",
1605
1656
  fn: function (anObject,aBlock){
1606
1657
  var self=this;
1607
-
1658
+ return smalltalk.withContext(function($ctx1) {
1608
1659
  for(var i=0;i<self.length;i++) {
1609
- if(smalltalk.send(self[i], '__eq', [anObject])) {return i+1}
1660
+ if(self[i].__eq(anObject)) {return i+1}
1610
1661
  };
1611
1662
  return aBlock();
1612
1663
  ;
1613
- ;
1614
- return self}
1664
+ return self}, function($ctx1) {$ctx1.fill(self,"indexOf:ifAbsent:",{anObject:anObject,aBlock:aBlock}, smalltalk.SequenceableCollection)})}
1615
1665
  }),
1616
1666
  smalltalk.SequenceableCollection);
1617
1667
 
@@ -1621,12 +1671,12 @@ smalltalk.method({
1621
1671
  selector: "indexOf:startingAt:",
1622
1672
  fn: function (anObject,start){
1623
1673
  var self=this;
1624
- var $1;
1625
- $1=smalltalk.send(self,"_indexOf_startingAt_ifAbsent_",[anObject,start,(function(){
1626
- return (0);
1627
- })]);
1674
+ return smalltalk.withContext(function($ctx1) {
1675
+ $1=_st(self)._indexOf_startingAt_ifAbsent_(anObject,start,(function(){
1676
+ return smalltalk.withContext(function($ctx2) {
1677
+ }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
1628
1678
  return $1;
1629
- }
1679
+ }, function($ctx1) {$ctx1.fill(self,"indexOf:startingAt:",{anObject:anObject,start:start}, smalltalk.SequenceableCollection)})}
1630
1680
  }),
1631
1681
  smalltalk.SequenceableCollection);
1632
1682
 
@@ -1636,14 +1686,13 @@ smalltalk.method({
1636
1686
  selector: "indexOf:startingAt:ifAbsent:",
1637
1687
  fn: function (anObject,start,aBlock){
1638
1688
  var self=this;
1639
-
1689
+ return smalltalk.withContext(function($ctx1) {
1640
1690
  for(var i=start-1;i<self.length;i++){
1641
1691
  if(self[i].__eq(anObject)) {return i+1}
1642
1692
  }
1643
1693
  return aBlock();
1644
1694
  ;
1645
- ;
1646
- return self}
1695
+ return self}, function($ctx1) {$ctx1.fill(self,"indexOf:startingAt:ifAbsent:",{anObject:anObject,start:start,aBlock:aBlock}, smalltalk.SequenceableCollection)})}
1647
1696
  }),
1648
1697
  smalltalk.SequenceableCollection);
1649
1698
 
@@ -1653,10 +1702,10 @@ smalltalk.method({
1653
1702
  selector: "last",
1654
1703
  fn: function (){
1655
1704
  var self=this;
1656
- var $1;
1657
- $1=smalltalk.send(self,"_at_",[smalltalk.send(self,"_size",[])]);
1705
+ return smalltalk.withContext(function($ctx1) {
1706
+ $1=_st(self)._at_(_st(self)._size());
1658
1707
  return $1;
1659
- }
1708
+ }, function($ctx1) {$ctx1.fill(self,"last",{}, smalltalk.SequenceableCollection)})}
1660
1709
  }),
1661
1710
  smalltalk.SequenceableCollection);
1662
1711
 
@@ -1666,8 +1715,8 @@ smalltalk.method({
1666
1715
  selector: "removeLast",
1667
1716
  fn: function (){
1668
1717
  var self=this;
1669
- smalltalk.send(self,"_remove_",[smalltalk.send(self,"_last",[])]);
1670
- return self}
1718
+ return smalltalk.withContext(function($ctx1) {
1719
+ return self}, function($ctx1) {$ctx1.fill(self,"removeLast",{}, smalltalk.SequenceableCollection)})}
1671
1720
  }),
1672
1721
  smalltalk.SequenceableCollection);
1673
1722
 
@@ -1677,8 +1726,8 @@ smalltalk.method({
1677
1726
  selector: "reversed",
1678
1727
  fn: function (){
1679
1728
  var self=this;
1680
- smalltalk.send(self,"_subclassResponsibility",[]);
1681
- return self}
1729
+ return smalltalk.withContext(function($ctx1) {
1730
+ return self}, function($ctx1) {$ctx1.fill(self,"reversed",{}, smalltalk.SequenceableCollection)})}
1682
1731
  }),
1683
1732
  smalltalk.SequenceableCollection);
1684
1733
 
@@ -1688,10 +1737,10 @@ smalltalk.method({
1688
1737
  selector: "second",
1689
1738
  fn: function (){
1690
1739
  var self=this;
1691
- var $1;
1692
- $1=smalltalk.send(self,"_at_",[(2)]);
1740
+ return smalltalk.withContext(function($ctx1) {
1741
+ $1=_st(self)._at_((2));
1693
1742
  return $1;
1694
- }
1743
+ }, function($ctx1) {$ctx1.fill(self,"second",{}, smalltalk.SequenceableCollection)})}
1695
1744
  }),
1696
1745
  smalltalk.SequenceableCollection);
1697
1746
 
@@ -1702,12 +1751,14 @@ selector: "shallowCopy",
1702
1751
  fn: function (){
1703
1752
  var self=this;
1704
1753
  var newCollection;
1705
- newCollection=smalltalk.send(smalltalk.send(self,"_class",[]),"_new_",[smalltalk.send(self,"_size",[])]);
1706
- smalltalk.send(self,"_withIndexDo_",[(function(each,index){
1707
- return smalltalk.send(newCollection,"_at_put_",[index,each]);
1708
- })]);
1709
- return newCollection;
1710
- }
1754
+ return smalltalk.withContext(function($ctx1) {
1755
+ newCollection=_st(_st(self)._class())._new_(_st(self)._size());
1756
+ _st(self)._withIndexDo_((function(each,index){
1757
+ return smalltalk.withContext(function($ctx2) {
1758
+ }, function($ctx2) {$ctx2.fillBlock({each:each,index:index},$ctx1)})}));
1759
+ $1=newCollection;
1760
+ return $1;
1761
+ }, function($ctx1) {$ctx1.fill(self,"shallowCopy",{newCollection:newCollection}, smalltalk.SequenceableCollection)})}
1711
1762
  }),
1712
1763
  smalltalk.SequenceableCollection);
1713
1764
 
@@ -1717,10 +1768,10 @@ smalltalk.method({
1717
1768
  selector: "third",
1718
1769
  fn: function (){
1719
1770
  var self=this;
1720
- var $1;
1721
- $1=smalltalk.send(self,"_at_",[(3)]);
1771
+ return smalltalk.withContext(function($ctx1) {
1772
+ $1=_st(self)._at_((3));
1722
1773
  return $1;
1723
- }
1774
+ }, function($ctx1) {$ctx1.fill(self,"third",{}, smalltalk.SequenceableCollection)})}
1724
1775
  }),
1725
1776
  smalltalk.SequenceableCollection);
1726
1777
 
@@ -1730,9 +1781,8 @@ smalltalk.method({
1730
1781
  selector: "withIndexDo:",
1731
1782
  fn: function (aBlock){
1732
1783
  var self=this;
1733
- for(var i=0;i<self.length;i++){aBlock(self[i], i+1);};
1734
- ;
1735
- return self}
1784
+ return smalltalk.withContext(function($ctx1) {
1785
+ return self}, function($ctx1) {$ctx1.fill(self,"withIndexDo:",{aBlock:aBlock}, smalltalk.SequenceableCollection)})}
1736
1786
  }),
1737
1787
  smalltalk.SequenceableCollection);
1738
1788
 
@@ -1745,9 +1795,8 @@ smalltalk.method({
1745
1795
  selector: "add:",
1746
1796
  fn: function (anObject){
1747
1797
  var self=this;
1748
- self.push(anObject); return anObject;;
1749
- ;
1750
- return self}
1798
+ return smalltalk.withContext(function($ctx1) {
1799
+ return self}, function($ctx1) {$ctx1.fill(self,"add:",{anObject:anObject}, smalltalk.Array)})}
1751
1800
  }),
1752
1801
  smalltalk.Array);
1753
1802
 
@@ -1757,12 +1806,12 @@ smalltalk.method({
1757
1806
  selector: "asJavascript",
1758
1807
  fn: function (){
1759
1808
  var self=this;
1760
- var $1;
1761
- $1=smalltalk.send(smalltalk.send("[","__comma",[smalltalk.send(smalltalk.send(self,"_collect_",[(function(each){
1762
- return smalltalk.send(each,"_asJavascript",[]);
1763
- })]),"_join_",[", "])]),"__comma",["]"]);
1809
+ return smalltalk.withContext(function($ctx1) {
1810
+ $1=_st(_st("[").__comma(_st(_st(self)._collect_((function(each){
1811
+ return smalltalk.withContext(function($ctx2) {
1812
+ }, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})})))._join_(", "))).__comma("]");
1764
1813
  return $1;
1765
- }
1814
+ }, function($ctx1) {$ctx1.fill(self,"asJavascript",{}, smalltalk.Array)})}
1766
1815
  }),
1767
1816
  smalltalk.Array);
1768
1817
 
@@ -1772,12 +1821,11 @@ smalltalk.method({
1772
1821
  selector: "at:ifAbsent:",
1773
1822
  fn: function (anIndex,aBlock){
1774
1823
  var self=this;
1775
-
1824
+ return smalltalk.withContext(function($ctx1) {
1776
1825
  if((anIndex < 1) || (self.length < anIndex)) {return aBlock()};
1777
1826
  return self[anIndex - 1];
1778
1827
  ;
1779
- ;
1780
- return self}
1828
+ return self}, function($ctx1) {$ctx1.fill(self,"at:ifAbsent:",{anIndex:anIndex,aBlock:aBlock}, smalltalk.Array)})}
1781
1829
  }),
1782
1830
  smalltalk.Array);
1783
1831
 
@@ -1787,9 +1835,8 @@ smalltalk.method({
1787
1835
  selector: "at:put:",
1788
1836
  fn: function (anIndex,anObject){
1789
1837
  var self=this;
1790
- return self[anIndex - 1] = anObject;
1791
- ;
1792
- return self}
1838
+ return smalltalk.withContext(function($ctx1) {
1839
+ return self}, function($ctx1) {$ctx1.fill(self,"at:put:",{anIndex:anIndex,anObject:anObject}, smalltalk.Array)})}
1793
1840
  }),
1794
1841
  smalltalk.Array);
1795
1842
 
@@ -1799,9 +1846,8 @@ smalltalk.method({
1799
1846
  selector: "join:",
1800
1847
  fn: function (aString){
1801
1848
  var self=this;
1802
- return self.join(aString);
1803
- ;
1804
- return self}
1849
+ return smalltalk.withContext(function($ctx1) {
1850
+ return self}, function($ctx1) {$ctx1.fill(self,"join:",{aString:aString}, smalltalk.Array)})}
1805
1851
  }),
1806
1852
  smalltalk.Array);
1807
1853
 
@@ -1811,17 +1857,16 @@ smalltalk.method({
1811
1857
  selector: "remove:ifAbsent:",
1812
1858
  fn: function (anObject,aBlock){
1813
1859
  var self=this;
1814
-
1860
+ return smalltalk.withContext(function($ctx1) {
1815
1861
  for(var i=0;i<self.length;i++) {
1816
1862
  if(self[i] == anObject) {
1817
1863
  self.splice(i,1);
1818
1864
  return self;
1819
1865
  }
1820
- }
1866
+ };
1867
+ aBlock._value();
1821
1868
  ;
1822
- ;
1823
- smalltalk.send(aBlock,"_value",[]);
1824
- return self}
1869
+ return self}, function($ctx1) {$ctx1.fill(self,"remove:ifAbsent:",{anObject:anObject,aBlock:aBlock}, smalltalk.Array)})}
1825
1870
  }),
1826
1871
  smalltalk.Array);
1827
1872
 
@@ -1831,9 +1876,8 @@ smalltalk.method({
1831
1876
  selector: "removeFrom:to:",
1832
1877
  fn: function (aNumber,anotherNumber){
1833
1878
  var self=this;
1834
- self.splice(aNumber - 1,anotherNumber - 1);
1835
- ;
1836
- return self}
1879
+ return smalltalk.withContext(function($ctx1) {
1880
+ return self}, function($ctx1) {$ctx1.fill(self,"removeFrom:to:",{aNumber:aNumber,anotherNumber:anotherNumber}, smalltalk.Array)})}
1837
1881
  }),
1838
1882
  smalltalk.Array);
1839
1883
 
@@ -1843,9 +1887,8 @@ smalltalk.method({
1843
1887
  selector: "reversed",
1844
1888
  fn: function (){
1845
1889
  var self=this;
1846
- return self._copy().reverse();
1847
- ;
1848
- return self}
1890
+ return smalltalk.withContext(function($ctx1) {
1891
+ return self}, function($ctx1) {$ctx1.fill(self,"reversed",{}, smalltalk.Array)})}
1849
1892
  }),
1850
1893
  smalltalk.Array);
1851
1894
 
@@ -1855,9 +1898,8 @@ smalltalk.method({
1855
1898
  selector: "size",
1856
1899
  fn: function (){
1857
1900
  var self=this;
1858
- return self.length;
1859
- ;
1860
- return self}
1901
+ return smalltalk.withContext(function($ctx1) {
1902
+ return self}, function($ctx1) {$ctx1.fill(self,"size",{}, smalltalk.Array)})}
1861
1903
  }),
1862
1904
  smalltalk.Array);
1863
1905
 
@@ -1867,10 +1909,10 @@ smalltalk.method({
1867
1909
  selector: "sort",
1868
1910
  fn: function (){
1869
1911
  var self=this;
1870
- var $1;
1871
- $1=smalltalk.send(self,"_basicPerform_",["sort"]);
1912
+ return smalltalk.withContext(function($ctx1) {
1913
+ $1=_st(self)._basicPerform_("sort");
1872
1914
  return $1;
1873
- }
1915
+ }, function($ctx1) {$ctx1.fill(self,"sort",{}, smalltalk.Array)})}
1874
1916
  }),
1875
1917
  smalltalk.Array);
1876
1918
 
@@ -1880,13 +1922,12 @@ smalltalk.method({
1880
1922
  selector: "sort:",
1881
1923
  fn: function (aBlock){
1882
1924
  var self=this;
1883
-
1925
+ return smalltalk.withContext(function($ctx1) {
1884
1926
  return self.sort(function(a, b) {
1885
1927
  if(aBlock(a,b)) {return -1} else {return 1}
1886
1928
  })
1887
1929
  ;
1888
- ;
1889
- return self}
1930
+ return self}, function($ctx1) {$ctx1.fill(self,"sort:",{aBlock:aBlock}, smalltalk.Array)})}
1890
1931
  }),
1891
1932
  smalltalk.Array);
1892
1933
 
@@ -1896,10 +1937,10 @@ smalltalk.method({
1896
1937
  selector: "sorted",
1897
1938
  fn: function (){
1898
1939
  var self=this;
1899
- var $1;
1900
- $1=smalltalk.send(smalltalk.send(self,"_copy",[]),"_sort",[]);
1940
+ return smalltalk.withContext(function($ctx1) {
1941
+ $1=_st(_st(self)._copy())._sort();
1901
1942
  return $1;
1902
- }
1943
+ }, function($ctx1) {$ctx1.fill(self,"sorted",{}, smalltalk.Array)})}
1903
1944
  }),
1904
1945
  smalltalk.Array);
1905
1946
 
@@ -1909,10 +1950,10 @@ smalltalk.method({
1909
1950
  selector: "sorted:",
1910
1951
  fn: function (aBlock){
1911
1952
  var self=this;
1912
- var $1;
1913
- $1=smalltalk.send(smalltalk.send(self,"_copy",[]),"_sort_",[aBlock]);
1953
+ return smalltalk.withContext(function($ctx1) {
1954
+ $1=_st(_st(self)._copy())._sort_(aBlock);
1914
1955
  return $1;
1915
- }
1956
+ }, function($ctx1) {$ctx1.fill(self,"sorted:",{aBlock:aBlock}, smalltalk.Array)})}
1916
1957
  }),
1917
1958
  smalltalk.Array);
1918
1959
 
@@ -1923,9 +1964,8 @@ smalltalk.method({
1923
1964
  selector: "new:",
1924
1965
  fn: function (anInteger){
1925
1966
  var self=this;
1926
- return new Array(anInteger);
1927
- ;
1928
- return self}
1967
+ return smalltalk.withContext(function($ctx1) {
1968
+ return self}, function($ctx1) {$ctx1.fill(self,"new:",{anInteger:anInteger}, smalltalk.Array.klass)})}
1929
1969
  }),
1930
1970
  smalltalk.Array.klass);
1931
1971
 
@@ -1935,13 +1975,13 @@ smalltalk.method({
1935
1975
  selector: "with:",
1936
1976
  fn: function (anObject){
1937
1977
  var self=this;
1938
- var $2,$3,$1;
1939
- $2=smalltalk.send(self,"_new_",[(1)]);
1940
- smalltalk.send($2,"_at_put_",[(1),anObject]);
1941
- $3=smalltalk.send($2,"_yourself",[]);
1978
+ return smalltalk.withContext(function($ctx1) {
1979
+ $2=_st(self)._new_((1));
1980
+ _st($2)._at_put_((1),anObject);
1981
+ $3=_st($2)._yourself();
1942
1982
  $1=$3;
1943
1983
  return $1;
1944
- }
1984
+ }, function($ctx1) {$ctx1.fill(self,"with:",{anObject:anObject}, smalltalk.Array.klass)})}
1945
1985
  }),
1946
1986
  smalltalk.Array.klass);
1947
1987
 
@@ -1951,14 +1991,14 @@ smalltalk.method({
1951
1991
  selector: "with:with:",
1952
1992
  fn: function (anObject,anObject2){
1953
1993
  var self=this;
1954
- var $2,$3,$1;
1955
- $2=smalltalk.send(self,"_new_",[(2)]);
1956
- smalltalk.send($2,"_at_put_",[(1),anObject]);
1957
- smalltalk.send($2,"_at_put_",[(2),anObject2]);
1958
- $3=smalltalk.send($2,"_yourself",[]);
1994
+ return smalltalk.withContext(function($ctx1) {
1995
+ $2=_st(self)._new_((2));
1996
+ _st($2)._at_put_((1),anObject);
1997
+ _st($2)._at_put_((2),anObject2);
1998
+ $3=_st($2)._yourself();
1959
1999
  $1=$3;
1960
2000
  return $1;
1961
- }
2001
+ }, function($ctx1) {$ctx1.fill(self,"with:with:",{anObject:anObject,anObject2:anObject2}, smalltalk.Array.klass)})}
1962
2002
  }),
1963
2003
  smalltalk.Array.klass);
1964
2004
 
@@ -1968,15 +2008,15 @@ smalltalk.method({
1968
2008
  selector: "with:with:with:",
1969
2009
  fn: function (anObject,anObject2,anObject3){
1970
2010
  var self=this;
1971
- var $2,$3,$1;
1972
- $2=smalltalk.send(self,"_new_",[(3)]);
1973
- smalltalk.send($2,"_at_put_",[(1),anObject]);
1974
- smalltalk.send($2,"_at_put_",[(2),anObject2]);
1975
- smalltalk.send($2,"_at_put_",[(3),anObject3]);
1976
- $3=smalltalk.send($2,"_yourself",[]);
2011
+ return smalltalk.withContext(function($ctx1) {
2012
+ $2=_st(self)._new_((3));
2013
+ _st($2)._at_put_((1),anObject);
2014
+ _st($2)._at_put_((2),anObject2);
2015
+ _st($2)._at_put_((3),anObject3);
2016
+ $3=_st($2)._yourself();
1977
2017
  $1=$3;
1978
2018
  return $1;
1979
- }
2019
+ }, function($ctx1) {$ctx1.fill(self,"with:with:with:",{anObject:anObject,anObject2:anObject2,anObject3:anObject3}, smalltalk.Array.klass)})}
1980
2020
  }),
1981
2021
  smalltalk.Array.klass);
1982
2022
 
@@ -1986,17 +2026,18 @@ smalltalk.method({
1986
2026
  selector: "withAll:",
1987
2027
  fn: function (aCollection){
1988
2028
  var self=this;
1989
- var instance;
1990
- var index;
2029
+ var instance,index;
2030
+ return smalltalk.withContext(function($ctx1) {
1991
2031
  index=(1);
1992
- instance=smalltalk.send(self,"_new_",[smalltalk.send(aCollection,"_size",[])]);
1993
- smalltalk.send(aCollection,"_do_",[(function(each){
1994
- smalltalk.send(instance,"_at_put_",[index,each]);
1995
- index=smalltalk.send(index,"__plus",[(1)]);
2032
+ instance=_st(self)._new_(_st(aCollection)._size());
2033
+ _st(aCollection)._do_((function(each){
2034
+ return smalltalk.withContext(function($ctx2) {
2035
+ index=_st(index).__plus((1));
1996
2036
  return index;
1997
- })]);
1998
- return instance;
1999
- }
2037
+ }, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
2038
+ $1=instance;
2039
+ return $1;
2040
+ }, function($ctx1) {$ctx1.fill(self,"withAll:",{aCollection:aCollection,instance:instance,index:index}, smalltalk.Array.klass)})}
2000
2041
  }),
2001
2042
  smalltalk.Array.klass);
2002
2043
 
@@ -2008,10 +2049,10 @@ smalltalk.method({
2008
2049
  selector: ",",
2009
2050
  fn: function (aString){
2010
2051
  var self=this;
2011
- var $1;
2012
- $1=smalltalk.send(smalltalk.send(self,"_asString",[]),"__comma",[smalltalk.send(aString,"_asString",[])]);
2052
+ return smalltalk.withContext(function($ctx1) {
2053
+ $1=_st(_st(self)._asString()).__comma(_st(aString)._asString());
2013
2054
  return $1;
2014
- }
2055
+ }, function($ctx1) {$ctx1.fill(self,",",{aString:aString}, smalltalk.CharacterArray)})}
2015
2056
  }),
2016
2057
  smalltalk.CharacterArray);
2017
2058
 
@@ -2021,8 +2062,8 @@ smalltalk.method({
2021
2062
  selector: "add:",
2022
2063
  fn: function (anObject){
2023
2064
  var self=this;
2024
- smalltalk.send(self,"_errorReadOnly",[]);
2025
- return self}
2065
+ return smalltalk.withContext(function($ctx1) {
2066
+ return self}, function($ctx1) {$ctx1.fill(self,"add:",{anObject:anObject}, smalltalk.CharacterArray)})}
2026
2067
  }),
2027
2068
  smalltalk.CharacterArray);
2028
2069
 
@@ -2032,10 +2073,10 @@ smalltalk.method({
2032
2073
  selector: "asLowercase",
2033
2074
  fn: function (){
2034
2075
  var self=this;
2035
- var $1;
2036
- $1=smalltalk.send(smalltalk.send(self,"_class",[]),"_fromString_",[smalltalk.send(smalltalk.send(self,"_asString",[]),"_asLowercase",[])]);
2076
+ return smalltalk.withContext(function($ctx1) {
2077
+ $1=_st(_st(self)._class())._fromString_(_st(_st(self)._asString())._asLowercase());
2037
2078
  return $1;
2038
- }
2079
+ }, function($ctx1) {$ctx1.fill(self,"asLowercase",{}, smalltalk.CharacterArray)})}
2039
2080
  }),
2040
2081
  smalltalk.CharacterArray);
2041
2082
 
@@ -2045,10 +2086,10 @@ smalltalk.method({
2045
2086
  selector: "asNumber",
2046
2087
  fn: function (){
2047
2088
  var self=this;
2048
- var $1;
2049
- $1=smalltalk.send(smalltalk.send(self,"_asString",[]),"_asNumber",[]);
2089
+ return smalltalk.withContext(function($ctx1) {
2090
+ $1=_st(_st(self)._asString())._asNumber();
2050
2091
  return $1;
2051
- }
2092
+ }, function($ctx1) {$ctx1.fill(self,"asNumber",{}, smalltalk.CharacterArray)})}
2052
2093
  }),
2053
2094
  smalltalk.CharacterArray);
2054
2095
 
@@ -2058,10 +2099,10 @@ smalltalk.method({
2058
2099
  selector: "asString",
2059
2100
  fn: function (){
2060
2101
  var self=this;
2061
- var $1;
2062
- $1=smalltalk.send(self,"_subclassResponsibility",[]);
2102
+ return smalltalk.withContext(function($ctx1) {
2103
+ $1=_st(self)._subclassResponsibility();
2063
2104
  return $1;
2064
- }
2105
+ }, function($ctx1) {$ctx1.fill(self,"asString",{}, smalltalk.CharacterArray)})}
2065
2106
  }),
2066
2107
  smalltalk.CharacterArray);
2067
2108
 
@@ -2071,10 +2112,10 @@ smalltalk.method({
2071
2112
  selector: "asSymbol",
2072
2113
  fn: function (){
2073
2114
  var self=this;
2074
- var $1;
2075
- $1=smalltalk.send(self,"_subclassResponsibility",[]);
2115
+ return smalltalk.withContext(function($ctx1) {
2116
+ $1=_st(self)._subclassResponsibility();
2076
2117
  return $1;
2077
- }
2118
+ }, function($ctx1) {$ctx1.fill(self,"asSymbol",{}, smalltalk.CharacterArray)})}
2078
2119
  }),
2079
2120
  smalltalk.CharacterArray);
2080
2121
 
@@ -2084,10 +2125,10 @@ smalltalk.method({
2084
2125
  selector: "asUppercase",
2085
2126
  fn: function (){
2086
2127
  var self=this;
2087
- var $1;
2088
- $1=smalltalk.send(smalltalk.send(self,"_class",[]),"_fromString_",[smalltalk.send(smalltalk.send(self,"_asString",[]),"_asUppercase",[])]);
2128
+ return smalltalk.withContext(function($ctx1) {
2129
+ $1=_st(_st(self)._class())._fromString_(_st(_st(self)._asString())._asUppercase());
2089
2130
  return $1;
2090
- }
2131
+ }, function($ctx1) {$ctx1.fill(self,"asUppercase",{}, smalltalk.CharacterArray)})}
2091
2132
  }),
2092
2133
  smalltalk.CharacterArray);
2093
2134
 
@@ -2097,8 +2138,8 @@ smalltalk.method({
2097
2138
  selector: "at:put:",
2098
2139
  fn: function (anIndex,anObject){
2099
2140
  var self=this;
2100
- smalltalk.send(self,"_errorReadOnly",[]);
2101
- return self}
2141
+ return smalltalk.withContext(function($ctx1) {
2142
+ return self}, function($ctx1) {$ctx1.fill(self,"at:put:",{anIndex:anIndex,anObject:anObject}, smalltalk.CharacterArray)})}
2102
2143
  }),
2103
2144
  smalltalk.CharacterArray);
2104
2145
 
@@ -2108,8 +2149,8 @@ smalltalk.method({
2108
2149
  selector: "errorReadOnly",
2109
2150
  fn: function (){
2110
2151
  var self=this;
2111
- smalltalk.send(self,"_error_",["Object is read-only"]);
2112
- return self}
2152
+ return smalltalk.withContext(function($ctx1) {
2153
+ return self}, function($ctx1) {$ctx1.fill(self,"errorReadOnly",{}, smalltalk.CharacterArray)})}
2113
2154
  }),
2114
2155
  smalltalk.CharacterArray);
2115
2156
 
@@ -2119,10 +2160,10 @@ smalltalk.method({
2119
2160
  selector: "printString",
2120
2161
  fn: function (){
2121
2162
  var self=this;
2122
- var $1;
2123
- $1=smalltalk.send(smalltalk.send(self,"_asString",[]),"_printString",[]);
2163
+ return smalltalk.withContext(function($ctx1) {
2164
+ $1=_st(_st(self)._asString())._printString();
2124
2165
  return $1;
2125
- }
2166
+ }, function($ctx1) {$ctx1.fill(self,"printString",{}, smalltalk.CharacterArray)})}
2126
2167
  }),
2127
2168
  smalltalk.CharacterArray);
2128
2169
 
@@ -2132,8 +2173,8 @@ smalltalk.method({
2132
2173
  selector: "remove:",
2133
2174
  fn: function (anObject){
2134
2175
  var self=this;
2135
- smalltalk.send(self,"_errorReadOnly",[]);
2136
- return self}
2176
+ return smalltalk.withContext(function($ctx1) {
2177
+ return self}, function($ctx1) {$ctx1.fill(self,"remove:",{anObject:anObject}, smalltalk.CharacterArray)})}
2137
2178
  }),
2138
2179
  smalltalk.CharacterArray);
2139
2180
 
@@ -2144,8 +2185,8 @@ smalltalk.method({
2144
2185
  selector: "fromString:",
2145
2186
  fn: function (aString){
2146
2187
  var self=this;
2147
- smalltalk.send(self,"_subclassResponsibility",[]);
2148
- return self}
2188
+ return smalltalk.withContext(function($ctx1) {
2189
+ return self}, function($ctx1) {$ctx1.fill(self,"fromString:",{aString:aString}, smalltalk.CharacterArray.klass)})}
2149
2190
  }),
2150
2191
  smalltalk.CharacterArray.klass);
2151
2192
 
@@ -2157,9 +2198,8 @@ smalltalk.method({
2157
2198
  selector: ",",
2158
2199
  fn: function (aString){
2159
2200
  var self=this;
2160
- return self + aString;
2161
- ;
2162
- return self}
2201
+ return smalltalk.withContext(function($ctx1) {
2202
+ return self}, function($ctx1) {$ctx1.fill(self,",",{aString:aString}, smalltalk.String)})}
2163
2203
  }),
2164
2204
  smalltalk.String);
2165
2205
 
@@ -2169,9 +2209,8 @@ smalltalk.method({
2169
2209
  selector: "<",
2170
2210
  fn: function (aString){
2171
2211
  var self=this;
2172
- return String(self) < aString._asString();
2173
- ;
2174
- return self}
2212
+ return smalltalk.withContext(function($ctx1) {
2213
+ return self}, function($ctx1) {$ctx1.fill(self,"<",{aString:aString}, smalltalk.String)})}
2175
2214
  }),
2176
2215
  smalltalk.String);
2177
2216
 
@@ -2181,9 +2220,8 @@ smalltalk.method({
2181
2220
  selector: "<=",
2182
2221
  fn: function (aString){
2183
2222
  var self=this;
2184
- return String(self) <= aString._asString();
2185
- ;
2186
- return self}
2223
+ return smalltalk.withContext(function($ctx1) {
2224
+ return self}, function($ctx1) {$ctx1.fill(self,"<=",{aString:aString}, smalltalk.String)})}
2187
2225
  }),
2188
2226
  smalltalk.String);
2189
2227
 
@@ -2193,14 +2231,13 @@ smalltalk.method({
2193
2231
  selector: "=",
2194
2232
  fn: function (aString){
2195
2233
  var self=this;
2196
- var $1;
2197
- $1=smalltalk.send(smalltalk.send(aString,"_class",[]),"__eq",[smalltalk.send(self,"_class",[])]);
2198
- if(! smalltalk.assert($1)){
2199
- return false;
2200
- };
2201
- return String(self) === String(aString);
2202
- ;
2203
- return self}
2234
+ return smalltalk.withContext(function($ctx1) {
2235
+ if(! aString._isString || ! aString._isString()) {
2236
+ return false;
2237
+ }
2238
+ return String(self) === String(aString)
2239
+ ;
2240
+ return self}, function($ctx1) {$ctx1.fill(self,"=",{aString:aString}, smalltalk.String)})}
2204
2241
  }),
2205
2242
  smalltalk.String);
2206
2243
 
@@ -2210,10 +2247,10 @@ smalltalk.method({
2210
2247
  selector: "==",
2211
2248
  fn: function (aString){
2212
2249
  var self=this;
2213
- var $1;
2214
- $1=smalltalk.send(self,"__eq",[aString]);
2250
+ return smalltalk.withContext(function($ctx1) {
2251
+ $1=_st(self).__eq(aString);
2215
2252
  return $1;
2216
- }
2253
+ }, function($ctx1) {$ctx1.fill(self,"==",{aString:aString}, smalltalk.String)})}
2217
2254
  }),
2218
2255
  smalltalk.String);
2219
2256
 
@@ -2223,9 +2260,8 @@ smalltalk.method({
2223
2260
  selector: ">",
2224
2261
  fn: function (aString){
2225
2262
  var self=this;
2226
- return String(self) > aString._asString();
2227
- ;
2228
- return self}
2263
+ return smalltalk.withContext(function($ctx1) {
2264
+ return self}, function($ctx1) {$ctx1.fill(self,">",{aString:aString}, smalltalk.String)})}
2229
2265
  }),
2230
2266
  smalltalk.String);
2231
2267
 
@@ -2235,9 +2271,8 @@ smalltalk.method({
2235
2271
  selector: ">=",
2236
2272
  fn: function (aString){
2237
2273
  var self=this;
2238
- return String(self) >= aString._asString();
2239
- ;
2240
- return self}
2274
+ return smalltalk.withContext(function($ctx1) {
2275
+ return self}, function($ctx1) {$ctx1.fill(self,">=",{aString:aString}, smalltalk.String)})}
2241
2276
  }),
2242
2277
  smalltalk.String);
2243
2278
 
@@ -2247,8 +2282,10 @@ smalltalk.method({
2247
2282
  selector: "asJSON",
2248
2283
  fn: function (){
2249
2284
  var self=this;
2250
- return self;
2251
- }
2285
+ return smalltalk.withContext(function($ctx1) {
2286
+ $1=self;
2287
+ return $1;
2288
+ }, function($ctx1) {$ctx1.fill(self,"asJSON",{}, smalltalk.String)})}
2252
2289
  }),
2253
2290
  smalltalk.String);
2254
2291
 
@@ -2258,10 +2295,10 @@ smalltalk.method({
2258
2295
  selector: "asJavaScriptSelector",
2259
2296
  fn: function (){
2260
2297
  var self=this;
2261
- var $1;
2262
- $1=smalltalk.send(smalltalk.send(smalltalk.send(self,"_asSelector",[]),"_replace_with_",["^_",""]),"_replace_with_",["_.*",""]);
2298
+ return smalltalk.withContext(function($ctx1) {
2299
+ $1=_st(_st(_st(self)._asSelector())._replace_with_("^_",""))._replace_with_("_.*","");
2263
2300
  return $1;
2264
- }
2301
+ }, function($ctx1) {$ctx1.fill(self,"asJavaScriptSelector",{}, smalltalk.String)})}
2265
2302
  }),
2266
2303
  smalltalk.String);
2267
2304
 
@@ -2271,14 +2308,13 @@ smalltalk.method({
2271
2308
  selector: "asJavascript",
2272
2309
  fn: function (){
2273
2310
  var self=this;
2274
-
2311
+ return smalltalk.withContext(function($ctx1) {
2275
2312
  if(self.search(/^[a-zA-Z0-9_:.$ ]*$/) == -1)
2276
2313
  return "\"" + self.replace(/[\x00-\x1f"\\\x7f-\x9f]/g, function(ch){var c=ch.charCodeAt(0);return "\\x"+("0"+c.toString(16)).slice(-2)}) + "\"";
2277
2314
  else
2278
2315
  return "\"" + self + "\"";
2279
2316
  ;
2280
- ;
2281
- return self}
2317
+ return self}, function($ctx1) {$ctx1.fill(self,"asJavascript",{}, smalltalk.String)})}
2282
2318
  }),
2283
2319
  smalltalk.String);
2284
2320
 
@@ -2288,9 +2324,8 @@ smalltalk.method({
2288
2324
  selector: "asLowercase",
2289
2325
  fn: function (){
2290
2326
  var self=this;
2291
- return self.toLowerCase();
2292
- ;
2293
- return self}
2327
+ return smalltalk.withContext(function($ctx1) {
2328
+ return self}, function($ctx1) {$ctx1.fill(self,"asLowercase",{}, smalltalk.String)})}
2294
2329
  }),
2295
2330
  smalltalk.String);
2296
2331
 
@@ -2300,9 +2335,21 @@ smalltalk.method({
2300
2335
  selector: "asNumber",
2301
2336
  fn: function (){
2302
2337
  var self=this;
2303
- return Number(self);
2304
- ;
2305
- return self}
2338
+ return smalltalk.withContext(function($ctx1) {
2339
+ return self}, function($ctx1) {$ctx1.fill(self,"asNumber",{}, smalltalk.String)})}
2340
+ }),
2341
+ smalltalk.String);
2342
+
2343
+ smalltalk.addMethod(
2344
+ "_asRegexp",
2345
+ smalltalk.method({
2346
+ selector: "asRegexp",
2347
+ fn: function (){
2348
+ var self=this;
2349
+ return smalltalk.withContext(function($ctx1) {
2350
+ $1=_st((smalltalk.RegularExpression || RegularExpression))._fromString_(self);
2351
+ return $1;
2352
+ }, function($ctx1) {$ctx1.fill(self,"asRegexp",{}, smalltalk.String)})}
2306
2353
  }),
2307
2354
  smalltalk.String);
2308
2355
 
@@ -2312,20 +2359,8 @@ smalltalk.method({
2312
2359
  selector: "asSelector",
2313
2360
  fn: function (){
2314
2361
  var self=this;
2315
- var selector;
2316
- selector=smalltalk.send("_","__comma",[self]);
2317
- selector=smalltalk.send(selector,"_replace_with_",[":","_"]);
2318
- selector=smalltalk.send(selector,"_replace_with_",["[+]","_plus"]);
2319
- selector=smalltalk.send(selector,"_replace_with_",["-","_minus"]);
2320
- selector=smalltalk.send(selector,"_replace_with_",["[*]","_star"]);
2321
- selector=smalltalk.send(selector,"_replace_with_",["[/]","_slash"]);
2322
- selector=smalltalk.send(selector,"_replace_with_",[">","_gt"]);
2323
- selector=smalltalk.send(selector,"_replace_with_",["<","_lt"]);
2324
- selector=smalltalk.send(selector,"_replace_with_",["=","_eq"]);
2325
- selector=smalltalk.send(selector,"_replace_with_",[",","_comma"]);
2326
- selector=smalltalk.send(selector,"_replace_with_",["[@]","_at"]);
2327
- return selector;
2328
- }
2362
+ return smalltalk.withContext(function($ctx1) {
2363
+ return self}, function($ctx1) {$ctx1.fill(self,"asSelector",{}, smalltalk.String)})}
2329
2364
  }),
2330
2365
  smalltalk.String);
2331
2366
 
@@ -2335,8 +2370,10 @@ smalltalk.method({
2335
2370
  selector: "asString",
2336
2371
  fn: function (){
2337
2372
  var self=this;
2338
- return self;
2339
- }
2373
+ return smalltalk.withContext(function($ctx1) {
2374
+ $1=self;
2375
+ return $1;
2376
+ }, function($ctx1) {$ctx1.fill(self,"asString",{}, smalltalk.String)})}
2340
2377
  }),
2341
2378
  smalltalk.String);
2342
2379
 
@@ -2346,10 +2383,10 @@ smalltalk.method({
2346
2383
  selector: "asSymbol",
2347
2384
  fn: function (){
2348
2385
  var self=this;
2349
- var $1;
2350
- $1=smalltalk.send((smalltalk.Symbol || Symbol),"_lookup_",[self]);
2386
+ return smalltalk.withContext(function($ctx1) {
2387
+ $1=_st((smalltalk.Symbol || Symbol))._lookup_(self);
2351
2388
  return $1;
2352
- }
2389
+ }, function($ctx1) {$ctx1.fill(self,"asSymbol",{}, smalltalk.String)})}
2353
2390
  }),
2354
2391
  smalltalk.String);
2355
2392
 
@@ -2359,9 +2396,8 @@ smalltalk.method({
2359
2396
  selector: "asUppercase",
2360
2397
  fn: function (){
2361
2398
  var self=this;
2362
- return self.toUpperCase();
2363
- ;
2364
- return self}
2399
+ return smalltalk.withContext(function($ctx1) {
2400
+ return self}, function($ctx1) {$ctx1.fill(self,"asUppercase",{}, smalltalk.String)})}
2365
2401
  }),
2366
2402
  smalltalk.String);
2367
2403
 
@@ -2371,9 +2407,8 @@ smalltalk.method({
2371
2407
  selector: "asciiValue",
2372
2408
  fn: function (){
2373
2409
  var self=this;
2374
- return self.charCodeAt(0);;
2375
- ;
2376
- return self}
2410
+ return smalltalk.withContext(function($ctx1) {
2411
+ return self}, function($ctx1) {$ctx1.fill(self,"asciiValue",{}, smalltalk.String)})}
2377
2412
  }),
2378
2413
  smalltalk.String);
2379
2414
 
@@ -2383,9 +2418,8 @@ smalltalk.method({
2383
2418
  selector: "at:ifAbsent:",
2384
2419
  fn: function (anIndex,aBlock){
2385
2420
  var self=this;
2386
- return String(self).charAt(anIndex - 1) || aBlock();
2387
- ;
2388
- return self}
2421
+ return smalltalk.withContext(function($ctx1) {
2422
+ return self}, function($ctx1) {$ctx1.fill(self,"at:ifAbsent:",{anIndex:anIndex,aBlock:aBlock}, smalltalk.String)})}
2389
2423
  }),
2390
2424
  smalltalk.String);
2391
2425
 
@@ -2395,9 +2429,8 @@ smalltalk.method({
2395
2429
  selector: "copyFrom:to:",
2396
2430
  fn: function (anIndex,anotherIndex){
2397
2431
  var self=this;
2398
- return self.substring(anIndex - 1, anotherIndex);
2399
- ;
2400
- return self}
2432
+ return smalltalk.withContext(function($ctx1) {
2433
+ return self}, function($ctx1) {$ctx1.fill(self,"copyFrom:to:",{anIndex:anIndex,anotherIndex:anotherIndex}, smalltalk.String)})}
2401
2434
  }),
2402
2435
  smalltalk.String);
2403
2436
 
@@ -2407,10 +2440,10 @@ smalltalk.method({
2407
2440
  selector: "deepCopy",
2408
2441
  fn: function (){
2409
2442
  var self=this;
2410
- var $1;
2411
- $1=smalltalk.send(self,"_shallowCopy",[]);
2443
+ return smalltalk.withContext(function($ctx1) {
2444
+ $1=_st(self)._shallowCopy();
2412
2445
  return $1;
2413
- }
2446
+ }, function($ctx1) {$ctx1.fill(self,"deepCopy",{}, smalltalk.String)})}
2414
2447
  }),
2415
2448
  smalltalk.String);
2416
2449
 
@@ -2420,9 +2453,8 @@ smalltalk.method({
2420
2453
  selector: "do:",
2421
2454
  fn: function (aBlock){
2422
2455
  var self=this;
2423
- for(var i=0;i<self.length;i++){aBlock(self.charAt(i));};
2424
- ;
2425
- return self}
2456
+ return smalltalk.withContext(function($ctx1) {
2457
+ return self}, function($ctx1) {$ctx1.fill(self,"do:",{aBlock:aBlock}, smalltalk.String)})}
2426
2458
  }),
2427
2459
  smalltalk.String);
2428
2460
 
@@ -2432,9 +2464,8 @@ smalltalk.method({
2432
2464
  selector: "escaped",
2433
2465
  fn: function (){
2434
2466
  var self=this;
2435
- return escape(self);
2436
- ;
2437
- return self}
2467
+ return smalltalk.withContext(function($ctx1) {
2468
+ return self}, function($ctx1) {$ctx1.fill(self,"escaped",{}, smalltalk.String)})}
2438
2469
  }),
2439
2470
  smalltalk.String);
2440
2471
 
@@ -2444,9 +2475,8 @@ smalltalk.method({
2444
2475
  selector: "includesSubString:",
2445
2476
  fn: function (subString){
2446
2477
  var self=this;
2447
- return self.indexOf(subString) != -1 ;
2448
- ;
2449
- return self}
2478
+ return smalltalk.withContext(function($ctx1) {
2450
2479
  return self.indexOf(subString) != -1 ;
2480
+ return self}, function($ctx1) {$ctx1.fill(self,"includesSubString:",{subString:subString}, smalltalk.String)})}
2451
2481
  }),
2452
2482
  smalltalk.String);
2453
2483
 
@@ -2456,8 +2486,8 @@ smalltalk.method({
2456
2486
  selector: "isString",
2457
2487
  fn: function (){
2458
2488
  var self=this;
2459
- return true;
2460
- }
2489
+ return smalltalk.withContext(function($ctx1) {
2490
+ }, function($ctx1) {$ctx1.fill(self,"isString",{}, smalltalk.String)})}
2461
2491
  }),
2462
2492
  smalltalk.String);
2463
2493
 
@@ -2467,16 +2497,16 @@ smalltalk.method({
2467
2497
  selector: "join:",
2468
2498
  fn: function (aCollection){
2469
2499
  var self=this;
2470
- var $1;
2471
- $1=smalltalk.send((smalltalk.String || String),"_streamContents_",[(function(stream){
2472
- return smalltalk.send(aCollection,"_do_separatedBy_",[(function(each){
2473
- return smalltalk.send(stream,"_nextPutAll_",[smalltalk.send(each,"_asString",[])]);
2474
- }),(function(){
2475
- return smalltalk.send(stream,"_nextPutAll_",[self]);
2476
- })]);
2477
- })]);
2500
+ return smalltalk.withContext(function($ctx1) {
2501
+ $1=_st((smalltalk.String || String))._streamContents_((function(stream){
2502
+ return smalltalk.withContext(function($ctx2) {
2503
+ return smalltalk.withContext(function($ctx3) {
2504
+ }, function($ctx3) {$ctx3.fillBlock({each:each},$ctx1)})}),(function(){
2505
+ return smalltalk.withContext(function($ctx3) {
2506
+ }, function($ctx3) {$ctx3.fillBlock({},$ctx1)})}));
2507
+ }, function($ctx2) {$ctx2.fillBlock({stream:stream},$ctx1)})}));
2478
2508
  return $1;
2479
- }
2509
+ }, function($ctx1) {$ctx1.fill(self,"join:",{aCollection:aCollection}, smalltalk.String)})}
2480
2510
  }),
2481
2511
  smalltalk.String);
2482
2512
 
@@ -2486,64 +2516,64 @@ smalltalk.method({
2486
2516
  selector: "lineIndicesDo:",
2487
2517
  fn: function (aBlock){
2488
2518
  var self=this;
2489
- var $1,$2,$3;
2519
+ var cr,lf,start,sz,nextLF,nextCR;
2520
+ return smalltalk.withContext(function($ctx1) {
2490
2521
  var $early={};
2491
2522
  try {
2492
- var cr;
2493
- var lf;
2494
- var start;
2495
- var sz;
2496
- var nextLF;
2497
- var nextCR;
2498
2523
  start=(1);
2499
- sz=smalltalk.send(self,"_size",[]);
2500
- cr=smalltalk.send((smalltalk.String || String),"_cr",[]);
2501
- nextCR=smalltalk.send(self,"_indexOf_startingAt_",[cr,(1)]);
2502
- lf=smalltalk.send((smalltalk.String || String),"_lf",[]);
2503
- nextLF=smalltalk.send(self,"_indexOf_startingAt_",[lf,(1)]);
2504
- smalltalk.send((function(){
2505
- return smalltalk.send(start,"__lt_eq",[sz]);
2506
- }),"_whileTrue_",[(function(){
2507
- $1=smalltalk.send(smalltalk.send(nextLF,"__eq",[(0)]),"_and_",[(function(){
2508
- return smalltalk.send(nextCR,"__eq",[(0)]);
2509
- })]);
2510
- if(smalltalk.assert($1)){
2511
- smalltalk.send(aBlock,"_value_value_value_",[start,sz,sz]);
2512
- throw $early=[self];
2524
+ sz=_st(self)._size();
2525
+ cr=_st((smalltalk.String || String))._cr();
2526
+ nextCR=_st(self)._indexOf_startingAt_(cr,(1));
2527
+ lf=_st((smalltalk.String || String))._lf();
2528
+ nextLF=_st(self)._indexOf_startingAt_(lf,(1));
2529
+ $1=(function(){
2530
+ return smalltalk.withContext(function($ctx2) {
2531
+ }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})});
2532
+ $2=(function(){
2533
+ return smalltalk.withContext(function($ctx2) {
2534
+ return smalltalk.withContext(function($ctx3) {
2535
+ }, function($ctx3) {$ctx3.fillBlock({},$ctx1)})}));
2536
+ if(smalltalk.assert($3)){
2537
+ _st(aBlock)._value_value_value_(start,sz,sz);
2538
+ $4=self;
2539
+ throw $early=[$4];
2513
2540
  };
2514
- $2=smalltalk.send(smalltalk.send(nextCR,"__eq",[(0)]),"_or_",[(function(){
2515
- return smalltalk.send(smalltalk.send((0),"__lt",[nextLF]),"_and_",[(function(){
2516
- return smalltalk.send(nextLF,"__lt",[nextCR]);
2517
- })]);
2518
- })]);
2519
- if(smalltalk.assert($2)){
2520
- smalltalk.send(aBlock,"_value_value_value_",[start,smalltalk.send(nextLF,"__minus",[(1)]),nextLF]);
2521
- start=smalltalk.send((1),"__plus",[nextLF]);
2541
+ $5=_st(_st(nextCR).__eq((0)))._or_((function(){
2542
+ return smalltalk.withContext(function($ctx3) {
2543
+ return smalltalk.withContext(function($ctx4) {
2544
+ }, function($ctx4) {$ctx4.fillBlock({},$ctx1)})}));
2545
+ }, function($ctx3) {$ctx3.fillBlock({},$ctx1)})}));
2546
+ $6=(function(){
2547
+ return smalltalk.withContext(function($ctx3) {
2548
+ start=_st((1)).__plus(nextLF);
2522
2549
  start;
2523
- nextLF=smalltalk.send(self,"_indexOf_startingAt_",[lf,start]);
2550
+ nextLF=_st(self)._indexOf_startingAt_(lf,start);
2524
2551
  return nextLF;
2525
- } else {
2526
- $3=smalltalk.send(smalltalk.send((1),"__plus",[nextCR]),"__eq",[nextLF]);
2527
- if(smalltalk.assert($3)){
2528
- smalltalk.send(aBlock,"_value_value_value_",[start,smalltalk.send(nextCR,"__minus",[(1)]),nextLF]);
2529
- start=smalltalk.send((1),"__plus",[nextLF]);
2552
+ }, function($ctx3) {$ctx3.fillBlock({},$ctx1)})});
2553
+ $7=(function(){
2554
+ return smalltalk.withContext(function($ctx3) {
2555
+ if(smalltalk.assert($8)){
2556
+ _st(aBlock)._value_value_value_(start,_st(nextCR).__minus((1)),nextLF);
2557
+ start=_st((1)).__plus(nextLF);
2530
2558
  start;
2531
- nextCR=smalltalk.send(self,"_indexOf_startingAt_",[cr,start]);
2559
+ nextCR=_st(self)._indexOf_startingAt_(cr,start);
2532
2560
  nextCR;
2533
- nextLF=smalltalk.send(self,"_indexOf_startingAt_",[lf,start]);
2561
+ nextLF=_st(self)._indexOf_startingAt_(lf,start);
2534
2562
  return nextLF;
2535
2563
  } else {
2536
- smalltalk.send(aBlock,"_value_value_value_",[start,smalltalk.send(nextCR,"__minus",[(1)]),nextCR]);
2537
- start=smalltalk.send((1),"__plus",[nextCR]);
2564
+ _st(aBlock)._value_value_value_(start,_st(nextCR).__minus((1)),nextCR);
2565
+ start=_st((1)).__plus(nextCR);
2538
2566
  start;
2539
- nextCR=smalltalk.send(self,"_indexOf_startingAt_",[cr,start]);
2567
+ nextCR=_st(self)._indexOf_startingAt_(cr,start);
2540
2568
  return nextCR;
2541
2569
  };
2542
- };
2543
- })]);
2570
+ }, function($ctx3) {$ctx3.fillBlock({},$ctx1)})});
2571
+ return _st($5)._ifTrue_ifFalse_($6,$7);
2572
+ }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})});
2573
+ _st($1)._whileTrue_($2);
2544
2574
  return self}
2545
2575
  catch(e) {if(e===$early)return e[0]; throw e}
2546
- }
2576
+ }, function($ctx1) {$ctx1.fill(self,"lineIndicesDo:",{aBlock:aBlock,cr:cr,lf:lf,start:start,sz:sz,nextLF:nextLF,nextCR:nextCR}, smalltalk.String)})}
2547
2577
  }),
2548
2578
  smalltalk.String);
2549
2579
 
@@ -2553,23 +2583,25 @@ smalltalk.method({
2553
2583
  selector: "lineNumber:",
2554
2584
  fn: function (anIndex){
2555
2585
  var self=this;
2556
- var $1,$2;
2586
+ var lineCount;
2587
+ return smalltalk.withContext(function($ctx1) {
2557
2588
  var $early={};
2558
2589
  try {
2559
- var lineCount;
2560
2590
  lineCount=(0);
2561
- smalltalk.send(self,"_lineIndicesDo_",[(function(start,endWithoutDelimiters,end){
2562
- lineCount=smalltalk.send(lineCount,"__plus",[(1)]);
2563
- $1=smalltalk.send(lineCount,"__eq",[anIndex]);
2564
- if(smalltalk.assert($1)){
2565
- $2=smalltalk.send(self,"_copyFrom_to_",[start,endWithoutDelimiters]);
2566
- throw $early=[$2];
2591
+ $1=self;
2592
+ $2=(function(start,endWithoutDelimiters,end){
2593
+ return smalltalk.withContext(function($ctx2) {
2594
+ $3=_st(lineCount).__eq(anIndex);
2595
+ if(smalltalk.assert($3)){
2596
+ $4=_st(self)._copyFrom_to_(start,endWithoutDelimiters);
2597
+ throw $early=[$4];
2567
2598
  };
2568
- })]);
2599
+ }, function($ctx2) {$ctx2.fillBlock({start:start,endWithoutDelimiters:endWithoutDelimiters,end:end},$ctx1)})});
2600
+ _st($1)._lineIndicesDo_($2);
2569
2601
  return nil;
2570
2602
  }
2571
2603
  catch(e) {if(e===$early)return e[0]; throw e}
2572
- }
2604
+ }, function($ctx1) {$ctx1.fill(self,"lineNumber:",{anIndex:anIndex,lineCount:lineCount}, smalltalk.String)})}
2573
2605
  }),
2574
2606
  smalltalk.String);
2575
2607
 
@@ -2580,12 +2612,14 @@ selector: "lines",
2580
2612
  fn: function (){
2581
2613
  var self=this;
2582
2614
  var lines;
2583
- lines=smalltalk.send((smalltalk.Array || Array),"_new",[]);
2584
- smalltalk.send(self,"_linesDo_",[(function(aLine){
2585
- return smalltalk.send(lines,"_add_",[aLine]);
2586
- })]);
2587
- return lines;
2588
- }
2615
+ return smalltalk.withContext(function($ctx1) {
2616
+ lines=_st((smalltalk.Array || Array))._new();
2617
+ _st(self)._linesDo_((function(aLine){
2618
+ return smalltalk.withContext(function($ctx2) {
2619
+ }, function($ctx2) {$ctx2.fillBlock({aLine:aLine},$ctx1)})}));
2620
+ $1=lines;
2621
+ return $1;
2622
+ }, function($ctx1) {$ctx1.fill(self,"lines",{lines:lines}, smalltalk.String)})}
2589
2623
  }),
2590
2624
  smalltalk.String);
2591
2625
 
@@ -2595,10 +2629,10 @@ smalltalk.method({
2595
2629
  selector: "linesDo:",
2596
2630
  fn: function (aBlock){
2597
2631
  var self=this;
2598
- smalltalk.send(self,"_lineIndicesDo_",[(function(start,endWithoutDelimiters,end){
2599
- return smalltalk.send(aBlock,"_value_",[smalltalk.send(self,"_copyFrom_to_",[start,endWithoutDelimiters])]);
2600
- })]);
2601
- return self}
2632
+ return smalltalk.withContext(function($ctx1) {
2633
+ return smalltalk.withContext(function($ctx2) {
2634
+ }, function($ctx2) {$ctx2.fillBlock({start:start,endWithoutDelimiters:endWithoutDelimiters,end:end},$ctx1)})}));
2635
+ return self}, function($ctx1) {$ctx1.fill(self,"linesDo:",{aBlock:aBlock}, smalltalk.String)})}
2602
2636
  }),
2603
2637
  smalltalk.String);
2604
2638
 
@@ -2608,9 +2642,8 @@ smalltalk.method({
2608
2642
  selector: "match:",
2609
2643
  fn: function (aRegexp){
2610
2644
  var self=this;
2611
- return self.search(aRegexp) != -1;
2612
- ;
2613
- return self}
2645
+ return smalltalk.withContext(function($ctx1) {
2646
+ return self}, function($ctx1) {$ctx1.fill(self,"match:",{aRegexp:aRegexp}, smalltalk.String)})}
2614
2647
  }),
2615
2648
  smalltalk.String);
2616
2649
 
@@ -2620,9 +2653,8 @@ smalltalk.method({
2620
2653
  selector: "matchesOf:",
2621
2654
  fn: function (aRegularExpression){
2622
2655
  var self=this;
2623
- return self.match(aRegularExpression);
2624
- ;
2625
- return self}
2656
+ return smalltalk.withContext(function($ctx1) {
2657
+ return self}, function($ctx1) {$ctx1.fill(self,"matchesOf:",{aRegularExpression:aRegularExpression}, smalltalk.String)})}
2626
2658
  }),
2627
2659
  smalltalk.String);
2628
2660
 
@@ -2632,9 +2664,8 @@ smalltalk.method({
2632
2664
  selector: "printNl",
2633
2665
  fn: function (){
2634
2666
  var self=this;
2635
- console.log(self);
2636
- ;
2637
- return self}
2667
+ return smalltalk.withContext(function($ctx1) {
2668
+ return self}, function($ctx1) {$ctx1.fill(self,"printNl",{}, smalltalk.String)})}
2638
2669
  }),
2639
2670
  smalltalk.String);
2640
2671
 
@@ -2644,10 +2675,10 @@ smalltalk.method({
2644
2675
  selector: "printString",
2645
2676
  fn: function (){
2646
2677
  var self=this;
2647
- var $1;
2648
- $1=smalltalk.send(smalltalk.send("'","__comma",[self]),"__comma",["'"]);
2678
+ return smalltalk.withContext(function($ctx1) {
2679
+ $1=_st(_st("'").__comma(self)).__comma("'");
2649
2680
  return $1;
2650
- }
2681
+ }, function($ctx1) {$ctx1.fill(self,"printString",{}, smalltalk.String)})}
2651
2682
  }),
2652
2683
  smalltalk.String);
2653
2684
 
@@ -2657,10 +2688,10 @@ smalltalk.method({
2657
2688
  selector: "replace:with:",
2658
2689
  fn: function (aString,anotherString){
2659
2690
  var self=this;
2660
- var $1;
2661
- $1=smalltalk.send(self,"_replaceRegexp_with_",[smalltalk.send((smalltalk.RegularExpression || RegularExpression),"_fromString_flag_",[aString,"g"]),anotherString]);
2691
+ return smalltalk.withContext(function($ctx1) {
2692
+ $1=_st(self)._replaceRegexp_with_(_st((smalltalk.RegularExpression || RegularExpression))._fromString_flag_(aString,"g"),anotherString);
2662
2693
  return $1;
2663
- }
2694
+ }, function($ctx1) {$ctx1.fill(self,"replace:with:",{aString:aString,anotherString:anotherString}, smalltalk.String)})}
2664
2695
  }),
2665
2696
  smalltalk.String);
2666
2697
 
@@ -2670,9 +2701,8 @@ smalltalk.method({
2670
2701
  selector: "replaceRegexp:with:",
2671
2702
  fn: function (aRegexp,aString){
2672
2703
  var self=this;
2673
- return self.replace(aRegexp, aString);
2674
- ;
2675
- return self}
2704
+ return smalltalk.withContext(function($ctx1) {
2705
+ return self}, function($ctx1) {$ctx1.fill(self,"replaceRegexp:with:",{aRegexp:aRegexp,aString:aString}, smalltalk.String)})}
2676
2706
  }),
2677
2707
  smalltalk.String);
2678
2708
 
@@ -2682,9 +2712,8 @@ smalltalk.method({
2682
2712
  selector: "reversed",
2683
2713
  fn: function (){
2684
2714
  var self=this;
2685
- return self.split("").reverse().join("");
2686
- ;
2687
- return self}
2715
+ return smalltalk.withContext(function($ctx1) {
2716
+ return self}, function($ctx1) {$ctx1.fill(self,"reversed",{}, smalltalk.String)})}
2688
2717
  }),
2689
2718
  smalltalk.String);
2690
2719
 
@@ -2694,10 +2723,10 @@ smalltalk.method({
2694
2723
  selector: "shallowCopy",
2695
2724
  fn: function (){
2696
2725
  var self=this;
2697
- var $1;
2698
- $1=smalltalk.send(smalltalk.send(self,"_class",[]),"_fromString_",[self]);
2726
+ return smalltalk.withContext(function($ctx1) {
2727
+ $1=_st(_st(self)._class())._fromString_(self);
2699
2728
  return $1;
2700
- }
2729
+ }, function($ctx1) {$ctx1.fill(self,"shallowCopy",{}, smalltalk.String)})}
2701
2730
  }),
2702
2731
  smalltalk.String);
2703
2732
 
@@ -2707,9 +2736,8 @@ smalltalk.method({
2707
2736
  selector: "size",
2708
2737
  fn: function (){
2709
2738
  var self=this;
2710
- return self.length;
2711
- ;
2712
- return self}
2739
+ return smalltalk.withContext(function($ctx1) {
2740
+ return self}, function($ctx1) {$ctx1.fill(self,"size",{}, smalltalk.String)})}
2713
2741
  }),
2714
2742
  smalltalk.String);
2715
2743
 
@@ -2719,9 +2747,8 @@ smalltalk.method({
2719
2747
  selector: "tokenize:",
2720
2748
  fn: function (aString){
2721
2749
  var self=this;
2722
- return self.split(aString);
2723
- ;
2724
- return self}
2750
+ return smalltalk.withContext(function($ctx1) {
2751
+ return self}, function($ctx1) {$ctx1.fill(self,"tokenize:",{aString:aString}, smalltalk.String)})}
2725
2752
  }),
2726
2753
  smalltalk.String);
2727
2754
 
@@ -2731,10 +2758,10 @@ smalltalk.method({
2731
2758
  selector: "trimBoth",
2732
2759
  fn: function (){
2733
2760
  var self=this;
2734
- var $1;
2735
- $1=smalltalk.send(self,"_trimBoth_",["\x5cs"]);
2761
+ return smalltalk.withContext(function($ctx1) {
2762
+ $1=_st(self)._trimBoth_("\x5cs");
2736
2763
  return $1;
2737
- }
2764
+ }, function($ctx1) {$ctx1.fill(self,"trimBoth",{}, smalltalk.String)})}
2738
2765
  }),
2739
2766
  smalltalk.String);
2740
2767
 
@@ -2744,10 +2771,10 @@ smalltalk.method({
2744
2771
  selector: "trimBoth:",
2745
2772
  fn: function (separators){
2746
2773
  var self=this;
2747
- var $1;
2748
- $1=smalltalk.send(smalltalk.send(self,"_trimLeft_",[separators]),"_trimRight_",[separators]);
2774
+ return smalltalk.withContext(function($ctx1) {
2775
+ $1=_st(_st(self)._trimLeft_(separators))._trimRight_(separators);
2749
2776
  return $1;
2750
- }
2777
+ }, function($ctx1) {$ctx1.fill(self,"trimBoth:",{separators:separators}, smalltalk.String)})}
2751
2778
  }),
2752
2779
  smalltalk.String);
2753
2780
 
@@ -2757,10 +2784,10 @@ smalltalk.method({
2757
2784
  selector: "trimLeft",
2758
2785
  fn: function (){
2759
2786
  var self=this;
2760
- var $1;
2761
- $1=smalltalk.send(self,"_trimLeft_",["\x5cs"]);
2787
+ return smalltalk.withContext(function($ctx1) {
2788
+ $1=_st(self)._trimLeft_("\x5cs");
2762
2789
  return $1;
2763
- }
2790
+ }, function($ctx1) {$ctx1.fill(self,"trimLeft",{}, smalltalk.String)})}
2764
2791
  }),
2765
2792
  smalltalk.String);
2766
2793
 
@@ -2770,10 +2797,10 @@ smalltalk.method({
2770
2797
  selector: "trimLeft:",
2771
2798
  fn: function (separators){
2772
2799
  var self=this;
2773
- var $1;
2774
- $1=smalltalk.send(self,"_replaceRegexp_with_",[smalltalk.send((smalltalk.RegularExpression || RegularExpression),"_fromString_flag_",[smalltalk.send(smalltalk.send("^[","__comma",[separators]),"__comma",["]+"]),"g"]),""]);
2800
+ return smalltalk.withContext(function($ctx1) {
2801
+ $1=_st(self)._replaceRegexp_with_(_st((smalltalk.RegularExpression || RegularExpression))._fromString_flag_(_st(_st("^[").__comma(separators)).__comma("]+"),"g"),"");
2775
2802
  return $1;
2776
- }
2803
+ }, function($ctx1) {$ctx1.fill(self,"trimLeft:",{separators:separators}, smalltalk.String)})}
2777
2804
  }),
2778
2805
  smalltalk.String);
2779
2806
 
@@ -2783,10 +2810,10 @@ smalltalk.method({
2783
2810
  selector: "trimRight",
2784
2811
  fn: function (){
2785
2812
  var self=this;
2786
- var $1;
2787
- $1=smalltalk.send(self,"_trimRight_",["\x5cs"]);
2813
+ return smalltalk.withContext(function($ctx1) {
2814
+ $1=_st(self)._trimRight_("\x5cs");
2788
2815
  return $1;
2789
- }
2816
+ }, function($ctx1) {$ctx1.fill(self,"trimRight",{}, smalltalk.String)})}
2790
2817
  }),
2791
2818
  smalltalk.String);
2792
2819
 
@@ -2796,10 +2823,10 @@ smalltalk.method({
2796
2823
  selector: "trimRight:",
2797
2824
  fn: function (separators){
2798
2825
  var self=this;
2799
- var $1;
2800
- $1=smalltalk.send(self,"_replaceRegexp_with_",[smalltalk.send((smalltalk.RegularExpression || RegularExpression),"_fromString_flag_",[smalltalk.send(smalltalk.send("[","__comma",[separators]),"__comma",["]+$"]),"g"]),""]);
2826
+ return smalltalk.withContext(function($ctx1) {
2827
+ $1=_st(self)._replaceRegexp_with_(_st((smalltalk.RegularExpression || RegularExpression))._fromString_flag_(_st(_st("[").__comma(separators)).__comma("]+$"),"g"),"");
2801
2828
  return $1;
2802
- }
2829
+ }, function($ctx1) {$ctx1.fill(self,"trimRight:",{separators:separators}, smalltalk.String)})}
2803
2830
  }),
2804
2831
  smalltalk.String);
2805
2832
 
@@ -2809,9 +2836,8 @@ smalltalk.method({
2809
2836
  selector: "unescaped",
2810
2837
  fn: function (){
2811
2838
  var self=this;
2812
- return unescape(self);
2813
- ;
2814
- return self}
2839
+ return smalltalk.withContext(function($ctx1) {
2840
+ return self}, function($ctx1) {$ctx1.fill(self,"unescaped",{}, smalltalk.String)})}
2815
2841
  }),
2816
2842
  smalltalk.String);
2817
2843
 
@@ -2821,9 +2847,8 @@ smalltalk.method({
2821
2847
  selector: "withIndexDo:",
2822
2848
  fn: function (aBlock){
2823
2849
  var self=this;
2824
- for(var i=0;i<self.length;i++){aBlock(self.charAt(i), i+1);};
2825
- ;
2826
- return self}
2850
+ return smalltalk.withContext(function($ctx1) {
2851
+ return self}, function($ctx1) {$ctx1.fill(self,"withIndexDo:",{aBlock:aBlock}, smalltalk.String)})}
2827
2852
  }),
2828
2853
  smalltalk.String);
2829
2854
 
@@ -2834,9 +2859,8 @@ smalltalk.method({
2834
2859
  selector: "cr",
2835
2860
  fn: function (){
2836
2861
  var self=this;
2837
- return '\r';
2838
- ;
2839
- return self}
2862
+ return smalltalk.withContext(function($ctx1) {
2863
+ return self}, function($ctx1) {$ctx1.fill(self,"cr",{}, smalltalk.String.klass)})}
2840
2864
  }),
2841
2865
  smalltalk.String.klass);
2842
2866
 
@@ -2846,9 +2870,8 @@ smalltalk.method({
2846
2870
  selector: "crlf",
2847
2871
  fn: function (){
2848
2872
  var self=this;
2849
- return '\r\n';
2850
- ;
2851
- return self}
2873
+ return smalltalk.withContext(function($ctx1) {
2874
+ return self}, function($ctx1) {$ctx1.fill(self,"crlf",{}, smalltalk.String.klass)})}
2852
2875
  }),
2853
2876
  smalltalk.String.klass);
2854
2877
 
@@ -2858,9 +2881,8 @@ smalltalk.method({
2858
2881
  selector: "fromCharCode:",
2859
2882
  fn: function (anInteger){
2860
2883
  var self=this;
2861
- return String.fromCharCode(anInteger);
2862
- ;
2863
- return self}
2884
+ return smalltalk.withContext(function($ctx1) {
2885
+ return self}, function($ctx1) {$ctx1.fill(self,"fromCharCode:",{anInteger:anInteger}, smalltalk.String.klass)})}
2864
2886
  }),
2865
2887
  smalltalk.String.klass);
2866
2888
 
@@ -2870,9 +2892,8 @@ smalltalk.method({
2870
2892
  selector: "fromString:",
2871
2893
  fn: function (aString){
2872
2894
  var self=this;
2873
- return new self.fn(aString);
2874
- ;
2875
- return self}
2895
+ return smalltalk.withContext(function($ctx1) {
2896
+ return self}, function($ctx1) {$ctx1.fill(self,"fromString:",{aString:aString}, smalltalk.String.klass)})}
2876
2897
  }),
2877
2898
  smalltalk.String.klass);
2878
2899
 
@@ -2882,9 +2903,8 @@ smalltalk.method({
2882
2903
  selector: "lf",
2883
2904
  fn: function (){
2884
2905
  var self=this;
2885
- return '\n';
2886
- ;
2887
- return self}
2906
+ return smalltalk.withContext(function($ctx1) {
2907
+ return self}, function($ctx1) {$ctx1.fill(self,"lf",{}, smalltalk.String.klass)})}
2888
2908
  }),
2889
2909
  smalltalk.String.klass);
2890
2910
 
@@ -2894,9 +2914,8 @@ smalltalk.method({
2894
2914
  selector: "space",
2895
2915
  fn: function (){
2896
2916
  var self=this;
2897
- return ' ';
2898
- ;
2899
- return self}
2917
+ return smalltalk.withContext(function($ctx1) {
2918
+ return self}, function($ctx1) {$ctx1.fill(self,"space",{}, smalltalk.String.klass)})}
2900
2919
  }),
2901
2920
  smalltalk.String.klass);
2902
2921
 
@@ -2906,8 +2925,10 @@ smalltalk.method({
2906
2925
  selector: "streamClass",
2907
2926
  fn: function (){
2908
2927
  var self=this;
2909
- return (smalltalk.StringStream || StringStream);
2910
- }
2928
+ return smalltalk.withContext(function($ctx1) {
2929
+ $1=(smalltalk.StringStream || StringStream);
2930
+ return $1;
2931
+ }, function($ctx1) {$ctx1.fill(self,"streamClass",{}, smalltalk.String.klass)})}
2911
2932
  }),
2912
2933
  smalltalk.String.klass);
2913
2934
 
@@ -2917,13 +2938,13 @@ smalltalk.method({
2917
2938
  selector: "streamContents:",
2918
2939
  fn: function (blockWithArg){
2919
2940
  var self=this;
2920
- var $1;
2921
2941
  var stream;
2922
- stream=smalltalk.send(smalltalk.send(self,"_streamClass",[]),"_on_",[smalltalk.send((smalltalk.String || String),"_new",[])]);
2923
- smalltalk.send(blockWithArg,"_value_",[stream]);
2924
- $1=smalltalk.send(stream,"_contents",[]);
2942
+ return smalltalk.withContext(function($ctx1) {
2943
+ stream=_st(_st(self)._streamClass())._on_(_st((smalltalk.String || String))._new());
2944
+ _st(blockWithArg)._value_(stream);
2945
+ $1=_st(stream)._contents();
2925
2946
  return $1;
2926
- }
2947
+ }, function($ctx1) {$ctx1.fill(self,"streamContents:",{blockWithArg:blockWithArg,stream:stream}, smalltalk.String.klass)})}
2927
2948
  }),
2928
2949
  smalltalk.String.klass);
2929
2950
 
@@ -2933,9 +2954,8 @@ smalltalk.method({
2933
2954
  selector: "tab",
2934
2955
  fn: function (){
2935
2956
  var self=this;
2936
- return '\t';
2937
- ;
2938
- return self}
2957
+ return smalltalk.withContext(function($ctx1) {
2958
+ return self}, function($ctx1) {$ctx1.fill(self,"tab",{}, smalltalk.String.klass)})}
2939
2959
  }),
2940
2960
  smalltalk.String.klass);
2941
2961
 
@@ -2945,9 +2965,8 @@ smalltalk.method({
2945
2965
  selector: "value:",
2946
2966
  fn: function (aUTFCharCode){
2947
2967
  var self=this;
2948
- return String.fromCharCode(aUTFCharCode);;
2949
- ;
2950
- return self}
2968
+ return smalltalk.withContext(function($ctx1) {
2969
+ return self}, function($ctx1) {$ctx1.fill(self,"value:",{aUTFCharCode:aUTFCharCode}, smalltalk.String.klass)})}
2951
2970
  }),
2952
2971
  smalltalk.String.klass);
2953
2972
 
@@ -2959,10 +2978,10 @@ smalltalk.method({
2959
2978
  selector: "<",
2960
2979
  fn: function (aSymbol){
2961
2980
  var self=this;
2962
- var $1;
2963
- $1=smalltalk.send(smalltalk.send(self,"_asString",[]),"__lt",[smalltalk.send(aSymbol,"_asString",[])]);
2981
+ return smalltalk.withContext(function($ctx1) {
2982
+ $1=_st(_st(self)._asString()).__lt(_st(aSymbol)._asString());
2964
2983
  return $1;
2965
- }
2984
+ }, function($ctx1) {$ctx1.fill(self,"<",{aSymbol:aSymbol}, smalltalk.Symbol)})}
2966
2985
  }),
2967
2986
  smalltalk.Symbol);
2968
2987
 
@@ -2972,10 +2991,10 @@ smalltalk.method({
2972
2991
  selector: "<=",
2973
2992
  fn: function (aSymbol){
2974
2993
  var self=this;
2975
- var $1;
2976
- $1=smalltalk.send(smalltalk.send(self,"_asString",[]),"__lt_eq",[smalltalk.send(aSymbol,"_asString",[])]);
2994
+ return smalltalk.withContext(function($ctx1) {
2995
+ $1=_st(_st(self)._asString()).__lt_eq(_st(aSymbol)._asString());
2977
2996
  return $1;
2978
- }
2997
+ }, function($ctx1) {$ctx1.fill(self,"<=",{aSymbol:aSymbol}, smalltalk.Symbol)})}
2979
2998
  }),
2980
2999
  smalltalk.Symbol);
2981
3000
 
@@ -2985,14 +3004,14 @@ smalltalk.method({
2985
3004
  selector: "=",
2986
3005
  fn: function (aSymbol){
2987
3006
  var self=this;
2988
- var $1,$2;
2989
- $1=smalltalk.send(smalltalk.send(aSymbol,"_class",[]),"__eq",[smalltalk.send(self,"_class",[])]);
3007
+ return smalltalk.withContext(function($ctx1) {
3008
+ $1=_st(_st(aSymbol)._class()).__eq(_st(self)._class());
2990
3009
  if(! smalltalk.assert($1)){
2991
3010
  return false;
2992
3011
  };
2993
- $2=smalltalk.send(smalltalk.send(self,"_asString",[]),"__eq",[smalltalk.send(aSymbol,"_asString",[])]);
3012
+ $2=_st(_st(self)._asString()).__eq(_st(aSymbol)._asString());
2994
3013
  return $2;
2995
- }
3014
+ }, function($ctx1) {$ctx1.fill(self,"=",{aSymbol:aSymbol}, smalltalk.Symbol)})}
2996
3015
  }),
2997
3016
  smalltalk.Symbol);
2998
3017
 
@@ -3002,10 +3021,10 @@ smalltalk.method({
3002
3021
  selector: ">",
3003
3022
  fn: function (aSymbol){
3004
3023
  var self=this;
3005
- var $1;
3006
- $1=smalltalk.send(smalltalk.send(self,"_asString",[]),"__gt",[smalltalk.send(aSymbol,"_asString",[])]);
3024
+ return smalltalk.withContext(function($ctx1) {
3025
+ $1=_st(_st(self)._asString()).__gt(_st(aSymbol)._asString());
3007
3026
  return $1;
3008
- }
3027
+ }, function($ctx1) {$ctx1.fill(self,">",{aSymbol:aSymbol}, smalltalk.Symbol)})}
3009
3028
  }),
3010
3029
  smalltalk.Symbol);
3011
3030
 
@@ -3015,10 +3034,10 @@ smalltalk.method({
3015
3034
  selector: ">=",
3016
3035
  fn: function (aSymbol){
3017
3036
  var self=this;
3018
- var $1;
3019
- $1=smalltalk.send(smalltalk.send(self,"_asString",[]),"__gt_eq",[smalltalk.send(aSymbol,"_asString",[])]);
3037
+ return smalltalk.withContext(function($ctx1) {
3038
+ $1=_st(_st(self)._asString()).__gt_eq(_st(aSymbol)._asString());
3020
3039
  return $1;
3021
- }
3040
+ }, function($ctx1) {$ctx1.fill(self,">=",{aSymbol:aSymbol}, smalltalk.Symbol)})}
3022
3041
  }),
3023
3042
  smalltalk.Symbol);
3024
3043
 
@@ -3028,10 +3047,10 @@ smalltalk.method({
3028
3047
  selector: "asJSON",
3029
3048
  fn: function (){
3030
3049
  var self=this;
3031
- var $1;
3032
- $1=smalltalk.send(smalltalk.send(self,"_asString",[]),"_asJSON",[]);
3050
+ return smalltalk.withContext(function($ctx1) {
3051
+ $1=_st(_st(self)._asString())._asJSON();
3033
3052
  return $1;
3034
- }
3053
+ }, function($ctx1) {$ctx1.fill(self,"asJSON",{}, smalltalk.Symbol)})}
3035
3054
  }),
3036
3055
  smalltalk.Symbol);
3037
3056
 
@@ -3041,10 +3060,10 @@ smalltalk.method({
3041
3060
  selector: "asJavascript",
3042
3061
  fn: function (){
3043
3062
  var self=this;
3044
- var $1;
3045
- $1=smalltalk.send(smalltalk.send("smalltalk.symbolFor(\x22","__comma",[smalltalk.send(self,"_asString",[])]),"__comma",["\x22)"]);
3063
+ return smalltalk.withContext(function($ctx1) {
3064
+ $1=_st(_st("smalltalk.symbolFor(\x22").__comma(_st(self)._asString())).__comma("\x22)");
3046
3065
  return $1;
3047
- }
3066
+ }, function($ctx1) {$ctx1.fill(self,"asJavascript",{}, smalltalk.Symbol)})}
3048
3067
  }),
3049
3068
  smalltalk.Symbol);
3050
3069
 
@@ -3054,10 +3073,10 @@ smalltalk.method({
3054
3073
  selector: "asSelector",
3055
3074
  fn: function (){
3056
3075
  var self=this;
3057
- var $1;
3058
- $1=smalltalk.send(smalltalk.send(self,"_asString",[]),"_asSelector",[]);
3076
+ return smalltalk.withContext(function($ctx1) {
3077
+ $1=_st(_st(self)._asString())._asSelector();
3059
3078
  return $1;
3060
- }
3079
+ }, function($ctx1) {$ctx1.fill(self,"asSelector",{}, smalltalk.Symbol)})}
3061
3080
  }),
3062
3081
  smalltalk.Symbol);
3063
3082
 
@@ -3067,9 +3086,21 @@ smalltalk.method({
3067
3086
  selector: "asString",
3068
3087
  fn: function (){
3069
3088
  var self=this;
3070
- return self.value;
3071
- ;
3072
- return self}
3089
+ return smalltalk.withContext(function($ctx1) {
3090
+ return self}, function($ctx1) {$ctx1.fill(self,"asString",{}, smalltalk.Symbol)})}
3091
+ }),
3092
+ smalltalk.Symbol);
3093
+
3094
+ smalltalk.addMethod(
3095
+ "_asSuperSelector",
3096
+ smalltalk.method({
3097
+ selector: "asSuperSelector",
3098
+ fn: function (){
3099
+ var self=this;
3100
+ return smalltalk.withContext(function($ctx1) {
3101
+ $1=_st(_st(self)._asString())._asSuperSelector();
3102
+ return $1;
3103
+ }, function($ctx1) {$ctx1.fill(self,"asSuperSelector",{}, smalltalk.Symbol)})}
3073
3104
  }),
3074
3105
  smalltalk.Symbol);
3075
3106
 
@@ -3079,8 +3110,10 @@ smalltalk.method({
3079
3110
  selector: "asSymbol",
3080
3111
  fn: function (){
3081
3112
  var self=this;
3082
- return self;
3083
- }
3113
+ return smalltalk.withContext(function($ctx1) {
3114
+ $1=self;
3115
+ return $1;
3116
+ }, function($ctx1) {$ctx1.fill(self,"asSymbol",{}, smalltalk.Symbol)})}
3084
3117
  }),
3085
3118
  smalltalk.Symbol);
3086
3119
 
@@ -3090,10 +3123,10 @@ smalltalk.method({
3090
3123
  selector: "at:ifAbsent:",
3091
3124
  fn: function (anIndex,aBlock){
3092
3125
  var self=this;
3093
- var $1;
3094
- $1=smalltalk.send(smalltalk.send(self,"_asString",[]),"_at_ifAbsent_",[anIndex,aBlock]);
3126
+ return smalltalk.withContext(function($ctx1) {
3127
+ $1=_st(_st(self)._asString())._at_ifAbsent_(anIndex,aBlock);
3095
3128
  return $1;
3096
- }
3129
+ }, function($ctx1) {$ctx1.fill(self,"at:ifAbsent:",{anIndex:anIndex,aBlock:aBlock}, smalltalk.Symbol)})}
3097
3130
  }),
3098
3131
  smalltalk.Symbol);
3099
3132
 
@@ -3103,10 +3136,10 @@ smalltalk.method({
3103
3136
  selector: "collect:",
3104
3137
  fn: function (aBlock){
3105
3138
  var self=this;
3106
- var $1;
3107
- $1=smalltalk.send(smalltalk.send(smalltalk.send(self,"_asString",[]),"_collect_",[aBlock]),"_asSymbol",[]);
3139
+ return smalltalk.withContext(function($ctx1) {
3140
+ $1=_st(_st(_st(self)._asString())._collect_(aBlock))._asSymbol();
3108
3141
  return $1;
3109
- }
3142
+ }, function($ctx1) {$ctx1.fill(self,"collect:",{aBlock:aBlock}, smalltalk.Symbol)})}
3110
3143
  }),
3111
3144
  smalltalk.Symbol);
3112
3145
 
@@ -3116,10 +3149,10 @@ smalltalk.method({
3116
3149
  selector: "copyFrom:to:",
3117
3150
  fn: function (anIndex,anotherIndex){
3118
3151
  var self=this;
3119
- var $1;
3120
- $1=smalltalk.send(smalltalk.send(self,"_class",[]),"_fromString_",[smalltalk.send(smalltalk.send(self,"_asString",[]),"_copyFrom_to_",[anIndex,anotherIndex])]);
3152
+ return smalltalk.withContext(function($ctx1) {
3153
+ $1=_st(_st(self)._class())._fromString_(_st(_st(self)._asString())._copyFrom_to_(anIndex,anotherIndex));
3121
3154
  return $1;
3122
- }
3155
+ }, function($ctx1) {$ctx1.fill(self,"copyFrom:to:",{anIndex:anIndex,anotherIndex:anotherIndex}, smalltalk.Symbol)})}
3123
3156
  }),
3124
3157
  smalltalk.Symbol);
3125
3158
 
@@ -3129,8 +3162,10 @@ smalltalk.method({
3129
3162
  selector: "deepCopy",
3130
3163
  fn: function (){
3131
3164
  var self=this;
3132
- return self;
3133
- }
3165
+ return smalltalk.withContext(function($ctx1) {
3166
+ $1=self;
3167
+ return $1;
3168
+ }, function($ctx1) {$ctx1.fill(self,"deepCopy",{}, smalltalk.Symbol)})}
3134
3169
  }),
3135
3170
  smalltalk.Symbol);
3136
3171
 
@@ -3140,10 +3175,10 @@ smalltalk.method({
3140
3175
  selector: "detect:",
3141
3176
  fn: function (aBlock){
3142
3177
  var self=this;
3143
- var $1;
3144
- $1=smalltalk.send(smalltalk.send(self,"_asString",[]),"_detect_",[aBlock]);
3178
+ return smalltalk.withContext(function($ctx1) {
3179
+ $1=_st(_st(self)._asString())._detect_(aBlock);
3145
3180
  return $1;
3146
- }
3181
+ }, function($ctx1) {$ctx1.fill(self,"detect:",{aBlock:aBlock}, smalltalk.Symbol)})}
3147
3182
  }),
3148
3183
  smalltalk.Symbol);
3149
3184
 
@@ -3153,8 +3188,8 @@ smalltalk.method({
3153
3188
  selector: "do:",
3154
3189
  fn: function (aBlock){
3155
3190
  var self=this;
3156
- smalltalk.send(smalltalk.send(self,"_asString",[]),"_do_",[aBlock]);
3157
- return self}
3191
+ return smalltalk.withContext(function($ctx1) {
3192
+ return self}, function($ctx1) {$ctx1.fill(self,"do:",{aBlock:aBlock}, smalltalk.Symbol)})}
3158
3193
  }),
3159
3194
  smalltalk.Symbol);
3160
3195
 
@@ -3164,8 +3199,8 @@ smalltalk.method({
3164
3199
  selector: "isSymbol",
3165
3200
  fn: function (){
3166
3201
  var self=this;
3167
- return true;
3168
- }
3202
+ return smalltalk.withContext(function($ctx1) {
3203
+ }, function($ctx1) {$ctx1.fill(self,"isSymbol",{}, smalltalk.Symbol)})}
3169
3204
  }),
3170
3205
  smalltalk.Symbol);
3171
3206
 
@@ -3175,10 +3210,10 @@ smalltalk.method({
3175
3210
  selector: "printString",
3176
3211
  fn: function (){
3177
3212
  var self=this;
3178
- var $1;
3179
- $1=smalltalk.send("#","__comma",[smalltalk.send(self,"_asString",[])]);
3213
+ return smalltalk.withContext(function($ctx1) {
3214
+ $1=_st("#").__comma(_st(self)._asString());
3180
3215
  return $1;
3181
- }
3216
+ }, function($ctx1) {$ctx1.fill(self,"printString",{}, smalltalk.Symbol)})}
3182
3217
  }),
3183
3218
  smalltalk.Symbol);
3184
3219
 
@@ -3188,10 +3223,10 @@ smalltalk.method({
3188
3223
  selector: "select:",
3189
3224
  fn: function (aBlock){
3190
3225
  var self=this;
3191
- var $1;
3192
- $1=smalltalk.send(smalltalk.send(smalltalk.send(self,"_asString",[]),"_select_",[aBlock]),"_asSymbol",[]);
3226
+ return smalltalk.withContext(function($ctx1) {
3227
+ $1=_st(_st(_st(self)._asString())._select_(aBlock))._asSymbol();
3193
3228
  return $1;
3194
- }
3229
+ }, function($ctx1) {$ctx1.fill(self,"select:",{aBlock:aBlock}, smalltalk.Symbol)})}
3195
3230
  }),
3196
3231
  smalltalk.Symbol);
3197
3232
 
@@ -3201,8 +3236,10 @@ smalltalk.method({
3201
3236
  selector: "shallowCopy",
3202
3237
  fn: function (){
3203
3238
  var self=this;
3204
- return self;
3205
- }
3239
+ return smalltalk.withContext(function($ctx1) {
3240
+ $1=self;
3241
+ return $1;
3242
+ }, function($ctx1) {$ctx1.fill(self,"shallowCopy",{}, smalltalk.Symbol)})}
3206
3243
  }),
3207
3244
  smalltalk.Symbol);
3208
3245
 
@@ -3212,10 +3249,10 @@ smalltalk.method({
3212
3249
  selector: "size",
3213
3250
  fn: function (){
3214
3251
  var self=this;
3215
- var $1;
3216
- $1=smalltalk.send(smalltalk.send(self,"_asString",[]),"_size",[]);
3252
+ return smalltalk.withContext(function($ctx1) {
3253
+ $1=_st(_st(self)._asString())._size();
3217
3254
  return $1;
3218
- }
3255
+ }, function($ctx1) {$ctx1.fill(self,"size",{}, smalltalk.Symbol)})}
3219
3256
  }),
3220
3257
  smalltalk.Symbol);
3221
3258
 
@@ -3225,10 +3262,10 @@ smalltalk.method({
3225
3262
  selector: "value:",
3226
3263
  fn: function (anObject){
3227
3264
  var self=this;
3228
- var $1;
3229
- $1=smalltalk.send(anObject,"_perform_",[self]);
3265
+ return smalltalk.withContext(function($ctx1) {
3266
+ $1=_st(anObject)._perform_(self);
3230
3267
  return $1;
3231
- }
3268
+ }, function($ctx1) {$ctx1.fill(self,"value:",{anObject:anObject}, smalltalk.Symbol)})}
3232
3269
  }),
3233
3270
  smalltalk.Symbol);
3234
3271
 
@@ -3238,8 +3275,8 @@ smalltalk.method({
3238
3275
  selector: "withIndexDo:",
3239
3276
  fn: function (aBlock){
3240
3277
  var self=this;
3241
- smalltalk.send(smalltalk.send(self,"_asString",[]),"_withIndexDo_",[aBlock]);
3242
- return self}
3278
+ return smalltalk.withContext(function($ctx1) {
3279
+ return self}, function($ctx1) {$ctx1.fill(self,"withIndexDo:",{aBlock:aBlock}, smalltalk.Symbol)})}
3243
3280
  }),
3244
3281
  smalltalk.Symbol);
3245
3282
 
@@ -3250,8 +3287,8 @@ smalltalk.method({
3250
3287
  selector: "basicNew",
3251
3288
  fn: function (){
3252
3289
  var self=this;
3253
- smalltalk.send(self,"_shouldNotImplement",[]);
3254
- return self}
3290
+ return smalltalk.withContext(function($ctx1) {
3291
+ return self}, function($ctx1) {$ctx1.fill(self,"basicNew",{}, smalltalk.Symbol.klass)})}
3255
3292
  }),
3256
3293
  smalltalk.Symbol.klass);
3257
3294
 
@@ -3261,10 +3298,10 @@ smalltalk.method({
3261
3298
  selector: "fromString:",
3262
3299
  fn: function (aString){
3263
3300
  var self=this;
3264
- var $1;
3265
- $1=smalltalk.send(self,"_lookup_",[aString]);
3301
+ return smalltalk.withContext(function($ctx1) {
3302
+ $1=_st(self)._lookup_(aString);
3266
3303
  return $1;
3267
- }
3304
+ }, function($ctx1) {$ctx1.fill(self,"fromString:",{aString:aString}, smalltalk.Symbol.klass)})}
3268
3305
  }),
3269
3306
  smalltalk.Symbol.klass);
3270
3307
 
@@ -3274,9 +3311,8 @@ smalltalk.method({
3274
3311
  selector: "lookup:",
3275
3312
  fn: function (aString){
3276
3313
  var self=this;
3277
- return smalltalk.symbolFor(aString);;
3278
- ;
3279
- return self}
3314
+ return smalltalk.withContext(function($ctx1) {
3315
+ return self}, function($ctx1) {$ctx1.fill(self,"lookup:",{aString:aString}, smalltalk.Symbol.klass)})}
3280
3316
  }),
3281
3317
  smalltalk.Symbol.klass);
3282
3318
 
@@ -3288,12 +3324,12 @@ smalltalk.method({
3288
3324
  selector: "=",
3289
3325
  fn: function (aCollection){
3290
3326
  var self=this;
3291
- var $1;
3292
- $1=smalltalk.send(smalltalk.send(smalltalk.send(self,"_class",[]),"__eq",[smalltalk.send(aCollection,"_class",[])]),"_and_",[(function(){
3293
- return smalltalk.send(self["@elements"],"__eq",[smalltalk.send(aCollection,"_asArray",[])]);
3294
- })]);
3327
+ return smalltalk.withContext(function($ctx1) {
3328
+ $1=_st(_st(_st(self)._class()).__eq(_st(aCollection)._class()))._and_((function(){
3329
+ return smalltalk.withContext(function($ctx2) {
3330
+ }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
3295
3331
  return $1;
3296
- }
3332
+ }, function($ctx1) {$ctx1.fill(self,"=",{aCollection:aCollection}, smalltalk.Set)})}
3297
3333
  }),
3298
3334
  smalltalk.Set);
3299
3335
 
@@ -3303,7 +3339,7 @@ smalltalk.method({
3303
3339
  selector: "add:",
3304
3340
  fn: function (anObject){
3305
3341
  var self=this;
3306
-
3342
+ return smalltalk.withContext(function($ctx1) {
3307
3343
  var found;
3308
3344
  for(var i=0; i < self['@elements'].length; i++) {
3309
3345
  if(anObject == self['@elements'][i]) {
@@ -3313,8 +3349,7 @@ var self=this;
3313
3349
  }
3314
3350
  if(!found) {self['@elements'].push(anObject)}
3315
3351
  ;
3316
- ;
3317
- return self}
3352
+ return self}, function($ctx1) {$ctx1.fill(self,"add:",{anObject:anObject}, smalltalk.Set)})}
3318
3353
  }),
3319
3354
  smalltalk.Set);
3320
3355
 
@@ -3324,10 +3359,10 @@ smalltalk.method({
3324
3359
  selector: "asArray",
3325
3360
  fn: function (){
3326
3361
  var self=this;
3327
- var $1;
3328
- $1=smalltalk.send(self["@elements"],"_copy",[]);
3362
+ return smalltalk.withContext(function($ctx1) {
3363
+ $1=_st(self["@elements"])._copy();
3329
3364
  return $1;
3330
- }
3365
+ }, function($ctx1) {$ctx1.fill(self,"asArray",{}, smalltalk.Set)})}
3331
3366
  }),
3332
3367
  smalltalk.Set);
3333
3368
 
@@ -3337,10 +3372,10 @@ smalltalk.method({
3337
3372
  selector: "detect:ifNone:",
3338
3373
  fn: function (aBlock,anotherBlock){
3339
3374
  var self=this;
3340
- var $1;
3341
- $1=smalltalk.send(self["@elements"],"_detect_ifNone_",[aBlock,anotherBlock]);
3375
+ return smalltalk.withContext(function($ctx1) {
3376
+ $1=_st(self["@elements"])._detect_ifNone_(aBlock,anotherBlock);
3342
3377
  return $1;
3343
- }
3378
+ }, function($ctx1) {$ctx1.fill(self,"detect:ifNone:",{aBlock:aBlock,anotherBlock:anotherBlock}, smalltalk.Set)})}
3344
3379
  }),
3345
3380
  smalltalk.Set);
3346
3381
 
@@ -3350,8 +3385,8 @@ smalltalk.method({
3350
3385
  selector: "do:",
3351
3386
  fn: function (aBlock){
3352
3387
  var self=this;
3353
- smalltalk.send(self["@elements"],"_do_",[aBlock]);
3354
- return self}
3388
+ return smalltalk.withContext(function($ctx1) {
3389
+ return self}, function($ctx1) {$ctx1.fill(self,"do:",{aBlock:aBlock}, smalltalk.Set)})}
3355
3390
  }),
3356
3391
  smalltalk.Set);
3357
3392
 
@@ -3361,10 +3396,10 @@ smalltalk.method({
3361
3396
  selector: "includes:",
3362
3397
  fn: function (anObject){
3363
3398
  var self=this;
3364
- var $1;
3365
- $1=smalltalk.send(self["@elements"],"_includes_",[anObject]);
3399
+ return smalltalk.withContext(function($ctx1) {
3400
+ $1=_st(self["@elements"])._includes_(anObject);
3366
3401
  return $1;
3367
- }
3402
+ }, function($ctx1) {$ctx1.fill(self,"includes:",{anObject:anObject}, smalltalk.Set)})}
3368
3403
  }),
3369
3404
  smalltalk.Set);
3370
3405
 
@@ -3374,9 +3409,9 @@ smalltalk.method({
3374
3409
  selector: "initialize",
3375
3410
  fn: function (){
3376
3411
  var self=this;
3377
- smalltalk.send(self,"_initialize",[],smalltalk.Collection);
3412
+ return smalltalk.withContext(function($ctx1) {
3378
3413
  self["@elements"]=[];
3379
- return self}
3414
+ return self}, function($ctx1) {$ctx1.fill(self,"initialize",{}, smalltalk.Set)})}
3380
3415
  }),
3381
3416
  smalltalk.Set);
3382
3417
 
@@ -3386,8 +3421,8 @@ smalltalk.method({
3386
3421
  selector: "remove:",
3387
3422
  fn: function (anObject){
3388
3423
  var self=this;
3389
- smalltalk.send(self["@elements"],"_remove_",[anObject]);
3390
- return self}
3424
+ return smalltalk.withContext(function($ctx1) {
3425
+ return self}, function($ctx1) {$ctx1.fill(self,"remove:",{anObject:anObject}, smalltalk.Set)})}
3391
3426
  }),
3392
3427
  smalltalk.Set);
3393
3428
 
@@ -3397,17 +3432,20 @@ smalltalk.method({
3397
3432
  selector: "select:",
3398
3433
  fn: function (aBlock){
3399
3434
  var self=this;
3400
- var $1;
3401
3435
  var collection;
3402
- collection=smalltalk.send(smalltalk.send(self,"_class",[]),"_new",[]);
3403
- smalltalk.send(self,"_do_",[(function(each){
3404
- $1=smalltalk.send(aBlock,"_value_",[each]);
3405
- if(smalltalk.assert($1)){
3406
- return smalltalk.send(collection,"_add_",[each]);
3436
+ return smalltalk.withContext(function($ctx1) {
3437
+ collection=_st(_st(self)._class())._new();
3438
+ $1=self;
3439
+ $2=(function(each){
3440
+ return smalltalk.withContext(function($ctx2) {
3441
+ if(smalltalk.assert($3)){
3442
+ return _st(collection)._add_(each);
3407
3443
  };
3408
- })]);
3409
- return collection;
3410
- }
3444
+ }, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})});
3445
+ _st($1)._do_($2);
3446
+ $4=collection;
3447
+ return $4;
3448
+ }, function($ctx1) {$ctx1.fill(self,"select:",{aBlock:aBlock,collection:collection}, smalltalk.Set)})}
3411
3449
  }),
3412
3450
  smalltalk.Set);
3413
3451
 
@@ -3417,10 +3455,10 @@ smalltalk.method({
3417
3455
  selector: "size",
3418
3456
  fn: function (){
3419
3457
  var self=this;
3420
- var $1;
3421
- $1=smalltalk.send(self["@elements"],"_size",[]);
3458
+ return smalltalk.withContext(function($ctx1) {
3459
+ $1=_st(self["@elements"])._size();
3422
3460
  return $1;
3423
- }
3461
+ }, function($ctx1) {$ctx1.fill(self,"size",{}, smalltalk.Set)})}
3424
3462
  }),
3425
3463
  smalltalk.Set);
3426
3464
 
@@ -3433,8 +3471,8 @@ smalltalk.method({
3433
3471
  selector: "back:",
3434
3472
  fn: function (anObject){
3435
3473
  var self=this;
3436
- smalltalk.send(self["@write"],"_add_",[anObject]);
3437
- return self}
3474
+ return smalltalk.withContext(function($ctx1) {
3475
+ return self}, function($ctx1) {$ctx1.fill(self,"back:",{anObject:anObject}, smalltalk.Queue)})}
3438
3476
  }),
3439
3477
  smalltalk.Queue);
3440
3478
 
@@ -3444,12 +3482,12 @@ smalltalk.method({
3444
3482
  selector: "front",
3445
3483
  fn: function (){
3446
3484
  var self=this;
3447
- var $1;
3448
- $1=smalltalk.send(self,"_frontIfAbsent_",[(function(){
3449
- return smalltalk.send(self,"_error_",["Cannot read from empty Queue."]);
3450
- })]);
3485
+ return smalltalk.withContext(function($ctx1) {
3486
+ $1=_st(self)._frontIfAbsent_((function(){
3487
+ return smalltalk.withContext(function($ctx2) {
3488
+ }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
3451
3489
  return $1;
3452
- }
3490
+ }, function($ctx1) {$ctx1.fill(self,"front",{}, smalltalk.Queue)})}
3453
3491
  }),
3454
3492
  smalltalk.Queue);
3455
3493
 
@@ -3459,37 +3497,42 @@ smalltalk.method({
3459
3497
  selector: "frontIfAbsent:",
3460
3498
  fn: function (aBlock){
3461
3499
  var self=this;
3462
- var $1,$2,$3;
3500
+ var result;
3501
+ return smalltalk.withContext(function($ctx1) {
3463
3502
  var $early={};
3464
3503
  try {
3465
- var result;
3466
- result=smalltalk.send(self["@read"],"_at_ifAbsent_",[self["@readIndex"],(function(){
3467
- $1=smalltalk.send(self["@write"],"_isEmpty",[]);
3468
- if(smalltalk.assert($1)){
3469
- $2=smalltalk.send(self["@readIndex"],"__gt",[(1)]);
3470
- if(smalltalk.assert($2)){
3504
+ $1=self["@read"];
3505
+ $2=self["@readIndex"];
3506
+ $3=(function(){
3507
+ return smalltalk.withContext(function($ctx2) {
3508
+ $5=(function(){
3509
+ return smalltalk.withContext(function($ctx3) {
3510
+ if(smalltalk.assert($6)){
3471
3511
  self["@read"]=[];
3472
3512
  self["@read"];
3473
3513
  self["@readIndex"]=(1);
3474
3514
  self["@readIndex"];
3475
3515
  };
3476
- $3=smalltalk.send(aBlock,"_value",[]);
3477
- throw $early=[$3];
3478
- };
3516
+ $7=_st(aBlock)._value();
3517
+ throw $early=[$7];
3518
+ }, function($ctx3) {$ctx3.fillBlock({},$ctx1)})});
3519
+ _st($4)._ifTrue_($5);
3479
3520
  self["@read"]=self["@write"];
3480
3521
  self["@read"];
3481
3522
  self["@readIndex"]=(1);
3482
3523
  self["@readIndex"];
3483
- self["@write"]=smalltalk.send((smalltalk.OrderedCollection || OrderedCollection),"_new",[]);
3524
+ self["@write"]=_st((smalltalk.OrderedCollection || OrderedCollection))._new();
3484
3525
  self["@write"];
3485
- return smalltalk.send(self["@read"],"_first",[]);
3486
- })]);
3487
- smalltalk.send(self["@read"],"_at_put_",[self["@readIndex"],nil]);
3488
- self["@readIndex"]=smalltalk.send(self["@readIndex"],"__plus",[(1)]);
3489
- return result;
3526
+ return _st(self["@read"])._first();
3527
+ }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})});
3528
+ result=_st($1)._at_ifAbsent_($2,$3);
3529
+ _st(self["@read"])._at_put_(self["@readIndex"],nil);
3530
+ self["@readIndex"]=_st(self["@readIndex"]).__plus((1));
3531
+ $8=result;
3532
+ return $8;
3490
3533
  }
3491
3534
  catch(e) {if(e===$early)return e[0]; throw e}
3492
- }
3535
+ }, function($ctx1) {$ctx1.fill(self,"frontIfAbsent:",{aBlock:aBlock,result:result}, smalltalk.Queue)})}
3493
3536
  }),
3494
3537
  smalltalk.Queue);
3495
3538
 
@@ -3499,10 +3542,11 @@ smalltalk.method({
3499
3542
  selector: "initialize",
3500
3543
  fn: function (){
3501
3544
  var self=this;
3502
- self["@read"]=[];
3545
+ return smalltalk.withContext(function($ctx1) {
3546
+ self["@read"]=_st((smalltalk.OrderedCollection || OrderedCollection))._new();
3547
+ self["@write"]=_st((smalltalk.OrderedCollection || OrderedCollection))._new();
3503
3548
  self["@readIndex"]=(1);
3504
- self["@write"]=smalltalk.send((smalltalk.OrderedCollection || OrderedCollection),"_new",[]);
3505
- return self}
3549
+ return self}, function($ctx1) {$ctx1.fill(self,"initialize",{}, smalltalk.Queue)})}
3506
3550
  }),
3507
3551
  smalltalk.Queue);
3508
3552
 
@@ -3515,9 +3559,8 @@ smalltalk.method({
3515
3559
  selector: "compile:",
3516
3560
  fn: function (aString){
3517
3561
  var self=this;
3518
- return self.compile(aString);
3519
- ;
3520
- return self}
3562
+ return smalltalk.withContext(function($ctx1) {
3563
+ return self}, function($ctx1) {$ctx1.fill(self,"compile:",{aString:aString}, smalltalk.RegularExpression)})}
3521
3564
  }),
3522
3565
  smalltalk.RegularExpression);
3523
3566
 
@@ -3527,9 +3570,8 @@ smalltalk.method({
3527
3570
  selector: "exec:",
3528
3571
  fn: function (aString){
3529
3572
  var self=this;
3530
- return self.exec(aString) || nil;
3531
- ;
3532
- return self}
3573
+ return smalltalk.withContext(function($ctx1) {
3574
+ return self}, function($ctx1) {$ctx1.fill(self,"exec:",{aString:aString}, smalltalk.RegularExpression)})}
3533
3575
  }),
3534
3576
  smalltalk.RegularExpression);
3535
3577
 
@@ -3539,9 +3581,8 @@ smalltalk.method({
3539
3581
  selector: "test:",
3540
3582
  fn: function (aString){
3541
3583
  var self=this;
3542
- return self.test(aString);
3543
- ;
3544
- return self}
3584
+ return smalltalk.withContext(function($ctx1) {
3585
+ return self}, function($ctx1) {$ctx1.fill(self,"test:",{aString:aString}, smalltalk.RegularExpression)})}
3545
3586
  }),
3546
3587
  smalltalk.RegularExpression);
3547
3588
 
@@ -3552,10 +3593,10 @@ smalltalk.method({
3552
3593
  selector: "fromString:",
3553
3594
  fn: function (aString){
3554
3595
  var self=this;
3555
- var $1;
3556
- $1=smalltalk.send(self,"_fromString_flag_",[aString,""]);
3596
+ return smalltalk.withContext(function($ctx1) {
3597
+ $1=_st(self)._fromString_flag_(aString,"");
3557
3598
  return $1;
3558
- }
3599
+ }, function($ctx1) {$ctx1.fill(self,"fromString:",{aString:aString}, smalltalk.RegularExpression.klass)})}
3559
3600
  }),
3560
3601
  smalltalk.RegularExpression.klass);
3561
3602
 
@@ -3565,9 +3606,8 @@ smalltalk.method({
3565
3606
  selector: "fromString:flag:",
3566
3607
  fn: function (aString,anotherString){
3567
3608
  var self=this;
3568
- return new RegExp(aString, anotherString);
3569
- ;
3570
- return self}
3609
+ return smalltalk.withContext(function($ctx1) {
3610
+ return self}, function($ctx1) {$ctx1.fill(self,"fromString:flag:",{aString:aString,anotherString:anotherString}, smalltalk.RegularExpression.klass)})}
3571
3611
  }),
3572
3612
  smalltalk.RegularExpression.klass);
3573
3613
 
@@ -3579,10 +3619,10 @@ smalltalk.method({
3579
3619
  selector: "atEnd",
3580
3620
  fn: function (){
3581
3621
  var self=this;
3582
- var $1;
3583
- $1=smalltalk.send(smalltalk.send(self,"_position",[]),"__eq",[smalltalk.send(self,"_size",[])]);
3622
+ return smalltalk.withContext(function($ctx1) {
3623
+ $1=_st(_st(self)._position()).__eq(_st(self)._size());
3584
3624
  return $1;
3585
- }
3625
+ }, function($ctx1) {$ctx1.fill(self,"atEnd",{}, smalltalk.Stream)})}
3586
3626
  }),
3587
3627
  smalltalk.Stream);
3588
3628
 
@@ -3592,10 +3632,10 @@ smalltalk.method({
3592
3632
  selector: "atStart",
3593
3633
  fn: function (){
3594
3634
  var self=this;
3595
- var $1;
3596
- $1=smalltalk.send(smalltalk.send(self,"_position",[]),"__eq",[(0)]);
3635
+ return smalltalk.withContext(function($ctx1) {
3636
+ $1=_st(_st(self)._position()).__eq((0));
3597
3637
  return $1;
3598
- }
3638
+ }, function($ctx1) {$ctx1.fill(self,"atStart",{}, smalltalk.Stream)})}
3599
3639
  }),
3600
3640
  smalltalk.Stream);
3601
3641
 
@@ -3605,7 +3645,7 @@ smalltalk.method({
3605
3645
  selector: "close",
3606
3646
  fn: function (){
3607
3647
  var self=this;
3608
- return self}
3648
+ return smalltalk.withContext(function($ctx1) {
3609
3649
  }),
3610
3650
  smalltalk.Stream);
3611
3651
 
@@ -3615,8 +3655,10 @@ smalltalk.method({
3615
3655
  selector: "collection",
3616
3656
  fn: function (){
3617
3657
  var self=this;
3618
- return self["@collection"];
3619
- }
3658
+ return smalltalk.withContext(function($ctx1) {
3659
+ $1=self["@collection"];
3660
+ return $1;
3661
+ }, function($ctx1) {$ctx1.fill(self,"collection",{}, smalltalk.Stream)})}
3620
3662
  }),
3621
3663
  smalltalk.Stream);
3622
3664
 
@@ -3626,10 +3668,10 @@ smalltalk.method({
3626
3668
  selector: "contents",
3627
3669
  fn: function (){
3628
3670
  var self=this;
3629
- var $1;
3630
- $1=smalltalk.send(smalltalk.send(self,"_collection",[]),"_copyFrom_to_",[(1),smalltalk.send(self,"_streamSize",[])]);
3671
+ return smalltalk.withContext(function($ctx1) {
3672
+ $1=_st(_st(self)._collection())._copyFrom_to_((1),_st(self)._streamSize());
3631
3673
  return $1;
3632
- }
3674
+ }, function($ctx1) {$ctx1.fill(self,"contents",{}, smalltalk.Stream)})}
3633
3675
  }),
3634
3676
  smalltalk.Stream);
3635
3677
 
@@ -3639,12 +3681,12 @@ smalltalk.method({
3639
3681
  selector: "do:",
3640
3682
  fn: function (aBlock){
3641
3683
  var self=this;
3642
- smalltalk.send((function(){
3643
- return smalltalk.send(self,"_atEnd",[]);
3644
- }),"_whileFalse_",[(function(){
3645
- return smalltalk.send(aBlock,"_value_",[smalltalk.send(self,"_next",[])]);
3646
- })]);
3647
- return self}
3684
+ return smalltalk.withContext(function($ctx1) {
3685
+ return smalltalk.withContext(function($ctx2) {
3686
+ }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._whileFalse_((function(){
3687
+ return smalltalk.withContext(function($ctx2) {
3688
+ }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
3689
+ return self}, function($ctx1) {$ctx1.fill(self,"do:",{aBlock:aBlock}, smalltalk.Stream)})}
3648
3690
  }),
3649
3691
  smalltalk.Stream);
3650
3692
 
@@ -3654,7 +3696,7 @@ smalltalk.method({
3654
3696
  selector: "flush",
3655
3697
  fn: function (){
3656
3698
  var self=this;
3657
- return self}
3699
+ return smalltalk.withContext(function($ctx1) {
3658
3700
  }),
3659
3701
  smalltalk.Stream);
3660
3702
 
@@ -3664,10 +3706,10 @@ smalltalk.method({
3664
3706
  selector: "isEmpty",
3665
3707
  fn: function (){
3666
3708
  var self=this;
3667
- var $1;
3668
- $1=smalltalk.send(smalltalk.send(self,"_size",[]),"__eq",[(0)]);
3709
+ return smalltalk.withContext(function($ctx1) {
3710
+ $1=_st(_st(self)._size()).__eq((0));
3669
3711
  return $1;
3670
- }
3712
+ }, function($ctx1) {$ctx1.fill(self,"isEmpty",{}, smalltalk.Stream)})}
3671
3713
  }),
3672
3714
  smalltalk.Stream);
3673
3715
 
@@ -3677,16 +3719,16 @@ smalltalk.method({
3677
3719
  selector: "next",
3678
3720
  fn: function (){
3679
3721
  var self=this;
3680
- var $2,$1;
3681
- $2=smalltalk.send(self,"_atEnd",[]);
3722
+ return smalltalk.withContext(function($ctx1) {
3723
+ $2=_st(self)._atEnd();
3682
3724
  if(smalltalk.assert($2)){
3683
3725
  $1=nil;
3684
3726
  } else {
3685
- smalltalk.send(self,"_position_",[smalltalk.send(smalltalk.send(self,"_position",[]),"__plus",[(1)])]);
3686
- $1=smalltalk.send(self["@collection"],"_at_",[smalltalk.send(self,"_position",[])]);
3727
+ _st(self)._position_(_st(_st(self)._position()).__plus((1)));
3728
+ $1=_st(self["@collection"])._at_(_st(self)._position());
3687
3729
  };
3688
3730
  return $1;
3689
- }
3731
+ }, function($ctx1) {$ctx1.fill(self,"next",{}, smalltalk.Stream)})}
3690
3732
  }),
3691
3733
  smalltalk.Stream);
3692
3734
 
@@ -3696,17 +3738,20 @@ smalltalk.method({
3696
3738
  selector: "next:",
3697
3739
  fn: function (anInteger){
3698
3740
  var self=this;
3699
- var $1;
3700
3741
  var tempCollection;
3701
- tempCollection=smalltalk.send(smalltalk.send(smalltalk.send(self,"_collection",[]),"_class",[]),"_new",[]);
3702
- smalltalk.send(anInteger,"_timesRepeat_",[(function(){
3703
- $1=smalltalk.send(self,"_atEnd",[]);
3704
- if(! smalltalk.assert($1)){
3705
- return smalltalk.send(tempCollection,"_add_",[smalltalk.send(self,"_next",[])]);
3742
+ return smalltalk.withContext(function($ctx1) {
3743
+ tempCollection=_st(_st(_st(self)._collection())._class())._new();
3744
+ $1=anInteger;
3745
+ $2=(function(){
3746
+ return smalltalk.withContext(function($ctx2) {
3747
+ if(! smalltalk.assert($3)){
3748
+ return _st(tempCollection)._add_(_st(self)._next());
3706
3749
  };
3707
- })]);
3708
- return tempCollection;
3709
- }
3750
+ }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})});
3751
+ _st($1)._timesRepeat_($2);
3752
+ $4=tempCollection;
3753
+ return $4;
3754
+ }, function($ctx1) {$ctx1.fill(self,"next:",{anInteger:anInteger,tempCollection:tempCollection}, smalltalk.Stream)})}
3710
3755
  }),
3711
3756
  smalltalk.Stream);
3712
3757
 
@@ -3716,10 +3761,10 @@ smalltalk.method({
3716
3761
  selector: "nextPut:",
3717
3762
  fn: function (anObject){
3718
3763
  var self=this;
3719
- smalltalk.send(self,"_position_",[smalltalk.send(smalltalk.send(self,"_position",[]),"__plus",[(1)])]);
3720
- smalltalk.send(smalltalk.send(self,"_collection",[]),"_at_put_",[smalltalk.send(self,"_position",[]),anObject]);
3721
- smalltalk.send(self,"_setStreamSize_",[smalltalk.send(smalltalk.send(self,"_streamSize",[]),"_max_",[smalltalk.send(self,"_position",[])])]);
3722
- return self}
3764
+ return smalltalk.withContext(function($ctx1) {
3765
+ _st(_st(self)._collection())._at_put_(_st(self)._position(),anObject);
3766
+ _st(self)._setStreamSize_(_st(_st(self)._streamSize())._max_(_st(self)._position()));
3767
+ return self}, function($ctx1) {$ctx1.fill(self,"nextPut:",{anObject:anObject}, smalltalk.Stream)})}
3723
3768
  }),
3724
3769
  smalltalk.Stream);
3725
3770
 
@@ -3729,10 +3774,10 @@ smalltalk.method({
3729
3774
  selector: "nextPutAll:",
3730
3775
  fn: function (aCollection){
3731
3776
  var self=this;
3732
- smalltalk.send(aCollection,"_do_",[(function(each){
3733
- return smalltalk.send(self,"_nextPut_",[each]);
3734
- })]);
3735
- return self}
3777
+ return smalltalk.withContext(function($ctx1) {
3778
+ return smalltalk.withContext(function($ctx2) {
3779
+ }, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
3780
+ return self}, function($ctx1) {$ctx1.fill(self,"nextPutAll:",{aCollection:aCollection}, smalltalk.Stream)})}
3736
3781
  }),
3737
3782
  smalltalk.Stream);
3738
3783
 
@@ -3742,13 +3787,13 @@ smalltalk.method({
3742
3787
  selector: "peek",
3743
3788
  fn: function (){
3744
3789
  var self=this;
3745
- var $2,$1;
3746
- $2=smalltalk.send(self,"_atEnd",[]);
3790
+ return smalltalk.withContext(function($ctx1) {
3791
+ $2=_st(self)._atEnd();
3747
3792
  if(! smalltalk.assert($2)){
3748
- $1=smalltalk.send(smalltalk.send(self,"_collection",[]),"_at_",[smalltalk.send(smalltalk.send(self,"_position",[]),"__plus",[(1)])]);
3793
+ $1=_st(_st(self)._collection())._at_(_st(_st(self)._position()).__plus((1)));
3749
3794
  };
3750
3795
  return $1;
3751
- }
3796
+ }, function($ctx1) {$ctx1.fill(self,"peek",{}, smalltalk.Stream)})}
3752
3797
  }),
3753
3798
  smalltalk.Stream);
3754
3799
 
@@ -3758,15 +3803,16 @@ smalltalk.method({
3758
3803
  selector: "position",
3759
3804
  fn: function (){
3760
3805
  var self=this;
3761
- var $1;
3762
- if(($receiver = self["@position"]) == nil || $receiver == undefined){
3806
+ return smalltalk.withContext(function($ctx1) {
3807
+ $2=self["@position"];
3808
+ if(($receiver = $2) == nil || $receiver == undefined){
3763
3809
  self["@position"]=(0);
3764
3810
  $1=self["@position"];
3765
3811
  } else {
3766
- $1=self["@position"];
3812
+ $1=$2;
3767
3813
  };
3768
3814
  return $1;
3769
- }
3815
+ }, function($ctx1) {$ctx1.fill(self,"position",{}, smalltalk.Stream)})}
3770
3816
  }),
3771
3817
  smalltalk.Stream);
3772
3818
 
@@ -3776,8 +3822,8 @@ smalltalk.method({
3776
3822
  selector: "position:",
3777
3823
  fn: function (anInteger){
3778
3824
  var self=this;
3779
- self["@position"]=anInteger;
3780
- return self}
3825
+ return smalltalk.withContext(function($ctx1) {
3826
+ return self}, function($ctx1) {$ctx1.fill(self,"position:",{anInteger:anInteger}, smalltalk.Stream)})}
3781
3827
  }),
3782
3828
  smalltalk.Stream);
3783
3829
 
@@ -3787,8 +3833,8 @@ smalltalk.method({
3787
3833
  selector: "reset",
3788
3834
  fn: function (){
3789
3835
  var self=this;
3790
- smalltalk.send(self,"_position_",[(0)]);
3791
- return self}
3836
+ return smalltalk.withContext(function($ctx1) {
3837
+ return self}, function($ctx1) {$ctx1.fill(self,"reset",{}, smalltalk.Stream)})}
3792
3838
  }),
3793
3839
  smalltalk.Stream);
3794
3840
 
@@ -3798,9 +3844,9 @@ smalltalk.method({
3798
3844
  selector: "resetContents",
3799
3845
  fn: function (){
3800
3846
  var self=this;
3801
- smalltalk.send(self,"_reset",[]);
3802
- smalltalk.send(self,"_setStreamSize_",[(0)]);
3803
- return self}
3847
+ return smalltalk.withContext(function($ctx1) {
3848
+ _st(self)._setStreamSize_((0));
3849
+ return self}, function($ctx1) {$ctx1.fill(self,"resetContents",{}, smalltalk.Stream)})}
3804
3850
  }),
3805
3851
  smalltalk.Stream);
3806
3852
 
@@ -3810,8 +3856,8 @@ smalltalk.method({
3810
3856
  selector: "setCollection:",
3811
3857
  fn: function (aCollection){
3812
3858
  var self=this;
3813
- self["@collection"]=aCollection;
3814
- return self}
3859
+ return smalltalk.withContext(function($ctx1) {
3860
+ return self}, function($ctx1) {$ctx1.fill(self,"setCollection:",{aCollection:aCollection}, smalltalk.Stream)})}
3815
3861
  }),
3816
3862
  smalltalk.Stream);
3817
3863
 
@@ -3821,8 +3867,8 @@ smalltalk.method({
3821
3867
  selector: "setStreamSize:",
3822
3868
  fn: function (anInteger){
3823
3869
  var self=this;
3824
- self["@streamSize"]=anInteger;
3825
- return self}
3870
+ return smalltalk.withContext(function($ctx1) {
3871
+ return self}, function($ctx1) {$ctx1.fill(self,"setStreamSize:",{anInteger:anInteger}, smalltalk.Stream)})}
3826
3872
  }),
3827
3873
  smalltalk.Stream);
3828
3874
 
@@ -3832,8 +3878,8 @@ smalltalk.method({
3832
3878
  selector: "setToEnd",
3833
3879
  fn: function (){
3834
3880
  var self=this;
3835
- smalltalk.send(self,"_position_",[smalltalk.send(self,"_size",[])]);
3836
- return self}
3881
+ return smalltalk.withContext(function($ctx1) {
3882
+ return self}, function($ctx1) {$ctx1.fill(self,"setToEnd",{}, smalltalk.Stream)})}
3837
3883
  }),
3838
3884
  smalltalk.Stream);
3839
3885
 
@@ -3843,10 +3889,10 @@ smalltalk.method({
3843
3889
  selector: "size",
3844
3890
  fn: function (){
3845
3891
  var self=this;
3846
- var $1;
3847
- $1=smalltalk.send(self,"_streamSize",[]);
3892
+ return smalltalk.withContext(function($ctx1) {
3893
+ $1=_st(self)._streamSize();
3848
3894
  return $1;
3849
- }
3895
+ }, function($ctx1) {$ctx1.fill(self,"size",{}, smalltalk.Stream)})}
3850
3896
  }),
3851
3897
  smalltalk.Stream);
3852
3898
 
@@ -3856,8 +3902,8 @@ smalltalk.method({
3856
3902
  selector: "skip:",
3857
3903
  fn: function (anInteger){
3858
3904
  var self=this;
3859
- smalltalk.send(self,"_position_",[smalltalk.send(smalltalk.send(smalltalk.send(self,"_position",[]),"__plus",[anInteger]),"_min_max_",[smalltalk.send(self,"_size",[]),(0)])]);
3860
- return self}
3905
+ return smalltalk.withContext(function($ctx1) {
3906
+ return self}, function($ctx1) {$ctx1.fill(self,"skip:",{anInteger:anInteger}, smalltalk.Stream)})}
3861
3907
  }),
3862
3908
  smalltalk.Stream);
3863
3909
 
@@ -3867,8 +3913,10 @@ smalltalk.method({
3867
3913
  selector: "streamSize",
3868
3914
  fn: function (){
3869
3915
  var self=this;
3870
- return self["@streamSize"];
3871
- }
3916
+ return smalltalk.withContext(function($ctx1) {
3917
+ $1=self["@streamSize"];
3918
+ return $1;
3919
+ }, function($ctx1) {$ctx1.fill(self,"streamSize",{}, smalltalk.Stream)})}
3872
3920
  }),
3873
3921
  smalltalk.Stream);
3874
3922
 
@@ -3879,14 +3927,14 @@ smalltalk.method({
3879
3927
  selector: "on:",
3880
3928
  fn: function (aCollection){
3881
3929
  var self=this;
3882
- var $2,$3,$1;
3883
- $2=smalltalk.send(self,"_new",[]);
3884
- smalltalk.send($2,"_setCollection_",[aCollection]);
3885
- smalltalk.send($2,"_setStreamSize_",[smalltalk.send(aCollection,"_size",[])]);
3886
- $3=smalltalk.send($2,"_yourself",[]);
3930
+ return smalltalk.withContext(function($ctx1) {
3931
+ $2=_st(self)._new();
3932
+ _st($2)._setCollection_(aCollection);
3933
+ _st($2)._setStreamSize_(_st(aCollection)._size());
3934
+ $3=_st($2)._yourself();
3887
3935
  $1=$3;
3888
3936
  return $1;
3889
- }
3937
+ }, function($ctx1) {$ctx1.fill(self,"on:",{aCollection:aCollection}, smalltalk.Stream.klass)})}
3890
3938
  }),
3891
3939
  smalltalk.Stream.klass);
3892
3940
 
@@ -3898,10 +3946,10 @@ smalltalk.method({
3898
3946
  selector: "cr",
3899
3947
  fn: function (){
3900
3948
  var self=this;
3901
- var $1;
3902
- $1=smalltalk.send(self,"_nextPutAll_",[smalltalk.send((smalltalk.String || String),"_cr",[])]);
3949
+ return smalltalk.withContext(function($ctx1) {
3950
+ $1=_st(self)._nextPutAll_(_st((smalltalk.String || String))._cr());
3903
3951
  return $1;
3904
- }
3952
+ }, function($ctx1) {$ctx1.fill(self,"cr",{}, smalltalk.StringStream)})}
3905
3953
  }),
3906
3954
  smalltalk.StringStream);
3907
3955
 
@@ -3911,10 +3959,10 @@ smalltalk.method({
3911
3959
  selector: "crlf",
3912
3960
  fn: function (){
3913
3961
  var self=this;
3914
- var $1;
3915
- $1=smalltalk.send(self,"_nextPutAll_",[smalltalk.send((smalltalk.String || String),"_crlf",[])]);
3962
+ return smalltalk.withContext(function($ctx1) {
3963
+ $1=_st(self)._nextPutAll_(_st((smalltalk.String || String))._crlf());
3916
3964
  return $1;
3917
- }
3965
+ }, function($ctx1) {$ctx1.fill(self,"crlf",{}, smalltalk.StringStream)})}
3918
3966
  }),
3919
3967
  smalltalk.StringStream);
3920
3968
 
@@ -3924,10 +3972,10 @@ smalltalk.method({
3924
3972
  selector: "lf",
3925
3973
  fn: function (){
3926
3974
  var self=this;
3927
- var $1;
3928
- $1=smalltalk.send(self,"_nextPutAll_",[smalltalk.send((smalltalk.String || String),"_lf",[])]);
3975
+ return smalltalk.withContext(function($ctx1) {
3976
+ $1=_st(self)._nextPutAll_(_st((smalltalk.String || String))._lf());
3929
3977
  return $1;
3930
- }
3978
+ }, function($ctx1) {$ctx1.fill(self,"lf",{}, smalltalk.StringStream)})}
3931
3979
  }),
3932
3980
  smalltalk.StringStream);
3933
3981
 
@@ -3937,18 +3985,21 @@ smalltalk.method({
3937
3985
  selector: "next:",
3938
3986
  fn: function (anInteger){
3939
3987
  var self=this;
3940
- var $1;
3941
3988
  var tempCollection;
3942
- tempCollection=smalltalk.send(smalltalk.send(smalltalk.send(self,"_collection",[]),"_class",[]),"_new",[]);
3943
- smalltalk.send(anInteger,"_timesRepeat_",[(function(){
3944
- $1=smalltalk.send(self,"_atEnd",[]);
3945
- if(! smalltalk.assert($1)){
3946
- tempCollection=smalltalk.send(tempCollection,"__comma",[smalltalk.send(self,"_next",[])]);
3989
+ return smalltalk.withContext(function($ctx1) {
3990
+ tempCollection=_st(_st(_st(self)._collection())._class())._new();
3991
+ $1=anInteger;
3992
+ $2=(function(){
3993
+ return smalltalk.withContext(function($ctx2) {
3994
+ if(! smalltalk.assert($3)){
3995
+ tempCollection=_st(tempCollection).__comma(_st(self)._next());
3947
3996
  return tempCollection;
3948
3997
  };
3949
- })]);
3950
- return tempCollection;
3951
- }
3998
+ }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})});
3999
+ _st($1)._timesRepeat_($2);
4000
+ $4=tempCollection;
4001
+ return $4;
4002
+ }, function($ctx1) {$ctx1.fill(self,"next:",{anInteger:anInteger,tempCollection:tempCollection}, smalltalk.StringStream)})}
3952
4003
  }),
3953
4004
  smalltalk.StringStream);
3954
4005
 
@@ -3958,8 +4009,8 @@ smalltalk.method({
3958
4009
  selector: "nextPut:",
3959
4010
  fn: function (aString){
3960
4011
  var self=this;
3961
- smalltalk.send(self,"_nextPutAll_",[aString]);
3962
- return self}
4012
+ return smalltalk.withContext(function($ctx1) {
4013
+ return self}, function($ctx1) {$ctx1.fill(self,"nextPut:",{aString:aString}, smalltalk.StringStream)})}
3963
4014
  }),
3964
4015
  smalltalk.StringStream);
3965
4016
 
@@ -3969,10 +4020,10 @@ smalltalk.method({
3969
4020
  selector: "nextPutAll:",
3970
4021
  fn: function (aString){
3971
4022
  var self=this;
3972
- smalltalk.send(self,"_setCollection_",[smalltalk.send(smalltalk.send(smalltalk.send(smalltalk.send(self,"_collection",[]),"_copyFrom_to_",[(1),smalltalk.send(self,"_position",[])]),"__comma",[aString]),"__comma",[smalltalk.send(smalltalk.send(self,"_collection",[]),"_copyFrom_to_",[smalltalk.send(smalltalk.send(smalltalk.send(self,"_position",[]),"__plus",[(1)]),"__plus",[smalltalk.send(aString,"_size",[])]),smalltalk.send(smalltalk.send(self,"_collection",[]),"_size",[])])])]);
3973
- smalltalk.send(self,"_position_",[smalltalk.send(smalltalk.send(self,"_position",[]),"__plus",[smalltalk.send(aString,"_size",[])])]);
3974
- smalltalk.send(self,"_setStreamSize_",[smalltalk.send(smalltalk.send(self,"_streamSize",[]),"_max_",[smalltalk.send(self,"_position",[])])]);
3975
- return self}
4023
+ return smalltalk.withContext(function($ctx1) {
4024
+ _st(self)._position_(_st(_st(self)._position()).__plus(_st(aString)._size()));
4025
+ _st(self)._setStreamSize_(_st(_st(self)._streamSize())._max_(_st(self)._position()));
4026
+ return self}, function($ctx1) {$ctx1.fill(self,"nextPutAll:",{aString:aString}, smalltalk.StringStream)})}
3976
4027
  }),
3977
4028
  smalltalk.StringStream);
3978
4029
 
@@ -3982,8 +4033,8 @@ smalltalk.method({
3982
4033
  selector: "space",
3983
4034
  fn: function (){
3984
4035
  var self=this;
3985
- smalltalk.send(self,"_nextPut_",[" "]);
3986
- return self}
4036
+ return smalltalk.withContext(function($ctx1) {
4037
+ return self}, function($ctx1) {$ctx1.fill(self,"space",{}, smalltalk.StringStream)})}
3987
4038
  }),
3988
4039
  smalltalk.StringStream);
3989
4040