resin 0.3.0 → 0.3.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (50) hide show
  1. data/amber/bin/amberc +4 -3
  2. data/amber/js/IDE.deploy.js +147 -45
  3. data/amber/js/IDE.js +155 -53
  4. data/amber/js/Kernel-Classes.deploy.js +20 -14
  5. data/amber/js/Kernel-Classes.js +29 -18
  6. data/amber/js/Kernel-Collections.deploy.js +82 -0
  7. data/amber/js/Kernel-Collections.js +102 -0
  8. data/amber/js/Kernel-Methods.deploy.js +374 -261
  9. data/amber/js/Kernel-Methods.js +417 -269
  10. data/amber/js/Kernel-Objects.deploy.js +90 -28
  11. data/amber/js/Kernel-Objects.js +121 -34
  12. data/amber/js/Kernel-Tests.deploy.js +35 -0
  13. data/amber/js/Kernel-Tests.js +45 -0
  14. data/amber/js/SUnit.deploy.js +175 -17
  15. data/amber/js/SUnit.js +237 -24
  16. data/amber/js/amber.js +2 -1
  17. data/amber/js/boot.js +74 -18
  18. data/amber/js/lib/es5-shim-2.0.2/CHANGES +93 -0
  19. data/amber/js/lib/es5-shim-2.0.2/CONTRIBUTORS.md +25 -0
  20. data/amber/js/lib/es5-shim-2.0.2/LICENSE +19 -0
  21. data/amber/js/lib/es5-shim-2.0.2/README.md +161 -0
  22. data/amber/js/lib/es5-shim-2.0.2/es5-sham.js +348 -0
  23. data/amber/js/lib/es5-shim-2.0.2/es5-sham.min.js +6 -0
  24. data/amber/js/lib/es5-shim-2.0.2/es5-shim.js +963 -0
  25. data/amber/js/lib/es5-shim-2.0.2/es5-shim.min.js +16 -0
  26. data/amber/js/lib/es5-shim-2.0.2/minify +2 -0
  27. data/amber/js/lib/es5-shim-2.0.2/package.json +31 -0
  28. data/amber/js/lib/es5-shim-2.0.2/tests/helpers/h-kill.js +59 -0
  29. data/amber/js/lib/es5-shim-2.0.2/tests/helpers/h-matchers.js +34 -0
  30. data/amber/js/lib/es5-shim-2.0.2/tests/helpers/h.js +3 -0
  31. data/amber/js/lib/es5-shim-2.0.2/tests/index.html +62 -0
  32. data/amber/js/lib/es5-shim-2.0.2/tests/lib/jasmine-html.js +190 -0
  33. data/amber/js/lib/es5-shim-2.0.2/tests/lib/jasmine.css +166 -0
  34. data/amber/js/lib/es5-shim-2.0.2/tests/lib/jasmine.js +2477 -0
  35. data/amber/js/lib/es5-shim-2.0.2/tests/lib/jasmine_favicon.png +0 -0
  36. data/amber/js/lib/es5-shim-2.0.2/tests/lib/json2.js +478 -0
  37. data/amber/js/lib/es5-shim-2.0.2/tests/spec/s-array.js +1138 -0
  38. data/amber/js/lib/es5-shim-2.0.2/tests/spec/s-date.js +117 -0
  39. data/amber/js/lib/es5-shim-2.0.2/tests/spec/s-function.js +147 -0
  40. data/amber/js/lib/es5-shim-2.0.2/tests/spec/s-object.js +84 -0
  41. data/amber/js/lib/es5-shim-2.0.2/tests/spec/s-string.js +24 -0
  42. data/amber/st/IDE.st +15 -16
  43. data/amber/st/Kernel-Classes.st +9 -9
  44. data/amber/st/Kernel-Collections.st +37 -0
  45. data/amber/st/Kernel-Methods.st +63 -8
  46. data/amber/st/Kernel-Objects.st +34 -7
  47. data/amber/st/Kernel-Tests.st +10 -0
  48. data/amber/st/SUnit.st +86 -9
  49. metadata +44 -21
  50. data/amber/js/compat.js +0 -22
@@ -339,23 +339,28 @@ return $1;
339
339
  }),
340
340
  smalltalk.Behavior);
341
341
 
342
+ smalltalk.addMethod(
343
+ "_organization",
344
+ smalltalk.method({
345
+ selector: "organization",
346
+ fn: function (){
347
+ var self=this;
348
+ var $1;
349
+ $1=smalltalk.send(self,"_basicAt_",["organization"]);
350
+ return $1;
351
+ }
352
+ }),
353
+ smalltalk.Behavior);
354
+
342
355
  smalltalk.addMethod(
343
356
  "_protocols",
344
357
  smalltalk.method({
345
358
  selector: "protocols",
346
359
  fn: function (){
347
360
  var self=this;
348
- var $1,$2;
349
- var protocols;
350
- protocols=smalltalk.send((smalltalk.Array || Array),"_new",[]);
351
- smalltalk.send(smalltalk.send(self,"_methodDictionary",[]),"_do_",[(function(each){
352
- $1=smalltalk.send(protocols,"_includes_",[smalltalk.send(each,"_category",[])]);
353
- if(! smalltalk.assert($1)){
354
- return smalltalk.send(protocols,"_add_",[smalltalk.send(each,"_category",[])]);
355
- };
356
- })]);
357
- $2=smalltalk.send(protocols,"_sort",[]);
358
- return $2;
361
+ var $1;
362
+ $1=smalltalk.send(smalltalk.send(smalltalk.send(self,"_organization",[]),"_elements",[]),"_sorted",[]);
363
+ return $1;
359
364
  }
360
365
  }),
361
366
  smalltalk.Behavior);
@@ -399,9 +404,10 @@ selector: "removeCompiledMethod:",
399
404
  fn: function (aMethod){
400
405
  var self=this;
401
406
  var $1,$2;
402
- delete self.fn.prototype[aMethod.selector._asSelector()];
403
- delete self.fn.prototype.methods[aMethod.selector];
404
- smalltalk.init(self);;
407
+
408
+ smalltalk.removeMethod(aMethod)
409
+ smalltalk.init(self);
410
+ ;
405
411
  ;
406
412
  $1=smalltalk.send((smalltalk.MethodRemoved || MethodRemoved),"_new",[]);
407
413
  smalltalk.send($1,"_theClass_",[self]);
@@ -455,6 +455,24 @@ referencedClasses: []
455
455
  }),
456
456
  smalltalk.Behavior);
457
457
 
