resin 0.0.1 → 0.0.2
Sign up to get free protection for your applications and to get access to all the features.
- data/amber/images/amber.svg +706 -0
- data/amber/js/Canvas.deploy.js +1311 -400
- data/amber/js/Canvas.js +1750 -424
- data/amber/js/Compiler.deploy.js +615 -615
- data/amber/js/Compiler.js +1367 -1367
- data/amber/js/IDE.deploy.js +1381 -1345
- data/amber/js/IDE.js +1949 -1903
- data/amber/js/Kernel-Announcements.deploy.js +37 -37
- data/amber/js/Kernel-Announcements.js +52 -52
- data/amber/js/Kernel-Collections.deploy.js +961 -950
- data/amber/js/Kernel-Collections.js +2064 -2053
- data/amber/js/Kernel-Methods.deploy.js +323 -260
- data/amber/js/Kernel-Methods.js +395 -327
- data/amber/js/Kernel-Objects.deploy.js +1846 -1104
- data/amber/js/Kernel-Objects.js +2142 -1194
- data/amber/js/boot.js +44 -29
- data/amber/js/parser.js +234 -17
- data/amber/js/parser.pegjs +9 -6
- data/amber/st/Canvas.st +474 -146
- data/amber/st/Compiler.st +418 -417
- data/amber/st/IDE.st +803 -772
- data/amber/st/Kernel-Announcements.st +27 -27
- data/amber/st/Kernel-Collections.st +289 -268
- data/amber/st/Kernel-Methods.st +104 -100
- data/amber/st/Kernel-Objects.st +277 -80
- metadata +18 -17
@@ -1,136 +1,163 @@
|
|
1
1
|
smalltalk.addPackage('Kernel-Methods', {});
|
2
|
-
smalltalk.addClass('
|
2
|
+
smalltalk.addClass('Message', smalltalk.Object, ['selector', 'arguments'], 'Kernel-Methods');
|
3
3
|
smalltalk.addMethod(
|
4
|
-
unescape('
|
4
|
+
unescape('_selector'),
|
5
5
|
smalltalk.method({
|
6
|
-
selector: unescape('
|
7
|
-
fn: function (){
|
8
|
-
var self=this;
|
9
|
-
return
|
10
|
-
return self;
|
6
|
+
selector: unescape('selector'),
|
7
|
+
fn: function () {
|
8
|
+
var self = this;
|
9
|
+
return self['@selector'];
|
10
|
+
return self;
|
11
|
+
}
|
11
12
|
}),
|
12
|
-
smalltalk.
|
13
|
+
smalltalk.Message);
|
13
14
|
|
14
15
|
smalltalk.addMethod(
|
15
|
-
unescape('
|
16
|
+
unescape('_selector_'),
|
16
17
|
smalltalk.method({
|
17
|
-
selector: unescape('
|
18
|
-
fn: function (aString){
|
19
|
-
var self=this;
|
20
|
-
|
21
|
-
return self;
|
18
|
+
selector: unescape('selector%3A'),
|
19
|
+
fn: function (aString) {
|
20
|
+
var self = this;
|
21
|
+
self['@selector'] = aString;
|
22
|
+
return self;
|
23
|
+
}
|
22
24
|
}),
|
23
|
-
smalltalk.
|
25
|
+
smalltalk.Message);
|
24
26
|
|
25
27
|
smalltalk.addMethod(
|
26
|
-
unescape('
|
28
|
+
unescape('_arguments_'),
|
27
29
|
smalltalk.method({
|
28
|
-
selector: unescape('
|
29
|
-
fn: function (){
|
30
|
-
var self=this;
|
31
|
-
|
32
|
-
return self;
|
30
|
+
selector: unescape('arguments%3A'),
|
31
|
+
fn: function (anArray) {
|
32
|
+
var self = this;
|
33
|
+
self['@arguments'] = anArray;
|
34
|
+
return self;
|
35
|
+
}
|
33
36
|
}),
|
34
|
-
smalltalk.
|
37
|
+
smalltalk.Message);
|
35
38
|
|
36
39
|
smalltalk.addMethod(
|
37
|
-
unescape('
|
40
|
+
unescape('_arguments'),
|
38
41
|
smalltalk.method({
|
39
|
-
selector: unescape('
|
40
|
-
fn: function (
|
41
|
-
var self=this;
|
42
|
-
|
43
|
-
return self;
|
42
|
+
selector: unescape('arguments'),
|
43
|
+
fn: function () {
|
44
|
+
var self = this;
|
45
|
+
return self['@arguments'];
|
46
|
+
return self;
|
47
|
+
}
|
44
48
|
}),
|
45
|
-
smalltalk.
|
49
|
+
smalltalk.Message);
|
46
50
|
|
47
51
|
smalltalk.addMethod(
|
48
|
-
unescape('
|
52
|
+
unescape('_printString'),
|
49
53
|
smalltalk.method({
|
50
|
-
selector: unescape('
|
51
|
-
fn: function (){
|
52
|
-
var self=this;
|
53
|
-
return smalltalk.send(self, "
|
54
|
-
return self;
|
54
|
+
selector: unescape('printString'),
|
55
|
+
fn: function () {
|
56
|
+
var self = this;
|
57
|
+
return smalltalk.send(smalltalk.String || String, "_streamContents_", [function (aStream) {return function ($rec) {smalltalk.send($rec, "_nextPutAll_", [smalltalk.send(self, "_printString", [], smalltalk.Object)]);smalltalk.send($rec, "_nextPutAll_", [unescape("%28")]);smalltalk.send($rec, "_nextPutAll_", [self['@selector']]);return smalltalk.send($rec, "_nextPutAll_", [unescape("%29")]);}(aStream);}]);
|
58
|
+
return self;
|
59
|
+
}
|
55
60
|
}),
|
56
|
-
smalltalk.
|
61
|
+
smalltalk.Message);
|
57
62
|
|
58
63
|
smalltalk.addMethod(
|
59
|
-
unescape('
|
64
|
+
unescape('_sendTo_'),
|
60
65
|
smalltalk.method({
|
61
|
-
selector: unescape('
|
62
|
-
fn: function (
|
63
|
-
var self=this;
|
64
|
-
smalltalk.send(self, "
|
65
|
-
return self;
|
66
|
+
selector: unescape('sendTo%3A'),
|
67
|
+
fn: function (anObject) {
|
68
|
+
var self = this;
|
69
|
+
smalltalk.send(smalltalk.send(smalltalk.Smalltalk || Smalltalk, "_current", []), "_send_to_arguments_", [smalltalk.send(self, "_selector", []), anObject, smalltalk.send(self, "_arguments", [])]);
|
70
|
+
return self;
|
71
|
+
}
|
66
72
|
}),
|
67
|
-
smalltalk.
|
73
|
+
smalltalk.Message);
|
74
|
+
|
68
75
|
|
69
76
|
smalltalk.addMethod(
|
70
|
-
unescape('
|
77
|
+
unescape('_selector_arguments_'),
|
71
78
|
smalltalk.method({
|
72
|
-
selector: unescape('
|
73
|
-
fn: function (){
|
74
|
-
var self=this;
|
75
|
-
return smalltalk.send(
|
76
|
-
return self;
|
79
|
+
selector: unescape('selector%3Aarguments%3A'),
|
80
|
+
fn: function (aString, anArray) {
|
81
|
+
var self = this;
|
82
|
+
return function ($rec) {smalltalk.send($rec, "_selector_", [aString]);smalltalk.send($rec, "_arguments_", [anArray]);return smalltalk.send($rec, "_yourself", []);}(smalltalk.send(self, "_new", []));
|
83
|
+
return self;
|
84
|
+
}
|
77
85
|
}),
|
78
|
-
smalltalk.
|
86
|
+
smalltalk.Message.klass);
|
87
|
+
|
79
88
|
|
89
|
+
smalltalk.addClass('MethodContext', smalltalk.Object, [], 'Kernel-Methods');
|
80
90
|
smalltalk.addMethod(
|
81
|
-
unescape('
|
91
|
+
unescape('_receiver'),
|
82
92
|
smalltalk.method({
|
83
|
-
selector: unescape('
|
84
|
-
fn: function (
|
85
|
-
var self=this;
|
86
|
-
|
87
|
-
return self;
|
93
|
+
selector: unescape('receiver'),
|
94
|
+
fn: function () {
|
95
|
+
var self = this;
|
96
|
+
return self.receiver;
|
97
|
+
return self;
|
98
|
+
}
|
88
99
|
}),
|
89
|
-
smalltalk.
|
100
|
+
smalltalk.MethodContext);
|
90
101
|
|
91
102
|
smalltalk.addMethod(
|
92
|
-
unescape('
|
103
|
+
unescape('_selector'),
|
93
104
|
smalltalk.method({
|
94
|
-
selector: unescape('
|
95
|
-
fn: function (){
|
96
|
-
var self=this;
|
97
|
-
return smalltalk.
|
98
|
-
return self;
|
105
|
+
selector: unescape('selector'),
|
106
|
+
fn: function () {
|
107
|
+
var self = this;
|
108
|
+
return smalltalk.convertSelector(self.selector);
|
109
|
+
return self;
|
110
|
+
}
|
99
111
|
}),
|
100
|
-
smalltalk.
|
112
|
+
smalltalk.MethodContext);
|
101
113
|
|
102
114
|
smalltalk.addMethod(
|
103
|
-
unescape('
|
115
|
+
unescape('_home'),
|
104
116
|
smalltalk.method({
|
105
|
-
selector: unescape('
|
106
|
-
fn: function (){
|
107
|
-
var self=this;
|
108
|
-
return
|
109
|
-
return self;
|
117
|
+
selector: unescape('home'),
|
118
|
+
fn: function () {
|
119
|
+
var self = this;
|
120
|
+
return self.homeContext;
|
121
|
+
return self;
|
122
|
+
}
|
110
123
|
}),
|
111
|
-
smalltalk.
|
124
|
+
smalltalk.MethodContext);
|
112
125
|
|
113
126
|
smalltalk.addMethod(
|
114
|
-
unescape('
|
127
|
+
unescape('_temps'),
|
115
128
|
smalltalk.method({
|
116
|
-
selector: unescape('
|
117
|
-
fn: function (){
|
118
|
-
var self=this;
|
119
|
-
return
|
120
|
-
return self;
|
129
|
+
selector: unescape('temps'),
|
130
|
+
fn: function () {
|
131
|
+
var self = this;
|
132
|
+
return self.temps;
|
133
|
+
return self;
|
134
|
+
}
|
121
135
|
}),
|
122
|
-
smalltalk.
|
136
|
+
smalltalk.MethodContext);
|
123
137
|
|
124
138
|
smalltalk.addMethod(
|
125
|
-
unescape('
|
139
|
+
unescape('_printString'),
|
126
140
|
smalltalk.method({
|
127
|
-
selector: unescape('
|
128
|
-
fn: function (){
|
129
|
-
var self=this;
|
130
|
-
return self.
|
131
|
-
return self;
|
141
|
+
selector: unescape('printString'),
|
142
|
+
fn: function () {
|
143
|
+
var self = this;
|
144
|
+
return smalltalk.send(smalltalk.send(smalltalk.send(smalltalk.send(self, "_printString", [], smalltalk.Object), "__comma", [unescape("%28")]), "__comma", [smalltalk.send(self, "_asString", [])]), "__comma", [unescape("%29")]);
|
145
|
+
return self;
|
146
|
+
}
|
132
147
|
}),
|
133
|
-
smalltalk.
|
148
|
+
smalltalk.MethodContext);
|
149
|
+
|
150
|
+
smalltalk.addMethod(
|
151
|
+
unescape('_asString'),
|
152
|
+
smalltalk.method({
|
153
|
+
selector: unescape('asString'),
|
154
|
+
fn: function () {
|
155
|
+
var self = this;
|
156
|
+
return smalltalk.send(smalltalk.send(smalltalk.send(smalltalk.send(smalltalk.send(self, "_receiver", []), "_class", []), "_printString", []), "__comma", [unescape("%20%3E%3E%20")]), "__comma", [smalltalk.send(self, "_selector", [])]);
|
157
|
+
return self;
|
158
|
+
}
|
159
|
+
}),
|
160
|
+
smalltalk.MethodContext);
|
134
161
|
|
135
162
|
|
136
163
|
|
@@ -139,10 +166,11 @@ smalltalk.addMethod(
|
|
139
166
|
unescape('_compiledSource'),
|
140
167
|
smalltalk.method({
|
141
168
|
selector: unescape('compiledSource'),
|
142
|
-
fn: function (){
|
143
|
-
var self=this;
|
144
|
-
return self.toString();
|
145
|
-
return self;
|
169
|
+
fn: function () {
|
170
|
+
var self = this;
|
171
|
+
return self.toString();
|
172
|
+
return self;
|
173
|
+
}
|
146
174
|
}),
|
147
175
|
smalltalk.BlockClosure);
|
148
176
|
|
@@ -150,10 +178,13 @@ smalltalk.addMethod(
|
|
150
178
|
unescape('_whileTrue_'),
|
151
179
|
smalltalk.method({
|
152
180
|
selector: unescape('whileTrue%3A'),
|
153
|
-
fn: function (aBlock){
|
154
|
-
var self=this;
|
155
|
-
while(self()) {
|
156
|
-
|
181
|
+
fn: function (aBlock) {
|
182
|
+
var self = this;
|
183
|
+
while (self()) {
|
184
|
+
aBlock();
|
185
|
+
}
|
186
|
+
return self;
|
187
|
+
}
|
157
188
|
}),
|
158
189
|
smalltalk.BlockClosure);
|
159
190
|
|
@@ -161,10 +192,13 @@ smalltalk.addMethod(
|
|
161
192
|
unescape('_whileFalse_'),
|
162
193
|
smalltalk.method({
|
163
194
|
selector: unescape('whileFalse%3A'),
|
164
|
-
fn: function (aBlock){
|
165
|
-
var self=this;
|
166
|
-
while(!self()) {
|
167
|
-
|
195
|
+
fn: function (aBlock) {
|
196
|
+
var self = this;
|
197
|
+
while (!self()) {
|
198
|
+
aBlock();
|
199
|
+
}
|
200
|
+
return self;
|
201
|
+
}
|
168
202
|
}),
|
169
203
|
smalltalk.BlockClosure);
|
170
204
|
|
@@ -172,10 +206,11 @@ smalltalk.addMethod(
|
|
172
206
|
unescape('_value'),
|
173
207
|
smalltalk.method({
|
174
208
|
selector: unescape('value'),
|
175
|
-
fn: function (){
|
176
|
-
var self=this;
|
177
|
-
return self()
|
178
|
-
return self;
|
209
|
+
fn: function () {
|
210
|
+
var self = this;
|
211
|
+
return self();
|
212
|
+
return self;
|
213
|
+
}
|
179
214
|
}),
|
180
215
|
smalltalk.BlockClosure);
|
181
216
|
|
@@ -183,10 +218,11 @@ smalltalk.addMethod(
|
|
183
218
|
unescape('_value_'),
|
184
219
|
smalltalk.method({
|
185
220
|
selector: unescape('value%3A'),
|
186
|
-
fn: function (anArg){
|
187
|
-
var self=this;
|
188
|
-
return self(anArg)
|
189
|
-
return self;
|
221
|
+
fn: function (anArg) {
|
222
|
+
var self = this;
|
223
|
+
return self(anArg);
|
224
|
+
return self;
|
225
|
+
}
|
190
226
|
}),
|
191
227
|
smalltalk.BlockClosure);
|
192
228
|
|
@@ -194,10 +230,11 @@ smalltalk.addMethod(
|
|
194
230
|
unescape('_value_value_'),
|
195
231
|
smalltalk.method({
|
196
232
|
selector: unescape('value%3Avalue%3A'),
|
197
|
-
fn: function (firstArg, secondArg){
|
198
|
-
var self=this;
|
199
|
-
return self(firstArg, secondArg)
|
200
|
-
return self;
|
233
|
+
fn: function (firstArg, secondArg) {
|
234
|
+
var self = this;
|
235
|
+
return self(firstArg, secondArg);
|
236
|
+
return self;
|
237
|
+
}
|
201
238
|
}),
|
202
239
|
smalltalk.BlockClosure);
|
203
240
|
|
@@ -205,10 +242,11 @@ smalltalk.addMethod(
|
|
205
242
|
unescape('_value_value_value_'),
|
206
243
|
smalltalk.method({
|
207
244
|
selector: unescape('value%3Avalue%3Avalue%3A'),
|
208
|
-
fn: function (firstArg, secondArg, thirdArg){
|
209
|
-
var self=this;
|
210
|
-
return self(firstArg, secondArg, thirdArg)
|
211
|
-
return self;
|
245
|
+
fn: function (firstArg, secondArg, thirdArg) {
|
246
|
+
var self = this;
|
247
|
+
return self(firstArg, secondArg, thirdArg);
|
248
|
+
return self;
|
249
|
+
}
|
212
250
|
}),
|
213
251
|
smalltalk.BlockClosure);
|
214
252
|
|
@@ -216,10 +254,11 @@ smalltalk.addMethod(
|
|
216
254
|
unescape('_valueWithPossibleArguments_'),
|
217
255
|
smalltalk.method({
|
218
256
|
selector: unescape('valueWithPossibleArguments%3A'),
|
219
|
-
fn: function (aCollection){
|
220
|
-
var self=this;
|
221
|
-
return self.apply(null, aCollection)
|
222
|
-
return self;
|
257
|
+
fn: function (aCollection) {
|
258
|
+
var self = this;
|
259
|
+
return self.apply(null, aCollection);
|
260
|
+
return self;
|
261
|
+
}
|
223
262
|
}),
|
224
263
|
smalltalk.BlockClosure);
|
225
264
|
|
@@ -227,10 +266,11 @@ smalltalk.addMethod(
|
|
227
266
|
unescape('_on_do_'),
|
228
267
|
smalltalk.method({
|
229
268
|
selector: unescape('on%3Ado%3A'),
|
230
|
-
fn: function (anErrorClass, aBlock){
|
231
|
-
var self=this;
|
232
|
-
return smalltalk.send(self, "_try_catch_", [self,
|
233
|
-
return self;
|
269
|
+
fn: function (anErrorClass, aBlock) {
|
270
|
+
var self = this;
|
271
|
+
return smalltalk.send(self, "_try_catch_", [self, function (error) {return ($receiver = smalltalk.send(error, "_isKindOf_", [anErrorClass])).klass === smalltalk.Boolean ? $receiver ? function () {return smalltalk.send(aBlock, "_value_", [error]);}() : function () {return smalltalk.send(error, "_signal", []);}() : smalltalk.send($receiver, "_ifTrue_ifFalse_", [function () {return smalltalk.send(aBlock, "_value_", [error]);}, function () {return smalltalk.send(error, "_signal", []);}]);}]);
|
272
|
+
return self;
|
273
|
+
}
|
234
274
|
}),
|
235
275
|
smalltalk.BlockClosure);
|
236
276
|
|
@@ -238,10 +278,11 @@ smalltalk.addMethod(
|
|
238
278
|
unescape('_valueWithTimeout_'),
|
239
279
|
smalltalk.method({
|
240
280
|
selector: unescape('valueWithTimeout%3A'),
|
241
|
-
fn: function (aNumber){
|
242
|
-
var self=this;
|
243
|
-
return setTimeout(self, aNumber);
|
244
|
-
return self;
|
281
|
+
fn: function (aNumber) {
|
282
|
+
var self = this;
|
283
|
+
return setTimeout(self, aNumber);
|
284
|
+
return self;
|
285
|
+
}
|
245
286
|
}),
|
246
287
|
smalltalk.BlockClosure);
|
247
288
|
|
@@ -249,10 +290,11 @@ smalltalk.addMethod(
|
|
249
290
|
unescape('_valueWithInterval_'),
|
250
291
|
smalltalk.method({
|
251
292
|
selector: unescape('valueWithInterval%3A'),
|
252
|
-
fn: function (aNumber){
|
253
|
-
var self=this;
|
254
|
-
return setInterval(self, aNumber);
|
255
|
-
return self;
|
293
|
+
fn: function (aNumber) {
|
294
|
+
var self = this;
|
295
|
+
return setInterval(self, aNumber);
|
296
|
+
return self;
|
297
|
+
}
|
256
298
|
}),
|
257
299
|
smalltalk.BlockClosure);
|
258
300
|
|
@@ -260,10 +302,11 @@ smalltalk.addMethod(
|
|
260
302
|
unescape('_whileFalse'),
|
261
303
|
smalltalk.method({
|
262
304
|
selector: unescape('whileFalse'),
|
263
|
-
fn: function (){
|
264
|
-
var self=this;
|
265
|
-
smalltalk.send(self, "_whileFalse_", [
|
266
|
-
return self;
|
305
|
+
fn: function () {
|
306
|
+
var self = this;
|
307
|
+
smalltalk.send(self, "_whileFalse_", [function () {return nil;}]);
|
308
|
+
return self;
|
309
|
+
}
|
267
310
|
}),
|
268
311
|
smalltalk.BlockClosure);
|
269
312
|
|
@@ -271,10 +314,11 @@ smalltalk.addMethod(
|
|
271
314
|
unescape('_whileTrue'),
|
272
315
|
smalltalk.method({
|
273
316
|
selector: unescape('whileTrue'),
|
274
|
-
fn: function (){
|
275
|
-
var self=this;
|
276
|
-
smalltalk.send(self, "_whileTrue_", [
|
277
|
-
return self;
|
317
|
+
fn: function () {
|
318
|
+
var self = this;
|
319
|
+
smalltalk.send(self, "_whileTrue_", [function () {return nil;}]);
|
320
|
+
return self;
|
321
|
+
}
|
278
322
|
}),
|
279
323
|
smalltalk.BlockClosure);
|
280
324
|
|
@@ -282,10 +326,11 @@ smalltalk.addMethod(
|
|
282
326
|
unescape('_new'),
|
283
327
|
smalltalk.method({
|
284
328
|
selector: unescape('new'),
|
285
|
-
fn: function (){
|
286
|
-
var self=this;
|
287
|
-
return new self
|
288
|
-
return self;
|
329
|
+
fn: function () {
|
330
|
+
var self = this;
|
331
|
+
return new self;
|
332
|
+
return self;
|
333
|
+
}
|
289
334
|
}),
|
290
335
|
smalltalk.BlockClosure);
|
291
336
|
|
@@ -293,10 +338,11 @@ smalltalk.addMethod(
|
|
293
338
|
unescape('_applyTo_arguments_'),
|
294
339
|
smalltalk.method({
|
295
340
|
selector: unescape('applyTo%3Aarguments%3A'),
|
296
|
-
fn: function (anObject, aCollection){
|
297
|
-
var self=this;
|
298
|
-
return self.apply(anObject, aCollection);
|
299
|
-
return self;
|
341
|
+
fn: function (anObject, aCollection) {
|
342
|
+
var self = this;
|
343
|
+
return self.apply(anObject, aCollection);
|
344
|
+
return self;
|
345
|
+
}
|
300
346
|
}),
|
301
347
|
smalltalk.BlockClosure);
|
302
348
|
|
@@ -304,10 +350,11 @@ smalltalk.addMethod(
|
|
304
350
|
unescape('_timeToRun'),
|
305
351
|
smalltalk.method({
|
306
352
|
selector: unescape('timeToRun'),
|
307
|
-
fn: function (){
|
308
|
-
var self=this;
|
309
|
-
return smalltalk.send(
|
310
|
-
return self;
|
353
|
+
fn: function () {
|
354
|
+
var self = this;
|
355
|
+
return smalltalk.send(smalltalk.Date || Date, "_millisecondsToRun_", [self]);
|
356
|
+
return self;
|
357
|
+
}
|
311
358
|
}),
|
312
359
|
smalltalk.BlockClosure);
|
313
360
|
|
@@ -315,10 +362,11 @@ smalltalk.addMethod(
|
|
315
362
|
unescape('_numArgs'),
|
316
363
|
smalltalk.method({
|
317
364
|
selector: unescape('numArgs'),
|
318
|
-
fn: function (){
|
319
|
-
var self=this;
|
320
|
-
return self.length;
|
321
|
-
return self;
|
365
|
+
fn: function () {
|
366
|
+
var self = this;
|
367
|
+
return self.length;
|
368
|
+
return self;
|
369
|
+
}
|
322
370
|
}),
|
323
371
|
smalltalk.BlockClosure);
|
324
372
|
|
@@ -326,12 +374,13 @@ smalltalk.addMethod(
|
|
326
374
|
unescape('_ensure_'),
|
327
375
|
smalltalk.method({
|
328
376
|
selector: unescape('ensure%3A'),
|
329
|
-
fn: function (aBlock){
|
330
|
-
var self=this;
|
331
|
-
var success=nil;
|
332
|
-
|
333
|
-
return smalltalk.send(
|
334
|
-
return self;
|
377
|
+
fn: function (aBlock) {
|
378
|
+
var self = this;
|
379
|
+
var success = nil;
|
380
|
+
success = false;
|
381
|
+
return smalltalk.send(function () {smalltalk.send(self, "_value", []);success = true;return smalltalk.send(aBlock, "_value", []);}, "_on_do_", [smalltalk.Error || Error, function (ex) {($receiver = success).klass === smalltalk.Boolean ? !$receiver ? function () {return smalltalk.send(aBlock, "_value", []);}() : nil : smalltalk.send($receiver, "_ifFalse_", [function () {return smalltalk.send(aBlock, "_value", []);}]);return smalltalk.send(ex, "_signal", []);}]);
|
382
|
+
return self;
|
383
|
+
}
|
335
384
|
}),
|
336
385
|
smalltalk.BlockClosure);
|
337
386
|
|
@@ -339,10 +388,11 @@ smalltalk.addMethod(
|
|
339
388
|
unescape('_newValue_'),
|
340
389
|
smalltalk.method({
|
341
390
|
selector: unescape('newValue%3A'),
|
342
|
-
fn: function (anObject){
|
343
|
-
var self=this;
|
344
|
-
return new self(anObject);
|
345
|
-
return self;
|
391
|
+
fn: function (anObject) {
|
392
|
+
var self = this;
|
393
|
+
return new self(anObject);
|
394
|
+
return self;
|
395
|
+
}
|
346
396
|
}),
|
347
397
|
smalltalk.BlockClosure);
|
348
398
|
|
@@ -350,10 +400,11 @@ smalltalk.addMethod(
|
|
350
400
|
unescape('_newValue_value_'),
|
351
401
|
smalltalk.method({
|
352
402
|
selector: unescape('newValue%3Avalue%3A'),
|
353
|
-
fn: function (anObject, anObject2){
|
354
|
-
var self=this;
|
355
|
-
return new self(anObject, anObject2);
|
356
|
-
return self;
|
403
|
+
fn: function (anObject, anObject2) {
|
404
|
+
var self = this;
|
405
|
+
return new self(anObject, anObject2);
|
406
|
+
return self;
|
407
|
+
}
|
357
408
|
}),
|
358
409
|
smalltalk.BlockClosure);
|
359
410
|
|
@@ -361,150 +412,162 @@ smalltalk.addMethod(
|
|
361
412
|
unescape('_newValue_value_value_'),
|
362
413
|
smalltalk.method({
|
363
414
|
selector: unescape('newValue%3Avalue%3Avalue%3A'),
|
364
|
-
fn: function (anObject, anObject2, anObject3){
|
365
|
-
var self=this;
|
366
|
-
return new self(anObject, anObject2);
|
367
|
-
return self;
|
415
|
+
fn: function (anObject, anObject2, anObject3) {
|
416
|
+
var self = this;
|
417
|
+
return new self(anObject, anObject2);
|
418
|
+
return self;
|
419
|
+
}
|
368
420
|
}),
|
369
421
|
smalltalk.BlockClosure);
|
370
422
|
|
371
423
|
|
372
424
|
|
373
|
-
smalltalk.addClass('
|
425
|
+
smalltalk.addClass('CompiledMethod', smalltalk.Object, [], 'Kernel-Methods');
|
374
426
|
smalltalk.addMethod(
|
375
|
-
unescape('
|
427
|
+
unescape('_source'),
|
376
428
|
smalltalk.method({
|
377
|
-
selector: unescape('
|
378
|
-
fn: function (){
|
379
|
-
var self=this;
|
380
|
-
return self
|
381
|
-
return
|
429
|
+
selector: unescape('source'),
|
430
|
+
fn: function () {
|
431
|
+
var self = this;
|
432
|
+
return ($receiver = smalltalk.send(self, "_basicAt_", ["source"])) == nil ||
|
433
|
+
$receiver == undefined ? function () {return "";}() : $receiver;
|
434
|
+
return self;
|
435
|
+
}
|
382
436
|
}),
|
383
|
-
smalltalk.
|
437
|
+
smalltalk.CompiledMethod);
|
384
438
|
|
385
439
|
smalltalk.addMethod(
|
386
|
-
unescape('
|
440
|
+
unescape('_source_'),
|
387
441
|
smalltalk.method({
|
388
|
-
selector: unescape('
|
389
|
-
fn: function (){
|
390
|
-
var self=this;
|
391
|
-
|
392
|
-
return self;
|
442
|
+
selector: unescape('source%3A'),
|
443
|
+
fn: function (aString) {
|
444
|
+
var self = this;
|
445
|
+
smalltalk.send(self, "_basicAt_put_", ["source", aString]);
|
446
|
+
return self;
|
447
|
+
}
|
393
448
|
}),
|
394
|
-
smalltalk.
|
449
|
+
smalltalk.CompiledMethod);
|
395
450
|
|
396
451
|
smalltalk.addMethod(
|
397
|
-
unescape('
|
452
|
+
unescape('_category'),
|
398
453
|
smalltalk.method({
|
399
|
-
selector: unescape('
|
400
|
-
fn: function (){
|
401
|
-
var self=this;
|
402
|
-
return self
|
403
|
-
return
|
454
|
+
selector: unescape('category'),
|
455
|
+
fn: function () {
|
456
|
+
var self = this;
|
457
|
+
return ($receiver = smalltalk.send(self, "_basicAt_", ["category"])) == nil ||
|
458
|
+
$receiver == undefined ? function () {return "";}() : $receiver;
|
459
|
+
return self;
|
460
|
+
}
|
404
461
|
}),
|
405
|
-
smalltalk.
|
462
|
+
smalltalk.CompiledMethod);
|
406
463
|
|
407
464
|
smalltalk.addMethod(
|
408
|
-
unescape('
|
465
|
+
unescape('_category_'),
|
409
466
|
smalltalk.method({
|
410
|
-
selector: unescape('
|
411
|
-
fn: function (){
|
412
|
-
var self=this;
|
413
|
-
|
414
|
-
return self;
|
467
|
+
selector: unescape('category%3A'),
|
468
|
+
fn: function (aString) {
|
469
|
+
var self = this;
|
470
|
+
smalltalk.send(self, "_basicAt_put_", ["category", aString]);
|
471
|
+
return self;
|
472
|
+
}
|
415
473
|
}),
|
416
|
-
smalltalk.
|
474
|
+
smalltalk.CompiledMethod);
|
417
475
|
|
418
476
|
smalltalk.addMethod(
|
419
|
-
unescape('
|
477
|
+
unescape('_selector'),
|
420
478
|
smalltalk.method({
|
421
|
-
selector: unescape('
|
422
|
-
fn: function (){
|
423
|
-
var self=this;
|
424
|
-
return smalltalk.send(
|
425
|
-
return self;
|
479
|
+
selector: unescape('selector'),
|
480
|
+
fn: function () {
|
481
|
+
var self = this;
|
482
|
+
return smalltalk.send(self, "_basicAt_", ["selector"]);
|
483
|
+
return self;
|
484
|
+
}
|
426
485
|
}),
|
427
|
-
smalltalk.
|
486
|
+
smalltalk.CompiledMethod);
|
428
487
|
|
429
488
|
smalltalk.addMethod(
|
430
|
-
unescape('
|
489
|
+
unescape('_selector_'),
|
431
490
|
smalltalk.method({
|
432
|
-
selector: unescape('
|
433
|
-
fn: function (){
|
434
|
-
var self=this;
|
435
|
-
|
436
|
-
return self;
|
491
|
+
selector: unescape('selector%3A'),
|
492
|
+
fn: function (aString) {
|
493
|
+
var self = this;
|
494
|
+
smalltalk.send(self, "_basicAt_put_", ["selector", aString]);
|
495
|
+
return self;
|
496
|
+
}
|
437
497
|
}),
|
438
|
-
smalltalk.
|
439
|
-
|
440
|
-
|
498
|
+
smalltalk.CompiledMethod);
|
441
499
|
|
442
|
-
smalltalk.addClass('Message', smalltalk.Object, ['selector', 'arguments'], 'Kernel-Methods');
|
443
500
|
smalltalk.addMethod(
|
444
|
-
unescape('
|
501
|
+
unescape('_fn'),
|
445
502
|
smalltalk.method({
|
446
|
-
selector: unescape('
|
447
|
-
fn: function (){
|
448
|
-
var self=this;
|
449
|
-
return self[
|
450
|
-
return self;
|
503
|
+
selector: unescape('fn'),
|
504
|
+
fn: function () {
|
505
|
+
var self = this;
|
506
|
+
return smalltalk.send(self, "_basicAt_", ["fn"]);
|
507
|
+
return self;
|
508
|
+
}
|
451
509
|
}),
|
452
|
-
smalltalk.
|
510
|
+
smalltalk.CompiledMethod);
|
453
511
|
|
454
512
|
smalltalk.addMethod(
|
455
|
-
unescape('
|
513
|
+
unescape('_fn_'),
|
456
514
|
smalltalk.method({
|
457
|
-
selector: unescape('
|
458
|
-
fn: function (
|
459
|
-
var self=this;
|
460
|
-
(self[
|
461
|
-
return self;
|
515
|
+
selector: unescape('fn%3A'),
|
516
|
+
fn: function (aBlock) {
|
517
|
+
var self = this;
|
518
|
+
smalltalk.send(self, "_basicAt_put_", ["fn", aBlock]);
|
519
|
+
return self;
|
520
|
+
}
|
462
521
|
}),
|
463
|
-
smalltalk.
|
522
|
+
smalltalk.CompiledMethod);
|
464
523
|
|
465
524
|
smalltalk.addMethod(
|
466
|
-
unescape('
|
525
|
+
unescape('_messageSends'),
|
467
526
|
smalltalk.method({
|
468
|
-
selector: unescape('
|
469
|
-
fn: function (
|
470
|
-
var self=this;
|
471
|
-
(self[
|
472
|
-
return self;
|
527
|
+
selector: unescape('messageSends'),
|
528
|
+
fn: function () {
|
529
|
+
var self = this;
|
530
|
+
return smalltalk.send(self, "_basicAt_", ["messageSends"]);
|
531
|
+
return self;
|
532
|
+
}
|
473
533
|
}),
|
474
|
-
smalltalk.
|
534
|
+
smalltalk.CompiledMethod);
|
475
535
|
|
476
536
|
smalltalk.addMethod(
|
477
|
-
unescape('
|
537
|
+
unescape('_methodClass'),
|
478
538
|
smalltalk.method({
|
479
|
-
selector: unescape('
|
480
|
-
fn: function (){
|
481
|
-
var self=this;
|
482
|
-
return self[
|
483
|
-
return self;
|
539
|
+
selector: unescape('methodClass'),
|
540
|
+
fn: function () {
|
541
|
+
var self = this;
|
542
|
+
return smalltalk.send(self, "_basicAt_", ["methodClass"]);
|
543
|
+
return self;
|
544
|
+
}
|
484
545
|
}),
|
485
|
-
smalltalk.
|
546
|
+
smalltalk.CompiledMethod);
|
486
547
|
|
487
548
|
smalltalk.addMethod(
|
488
|
-
unescape('
|
549
|
+
unescape('_referencedClasses'),
|
489
550
|
smalltalk.method({
|
490
|
-
selector: unescape('
|
491
|
-
fn: function (){
|
492
|
-
var self=this;
|
493
|
-
return smalltalk.send(
|
494
|
-
return self;
|
551
|
+
selector: unescape('referencedClasses'),
|
552
|
+
fn: function () {
|
553
|
+
var self = this;
|
554
|
+
return smalltalk.send(self, "_basicAt_", ["referencedClasses"]);
|
555
|
+
return self;
|
556
|
+
}
|
495
557
|
}),
|
496
|
-
smalltalk.
|
497
|
-
|
558
|
+
smalltalk.CompiledMethod);
|
498
559
|
|
499
560
|
smalltalk.addMethod(
|
500
|
-
unescape('
|
561
|
+
unescape('_arguments'),
|
501
562
|
smalltalk.method({
|
502
|
-
selector: unescape('
|
503
|
-
fn: function (
|
504
|
-
var self=this;
|
505
|
-
return
|
506
|
-
return self;
|
563
|
+
selector: unescape('arguments'),
|
564
|
+
fn: function () {
|
565
|
+
var self = this;
|
566
|
+
return self.args || [];
|
567
|
+
return self;
|
568
|
+
}
|
507
569
|
}),
|
508
|
-
smalltalk.
|
570
|
+
smalltalk.CompiledMethod);
|
571
|
+
|
509
572
|
|
510
573
|
|