resin 0.2.2 → 0.2.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (117) hide show
  1. data/amber/css/amber-normalize.css +73 -73
  2. data/amber/css/amber-normalize.less +1 -1
  3. data/amber/css/amber.css +106 -106
  4. data/amber/css/helios.css +242 -0
  5. data/amber/images/hsplitter.png +0 -0
  6. data/amber/images/vsplitter.png +0 -0
  7. data/amber/js/Benchfib.deploy.js +116 -38
  8. data/amber/js/Benchfib.js +120 -42
  9. data/amber/js/Canvas.deploy.js +674 -403
  10. data/amber/js/Canvas.js +682 -411
  11. data/amber/js/Compiler-AST.deploy.js +1150 -0
  12. data/amber/js/Compiler-AST.js +1591 -0
  13. data/amber/js/Compiler-Core.deploy.js +1562 -0
  14. data/amber/js/Compiler-Core.js +1972 -0
  15. data/amber/js/Compiler-Exceptions.deploy.js +114 -0
  16. data/amber/js/Compiler-Exceptions.js +161 -0
  17. data/amber/js/Compiler-IR.deploy.js +2326 -0
  18. data/amber/js/Compiler-IR.js +3146 -0
  19. data/amber/js/Compiler-Inlining.deploy.js +1147 -0
  20. data/amber/js/Compiler-Inlining.js +1514 -0
  21. data/amber/js/Compiler-Semantic.deploy.js +1207 -0
  22. data/amber/js/Compiler-Semantic.js +1628 -0
  23. data/amber/js/Compiler-Tests.deploy.js +646 -60
  24. data/amber/js/Compiler-Tests.js +843 -82
  25. data/amber/js/Compiler.deploy.js +1097 -159
  26. data/amber/js/Compiler.js +1414 -161
  27. data/amber/js/Examples.deploy.js +31 -15
  28. data/amber/js/Examples.js +33 -17
  29. data/amber/js/Helios-Announcements.deploy.js +127 -0
  30. data/amber/js/Helios-Announcements.js +157 -0
  31. data/amber/js/Helios-Browser.deploy.js +1473 -0
  32. data/amber/js/Helios-Browser.js +1953 -0
  33. data/amber/js/Helios-Commands.deploy.js +403 -0
  34. data/amber/js/Helios-Commands.js +563 -0
  35. data/amber/js/Helios-Core.deploy.js +1070 -0
  36. data/amber/js/Helios-Core.js +1445 -0
  37. data/amber/js/Helios-Environments.deploy.js +132 -0
  38. data/amber/js/Helios-Environments.js +179 -0
  39. data/amber/js/Helios-Inspector.deploy.js +855 -0
  40. data/amber/js/Helios-Inspector.js +1155 -0
  41. data/amber/js/Helios-KeyBindings.deploy.js +753 -0
  42. data/amber/js/Helios-KeyBindings.js +1023 -0
  43. data/amber/js/Helios-Layout.deploy.js +383 -0
  44. data/amber/js/Helios-Layout.js +523 -0
  45. data/amber/js/Helios-Workspace.deploy.js +799 -0
  46. data/amber/js/Helios-Workspace.js +1074 -0
  47. data/amber/js/IDE.deploy.js +2541 -1490
  48. data/amber/js/IDE.js +2721 -1660
  49. data/amber/js/Importer-Exporter.deploy.js +671 -0
  50. data/amber/js/Importer-Exporter.js +816 -0
  51. data/amber/js/Kernel-Announcements.deploy.js +137 -20
  52. data/amber/js/Kernel-Announcements.js +176 -22
  53. data/amber/js/Kernel-Classes.deploy.js +555 -168
  54. data/amber/js/Kernel-Classes.js +662 -205
  55. data/amber/js/Kernel-Collections.deploy.js +1403 -618
  56. data/amber/js/Kernel-Collections.js +1545 -690
  57. data/amber/js/Kernel-Exceptions.deploy.js +109 -45
  58. data/amber/js/Kernel-Exceptions.js +123 -49
  59. data/amber/js/Kernel-Methods.deploy.js +196 -81
  60. data/amber/js/Kernel-Methods.js +214 -89
  61. data/amber/js/Kernel-Objects.deploy.js +1542 -1117
  62. data/amber/js/Kernel-Objects.js +1593 -1148
  63. data/amber/js/Kernel-Tests.deploy.js +1725 -772
  64. data/amber/js/Kernel-Tests.js +2301 -1123
  65. data/amber/js/Kernel-Transcript.deploy.js +23 -25
  66. data/amber/js/Kernel-Transcript.js +24 -26
  67. data/amber/js/SUnit.deploy.js +204 -131
  68. data/amber/js/SUnit.js +222 -139
  69. data/amber/js/Spaces.deploy.js +240 -0
  70. data/amber/js/Spaces.js +326 -0
  71. data/amber/js/amber.js +26 -7
  72. data/amber/js/boot.js +65 -47
  73. data/amber/js/init.js +1 -1
  74. data/amber/js/lib/CodeMirror/amber.css +21 -21
  75. data/amber/js/lib/CodeMirror/codemirror.css +119 -13
  76. data/amber/js/lib/CodeMirror/codemirror.js +2219 -1220
  77. data/amber/js/lib/CodeMirror/smalltalk.js +134 -129
  78. data/amber/js/lib/bootstrap/css/bootstrap.css +5837 -0
  79. data/amber/js/lib/bootstrap/css/bootstrap.min.css +841 -0
  80. data/amber/js/lib/bootstrap/img/glyphicons-halflings-white.png +0 -0
  81. data/amber/js/lib/bootstrap/img/glyphicons-halflings.png +0 -0
  82. data/amber/js/lib/bootstrap/js/bootstrap.js +2038 -0
  83. data/amber/js/lib/bootstrap/js/bootstrap.min.js +7 -0
  84. data/amber/js/lib/jQuery/jquery-1.8.2.min.js +2 -0
  85. data/amber/js/lib/jQuery/jquery-ui-1.8.24.custom.min.js +125 -0
  86. data/amber/st/Compiler-AST.st +505 -0
  87. data/amber/st/Compiler-Core.st +835 -0
  88. data/amber/st/Compiler-Exceptions.st +87 -0
  89. data/amber/st/Compiler-IR.st +1097 -0
  90. data/amber/st/Compiler-Inlining.st +650 -0
  91. data/amber/st/Compiler-Semantic.st +558 -0
  92. data/amber/st/Compiler-Tests.st +285 -381
  93. data/amber/st/Compiler.st +725 -2
  94. data/amber/st/Helios-Announcements.st +104 -0
  95. data/amber/st/Helios-Browser.st +708 -0
  96. data/amber/st/Helios-Commands.st +223 -0
  97. data/amber/st/Helios-Core.st +532 -0
  98. data/amber/st/Helios-Environments.st +98 -0
  99. data/amber/st/Helios-Inspector.st +367 -0
  100. data/amber/st/Helios-KeyBindings.st +337 -0
  101. data/amber/st/Helios-Layout.st +199 -0
  102. data/amber/st/Helios-Workspace.st +367 -0
  103. data/amber/st/IDE.st +75 -53
  104. data/amber/st/Importer-Exporter.st +386 -0
  105. data/amber/st/Kernel-Announcements.st +92 -0
  106. data/amber/st/Kernel-Classes.st +137 -15
  107. data/amber/st/Kernel-Collections.st +137 -47
  108. data/amber/st/Kernel-Exceptions.st +14 -0
  109. data/amber/st/Kernel-Methods.st +9 -1
  110. data/amber/st/Kernel-Objects.st +29 -5
  111. data/amber/st/Kernel-Tests.st +545 -199
  112. data/amber/st/SUnit.st +10 -0
  113. data/amber/st/Spaces.st +142 -0
  114. data/lib/resin/app.rb +1 -1
  115. metadata +86 -31
  116. data/amber/js/lib/jQuery/jquery-1.4.4.min.js +0 -167
  117. data/amber/js/lib/jQuery/jquery-1.6.4.min.js +0 -4