458
+ smalltalk.addMethod(
459
+ "_organization",
460
+ smalltalk.method({
461
+ selector: "organization",
462
+ category: 'accessing',
463
+ fn: function (){
464
+ var self=this;
465
+ var $1;
466
+ $1=smalltalk.send(self,"_basicAt_",["organization"]);
467
+ return $1;
468
+ },
469
+ args: [],
470
+ source: "organization\x0a\x09^ self basicAt: 'organization'",
471
+ messageSends: ["basicAt:"],
472
+ referencedClasses: []
473
+ }),
474
+ smalltalk.Behavior);
475
+
458
476
  smalltalk.addMethod(
459
477
  "_protocols",
460
478
  smalltalk.method({
@@ -462,22 +480,14 @@ selector: "protocols",
462
480
  category: 'accessing',
463
481
  fn: function (){
464
482
  var self=this;
465
- var $1,$2;
466
- var protocols;
467
- protocols=smalltalk.send((smalltalk.Array || Array),"_new",[]);
468
- smalltalk.send(smalltalk.send(self,"_methodDictionary",[]),"_do_",[(function(each){
469
- $1=smalltalk.send(protocols,"_includes_",[smalltalk.send(each,"_category",[])]);
470
- if(! smalltalk.assert($1)){
471
- return smalltalk.send(protocols,"_add_",[smalltalk.send(each,"_category",[])]);
472
- };
473
- })]);
474
- $2=smalltalk.send(protocols,"_sort",[]);
475
- return $2;
483
+ var $1;
484
+ $1=smalltalk.send(smalltalk.send(smalltalk.send(self,"_organization",[]),"_elements",[]),"_sorted",[]);
485
+ return $1;
476
486
  },
477
487
  args: [],
478
- source: "protocols\x0a | protocols |\x0a protocols := Array new.\x0a self methodDictionary do: [:each |\x0a\x09 (protocols includes: each category) ifFalse: [\x0a\x09\x09protocols add: each category]].\x0a ^protocols sort",
479
- messageSends: ["new", "do:", "ifFalse:", "add:", "category", "includes:", "methodDictionary", "sort"],
480
- referencedClasses: ["Array"]
488
+ source: "protocols\x0a ^ self organization elements sorted",
489
+ messageSends: ["sorted", "elements", "organization"],
490
+ referencedClasses: []
481
491
  }),
482
492
  smalltalk.Behavior);
483
493
 
@@ -531,9 +541,10 @@ category: 'compiling',
531
541
  fn: function (aMethod){
532
542
  var self=this;
533
543
  var $1,$2;
534
- delete self.fn.prototype[aMethod.selector._asSelector()];
535
- delete self.fn.prototype.methods[aMethod.selector];
536
- smalltalk.init(self);;
544
+
545
+ smalltalk.removeMethod(aMethod)
546
+ smalltalk.init(self);
547
+ ;
537
548
  ;
538
549
  $1=smalltalk.send((smalltalk.MethodRemoved || MethodRemoved),"_new",[]);
539
550
  smalltalk.send($1,"_theClass_",[self]);
@@ -542,7 +553,7 @@ $2=smalltalk.send($1,"_yourself",[]);
542
553
  smalltalk.send(smalltalk.send((smalltalk.SystemAnnouncer || SystemAnnouncer),"_current",[]),"_announce_",[$2]);
543
554
  return self},
544
555
  args: ["aMethod"],
545
- source: "removeCompiledMethod: aMethod\x0a\x09<delete self.fn.prototype[aMethod.selector._asSelector()];\x0a\x09delete self.fn.prototype.methods[aMethod.selector];\x0a\x09smalltalk.init(self);>.\x0a \x0a SystemAnnouncer current\x0a \x09\x09announce: (MethodRemoved new\x0a \x09theClass: self;\x0a method: aMethod;\x0a yourself)",
556
+ source: "removeCompiledMethod: aMethod\x0a\x09<\x0a \x09smalltalk.removeMethod(aMethod)\x0a\x09\x09smalltalk.init(self);\x0a >.\x0a \x0a SystemAnnouncer current\x0a \x09\x09announce: (MethodRemoved new\x0a \x09theClass: self;\x0a method: aMethod;\x0a yourself)",
546
557
  messageSends: ["announce:", "theClass:", "new", "method:", "yourself", "current"],
547
558
  referencedClasses: ["MethodRemoved", "SystemAnnouncer"]
548
559
  }),
@@ -3426,6 +3426,88 @@ smalltalk.Set);
3426
3426
 
3427
3427
 
3428
3428
 
3429
+ smalltalk.addClass('Queue', smalltalk.Object, ['read', 'readIndex', 'write'], 'Kernel-Collections');
3430
+ smalltalk.addMethod(
3431
+ "_back_",
3432
+ smalltalk.method({
3433
+ selector: "back:",
3434
+ fn: function (anObject){
3435
+ var self=this;
3436
+ smalltalk.send(self["@write"],"_add_",[anObject]);
3437
+ return self}
3438
+ }),
3439
+ smalltalk.Queue);
3440
+
3441
+ smalltalk.addMethod(
3442
+ "_front",
3443
+ smalltalk.method({
3444
+ selector: "front",
3445
+ fn: function (){
3446
+ 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
+ })]);
3451
+ return $1;
3452
+ }
3453
+ }),
3454
+ smalltalk.Queue);
3455
+
3456
+ smalltalk.addMethod(
3457
+ "_frontIfAbsent_",
3458
+ smalltalk.method({
3459
+ selector: "frontIfAbsent:",
3460
+ fn: function (aBlock){
3461
+ var self=this;
3462
+ var $1,$2,$3;
3463
+ var $early={};
3464
+ 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)){
3471
+ self["@read"]=[];
3472
+ self["@read"];
3473
+ self["@readIndex"]=(1);
3474
+ self["@readIndex"];
3475
+ };
3476
+ $3=smalltalk.send(aBlock,"_value",[]);
3477
+ throw $early=[$3];
3478
+ };
3479
+ self["@read"]=self["@write"];
3480
+ self["@read"];
3481
+ self["@readIndex"]=(1);
3482
+ self["@readIndex"];
3483
+ self["@write"]=smalltalk.send((smalltalk.OrderedCollection || OrderedCollection),"_new",[]);
3484
+ 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;
3490
+ }
3491
+ catch(e) {if(e===$early)return e[0]; throw e}
3492
+ }
3493
+ }),
3494
+ smalltalk.Queue);
3495
+
3496
+ smalltalk.addMethod(
3497
+ "_initialize",
3498
+ smalltalk.method({
3499
+ selector: "initialize",
3500
+ fn: function (){
3501
+ var self=this;
3502
+ self["@read"]=[];
3503
+ self["@readIndex"]=(1);
3504
+ self["@write"]=smalltalk.send((smalltalk.OrderedCollection || OrderedCollection),"_new",[]);
3505
+ return self}
3506
+ }),
3507
+ smalltalk.Queue);
3508
+
3509
+
3510
+
3429
3511
  smalltalk.addClass('RegularExpression', smalltalk.Object, [], 'Kernel-Collections');
3430
3512
  smalltalk.addMethod(
3431
3513
  "_compile_",
@@ -4622,6 +4622,108 @@ smalltalk.Set);
4622
4622
 
