|
@@ -38,12 +38,12 @@ smalltalk.addMethod(
|
|
|
smalltalk.method({
|
|
|
selector: "createLocalSocketOn:",
|
|
|
category: 'not yet classified',
|
|
|
-fn: function (aPort){
|
|
|
-var self=this;
|
|
|
-return smalltalk.send(self, "_createSocketOn_", [smalltalk.send(smalltalk.send("ws://localhost:", "__comma", [smalltalk.send(aPort, "_asString", [])]), "__comma", ["/nemo"])]);
|
|
|
+fn: function (aPort){
|
|
|
+var self=this;
|
|
|
+return smalltalk.send(self, "_createSocketOn_", [smalltalk.send(smalltalk.send("ws://localhost:", "__comma", [smalltalk.send(aPort, "_asString", [])]), "__comma", ["/nemo"])]);
|
|
|
return self;},
|
|
|
args: ["aPort"],
|
|
|
-source: "createLocalSocketOn: aPort\x0a\x0a\x09^ self createSocketOn: 'ws://localhost:',aPort asString,'/nemo'",
|
|
|
+source: "createLocalSocketOn: aPort\x0a\x0a\x09^ self createSocketOn: 'ws://localhost:', aPort asString, '/nemo'",
|
|
|
messageSends: ["createSocketOn:", ",", "asString"],
|
|
|
referencedClasses: []
|
|
|
}),
|
|
@@ -54,11 +54,11 @@ smalltalk.addMethod(
|
|
|
smalltalk.method({
|
|
|
selector: "createSocketOn:",
|
|
|
category: 'not yet classified',
|
|
|
-fn: function (uri){
|
|
|
-var self=this;
|
|
|
-(self['@socket']=new WebSocket(uri));
|
|
|
-smalltalk.send(self['@socket'], "_at_put_", ["onmessage", (function(message){return smalltalk.send(self, "_handleMessage_", [message]);})]);
|
|
|
-smalltalk.send(self['@socket'], "_at_put_", ["onerror", (function(err){return smalltalk.send((typeof console == 'undefined' ? nil : console), "_log_", [err]);})]);
|
|
|
+fn: function (uri){
|
|
|
+var self=this;
|
|
|
+(self['@socket']=new WebSocket(uri));
|
|
|
+smalltalk.send(self['@socket'], "_at_put_", ["onmessage", (function(message){return smalltalk.send(self, "_handleMessage_", [message]);})]);
|
|
|
+smalltalk.send(self['@socket'], "_at_put_", ["onerror", (function(err){return smalltalk.send((typeof console == 'undefined' ? nil : console), "_log_", [err]);})]);
|
|
|
return self;},
|
|
|
args: ["uri"],
|
|
|
source: "createSocketOn: uri\x0a\x09socket := <new WebSocket(uri)>.\x0a\x09socket at: 'onmessage' put: [ :message | self handleMessage: message ].\x0a\x09socket at: 'onerror' put: [ :err | console log: err ]",
|
|
@@ -95,17 +95,14 @@ try{var string=nil;
|
|
|
var result=nil;
|
|
|
(string=smalltalk.send(aMessage, "_data", []));
|
|
|
((($receiver = smalltalk.send(string, "_isString", [])).klass === smalltalk.Boolean) ? (! $receiver ? (function(){return (function(){throw $early=[self]})();})() : nil) : smalltalk.send($receiver, "_ifFalse_", [(function(){return (function(){throw $early=[self]})();})]));
|
|
|
-smalltalk.send((smalltalk.Transcript || Transcript), "_show_", [string]);
|
|
|
-(result=smalltalk.send(smalltalk.send((smalltalk.Compiler || Compiler), "_new", []), "_evaluateExpression_", [string]));
|
|
|
-smalltalk.send((typeof console == 'undefined' ? nil : console), "_log_", [result]);
|
|
|
-smalltalk.send((typeof console == 'undefined' ? nil : console), "_log_", [smalltalk.send(result, "_asNemoString", [])]);
|
|
|
+smalltalk.send((function(){return (result=smalltalk.send(smalltalk.send((smalltalk.Compiler || Compiler), "_new", []), "_evaluateExpression_", [string]));}), "_on_do_", [(smalltalk.Error || Error), (function(ex){return (function(){throw $early=[smalltalk.send(self['@socket'], "_send_", [smalltalk.send(ex, "_asNemoString", [])])]})();})]);
|
|
|
smalltalk.send(self['@socket'], "_send_", [smalltalk.send(result, "_asNemoString", [])]);
|
|
|
return self;
|
|
|
} catch(e) {if(e===$early)return e[0]; throw e}},
|
|
|
args: ["aMessage"],
|
|
|
-source: "handleMessage: aMessage\x0a\x09| string result |\x0a\x0a\x09string := aMessage data.\x0a\x09string isString ifFalse: [ ^ self ].\x0a\x0a\x09Transcript show: string.\x0a\x0a\x09result := Compiler new evaluateExpression: string.\x0a\x09console log: result.\x0a\x09console log: result asNemoString.\x0a\x09socket send: result asNemoString",
|
|
|
-messageSends: ["data", "ifFalse:", "isString", "show:", "evaluateExpression:", "new", "log:", "asNemoString", "send:"],
|
|
|
-referencedClasses: ["Transcript", "Compiler"]
|
|
|
+source: "handleMessage: aMessage\x0a\x09| string result |\x0a\x0a\x09string := aMessage data.\x0a\x09string isString ifFalse: [ ^ self ].\x0a\x0a\x09[ result := Compiler new evaluateExpression: string ]\x0a\x09\x09on: Error\x0a\x09\x09do: [ :ex | ^ socket send: ex asNemoString ].\x0a\x09socket send: result asNemoString",
|
|
|
+messageSends: ["data", "ifFalse:", "isString", "on:do:", "evaluateExpression:", "new", "send:", "asNemoString"],
|
|
|
+referencedClasses: ["Compiler", "Error"]
|
|
|
}),
|
|
|
smalltalk.NemoConnection);
|
|
|
|
|
@@ -199,15 +196,31 @@ selector: "asNemo",
|
|
|
category: '*Nemo',
|
|
|
fn: function (){
|
|
|
var self=this;
|
|
|
-return (function($rec){smalltalk.send($rec, "_at_put_", ["name", smalltalk.send(self, "_name", [])]);smalltalk.send($rec, "_at_put_", ["superclass", (($receiver = smalltalk.send(self, "_superclass", [])) != nil && $receiver != undefined) ? (function(){return smalltalk.send(smalltalk.send(self, "_superclass", []), "_name", []);})() : nil]);smalltalk.send($rec, "_at_put_", ["classComment", smalltalk.send(self, "_comment", [])]);smalltalk.send($rec, "_at_put_", ["definition", smalltalk.send(self, "_definition", [])]);smalltalk.send($rec, "_at_put_", ["package", smalltalk.send(self, "_category", [])]);return smalltalk.send($rec, "_asNemo", []);})(smalltalk.send((smalltalk.Dictionary || Dictionary), "_new", []));
|
|
|
+return (function($rec){smalltalk.send($rec, "_at_put_", ["name", smalltalk.send(self, "_name", [])]);smalltalk.send($rec, "_at_put_", ["superclass", (($receiver = smalltalk.send(self, "_superclass", [])) != nil && $receiver != undefined) ? (function(){return smalltalk.send(smalltalk.send(self, "_superclass", []), "_name", []);})() : nil]);smalltalk.send($rec, "_at_put_", ["classComment", smalltalk.send(self, "_comment", [])]);smalltalk.send($rec, "_at_put_", ["definition", smalltalk.send(self, "_definition", [])]);smalltalk.send($rec, "_at_put_", ["package", smalltalk.send(self, "_category", [])]);smalltalk.send($rec, "_at_put_", ["instVarNames", smalltalk.send(self, "_instanceVariableNames", [])]);return smalltalk.send($rec, "_asNemo", []);})(smalltalk.send((smalltalk.Dictionary || Dictionary), "_new", []));
|
|
|
return self;},
|
|
|
args: [],
|
|
|
-source: "asNemo\x0a\x09^ Dictionary new\x0a\x09\x09at: 'name' put: self name;\x0a\x09\x09at: 'superclass' put: (self superclass ifNotNil: [ self superclass name ]);\x0a\x09\x09at: 'classComment' put: self comment;\x0a\x09\x09at: 'definition' put: self definition;\x0a\x09\x09at: 'package' put: self category;\x0a\x09\x09asNemo",
|
|
|
-messageSends: ["at:put:", "name", "ifNotNil:", "superclass", "comment", "definition", "category", "asNemo", "new"],
|
|
|
+source: "asNemo\x0a\x09^ Dictionary new\x0a\x09\x09at: 'name' put: self name;\x0a\x09\x09at: 'superclass' put: (self superclass ifNotNil: [ self superclass name ]);\x0a\x09\x09at: 'classComment' put: self comment;\x0a\x09\x09at: 'definition' put: self definition;\x0a\x09\x09at: 'package' put: self category;\x0a\x09\x09at: 'instVarNames' put: self instanceVariableNames;\x0a\x09\x09asNemo",
|
|
|
+messageSends: ["at:put:", "name", "ifNotNil:", "superclass", "comment", "definition", "category", "instanceVariableNames", "asNemo", "new"],
|
|
|
referencedClasses: ["Dictionary"]
|
|
|
}),
|
|
|
smalltalk.Class);
|
|
|
|
|
|
+smalltalk.addMethod(
|
|
|
+"_asNemo",
|
|
|
+smalltalk.method({
|
|
|
+selector: "asNemo",
|
|
|
+category: '*Nemo',
|
|
|
+fn: function (){
|
|
|
+var self=this;
|
|
|
+return (function($rec){smalltalk.send($rec, "_at_put_", ["definition", smalltalk.send(self, "_definition", [])]);smalltalk.send($rec, "_at_put_", ["instVarNames", smalltalk.send(self, "_instanceVariableNames", [])]);return smalltalk.send($rec, "_asNemo", []);})(smalltalk.send((smalltalk.Dictionary || Dictionary), "_new", []));
|
|
|
+return self;},
|
|
|
+args: [],
|
|
|
+source: "asNemo\x0a\x09^ Dictionary new\x0a\x09\x09at: 'definition' put: self definition;\x0a\x09\x09at: 'instVarNames' put: self instanceVariableNames;\x0a\x09\x09asNemo",
|
|
|
+messageSends: ["at:put:", "definition", "instanceVariableNames", "asNemo", "new"],
|
|
|
+referencedClasses: ["Dictionary"]
|
|
|
+}),
|
|
|
+smalltalk.Metaclass);
|
|
|
+
|
|
|
smalltalk.addMethod(
|
|
|
"_asNemo",
|
|
|
smalltalk.method({
|
|
@@ -275,6 +288,38 @@ referencedClasses: []
|
|
|
}),
|
|
|
smalltalk.String);
|
|
|
|
|
|
+smalltalk.addMethod(
|
|
|
+"_asNemo",
|
|
|
+smalltalk.method({
|
|
|
+selector: "asNemo",
|
|
|
+category: '*Nemo',
|
|
|
+fn: function (){
|
|
|
+var self=this;
|
|
|
+return (function($rec){smalltalk.send($rec, "_at_put_", ["name", smalltalk.send(self, "_selector", [])]);smalltalk.send($rec, "_at_put_", ["protocol", smalltalk.send(self, "_category", [])]);smalltalk.send($rec, "_at_put_", ["sourceCode", smalltalk.send(self, "_source", [])]);smalltalk.send($rec, "_at_put_", ["compiledSource", smalltalk.send(smalltalk.send(self, "_fn", []), "_compiledSource", [])]);smalltalk.send($rec, "_at_put_", ["messageSends", smalltalk.send(self, "_messageSends", [])]);return smalltalk.send($rec, "_asNemo", []);})(smalltalk.send((smalltalk.Dictionary || Dictionary), "_new", []));
|
|
|
+return self;},
|
|
|
+args: [],
|
|
|
+source: "asNemo\x0a\x09^ Dictionary new\x0a\x09\x09at: 'name' put: self selector;\x0a\x09\x09at: 'protocol' put: self category;\x0a\x09\x09at: 'sourceCode' put: self source;\x0a\x09\x09at: 'compiledSource' put: self fn compiledSource;\x0a\x09\x09at: 'messageSends' put: self messageSends;\x0a\x09\x09asNemo",
|
|
|
+messageSends: ["at:put:", "selector", "category", "source", "compiledSource", "fn", "messageSends", "asNemo", "new"],
|
|
|
+referencedClasses: ["Dictionary"]
|
|
|
+}),
|
|
|
+smalltalk.CompiledMethod);
|
|
|
+
|
|
|
+smalltalk.addMethod(
|
|
|
+"_asNemo",
|
|
|
+smalltalk.method({
|
|
|
+selector: "asNemo",
|
|
|
+category: '*Nemo',
|
|
|
+fn: function (){
|
|
|
+var self=this;
|
|
|
+return (function($rec){smalltalk.send($rec, "_at_put_", ["error", smalltalk.send(self, "_messageText", [])]);return smalltalk.send($rec, "_asNemo", []);})(smalltalk.send((smalltalk.Dictionary || Dictionary), "_new", []));
|
|
|
+return self;},
|
|
|
+args: [],
|
|
|
+source: "asNemo\x0a\x09^ Dictionary new\x0a\x09\x09at: 'error' put: self messageText;\x0a\x09\x09asNemo",
|
|
|
+messageSends: ["at:put:", "messageText", "asNemo", "new"],
|
|
|
+referencedClasses: ["Dictionary"]
|
|
|
+}),
|
|
|
+smalltalk.Error);
|
|
|
+
|
|
|
smalltalk.addMethod(
|
|
|
"_asNemo",
|
|
|
smalltalk.method({
|