resin 0.0.1 → 0.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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
|
|