4623
4623
 
4624
4624
 
4625
+ smalltalk.addClass('Queue', smalltalk.Object, ['read', 'readIndex', 'write'], 'Kernel-Collections');
4626
+ smalltalk.addMethod(
4627
+ "_back_",
4628
+ smalltalk.method({
4629
+ selector: "back:",
4630
+ category: 'accessing',
4631
+ fn: function (anObject){
4632
+ var self=this;
4633
+ smalltalk.send(self["@write"],"_add_",[anObject]);
4634
+ return self},
4635
+ args: ["anObject"],
4636
+ source: "back: anObject\x0a\x09write add: anObject\x0a",
4637
+ messageSends: ["add:"],
4638
+ referencedClasses: []
4639
+ }),
4640
+ smalltalk.Queue);
4641
+
4642
+ smalltalk.addMethod(
4643
+ "_front",
4644
+ smalltalk.method({
4645
+ selector: "front",
4646
+ category: 'accessing',
4647
+ fn: function (){
4648
+ var self=this;
4649
+ var $1;
4650
+ $1=smalltalk.send(self,"_frontIfAbsent_",[(function(){
4651
+ return smalltalk.send(self,"_error_",["Cannot read from empty Queue."]);
4652
+ })]);
4653
+ return $1;
4654
+ },
4655
+ args: [],
4656
+ source: "front\x0a ^self frontIfAbsent: [ self error: 'Cannot read from empty Queue.']\x0a",
4657
+ messageSends: ["frontIfAbsent:", "error:"],
4658
+ referencedClasses: []
4659
+ }),
4660
+ smalltalk.Queue);
4661
+
4662
+ smalltalk.addMethod(
4663
+ "_frontIfAbsent_",
4664
+ smalltalk.method({
4665
+ selector: "frontIfAbsent:",
4666
+ category: 'accessing',
4667
+ fn: function (aBlock){
4668
+ var self=this;
4669
+ var $1,$2,$3;
4670
+ var $early={};
4671
+ try {
4672
+ var result;
4673
+ result=smalltalk.send(self["@read"],"_at_ifAbsent_",[self["@readIndex"],(function(){
4674
+ $1=smalltalk.send(self["@write"],"_isEmpty",[]);
4675
+ if(smalltalk.assert($1)){
4676
+ $2=smalltalk.send(self["@readIndex"],"__gt",[(1)]);
4677
+ if(smalltalk.assert($2)){
4678
+ self["@read"]=[];
4679
+ self["@read"];
4680
+ self["@readIndex"]=(1);
4681
+ self["@readIndex"];
4682
+ };
4683
+ $3=smalltalk.send(aBlock,"_value",[]);
4684
+ throw $early=[$3];
4685
+ };
4686
+ self["@read"]=self["@write"];
4687
+ self["@read"];
4688
+ self["@readIndex"]=(1);
4689
+ self["@readIndex"];
4690
+ self["@write"]=smalltalk.send((smalltalk.OrderedCollection || OrderedCollection),"_new",[]);
4691
+ self["@write"];
4692
+ return smalltalk.send(self["@read"],"_first",[]);
4693
+ })]);
4694
+ smalltalk.send(self["@read"],"_at_put_",[self["@readIndex"],nil]);
4695
+ self["@readIndex"]=smalltalk.send(self["@readIndex"],"__plus",[(1)]);
4696
+ return result;
4697
+ }
4698
+ catch(e) {if(e===$early)return e[0]; throw e}
4699
+ },
4700
+ args: ["aBlock"],
4701
+ source: "frontIfAbsent: aBlock\x0a\x09| result |\x0a\x09result := read at: readIndex ifAbsent: [\x0a\x09\x09write isEmpty ifTrue: [\x0a\x09\x09\x09readIndex > 1 ifTrue: [ read := #(). readIndex := 1 ].\x0a\x09\x09\x09^aBlock value ].\x0a \x09read := write.\x0a \x09readIndex := 1.\x0a \x09write := OrderedCollection new.\x0a \x09read first ].\x0a read at: readIndex put: nil.\x0a readIndex := readIndex + 1.\x0a ^result\x0a",
4702
+ messageSends: ["at:ifAbsent:", "ifTrue:", ">", "value", "isEmpty", "new", "first", "at:put:", "+"],
4703
+ referencedClasses: ["OrderedCollection"]
4704
+ }),
4705
+ smalltalk.Queue);
4706
+
4707
+ smalltalk.addMethod(
4708
+ "_initialize",
4709
+ smalltalk.method({
4710
+ selector: "initialize",
4711
+ category: 'initialization',
4712
+ fn: function (){
4713
+ var self=this;
4714
+ self["@read"]=[];
4715
+ self["@readIndex"]=(1);
4716
+ self["@write"]=smalltalk.send((smalltalk.OrderedCollection || OrderedCollection),"_new",[]);
4717
+ return self},
4718
+ args: [],
4719
+ source: "initialize\x0a\x09read := #().\x0a readIndex := 1.\x0a write := OrderedCollection new",
4720
+ messageSends: ["new"],
4721
+ referencedClasses: ["OrderedCollection"]
4722
+ }),
4723
+ smalltalk.Queue);
4724
+
4725
+
4726
+
4625
4727
  smalltalk.addClass('RegularExpression', smalltalk.Object, [], 'Kernel-Collections');
4626
4728
  smalltalk.addMethod(
4627
4729
  "_compile_",
@@ -4,11 +4,11 @@ smalltalk.addMethod(
4
4
  "_applyTo_arguments_",
5
5
  smalltalk.method({
6
6
  selector: "applyTo:arguments:",
7
- fn: function (anObject,aCollection){
8
- var self=this;
9
- return self.apply(anObject, aCollection);
10
- ;
11
- return self}
7
+ fn: function (anObject, aCollection) {
8
+ var self = this;
9
+ return self.apply(anObject, aCollection);
10
+ return self;
11
+ }
12
12
  }),
13
13
  smalltalk.BlockClosure);
14
14
 
@@ -16,11 +16,11 @@ smalltalk.addMethod(
16
16
  "_compiledSource",
17
17
  smalltalk.method({
18
18
  selector: "compiledSource",
19
- fn: function (){
20
- var self=this;
21
- return self.toString();
22
- ;
23
- return self}
19
+ fn: function () {
20
+ var self = this;
21
+ return self.toString();
22
+ return self;
23
+ }
24
24
  }),
25
25
  smalltalk.BlockClosure);
26
26
 
@@ -30,46 +30,44 @@ smalltalk.method({
30
30
  selector: "ensure:",
31
31
  fn: function (aBlock){
32
32
  var self=this;
33
- var $1;
34
- var success;
35
- success=false;
36
- $1=smalltalk.send((function(){
37
- smalltalk.send(self,"_value",[]);
38
- success=true;
39
- success;
40
- return smalltalk.send(aBlock,"_value",[]);
41
- }),"_on_do_",[(smalltalk.Error || Error),(function(ex){
42
- if(! smalltalk.assert(success)){
43
- smalltalk.send(aBlock,"_value",[]);
44
- };
45
- return smalltalk.send(ex,"_signal",[]);
46
- })]);
47
- return $1;
48
- }
33
+ try{self()}finally{return aBlock._value()};
34
+ ;
35
+ return self}
49
36
  }),
