|
@@ -900,12 +900,28 @@ code=smalltalk.send((smalltalk.String || String), "_streamContents_", [(function
|
|
|
return smalltalk.send(smalltalk.send((smalltalk.Error || Error), "_new", []), "_messageText_", [smalltalk.send(smalltalk.send(smalltalk.send(smalltalk.send(smalltalk.send(smalltalk.send(smalltalk.send(smalltalk.send("Parse error on line ", "__comma", [row]), "__comma", [" column "]), "__comma", [col]), "__comma", [" : "]), "__comma", [message]), "__comma", [unescape("%20Below%20is%20code%20with%20line%20numbers%20and%20%3D%3D%3D%3E%20marker%20inserted%3A")]), "__comma", [smalltalk.send((smalltalk.String || String), "_lf", [])]), "__comma", [code])]);
|
|
|
return self;},
|
|
|
args: ["anException", "aString"],
|
|
|
-source: unescape('parseError%3A%20anException%20parsing%3A%20aString%0A%09%7C%20row%20col%20message%20lines%20badLine%20code%20%7C%0A%09%3Crow%20%3D%20anException.line%3B%0A%09col%20%3D%20anException.column%3B%0A%09message%20%3D%20anException.message%3B%3E.%0A%09lines%20%3A%3D%20aString%20lines.%0A%09badLine%20%3A%3D%20lines%20at%3A%20row.%0A%09badLine%20%3A%3D%20%28badLine%20copyFrom%3A%201%20to%3A%20col%20-%201%29%2C%20%27%20%3D%3D%3D%3E%27%2C%20%28badLine%20copyFrom%3A%20%20col%20to%3A%20badLine%20size%29.%0A%09lines%20at%3A%20row%20put%3A%20badLine.%0A%09code%20%3A%3D%20String%20streamContents%3A%20%5B%3As%20%7C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20lines%20withIndexDo%3A%20%5B%3Al%20%3Ai%20%7C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20s%20nextPutAll%3A%20i%20asString%2C%20%27%3A%20%27%2C%20l%2C%20String%20lf%5D%5D.%0A%09%5E%20Error%20new%20messageText%3A%20%28%27Parse%20error%20on%20line%20%27%20%2C%20row%20%2C%20%27%20column%20%27%20%2C%20col%20%2C%20%27%20%3A%20%27%20%2C%20message%20%2C%20%27%20Below%20is%20code%20with%20line%20numbers%20and%20%3D%3D%3D%3E%20marker%20inserted%3A%27%20%2C%20String%20lf%2C%20code%29'),
|
|
|
+source: unescape('parseError%3A%20anException%20parsing%3A%20aString%0A%09%7C%20row%20col%20message%20lines%20badLine%20code%20%7C%0A%09%3Crow%20%3D%20anException.line%3B%0A%09col%20%3D%20anException.column%3B%0A%09message%20%3D%20anException.message%3B%3E.%0A%09lines%20%3A%3D%20aString%20lines.%0A%09badLine%20%3A%3D%20lines%20at%3A%20row.%0A%09badLine%20%3A%3D%20%28badLine%20copyFrom%3A%201%20to%3A%20col%20-%201%29%2C%20%27%20%3D%3D%3D%3E%27%2C%20%28badLine%20copyFrom%3A%20%20col%20to%3A%20badLine%20size%29.%0A%09lines%20at%3A%20row%20put%3A%20badLine.%0A%09code%20%3A%3D%20String%20streamContents%3A%20%5B%3As%20%7C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20lines%20withIndexDo%3A%20%5B%3Al%20%3Ai%20%7C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20s%20nextPutAll%3A%20i%20asString%2C%20%27%3A%20%27%2C%20l%2C%20String%20lf%5D%5D.%0A%09%5E%20Error%20new%20messageText%3A%20%28%27Parse%20error%20on%20line%20%27%20%2C%20row%20%2C%20%27%20column%20%27%20%2C%20col%20%2C%20%27%20%3A%20%27%20%2C%20message%20%2C%20%27%20Below%20is%20code%20with%20line%20numbers%20and%20%3D%3D%3D%3E%20marker%20inserted%3A%27%20%2C%20String%20lf%2C%20code%29'),
|
|
|
messageSends: ["lines", "at:", unescape("%2C"), "copyFrom:to:", unescape("-"), "size", "at:put:", "streamContents:", "withIndexDo:", "nextPutAll:", "asString", "lf", "messageText:", "new"],
|
|
|
referencedClasses: [smalltalk.String,smalltalk.Error]
|
|
|
}),
|
|
|
smalltalk.Smalltalk);
|
|
|
|
|
|
+smalltalk.addMethod(
|
|
|
+'_modules',
|
|
|
+smalltalk.method({
|
|
|
+selector: 'modules',
|
|
|
+category: 'accessing',
|
|
|
+fn: function (){
|
|
|
+var self=this;
|
|
|
+return self.modules.all();
|
|
|
+return self;},
|
|
|
+args: [],
|
|
|
+source: unescape('modules%0A%09%3Creturn%20self.modules.all%28%29%3E'),
|
|
|
+messageSends: [],
|
|
|
+referencedClasses: []
|
|
|
+}),
|
|
|
+smalltalk.Smalltalk);
|
|
|
+
|
|
|
|
|
|
smalltalk.Smalltalk.klass.iVarNames = ['current'];
|
|
|
smalltalk.addMethod(
|
|
@@ -925,6 +941,57 @@ referencedClasses: []
|
|
|
smalltalk.Smalltalk.klass);
|
|
|
|
|
|
|
|
|
+smalltalk.addClass('Module', smalltalk.Object, [], 'Kernel');
|
|
|
+smalltalk.addMethod(
|
|
|
+'_name',
|
|
|
+smalltalk.method({
|
|
|
+selector: 'name',
|
|
|
+category: 'accessing',
|
|
|
+fn: function (){
|
|
|
+var self=this;
|
|
|
+return self.moduleName || nil;
|
|
|
+return self;},
|
|
|
+args: [],
|
|
|
+source: unescape('name%0A%09%3Creturn%20self.moduleName%20%7C%7C%20nil%3E'),
|
|
|
+messageSends: [],
|
|
|
+referencedClasses: []
|
|
|
+}),
|
|
|
+smalltalk.Module);
|
|
|
+
|
|
|
+smalltalk.addMethod(
|
|
|
+'_requires',
|
|
|
+smalltalk.method({
|
|
|
+selector: 'requires',
|
|
|
+category: 'accessing',
|
|
|
+fn: function (){
|
|
|
+var self=this;
|
|
|
+return self.requires || nil;
|
|
|
+return self;},
|
|
|
+args: [],
|
|
|
+source: unescape('requires%0A%09%3Creturn%20self.requires%20%7C%7C%20nil%3E'),
|
|
|
+messageSends: [],
|
|
|
+referencedClasses: []
|
|
|
+}),
|
|
|
+smalltalk.Module);
|
|
|
+
|
|
|
+smalltalk.addMethod(
|
|
|
+'_name_',
|
|
|
+smalltalk.method({
|
|
|
+selector: 'name:',
|
|
|
+category: 'accessing',
|
|
|
+fn: function (aString){
|
|
|
+var self=this;
|
|
|
+return self.moduleName = aString;
|
|
|
+return self;},
|
|
|
+args: ["aString"],
|
|
|
+source: unescape('name%3A%20aString%0A%09%3Creturn%20self.moduleName%20%3D%20aString%3E'),
|
|
|
+messageSends: [],
|
|
|
+referencedClasses: []
|
|
|
+}),
|
|
|
+smalltalk.Module);
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
smalltalk.addClass('Behavior', smalltalk.Object, [], 'Kernel');
|
|
|
smalltalk.addMethod(
|
|
|
'_new',
|
|
@@ -1360,27 +1427,11 @@ selector: 'category',
|
|
|
category: 'accessing',
|
|
|
fn: function (){
|
|
|
var self=this;
|
|
|
-return self.category;
|
|
|
+return (($receiver = smalltalk.send(self, "_module", [])) == nil || $receiver == undefined) ? (function(){return "unclassified";})() : (function(){return smalltalk.send(smalltalk.send(self, "_module", []), "_name", []);})();
|
|
|
return self;},
|
|
|
args: [],
|
|
|
-source: unescape('category%0A%09%3Creturn%20self.category%3E'),
|
|
|
-messageSends: [],
|
|
|
-referencedClasses: []
|
|
|
-}),
|
|
|
-smalltalk.Class);
|
|
|
-
|
|
|
-smalltalk.addMethod(
|
|
|
-'_category_',
|
|
|
-smalltalk.method({
|
|
|
-selector: 'category:',
|
|
|
-category: 'accessing',
|
|
|
-fn: function (aString){
|
|
|
-var self=this;
|
|
|
-self.category = aString;
|
|
|
-return self;},
|
|
|
-args: ["aString"],
|
|
|
-source: unescape('category%3A%20aString%0A%09%3Cself.category%20%3D%20aString%3E'),
|
|
|
-messageSends: [],
|
|
|
+source: unescape('category%0A%09%5Eself%20module%20ifNil%3A%20%5B%27unclassified%27%5D%20ifNotNil%3A%20%5Bself%20module%20name%5D'),
|
|
|
+messageSends: ["ifNil:ifNotNil:", "module", "name"],
|
|
|
referencedClasses: []
|
|
|
}),
|
|
|
smalltalk.Class);
|
|
@@ -1392,11 +1443,11 @@ selector: 'subclass:instanceVariableNames:',
|
|
|
category: 'class creation',
|
|
|
fn: function (aString, anotherString){
|
|
|
var self=this;
|
|
|
-return smalltalk.send(self, "_subclass_instanceVariableNames_category_", [aString, anotherString, nil]);
|
|
|
+return smalltalk.send(self, "_subclass_instanceVariableNames_module_", [aString, anotherString, nil]);
|
|
|
return self;},
|
|
|
args: ["aString", "anotherString"],
|
|
|
-source: unescape('subclass%3A%20aString%20instanceVariableNames%3A%20anotherString%0A%09%5Eself%20subclass%3A%20aString%20instanceVariableNames%3A%20anotherString%20category%3A%20nil'),
|
|
|
-messageSends: ["subclass:instanceVariableNames:category:"],
|
|
|
+source: unescape('subclass%3A%20aString%20instanceVariableNames%3A%20anotherString%0A%09%22Kept%20for%20compatibility.%22%0A%09%5Eself%20subclass%3A%20aString%20instanceVariableNames%3A%20anotherString%20module%3A%20nil'),
|
|
|
+messageSends: ["subclass:instanceVariableNames:module:"],
|
|
|
referencedClasses: []
|
|
|
}),
|
|
|
smalltalk.Class);
|
|
@@ -1408,12 +1459,12 @@ selector: 'subclass:instanceVariableNames:category:',
|
|
|
category: 'class creation',
|
|
|
fn: function (aString, aString2, aString3){
|
|
|
var self=this;
|
|
|
-return smalltalk.send(smalltalk.send((smalltalk.ClassBuilder || ClassBuilder), "_new", []), "_superclass_subclass_instanceVariableNames_category_", [self, aString, aString2, aString3]);
|
|
|
+return smalltalk.send(self, "_subclass_instanceVariableNames_module_", [aString, aString2, aString3]);
|
|
|
return self;},
|
|
|
args: ["aString", "aString2", "aString3"],
|
|
|
-source: unescape('subclass%3A%20aString%20instanceVariableNames%3A%20aString2%20category%3A%20aString3%0A%09%5EClassBuilder%20new%0A%09%20%20%20%20superclass%3A%20self%20subclass%3A%20aString%20instanceVariableNames%3A%20aString2%20category%3A%20aString3'),
|
|
|
-messageSends: ["superclass:subclass:instanceVariableNames:category:", "new"],
|
|
|
-referencedClasses: [smalltalk.ClassBuilder]
|
|
|
+source: unescape('subclass%3A%20aString%20instanceVariableNames%3A%20aString2%20category%3A%20aString3%0A%09%22Kept%20for%20compatibility.%22%0A%09%5Eself%20subclass%3A%20aString%20instanceVariableNames%3A%20aString2%20module%3A%20aString3'),
|
|
|
+messageSends: ["subclass:instanceVariableNames:module:"],
|
|
|
+referencedClasses: []
|
|
|
}),
|
|
|
smalltalk.Class);
|
|
|
|
|
@@ -1476,15 +1527,63 @@ selector: 'subclass:instanceVariableNames:classVariableNames:poolDictionaries:ca
|
|
|
category: 'class creation',
|
|
|
fn: function (aString, aString2, classVars, pools, aString3){
|
|
|
var self=this;
|
|
|
-return smalltalk.send(self, "_subclass_instanceVariableNames_category_", [aString, aString2, aString3]);
|
|
|
+return smalltalk.send(self, "_subclass_instanceVariableNames_module_", [aString, aString2, aString3]);
|
|
|
return self;},
|
|
|
args: ["aString", "aString2", "classVars", "pools", "aString3"],
|
|
|
-source: unescape('subclass%3A%20aString%20instanceVariableNames%3A%20aString2%20classVariableNames%3A%20classVars%20poolDictionaries%3A%20pools%20category%3A%20aString3%0A%09%22Just%20ignore%20class%20variables%20and%20pools.%20Added%20for%20compatibility.%22%0A%09%5Eself%20subclass%3A%20aString%20instanceVariableNames%3A%20aString2%20category%3A%20aString3'),
|
|
|
-messageSends: ["subclass:instanceVariableNames:category:"],
|
|
|
+source: unescape('subclass%3A%20aString%20instanceVariableNames%3A%20aString2%20classVariableNames%3A%20classVars%20poolDictionaries%3A%20pools%20category%3A%20aString3%0A%09%22Just%20ignore%20class%20variables%20and%20pools.%20Added%20for%20compatibility.%22%0A%09%5Eself%20subclass%3A%20aString%20instanceVariableNames%3A%20aString2%20module%3A%20aString3'),
|
|
|
+messageSends: ["subclass:instanceVariableNames:module:"],
|
|
|
referencedClasses: []
|
|
|
}),
|
|
|
smalltalk.Class);
|
|
|
|
|
|
+smalltalk.addMethod(
|
|
|
+'_module',
|
|
|
+smalltalk.method({
|
|
|
+selector: 'module',
|
|
|
+category: 'accessing',
|
|
|
+fn: function (){
|
|
|
+var self=this;
|
|
|
+return self.module;
|
|
|
+return self;},
|
|
|
+args: [],
|
|
|
+source: unescape('module%0A%09%3Creturn%20self.module%3E'),
|
|
|
+messageSends: [],
|
|
|
+referencedClasses: []
|
|
|
+}),
|
|
|
+smalltalk.Class);
|
|
|
+
|
|
|
+smalltalk.addMethod(
|
|
|
+'_module_',
|
|
|
+smalltalk.method({
|
|
|
+selector: 'module:',
|
|
|
+category: 'accessing',
|
|
|
+fn: function (aModule){
|
|
|
+var self=this;
|
|
|
+self.module = aModule;
|
|
|
+return self;},
|
|
|
+args: ["aModule"],
|
|
|
+source: unescape('module%3A%20aModule%0A%09%3Cself.module%20%3D%20aModule%3E'),
|
|
|
+messageSends: [],
|
|
|
+referencedClasses: []
|
|
|
+}),
|
|
|
+smalltalk.Class);
|
|
|
+
|
|
|
+smalltalk.addMethod(
|
|
|
+'_subclass_instanceVariableNames_module_',
|
|
|
+smalltalk.method({
|
|
|
+selector: 'subclass:instanceVariableNames:module:',
|
|
|
+category: 'class creation',
|
|
|
+fn: function (aString, aString2, aString3){
|
|
|
+var self=this;
|
|
|
+return smalltalk.send(smalltalk.send((smalltalk.ClassBuilder || ClassBuilder), "_new", []), "_superclass_subclass_instanceVariableNames_module_", [self, aString, aString2, aString3]);
|
|
|
+return self;},
|
|
|
+args: ["aString", "aString2", "aString3"],
|
|
|
+source: unescape('subclass%3A%20aString%20instanceVariableNames%3A%20aString2%20module%3A%20aString3%0A%09%5EClassBuilder%20new%0A%09%20%20%20%20superclass%3A%20self%20subclass%3A%20aString%20instanceVariableNames%3A%20aString2%20module%3A%20aString3'),
|
|
|
+messageSends: ["superclass:subclass:instanceVariableNames:module:", "new"],
|
|
|
+referencedClasses: [smalltalk.ClassBuilder]
|
|
|
+}),
|
|
|
+smalltalk.Class);
|
|
|
+
|
|
|
|
|
|
|
|
|
smalltalk.addClass('Metaclass', smalltalk.Behavior, [], 'Kernel');
|
|
@@ -3453,11 +3552,11 @@ selector: 'subclass:instanceVariableNames:',
|
|
|
category: 'class creation',
|
|
|
fn: function (aString, anotherString){
|
|
|
var self=this;
|
|
|
-return smalltalk.send(self, "_subclass_instanceVariableNames_category_", [aString, anotherString, nil]);
|
|
|
+return smalltalk.send(self, "_subclass_instanceVariableNames_module_", [aString, anotherString, nil]);
|
|
|
return self;},
|
|
|
args: ["aString", "anotherString"],
|
|
|
-source: unescape('subclass%3A%20aString%20instanceVariableNames%3A%20anotherString%0A%09%5Eself%20subclass%3A%20aString%20instanceVariableNames%3A%20anotherString%20category%3A%20nil'),
|
|
|
-messageSends: ["subclass:instanceVariableNames:category:"],
|
|
|
+source: unescape('subclass%3A%20aString%20instanceVariableNames%3A%20anotherString%0A%09%5Eself%20subclass%3A%20aString%20instanceVariableNames%3A%20anotherString%20module%3A%20nil'),
|
|
|
+messageSends: ["subclass:instanceVariableNames:module:"],
|
|
|
referencedClasses: []
|
|
|
}),
|
|
|
smalltalk.UndefinedObject);
|
|
@@ -3469,12 +3568,12 @@ selector: 'subclass:instanceVariableNames:category:',
|
|
|
category: 'class creation',
|
|
|
fn: function (aString, aString2, aString3){
|
|
|
var self=this;
|
|
|
-return smalltalk.send(smalltalk.send((smalltalk.ClassBuilder || ClassBuilder), "_new", []), "_superclass_subclass_instanceVariableNames_category_", [self, aString, aString2, aString3]);
|
|
|
+return smalltalk.send(self, "_subclass_instanceVariableNames_module_", [aString, aString2, aString3]);
|
|
|
return self;},
|
|
|
args: ["aString", "aString2", "aString3"],
|
|
|
-source: unescape('subclass%3A%20aString%20instanceVariableNames%3A%20aString2%20category%3A%20aString3%0A%09%5EClassBuilder%20new%0A%09%20%20%20%20superclass%3A%20self%20subclass%3A%20aString%20instanceVariableNames%3A%20aString2%20category%3A%20aString3'),
|
|
|
-messageSends: ["superclass:subclass:instanceVariableNames:category:", "new"],
|
|
|
-referencedClasses: [smalltalk.ClassBuilder]
|
|
|
+source: unescape('subclass%3A%20aString%20instanceVariableNames%3A%20aString2%20category%3A%20aString3%0A%09%22Kept%20for%20compatibility.%22%0A%09%5Eself%20subclass%3A%20aString%20instanceVariableNames%3A%20aString2%20module%3A%20aString3'),
|
|
|
+messageSends: ["subclass:instanceVariableNames:module:"],
|
|
|
+referencedClasses: []
|
|
|
}),
|
|
|
smalltalk.UndefinedObject);
|
|
|
|
|
@@ -3622,6 +3721,22 @@ referencedClasses: []
|
|
|
}),
|
|
|
smalltalk.UndefinedObject);
|
|
|
|
|
|
+smalltalk.addMethod(
|
|
|
+'_subclass_instanceVariableNames_module_',
|
|
|
+smalltalk.method({
|
|
|
+selector: 'subclass:instanceVariableNames:module:',
|
|
|
+category: 'class creation',
|
|
|
+fn: function (aString, aString2, aString3){
|
|
|
+var self=this;
|
|
|
+return smalltalk.send(smalltalk.send((smalltalk.ClassBuilder || ClassBuilder), "_new", []), "_superclass_subclass_instanceVariableNames_module_", [self, aString, aString2, aString3]);
|
|
|
+return self;},
|
|
|
+args: ["aString", "aString2", "aString3"],
|
|
|
+source: unescape('subclass%3A%20aString%20instanceVariableNames%3A%20aString2%20module%3A%20aString3%0A%09%5EClassBuilder%20new%0A%09%20%20%20%20superclass%3A%20self%20subclass%3A%20aString%20instanceVariableNames%3A%20aString2%20module%3A%20aString3'),
|
|
|
+messageSends: ["superclass:subclass:instanceVariableNames:module:", "new"],
|
|
|
+referencedClasses: [smalltalk.ClassBuilder]
|
|
|
+}),
|
|
|
+smalltalk.UndefinedObject);
|
|
|
+
|
|
|
|
|
|
smalltalk.addMethod(
|
|
|
'_new',
|
|
@@ -6609,30 +6724,11 @@ selector: 'superclass:subclass:',
|
|
|
category: 'class creation',
|
|
|
fn: function (aClass, aString){
|
|
|
var self=this;
|
|
|
-smalltalk.send(self, "_superclass_subclass_instanceVariableNames_category_", [aClass, aString, "", nil]);
|
|
|
+return smalltalk.send(self, "_superclass_subclass_instanceVariableNames_module_", [aClass, aString, "", nil]);
|
|
|
return self;},
|
|
|
args: ["aClass", "aString"],
|
|
|
-source: unescape('superclass%3A%20aClass%20subclass%3A%20aString%0A%09self%20superclass%3A%20aClass%20subclass%3A%20aString%20instanceVariableNames%3A%20%27%27%20category%3A%20nil'),
|
|
|
-messageSends: ["superclass:subclass:instanceVariableNames:category:"],
|
|
|
-referencedClasses: []
|
|
|
-}),
|
|
|
-smalltalk.ClassBuilder);
|
|
|
-
|
|
|
-smalltalk.addMethod(
|
|
|
-'_superclass_subclass_instanceVariableNames_category_',
|
|
|
-smalltalk.method({
|
|
|
-selector: 'superclass:subclass:instanceVariableNames:category:',
|
|
|
-category: 'class creation',
|
|
|
-fn: function (aClass, aString, aString2, aString3){
|
|
|
-var self=this;
|
|
|
-var newClass=nil;
|
|
|
-newClass=smalltalk.send(self, "_addSubclassOf_named_instanceVariableNames_", [aClass, aString, smalltalk.send(self, "_instanceVariableNamesFor_", [aString2])]);
|
|
|
-smalltalk.send(self, "_setupClass_", [newClass]);
|
|
|
-smalltalk.send(newClass, "_category_", [(($receiver = aString3) == nil || $receiver == undefined) ? (function(){return "unclassified";})() : $receiver]);
|
|
|
-return self;},
|
|
|
-args: ["aClass", "aString", "aString2", "aString3"],
|
|
|
-source: unescape('superclass%3A%20aClass%20subclass%3A%20aString%20instanceVariableNames%3A%20aString2%20category%3A%20aString3%0A%09%7C%20newClass%20%7C%0A%09newClass%20%3A%3D%20self%20addSubclassOf%3A%20aClass%20named%3A%20aString%20instanceVariableNames%3A%20%28self%20instanceVariableNamesFor%3A%20aString2%29.%0A%09self%20setupClass%3A%20newClass.%0A%09newClass%20category%3A%20%28aString3%20ifNil%3A%20%5B%27unclassified%27%5D%29'),
|
|
|
-messageSends: ["addSubclassOf:named:instanceVariableNames:", "instanceVariableNamesFor:", "setupClass:", "category:", "ifNil:"],
|
|
|
+source: unescape('superclass%3A%20aClass%20subclass%3A%20aString%0A%09%5Eself%20superclass%3A%20aClass%20subclass%3A%20aString%20instanceVariableNames%3A%20%27%27%20module%3A%20nil'),
|
|
|
+messageSends: ["superclass:subclass:instanceVariableNames:module:"],
|
|
|
referencedClasses: []
|
|
|
}),
|
|
|
smalltalk.ClassBuilder);
|
|
@@ -6704,6 +6800,41 @@ referencedClasses: []
|
|
|
}),
|
|
|
smalltalk.ClassBuilder);
|
|
|
|
|
|
+smalltalk.addMethod(
|
|
|
+'_superclass_subclass_instanceVariableNames_module_',
|
|
|
+smalltalk.method({
|
|
|
+selector: 'superclass:subclass:instanceVariableNames:module:',
|
|
|
+category: 'class creation',
|
|
|
+fn: function (aClass, aString, aString2, aString3){
|
|
|
+var self=this;
|
|
|
+var newClass=nil;
|
|
|
+newClass=smalltalk.send(self, "_addSubclassOf_named_instanceVariableNames_module_", [aClass, aString, smalltalk.send(self, "_instanceVariableNamesFor_", [aString2]), (($receiver = aString3) == nil || $receiver == undefined) ? (function(){return "unclassified";})() : $receiver]);
|
|
|
+smalltalk.send(self, "_setupClass_", [newClass]);
|
|
|
+return self;},
|
|
|
+args: ["aClass", "aString", "aString2", "aString3"],
|
|
|
+source: unescape('superclass%3A%20aClass%20subclass%3A%20aString%20instanceVariableNames%3A%20aString2%20module%3A%20aString3%0A%09%7C%20newClass%20%7C%0A%09newClass%20%3A%3D%20self%20addSubclassOf%3A%20aClass%0A%09%09%09%09named%3A%20aString%20instanceVariableNames%3A%20%28self%20instanceVariableNamesFor%3A%20aString2%29%0A%09%09%09%09module%3A%20%28aString3%20ifNil%3A%20%5B%27unclassified%27%5D%29.%0A%09self%20setupClass%3A%20newClass'),
|
|
|
+messageSends: ["addSubclassOf:named:instanceVariableNames:module:", "instanceVariableNamesFor:", "ifNil:", "setupClass:"],
|
|
|
+referencedClasses: []
|
|
|
+}),
|
|
|
+smalltalk.ClassBuilder);
|
|
|
+
|
|
|
+smalltalk.addMethod(
|
|
|
+'_addSubclassOf_named_instanceVariableNames_module_',
|
|
|
+smalltalk.method({
|
|
|
+selector: 'addSubclassOf:named:instanceVariableNames:module:',
|
|
|
+category: 'private',
|
|
|
+fn: function (aClass, aString, aCollection, moduleName){
|
|
|
+var self=this;
|
|
|
+smalltalk.addClass(aString, aClass, aCollection, moduleName);
|
|
|
+ return smalltalk[aString];
|
|
|
+return self;},
|
|
|
+args: ["aClass", "aString", "aCollection", "moduleName"],
|
|
|
+source: unescape('addSubclassOf%3A%20aClass%20named%3A%20aString%20instanceVariableNames%3A%20aCollection%20module%3A%20moduleName%0A%09%3Csmalltalk.addClass%28aString%2C%20aClass%2C%20aCollection%2C%20moduleName%29%3B%0A%09%20%20%20%20return%20smalltalk%5BaString%5D%3E'),
|
|
|
+messageSends: [],
|
|
|
+referencedClasses: []
|
|
|
+}),
|
|
|
+smalltalk.ClassBuilder);
|
|
|
+
|
|
|
|
|
|
|
|
|
smalltalk.addClass('ClassCategoryReader', smalltalk.Object, ['class', 'category', 'chunkParser'], 'Kernel');
|
|
@@ -7819,27 +7950,11 @@ selector: 'current',
|
|
|
category: 'accessing',
|
|
|
fn: function (){
|
|
|
var self=this;
|
|
|
-return self['@current'];
|
|
|
-return self;},
|
|
|
-args: [],
|
|
|
-source: unescape('current%0A%09%5Ecurrent'),
|
|
|
-messageSends: [],
|
|
|
-referencedClasses: []
|
|
|
-}),
|
|
|
-smalltalk.ErrorHandler.klass);
|
|
|
-
|
|
|
-smalltalk.addMethod(
|
|
|
-'_initialize',
|
|
|
-smalltalk.method({
|
|
|
-selector: 'initialize',
|
|
|
-category: 'initialization',
|
|
|
-fn: function (){
|
|
|
-var self=this;
|
|
|
-smalltalk.send(self, "_register", []);
|
|
|
+return (($receiver = self['@current']) == nil || $receiver == undefined) ? (function(){return self['@current']=smalltalk.send(self, "_new", []);})() : $receiver;
|
|
|
return self;},
|
|
|
args: [],
|
|
|
-source: unescape('initialize%0A%09self%20register'),
|
|
|
-messageSends: ["register"],
|
|
|
+source: unescape('current%0A%09%5Ecurrent%20ifNil%3A%20%5Bcurrent%20%3A%3D%20self%20new%5D'),
|
|
|
+messageSends: ["ifNil:", "new"],
|
|
|
referencedClasses: []
|
|
|
}),
|
|
|
smalltalk.ErrorHandler.klass);
|
|
@@ -7949,6 +8064,29 @@ referencedClasses: [smalltalk.Dictionary]
|
|
|
}),
|
|
|
smalltalk.JSObjectProxy);
|
|
|
|
|
|
+smalltalk.addMethod(
|
|
|
+'_doesNotUnderstand_',
|
|
|
+smalltalk.method({
|
|
|
+selector: 'doesNotUnderstand:',
|
|
|
+category: 'proxy',
|
|
|
+fn: function (aMessage){
|
|
|
+var self=this;
|
|
|
+var obj=nil;
|
|
|
+var selector=nil;
|
|
|
+var arguments=nil;
|
|
|
+obj=smalltalk.send(self, "_jsObject", []);
|
|
|
+selector=smalltalk.send(aMessage, "_selector", []);
|
|
|
+arguments=smalltalk.send(aMessage, "_arguments", []);
|
|
|
+if(obj[selector]) {return smalltalk.send(obj, selector, arguments)};
|
|
|
+smalltalk.send(self, "_doesNotUnderstand_", [aMessage], smalltalk.Object);
|
|
|
+return self;},
|
|
|
+args: ["aMessage"],
|
|
|
+source: unescape('doesNotUnderstand%3A%20aMessage%0A%09%7C%20obj%20selector%20arguments%20%7C%0A%09obj%20%3A%3D%20self%20jsObject.%0A%09selector%20%3A%3D%20aMessage%20selector.%0A%09arguments%20%3A%3D%20aMessage%20arguments.%0A%09%3Cif%28obj%5Bselector%5D%29%20%7Breturn%20smalltalk.send%28obj%2C%20selector%2C%20arguments%29%7D%3E.%0A%09super%20doesNotUnderstand%3A%20aMessage'),
|
|
|
+messageSends: ["jsObject", "selector", "arguments", "doesNotUnderstand:"],
|
|
|
+referencedClasses: []
|
|
|
+}),
|
|
|
+smalltalk.JSObjectProxy);
|
|
|
+
|
|
|
|
|
|
smalltalk.addMethod(
|
|
|
'_on_',
|