@@ -0,0 +1,1150 @@
1
+ smalltalk.addPackage('Compiler-AST', {});
2
+ smalltalk.addClass('Node', smalltalk.Object, ['nodes', 'shouldBeInlined', 'shouldBeAliased'], 'Compiler-AST');
3
+ smalltalk.addMethod(
4
+ "_accept_",
5
+ smalltalk.method({
6
+ selector: "accept:",
7
+ fn: function (aVisitor){
8
+ var self=this;
9
+ var $1;
10
+ $1=smalltalk.send(aVisitor,"_visitNode_",[self]);
11
+ return $1;
12
+ }
13
+ }),
14
+ smalltalk.Node);
15
+
16
+ smalltalk.addMethod(
17
+ "_addNode_",
18
+ smalltalk.method({
19
+ selector: "addNode:",
20
+ fn: function (aNode){
21
+ var self=this;
22
+ smalltalk.send(smalltalk.send(self,"_nodes",[]),"_add_",[aNode]);
23
+ return self}
24
+ }),
25
+ smalltalk.Node);
26
+
27
+ smalltalk.addMethod(
28
+ "_isAssignmentNode",
29
+ smalltalk.method({
30
+ selector: "isAssignmentNode",
31
+ fn: function (){
32
+ var self=this;
33
+ return false;
34
+ }
35
+ }),
36
+ smalltalk.Node);
37
+
38
+ smalltalk.addMethod(
39
+ "_isBlockNode",
40
+ smalltalk.method({
41
+ selector: "isBlockNode",
42
+ fn: function (){
43
+ var self=this;
44
+ return false;
45
+ }
46
+ }),
47
+ smalltalk.Node);
48
+
49
+ smalltalk.addMethod(
50
+ "_isBlockSequenceNode",
51
+ smalltalk.method({
52
+ selector: "isBlockSequenceNode",
53
+ fn: function (){
54
+ var self=this;
55
+ return false;
56
+ }
57
+ }),
58
+ smalltalk.Node);
59
+
60
+ smalltalk.addMethod(
61
+ "_isReturnNode",
62
+ smalltalk.method({
63
+ selector: "isReturnNode",
64
+ fn: function (){
65
+ var self=this;
66
+ return false;
67
+ }
68
+ }),
69
+ smalltalk.Node);
70
+
71
+ smalltalk.addMethod(
72
+ "_isSendNode",
73
+ smalltalk.method({
74
+ selector: "isSendNode",
75
+ fn: function (){
76
+ var self=this;
77
+ return false;
78
+ }
79
+ }),
80
+ smalltalk.Node);
81
+
82
+ smalltalk.addMethod(
83
+ "_isValueNode",
84
+ smalltalk.method({
85
+ selector: "isValueNode",
86
+ fn: function (){
87
+ var self=this;
88
+ return false;
89
+ }
90
+ }),
91
+ smalltalk.Node);
92
+
93
+ smalltalk.addMethod(
94
+ "_nodes",
95
+ smalltalk.method({
96
+ selector: "nodes",
97
+ fn: function (){
98
+ var self=this;
99
+ var $1;
100
+ if(($receiver = self["@nodes"]) == nil || $receiver == undefined){
101
+ self["@nodes"]=smalltalk.send((smalltalk.Array || Array),"_new",[]);
102
+ $1=self["@nodes"];
103
+ } else {
104
+ $1=self["@nodes"];
105
+ };
106
+ return $1;
107
+ }
108
+ }),
109
+ smalltalk.Node);
110
+
111
+ smalltalk.addMethod(
112
+ "_nodes_",
113
+ smalltalk.method({
114
+ selector: "nodes:",
115
+ fn: function (aCollection){
116
+ var self=this;
117
+ self["@nodes"]=aCollection;
118
+ return self}
119
+ }),
120
+ smalltalk.Node);
121
+
122
+ smalltalk.addMethod(
123
+ "_shouldBeAliased",
124
+ smalltalk.method({
125
+ selector: "shouldBeAliased",
126
+ fn: function (){
127
+ var self=this;
128
+ var $1;
129
+ if(($receiver = self["@shouldBeAliased"]) == nil || $receiver == undefined){
130
+ $1=false;
131
+ } else {
132
+ $1=self["@shouldBeAliased"];
133
+ };
134
+ return $1;
135
+ }
136
+ }),
137
+ smalltalk.Node);
138
+
139
+ smalltalk.addMethod(
140
+ "_shouldBeAliased_",
141
+ smalltalk.method({
142
+ selector: "shouldBeAliased:",
143
+ fn: function (aBoolean){
144
+ var self=this;
145
+ self["@shouldBeAliased"]=aBoolean;
146
+ return self}
147
+ }),
148
+ smalltalk.Node);
149
+
150
+ smalltalk.addMethod(
151
+ "_shouldBeInlined",
152
+ smalltalk.method({
153
+ selector: "shouldBeInlined",
154
+ fn: function (){
155
+ var self=this;
156
+ var $1;
157
+ if(($receiver = self["@shouldBeInlined"]) == nil || $receiver == undefined){
158
+ $1=false;
159
+ } else {
160
+ $1=self["@shouldBeInlined"];
161
+ };
162
+ return $1;
163
+ }
164
+ }),
165
+ smalltalk.Node);
166
+
167
+ smalltalk.addMethod(
168
+ "_shouldBeInlined_",
169
+ smalltalk.method({
170
+ selector: "shouldBeInlined:",
171
+ fn: function (aBoolean){
172
+ var self=this;
173
+ self["@shouldBeInlined"]=aBoolean;
174
+ return self}
175
+ }),
176
+ smalltalk.Node);
177
+
178
+
179
+
180
+ smalltalk.addClass('AssignmentNode', smalltalk.Node, ['left', 'right'], 'Compiler-AST');
181
+ smalltalk.addMethod(
182
+ "_accept_",
183
+ smalltalk.method({
184
+ selector: "accept:",
185
+ fn: function (aVisitor){
186
+ var self=this;
187
+ var $1;
188
+ $1=smalltalk.send(aVisitor,"_visitAssignmentNode_",[self]);
189
+ return $1;
190
+ }
191
+ }),
192
+ smalltalk.AssignmentNode);
193
+
194
+ smalltalk.addMethod(
195
+ "_isAssignmentNode",
196
+ smalltalk.method({
197
+ selector: "isAssignmentNode",
198
+ fn: function (){
199
+ var self=this;
200
+ return true;
201
+ }
202
+ }),
203
+ smalltalk.AssignmentNode);
204
+
205
+ smalltalk.addMethod(
206
+ "_left",
207
+ smalltalk.method({
208
+ selector: "left",
209
+ fn: function (){
210
+ var self=this;
211
+ return self["@left"];
212
+ }
213
+ }),
214
+ smalltalk.AssignmentNode);
215
+
216
+ smalltalk.addMethod(
217
+ "_left_",
218
+ smalltalk.method({
219
+ selector: "left:",
220
+ fn: function (aNode){
221
+ var self=this;
222
+ self["@left"]=aNode;
223
+ return self}
224
+ }),
225
+ smalltalk.AssignmentNode);
226
+
227
+ smalltalk.addMethod(
228
+ "_nodes",
229
+ smalltalk.method({
230
+ selector: "nodes",
231
+ fn: function (){
232
+ var self=this;
233
+ var $1;
234
+ $1=smalltalk.send((smalltalk.Array || Array),"_with_with_",[smalltalk.send(self,"_left",[]),smalltalk.send(self,"_right",[])]);
235
+ return $1;
236
+ }
237
+ }),
238
+ smalltalk.AssignmentNode);
239
+
240
+ smalltalk.addMethod(
241
+ "_right",
242
+ smalltalk.method({
243
+ selector: "right",
244
+ fn: function (){
245
+ var self=this;
246
+ return self["@right"];
247
+ }
248
+ }),
249
+ smalltalk.AssignmentNode);
250
+
251
+ smalltalk.addMethod(
252
+ "_right_",
253
+ smalltalk.method({
254
+ selector: "right:",
255
+ fn: function (aNode){
256
+ var self=this;
257
+ self["@right"]=aNode;
258
+ return self}
259
+ }),
260
+ smalltalk.AssignmentNode);
261
+
262
+
263
+
264
+ smalltalk.addClass('BlockNode', smalltalk.Node, ['parameters', 'scope'], 'Compiler-AST');
265
+ smalltalk.addMethod(
266
+ "_accept_",
267
+ smalltalk.method({
268
+ selector: "accept:",
269
+ fn: function (aVisitor){
270
+ var self=this;
271
+ var $1;
272
+ $1=smalltalk.send(aVisitor,"_visitBlockNode_",[self]);
273
+ return $1;
274
+ }
275
+ }),
276
+ smalltalk.BlockNode);
277
+
278
+ smalltalk.addMethod(
279
+ "_isBlockNode",
280
+ smalltalk.method({
281
+ selector: "isBlockNode",
282
+ fn: function (){
283
+ var self=this;
284
+ return true;
285
+ }
286
+ }),
287
+ smalltalk.BlockNode);
288
+
289
+ smalltalk.addMethod(
290
+ "_parameters",
291
+ smalltalk.method({
292
+ selector: "parameters",
293
+ fn: function (){
294
+ var self=this;
295
+ var $1;
296
+ if(($receiver = self["@parameters"]) == nil || $receiver == undefined){
297
+ self["@parameters"]=smalltalk.send((smalltalk.Array || Array),"_new",[]);
298
+ $1=self["@parameters"];
299
+ } else {
300
+ $1=self["@parameters"];
301
+ };
302
+ return $1;
303
+ }
304
+ }),
305
+ smalltalk.BlockNode);
306
+
307
+ smalltalk.addMethod(
308
+ "_parameters_",
309
+ smalltalk.method({
310
+ selector: "parameters:",
311
+ fn: function (aCollection){
312
+ var self=this;
313
+ self["@parameters"]=aCollection;
314
+ return self}
315
+ }),
316
+ smalltalk.BlockNode);
317
+
318
+ smalltalk.addMethod(
319
+ "_scope",
320
+ smalltalk.method({
321
+ selector: "scope",
322
+ fn: function (){
323
+ var self=this;
324
+ return self["@scope"];
325
+ }
326
+ }),
327
+ smalltalk.BlockNode);
328
+
329
+ smalltalk.addMethod(
330
+ "_scope_",
331
+ smalltalk.method({
332
+ selector: "scope:",
333
+ fn: function (aLexicalScope){
334
+ var self=this;
335
+ self["@scope"]=aLexicalScope;
336
+ return self}
337
+ }),
338
+ smalltalk.BlockNode);
339
+
340
+
341
+
342
+ smalltalk.addClass('CascadeNode', smalltalk.Node, ['receiver'], 'Compiler-AST');
343
+ smalltalk.addMethod(
344
+ "_accept_",
345
+ smalltalk.method({
346
+ selector: "accept:",
347
+ fn: function (aVisitor){
348
+ var self=this;
349
+ var $1;
350
+ $1=smalltalk.send(aVisitor,"_visitCascadeNode_",[self]);
351
+ return $1;
352
+ }
353
+ }),
354
+ smalltalk.CascadeNode);
355
+
356
+ smalltalk.addMethod(
357
+ "_receiver",
358
+ smalltalk.method({
359
+ selector: "receiver",
360
+ fn: function (){
361
+ var self=this;
362
+ return self["@receiver"];
363
+ }
364
+ }),
365
+ smalltalk.CascadeNode);
366
+
367
+ smalltalk.addMethod(
368
+ "_receiver_",
369
+ smalltalk.method({
370
+ selector: "receiver:",
371
+ fn: function (aNode){
372
+ var self=this;
373
+ self["@receiver"]=aNode;
374
+ return self}
375
+ }),
376
+ smalltalk.CascadeNode);
377
+
378
+
379
+
380
+ smalltalk.addClass('DynamicArrayNode', smalltalk.Node, [], 'Compiler-AST');
381
+ smalltalk.addMethod(
382
+ "_accept_",
383
+ smalltalk.method({
384
+ selector: "accept:",
385
+ fn: function (aVisitor){
386
+ var self=this;
387
+ var $1;
388
+ $1=smalltalk.send(aVisitor,"_visitDynamicArrayNode_",[self]);
389
+ return $1;
390
+ }
391
+ }),
392
+ smalltalk.DynamicArrayNode);
393
+
394
+
395
+
396
+ smalltalk.addClass('DynamicDictionaryNode', smalltalk.Node, [], 'Compiler-AST');
397
+ smalltalk.addMethod(
398
+ "_accept_",
399
+ smalltalk.method({
400
+ selector: "accept:",
401
+ fn: function (aVisitor){
402
+ var self=this;
403
+ var $1;
404
+ $1=smalltalk.send(aVisitor,"_visitDynamicDictionaryNode_",[self]);
405
+ return $1;
406
+ }
407
+ }),
408
+ smalltalk.DynamicDictionaryNode);
409
+
410
+
411
+
412
+ smalltalk.addClass('JSStatementNode', smalltalk.Node, ['source'], 'Compiler-AST');
413
+ smalltalk.addMethod(
414
+ "_accept_",
415
+ smalltalk.method({
416
+ selector: "accept:",
417
+ fn: function (aVisitor){
418
+ var self=this;
419
+ var $1;
420
+ $1=smalltalk.send(aVisitor,"_visitJSStatementNode_",[self]);
421
+ return $1;
422
+ }
423
+ }),
424
+ smalltalk.JSStatementNode);
425
+
426
+ smalltalk.addMethod(
427
+ "_source",
428
+ smalltalk.method({
429
+ selector: "source",
430
+ fn: function (){
431
+ var self=this;
432
+ var $1;
433
+ if(($receiver = self["@source"]) == nil || $receiver == undefined){
434
+ $1="";
435
+ } else {
436
+ $1=self["@source"];
437
+ };
438
+ return $1;
439
+ }
440
+ }),
441
+ smalltalk.JSStatementNode);
442
+
443
+ smalltalk.addMethod(
444
+ "_source_",
445
+ smalltalk.method({
446
+ selector: "source:",
447
+ fn: function (aString){
448
+ var self=this;
449
+ self["@source"]=aString;
450
+ return self}
451
+ }),
452
+ smalltalk.JSStatementNode);
453
+
454
+
455
+
456
+ smalltalk.addClass('MethodNode', smalltalk.Node, ['selector', 'arguments', 'source', 'scope', 'classReferences', 'messageSends'], 'Compiler-AST');
457
+ smalltalk.addMethod(
458
+ "_accept_",
459
+ smalltalk.method({
460
+ selector: "accept:",
461
+ fn: function (aVisitor){
462
+ var self=this;
463
+ var $1;
464
+ $1=smalltalk.send(aVisitor,"_visitMethodNode_",[self]);
465
+ return $1;
466
+ }
467
+ }),
468
+ smalltalk.MethodNode);
469
+
470
+ smalltalk.addMethod(
471
+ "_arguments",
472
+ smalltalk.method({
473
+ selector: "arguments",
474
+ fn: function (){
475
+ var self=this;
476
+ var $1;
477
+ if(($receiver = self["@arguments"]) == nil || $receiver == undefined){
478
+ $1=[];
479
+ } else {
480
+ $1=self["@arguments"];
481
+ };
482
+ return $1;
483
+ }
484
+ }),
485
+ smalltalk.MethodNode);
486
+
487
+ smalltalk.addMethod(
488
+ "_arguments_",
489
+ smalltalk.method({
490
+ selector: "arguments:",
491
+ fn: function (aCollection){
492
+ var self=this;
493
+ self["@arguments"]=aCollection;
494
+ return self}
495
+ }),
496
+ smalltalk.MethodNode);
497
+
498
+ smalltalk.addMethod(
499
+ "_classReferences",
500
+ smalltalk.method({
501
+ selector: "classReferences",
502
+ fn: function (){
503
+ var self=this;
504
+ return self["@classReferences"];
505
+ }
506
+ }),
507
+ smalltalk.MethodNode);
508
+
509
+ smalltalk.addMethod(
510
+ "_classReferences_",
511
+ smalltalk.method({
512
+ selector: "classReferences:",
513
+ fn: function (aCollection){
514
+ var self=this;
515
+ self["@classReferences"]=aCollection;
516
+ return self}
517
+ }),
518
+ smalltalk.MethodNode);
519
+
520
+ smalltalk.addMethod(
521
+ "_messageSends",
522
+ smalltalk.method({
523
+ selector: "messageSends",
524
+ fn: function (){
525
+ var self=this;
526
+ return self["@messageSends"];
527
+ }
528
+ }),
529
+ smalltalk.MethodNode);
530
+
531
+ smalltalk.addMethod(
532
+ "_messageSends_",
533
+ smalltalk.method({
534
+ selector: "messageSends:",
535
+ fn: function (aCollection){
536
+ var self=this;
537
+ self["@messageSends"]=aCollection;
538
+ return self}
539
+ }),
540
+ smalltalk.MethodNode);
541
+
542
+ smalltalk.addMethod(
543
+ "_scope",
544
+ smalltalk.method({
545
+ selector: "scope",
546
+ fn: function (){
547
+ var self=this;
548
+ return self["@scope"];
549
+ }
550
+ }),
551
+ smalltalk.MethodNode);
552
+
553
+ smalltalk.addMethod(
554
+ "_scope_",
555
+ smalltalk.method({
556
+ selector: "scope:",
557
+ fn: function (aMethodScope){
558
+ var self=this;
559
+ self["@scope"]=aMethodScope;
560
+ return self}
561
+ }),
562
+ smalltalk.MethodNode);
563
+
564
+ smalltalk.addMethod(
565
+ "_selector",
566
+ smalltalk.method({
567
+ selector: "selector",
568
+ fn: function (){
569
+ var self=this;
570
+ return self["@selector"];
571
+ }
572
+ }),
573
+ smalltalk.MethodNode);
574
+
575
+ smalltalk.addMethod(
576
+ "_selector_",
577
+ smalltalk.method({
578
+ selector: "selector:",
579
+ fn: function (aString){
580
+ var self=this;
581
+ self["@selector"]=aString;
582
+ return self}
583
+ }),
584
+ smalltalk.MethodNode);
585
+
586
+ smalltalk.addMethod(
587
+ "_source",
588
+ smalltalk.method({
589
+ selector: "source",
590
+ fn: function (){
591
+ var self=this;
592
+ return self["@source"];
593
+ }
594
+ }),
595
+ smalltalk.MethodNode);
596
+
597
+ smalltalk.addMethod(
598
+ "_source_",
599
+ smalltalk.method({
600
+ selector: "source:",
601
+ fn: function (aString){
602
+ var self=this;
603
+ self["@source"]=aString;
604
+ return self}
605
+ }),
606
+ smalltalk.MethodNode);
607
+
608
+
609
+
610
+ smalltalk.addClass('ReturnNode', smalltalk.Node, ['scope'], 'Compiler-AST');
611
+ smalltalk.addMethod(
612
+ "_accept_",
613
+ smalltalk.method({
614
+ selector: "accept:",
615
+ fn: function (aVisitor){
616
+ var self=this;
617
+ var $1;
618
+ $1=smalltalk.send(aVisitor,"_visitReturnNode_",[self]);
619
+ return $1;
620
+ }
621
+ }),
622
+ smalltalk.ReturnNode);
623
+
624
+ smalltalk.addMethod(
625
+ "_isReturnNode",
626
+ smalltalk.method({
627
+ selector: "isReturnNode",
628
+ fn: function (){
629
+ var self=this;
630
+ return true;
631
+ }
632
+ }),
633
+ smalltalk.ReturnNode);
634
+
635
+ smalltalk.addMethod(
636
+ "_nonLocalReturn",
637
+ smalltalk.method({
638
+ selector: "nonLocalReturn",
639
+ fn: function (){
640
+ var self=this;
641
+ var $1;
642
+ $1=smalltalk.send(smalltalk.send(smalltalk.send(self,"_scope",[]),"_isMethodScope",[]),"_not",[]);
643
+ return $1;
644
+ }
645
+ }),
646
+ smalltalk.ReturnNode);
647
+
648
+ smalltalk.addMethod(
649
+ "_scope",
650
+ smalltalk.method({
651
+ selector: "scope",
652
+ fn: function (){
653
+ var self=this;
654
+ return self["@scope"];
655
+ }
656
+ }),
657
+ smalltalk.ReturnNode);
658
+
659
+ smalltalk.addMethod(
660
+ "_scope_",
661
+ smalltalk.method({
662
+ selector: "scope:",
663
+ fn: function (aLexicalScope){
664
+ var self=this;
665
+ self["@scope"]=aLexicalScope;
666
+ return self}
667
+ }),
668
+ smalltalk.ReturnNode);
669
+
670
+
671
+
672
+ smalltalk.addClass('SendNode', smalltalk.Node, ['selector', 'arguments', 'receiver', 'superSend', 'index'], 'Compiler-AST');
673
+ smalltalk.addMethod(
674
+ "_accept_",
675
+ smalltalk.method({
676
+ selector: "accept:",
677
+ fn: function (aVisitor){
678
+ var self=this;
679
+ var $1;
680
+ $1=smalltalk.send(aVisitor,"_visitSendNode_",[self]);
681
+ return $1;
682
+ }
683
+ }),
684
+ smalltalk.SendNode);
685
+
686
+ smalltalk.addMethod(
687
+ "_arguments",
688
+ smalltalk.method({
689
+ selector: "arguments",
690
+ fn: function (){
691
+ var self=this;
692
+ var $1;
693
+ if(($receiver = self["@arguments"]) == nil || $receiver == undefined){
694
+ self["@arguments"]=[];
695
+ $1=self["@arguments"];
696
+ } else {
697
+ $1=self["@arguments"];
698
+ };
699
+ return $1;
700
+ }
701
+ }),
702
+ smalltalk.SendNode);
703
+
704
+ smalltalk.addMethod(
705
+ "_arguments_",
706
+ smalltalk.method({
707
+ selector: "arguments:",
708
+ fn: function (aCollection){
709
+ var self=this;
710
+ self["@arguments"]=aCollection;
711
+ return self}
712
+ }),
713
+ smalltalk.SendNode);
714
+
715
+ smalltalk.addMethod(
716
+ "_cascadeNodeWithMessages_",
717
+ smalltalk.method({
718
+ selector: "cascadeNodeWithMessages:",
719
+ fn: function (aCollection){
720
+ var self=this;
721
+ var $1,$2,$4,$5,$3;
722
+ var first;
723
+ $1=smalltalk.send((smalltalk.SendNode || SendNode),"_new",[]);
724
+ smalltalk.send($1,"_selector_",[smalltalk.send(self,"_selector",[])]);
725
+ smalltalk.send($1,"_arguments_",[smalltalk.send(self,"_arguments",[])]);
726
+ $2=smalltalk.send($1,"_yourself",[]);
727
+ first=$2;
728
+ $4=smalltalk.send((smalltalk.CascadeNode || CascadeNode),"_new",[]);
729
+ smalltalk.send($4,"_receiver_",[smalltalk.send(self,"_receiver",[])]);
730
+ smalltalk.send($4,"_nodes_",[smalltalk.send(smalltalk.send((smalltalk.Array || Array),"_with_",[first]),"__comma",[aCollection])]);
731
+ $5=smalltalk.send($4,"_yourself",[]);
732
+ $3=$5;
733
+ return $3;
734
+ }
735
+ }),
736
+ smalltalk.SendNode);
737
+
738
+ smalltalk.addMethod(
739
+ "_index",
740
+ smalltalk.method({
741
+ selector: "index",
742
+ fn: function (){
743
+ var self=this;
744
+ return self["@index"];
745
+ }
746
+ }),
747
+ smalltalk.SendNode);
748
+
749
+ smalltalk.addMethod(
750
+ "_index_",
751
+ smalltalk.method({
752
+ selector: "index:",
753
+ fn: function (anInteger){
754
+ var self=this;
755
+ self["@index"]=anInteger;
756
+ return self}
757
+ }),
758
+ smalltalk.SendNode);
759
+
760
+ smalltalk.addMethod(
761
+ "_isSendNode",
762
+ smalltalk.method({
763
+ selector: "isSendNode",
764
+ fn: function (){
765
+ var self=this;
766
+ return true;
767
+ }
768
+ }),
769
+ smalltalk.SendNode);
770
+
771
+ smalltalk.addMethod(
772
+ "_nodes",
773
+ smalltalk.method({
774
+ selector: "nodes",
775
+ fn: function (){
776
+ var self=this;
777
+ var $2,$3,$1;
778
+ $2=smalltalk.send((smalltalk.Array || Array),"_withAll_",[smalltalk.send(self,"_arguments",[])]);
779
+ smalltalk.send($2,"_add_",[smalltalk.send(self,"_receiver",[])]);
780
+ $3=smalltalk.send($2,"_yourself",[]);
781
+ $1=$3;
782
+ return $1;
783
+ }
784
+ }),
785
+ smalltalk.SendNode);
786
+
787
+ smalltalk.addMethod(
788
+ "_receiver",
789
+ smalltalk.method({
790
+ selector: "receiver",
791
+ fn: function (){
792
+ var self=this;
793
+ return self["@receiver"];
794
+ }
795
+ }),
796
+ smalltalk.SendNode);
797
+
798
+ smalltalk.addMethod(
799
+ "_receiver_",
800
+ smalltalk.method({
801
+ selector: "receiver:",
802
+ fn: function (aNode){
803
+ var self=this;
804
+ self["@receiver"]=aNode;
805
+ return self}
806
+ }),
807
+ smalltalk.SendNode);
808
+
809
+ smalltalk.addMethod(
810
+ "_selector",
811
+ smalltalk.method({
812
+ selector: "selector",
813
+ fn: function (){
814
+ var self=this;
815
+ return self["@selector"];
816
+ }
817
+ }),
818
+ smalltalk.SendNode);
819
+
820
+ smalltalk.addMethod(
821
+ "_selector_",
822
+ smalltalk.method({
823
+ selector: "selector:",
824
+ fn: function (aString){
825
+ var self=this;
826
+ self["@selector"]=aString;
827
+ return self}
828
+ }),
829
+ smalltalk.SendNode);
830
+
831
+ smalltalk.addMethod(
832
+ "_superSend",
833
+ smalltalk.method({
834
+ selector: "superSend",
835
+ fn: function (){
836
+ var self=this;
837
+ var $1;
838
+ if(($receiver = self["@superSend"]) == nil || $receiver == undefined){
839
+ $1=false;
840
+ } else {
841
+ $1=self["@superSend"];
842
+ };
843
+ return $1;
844
+ }
845
+ }),
846
+ smalltalk.SendNode);
847
+
848
+ smalltalk.addMethod(
849
+ "_superSend_",
850
+ smalltalk.method({
851
+ selector: "superSend:",
852
+ fn: function (aBoolean){
853
+ var self=this;
854
+ self["@superSend"]=aBoolean;
855
+ return self}
856
+ }),
857
+ smalltalk.SendNode);
858
+
859
+ smalltalk.addMethod(
860
+ "_valueForReceiver_",
861
+ smalltalk.method({
862
+ selector: "valueForReceiver:",
863
+ fn: function (anObject){
864
+ var self=this;
865
+ var $2,$4,$3,$5,$1;
866
+ $2=smalltalk.send((smalltalk.SendNode || SendNode),"_new",[]);
867
+ $4=smalltalk.send(self,"_receiver",[]);
868
+ if(($receiver = $4) == nil || $receiver == undefined){
869
+ $3=anObject;
870
+ } else {
871
+ $3=smalltalk.send(smalltalk.send(self,"_receiver",[]),"_valueForReceiver_",[anObject]);
872
+ };
873
+ smalltalk.send($2,"_receiver_",[$3]);
874
+ smalltalk.send($2,"_selector_",[smalltalk.send(self,"_selector",[])]);
875
+ smalltalk.send($2,"_arguments_",[smalltalk.send(self,"_arguments",[])]);
876
+ $5=smalltalk.send($2,"_yourself",[]);
877
+ $1=$5;
878
+ return $1;
879
+ }
880
+ }),
881
+ smalltalk.SendNode);
882
+
883
+
884
+
885
+ smalltalk.addClass('SequenceNode', smalltalk.Node, ['temps', 'scope'], 'Compiler-AST');
886
+ smalltalk.addMethod(
887
+ "_accept_",
888
+ smalltalk.method({
889
+ selector: "accept:",
890
+ fn: function (aVisitor){
891
+ var self=this;
892
+ var $1;
893
+ $1=smalltalk.send(aVisitor,"_visitSequenceNode_",[self]);
894
+ return $1;
895
+ }
896
+ }),
897
+ smalltalk.SequenceNode);
898
+
899
+ smalltalk.addMethod(
900
+ "_asBlockSequenceNode",
901
+ smalltalk.method({
902
+ selector: "asBlockSequenceNode",
903
+ fn: function (){
904
+ var self=this;
905
+ var $2,$3,$1;
906
+ $2=smalltalk.send((smalltalk.BlockSequenceNode || BlockSequenceNode),"_new",[]);
907
+ smalltalk.send($2,"_nodes_",[smalltalk.send(self,"_nodes",[])]);
908
+ smalltalk.send($2,"_temps_",[smalltalk.send(self,"_temps",[])]);
909
+ $3=smalltalk.send($2,"_yourself",[]);
910
+ $1=$3;
911
+ return $1;
912
+ }
913
+ }),
914
+ smalltalk.SequenceNode);
915
+
916
+ smalltalk.addMethod(
917
+ "_scope",
918
+ smalltalk.method({
919
+ selector: "scope",
920
+ fn: function (){
921
+ var self=this;
922
+ return self["@scope"];
923
+ }
924
+ }),
925
+ smalltalk.SequenceNode);
926
+
927
+ smalltalk.addMethod(
928
+ "_scope_",
929
+ smalltalk.method({
930
+ selector: "scope:",
931
+ fn: function (aLexicalScope){
932
+ var self=this;
933
+ self["@scope"]=aLexicalScope;
934
+ return self}
935
+ }),
936
+ smalltalk.SequenceNode);
937
+
938
+ smalltalk.addMethod(
939
+ "_temps",
940
+ smalltalk.method({
941
+ selector: "temps",
942
+ fn: function (){
943
+ var self=this;
944
+ var $1;
945
+ if(($receiver = self["@temps"]) == nil || $receiver == undefined){
946
+ $1=[];
947
+ } else {
948
+ $1=self["@temps"];
949
+ };
950
+ return $1;
951
+ }
952
+ }),
953
+ smalltalk.SequenceNode);
954
+
955
+ smalltalk.addMethod(
956
+ "_temps_",
957
+ smalltalk.method({
958
+ selector: "temps:",
959
+ fn: function (aCollection){
960
+ var self=this;
961
+ self["@temps"]=aCollection;
962
+ return self}
963
+ }),
964
+ smalltalk.SequenceNode);
965
+
966
+
967
+
968
+ smalltalk.addClass('BlockSequenceNode', smalltalk.SequenceNode, [], 'Compiler-AST');
969
+ smalltalk.addMethod(
970
+ "_accept_",
971
+ smalltalk.method({
972
+ selector: "accept:",
973
+ fn: function (aVisitor){
974
+ var self=this;
975
+ var $1;
976
+ $1=smalltalk.send(aVisitor,"_visitBlockSequenceNode_",[self]);
977
+ return $1;
978
+ }
979
+ }),
980
+ smalltalk.BlockSequenceNode);
981
+
982
+ smalltalk.addMethod(
983
+ "_isBlockSequenceNode",
984
+ smalltalk.method({
985
+ selector: "isBlockSequenceNode",
986
+ fn: function (){
987
+ var self=this;
988
+ return true;
989
+ }
990
+ }),
991
+ smalltalk.BlockSequenceNode);
992
+
993
+
994
+
995
+ smalltalk.addClass('ValueNode', smalltalk.Node, ['value'], 'Compiler-AST');
996
+ smalltalk.addMethod(
997
+ "_accept_",
998
+ smalltalk.method({
999
+ selector: "accept:",
1000
+ fn: function (aVisitor){
1001
+ var self=this;
1002
+ var $1;
1003
+ $1=smalltalk.send(aVisitor,"_visitValueNode_",[self]);
1004
+ return $1;
1005
+ }
1006
+ }),
1007
+ smalltalk.ValueNode);
1008
+
1009
+ smalltalk.addMethod(
1010
+ "_isValueNode",
1011
+ smalltalk.method({
1012
+ selector: "isValueNode",
1013
+ fn: function (){
1014
+ var self=this;
1015
+ return true;
1016
+ }
1017
+ }),
1018
+ smalltalk.ValueNode);
1019
+
1020
+ smalltalk.addMethod(
1021
+ "_value",
1022
+ smalltalk.method({
1023
+ selector: "value",
1024
+ fn: function (){
1025
+ var self=this;
1026
+ return self["@value"];
1027
+ }
1028
+ }),
1029
+ smalltalk.ValueNode);
1030
+
1031
+ smalltalk.addMethod(
1032
+ "_value_",
1033
+ smalltalk.method({
1034
+ selector: "value:",
1035
+ fn: function (anObject){
1036
+ var self=this;
1037
+ self["@value"]=anObject;
1038
+ return self}
1039
+ }),
1040
+ smalltalk.ValueNode);
1041
+
1042
+
1043
+
1044
+ smalltalk.addClass('VariableNode', smalltalk.ValueNode, ['assigned', 'binding'], 'Compiler-AST');
1045
+ smalltalk.addMethod(
1046
+ "_accept_",
1047
+ smalltalk.method({
1048
+ selector: "accept:",
1049
+ fn: function (aVisitor){
1050
+ var self=this;
1051
+ var $1;
1052
+ $1=smalltalk.send(aVisitor,"_visitVariableNode_",[self]);
1053
+ return $1;
1054
+ }
1055
+ }),
1056
+ smalltalk.VariableNode);
1057
+
1058
+ smalltalk.addMethod(
1059
+ "_alias",
1060
+ smalltalk.method({
1061
+ selector: "alias",
1062
+ fn: function (){
1063
+ var self=this;
1064
+ var $1;
1065
+ $1=smalltalk.send(smalltalk.send(self,"_binding",[]),"_alias",[]);
1066
+ return $1;
1067
+ }
1068
+ }),
1069
+ smalltalk.VariableNode);
1070
+
1071
+ smalltalk.addMethod(
1072
+ "_assigned",
1073
+ smalltalk.method({
1074
+ selector: "assigned",
1075
+ fn: function (){
1076
+ var self=this;
1077
+ var $1;
1078
+ if(($receiver = self["@assigned"]) == nil || $receiver == undefined){
1079
+ $1=false;
1080
+ } else {
1081
+ $1=self["@assigned"];
1082
+ };
1083
+ return $1;
1084
+ }
1085
+ }),
1086
+ smalltalk.VariableNode);
1087
+
1088
+ smalltalk.addMethod(
1089
+ "_assigned_",
1090
+ smalltalk.method({
1091
+ selector: "assigned:",
1092
+ fn: function (aBoolean){
1093
+ var self=this;
1094
+ self["@assigned"]=aBoolean;
1095
+ return self}
1096
+ }),
1097
+ smalltalk.VariableNode);
1098
+
1099
+ smalltalk.addMethod(
1100
+ "_beAssigned",
1101
+ smalltalk.method({
1102
+ selector: "beAssigned",
1103
+ fn: function (){
1104
+ var self=this;
1105
+ smalltalk.send(smalltalk.send(self,"_binding",[]),"_validateAssignment",[]);
1106
+ self["@assigned"]=true;
1107
+ return self}
1108
+ }),
1109
+ smalltalk.VariableNode);
1110
+
1111
+ smalltalk.addMethod(
1112
+ "_binding",
1113
+ smalltalk.method({
1114
+ selector: "binding",
1115
+ fn: function (){
1116
+ var self=this;
1117
+ return self["@binding"];
1118
+ }
1119
+ }),
1120
+ smalltalk.VariableNode);
1121
+
1122
+ smalltalk.addMethod(
1123
+ "_binding_",
1124
+ smalltalk.method({
1125
+ selector: "binding:",
1126
+ fn: function (aScopeVar){
1127
+ var self=this;
1128
+ self["@binding"]=aScopeVar;
1129
+ return self}
1130
+ }),
1131
+ smalltalk.VariableNode);
1132
+
1133
+
1134
+
1135
+ smalltalk.addClass('ClassReferenceNode', smalltalk.VariableNode, [], 'Compiler-AST');
1136
+ smalltalk.addMethod(
1137
+ "_accept_",
1138
+ smalltalk.method({
1139
+ selector: "accept:",
1140
+ fn: function (aVisitor){
1141
+ var self=this;
1142
+ var $1;
1143
+ $1=smalltalk.send(aVisitor,"_visitClassReferenceNode_",[self]);
1144
+ return $1;
1145
+ }
1146
+ }),
1147
+ smalltalk.ClassReferenceNode);
1148
+
1149
+
1150
+