50
37
  smalltalk.BlockClosure);
51
38
 
52
39
  smalltalk.addMethod(
53
- "_new",
40
+ "_fork",
54
41
  smalltalk.method({
55
- selector: "new",
42
+ selector: "fork",
56
43
  fn: function (){
57
44
  var self=this;
58
- return new self();
59
- ;
45
+ smalltalk.send(smalltalk.send((smalltalk.ForkPool || ForkPool),"_default",[]),"_fork_",[self]);
60
46
  return self}
61
47
  }),
62
48
  smalltalk.BlockClosure);
63
49
 
50
+ smalltalk.addMethod(
51
+ "_new",
52
+ smalltalk.method({
53
+ selector: "new",
54
+ fn: function () {
55
+ var self = this;
56
+ return new self;
57
+ return self;
58
+ }
59
+ }),
60
+ smalltalk.BlockClosure);
61
+
64
62
  smalltalk.addMethod(
65
63
  "_newValue_",
66
64
  smalltalk.method({
67
65
  selector: "newValue:",
68
- fn: function (anObject){
69
- var self=this;
70
- return new self(anObject);
71
- ;
72
- return self}
66
+ fn: function (anObject) {
67
+ var self = this;
68
+ return new self(anObject);
69
+ return self;
70
+ }
73
71
  }),
74
72
  smalltalk.BlockClosure);
75
73
 
@@ -77,11 +75,11 @@ smalltalk.addMethod(
77
75
  "_newValue_value_",
78
76
  smalltalk.method({
79
77
  selector: "newValue:value:",
80
- fn: function (anObject,anObject2){
81
- var self=this;
82
- return new self(anObject, anObject2);
83
- ;
84
- return self}
78
+ fn: function (anObject, anObject2) {
79
+ var self = this;
80
+ return new self(anObject, anObject2);
81
+ return self;
82
+ }
85
83
  }),
86
84
  smalltalk.BlockClosure);
87
85
 
@@ -89,11 +87,11 @@ smalltalk.addMethod(
89
87
  "_newValue_value_value_",
90
88
  smalltalk.method({
91
89
  selector: "newValue:value:value:",
92
- fn: function (anObject,anObject2,anObject3){
93
- var self=this;
94
- return new self(anObject, anObject2);
95
- ;
96
- return self}
90
+ fn: function (anObject, anObject2, anObject3) {
91
+ var self = this;
92
+ return new self(anObject, anObject2);
93
+ return self;
94
+ }
97
95
  }),
98
96
  smalltalk.BlockClosure);
99
97
 
@@ -101,11 +99,11 @@ smalltalk.addMethod(
101
99
  "_numArgs",
102
100
  smalltalk.method({
103
101
  selector: "numArgs",
104
- fn: function (){
105
- var self=this;
106
- return self.length;
107
- ;
108
- return self}
102
+ fn: function () {
103
+ var self = this;
104
+ return self.length;
105
+ return self;
106
+ }
109
107
  }),
110
108
  smalltalk.BlockClosure);
111
109
 
@@ -113,18 +111,11 @@ smalltalk.addMethod(
113
111
  "_on_do_",
114
112
  smalltalk.method({
115
113
  selector: "on:do:",
116
- fn: function (anErrorClass,aBlock){
117
- var self=this;
118
- var $2,$1;
119
- $1=smalltalk.send(self,"_try_catch_",[self,(function(error){
120
- $2=smalltalk.send(error,"_isKindOf_",[anErrorClass]);
121
- if(smalltalk.assert($2)){
122
- return smalltalk.send(aBlock,"_value_",[error]);
123
- } else {
124
- return smalltalk.send(error,"_signal",[]);
125
- };
126
- })]);
127
- return $1;
114
+ fn: function (anErrorClass, aBlock) {
115
+ var self = this;
116
+ var $2, $1;
117
+ $1 = smalltalk.send(self, "_try_catch_", [self, function (error) {$2 = smalltalk.send(error, "_isKindOf_", [anErrorClass]);if (smalltalk.assert($2)) {return smalltalk.send(aBlock, "_value_", [error]);} else {return smalltalk.send(error, "_signal", []);}}]);
118
+ return $1;
128
119
  }
129
120
  }),
130
121
  smalltalk.BlockClosure);
@@ -133,11 +124,11 @@ smalltalk.addMethod(
133
124
  "_timeToRun",
134
125
  smalltalk.method({
135
126
  selector: "timeToRun",
136
- fn: function (){
137
- var self=this;
138
- var $1;
139
- $1=smalltalk.send((smalltalk.Date || Date),"_millisecondsToRun_",[self]);
140
- return $1;
127
+ fn: function () {
128
+ var self = this;
129
+ var $1;
130
+ $1 = smalltalk.send(smalltalk.Date || Date, "_millisecondsToRun_", [self]);
131
+ return $1;
141
132
  }
142
133
  }),
143
134
  smalltalk.BlockClosure);
@@ -146,11 +137,11 @@ smalltalk.addMethod(
146
137
  "_value",
147
138
  smalltalk.method({
148
139
  selector: "value",
149
- fn: function (){
150
- var self=this;
151
- return self();;
152
- ;
153
- return self}
140
+ fn: function () {
141
+ var self = this;
142
+ return self();
143
+ return self;
144
+ }
154
145
  }),
155
146
  smalltalk.BlockClosure);
156
147
 
@@ -158,11 +149,11 @@ smalltalk.addMethod(
158
149
  "_value_",
159
150
  smalltalk.method({
160
151
  selector: "value:",
161
- fn: function (anArg){
162
- var self=this;
163
- return self(anArg);;
164
- ;
165
- return self}
152
+ fn: function (anArg) {
153
+ var self = this;
154
+ return self(anArg);
155
+ return self;
156
+ }
166
157
  }),
167
158
  smalltalk.BlockClosure);
168
159
 
@@ -170,11 +161,11 @@ smalltalk.addMethod(
170
161
  "_value_value_",
171
162
  smalltalk.method({
172
163
  selector: "value:value:",
173
- fn: function (firstArg,secondArg){
174
- var self=this;
175
- return self(firstArg, secondArg);;
176
- ;
177
- return self}
164
+ fn: function (firstArg, secondArg) {
165
+ var self = this;
166
+ return self(firstArg, secondArg);
167
+ return self;
168
+ }
178
169
  }),
179
170
  smalltalk.BlockClosure);
180
171
 
@@ -182,11 +173,11 @@ smalltalk.addMethod(
182
173
  "_value_value_value_",
183
174
  smalltalk.method({
184
175
  selector: "value:value:value:",
185
- fn: function (firstArg,secondArg,thirdArg){
186
- var self=this;
187
- return self(firstArg, secondArg, thirdArg);;
188
- ;
189
- return self}
176
+ fn: function (firstArg, secondArg, thirdArg) {
177
+ var self = this;
178
+ return self(firstArg, secondArg, thirdArg);
179
+ return self;
180
+ }
190
181
  }),
191
182
  smalltalk.BlockClosure);
192
183
 
@@ -194,11 +185,11 @@ smalltalk.addMethod(
194
185
  "_valueWithInterval_",
195
186
  smalltalk.method({
196
187
  selector: "valueWithInterval:",
197
- fn: function (aNumber){
198
- var self=this;
199
- return setInterval(self, aNumber);
200
- ;
201
- return self}
188
+ fn: function (aNumber) {
189
+ var self = this;
190
+ return setInterval(self, aNumber);
191
+ return self;
192
+ }
202
193
  }),
203
194
  smalltalk.BlockClosure);
204
195
 
@@ -206,11 +197,11 @@ smalltalk.addMethod(
206
197
  "_valueWithPossibleArguments_",
207
198
  smalltalk.method({
208
199
  selector: "valueWithPossibleArguments:",
209
- fn: function (aCollection){
210
- var self=this;
211
- return self.apply(null, aCollection);;
212
- ;
213
- return self}
200
+ fn: function (aCollection) {
201
+ var self = this;
202
+ return self.apply(null, aCollection);
203
+ return self;
204
+ }
214
205
  }),
215
206
  smalltalk.BlockClosure);
216
207
 
@@ -218,11 +209,11 @@ smalltalk.addMethod(
218
209
  "_valueWithTimeout_",
219
210
  smalltalk.method({
220
211
  selector: "valueWithTimeout:",
221
- fn: function (aNumber){
222
- var self=this;
223
- return setTimeout(self, aNumber);
224
- ;
225
- return self}
212
+ fn: function (aNumber) {
213
+ var self = this;
214
+ return setTimeout(self, aNumber);
215
+ return self;
216
+ }
226
217
  }),
227
218
  smalltalk.BlockClosure);
228
219
 
@@ -230,11 +221,11 @@ smalltalk.addMethod(
230
221
  "_whileFalse",
231
222
  smalltalk.method({
232
223
  selector: "whileFalse",
233
- fn: function (){
234
- var self=this;
235
- smalltalk.send(self,"_whileFalse_",[(function(){
236
- })]);
237
- return self}
224
+ fn: function () {
225
+ var self = this;
226
+ smalltalk.send(self, "_whileFalse_", [function () {}]);
227
+ return self;
228
+ }
238
229
  }),
239
230
  smalltalk.BlockClosure);
240
231
 
@@ -242,11 +233,13 @@ smalltalk.addMethod(
242
233
  "_whileFalse_",
243
234
  smalltalk.method({
244
235
  selector: "whileFalse:",
245
- fn: function (aBlock){
246
- var self=this;
247
- while(!self()) {aBlock()};
248
- ;
249
- return self}
236
+ fn: function (aBlock) {
237
+ var self = this;
238
+ while (!self()) {
239
+ aBlock();
240
+ }
241
+ return self;
242
+ }
250
243
  }),
251
244
  smalltalk.BlockClosure);
252
245
 
@@ -254,11 +247,11 @@ smalltalk.addMethod(
254
247
  "_whileTrue",
255
248
  smalltalk.method({
256
249
  selector: "whileTrue",
257
- fn: function (){
258
- var self=this;
259
- smalltalk.send(self,"_whileTrue_",[(function(){
260
- })]);
261
- return self}
250
+ fn: function () {
251
+ var self = this;
252
+ smalltalk.send(self, "_whileTrue_", [function () {}]);
253
+ return self;
254
+ }
262
255
  }),
263
256
  smalltalk.BlockClosure);
264
257
 
@@ -266,11 +259,13 @@ smalltalk.addMethod(
266
259
  "_whileTrue_",
267
260
  smalltalk.method({
268
261
  selector: "whileTrue:",
269
- fn: function (aBlock){
270
- var self=this;
271
- while(self()) {aBlock()};
272
- ;
273
- return self}
262
+ fn: function (aBlock) {
263
+ var self = this;
264
+ while (self()) {
265
+ aBlock();
266
+ }
267
+ return self;
268
+ }
274
269
  }),
275
270
  smalltalk.BlockClosure);
276
271
 
@@ -281,11 +276,11 @@ smalltalk.addMethod(
281
276
  "_arguments",
282
277
  smalltalk.method({
283
278
  selector: "arguments",
284
- fn: function (){
285
- var self=this;
286
- return self.args || [];
287
- ;
288
- return self}
279
+ fn: function () {
280
+ var self = this;
281
+ return self.args || [];
282
+ return self;
283
+ }
289
284
  }),
290
285
  smalltalk.CompiledMethod);
291
286
 
@@ -293,16 +288,16 @@ smalltalk.addMethod(
293
288
  "_category",
294
289
  smalltalk.method({
295
290
  selector: "category",
296
- fn: function (){
297
- var self=this;
298
- var $2,$1;
299
- $2=smalltalk.send(self,"_basicAt_",["category"]);
300
- if(($receiver = $2) == nil || $receiver == undefined){
301
- $1="";
302
- } else {
303
- $1=$2;
304
- };
305
- return $1;
291
+ fn: function () {
292
+ var self = this;
293
+ var $2, $1;
294
+ $2 = smalltalk.send(self, "_basicAt_", ["category"]);
295
+ if (($receiver = $2) == nil || $receiver == undefined) {
296
+ $1 = "";
297
+ } else {
298
+ $1 = $2;
299
+ }
300
+ return $1;
306
301
  }
307
302
  }),
308
303
  smalltalk.CompiledMethod);
@@ -313,7 +308,21 @@ smalltalk.method({
313
308
  selector: "category:",
314
309
  fn: function (aString){
315
310
  var self=this;
311
+ var $1;
312
+ var oldCategory;
313
+ oldCategory=smalltalk.send(self,"_category",[]);
316
314
  smalltalk.send(self,"_basicAt_put_",["category",aString]);
315
+ $1=smalltalk.send(self,"_methodClass",[]);
316
+ if(($receiver = $1) == nil || $receiver == undefined){
317
+ $1;
318
+ } else {
319
+ smalltalk.send(smalltalk.send(smalltalk.send(self,"_methodClass",[]),"_organization",[]),"_addElement_",[aString]);
320
+ smalltalk.send(smalltalk.send(smalltalk.send(smalltalk.send(self,"_methodClass",[]),"_methods",[]),"_select_",[(function(each){
321
+ return smalltalk.send(smalltalk.send(each,"_category",[]),"__eq",[oldCategory]);
322
+ })]),"_ifEmpty_",[(function(){
323
+ return smalltalk.send(smalltalk.send(smalltalk.send(self,"_methodClass",[]),"_organization",[]),"_removeElement_",[oldCategory]);
324
+ })]);
325
+ };
317
326
  return self}
318
327
  }),
319
328
  smalltalk.CompiledMethod);
@@ -322,11 +331,11 @@ smalltalk.addMethod(
322
331
  "_fn",
323
332
  smalltalk.method({
324
333
  selector: "fn",
325
- fn: function (){
326
- var self=this;
327
- var $1;
328
- $1=smalltalk.send(self,"_basicAt_",["fn"]);
329
- return $1;
334
+ fn: function () {
335
+ var self = this;
336
+ var $1;
337
+ $1 = smalltalk.send(self, "_basicAt_", ["fn"]);
338
+ return $1;
330
339
  }
331
340
  }),
332
341
  smalltalk.CompiledMethod);
@@ -335,10 +344,11 @@ smalltalk.addMethod(
335
344
  "_fn_",
336
345
  smalltalk.method({
337
346
  selector: "fn:",
338
- fn: function (aBlock){
339
- var self=this;
340
- smalltalk.send(self,"_basicAt_put_",["fn",aBlock]);
341
- return self}
347
+ fn: function (aBlock) {
348
+ var self = this;
349
+ smalltalk.send(self, "_basicAt_put_", ["fn", aBlock]);
350
+ return self;
351
+ }
342
352
  }),
343
353
  smalltalk.CompiledMethod);
344
354
 
@@ -346,11 +356,11 @@ smalltalk.addMethod(
346
356
  "_messageSends",
347
357
  smalltalk.method({
348
358
  selector: "messageSends",
349
- fn: function (){
350
- var self=this;
351
- var $1;
352
- $1=smalltalk.send(self,"_basicAt_",["messageSends"]);
353
- return $1;
359
+ fn: function () {
360
+ var self = this;
361
+ var $1;
362
+ $1 = smalltalk.send(self, "_basicAt_", ["messageSends"]);
363
+ return $1;
354
364
  }
355
365
  }),
356
366
  smalltalk.CompiledMethod);
@@ -359,11 +369,11 @@ smalltalk.addMethod(
359
369
  "_methodClass",
360
370
  smalltalk.method({
361
371
  selector: "methodClass",
362
- fn: function (){
363
- var self=this;
364
- var $1;
365
- $1=smalltalk.send(self,"_basicAt_",["methodClass"]);
366
- return $1;
372
+ fn: function () {
373
+ var self = this;
374
+ var $1;
375
+ $1 = smalltalk.send(self, "_basicAt_", ["methodClass"]);
376
+ return $1;
367
377
  }
368
378
  }),
369
379
  smalltalk.CompiledMethod);
@@ -372,11 +382,11 @@ smalltalk.addMethod(
372
382
  "_protocol",
373
383
  smalltalk.method({
374
384
  selector: "protocol",
375
- fn: function (){
376
- var self=this;
377
- var $1;
378
- $1=smalltalk.send(self,"_category",[]);
379
- return $1;
385
+ fn: function () {
386
+ var self = this;
387
+ var $1;
388
+ $1 = smalltalk.send(self, "_category", []);
389
+ return $1;
380
390
  }
381
391
  }),
382
392
  smalltalk.CompiledMethod);
@@ -385,11 +395,11 @@ smalltalk.addMethod(
385
395
  "_referencedClasses",
386
396
  smalltalk.method({
387
397
  selector: "referencedClasses",
388
- fn: function (){
389
- var self=this;
390
- var $1;
391
- $1=smalltalk.send(self,"_basicAt_",["referencedClasses"]);
392
- return $1;
398
+ fn: function () {
399
+ var self = this;
400
+ var $1;
401
+ $1 = smalltalk.send(self, "_basicAt_", ["referencedClasses"]);
402
+ return $1;
393
403
  }
394
404
  }),
395
405
  smalltalk.CompiledMethod);
@@ -398,11 +408,11 @@ smalltalk.addMethod(
398
408
  "_selector",
399
409
  smalltalk.method({
400
410
  selector: "selector",
401
- fn: function (){
402
- var self=this;
403
- var $1;
404
- $1=smalltalk.send(self,"_basicAt_",["selector"]);
405
- return $1;
411
+ fn: function () {
412
+ var self = this;
413
+ var $1;
414
+ $1 = smalltalk.send(self, "_basicAt_", ["selector"]);
415
+ return $1;
406
416
  }
407
417
  }),
408
418
  smalltalk.CompiledMethod);
@@ -411,10 +421,11 @@ smalltalk.addMethod(
411
421
  "_selector_",
412
422
  smalltalk.method({
413
423
  selector: "selector:",
414
- fn: function (aString){
415
- var self=this;
416
- smalltalk.send(self,"_basicAt_put_",["selector",aString]);
417
- return self}
424
+ fn: function (aString) {
425
+ var self = this;
426
+ smalltalk.send(self, "_basicAt_put_", ["selector", aString]);
427
+ return self;
428
+ }
418
429
  }),
419
430
  smalltalk.CompiledMethod);
420
431
 
@@ -422,31 +433,137 @@ smalltalk.addMethod(
422
433
  "_source",
423
434
  smalltalk.method({
424
435
  selector: "source",
436
+ fn: function () {
437
+ var self = this;
438
+ var $2, $1;
439
+ $2 = smalltalk.send(self, "_basicAt_", ["source"]);
440
+ if (($receiver = $2) == nil || $receiver == undefined) {
441
+ $1 = "";
442
+ } else {
443
+ $1 = $2;
444
+ }
445
+ return $1;
446
+ }
447
+ }),
448
+ smalltalk.CompiledMethod);
449
+
450
+ smalltalk.addMethod(
451
+ "_source_",
452
+ smalltalk.method({
453
+ selector: "source:",
454
+ fn: function (aString) {
455
+ var self = this;
456
+ smalltalk.send(self, "_basicAt_put_", ["source", aString]);
457
+ return self;
458
+ }
459
+ }),
460
+ smalltalk.CompiledMethod);
461
+
462
+
463
+
464
+ smalltalk.addClass('ForkPool', smalltalk.Object, ['poolSize', 'maxPoolSize', 'queue', 'worker'], 'Kernel-Methods');
465
+ smalltalk.addMethod(
466
+ "_addWorker",
467
+ smalltalk.method({
468
+ selector: "addWorker",
469
+ fn: function (){
470
+ var self=this;
471
+ smalltalk.send(self["@worker"],"_valueWithTimeout_",[(0)]);
472
+ self["@poolSize"]=smalltalk.send(self["@poolSize"],"__plus",[(1)]);
473
+ return self}
474
+ }),
475
+ smalltalk.ForkPool);
476
+
477
+ smalltalk.addMethod(
478
+ "_fork_",
479
+ smalltalk.method({
480
+ selector: "fork:",
481
+ fn: function (aBlock){
482
+ var self=this;
483
+ var $1;
484
+ $1=smalltalk.send(self["@poolSize"],"__lt",[self["@maxPoolSize"]]);
485
+ if(smalltalk.assert($1)){
486
+ smalltalk.send(self,"_addWorker",[]);
487
+ };
488
+ smalltalk.send(self["@queue"],"_back_",[aBlock]);
489
+ return self}
490
+ }),
491
+ smalltalk.ForkPool);
492
+
493
+ smalltalk.addMethod(
494
+ "_initialize",
495
+ smalltalk.method({
496
+ selector: "initialize",
497
+ fn: function (){
498
+ var self=this;
499
+ var $1;
500
+ var sentinel;
501
+ self["@poolSize"]=(0);
502
+ self["@maxPoolSize"]=smalltalk.send(smalltalk.send(self,"_class",[]),"_defaultMaxPoolSize",[]);
503
+ self["@queue"]=smalltalk.send((smalltalk.Queue || Queue),"_new",[]);
504
+ sentinel=smalltalk.send((smalltalk.Object || Object),"_new",[]);
505
+ self["@worker"]=(function(){
506
+ var block;
507
+ self["@poolSize"]=smalltalk.send(self["@poolSize"],"__minus",[(1)]);
508
+ self["@poolSize"];
509
+ block=smalltalk.send(self["@queue"],"_frontIfAbsent_",[(function(){
510
+ return sentinel;
511
+ })]);
512
+ block;
513
+ $1=smalltalk.send(block,"__eq_eq",[sentinel]);
514
+ if(! smalltalk.assert($1)){
515
+ return smalltalk.send((function(){
516
+ return smalltalk.send(block,"_value",[]);
517
+ }),"_ensure_",[(function(){
518
+ return smalltalk.send(self,"_addWorker",[]);
519
+ })]);
520
+ };
521
+ });
522
+ return self}
523
+ }),
524
+ smalltalk.ForkPool);
525
+
526
+
527
+ smalltalk.ForkPool.klass.iVarNames = ['default'];
528
+ smalltalk.addMethod(
529
+ "_default",
530
+ smalltalk.method({
531
+ selector: "default",
425
532
  fn: function (){
426
533
  var self=this;
427
- var $2,$1;
428
- $2=smalltalk.send(self,"_basicAt_",["source"]);
429
- if(($receiver = $2) == nil || $receiver == undefined){
430
- $1="";
534
+ var $1;
535
+ if(($receiver = self["@default"]) == nil || $receiver == undefined){
536
+ self["@default"]=smalltalk.send(self,"_new",[]);
537
+ $1=self["@default"];
431
538
  } else {
432
- $1=$2;
539
+ $1=self["@default"];
433
540
  };
434
541
  return $1;
435
542
  }
436
543
  }),
437
- smalltalk.CompiledMethod);
544
+ smalltalk.ForkPool.klass);
438
545
 
439
546
  smalltalk.addMethod(
440
- "_source_",
547
+ "_defaultMaxPoolSize",
441
548
  smalltalk.method({
442
- selector: "source:",
443
- fn: function (aString){
549
+ selector: "defaultMaxPoolSize",
550
+ fn: function (){
444
551
  var self=this;
445
- smalltalk.send(self,"_basicAt_put_",["source",aString]);
446
- return self}
552
+ return (100);
553
+ }
447
554
  }),
448
- smalltalk.CompiledMethod);
555
+ smalltalk.ForkPool.klass);
449
556
 
557
+ smalltalk.addMethod(
558
+ "_resetDefault",
559
+ smalltalk.method({
560
+ selector: "resetDefault",
561
+ fn: function (){
562
+ var self=this;
563
+ self["@default"]=nil;
564
+ return self}
565
+ }),
566
+ smalltalk.ForkPool.klass);
450
567
 
451
568
 
452
569
  smalltalk.addClass('Message', smalltalk.Object, ['selector', 'arguments'], 'Kernel-Methods');
@@ -454,9 +571,9 @@ smalltalk.addMethod(
454
571
  "_arguments",
455
572
  smalltalk.method({
456
573
  selector: "arguments",
457
- fn: function (){
458
- var self=this;
459
- return self["@arguments"];
574
+ fn: function () {
575
+ var self = this;
576
+ return self['@arguments'];
460
577
  }
461
578
  }),
462
579
  smalltalk.Message);
@@ -465,10 +582,11 @@ smalltalk.addMethod(
465
582
  "_arguments_",
466
583
  smalltalk.method({
467
584
  selector: "arguments:",
468
- fn: function (anArray){
469
- var self=this;
470
- self["@arguments"]=anArray;
471
- return self}
585
+ fn: function (anArray) {
586
+ var self = this;
587
+ self['@arguments'] = anArray;
588
+ return self;
589
+ }
472
590
  }),
473
591
  smalltalk.Message);
474
592
 
@@ -476,17 +594,11 @@ smalltalk.addMethod(
476
594
  "_printString",
477
595
  smalltalk.method({
478
596
  selector: "printString",
479
- fn: function (){
480
- var self=this;
481
- var $2,$1;
482
- $1=smalltalk.send((smalltalk.String || String),"_streamContents_",[(function(aStream){
483
- smalltalk.send(aStream,"_nextPutAll_",[smalltalk.send(self,"_printString",[],smalltalk.Object)]);
484
- smalltalk.send(aStream,"_nextPutAll_",["("]);
485
- smalltalk.send(aStream,"_nextPutAll_",[self["@selector"]]);
486
- $2=smalltalk.send(aStream,"_nextPutAll_",[")"]);
487
- return $2;
488
- })]);
489
- return $1;
597
+ fn: function () {
598
+ var self = this;
599
+ var $2, $1;
600
+ $1 = smalltalk.send(smalltalk.String || String, "_streamContents_", [function (aStream) {smalltalk.send(aStream, "_nextPutAll_", [smalltalk.send(self, "_printString", [], smalltalk.Object)]);smalltalk.send(aStream, "_nextPutAll_", ["("]);smalltalk.send(aStream, "_nextPutAll_", [self['@selector']]);$2 = smalltalk.send(aStream, "_nextPutAll_", [")"]);return $2;}]);
601
+ return $1;
490
602
  }
491
603
  }),
492
604
  smalltalk.Message);
@@ -495,9 +607,9 @@ smalltalk.addMethod(
495
607
  "_selector",
496
608
  smalltalk.method({
497
609
  selector: "selector",
498
- fn: function (){
499
- var self=this;
500
- return self["@selector"];
610
+ fn: function () {
611
+ var self = this;
612
+ return self['@selector'];
501
613
  }
502
614
  }),
503
615
  smalltalk.Message);
@@ -506,10 +618,11 @@ smalltalk.addMethod(
506
618
  "_selector_",
507
619
  smalltalk.method({
508
620
  selector: "selector:",
509
- fn: function (aString){
510
- var self=this;
511
- self["@selector"]=aString;
512
- return self}
621
+ fn: function (aString) {
622
+ var self = this;
623
+ self['@selector'] = aString;
624
+ return self;
625
+ }
513
626
  }),
514
627
  smalltalk.Message);
515
628
 
@@ -517,11 +630,11 @@ smalltalk.addMethod(
517
630
  "_sendTo_",
518
631
  smalltalk.method({
519
632
  selector: "sendTo:",
520
- fn: function (anObject){
521
- var self=this;
522
- var $1;
523
- $1=smalltalk.send(smalltalk.send((smalltalk.Smalltalk || Smalltalk),"_current",[]),"_send_to_arguments_",[smalltalk.send(self,"_selector",[]),anObject,smalltalk.send(self,"_arguments",[])]);
524
- return $1;
633
+ fn: function (anObject) {
634
+ var self = this;
635
+ var $1;
636
+ $1 = smalltalk.send(smalltalk.send(smalltalk.Smalltalk || Smalltalk, "_current", []), "_send_to_arguments_", [smalltalk.send(self, "_selector", []), anObject, smalltalk.send(self, "_arguments", [])]);
637
+ return $1;
525
638
  }
526
639
  }),
527
640
  smalltalk.Message);
@@ -531,15 +644,15 @@ smalltalk.addMethod(
531
644
  "_selector_arguments_",
532
645
  smalltalk.method({
533
646
  selector: "selector:arguments:",
534
- fn: function (aString,anArray){
535
- var self=this;
536
- var $2,$3,$1;
537
- $2=smalltalk.send(self,"_new",[]);
538
- smalltalk.send($2,"_selector_",[aString]);
539
- smalltalk.send($2,"_arguments_",[anArray]);
540
- $3=smalltalk.send($2,"_yourself",[]);
541
- $1=$3;
542
- return $1;
647
+ fn: function (aString, anArray) {
648
+ var self = this;
649
+ var $2, $3, $1;
650
+ $2 = smalltalk.send(self, "_new", []);
651
+ smalltalk.send($2, "_selector_", [aString]);
652
+ smalltalk.send($2, "_arguments_", [anArray]);
653
+ $3 = smalltalk.send($2, "_yourself", []);
654
+ $1 = $3;
655
+ return $1;
543
656
  }
544
657
  }),
545
658
  smalltalk.Message.klass);
@@ -550,11 +663,11 @@ smalltalk.addMethod(
550
663
  "_asString",
551
664
  smalltalk.method({
552
665
  selector: "asString",
553
- fn: function (){
554
- var self=this;
555
- var $1;
556
- $1=smalltalk.send(smalltalk.send(smalltalk.send(smalltalk.send(smalltalk.send(self,"_receiver",[]),"_class",[]),"_printString",[]),"__comma",[" >> "]),"__comma",[smalltalk.send(self,"_selector",[])]);
557
- return $1;
666
+ fn: function () {
667
+ var self = this;
668
+ var $1;
669
+ $1 = smalltalk.send(smalltalk.send(smalltalk.send(smalltalk.send(smalltalk.send(self, "_receiver", []), "_class", []), "_printString", []), "__comma", [" >> "]), "__comma", [smalltalk.send(self, "_selector", [])]);
670
+ return $1;
558
671
  }
559
672
  }),
560
673
  smalltalk.MethodContext);
@@ -563,11 +676,11 @@ smalltalk.addMethod(
563
676
  "_home",
564
677
  smalltalk.method({
565
678
  selector: "home",
566
- fn: function (){
567
- var self=this;
568
- return self.homeContext;
569
- ;
570
- return self}
679
+ fn: function () {
680
+ var self = this;
681
+ return self.homeContext;
682
+ return self;
683
+ }
571
684
  }),
572
685
  smalltalk.MethodContext);
573
686
 
@@ -575,11 +688,11 @@ smalltalk.addMethod(
575
688
  "_pc",
576
689
  smalltalk.method({
577
690
  selector: "pc",
578
- fn: function (){
579
- var self=this;
580
- return self.pc;
581
- ;
582
- return self}
691
+ fn: function () {
692
+ var self = this;
693
+ return self.pc;
694
+ return self;
695
+ }
583
696
  }),
584
697
  smalltalk.MethodContext);
585
698
 
@@ -587,11 +700,11 @@ smalltalk.addMethod(
587
700
  "_printString",
588
701
  smalltalk.method({
589
702
  selector: "printString",
590
- fn: function (){
591
- var self=this;
592
- var $1;
593
- $1=smalltalk.send(smalltalk.send(smalltalk.send(smalltalk.send(self,"_printString",[],smalltalk.Object),"__comma",["("]),"__comma",[smalltalk.send(self,"_asString",[])]),"__comma",[")"]);
594
- return $1;
703
+ fn: function () {
704
+ var self = this;
705
+ var $1;
706
+ $1 = smalltalk.send(smalltalk.send(smalltalk.send(smalltalk.send(self, "_printString", [], smalltalk.Object), "__comma", ["("]), "__comma", [smalltalk.send(self, "_asString", [])]), "__comma", [")"]);
707
+ return $1;
595
708
  }
596
709
  }),
597
710
  smalltalk.MethodContext);
@@ -600,11 +713,11 @@ smalltalk.addMethod(
600
713
  "_receiver",
601
714
  smalltalk.method({
602
715
  selector: "receiver",
603
- fn: function (){
604
- var self=this;
605
- return self.receiver;
606
- ;
607
- return self}
716
+ fn: function () {
717
+ var self = this;
718
+ return self.receiver;
719
+ return self;
720
+ }
608
721
  }),
609
722
  smalltalk.MethodContext);
610
723
 
@@ -612,11 +725,11 @@ smalltalk.addMethod(
612
725
  "_selector",
613
726
  smalltalk.method({
614
727
  selector: "selector",
615
- fn: function (){
616
- var self=this;
617
- return smalltalk.convertSelector(self.selector);
618
- ;
619
- return self}
728
+ fn: function () {
729
+ var self = this;
730
+ return smalltalk.convertSelector(self.selector);
731
+ return self;
732
+ }
620
733
  }),
621
734
  smalltalk.MethodContext);
622
735
 
@@ -624,11 +737,11 @@ smalltalk.addMethod(
624
737
  "_temps",
625
738
  smalltalk.method({
626
739
  selector: "temps",
627
- fn: function (){
628
- var self=this;
629
- return self.temps;
630
- ;
631
- return self}
740
+ fn: function () {
741
+ var self = this;
742
+ return self.temps;
743
+ return self;
744
+ }
632
745
  }),
633
746
  smalltalk.MethodContext);
634
747