Procházet zdrojové kódy

removes all .deploy.js files (not supported anymore)

Nicolas Petton před 11 roky
rodič
revize
cf873db3e7
40 změnil soubory, kde provedl 0 přidání a 56549 odebrání
  1. 0 220
      js/Benchfib.deploy.js
  2. 0 2830
      js/Canvas.deploy.js
  3. 0 1541
      js/Compiler-AST.deploy.js
  4. 0 760
      js/Compiler-Core.deploy.js
  5. 0 162
      js/Compiler-Exceptions.deploy.js
  6. 0 2782
      js/Compiler-IR.deploy.js
  7. 0 1162
      js/Compiler-Inlining.deploy.js
  8. 0 1535
      js/Compiler-Interpreter.deploy.js
  9. 0 1346
      js/Compiler-Semantic.deploy.js
  10. 0 1260
      js/Compiler-Tests.deploy.js
  11. 0 87
      js/Examples.deploy.js
  12. 0 407
      js/Helios-Announcements.deploy.js
  13. 0 2991
      js/Helios-Browser.deploy.js
  14. 0 423
      js/Helios-Commands-Browser.deploy.js
  15. 0 717
      js/Helios-Commands-Core.deploy.js
  16. 0 1346
      js/Helios-Commands-Tools.deploy.js
  17. 0 4056
      js/Helios-Core.deploy.js
  18. 0 703
      js/Helios-Debugger.deploy.js
  19. 0 10
      js/Helios-Exceptions.deploy.js
  20. 0 1063
      js/Helios-Inspector.deploy.js
  21. 0 1729
      js/Helios-KeyBindings.deploy.js
  22. 0 396
      js/Helios-Layout.deploy.js
  23. 0 845
      js/Helios-References.deploy.js
  24. 0 176
      js/Helios-Transcript.deploy.js
  25. 0 21
      js/Helios-Workspace-Tests.deploy.js
  26. 0 1580
      js/Helios-Workspace.deploy.js
  27. 0 5541
      js/IDE.deploy.js
  28. 0 2041
      js/Importer-Exporter.deploy.js
  29. 0 558
      js/Kernel-Announcements.deploy.js
  30. 0 1719
      js/Kernel-Classes.deploy.js
  31. 0 4337
      js/Kernel-Collections.deploy.js
  32. 0 456
      js/Kernel-Exceptions.deploy.js
  33. 0 1810
      js/Kernel-Infrastructure.deploy.js
  34. 0 1366
      js/Kernel-Methods.deploy.js
  35. 0 2673
      js/Kernel-Objects.deploy.js
  36. 0 4133
      js/Kernel-Tests.deploy.js
  37. 0 155
      js/Kernel-Transcript.deploy.js
  38. 0 432
      js/SUnit-Tests.deploy.js
  39. 0 926
      js/SUnit.deploy.js
  40. 0 254
      js/Spaces.deploy.js

+ 0 - 220
js/Benchfib.deploy.js

@@ -1,220 +0,0 @@
-define("amber/Benchfib", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/Kernel-Objects"], function(smalltalk,nil,_st){
-smalltalk.addPackage('Benchfib');
-smalltalk.packages["Benchfib"].transport = {"type":"amd","amdNamespace":"amber"};
-
-smalltalk.addClass('Benchfib', smalltalk.Object, [], 'Benchfib');
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "main",
-fn: function (){
-var self=this;
-var result;
-return smalltalk.withContext(function($ctx1) { 
-result=(0)._tinyBenchmarks();
-_st(console)._log_("0 tinyBenchmarks => ".__comma(result));
-return self}, function($ctx1) {$ctx1.fill(self,"main",{result:result},smalltalk.Benchfib.klass)})},
-messageSends: ["tinyBenchmarks", "log:", ","]}),
-smalltalk.Benchfib.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "benchFib",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self.__lt((2));
-if(smalltalk.assert($2)){
-$1=(1);
-} else {
-$1=_st(_st(_st(self.__minus((1)))._benchFib()).__plus(_st(self.__minus((2)))._benchFib())).__plus((1));
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"benchFib",{},smalltalk.Number)})},
-messageSends: ["ifTrue:ifFalse:", "+", "benchFib", "-", "<"]}),
-smalltalk.Number);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "benchmark",
-fn: function (){
-var self=this;
-var size,flags,prime,k,count;
-function $Array(){return smalltalk.Array||(typeof Array=="undefined"?nil:Array)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-size=(8190);
-(1)._to_do_(self,(function(iter){
-return smalltalk.withContext(function($ctx2) {
-count=(0);
-count;
-flags=_st($Array())._new();
-flags;
-_st(size)._timesRepeat_((function(){
-return smalltalk.withContext(function($ctx3) {
-return _st(flags)._add_(true);
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-return (1)._to_do_(size,(function(i){
-return smalltalk.withContext(function($ctx3) {
-$1=_st(flags)._at_(i);
-if(smalltalk.assert($1)){
-prime=_st(i).__plus((1));
-prime;
-k=_st(i).__plus(prime);
-k;
-_st((function(){
-return smalltalk.withContext(function($ctx4) {
-return _st(k).__lt_eq(size);
-}, function($ctx4) {$ctx4.fillBlock({},$ctx3)})}))._whileTrue_((function(){
-return smalltalk.withContext(function($ctx4) {
-_st(flags)._at_put_(k,false);
-k=_st(k).__plus(prime);
-return k;
-}, function($ctx4) {$ctx4.fillBlock({},$ctx3)})}));
-count=_st(count).__plus((1));
-return count;
-};
-}, function($ctx3) {$ctx3.fillBlock({i:i},$ctx2)})}));
-}, function($ctx2) {$ctx2.fillBlock({iter:iter},$ctx1)})}));
-$2=count;
-return $2;
-}, function($ctx1) {$ctx1.fill(self,"benchmark",{size:size,flags:flags,prime:prime,k:k,count:count},smalltalk.Number)})},
-messageSends: ["to:do:", "new", "timesRepeat:", "add:", "ifTrue:", "+", "whileTrue:", "at:put:", "<=", "at:"]}),
-smalltalk.Number);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "jsbenchFib",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-if (this < 2) {
-return 1;
-} else {
-return (this-1)._jsbenchFib() + (this-2)._jsbenchFib() + 1;};
-return self}, function($ctx1) {$ctx1.fill(self,"jsbenchFib",{},smalltalk.Number)})},
-messageSends: []}),
-smalltalk.Number);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "jsbenchmark",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-
-var size = 8190;
-var count;
-for (var z=0;z<this;z++) {
-	count = 0;
-	var flags = new Array();
-	for (var p=0; p<size; p++) {
-	flags[p] = true;
-	}
-	for (var i=1;i<=size;i++) {
-		if (flags[i-1]) {
-			var prime = i+1;
-			var k = i + prime;
-			while (k <= size) {
-				flags[k-1] = false;
-				k = k + prime;
-			}
-			count = count + 1;
-		}
-	}
-}
-return count;
-return self}, function($ctx1) {$ctx1.fill(self,"jsbenchmark",{},smalltalk.Number)})},
-messageSends: []}),
-smalltalk.Number);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "jstinyBenchmarks",
-fn: function (){
-var self=this;
-var t1,t2,r,n1,n2;
-function $Date(){return smalltalk.Date||(typeof Date=="undefined"?nil:Date)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-n1=(1);
-_st((function(){
-return smalltalk.withContext(function($ctx2) {
-t1=_st($Date())._millisecondsToRun_((function(){
-return smalltalk.withContext(function($ctx3) {
-return _st(n1)._jsbenchmark();
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-t1;
-return _st(t1).__lt((1000));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._whileTrue_((function(){
-return smalltalk.withContext(function($ctx2) {
-n1=_st(n1).__star((2));
-return n1;
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-n2=(28);
-_st((function(){
-return smalltalk.withContext(function($ctx2) {
-t2=_st($Date())._millisecondsToRun_((function(){
-return smalltalk.withContext(function($ctx3) {
-r=_st(n2)._jsbenchFib();
-return r;
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-t2;
-return _st(t2).__lt((1000));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._whileTrue_((function(){
-return smalltalk.withContext(function($ctx2) {
-n2=_st(n2).__plus((1));
-return n2;
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-$1=_st(_st(_st(_st(_st(_st(_st(n1).__star((500000))).__star((1000))).__slash(t1))._printString()).__comma(" bytecodes/sec; ")).__comma(_st(_st(_st(r).__star((1000))).__slash(t2))._printString())).__comma(" sends/sec");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"jstinyBenchmarks",{t1:t1,t2:t2,r:r,n1:n1,n2:n2},smalltalk.Number)})},
-messageSends: ["whileTrue:", "*", "millisecondsToRun:", "jsbenchmark", "<", "+", "jsbenchFib", ",", "printString", "/"]}),
-smalltalk.Number);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "tinyBenchmarks",
-fn: function (){
-var self=this;
-var t1,t2,r,n1,n2;
-function $Date(){return smalltalk.Date||(typeof Date=="undefined"?nil:Date)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-n1=(1);
-_st((function(){
-return smalltalk.withContext(function($ctx2) {
-t1=_st($Date())._millisecondsToRun_((function(){
-return smalltalk.withContext(function($ctx3) {
-return _st(n1)._benchmark();
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-t1;
-return _st(t1).__lt((1000));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._whileTrue_((function(){
-return smalltalk.withContext(function($ctx2) {
-n1=_st(n1).__star((2));
-return n1;
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-n2=(16);
-_st((function(){
-return smalltalk.withContext(function($ctx2) {
-t2=_st($Date())._millisecondsToRun_((function(){
-return smalltalk.withContext(function($ctx3) {
-r=_st(n2)._benchFib();
-return r;
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-t2;
-return _st(t2).__lt((1000));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._whileTrue_((function(){
-return smalltalk.withContext(function($ctx2) {
-n2=_st(n2).__plus((1));
-return n2;
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-$1=_st(_st(_st(_st(_st(_st(_st(n1).__star((500000))).__star((1000))).__slash(t1))._printString()).__comma(" bytecodes/sec; ")).__comma(_st(_st(_st(r).__star((1000))).__slash(t2))._printString())).__comma(" sends/sec");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"tinyBenchmarks",{t1:t1,t2:t2,r:r,n1:n1,n2:n2},smalltalk.Number)})},
-messageSends: ["whileTrue:", "*", "millisecondsToRun:", "benchmark", "<", "+", "benchFib", ",", "printString", "/"]}),
-smalltalk.Number);
-
-});

+ 0 - 2830
js/Canvas.deploy.js

@@ -1,2830 +0,0 @@
-define("amber/Canvas", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/Kernel-Objects", "amber/Kernel-Infrastructure", "amber/Kernel-Methods", "amber/Kernel-Collections"], function(smalltalk,nil,_st){
-smalltalk.addPackage('Canvas');
-smalltalk.packages["Canvas"].transport = {"type":"amd","amdNamespace":"amber"};
-
-smalltalk.addClass('BrowserInterface', smalltalk.Object, [], 'Canvas');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "ajax:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(jQuery)._ajax_(anObject);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"ajax:",{anObject:anObject},smalltalk.BrowserInterface)})},
-messageSends: ["ajax:"]}),
-smalltalk.BrowserInterface);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "alert:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(window)._alert_(aString);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"alert:",{aString:aString},smalltalk.BrowserInterface)})},
-messageSends: ["alert:"]}),
-smalltalk.BrowserInterface);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "confirm:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(window)._confirm_(aString);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"confirm:",{aString:aString},smalltalk.BrowserInterface)})},
-messageSends: ["confirm:"]}),
-smalltalk.BrowserInterface);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isAvailable",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return typeof window !== "undefined" && typeof jQuery !== "undefined";
-return self}, function($ctx1) {$ctx1.fill(self,"isAvailable",{},smalltalk.BrowserInterface)})},
-messageSends: []}),
-smalltalk.BrowserInterface);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "prompt:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(window)._prompt_(aString);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"prompt:",{aString:aString},smalltalk.BrowserInterface)})},
-messageSends: ["prompt:"]}),
-smalltalk.BrowserInterface);
-
-
-smalltalk.BrowserInterface.klass.iVarNames = ['uiWorker','ajaxWorker'];
-
-smalltalk.addClass('HTMLCanvas', smalltalk.Object, ['root'], 'Canvas');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "a",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("a");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"a",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "abbr",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("abbr");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"abbr",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "address",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("address");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"address",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "area",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("area");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"area",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "article",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("article");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"article",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "aside",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("aside");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"aside",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "audio",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("audio");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"audio",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "base",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("base");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"base",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "blockquote",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("blockquote");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"blockquote",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "body",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("body");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"body",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "br",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("br");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"br",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "button",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("button");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"button",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "canvas",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("canvas");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"canvas",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "caption",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("caption");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"caption",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "cite",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("cite");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"cite",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "code",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("code");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"code",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "col",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("col");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"col",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "colgroup",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("colgroup");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"colgroup",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "command",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("command");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"command",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "datalist",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("datalist");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"datalist",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "dd",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("dd");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"dd",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "del",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("del");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"del",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "details",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("details");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"details",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "div",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("div");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"div",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "div:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._div())._with_(aBlock);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"div:",{aBlock:aBlock},smalltalk.HTMLCanvas)})},
-messageSends: ["with:", "div"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "dl",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("dl");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"dl",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "dt",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("dt");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"dt",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "em",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("em");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"em",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "embed",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("embed");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"embed",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "entity:",
-fn: function (aString){
-var self=this;
-var result;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-result=_st(_st("<span />"._asJQuery())._html_(_st("&".__comma(aString)).__comma(";")))._text();
-$1=_st(_st(result)._size()).__eq((1));
-if(! smalltalk.assert($1)){
-self._error_("Not an HTML entity: ".__comma(aString));
-};
-self._with_(result);
-return self}, function($ctx1) {$ctx1.fill(self,"entity:",{aString:aString,result:result},smalltalk.HTMLCanvas)})},
-messageSends: ["text", "html:", ",", "asJQuery", "ifFalse:", "error:", "=", "size", "with:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "fieldset",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("fieldset");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"fieldset",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "figcaption",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("figcaption");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"figcaption",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "figure",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("figure");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"figure",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "footer",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("footer");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"footer",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "form",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("form");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"form",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "h1",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("h1");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"h1",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "h1:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._h1())._with_(anObject);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"h1:",{anObject:anObject},smalltalk.HTMLCanvas)})},
-messageSends: ["with:", "h1"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "h2",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("h2");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"h2",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "h2:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._h2())._with_(anObject);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"h2:",{anObject:anObject},smalltalk.HTMLCanvas)})},
-messageSends: ["with:", "h2"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "h3",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("h3");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"h3",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "h3:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._h3())._with_(anObject);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"h3:",{anObject:anObject},smalltalk.HTMLCanvas)})},
-messageSends: ["with:", "h3"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "h4",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("h4");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"h4",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "h4:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._h4())._with_(anObject);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"h4:",{anObject:anObject},smalltalk.HTMLCanvas)})},
-messageSends: ["with:", "h4"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "h5",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("h5");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"h5",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "h5:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._h5())._with_(anObject);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"h5:",{anObject:anObject},smalltalk.HTMLCanvas)})},
-messageSends: ["with:", "h5"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "h6",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("h6");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"h6",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "h6:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._h6())._with_(anObject);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"h6:",{anObject:anObject},smalltalk.HTMLCanvas)})},
-messageSends: ["with:", "h6"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "head",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("head");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"head",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "header",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("header");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"header",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "hgroup",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("hgroup");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"hgroup",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "hr",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("hr");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"hr",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "html",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("html");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"html",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "iframe",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("iframe");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"iframe",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "iframe:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._iframe())._src_(aString);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"iframe:",{aString:aString},smalltalk.HTMLCanvas)})},
-messageSends: ["src:", "iframe"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "img",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("img");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"img",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "img:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._img())._src_(aString);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"img:",{aString:aString},smalltalk.HTMLCanvas)})},
-messageSends: ["src:", "img"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "initialize",
-fn: function (){
-var self=this;
-function $TagBrush(){return smalltalk.TagBrush||(typeof TagBrush=="undefined"?nil:TagBrush)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-smalltalk.HTMLCanvas.superclass.fn.prototype._initialize.apply(_st(self), []);
-$1=self["@root"];
-if(($receiver = $1) == nil || $receiver == undefined){
-self["@root"]=_st($TagBrush())._fromString_canvas_("div",self);
-self["@root"];
-} else {
-$1;
-};
-return self}, function($ctx1) {$ctx1.fill(self,"initialize",{},smalltalk.HTMLCanvas)})},
-messageSends: ["initialize", "ifNil:", "fromString:canvas:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "initializeFromJQuery:",
-fn: function (aJQuery){
-var self=this;
-function $TagBrush(){return smalltalk.TagBrush||(typeof TagBrush=="undefined"?nil:TagBrush)}
-return smalltalk.withContext(function($ctx1) { 
-self["@root"]=_st($TagBrush())._fromJQuery_canvas_(aJQuery,self);
-return self}, function($ctx1) {$ctx1.fill(self,"initializeFromJQuery:",{aJQuery:aJQuery},smalltalk.HTMLCanvas)})},
-messageSends: ["fromJQuery:canvas:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "input",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("input");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"input",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "label",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("label");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "legend",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("legend");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"legend",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "li",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("li");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"li",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "li:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._li())._with_(anObject);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"li:",{anObject:anObject},smalltalk.HTMLCanvas)})},
-messageSends: ["with:", "li"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "link",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("link");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"link",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "map",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("map");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"map",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "mark",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("mark");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"mark",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "menu",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("menu");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"menu",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "meta",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("meta");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"meta",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "nav",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("nav");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"nav",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "newTag:",
-fn: function (aString){
-var self=this;
-function $TagBrush(){return smalltalk.TagBrush||(typeof TagBrush=="undefined"?nil:TagBrush)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st($TagBrush())._fromString_canvas_(aString,self);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"newTag:",{aString:aString},smalltalk.HTMLCanvas)})},
-messageSends: ["fromString:canvas:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "noscript",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("noscript");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"noscript",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "object",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("object");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"object",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "ol",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("ol");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"ol",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "ol:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._ol())._with_(anObject);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"ol:",{anObject:anObject},smalltalk.HTMLCanvas)})},
-messageSends: ["with:", "ol"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "optgroup",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("optgroup");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"optgroup",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "option",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("option");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"option",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "output",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("output");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"output",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "p",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("p");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"p",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "p:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._p())._with_(anObject);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"p:",{anObject:anObject},smalltalk.HTMLCanvas)})},
-messageSends: ["with:", "p"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "param",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("param");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"param",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "pre",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("pre");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"pre",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "progress",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("progress");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"progress",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "root",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@root"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"root",{},smalltalk.HTMLCanvas)})},
-messageSends: []}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "root:",
-fn: function (aTagBrush){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@root"]=aTagBrush;
-return self}, function($ctx1) {$ctx1.fill(self,"root:",{aTagBrush:aTagBrush},smalltalk.HTMLCanvas)})},
-messageSends: []}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "script",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("script");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"script",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "section",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("section");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"section",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "select",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("select");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"select",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "small",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("small");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"small",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "snippet:",
-fn: function (anElement){
-var self=this;
-var clone,caret;
-function $TagBrush(){return smalltalk.TagBrush||(typeof TagBrush=="undefined"?nil:TagBrush)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-clone=_st(_st(anElement)._asJQuery())._clone();
-self._with_(_st($TagBrush())._fromJQuery_canvas_(clone,self));
-caret=_st(clone)._find_("[data-snippet=\x22*\x22]");
-$1=_st(_st(caret)._toArray())._isEmpty();
-if(smalltalk.assert($1)){
-caret=clone;
-caret;
-};
-$2=_st($TagBrush())._fromJQuery_canvas_(_st(caret)._removeAttr_("data-snippet"),self);
-return $2;
-}, function($ctx1) {$ctx1.fill(self,"snippet:",{anElement:anElement,clone:clone,caret:caret},smalltalk.HTMLCanvas)})},
-messageSends: ["clone", "asJQuery", "with:", "fromJQuery:canvas:", "find:", "ifTrue:", "isEmpty", "toArray", "removeAttr:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "source",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("source");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"source",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "span",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("span");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"span",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "span:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._span())._with_(anObject);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"span:",{anObject:anObject},smalltalk.HTMLCanvas)})},
-messageSends: ["with:", "span"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "strong",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("strong");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"strong",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "strong:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._strong())._with_(anObject);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"strong:",{anObject:anObject},smalltalk.HTMLCanvas)})},
-messageSends: ["with:", "strong"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "style",
-fn: function (){
-var self=this;
-function $StyleTag(){return smalltalk.StyleTag||(typeof StyleTag=="undefined"?nil:StyleTag)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self["@root"])._addBrush_(_st($StyleTag())._canvas_(self));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"style",{},smalltalk.HTMLCanvas)})},
-messageSends: ["addBrush:", "canvas:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "style:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=self._style();
-_st($2)._with_(aString);
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"style:",{aString:aString},smalltalk.HTMLCanvas)})},
-messageSends: ["with:", "style", "yourself"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "sub",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("sub");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"sub",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "summary",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("summary");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"summary",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "sup",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("sup");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"sup",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "table",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("table");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"table",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "tag:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self["@root"])._addBrush_(self._newTag_(aString));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"tag:",{aString:aString},smalltalk.HTMLCanvas)})},
-messageSends: ["addBrush:", "newTag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "tbody",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("tbody");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"tbody",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "td",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("td");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"td",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "textarea",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("textarea");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"textarea",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "tfoot",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("tfoot");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"tfoot",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "th",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("th");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"th",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "thead",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("thead");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"thead",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "time",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("time");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"time",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "title",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("title");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"title",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "tr",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("tr");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"tr",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "ul",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("ul");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"ul",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "ul:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._ul())._with_(anObject);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"ul:",{anObject:anObject},smalltalk.HTMLCanvas)})},
-messageSends: ["with:", "ul"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "video",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tag_("video");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"video",{},smalltalk.HTMLCanvas)})},
-messageSends: ["tag:"]}),
-smalltalk.HTMLCanvas);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "with:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._root())._with_(anObject);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"with:",{anObject:anObject},smalltalk.HTMLCanvas)})},
-messageSends: ["with:", "root"]}),
-smalltalk.HTMLCanvas);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "browserVersion",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(jQuery)._at_("browser"))._version();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"browserVersion",{},smalltalk.HTMLCanvas.klass)})},
-messageSends: ["version", "at:"]}),
-smalltalk.HTMLCanvas.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isMSIE",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(_st(jQuery)._at_("browser"))._at_("msie"))._notNil();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"isMSIE",{},smalltalk.HTMLCanvas.klass)})},
-messageSends: ["notNil", "at:"]}),
-smalltalk.HTMLCanvas.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isMozilla",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(_st(jQuery)._at_("browser"))._at_("mozilla"))._notNil();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"isMozilla",{},smalltalk.HTMLCanvas.klass)})},
-messageSends: ["notNil", "at:"]}),
-smalltalk.HTMLCanvas.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isOpera",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(_st(jQuery)._at_("browser"))._at_("opera"))._notNil();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"isOpera",{},smalltalk.HTMLCanvas.klass)})},
-messageSends: ["notNil", "at:"]}),
-smalltalk.HTMLCanvas.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isWebkit",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(_st(jQuery)._at_("browser"))._at_("webkit"))._notNil();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"isWebkit",{},smalltalk.HTMLCanvas.klass)})},
-messageSends: ["notNil", "at:"]}),
-smalltalk.HTMLCanvas.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onJQuery:",
-fn: function (aJQuery){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=self._basicNew();
-_st($2)._initializeFromJQuery_(aJQuery);
-_st($2)._initialize();
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"onJQuery:",{aJQuery:aJQuery},smalltalk.HTMLCanvas.klass)})},
-messageSends: ["initializeFromJQuery:", "basicNew", "initialize", "yourself"]}),
-smalltalk.HTMLCanvas.klass);
-
-
-smalltalk.addClass('HTMLSnippet', smalltalk.Object, ['snippets'], 'Canvas');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "initializeFromJQuery:",
-fn: function (aJQuery){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._snippetsFromJQuery_(aJQuery))._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return self._installSnippetFromJQuery_(_st(each)._asJQuery());
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"initializeFromJQuery:",{aJQuery:aJQuery},smalltalk.HTMLSnippet)})},
-messageSends: ["do:", "installSnippetFromJQuery:", "asJQuery", "snippetsFromJQuery:"]}),
-smalltalk.HTMLSnippet);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "installSnippetFromJQuery:",
-fn: function (element){
-var self=this;
-var name;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-name=_st(element)._attr_("data-snippet");
-$1=_st(name).__eq("*");
-if(! smalltalk.assert($1)){
-$2=_st("^\x5c*"._asRegexp())._test_(name);
-if(smalltalk.assert($2)){
-name=_st(name)._allButFirst();
-name;
-_st(element)._attr_put_("data-snippet","*");
-} else {
-_st(element)._removeAttr_("data-snippet");
-};
-self._snippetAt_install_(name,_st(_st(element)._detach())._get_((0)));
-};
-return self}, function($ctx1) {$ctx1.fill(self,"installSnippetFromJQuery:",{element:element,name:name},smalltalk.HTMLSnippet)})},
-messageSends: ["attr:", "ifFalse:", "ifTrue:ifFalse:", "allButFirst", "attr:put:", "removeAttr:", "test:", "asRegexp", "snippetAt:install:", "get:", "detach", "="]}),
-smalltalk.HTMLSnippet);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "snippetAt:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._snippets())._at_(aString);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"snippetAt:",{aString:aString},smalltalk.HTMLSnippet)})},
-messageSends: ["at:", "snippets"]}),
-smalltalk.HTMLSnippet);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "snippetAt:compile:",
-fn: function (aString,anElement){
-var self=this;
-function $HTMLCanvas(){return smalltalk.HTMLCanvas||(typeof HTMLCanvas=="undefined"?nil:HTMLCanvas)}
-function $ClassBuilder(){return smalltalk.ClassBuilder||(typeof ClassBuilder=="undefined"?nil:ClassBuilder)}
-return smalltalk.withContext(function($ctx1) { 
-_st(_st($ClassBuilder())._new())._installMethod_forClass_category_(_st(_st((function(htmlReceiver){
-return smalltalk.withContext(function($ctx2) {
-return _st(htmlReceiver)._snippet_(anElement);
-}, function($ctx2) {$ctx2.fillBlock({htmlReceiver:htmlReceiver},$ctx1)})}))._currySelf())._asCompiledMethod_(aString),$HTMLCanvas(),"**snippets");
-return self}, function($ctx1) {$ctx1.fill(self,"snippetAt:compile:",{aString:aString,anElement:anElement},smalltalk.HTMLSnippet)})},
-messageSends: ["installMethod:forClass:category:", "asCompiledMethod:", "currySelf", "snippet:", "new"]}),
-smalltalk.HTMLSnippet);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "snippetAt:install:",
-fn: function (aString,anElement){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._snippets())._at_put_(aString,anElement);
-self._snippetAt_compile_(aString,anElement);
-return self}, function($ctx1) {$ctx1.fill(self,"snippetAt:install:",{aString:aString,anElement:anElement},smalltalk.HTMLSnippet)})},
-messageSends: ["at:put:", "snippets", "snippetAt:compile:"]}),
-smalltalk.HTMLSnippet);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "snippets",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@snippets"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@snippets"]=smalltalk.HashedCollection._from_([]);
-$1=self["@snippets"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"snippets",{},smalltalk.HTMLSnippet)})},
-messageSends: ["ifNil:"]}),
-smalltalk.HTMLSnippet);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "snippetsFromJQuery:",
-fn: function (aJQuery){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(aJQuery)._find_("[data-snippet]"))._toArray();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"snippetsFromJQuery:",{aJQuery:aJQuery},smalltalk.HTMLSnippet)})},
-messageSends: ["toArray", "find:"]}),
-smalltalk.HTMLSnippet);
-
-
-smalltalk.HTMLSnippet.klass.iVarNames = ['current'];
-smalltalk.addMethod(
-smalltalk.method({
-selector: "current",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@current"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"current",{},smalltalk.HTMLSnippet.klass)})},
-messageSends: []}),
-smalltalk.HTMLSnippet.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "ensureCurrent",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3;
-$1=self["@current"];
-if(($receiver = $1) == nil || $receiver == undefined){
-$2=smalltalk.HTMLSnippet.klass.superclass.fn.prototype._new.apply(_st(self), []);
-_st($2)._initializeFromJQuery_(_st(document)._asJQuery());
-$3=_st($2)._yourself();
-self["@current"]=$3;
-self["@current"];
-} else {
-$1;
-};
-return self}, function($ctx1) {$ctx1.fill(self,"ensureCurrent",{},smalltalk.HTMLSnippet.klass)})},
-messageSends: ["ifNil:", "initializeFromJQuery:", "asJQuery", "new", "yourself"]}),
-smalltalk.HTMLSnippet.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "initialize",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-smalltalk.HTMLSnippet.klass.superclass.fn.prototype._initialize.apply(_st(self), []);
-$1=self._isDOMAvailable();
-if(smalltalk.assert($1)){
-self._ensureCurrent();
-};
-return self}, function($ctx1) {$ctx1.fill(self,"initialize",{},smalltalk.HTMLSnippet.klass)})},
-messageSends: ["initialize", "ifTrue:", "ensureCurrent", "isDOMAvailable"]}),
-smalltalk.HTMLSnippet.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isDOMAvailable",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
- return typeof document !== 'undefined' ;
-return self}, function($ctx1) {$ctx1.fill(self,"isDOMAvailable",{},smalltalk.HTMLSnippet.klass)})},
-messageSends: []}),
-smalltalk.HTMLSnippet.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "new",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._shouldNotImplement();
-return self}, function($ctx1) {$ctx1.fill(self,"new",{},smalltalk.HTMLSnippet.klass)})},
-messageSends: ["shouldNotImplement"]}),
-smalltalk.HTMLSnippet.klass);
-
-
-smalltalk.addClass('TagBrush', smalltalk.Object, ['canvas', 'element'], 'Canvas');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "accesskey:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._at_put_("accesskey",aString);
-return self}, function($ctx1) {$ctx1.fill(self,"accesskey:",{aString:aString},smalltalk.TagBrush)})},
-messageSends: ["at:put:"]}),
-smalltalk.TagBrush);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "action:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._at_put_("action",aString);
-return self}, function($ctx1) {$ctx1.fill(self,"action:",{aString:aString},smalltalk.TagBrush)})},
-messageSends: ["at:put:"]}),
-smalltalk.TagBrush);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "addBrush:",
-fn: function (aTagBrush){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-self._appendChild_(_st(aTagBrush)._element());
-$1=aTagBrush;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"addBrush:",{aTagBrush:aTagBrush},smalltalk.TagBrush)})},
-messageSends: ["appendChild:", "element"]}),
-smalltalk.TagBrush);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "align:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._at_put_("align",aString);
-return self}, function($ctx1) {$ctx1.fill(self,"align:",{aString:aString},smalltalk.TagBrush)})},
-messageSends: ["at:put:"]}),
-smalltalk.TagBrush);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "alt:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._at_put_("alt",aString);
-return self}, function($ctx1) {$ctx1.fill(self,"alt:",{aString:aString},smalltalk.TagBrush)})},
-messageSends: ["at:put:"]}),
-smalltalk.TagBrush);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "append:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(anObject)._appendToBrush_(self);
-return self}, function($ctx1) {$ctx1.fill(self,"append:",{anObject:anObject},smalltalk.TagBrush)})},
-messageSends: ["appendToBrush:"]}),
-smalltalk.TagBrush);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "appendBlock:",
-fn: function (aBlock){
-var self=this;
-var root;
-return smalltalk.withContext(function($ctx1) { 
-root=_st(self["@canvas"])._root();
-_st(self["@canvas"])._root_(self);
-_st(aBlock)._value_(self["@canvas"]);
-_st(self["@canvas"])._root_(root);
-return self}, function($ctx1) {$ctx1.fill(self,"appendBlock:",{aBlock:aBlock,root:root},smalltalk.TagBrush)})},
-messageSends: ["root", "root:", "value:"]}),
-smalltalk.TagBrush);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "appendChild:",
-fn: function (anElement){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var element=self['@element'];
-	if (null == element.canHaveChildren || element.canHaveChildren) {
-		element.appendChild(anElement);
-	} else {
-		element.text = String(element.text) + anElement.innerHTML;
-	} ;
-return self}, function($ctx1) {$ctx1.fill(self,"appendChild:",{anElement:anElement},smalltalk.TagBrush)})},
-messageSends: []}),
-smalltalk.TagBrush);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "appendString:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._appendChild_(self._createTextNodeFor_(aString));
-return self}, function($ctx1) {$ctx1.fill(self,"appendString:",{aString:aString},smalltalk.TagBrush)})},
-messageSends: ["appendChild:", "createTextNodeFor:"]}),
-smalltalk.TagBrush);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "appendToBrush:",
-fn: function (aTagBrush){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(aTagBrush)._addBrush_(self);
-return self}, function($ctx1) {$ctx1.fill(self,"appendToBrush:",{aTagBrush:aTagBrush},smalltalk.TagBrush)})},
-messageSends: ["addBrush:"]}),
-smalltalk.TagBrush);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "asJQuery",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._element())._asJQuery();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"asJQuery",{},smalltalk.TagBrush)})},
-messageSends: ["asJQuery", "element"]}),
-smalltalk.TagBrush);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "at:put:",
-fn: function (aString,aValue){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self['@element'].setAttribute(aString, aValue);
-return self}, function($ctx1) {$ctx1.fill(self,"at:put:",{aString:aString,aValue:aValue},smalltalk.TagBrush)})},
-messageSends: []}),
-smalltalk.TagBrush);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "class:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self['@element'].className = aString;
-return self}, function($ctx1) {$ctx1.fill(self,"class:",{aString:aString},smalltalk.TagBrush)})},
-messageSends: []}),
-smalltalk.TagBrush);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "cols:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._at_put_("cols",aString);
-return self}, function($ctx1) {$ctx1.fill(self,"cols:",{aString:aString},smalltalk.TagBrush)})},
-messageSends: ["at:put:"]}),
-smalltalk.TagBrush);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "contenteditable:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._at_put_("contenteditable",aString);
-return self}, function($ctx1) {$ctx1.fill(self,"contenteditable:",{aString:aString},smalltalk.TagBrush)})},
-messageSends: ["at:put:"]}),
-smalltalk.TagBrush);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "contents:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=self;
-_st($1)._empty();
-$2=_st($1)._append_(anObject);
-return self}, function($ctx1) {$ctx1.fill(self,"contents:",{anObject:anObject},smalltalk.TagBrush)})},
-messageSends: ["empty", "append:"]}),
-smalltalk.TagBrush);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "contextmenu:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._at_put_("contextmenu",aString);
-return self}, function($ctx1) {$ctx1.fill(self,"contextmenu:",{aString:aString},smalltalk.TagBrush)})},
-messageSends: ["at:put:"]}),
-smalltalk.TagBrush);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "createElementFor:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return document.createElement(String(aString));
-return self}, function($ctx1) {$ctx1.fill(self,"createElementFor:",{aString:aString},smalltalk.TagBrush)})},
-messageSends: []}),
-smalltalk.TagBrush);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "createTextNodeFor:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return document.createTextNode(String(aString));
-return self}, function($ctx1) {$ctx1.fill(self,"createTextNodeFor:",{aString:aString},smalltalk.TagBrush)})},
-messageSends: []}),
-smalltalk.TagBrush);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "draggable:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._at_put_("draggable",aString);
-return self}, function($ctx1) {$ctx1.fill(self,"draggable:",{aString:aString},smalltalk.TagBrush)})},
-messageSends: ["at:put:"]}),
-smalltalk.TagBrush);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "element",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@element"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"element",{},smalltalk.TagBrush)})},
-messageSends: []}),
-smalltalk.TagBrush);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "empty",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._asJQuery())._empty();
-return self}, function($ctx1) {$ctx1.fill(self,"empty",{},smalltalk.TagBrush)})},
-messageSends: ["empty", "asJQuery"]}),
-smalltalk.TagBrush);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "for:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._at_put_("for",aString);
-return self}, function($ctx1) {$ctx1.fill(self,"for:",{aString:aString},smalltalk.TagBrush)})},
-messageSends: ["at:put:"]}),
-smalltalk.TagBrush);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "height:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._at_put_("height",aString);
-return self}, function($ctx1) {$ctx1.fill(self,"height:",{aString:aString},smalltalk.TagBrush)})},
-messageSends: ["at:put:"]}),
-smalltalk.TagBrush);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "hidden",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._at_put_("hidden","hidden");
-return self}, function($ctx1) {$ctx1.fill(self,"hidden",{},smalltalk.TagBrush)})},
-messageSends: ["at:put:"]}),
-smalltalk.TagBrush);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "href:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._at_put_("href",aString);
-return self}, function($ctx1) {$ctx1.fill(self,"href:",{aString:aString},smalltalk.TagBrush)})},
-messageSends: ["at:put:"]}),
-smalltalk.TagBrush);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "id:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._at_put_("id",aString);
-return self}, function($ctx1) {$ctx1.fill(self,"id:",{aString:aString},smalltalk.TagBrush)})},
-messageSends: ["at:put:"]}),
-smalltalk.TagBrush);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "initializeFromJQuery:canvas:",
-fn: function (aJQuery,aCanvas){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@element"]=_st(aJQuery)._get_((0));
-self["@canvas"]=aCanvas;
-return self}, function($ctx1) {$ctx1.fill(self,"initializeFromJQuery:canvas:",{aJQuery:aJQuery,aCanvas:aCanvas},smalltalk.TagBrush)})},
-messageSends: ["get:"]}),
-smalltalk.TagBrush);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "initializeFromString:canvas:",
-fn: function (aString,aCanvas){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@element"]=self._createElementFor_(aString);
-self["@canvas"]=aCanvas;
-return self}, function($ctx1) {$ctx1.fill(self,"initializeFromString:canvas:",{aString:aString,aCanvas:aCanvas},smalltalk.TagBrush)})},
-messageSends: ["createElementFor:"]}),
-smalltalk.TagBrush);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "media:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._at_put_("media",aString);
-return self}, function($ctx1) {$ctx1.fill(self,"media:",{aString:aString},smalltalk.TagBrush)})},
-messageSends: ["at:put:"]}),
-smalltalk.TagBrush);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "method:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._at_put_("method",aString);
-return self}, function($ctx1) {$ctx1.fill(self,"method:",{aString:aString},smalltalk.TagBrush)})},
-messageSends: ["at:put:"]}),
-smalltalk.TagBrush);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "name:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._at_put_("name",aString);
-return self}, function($ctx1) {$ctx1.fill(self,"name:",{aString:aString},smalltalk.TagBrush)})},
-messageSends: ["at:put:"]}),
-smalltalk.TagBrush);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onBlur:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._asJQuery())._bind_do_("blur",aBlock);
-return self}, function($ctx1) {$ctx1.fill(self,"onBlur:",{aBlock:aBlock},smalltalk.TagBrush)})},
-messageSends: ["bind:do:", "asJQuery"]}),
-smalltalk.TagBrush);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onChange:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._asJQuery())._bind_do_("change",aBlock);
-return self}, function($ctx1) {$ctx1.fill(self,"onChange:",{aBlock:aBlock},smalltalk.TagBrush)})},
-messageSends: ["bind:do:", "asJQuery"]}),
-smalltalk.TagBrush);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onClick:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._asJQuery())._bind_do_("click",aBlock);
-return self}, function($ctx1) {$ctx1.fill(self,"onClick:",{aBlock:aBlock},smalltalk.TagBrush)})},
-messageSends: ["bind:do:", "asJQuery"]}),
-smalltalk.TagBrush);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onDblClick:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._asJQuery())._bind_do_("dblclick",aBlock);
-return self}, function($ctx1) {$ctx1.fill(self,"onDblClick:",{aBlock:aBlock},smalltalk.TagBrush)})},
-messageSends: ["bind:do:", "asJQuery"]}),
-smalltalk.TagBrush);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onFocus:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._asJQuery())._bind_do_("focus",aBlock);
-return self}, function($ctx1) {$ctx1.fill(self,"onFocus:",{aBlock:aBlock},smalltalk.TagBrush)})},
-messageSends: ["bind:do:", "asJQuery"]}),
-smalltalk.TagBrush);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onFocusIn:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._asJQuery())._bind_do_("focusin",aBlock);
-return self}, function($ctx1) {$ctx1.fill(self,"onFocusIn:",{aBlock:aBlock},smalltalk.TagBrush)})},
-messageSends: ["bind:do:", "asJQuery"]}),
-smalltalk.TagBrush);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onFocusOut:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._asJQuery())._bind_do_("focusout",aBlock);
-return self}, function($ctx1) {$ctx1.fill(self,"onFocusOut:",{aBlock:aBlock},smalltalk.TagBrush)})},
-messageSends: ["bind:do:", "asJQuery"]}),
-smalltalk.TagBrush);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onHover:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._asJQuery())._bind_do_("hover",aBlock);
-return self}, function($ctx1) {$ctx1.fill(self,"onHover:",{aBlock:aBlock},smalltalk.TagBrush)})},
-messageSends: ["bind:do:", "asJQuery"]}),
-smalltalk.TagBrush);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onKeyDown:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._asJQuery())._bind_do_("keydown",aBlock);
-return self}, function($ctx1) {$ctx1.fill(self,"onKeyDown:",{aBlock:aBlock},smalltalk.TagBrush)})},
-messageSends: ["bind:do:", "asJQuery"]}),
-smalltalk.TagBrush);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onKeyPress:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._asJQuery())._bind_do_("keypress",aBlock);
-return self}, function($ctx1) {$ctx1.fill(self,"onKeyPress:",{aBlock:aBlock},smalltalk.TagBrush)})},
-messageSends: ["bind:do:", "asJQuery"]}),
-smalltalk.TagBrush);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onKeyUp:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._asJQuery())._bind_do_("keyup",aBlock);
-return self}, function($ctx1) {$ctx1.fill(self,"onKeyUp:",{aBlock:aBlock},smalltalk.TagBrush)})},
-messageSends: ["bind:do:", "asJQuery"]}),
-smalltalk.TagBrush);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onMouseDown:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._asJQuery())._bind_do_("mousedown",aBlock);
-return self}, function($ctx1) {$ctx1.fill(self,"onMouseDown:",{aBlock:aBlock},smalltalk.TagBrush)})},
-messageSends: ["bind:do:", "asJQuery"]}),
-smalltalk.TagBrush);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onMouseEnter:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._asJQuery())._bind_do_("mouseenter",aBlock);
-return self}, function($ctx1) {$ctx1.fill(self,"onMouseEnter:",{aBlock:aBlock},smalltalk.TagBrush)})},
-messageSends: ["bind:do:", "asJQuery"]}),
-smalltalk.TagBrush);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onMouseLeave:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._asJQuery())._bind_do_("mouseleave",aBlock);
-return self}, function($ctx1) {$ctx1.fill(self,"onMouseLeave:",{aBlock:aBlock},smalltalk.TagBrush)})},
-messageSends: ["bind:do:", "asJQuery"]}),
-smalltalk.TagBrush);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onMouseMove:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._asJQuery())._bind_do_("mousemove",aBlock);
-return self}, function($ctx1) {$ctx1.fill(self,"onMouseMove:",{aBlock:aBlock},smalltalk.TagBrush)})},
-messageSends: ["bind:do:", "asJQuery"]}),
-smalltalk.TagBrush);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onMouseOut:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._asJQuery())._bind_do_("mouseout",aBlock);
-return self}, function($ctx1) {$ctx1.fill(self,"onMouseOut:",{aBlock:aBlock},smalltalk.TagBrush)})},
-messageSends: ["bind:do:", "asJQuery"]}),
-smalltalk.TagBrush);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onMouseOver:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._asJQuery())._bind_do_("mouseover",aBlock);
-return self}, function($ctx1) {$ctx1.fill(self,"onMouseOver:",{aBlock:aBlock},smalltalk.TagBrush)})},
-messageSends: ["bind:do:", "asJQuery"]}),
-smalltalk.TagBrush);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onMouseUp:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._asJQuery())._bind_do_("mouseup",aBlock);
-return self}, function($ctx1) {$ctx1.fill(self,"onMouseUp:",{aBlock:aBlock},smalltalk.TagBrush)})},
-messageSends: ["bind:do:", "asJQuery"]}),
-smalltalk.TagBrush);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onSelect:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._asJQuery())._bind_do_("select",aBlock);
-return self}, function($ctx1) {$ctx1.fill(self,"onSelect:",{aBlock:aBlock},smalltalk.TagBrush)})},
-messageSends: ["bind:do:", "asJQuery"]}),
-smalltalk.TagBrush);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onSubmit:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._asJQuery())._bind_do_("submit",aBlock);
-return self}, function($ctx1) {$ctx1.fill(self,"onSubmit:",{aBlock:aBlock},smalltalk.TagBrush)})},
-messageSends: ["bind:do:", "asJQuery"]}),
-smalltalk.TagBrush);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onUnload:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._asJQuery())._bind_do_("unload",aBlock);
-return self}, function($ctx1) {$ctx1.fill(self,"onUnload:",{aBlock:aBlock},smalltalk.TagBrush)})},
-messageSends: ["bind:do:", "asJQuery"]}),
-smalltalk.TagBrush);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "placeholder:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._at_put_("placeholder",aString);
-return self}, function($ctx1) {$ctx1.fill(self,"placeholder:",{aString:aString},smalltalk.TagBrush)})},
-messageSends: ["at:put:"]}),
-smalltalk.TagBrush);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "rel:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._at_put_("rel",aString);
-return self}, function($ctx1) {$ctx1.fill(self,"rel:",{aString:aString},smalltalk.TagBrush)})},
-messageSends: ["at:put:"]}),
-smalltalk.TagBrush);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "removeAt:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self['@element'].removeAttribute(aString);
-return self}, function($ctx1) {$ctx1.fill(self,"removeAt:",{aString:aString},smalltalk.TagBrush)})},
-messageSends: []}),
-smalltalk.TagBrush);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "rows:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._at_put_("rows",aString);
-return self}, function($ctx1) {$ctx1.fill(self,"rows:",{aString:aString},smalltalk.TagBrush)})},
-messageSends: ["at:put:"]}),
-smalltalk.TagBrush);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "src:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._at_put_("src",aString);
-return self}, function($ctx1) {$ctx1.fill(self,"src:",{aString:aString},smalltalk.TagBrush)})},
-messageSends: ["at:put:"]}),
-smalltalk.TagBrush);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "style:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._at_put_("style",aString);
-return self}, function($ctx1) {$ctx1.fill(self,"style:",{aString:aString},smalltalk.TagBrush)})},
-messageSends: ["at:put:"]}),
-smalltalk.TagBrush);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "tabindex:",
-fn: function (aNumber){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._at_put_("tabindex",aNumber);
-return self}, function($ctx1) {$ctx1.fill(self,"tabindex:",{aNumber:aNumber},smalltalk.TagBrush)})},
-messageSends: ["at:put:"]}),
-smalltalk.TagBrush);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "target:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._at_put_("target",aString);
-return self}, function($ctx1) {$ctx1.fill(self,"target:",{aString:aString},smalltalk.TagBrush)})},
-messageSends: ["at:put:"]}),
-smalltalk.TagBrush);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "title:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._at_put_("title",aString);
-return self}, function($ctx1) {$ctx1.fill(self,"title:",{aString:aString},smalltalk.TagBrush)})},
-messageSends: ["at:put:"]}),
-smalltalk.TagBrush);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "type:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._at_put_("type",aString);
-return self}, function($ctx1) {$ctx1.fill(self,"type:",{aString:aString},smalltalk.TagBrush)})},
-messageSends: ["at:put:"]}),
-smalltalk.TagBrush);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "valign:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._at_put_("valign",aString);
-return self}, function($ctx1) {$ctx1.fill(self,"valign:",{aString:aString},smalltalk.TagBrush)})},
-messageSends: ["at:put:"]}),
-smalltalk.TagBrush);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "value:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._at_put_("value",aString);
-return self}, function($ctx1) {$ctx1.fill(self,"value:",{aString:aString},smalltalk.TagBrush)})},
-messageSends: ["at:put:"]}),
-smalltalk.TagBrush);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "width:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._at_put_("width",aString);
-return self}, function($ctx1) {$ctx1.fill(self,"width:",{aString:aString},smalltalk.TagBrush)})},
-messageSends: ["at:put:"]}),
-smalltalk.TagBrush);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "with:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._append_(anObject);
-return self}, function($ctx1) {$ctx1.fill(self,"with:",{anObject:anObject},smalltalk.TagBrush)})},
-messageSends: ["append:"]}),
-smalltalk.TagBrush);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "fromJQuery:canvas:",
-fn: function (aJQuery,aCanvas){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=self._new();
-_st($2)._initializeFromJQuery_canvas_(aJQuery,aCanvas);
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"fromJQuery:canvas:",{aJQuery:aJQuery,aCanvas:aCanvas},smalltalk.TagBrush.klass)})},
-messageSends: ["initializeFromJQuery:canvas:", "new", "yourself"]}),
-smalltalk.TagBrush.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "fromString:canvas:",
-fn: function (aString,aCanvas){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=self._new();
-_st($2)._initializeFromString_canvas_(aString,aCanvas);
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"fromString:canvas:",{aString:aString,aCanvas:aCanvas},smalltalk.TagBrush.klass)})},
-messageSends: ["initializeFromString:canvas:", "new", "yourself"]}),
-smalltalk.TagBrush.klass);
-
-
-smalltalk.addClass('StyleTag', smalltalk.TagBrush, ['canvas', 'element'], 'Canvas');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "with:",
-fn: function (aString){
-var self=this;
-function $HTMLCanvas(){return smalltalk.HTMLCanvas||(typeof HTMLCanvas=="undefined"?nil:HTMLCanvas)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st($HTMLCanvas())._isMSIE();
-if(smalltalk.assert($1)){
-_st(_st(self._element())._styleSheet())._cssText_(aString);
-} else {
-smalltalk.StyleTag.superclass.fn.prototype._with_.apply(_st(self), [aString]);
-};
-return self}, function($ctx1) {$ctx1.fill(self,"with:",{aString:aString},smalltalk.StyleTag)})},
-messageSends: ["ifTrue:ifFalse:", "cssText:", "styleSheet", "element", "with:", "isMSIE"]}),
-smalltalk.StyleTag);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "canvas:",
-fn: function (aCanvas){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=self._new();
-_st($2)._initializeFromString_canvas_("style",aCanvas);
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"canvas:",{aCanvas:aCanvas},smalltalk.StyleTag.klass)})},
-messageSends: ["initializeFromString:canvas:", "new", "yourself"]}),
-smalltalk.StyleTag.klass);
-
-
-smalltalk.addClass('Widget', smalltalk.InterfacingObject, [], 'Canvas');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "appendToBrush:",
-fn: function (aTagBrush){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._appendToJQuery_(_st(aTagBrush)._asJQuery());
-return self}, function($ctx1) {$ctx1.fill(self,"appendToBrush:",{aTagBrush:aTagBrush},smalltalk.Widget)})},
-messageSends: ["appendToJQuery:", "asJQuery"]}),
-smalltalk.Widget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "appendToJQuery:",
-fn: function (aJQuery){
-var self=this;
-function $HTMLCanvas(){return smalltalk.HTMLCanvas||(typeof HTMLCanvas=="undefined"?nil:HTMLCanvas)}
-return smalltalk.withContext(function($ctx1) { 
-self._renderOn_(_st($HTMLCanvas())._onJQuery_(aJQuery));
-return self}, function($ctx1) {$ctx1.fill(self,"appendToJQuery:",{aJQuery:aJQuery},smalltalk.Widget)})},
-messageSends: ["renderOn:", "onJQuery:"]}),
-smalltalk.Widget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self}, function($ctx1) {$ctx1.fill(self,"renderOn:",{html:html},smalltalk.Widget)})},
-messageSends: []}),
-smalltalk.Widget);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "heliosClass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "widget";
-}, function($ctx1) {$ctx1.fill(self,"heliosClass",{},smalltalk.Widget.klass)})},
-messageSends: []}),
-smalltalk.Widget.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "appendToBrush:",
-fn: function (aTagBrush){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(aTagBrush)._append_(self._asString());
-return self}, function($ctx1) {$ctx1.fill(self,"appendToBrush:",{aTagBrush:aTagBrush},smalltalk.Object)})},
-messageSends: ["append:", "asString"]}),
-smalltalk.Object);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "appendToJQuery:",
-fn: function (aJQuery){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(aJQuery)._append_(self._asString());
-return self}, function($ctx1) {$ctx1.fill(self,"appendToJQuery:",{aJQuery:aJQuery},smalltalk.Object)})},
-messageSends: ["append:", "asString"]}),
-smalltalk.Object);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "appendToBrush:",
-fn: function (aTagBrush){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(aTagBrush)._appendBlock_(self);
-return self}, function($ctx1) {$ctx1.fill(self,"appendToBrush:",{aTagBrush:aTagBrush},smalltalk.BlockClosure)})},
-messageSends: ["appendBlock:"]}),
-smalltalk.BlockClosure);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "appendToJQuery:",
-fn: function (aJQuery){
-var self=this;
-function $HTMLCanvas(){return smalltalk.HTMLCanvas||(typeof HTMLCanvas=="undefined"?nil:HTMLCanvas)}
-return smalltalk.withContext(function($ctx1) { 
-self._value_(_st($HTMLCanvas())._onJQuery_(aJQuery));
-return self}, function($ctx1) {$ctx1.fill(self,"appendToJQuery:",{aJQuery:aJQuery},smalltalk.BlockClosure)})},
-messageSends: ["value:", "onJQuery:"]}),
-smalltalk.BlockClosure);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "asSnippet",
-fn: function (){
-var self=this;
-function $HTMLSnippet(){return smalltalk.HTMLSnippet||(typeof HTMLSnippet=="undefined"?nil:HTMLSnippet)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st($HTMLSnippet())._current())._snippetAt_(self._asString());
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"asSnippet",{},smalltalk.CharacterArray)})},
-messageSends: ["snippetAt:", "asString", "current"]}),
-smalltalk.CharacterArray);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "appendToBrush:",
-fn: function (aTagBrush){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(aTagBrush)._appendString_(self);
-return self}, function($ctx1) {$ctx1.fill(self,"appendToBrush:",{aTagBrush:aTagBrush},smalltalk.String)})},
-messageSends: ["appendString:"]}),
-smalltalk.String);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "appendToJQuery:",
-fn: function (aJQuery){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(aJQuery)._append_(self);
-return self}, function($ctx1) {$ctx1.fill(self,"appendToJQuery:",{aJQuery:aJQuery},smalltalk.String)})},
-messageSends: ["append:"]}),
-smalltalk.String);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "asJQuery",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return jQuery(String(self));
-return self}, function($ctx1) {$ctx1.fill(self,"asJQuery",{},smalltalk.String)})},
-messageSends: []}),
-smalltalk.String);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "asJQuery",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return jQuery(self['@jsObject']);
-return self}, function($ctx1) {$ctx1.fill(self,"asJQuery",{},smalltalk.JSObjectProxy)})},
-messageSends: []}),
-smalltalk.JSObjectProxy);
-
-});

+ 0 - 1541
js/Compiler-AST.deploy.js

@@ -1,1541 +0,0 @@
-define("amber/Compiler-AST", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/Kernel-Objects", "amber/Kernel-Methods"], function(smalltalk,nil,_st){
-smalltalk.addPackage('Compiler-AST');
-smalltalk.packages["Compiler-AST"].transport = {"type":"amd","amdNamespace":"amber"};
-
-smalltalk.addClass('Node', smalltalk.Object, ['parent', 'position', 'nodes', 'shouldBeInlined', 'shouldBeAliased'], 'Compiler-AST');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "accept:",
-fn: function (aVisitor){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(aVisitor)._visitNode_(self);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"accept:",{aVisitor:aVisitor},smalltalk.Node)})},
-messageSends: ["visitNode:"]}),
-smalltalk.Node);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "addNode:",
-fn: function (aNode){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._nodes())._add_(aNode);
-_st(aNode)._parent_(self);
-return self}, function($ctx1) {$ctx1.fill(self,"addNode:",{aNode:aNode},smalltalk.Node)})},
-messageSends: ["add:", "nodes", "parent:"]}),
-smalltalk.Node);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "extent",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=self._nextNode();
-if(($receiver = $2) == nil || $receiver == undefined){
-$3=self._parent();
-if(($receiver = $3) == nil || $receiver == undefined){
-$1=$3;
-} else {
-var node;
-node=$receiver;
-$1=_st(node)._extent();
-};
-} else {
-var node;
-node=$receiver;
-$1=_st(node)._position();
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"extent",{},smalltalk.Node)})},
-messageSends: ["ifNil:ifNotNil:", "ifNotNil:", "extent", "parent", "position", "nextNode"]}),
-smalltalk.Node);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isAssignmentNode",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return false;
-}, function($ctx1) {$ctx1.fill(self,"isAssignmentNode",{},smalltalk.Node)})},
-messageSends: []}),
-smalltalk.Node);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isBlockNode",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return false;
-}, function($ctx1) {$ctx1.fill(self,"isBlockNode",{},smalltalk.Node)})},
-messageSends: []}),
-smalltalk.Node);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isBlockSequenceNode",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return false;
-}, function($ctx1) {$ctx1.fill(self,"isBlockSequenceNode",{},smalltalk.Node)})},
-messageSends: []}),
-smalltalk.Node);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isImmutable",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return false;
-}, function($ctx1) {$ctx1.fill(self,"isImmutable",{},smalltalk.Node)})},
-messageSends: []}),
-smalltalk.Node);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isJSStatementNode",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return false;
-}, function($ctx1) {$ctx1.fill(self,"isJSStatementNode",{},smalltalk.Node)})},
-messageSends: []}),
-smalltalk.Node);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isNode",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"isNode",{},smalltalk.Node)})},
-messageSends: []}),
-smalltalk.Node);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isReturnNode",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return false;
-}, function($ctx1) {$ctx1.fill(self,"isReturnNode",{},smalltalk.Node)})},
-messageSends: []}),
-smalltalk.Node);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isSendNode",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return false;
-}, function($ctx1) {$ctx1.fill(self,"isSendNode",{},smalltalk.Node)})},
-messageSends: []}),
-smalltalk.Node);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isValueNode",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return false;
-}, function($ctx1) {$ctx1.fill(self,"isValueNode",{},smalltalk.Node)})},
-messageSends: []}),
-smalltalk.Node);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "nextNode",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self._parent();
-if(($receiver = $2) == nil || $receiver == undefined){
-$1=$2;
-} else {
-var node;
-node=$receiver;
-$1=_st(node)._nextNode_(self);
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"nextNode",{},smalltalk.Node)})},
-messageSends: ["ifNotNil:", "nextNode:", "parent"]}),
-smalltalk.Node);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "nextNode:",
-fn: function (aNode){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._nodes())._at_ifAbsent_(_st(_st(self._nodes())._indexOf_(aNode)).__plus((1)),(function(){
-return smalltalk.withContext(function($ctx2) {
-return nil;
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"nextNode:",{aNode:aNode},smalltalk.Node)})},
-messageSends: ["at:ifAbsent:", "+", "indexOf:", "nodes"]}),
-smalltalk.Node);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "nodes",
-fn: function (){
-var self=this;
-function $Array(){return smalltalk.Array||(typeof Array=="undefined"?nil:Array)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@nodes"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@nodes"]=_st($Array())._new();
-$1=self["@nodes"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"nodes",{},smalltalk.Node)})},
-messageSends: ["ifNil:", "new"]}),
-smalltalk.Node);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "nodes:",
-fn: function (aCollection){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@nodes"]=aCollection;
-_st(aCollection)._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(each)._parent_(self);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"nodes:",{aCollection:aCollection},smalltalk.Node)})},
-messageSends: ["do:", "parent:"]}),
-smalltalk.Node);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "parent",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@parent"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"parent",{},smalltalk.Node)})},
-messageSends: []}),
-smalltalk.Node);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "parent:",
-fn: function (aNode){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@parent"]=aNode;
-return self}, function($ctx1) {$ctx1.fill(self,"parent:",{aNode:aNode},smalltalk.Node)})},
-messageSends: []}),
-smalltalk.Node);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "position",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=self["@position"];
-if(($receiver = $2) == nil || $receiver == undefined){
-$3=self._parent();
-if(($receiver = $3) == nil || $receiver == undefined){
-$1=$3;
-} else {
-var node;
-node=$receiver;
-$1=_st(node)._position();
-};
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"position",{},smalltalk.Node)})},
-messageSends: ["ifNil:", "ifNotNil:", "position", "parent"]}),
-smalltalk.Node);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "position:",
-fn: function (aPosition){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@position"]=aPosition;
-return self}, function($ctx1) {$ctx1.fill(self,"position:",{aPosition:aPosition},smalltalk.Node)})},
-messageSends: []}),
-smalltalk.Node);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "shouldBeAliased",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@shouldBeAliased"];
-if(($receiver = $2) == nil || $receiver == undefined){
-$1=false;
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"shouldBeAliased",{},smalltalk.Node)})},
-messageSends: ["ifNil:"]}),
-smalltalk.Node);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "shouldBeAliased:",
-fn: function (aBoolean){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@shouldBeAliased"]=aBoolean;
-return self}, function($ctx1) {$ctx1.fill(self,"shouldBeAliased:",{aBoolean:aBoolean},smalltalk.Node)})},
-messageSends: []}),
-smalltalk.Node);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "shouldBeInlined",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@shouldBeInlined"];
-if(($receiver = $2) == nil || $receiver == undefined){
-$1=false;
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"shouldBeInlined",{},smalltalk.Node)})},
-messageSends: ["ifNil:"]}),
-smalltalk.Node);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "shouldBeInlined:",
-fn: function (aBoolean){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@shouldBeInlined"]=aBoolean;
-return self}, function($ctx1) {$ctx1.fill(self,"shouldBeInlined:",{aBoolean:aBoolean},smalltalk.Node)})},
-messageSends: []}),
-smalltalk.Node);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "stopOnStepping",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return false;
-}, function($ctx1) {$ctx1.fill(self,"stopOnStepping",{},smalltalk.Node)})},
-messageSends: []}),
-smalltalk.Node);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "subtreeNeedsAliasing",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(self._shouldBeAliased())._or_((function(){
-return smalltalk.withContext(function($ctx2) {
-return self._shouldBeInlined();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})})))._or_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(self._nodes())._detect_ifNone_((function(each){
-return smalltalk.withContext(function($ctx3) {
-return _st(each)._subtreeNeedsAliasing();
-}, function($ctx3) {$ctx3.fillBlock({each:each},$ctx2)})}),(function(){
-return smalltalk.withContext(function($ctx3) {
-return false;
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}))).__tild_eq(false);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"subtreeNeedsAliasing",{},smalltalk.Node)})},
-messageSends: ["or:", "~=", "detect:ifNone:", "subtreeNeedsAliasing", "nodes", "shouldBeInlined", "shouldBeAliased"]}),
-smalltalk.Node);
-
-
-
-smalltalk.addClass('AssignmentNode', smalltalk.Node, ['left', 'right'], 'Compiler-AST');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "accept:",
-fn: function (aVisitor){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(aVisitor)._visitAssignmentNode_(self);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"accept:",{aVisitor:aVisitor},smalltalk.AssignmentNode)})},
-messageSends: ["visitAssignmentNode:"]}),
-smalltalk.AssignmentNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isAssignmentNode",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"isAssignmentNode",{},smalltalk.AssignmentNode)})},
-messageSends: []}),
-smalltalk.AssignmentNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "left",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@left"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"left",{},smalltalk.AssignmentNode)})},
-messageSends: []}),
-smalltalk.AssignmentNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "left:",
-fn: function (aNode){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@left"]=aNode;
-return self}, function($ctx1) {$ctx1.fill(self,"left:",{aNode:aNode},smalltalk.AssignmentNode)})},
-messageSends: []}),
-smalltalk.AssignmentNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "nodes",
-fn: function (){
-var self=this;
-function $Array(){return smalltalk.Array||(typeof Array=="undefined"?nil:Array)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st($Array())._with_with_(self._left(),self._right());
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"nodes",{},smalltalk.AssignmentNode)})},
-messageSends: ["with:with:", "left", "right"]}),
-smalltalk.AssignmentNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "right",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@right"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"right",{},smalltalk.AssignmentNode)})},
-messageSends: []}),
-smalltalk.AssignmentNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "right:",
-fn: function (aNode){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@right"]=aNode;
-return self}, function($ctx1) {$ctx1.fill(self,"right:",{aNode:aNode},smalltalk.AssignmentNode)})},
-messageSends: []}),
-smalltalk.AssignmentNode);
-
-
-
-smalltalk.addClass('BlockNode', smalltalk.Node, ['parameters', 'scope'], 'Compiler-AST');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "accept:",
-fn: function (aVisitor){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(aVisitor)._visitBlockNode_(self);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"accept:",{aVisitor:aVisitor},smalltalk.BlockNode)})},
-messageSends: ["visitBlockNode:"]}),
-smalltalk.BlockNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isBlockNode",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"isBlockNode",{},smalltalk.BlockNode)})},
-messageSends: []}),
-smalltalk.BlockNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "parameters",
-fn: function (){
-var self=this;
-function $Array(){return smalltalk.Array||(typeof Array=="undefined"?nil:Array)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@parameters"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@parameters"]=_st($Array())._new();
-$1=self["@parameters"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"parameters",{},smalltalk.BlockNode)})},
-messageSends: ["ifNil:", "new"]}),
-smalltalk.BlockNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "parameters:",
-fn: function (aCollection){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@parameters"]=aCollection;
-return self}, function($ctx1) {$ctx1.fill(self,"parameters:",{aCollection:aCollection},smalltalk.BlockNode)})},
-messageSends: []}),
-smalltalk.BlockNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "scope",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@scope"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"scope",{},smalltalk.BlockNode)})},
-messageSends: []}),
-smalltalk.BlockNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "scope:",
-fn: function (aLexicalScope){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@scope"]=aLexicalScope;
-return self}, function($ctx1) {$ctx1.fill(self,"scope:",{aLexicalScope:aLexicalScope},smalltalk.BlockNode)})},
-messageSends: []}),
-smalltalk.BlockNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "subtreeNeedsAliasing",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._shouldBeAliased())._or_((function(){
-return smalltalk.withContext(function($ctx2) {
-return self._shouldBeInlined();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"subtreeNeedsAliasing",{},smalltalk.BlockNode)})},
-messageSends: ["or:", "shouldBeInlined", "shouldBeAliased"]}),
-smalltalk.BlockNode);
-
-
-
-smalltalk.addClass('CascadeNode', smalltalk.Node, ['receiver'], 'Compiler-AST');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "accept:",
-fn: function (aVisitor){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(aVisitor)._visitCascadeNode_(self);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"accept:",{aVisitor:aVisitor},smalltalk.CascadeNode)})},
-messageSends: ["visitCascadeNode:"]}),
-smalltalk.CascadeNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "receiver",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@receiver"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"receiver",{},smalltalk.CascadeNode)})},
-messageSends: []}),
-smalltalk.CascadeNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "receiver:",
-fn: function (aNode){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@receiver"]=aNode;
-return self}, function($ctx1) {$ctx1.fill(self,"receiver:",{aNode:aNode},smalltalk.CascadeNode)})},
-messageSends: []}),
-smalltalk.CascadeNode);
-
-
-
-smalltalk.addClass('DynamicArrayNode', smalltalk.Node, [], 'Compiler-AST');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "accept:",
-fn: function (aVisitor){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(aVisitor)._visitDynamicArrayNode_(self);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"accept:",{aVisitor:aVisitor},smalltalk.DynamicArrayNode)})},
-messageSends: ["visitDynamicArrayNode:"]}),
-smalltalk.DynamicArrayNode);
-
-
-
-smalltalk.addClass('DynamicDictionaryNode', smalltalk.Node, [], 'Compiler-AST');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "accept:",
-fn: function (aVisitor){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(aVisitor)._visitDynamicDictionaryNode_(self);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"accept:",{aVisitor:aVisitor},smalltalk.DynamicDictionaryNode)})},
-messageSends: ["visitDynamicDictionaryNode:"]}),
-smalltalk.DynamicDictionaryNode);
-
-
-
-smalltalk.addClass('JSStatementNode', smalltalk.Node, ['source'], 'Compiler-AST');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "accept:",
-fn: function (aVisitor){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(aVisitor)._visitJSStatementNode_(self);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"accept:",{aVisitor:aVisitor},smalltalk.JSStatementNode)})},
-messageSends: ["visitJSStatementNode:"]}),
-smalltalk.JSStatementNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isJSStatementNode",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"isJSStatementNode",{},smalltalk.JSStatementNode)})},
-messageSends: []}),
-smalltalk.JSStatementNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "source",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@source"];
-if(($receiver = $2) == nil || $receiver == undefined){
-$1="";
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"source",{},smalltalk.JSStatementNode)})},
-messageSends: ["ifNil:"]}),
-smalltalk.JSStatementNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "source:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@source"]=aString;
-return self}, function($ctx1) {$ctx1.fill(self,"source:",{aString:aString},smalltalk.JSStatementNode)})},
-messageSends: []}),
-smalltalk.JSStatementNode);
-
-
-
-smalltalk.addClass('MethodNode', smalltalk.Node, ['selector', 'arguments', 'source', 'scope', 'classReferences', 'messageSends', 'superSends'], 'Compiler-AST');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "accept:",
-fn: function (aVisitor){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(aVisitor)._visitMethodNode_(self);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"accept:",{aVisitor:aVisitor},smalltalk.MethodNode)})},
-messageSends: ["visitMethodNode:"]}),
-smalltalk.MethodNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "arguments",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@arguments"];
-if(($receiver = $2) == nil || $receiver == undefined){
-$1=[];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"arguments",{},smalltalk.MethodNode)})},
-messageSends: ["ifNil:"]}),
-smalltalk.MethodNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "arguments:",
-fn: function (aCollection){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@arguments"]=aCollection;
-return self}, function($ctx1) {$ctx1.fill(self,"arguments:",{aCollection:aCollection},smalltalk.MethodNode)})},
-messageSends: []}),
-smalltalk.MethodNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "classReferences",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@classReferences"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"classReferences",{},smalltalk.MethodNode)})},
-messageSends: []}),
-smalltalk.MethodNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "classReferences:",
-fn: function (aCollection){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@classReferences"]=aCollection;
-return self}, function($ctx1) {$ctx1.fill(self,"classReferences:",{aCollection:aCollection},smalltalk.MethodNode)})},
-messageSends: []}),
-smalltalk.MethodNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "extent",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(_st(self._source())._lines())._size()).__at(_st(_st(_st(_st(self._source())._lines())._last())._size()).__plus((1)));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"extent",{},smalltalk.MethodNode)})},
-messageSends: ["@", "+", "size", "last", "lines", "source"]}),
-smalltalk.MethodNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "messageSends",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@messageSends"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"messageSends",{},smalltalk.MethodNode)})},
-messageSends: []}),
-smalltalk.MethodNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "messageSends:",
-fn: function (aCollection){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@messageSends"]=aCollection;
-return self}, function($ctx1) {$ctx1.fill(self,"messageSends:",{aCollection:aCollection},smalltalk.MethodNode)})},
-messageSends: []}),
-smalltalk.MethodNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "scope",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@scope"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"scope",{},smalltalk.MethodNode)})},
-messageSends: []}),
-smalltalk.MethodNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "scope:",
-fn: function (aMethodScope){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@scope"]=aMethodScope;
-return self}, function($ctx1) {$ctx1.fill(self,"scope:",{aMethodScope:aMethodScope},smalltalk.MethodNode)})},
-messageSends: []}),
-smalltalk.MethodNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selector",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@selector"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"selector",{},smalltalk.MethodNode)})},
-messageSends: []}),
-smalltalk.MethodNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selector:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@selector"]=aString;
-return self}, function($ctx1) {$ctx1.fill(self,"selector:",{aString:aString},smalltalk.MethodNode)})},
-messageSends: []}),
-smalltalk.MethodNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "source",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@source"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"source",{},smalltalk.MethodNode)})},
-messageSends: []}),
-smalltalk.MethodNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "source:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@source"]=aString;
-return self}, function($ctx1) {$ctx1.fill(self,"source:",{aString:aString},smalltalk.MethodNode)})},
-messageSends: []}),
-smalltalk.MethodNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "superSends",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@superSends"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"superSends",{},smalltalk.MethodNode)})},
-messageSends: []}),
-smalltalk.MethodNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "superSends:",
-fn: function (aCollection){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@superSends"]=aCollection;
-return self}, function($ctx1) {$ctx1.fill(self,"superSends:",{aCollection:aCollection},smalltalk.MethodNode)})},
-messageSends: []}),
-smalltalk.MethodNode);
-
-
-
-smalltalk.addClass('ReturnNode', smalltalk.Node, ['scope'], 'Compiler-AST');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "accept:",
-fn: function (aVisitor){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(aVisitor)._visitReturnNode_(self);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"accept:",{aVisitor:aVisitor},smalltalk.ReturnNode)})},
-messageSends: ["visitReturnNode:"]}),
-smalltalk.ReturnNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isReturnNode",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"isReturnNode",{},smalltalk.ReturnNode)})},
-messageSends: []}),
-smalltalk.ReturnNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "nonLocalReturn",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(self._scope())._isMethodScope())._not();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"nonLocalReturn",{},smalltalk.ReturnNode)})},
-messageSends: ["not", "isMethodScope", "scope"]}),
-smalltalk.ReturnNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "scope",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@scope"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"scope",{},smalltalk.ReturnNode)})},
-messageSends: []}),
-smalltalk.ReturnNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "scope:",
-fn: function (aLexicalScope){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@scope"]=aLexicalScope;
-return self}, function($ctx1) {$ctx1.fill(self,"scope:",{aLexicalScope:aLexicalScope},smalltalk.ReturnNode)})},
-messageSends: []}),
-smalltalk.ReturnNode);
-
-
-
-smalltalk.addClass('SendNode', smalltalk.Node, ['selector', 'arguments', 'receiver', 'superSend', 'index'], 'Compiler-AST');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "accept:",
-fn: function (aVisitor){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(aVisitor)._visitSendNode_(self);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"accept:",{aVisitor:aVisitor},smalltalk.SendNode)})},
-messageSends: ["visitSendNode:"]}),
-smalltalk.SendNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "arguments",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@arguments"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@arguments"]=[];
-$1=self["@arguments"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"arguments",{},smalltalk.SendNode)})},
-messageSends: ["ifNil:"]}),
-smalltalk.SendNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "arguments:",
-fn: function (aCollection){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@arguments"]=aCollection;
-_st(aCollection)._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(each)._parent_(self);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"arguments:",{aCollection:aCollection},smalltalk.SendNode)})},
-messageSends: ["do:", "parent:"]}),
-smalltalk.SendNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "cascadeNodeWithMessages:",
-fn: function (aCollection){
-var self=this;
-var first;
-function $SendNode(){return smalltalk.SendNode||(typeof SendNode=="undefined"?nil:SendNode)}
-function $CascadeNode(){return smalltalk.CascadeNode||(typeof CascadeNode=="undefined"?nil:CascadeNode)}
-function $Array(){return smalltalk.Array||(typeof Array=="undefined"?nil:Array)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$4,$5,$3;
-$1=_st($SendNode())._new();
-_st($1)._selector_(self._selector());
-_st($1)._arguments_(self._arguments());
-$2=_st($1)._yourself();
-first=$2;
-$4=_st($CascadeNode())._new();
-_st($4)._receiver_(self._receiver());
-_st($4)._nodes_(_st(_st($Array())._with_(first)).__comma(aCollection));
-$5=_st($4)._yourself();
-$3=$5;
-return $3;
-}, function($ctx1) {$ctx1.fill(self,"cascadeNodeWithMessages:",{aCollection:aCollection,first:first},smalltalk.SendNode)})},
-messageSends: ["selector:", "selector", "new", "arguments:", "arguments", "yourself", "receiver:", "receiver", "nodes:", ",", "with:"]}),
-smalltalk.SendNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "index",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@index"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"index",{},smalltalk.SendNode)})},
-messageSends: []}),
-smalltalk.SendNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "index:",
-fn: function (anInteger){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@index"]=anInteger;
-return self}, function($ctx1) {$ctx1.fill(self,"index:",{anInteger:anInteger},smalltalk.SendNode)})},
-messageSends: []}),
-smalltalk.SendNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isSendNode",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"isSendNode",{},smalltalk.SendNode)})},
-messageSends: []}),
-smalltalk.SendNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "nodes",
-fn: function (){
-var self=this;
-function $Array(){return smalltalk.Array||(typeof Array=="undefined"?nil:Array)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=_st($Array())._withAll_(self._arguments());
-_st($2)._add_(self._receiver());
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"nodes",{},smalltalk.SendNode)})},
-messageSends: ["add:", "receiver", "withAll:", "arguments", "yourself"]}),
-smalltalk.SendNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "receiver",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@receiver"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"receiver",{},smalltalk.SendNode)})},
-messageSends: []}),
-smalltalk.SendNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "receiver:",
-fn: function (aNode){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-self["@receiver"]=aNode;
-$1=_st(aNode)._isNode();
-if(smalltalk.assert($1)){
-_st(aNode)._parent_(self);
-};
-return self}, function($ctx1) {$ctx1.fill(self,"receiver:",{aNode:aNode},smalltalk.SendNode)})},
-messageSends: ["ifTrue:", "parent:", "isNode"]}),
-smalltalk.SendNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selector",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@selector"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"selector",{},smalltalk.SendNode)})},
-messageSends: []}),
-smalltalk.SendNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selector:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@selector"]=aString;
-return self}, function($ctx1) {$ctx1.fill(self,"selector:",{aString:aString},smalltalk.SendNode)})},
-messageSends: []}),
-smalltalk.SendNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "stopOnStepping",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"stopOnStepping",{},smalltalk.SendNode)})},
-messageSends: []}),
-smalltalk.SendNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "superSend",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@superSend"];
-if(($receiver = $2) == nil || $receiver == undefined){
-$1=false;
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"superSend",{},smalltalk.SendNode)})},
-messageSends: ["ifNil:"]}),
-smalltalk.SendNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "superSend:",
-fn: function (aBoolean){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@superSend"]=aBoolean;
-return self}, function($ctx1) {$ctx1.fill(self,"superSend:",{aBoolean:aBoolean},smalltalk.SendNode)})},
-messageSends: []}),
-smalltalk.SendNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "valueForReceiver:",
-fn: function (anObject){
-var self=this;
-function $SendNode(){return smalltalk.SendNode||(typeof SendNode=="undefined"?nil:SendNode)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$5,$4,$6,$1;
-$2=_st($SendNode())._new();
-_st($2)._position_(self._position());
-$3=$2;
-$5=self._receiver();
-if(($receiver = $5) == nil || $receiver == undefined){
-$4=anObject;
-} else {
-$4=_st(self._receiver())._valueForReceiver_(anObject);
-};
-_st($3)._receiver_($4);
-_st($2)._selector_(self._selector());
-_st($2)._arguments_(self._arguments());
-$6=_st($2)._yourself();
-$1=$6;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"valueForReceiver:",{anObject:anObject},smalltalk.SendNode)})},
-messageSends: ["position:", "position", "new", "receiver:", "ifNil:ifNotNil:", "valueForReceiver:", "receiver", "selector:", "selector", "arguments:", "arguments", "yourself"]}),
-smalltalk.SendNode);
-
-
-
-smalltalk.addClass('SequenceNode', smalltalk.Node, ['temps', 'scope'], 'Compiler-AST');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "accept:",
-fn: function (aVisitor){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(aVisitor)._visitSequenceNode_(self);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"accept:",{aVisitor:aVisitor},smalltalk.SequenceNode)})},
-messageSends: ["visitSequenceNode:"]}),
-smalltalk.SequenceNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "asBlockSequenceNode",
-fn: function (){
-var self=this;
-function $BlockSequenceNode(){return smalltalk.BlockSequenceNode||(typeof BlockSequenceNode=="undefined"?nil:BlockSequenceNode)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=_st($BlockSequenceNode())._new();
-_st($2)._position_(self._position());
-_st($2)._nodes_(self._nodes());
-_st($2)._temps_(self._temps());
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"asBlockSequenceNode",{},smalltalk.SequenceNode)})},
-messageSends: ["position:", "position", "new", "nodes:", "nodes", "temps:", "temps", "yourself"]}),
-smalltalk.SequenceNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "scope",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@scope"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"scope",{},smalltalk.SequenceNode)})},
-messageSends: []}),
-smalltalk.SequenceNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "scope:",
-fn: function (aLexicalScope){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@scope"]=aLexicalScope;
-return self}, function($ctx1) {$ctx1.fill(self,"scope:",{aLexicalScope:aLexicalScope},smalltalk.SequenceNode)})},
-messageSends: []}),
-smalltalk.SequenceNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "temps",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@temps"];
-if(($receiver = $2) == nil || $receiver == undefined){
-$1=[];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"temps",{},smalltalk.SequenceNode)})},
-messageSends: ["ifNil:"]}),
-smalltalk.SequenceNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "temps:",
-fn: function (aCollection){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@temps"]=aCollection;
-return self}, function($ctx1) {$ctx1.fill(self,"temps:",{aCollection:aCollection},smalltalk.SequenceNode)})},
-messageSends: []}),
-smalltalk.SequenceNode);
-
-
-
-smalltalk.addClass('BlockSequenceNode', smalltalk.SequenceNode, [], 'Compiler-AST');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "accept:",
-fn: function (aVisitor){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(aVisitor)._visitBlockSequenceNode_(self);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"accept:",{aVisitor:aVisitor},smalltalk.BlockSequenceNode)})},
-messageSends: ["visitBlockSequenceNode:"]}),
-smalltalk.BlockSequenceNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isBlockSequenceNode",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"isBlockSequenceNode",{},smalltalk.BlockSequenceNode)})},
-messageSends: []}),
-smalltalk.BlockSequenceNode);
-
-
-
-smalltalk.addClass('ValueNode', smalltalk.Node, ['value'], 'Compiler-AST');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "accept:",
-fn: function (aVisitor){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(aVisitor)._visitValueNode_(self);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"accept:",{aVisitor:aVisitor},smalltalk.ValueNode)})},
-messageSends: ["visitValueNode:"]}),
-smalltalk.ValueNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isImmutable",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._value())._isImmutable();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"isImmutable",{},smalltalk.ValueNode)})},
-messageSends: ["isImmutable", "value"]}),
-smalltalk.ValueNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isValueNode",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"isValueNode",{},smalltalk.ValueNode)})},
-messageSends: []}),
-smalltalk.ValueNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "value",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@value"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"value",{},smalltalk.ValueNode)})},
-messageSends: []}),
-smalltalk.ValueNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "value:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@value"]=anObject;
-return self}, function($ctx1) {$ctx1.fill(self,"value:",{anObject:anObject},smalltalk.ValueNode)})},
-messageSends: []}),
-smalltalk.ValueNode);
-
-
-
-smalltalk.addClass('VariableNode', smalltalk.ValueNode, ['assigned', 'binding'], 'Compiler-AST');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "accept:",
-fn: function (aVisitor){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(aVisitor)._visitVariableNode_(self);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"accept:",{aVisitor:aVisitor},smalltalk.VariableNode)})},
-messageSends: ["visitVariableNode:"]}),
-smalltalk.VariableNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "alias",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._binding())._alias();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"alias",{},smalltalk.VariableNode)})},
-messageSends: ["alias", "binding"]}),
-smalltalk.VariableNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "assigned",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@assigned"];
-if(($receiver = $2) == nil || $receiver == undefined){
-$1=false;
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"assigned",{},smalltalk.VariableNode)})},
-messageSends: ["ifNil:"]}),
-smalltalk.VariableNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "assigned:",
-fn: function (aBoolean){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@assigned"]=aBoolean;
-return self}, function($ctx1) {$ctx1.fill(self,"assigned:",{aBoolean:aBoolean},smalltalk.VariableNode)})},
-messageSends: []}),
-smalltalk.VariableNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "beAssigned",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._binding())._validateAssignment();
-self["@assigned"]=true;
-return self}, function($ctx1) {$ctx1.fill(self,"beAssigned",{},smalltalk.VariableNode)})},
-messageSends: ["validateAssignment", "binding"]}),
-smalltalk.VariableNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "binding",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@binding"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"binding",{},smalltalk.VariableNode)})},
-messageSends: []}),
-smalltalk.VariableNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "binding:",
-fn: function (aScopeVar){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@binding"]=aScopeVar;
-return self}, function($ctx1) {$ctx1.fill(self,"binding:",{aScopeVar:aScopeVar},smalltalk.VariableNode)})},
-messageSends: []}),
-smalltalk.VariableNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isImmutable",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return false;
-}, function($ctx1) {$ctx1.fill(self,"isImmutable",{},smalltalk.VariableNode)})},
-messageSends: []}),
-smalltalk.VariableNode);
-
-
-
-smalltalk.addClass('ClassReferenceNode', smalltalk.VariableNode, [], 'Compiler-AST');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "accept:",
-fn: function (aVisitor){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(aVisitor)._visitClassReferenceNode_(self);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"accept:",{aVisitor:aVisitor},smalltalk.ClassReferenceNode)})},
-messageSends: ["visitClassReferenceNode:"]}),
-smalltalk.ClassReferenceNode);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isNode",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return false;
-}, function($ctx1) {$ctx1.fill(self,"isNode",{},smalltalk.Object)})},
-messageSends: []}),
-smalltalk.Object);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "ast",
-fn: function (){
-var self=this;
-function $Smalltalk(){return smalltalk.Smalltalk||(typeof Smalltalk=="undefined"?nil:Smalltalk)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-_st(self._source())._ifEmpty_((function(){
-return smalltalk.withContext(function($ctx2) {
-return self._error_("Method source is empty");
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-$1=_st(_st($Smalltalk())._current())._parse_(self._source());
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"ast",{},smalltalk.CompiledMethod)})},
-messageSends: ["ifEmpty:", "error:", "source", "parse:", "current"]}),
-smalltalk.CompiledMethod);
-
-});

+ 0 - 760
js/Compiler-Core.deploy.js

@@ -1,760 +0,0 @@
-define("amber/Compiler-Core", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/Kernel-Objects"], function(smalltalk,nil,_st){
-smalltalk.addPackage('Compiler-Core');
-smalltalk.packages["Compiler-Core"].transport = {"type":"amd","amdNamespace":"amber"};
-
-smalltalk.addClass('AbstractCodeGenerator', smalltalk.Object, ['currentClass', 'source'], 'Compiler-Core');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "classNameFor:",
-fn: function (aClass){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=_st(aClass)._isMetaclass();
-if(smalltalk.assert($2)){
-$1=_st(_st(_st(aClass)._instanceClass())._name()).__comma(".klass");
-} else {
-$3=_st(aClass)._isNil();
-if(smalltalk.assert($3)){
-$1="nil";
-} else {
-$1=_st(aClass)._name();
-};
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"classNameFor:",{aClass:aClass},smalltalk.AbstractCodeGenerator)})},
-messageSends: ["ifTrue:ifFalse:", ",", "name", "instanceClass", "isNil", "isMetaclass"]}),
-smalltalk.AbstractCodeGenerator);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "compileNode:",
-fn: function (aNode){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._subclassResponsibility();
-return self}, function($ctx1) {$ctx1.fill(self,"compileNode:",{aNode:aNode},smalltalk.AbstractCodeGenerator)})},
-messageSends: ["subclassResponsibility"]}),
-smalltalk.AbstractCodeGenerator);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "currentClass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@currentClass"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"currentClass",{},smalltalk.AbstractCodeGenerator)})},
-messageSends: []}),
-smalltalk.AbstractCodeGenerator);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "currentClass:",
-fn: function (aClass){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@currentClass"]=aClass;
-return self}, function($ctx1) {$ctx1.fill(self,"currentClass:",{aClass:aClass},smalltalk.AbstractCodeGenerator)})},
-messageSends: []}),
-smalltalk.AbstractCodeGenerator);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "pseudoVariables",
-fn: function (){
-var self=this;
-function $Smalltalk(){return smalltalk.Smalltalk||(typeof Smalltalk=="undefined"?nil:Smalltalk)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st($Smalltalk())._current())._pseudoVariableNames();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"pseudoVariables",{},smalltalk.AbstractCodeGenerator)})},
-messageSends: ["pseudoVariableNames", "current"]}),
-smalltalk.AbstractCodeGenerator);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "safeVariableNameFor:",
-fn: function (aString){
-var self=this;
-function $Smalltalk(){return smalltalk.Smalltalk||(typeof Smalltalk=="undefined"?nil:Smalltalk)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=_st(_st(_st($Smalltalk())._current())._reservedWords())._includes_(aString);
-if(smalltalk.assert($2)){
-$1=_st(aString).__comma("_");
-} else {
-$1=aString;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"safeVariableNameFor:",{aString:aString},smalltalk.AbstractCodeGenerator)})},
-messageSends: ["ifTrue:ifFalse:", ",", "includes:", "reservedWords", "current"]}),
-smalltalk.AbstractCodeGenerator);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "source",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@source"];
-if(($receiver = $2) == nil || $receiver == undefined){
-$1="";
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"source",{},smalltalk.AbstractCodeGenerator)})},
-messageSends: ["ifNil:"]}),
-smalltalk.AbstractCodeGenerator);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "source:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@source"]=aString;
-return self}, function($ctx1) {$ctx1.fill(self,"source:",{aString:aString},smalltalk.AbstractCodeGenerator)})},
-messageSends: []}),
-smalltalk.AbstractCodeGenerator);
-
-
-
-smalltalk.addClass('CodeGenerator', smalltalk.AbstractCodeGenerator, [], 'Compiler-Core');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "compileNode:",
-fn: function (aNode){
-var self=this;
-var ir,stream;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-_st(self._semanticAnalyzer())._visit_(aNode);
-ir=_st(self._translator())._visit_(aNode);
-$2=self._irTranslator();
-_st($2)._currentClass_(self._currentClass());
-_st($2)._visit_(ir);
-$3=_st($2)._contents();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"compileNode:",{aNode:aNode,ir:ir,stream:stream},smalltalk.CodeGenerator)})},
-messageSends: ["visit:", "semanticAnalyzer", "translator", "currentClass:", "currentClass", "irTranslator", "contents"]}),
-smalltalk.CodeGenerator);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "irTranslator",
-fn: function (){
-var self=this;
-function $IRJSTranslator(){return smalltalk.IRJSTranslator||(typeof IRJSTranslator=="undefined"?nil:IRJSTranslator)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st($IRJSTranslator())._new();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"irTranslator",{},smalltalk.CodeGenerator)})},
-messageSends: ["new"]}),
-smalltalk.CodeGenerator);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "semanticAnalyzer",
-fn: function (){
-var self=this;
-function $SemanticAnalyzer(){return smalltalk.SemanticAnalyzer||(typeof SemanticAnalyzer=="undefined"?nil:SemanticAnalyzer)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st($SemanticAnalyzer())._on_(self._currentClass());
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"semanticAnalyzer",{},smalltalk.CodeGenerator)})},
-messageSends: ["on:", "currentClass"]}),
-smalltalk.CodeGenerator);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "translator",
-fn: function (){
-var self=this;
-function $IRASTTranslator(){return smalltalk.IRASTTranslator||(typeof IRASTTranslator=="undefined"?nil:IRASTTranslator)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=_st($IRASTTranslator())._new();
-_st($2)._source_(self._source());
-_st($2)._theClass_(self._currentClass());
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"translator",{},smalltalk.CodeGenerator)})},
-messageSends: ["source:", "source", "new", "theClass:", "currentClass", "yourself"]}),
-smalltalk.CodeGenerator);
-
-
-
-smalltalk.addClass('Compiler', smalltalk.Object, ['currentClass', 'source', 'unknownVariables', 'codeGeneratorClass'], 'Compiler-Core');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "codeGeneratorClass",
-fn: function (){
-var self=this;
-function $InliningCodeGenerator(){return smalltalk.InliningCodeGenerator||(typeof InliningCodeGenerator=="undefined"?nil:InliningCodeGenerator)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@codeGeneratorClass"];
-if(($receiver = $2) == nil || $receiver == undefined){
-$1=$InliningCodeGenerator();
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"codeGeneratorClass",{},smalltalk.Compiler)})},
-messageSends: ["ifNil:"]}),
-smalltalk.Compiler);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "codeGeneratorClass:",
-fn: function (aClass){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@codeGeneratorClass"]=aClass;
-return self}, function($ctx1) {$ctx1.fill(self,"codeGeneratorClass:",{aClass:aClass},smalltalk.Compiler)})},
-messageSends: []}),
-smalltalk.Compiler);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "compile:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._compileNode_(self._parse_(aString));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"compile:",{aString:aString},smalltalk.Compiler)})},
-messageSends: ["compileNode:", "parse:"]}),
-smalltalk.Compiler);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "compile:forClass:",
-fn: function (aString,aClass){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-self._currentClass_(aClass);
-self._source_(aString);
-$1=self._compile_(aString);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"compile:forClass:",{aString:aString,aClass:aClass},smalltalk.Compiler)})},
-messageSends: ["currentClass:", "source:", "compile:"]}),
-smalltalk.Compiler);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "compileExpression:",
-fn: function (aString){
-var self=this;
-function $DoIt(){return smalltalk.DoIt||(typeof DoIt=="undefined"?nil:DoIt)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-self._currentClass_($DoIt());
-self._source_(_st("doIt ^[".__comma(aString)).__comma("] value"));
-$1=self._compileNode_(self._parse_(self._source()));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"compileExpression:",{aString:aString},smalltalk.Compiler)})},
-messageSends: ["currentClass:", "source:", ",", "compileNode:", "parse:", "source"]}),
-smalltalk.Compiler);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "compileExpression:on:",
-fn: function (aString,anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-self._currentClass_(_st(anObject)._class());
-self._source_(_st("xxxDoIt ^[".__comma(aString)).__comma("] value"));
-$1=self._compileNode_(self._parse_(self._source()));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"compileExpression:on:",{aString:aString,anObject:anObject},smalltalk.Compiler)})},
-messageSends: ["currentClass:", "class", "source:", ",", "compileNode:", "parse:", "source"]}),
-smalltalk.Compiler);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "compileNode:",
-fn: function (aNode){
-var self=this;
-var generator,result;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3;
-generator=_st(self._codeGeneratorClass())._new();
-$1=generator;
-_st($1)._source_(self._source());
-$2=_st($1)._currentClass_(self._currentClass());
-result=_st(generator)._compileNode_(aNode);
-self._unknownVariables_([]);
-$3=result;
-return $3;
-}, function($ctx1) {$ctx1.fill(self,"compileNode:",{aNode:aNode,generator:generator,result:result},smalltalk.Compiler)})},
-messageSends: ["new", "codeGeneratorClass", "source:", "source", "currentClass:", "currentClass", "compileNode:", "unknownVariables:"]}),
-smalltalk.Compiler);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "currentClass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@currentClass"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"currentClass",{},smalltalk.Compiler)})},
-messageSends: []}),
-smalltalk.Compiler);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "currentClass:",
-fn: function (aClass){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@currentClass"]=aClass;
-return self}, function($ctx1) {$ctx1.fill(self,"currentClass:",{aClass:aClass},smalltalk.Compiler)})},
-messageSends: []}),
-smalltalk.Compiler);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "eval:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return eval(aString);
-return self}, function($ctx1) {$ctx1.fill(self,"eval:",{aString:aString},smalltalk.Compiler)})},
-messageSends: []}),
-smalltalk.Compiler);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "evaluateExpression:",
-fn: function (aString){
-var self=this;
-function $DoIt(){return smalltalk.DoIt||(typeof DoIt=="undefined"?nil:DoIt)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._evaluateExpression_on_(aString,_st($DoIt())._new());
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"evaluateExpression:",{aString:aString},smalltalk.Compiler)})},
-messageSends: ["evaluateExpression:on:", "new"]}),
-smalltalk.Compiler);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "evaluateExpression:on:",
-fn: function (aString,anObject){
-var self=this;
-var result,method;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-method=self._eval_(self._compileExpression_on_(aString,anObject));
-_st(method)._category_("xxxDoIt");
-_st(_st(anObject)._class())._addCompiledMethod_(method);
-result=_st(anObject)._xxxDoIt();
-_st(_st(anObject)._class())._removeCompiledMethod_(method);
-$1=result;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"evaluateExpression:on:",{aString:aString,anObject:anObject,result:result,method:method},smalltalk.Compiler)})},
-messageSends: ["eval:", "compileExpression:on:", "category:", "addCompiledMethod:", "class", "xxxDoIt", "removeCompiledMethod:"]}),
-smalltalk.Compiler);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "install:forClass:category:",
-fn: function (aString,aBehavior,anotherString){
-var self=this;
-function $ClassBuilder(){return smalltalk.ClassBuilder||(typeof ClassBuilder=="undefined"?nil:ClassBuilder)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st($ClassBuilder())._new())._installMethod_forClass_category_(self._eval_(self._compile_forClass_(aString,aBehavior)),aBehavior,anotherString);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"install:forClass:category:",{aString:aString,aBehavior:aBehavior,anotherString:anotherString},smalltalk.Compiler)})},
-messageSends: ["installMethod:forClass:category:", "eval:", "compile:forClass:", "new"]}),
-smalltalk.Compiler);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "parse:",
-fn: function (aString){
-var self=this;
-function $Smalltalk(){return smalltalk.Smalltalk||(typeof Smalltalk=="undefined"?nil:Smalltalk)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st($Smalltalk())._current())._parse_(aString);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"parse:",{aString:aString},smalltalk.Compiler)})},
-messageSends: ["parse:", "current"]}),
-smalltalk.Compiler);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "parseExpression:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._parse_(_st("doIt ^[".__comma(aString)).__comma("] value"));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"parseExpression:",{aString:aString},smalltalk.Compiler)})},
-messageSends: ["parse:", ","]}),
-smalltalk.Compiler);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "recompile:",
-fn: function (aClass){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-_st(_st(_st(aClass)._methodDictionary())._values())._do_displayingProgress_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return self._install_forClass_category_(_st(each)._source(),aClass,_st(each)._category());
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}),"Recompiling ".__comma(_st(aClass)._name()));
-$1=_st(aClass)._isMetaclass();
-if(! smalltalk.assert($1)){
-self._recompile_(_st(aClass)._class());
-};
-return self}, function($ctx1) {$ctx1.fill(self,"recompile:",{aClass:aClass},smalltalk.Compiler)})},
-messageSends: ["do:displayingProgress:", "install:forClass:category:", "source", "category", ",", "name", "values", "methodDictionary", "ifFalse:", "recompile:", "class", "isMetaclass"]}),
-smalltalk.Compiler);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "recompileAll",
-fn: function (){
-var self=this;
-function $Smalltalk(){return smalltalk.Smalltalk||(typeof Smalltalk=="undefined"?nil:Smalltalk)}
-return smalltalk.withContext(function($ctx1) { 
-_st(_st(_st($Smalltalk())._current())._classes())._do_displayingProgress_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return self._recompile_(each);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}),"Compiling all classes...");
-return self}, function($ctx1) {$ctx1.fill(self,"recompileAll",{},smalltalk.Compiler)})},
-messageSends: ["do:displayingProgress:", "recompile:", "classes", "current"]}),
-smalltalk.Compiler);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "source",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@source"];
-if(($receiver = $2) == nil || $receiver == undefined){
-$1="";
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"source",{},smalltalk.Compiler)})},
-messageSends: ["ifNil:"]}),
-smalltalk.Compiler);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "source:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@source"]=aString;
-return self}, function($ctx1) {$ctx1.fill(self,"source:",{aString:aString},smalltalk.Compiler)})},
-messageSends: []}),
-smalltalk.Compiler);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "unknownVariables",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@unknownVariables"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"unknownVariables",{},smalltalk.Compiler)})},
-messageSends: []}),
-smalltalk.Compiler);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "unknownVariables:",
-fn: function (aCollection){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@unknownVariables"]=aCollection;
-return self}, function($ctx1) {$ctx1.fill(self,"unknownVariables:",{aCollection:aCollection},smalltalk.Compiler)})},
-messageSends: []}),
-smalltalk.Compiler);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "recompile:",
-fn: function (aClass){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._new())._recompile_(aClass);
-return self}, function($ctx1) {$ctx1.fill(self,"recompile:",{aClass:aClass},smalltalk.Compiler.klass)})},
-messageSends: ["recompile:", "new"]}),
-smalltalk.Compiler.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "recompileAll",
-fn: function (){
-var self=this;
-function $Smalltalk(){return smalltalk.Smalltalk||(typeof Smalltalk=="undefined"?nil:Smalltalk)}
-return smalltalk.withContext(function($ctx1) { 
-_st(_st(_st($Smalltalk())._current())._classes())._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return self._recompile_(each);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"recompileAll",{},smalltalk.Compiler.klass)})},
-messageSends: ["do:", "recompile:", "classes", "current"]}),
-smalltalk.Compiler.klass);
-
-
-smalltalk.addClass('DoIt', smalltalk.Object, [], 'Compiler-Core');
-
-
-smalltalk.addClass('NodeVisitor', smalltalk.Object, [], 'Compiler-Core');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visit:",
-fn: function (aNode){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(aNode)._accept_(self);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"visit:",{aNode:aNode},smalltalk.NodeVisitor)})},
-messageSends: ["accept:"]}),
-smalltalk.NodeVisitor);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitAll:",
-fn: function (aCollection){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(aCollection)._collect_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return self._visit_(each);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"visitAll:",{aCollection:aCollection},smalltalk.NodeVisitor)})},
-messageSends: ["collect:", "visit:"]}),
-smalltalk.NodeVisitor);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitAssignmentNode:",
-fn: function (aNode){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._visitNode_(aNode);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"visitAssignmentNode:",{aNode:aNode},smalltalk.NodeVisitor)})},
-messageSends: ["visitNode:"]}),
-smalltalk.NodeVisitor);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitBlockNode:",
-fn: function (aNode){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._visitNode_(aNode);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"visitBlockNode:",{aNode:aNode},smalltalk.NodeVisitor)})},
-messageSends: ["visitNode:"]}),
-smalltalk.NodeVisitor);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitBlockSequenceNode:",
-fn: function (aNode){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._visitSequenceNode_(aNode);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"visitBlockSequenceNode:",{aNode:aNode},smalltalk.NodeVisitor)})},
-messageSends: ["visitSequenceNode:"]}),
-smalltalk.NodeVisitor);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitCascadeNode:",
-fn: function (aNode){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._visitNode_(aNode);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"visitCascadeNode:",{aNode:aNode},smalltalk.NodeVisitor)})},
-messageSends: ["visitNode:"]}),
-smalltalk.NodeVisitor);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitClassReferenceNode:",
-fn: function (aNode){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._visitVariableNode_(aNode);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"visitClassReferenceNode:",{aNode:aNode},smalltalk.NodeVisitor)})},
-messageSends: ["visitVariableNode:"]}),
-smalltalk.NodeVisitor);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitDynamicArrayNode:",
-fn: function (aNode){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._visitNode_(aNode);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"visitDynamicArrayNode:",{aNode:aNode},smalltalk.NodeVisitor)})},
-messageSends: ["visitNode:"]}),
-smalltalk.NodeVisitor);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitDynamicDictionaryNode:",
-fn: function (aNode){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._visitNode_(aNode);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"visitDynamicDictionaryNode:",{aNode:aNode},smalltalk.NodeVisitor)})},
-messageSends: ["visitNode:"]}),
-smalltalk.NodeVisitor);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitJSStatementNode:",
-fn: function (aNode){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._visitNode_(aNode);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"visitJSStatementNode:",{aNode:aNode},smalltalk.NodeVisitor)})},
-messageSends: ["visitNode:"]}),
-smalltalk.NodeVisitor);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitMethodNode:",
-fn: function (aNode){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._visitNode_(aNode);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"visitMethodNode:",{aNode:aNode},smalltalk.NodeVisitor)})},
-messageSends: ["visitNode:"]}),
-smalltalk.NodeVisitor);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitNode:",
-fn: function (aNode){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._visitAll_(_st(aNode)._nodes());
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"visitNode:",{aNode:aNode},smalltalk.NodeVisitor)})},
-messageSends: ["visitAll:", "nodes"]}),
-smalltalk.NodeVisitor);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitReturnNode:",
-fn: function (aNode){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._visitNode_(aNode);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"visitReturnNode:",{aNode:aNode},smalltalk.NodeVisitor)})},
-messageSends: ["visitNode:"]}),
-smalltalk.NodeVisitor);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitSendNode:",
-fn: function (aNode){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._visitNode_(aNode);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"visitSendNode:",{aNode:aNode},smalltalk.NodeVisitor)})},
-messageSends: ["visitNode:"]}),
-smalltalk.NodeVisitor);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitSequenceNode:",
-fn: function (aNode){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._visitNode_(aNode);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"visitSequenceNode:",{aNode:aNode},smalltalk.NodeVisitor)})},
-messageSends: ["visitNode:"]}),
-smalltalk.NodeVisitor);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitValueNode:",
-fn: function (aNode){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._visitNode_(aNode);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"visitValueNode:",{aNode:aNode},smalltalk.NodeVisitor)})},
-messageSends: ["visitNode:"]}),
-smalltalk.NodeVisitor);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitVariableNode:",
-fn: function (aNode){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._visitNode_(aNode);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"visitVariableNode:",{aNode:aNode},smalltalk.NodeVisitor)})},
-messageSends: ["visitNode:"]}),
-smalltalk.NodeVisitor);
-
-
-});

+ 0 - 162
js/Compiler-Exceptions.deploy.js

@@ -1,162 +0,0 @@
-define("amber/Compiler-Exceptions", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/Kernel-Exceptions"], function(smalltalk,nil,_st){
-smalltalk.addPackage('Compiler-Exceptions');
-smalltalk.packages["Compiler-Exceptions"].transport = {"type":"amd","amdNamespace":"amber"};
-
-smalltalk.addClass('CompilerError', smalltalk.Error, [], 'Compiler-Exceptions');
-
-
-smalltalk.addClass('ParseError', smalltalk.CompilerError, [], 'Compiler-Exceptions');
-
-
-smalltalk.addClass('SemanticError', smalltalk.CompilerError, [], 'Compiler-Exceptions');
-
-
-smalltalk.addClass('InliningError', smalltalk.SemanticError, [], 'Compiler-Exceptions');
-
-
-smalltalk.addClass('InvalidAssignmentError', smalltalk.SemanticError, ['variableName'], 'Compiler-Exceptions');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "messageText",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=" Invalid assignment to variable: ".__comma(self._variableName());
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"messageText",{},smalltalk.InvalidAssignmentError)})},
-messageSends: [",", "variableName"]}),
-smalltalk.InvalidAssignmentError);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "variableName",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@variableName"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"variableName",{},smalltalk.InvalidAssignmentError)})},
-messageSends: []}),
-smalltalk.InvalidAssignmentError);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "variableName:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@variableName"]=aString;
-return self}, function($ctx1) {$ctx1.fill(self,"variableName:",{aString:aString},smalltalk.InvalidAssignmentError)})},
-messageSends: []}),
-smalltalk.InvalidAssignmentError);
-
-
-
-smalltalk.addClass('ShadowingVariableError', smalltalk.SemanticError, ['variableName'], 'Compiler-Exceptions');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "messageText",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st("Variable shadowing error: ".__comma(self._variableName())).__comma(" is already defined");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"messageText",{},smalltalk.ShadowingVariableError)})},
-messageSends: [",", "variableName"]}),
-smalltalk.ShadowingVariableError);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "variableName",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@variableName"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"variableName",{},smalltalk.ShadowingVariableError)})},
-messageSends: []}),
-smalltalk.ShadowingVariableError);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "variableName:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@variableName"]=aString;
-return self}, function($ctx1) {$ctx1.fill(self,"variableName:",{aString:aString},smalltalk.ShadowingVariableError)})},
-messageSends: []}),
-smalltalk.ShadowingVariableError);
-
-
-
-smalltalk.addClass('UnknownVariableError', smalltalk.SemanticError, ['variableName'], 'Compiler-Exceptions');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "messageText",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st("Unknown Variable error: ".__comma(self._variableName())).__comma(" is not defined");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"messageText",{},smalltalk.UnknownVariableError)})},
-messageSends: [",", "variableName"]}),
-smalltalk.UnknownVariableError);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "variableName",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@variableName"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"variableName",{},smalltalk.UnknownVariableError)})},
-messageSends: []}),
-smalltalk.UnknownVariableError);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "variableName:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@variableName"]=aString;
-return self}, function($ctx1) {$ctx1.fill(self,"variableName:",{aString:aString},smalltalk.UnknownVariableError)})},
-messageSends: []}),
-smalltalk.UnknownVariableError);
-
-
-
-smalltalk.addClass('RethrowErrorHandler', smalltalk.ErrorHandler, [], 'Compiler-Exceptions');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "basicSignal:",
-fn: function (anError){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-throw anError;
-return self}, function($ctx1) {$ctx1.fill(self,"basicSignal:",{anError:anError},smalltalk.RethrowErrorHandler)})},
-messageSends: []}),
-smalltalk.RethrowErrorHandler);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "handleError:",
-fn: function (anError){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-smalltalk.RethrowErrorHandler.superclass.fn.prototype._handleError_.apply(_st(self), [anError]);
-self._basicSignal_(anError);
-return self}, function($ctx1) {$ctx1.fill(self,"handleError:",{anError:anError},smalltalk.RethrowErrorHandler)})},
-messageSends: ["handleError:", "basicSignal:"]}),
-smalltalk.RethrowErrorHandler);
-
-
-});

+ 0 - 2782
js/Compiler-IR.deploy.js

@@ -1,2782 +0,0 @@
-define("amber/Compiler-IR", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/Compiler-Core", "amber/Kernel-Objects", "amber/Kernel-Methods", "amber/Kernel-Collections"], function(smalltalk,nil,_st){
-smalltalk.addPackage('Compiler-IR');
-smalltalk.packages["Compiler-IR"].transport = {"type":"amd","amdNamespace":"amber"};
-
-smalltalk.addClass('IRASTTranslator', smalltalk.NodeVisitor, ['source', 'theClass', 'method', 'sequence', 'nextAlias'], 'Compiler-IR');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "alias:",
-fn: function (aNode){
-var self=this;
-var variable;
-function $AliasVar(){return smalltalk.AliasVar||(typeof AliasVar=="undefined"?nil:AliasVar)}
-function $IRVariable(){return smalltalk.IRVariable||(typeof IRVariable=="undefined"?nil:IRVariable)}
-function $IRAssignment(){return smalltalk.IRAssignment||(typeof IRAssignment=="undefined"?nil:IRAssignment)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4,$5,$6,$7;
-$1=_st(aNode)._isImmutable();
-if(smalltalk.assert($1)){
-$2=self._visit_(aNode);
-return $2;
-};
-$3=_st($IRVariable())._new();
-_st($3)._variable_(_st(_st($AliasVar())._new())._name_("$".__comma(self._nextAlias())));
-$4=_st($3)._yourself();
-variable=$4;
-$5=_st($IRAssignment())._new();
-_st($5)._add_(variable);
-_st($5)._add_(self._visit_(aNode));
-$6=_st($5)._yourself();
-_st(self._sequence())._add_($6);
-_st(_st(self._method())._internalVariables())._add_(variable);
-$7=variable;
-return $7;
-}, function($ctx1) {$ctx1.fill(self,"alias:",{aNode:aNode,variable:variable},smalltalk.IRASTTranslator)})},
-messageSends: ["ifTrue:", "visit:", "isImmutable", "variable:", "name:", ",", "nextAlias", "new", "yourself", "add:", "sequence", "internalVariables", "method"]}),
-smalltalk.IRASTTranslator);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "aliasTemporally:",
-fn: function (aCollection){
-var self=this;
-var threshold,result;
-function $OrderedCollection(){return smalltalk.OrderedCollection||(typeof OrderedCollection=="undefined"?nil:OrderedCollection)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$4,$3,$5;
-threshold=(0);
-_st(aCollection)._withIndexDo_((function(each,i){
-return smalltalk.withContext(function($ctx2) {
-$1=_st(each)._subtreeNeedsAliasing();
-if(smalltalk.assert($1)){
-threshold=i;
-return threshold;
-};
-}, function($ctx2) {$ctx2.fillBlock({each:each,i:i},$ctx1)})}));
-result=_st($OrderedCollection())._new();
-_st(aCollection)._withIndexDo_((function(each,i){
-return smalltalk.withContext(function($ctx2) {
-$2=result;
-$4=_st(i).__lt_eq(threshold);
-if(smalltalk.assert($4)){
-$3=self._alias_(each);
-} else {
-$3=self._visit_(each);
-};
-return _st($2)._add_($3);
-}, function($ctx2) {$ctx2.fillBlock({each:each,i:i},$ctx1)})}));
-$5=result;
-return $5;
-}, function($ctx1) {$ctx1.fill(self,"aliasTemporally:",{aCollection:aCollection,threshold:threshold,result:result},smalltalk.IRASTTranslator)})},
-messageSends: ["withIndexDo:", "ifTrue:", "subtreeNeedsAliasing", "new", "add:", "ifTrue:ifFalse:", "alias:", "visit:", "<="]}),
-smalltalk.IRASTTranslator);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "method",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@method"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"method",{},smalltalk.IRASTTranslator)})},
-messageSends: []}),
-smalltalk.IRASTTranslator);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "method:",
-fn: function (anIRMethod){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@method"]=anIRMethod;
-return self}, function($ctx1) {$ctx1.fill(self,"method:",{anIRMethod:anIRMethod},smalltalk.IRASTTranslator)})},
-messageSends: []}),
-smalltalk.IRASTTranslator);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "nextAlias",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=self["@nextAlias"];
-if(($receiver = $1) == nil || $receiver == undefined){
-self["@nextAlias"]=(0);
-self["@nextAlias"];
-} else {
-$1;
-};
-self["@nextAlias"]=_st(self["@nextAlias"]).__plus((1));
-$2=_st(self["@nextAlias"])._asString();
-return $2;
-}, function($ctx1) {$ctx1.fill(self,"nextAlias",{},smalltalk.IRASTTranslator)})},
-messageSends: ["ifNil:", "+", "asString"]}),
-smalltalk.IRASTTranslator);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "sequence",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@sequence"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"sequence",{},smalltalk.IRASTTranslator)})},
-messageSends: []}),
-smalltalk.IRASTTranslator);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "sequence:",
-fn: function (anIRSequence){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@sequence"]=anIRSequence;
-return self}, function($ctx1) {$ctx1.fill(self,"sequence:",{anIRSequence:anIRSequence},smalltalk.IRASTTranslator)})},
-messageSends: []}),
-smalltalk.IRASTTranslator);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "source",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@source"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"source",{},smalltalk.IRASTTranslator)})},
-messageSends: []}),
-smalltalk.IRASTTranslator);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "source:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@source"]=aString;
-return self}, function($ctx1) {$ctx1.fill(self,"source:",{aString:aString},smalltalk.IRASTTranslator)})},
-messageSends: []}),
-smalltalk.IRASTTranslator);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "theClass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@theClass"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"theClass",{},smalltalk.IRASTTranslator)})},
-messageSends: []}),
-smalltalk.IRASTTranslator);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "theClass:",
-fn: function (aClass){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@theClass"]=aClass;
-return self}, function($ctx1) {$ctx1.fill(self,"theClass:",{aClass:aClass},smalltalk.IRASTTranslator)})},
-messageSends: []}),
-smalltalk.IRASTTranslator);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitAssignmentNode:",
-fn: function (aNode){
-var self=this;
-var left,right,assignment;
-function $IRAssignment(){return smalltalk.IRAssignment||(typeof IRAssignment=="undefined"?nil:IRAssignment)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3;
-right=self._visit_(_st(aNode)._right());
-left=self._visit_(_st(aNode)._left());
-$1=_st($IRAssignment())._new();
-_st($1)._add_(left);
-_st($1)._add_(right);
-$2=_st($1)._yourself();
-_st(self._sequence())._add_($2);
-$3=left;
-return $3;
-}, function($ctx1) {$ctx1.fill(self,"visitAssignmentNode:",{aNode:aNode,left:left,right:right,assignment:assignment},smalltalk.IRASTTranslator)})},
-messageSends: ["visit:", "right", "left", "add:", "new", "yourself", "sequence"]}),
-smalltalk.IRASTTranslator);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitBlockNode:",
-fn: function (aNode){
-var self=this;
-var closure;
-function $IRClosure(){return smalltalk.IRClosure||(typeof IRClosure=="undefined"?nil:IRClosure)}
-function $IRTempDeclaration(){return smalltalk.IRTempDeclaration||(typeof IRTempDeclaration=="undefined"?nil:IRTempDeclaration)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4,$5;
-$1=_st($IRClosure())._new();
-_st($1)._arguments_(_st(aNode)._parameters());
-_st($1)._scope_(_st(aNode)._scope());
-$2=_st($1)._yourself();
-closure=$2;
-_st(_st(_st(aNode)._scope())._temps())._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-$3=_st($IRTempDeclaration())._new();
-_st($3)._name_(_st(each)._name());
-_st($3)._scope_(_st(aNode)._scope());
-$4=_st($3)._yourself();
-return _st(closure)._add_($4);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-_st(_st(aNode)._nodes())._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(closure)._add_(self._visit_(each));
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-$5=closure;
-return $5;
-}, function($ctx1) {$ctx1.fill(self,"visitBlockNode:",{aNode:aNode,closure:closure},smalltalk.IRASTTranslator)})},
-messageSends: ["arguments:", "parameters", "new", "scope:", "scope", "yourself", "do:", "add:", "name:", "name", "temps", "visit:", "nodes"]}),
-smalltalk.IRASTTranslator);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitBlockSequenceNode:",
-fn: function (aNode){
-var self=this;
-function $IRBlockSequence(){return smalltalk.IRBlockSequence||(typeof IRBlockSequence=="undefined"?nil:IRBlockSequence)}
-function $IRBlockReturn(){return smalltalk.IRBlockReturn||(typeof IRBlockReturn=="undefined"?nil:IRBlockReturn)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$4,$1;
-$1=self._withSequence_do_(_st($IRBlockSequence())._new(),(function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(aNode)._nodes())._ifNotEmpty_((function(){
-return smalltalk.withContext(function($ctx3) {
-_st(_st(_st(aNode)._nodes())._allButLast())._do_((function(each){
-return smalltalk.withContext(function($ctx4) {
-return _st(self._sequence())._add_(self._visit_(each));
-}, function($ctx4) {$ctx4.fillBlock({each:each},$ctx3)})}));
-$2=_st(_st(_st(aNode)._nodes())._last())._isReturnNode();
-if(smalltalk.assert($2)){
-return _st(self._sequence())._add_(self._visit_(_st(_st(aNode)._nodes())._last()));
-} else {
-$3=_st($IRBlockReturn())._new();
-_st($3)._add_(self._visit_(_st(_st(aNode)._nodes())._last()));
-$4=_st($3)._yourself();
-return _st(self._sequence())._add_($4);
-};
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"visitBlockSequenceNode:",{aNode:aNode},smalltalk.IRASTTranslator)})},
-messageSends: ["withSequence:do:", "new", "ifNotEmpty:", "do:", "add:", "visit:", "sequence", "allButLast", "nodes", "ifFalse:ifTrue:", "last", "yourself", "isReturnNode"]}),
-smalltalk.IRASTTranslator);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitCascadeNode:",
-fn: function (aNode){
-var self=this;
-var alias;
-function $VariableNode(){return smalltalk.VariableNode||(typeof VariableNode=="undefined"?nil:VariableNode)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st(_st(aNode)._receiver())._isImmutable();
-if(! smalltalk.assert($1)){
-alias=self._alias_(_st(aNode)._receiver());
-alias;
-_st(_st(aNode)._nodes())._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(each)._receiver_(_st(_st($VariableNode())._new())._binding_(_st(alias)._variable()));
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-};
-_st(_st(_st(aNode)._nodes())._allButLast())._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(self._sequence())._add_(self._visit_(each));
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-$2=self._alias_(_st(_st(aNode)._nodes())._last());
-return $2;
-}, function($ctx1) {$ctx1.fill(self,"visitCascadeNode:",{aNode:aNode,alias:alias},smalltalk.IRASTTranslator)})},
-messageSends: ["ifFalse:", "alias:", "receiver", "do:", "receiver:", "binding:", "variable", "new", "nodes", "isImmutable", "add:", "visit:", "sequence", "allButLast", "last"]}),
-smalltalk.IRASTTranslator);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitDynamicArrayNode:",
-fn: function (aNode){
-var self=this;
-var array;
-function $IRDynamicArray(){return smalltalk.IRDynamicArray||(typeof IRDynamicArray=="undefined"?nil:IRDynamicArray)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-array=_st($IRDynamicArray())._new();
-_st(self._aliasTemporally_(_st(aNode)._nodes()))._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(array)._add_(each);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-$1=array;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"visitDynamicArrayNode:",{aNode:aNode,array:array},smalltalk.IRASTTranslator)})},
-messageSends: ["new", "do:", "add:", "aliasTemporally:", "nodes"]}),
-smalltalk.IRASTTranslator);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitDynamicDictionaryNode:",
-fn: function (aNode){
-var self=this;
-var dictionary;
-function $IRDynamicDictionary(){return smalltalk.IRDynamicDictionary||(typeof IRDynamicDictionary=="undefined"?nil:IRDynamicDictionary)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-dictionary=_st($IRDynamicDictionary())._new();
-_st(self._aliasTemporally_(_st(aNode)._nodes()))._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(dictionary)._add_(each);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-$1=dictionary;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"visitDynamicDictionaryNode:",{aNode:aNode,dictionary:dictionary},smalltalk.IRASTTranslator)})},
-messageSends: ["new", "do:", "add:", "aliasTemporally:", "nodes"]}),
-smalltalk.IRASTTranslator);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitJSStatementNode:",
-fn: function (aNode){
-var self=this;
-function $IRVerbatim(){return smalltalk.IRVerbatim||(typeof IRVerbatim=="undefined"?nil:IRVerbatim)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=_st($IRVerbatim())._new();
-_st($2)._source_(_st(_st(aNode)._source())._crlfSanitized());
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"visitJSStatementNode:",{aNode:aNode},smalltalk.IRASTTranslator)})},
-messageSends: ["source:", "crlfSanitized", "source", "new", "yourself"]}),
-smalltalk.IRASTTranslator);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitMethodNode:",
-fn: function (aNode){
-var self=this;
-function $IRMethod(){return smalltalk.IRMethod||(typeof IRMethod=="undefined"?nil:IRMethod)}
-function $IRTempDeclaration(){return smalltalk.IRTempDeclaration||(typeof IRTempDeclaration=="undefined"?nil:IRTempDeclaration)}
-function $IRVariable(){return smalltalk.IRVariable||(typeof IRVariable=="undefined"?nil:IRVariable)}
-function $IRReturn(){return smalltalk.IRReturn||(typeof IRReturn=="undefined"?nil:IRReturn)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4,$5,$6,$7,$8;
-$1=_st($IRMethod())._new();
-_st($1)._source_(_st(self._source())._crlfSanitized());
-_st($1)._theClass_(self._theClass());
-_st($1)._arguments_(_st(aNode)._arguments());
-_st($1)._selector_(_st(aNode)._selector());
-_st($1)._messageSends_(_st(aNode)._messageSends());
-_st($1)._superSends_(_st(aNode)._superSends());
-_st($1)._classReferences_(_st(aNode)._classReferences());
-_st($1)._scope_(_st(aNode)._scope());
-$2=_st($1)._yourself();
-self._method_($2);
-_st(_st(_st(aNode)._scope())._temps())._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-$3=_st($IRTempDeclaration())._new();
-_st($3)._name_(_st(each)._name());
-_st($3)._scope_(_st(aNode)._scope());
-$4=_st($3)._yourself();
-return _st(self._method())._add_($4);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-_st(_st(aNode)._nodes())._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(self._method())._add_(self._visit_(each));
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-$5=_st(_st(aNode)._scope())._hasLocalReturn();
-if(! smalltalk.assert($5)){
-$6=_st($IRVariable())._new();
-_st($6)._variable_(_st(_st(_st(aNode)._scope())._pseudoVars())._at_("self"));
-$7=_st($6)._yourself();
-_st(_st(self._method())._add_(_st($IRReturn())._new()))._add_($7);
-};
-$8=self._method();
-return $8;
-}, function($ctx1) {$ctx1.fill(self,"visitMethodNode:",{aNode:aNode},smalltalk.IRASTTranslator)})},
-messageSends: ["method:", "source:", "crlfSanitized", "source", "new", "theClass:", "theClass", "arguments:", "arguments", "selector:", "selector", "messageSends:", "messageSends", "superSends:", "superSends", "classReferences:", "classReferences", "scope:", "scope", "yourself", "do:", "add:", "name:", "name", "method", "temps", "visit:", "nodes", "ifFalse:", "variable:", "at:", "pseudoVars", "hasLocalReturn"]}),
-smalltalk.IRASTTranslator);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitReturnNode:",
-fn: function (aNode){
-var self=this;
-var return_;
-function $IRNonLocalReturn(){return smalltalk.IRNonLocalReturn||(typeof IRNonLocalReturn=="undefined"?nil:IRNonLocalReturn)}
-function $IRReturn(){return smalltalk.IRReturn||(typeof IRReturn=="undefined"?nil:IRReturn)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st(aNode)._nonLocalReturn();
-if(smalltalk.assert($1)){
-return_=_st($IRNonLocalReturn())._new();
-} else {
-return_=_st($IRReturn())._new();
-};
-_st(return_)._scope_(_st(aNode)._scope());
-_st(_st(aNode)._nodes())._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(return_)._add_(self._alias_(each));
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-$2=return_;
-return $2;
-}, function($ctx1) {$ctx1.fill(self,"visitReturnNode:",{aNode:aNode,return_:return_},smalltalk.IRASTTranslator)})},
-messageSends: ["ifTrue:ifFalse:", "new", "nonLocalReturn", "scope:", "scope", "do:", "add:", "alias:", "nodes"]}),
-smalltalk.IRASTTranslator);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitSendNode:",
-fn: function (aNode){
-var self=this;
-var send,all,receiver,arguments;
-function $IRSend(){return smalltalk.IRSend||(typeof IRSend=="undefined"?nil:IRSend)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4;
-send=_st($IRSend())._new();
-$1=send;
-_st($1)._selector_(_st(aNode)._selector());
-$2=_st($1)._index_(_st(aNode)._index());
-$3=_st(aNode)._superSend();
-if(smalltalk.assert($3)){
-_st(send)._classSend_(_st(self._theClass())._superclass());
-};
-all=self._aliasTemporally_(_st([_st(aNode)._receiver()]).__comma(_st(aNode)._arguments()));
-receiver=_st(all)._first();
-arguments=_st(all)._allButFirst();
-_st(send)._add_(receiver);
-_st(arguments)._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(send)._add_(each);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-$4=send;
-return $4;
-}, function($ctx1) {$ctx1.fill(self,"visitSendNode:",{aNode:aNode,send:send,all:all,receiver:receiver,arguments:arguments},smalltalk.IRASTTranslator)})},
-messageSends: ["new", "selector:", "selector", "index:", "index", "ifTrue:", "classSend:", "superclass", "theClass", "superSend", "aliasTemporally:", ",", "arguments", "receiver", "first", "allButFirst", "add:", "do:"]}),
-smalltalk.IRASTTranslator);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitSequenceNode:",
-fn: function (aNode){
-var self=this;
-function $IRSequence(){return smalltalk.IRSequence||(typeof IRSequence=="undefined"?nil:IRSequence)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$1=self._withSequence_do_(_st($IRSequence())._new(),(function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(aNode)._nodes())._do_((function(each){
-var instruction;
-return smalltalk.withContext(function($ctx3) {
-instruction=self._visit_(each);
-instruction;
-$2=_st(instruction)._isVariable();
-if(! smalltalk.assert($2)){
-return _st(self._sequence())._add_(instruction);
-};
-}, function($ctx3) {$ctx3.fillBlock({each:each,instruction:instruction},$ctx2)})}));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"visitSequenceNode:",{aNode:aNode},smalltalk.IRASTTranslator)})},
-messageSends: ["withSequence:do:", "new", "do:", "visit:", "ifFalse:", "add:", "sequence", "isVariable", "nodes"]}),
-smalltalk.IRASTTranslator);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitValueNode:",
-fn: function (aNode){
-var self=this;
-function $IRValue(){return smalltalk.IRValue||(typeof IRValue=="undefined"?nil:IRValue)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=_st($IRValue())._new();
-_st($2)._value_(_st(aNode)._value());
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"visitValueNode:",{aNode:aNode},smalltalk.IRASTTranslator)})},
-messageSends: ["value:", "value", "new", "yourself"]}),
-smalltalk.IRASTTranslator);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitVariableNode:",
-fn: function (aNode){
-var self=this;
-function $IRVariable(){return smalltalk.IRVariable||(typeof IRVariable=="undefined"?nil:IRVariable)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=_st($IRVariable())._new();
-_st($2)._variable_(_st(aNode)._binding());
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"visitVariableNode:",{aNode:aNode},smalltalk.IRASTTranslator)})},
-messageSends: ["variable:", "binding", "new", "yourself"]}),
-smalltalk.IRASTTranslator);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "withSequence:do:",
-fn: function (aSequence,aBlock){
-var self=this;
-var outerSequence;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-outerSequence=self._sequence();
-self._sequence_(aSequence);
-_st(aBlock)._value();
-self._sequence_(outerSequence);
-$1=aSequence;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"withSequence:do:",{aSequence:aSequence,aBlock:aBlock,outerSequence:outerSequence},smalltalk.IRASTTranslator)})},
-messageSends: ["sequence", "sequence:", "value"]}),
-smalltalk.IRASTTranslator);
-
-
-
-smalltalk.addClass('IRInstruction', smalltalk.Object, ['parent', 'instructions'], 'Compiler-IR');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "accept:",
-fn: function (aVisitor){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(aVisitor)._visitIRInstruction_(self);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"accept:",{aVisitor:aVisitor},smalltalk.IRInstruction)})},
-messageSends: ["visitIRInstruction:"]}),
-smalltalk.IRInstruction);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "add:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-_st(anObject)._parent_(self);
-$1=_st(self._instructions())._add_(anObject);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"add:",{anObject:anObject},smalltalk.IRInstruction)})},
-messageSends: ["parent:", "add:", "instructions"]}),
-smalltalk.IRInstruction);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "canBeAssigned",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"canBeAssigned",{},smalltalk.IRInstruction)})},
-messageSends: []}),
-smalltalk.IRInstruction);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "instructions",
-fn: function (){
-var self=this;
-function $OrderedCollection(){return smalltalk.OrderedCollection||(typeof OrderedCollection=="undefined"?nil:OrderedCollection)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@instructions"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@instructions"]=_st($OrderedCollection())._new();
-$1=self["@instructions"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"instructions",{},smalltalk.IRInstruction)})},
-messageSends: ["ifNil:", "new"]}),
-smalltalk.IRInstruction);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isClosure",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return false;
-}, function($ctx1) {$ctx1.fill(self,"isClosure",{},smalltalk.IRInstruction)})},
-messageSends: []}),
-smalltalk.IRInstruction);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isInlined",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return false;
-}, function($ctx1) {$ctx1.fill(self,"isInlined",{},smalltalk.IRInstruction)})},
-messageSends: []}),
-smalltalk.IRInstruction);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isLocalReturn",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return false;
-}, function($ctx1) {$ctx1.fill(self,"isLocalReturn",{},smalltalk.IRInstruction)})},
-messageSends: []}),
-smalltalk.IRInstruction);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isMethod",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return false;
-}, function($ctx1) {$ctx1.fill(self,"isMethod",{},smalltalk.IRInstruction)})},
-messageSends: []}),
-smalltalk.IRInstruction);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isReturn",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return false;
-}, function($ctx1) {$ctx1.fill(self,"isReturn",{},smalltalk.IRInstruction)})},
-messageSends: []}),
-smalltalk.IRInstruction);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isSend",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return false;
-}, function($ctx1) {$ctx1.fill(self,"isSend",{},smalltalk.IRInstruction)})},
-messageSends: []}),
-smalltalk.IRInstruction);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isSequence",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return false;
-}, function($ctx1) {$ctx1.fill(self,"isSequence",{},smalltalk.IRInstruction)})},
-messageSends: []}),
-smalltalk.IRInstruction);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isTempDeclaration",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return false;
-}, function($ctx1) {$ctx1.fill(self,"isTempDeclaration",{},smalltalk.IRInstruction)})},
-messageSends: []}),
-smalltalk.IRInstruction);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isVariable",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return false;
-}, function($ctx1) {$ctx1.fill(self,"isVariable",{},smalltalk.IRInstruction)})},
-messageSends: []}),
-smalltalk.IRInstruction);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "method",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._parent())._method();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"method",{},smalltalk.IRInstruction)})},
-messageSends: ["method", "parent"]}),
-smalltalk.IRInstruction);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "needsBoxingAsReceiver",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"needsBoxingAsReceiver",{},smalltalk.IRInstruction)})},
-messageSends: []}),
-smalltalk.IRInstruction);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "parent",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@parent"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"parent",{},smalltalk.IRInstruction)})},
-messageSends: []}),
-smalltalk.IRInstruction);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "parent:",
-fn: function (anIRInstruction){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@parent"]=anIRInstruction;
-return self}, function($ctx1) {$ctx1.fill(self,"parent:",{anIRInstruction:anIRInstruction},smalltalk.IRInstruction)})},
-messageSends: []}),
-smalltalk.IRInstruction);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "remove",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._parent())._remove_(self);
-return self}, function($ctx1) {$ctx1.fill(self,"remove",{},smalltalk.IRInstruction)})},
-messageSends: ["remove:", "parent"]}),
-smalltalk.IRInstruction);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "remove:",
-fn: function (anIRInstruction){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._instructions())._remove_(anIRInstruction);
-return self}, function($ctx1) {$ctx1.fill(self,"remove:",{anIRInstruction:anIRInstruction},smalltalk.IRInstruction)})},
-messageSends: ["remove:", "instructions"]}),
-smalltalk.IRInstruction);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "replace:with:",
-fn: function (anIRInstruction,anotherIRInstruction){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(anotherIRInstruction)._parent_(self);
-_st(self._instructions())._at_put_(_st(self._instructions())._indexOf_(anIRInstruction),anotherIRInstruction);
-return self}, function($ctx1) {$ctx1.fill(self,"replace:with:",{anIRInstruction:anIRInstruction,anotherIRInstruction:anotherIRInstruction},smalltalk.IRInstruction)})},
-messageSends: ["parent:", "at:put:", "indexOf:", "instructions"]}),
-smalltalk.IRInstruction);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "replaceWith:",
-fn: function (anIRInstruction){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._parent())._replace_with_(self,anIRInstruction);
-return self}, function($ctx1) {$ctx1.fill(self,"replaceWith:",{anIRInstruction:anIRInstruction},smalltalk.IRInstruction)})},
-messageSends: ["replace:with:", "parent"]}),
-smalltalk.IRInstruction);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "on:",
-fn: function (aBuilder){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=self._new();
-_st($2)._builder_(aBuilder);
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"on:",{aBuilder:aBuilder},smalltalk.IRInstruction.klass)})},
-messageSends: ["builder:", "new", "yourself"]}),
-smalltalk.IRInstruction.klass);
-
-
-smalltalk.addClass('IRAssignment', smalltalk.IRInstruction, [], 'Compiler-IR');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "accept:",
-fn: function (aVisitor){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(aVisitor)._visitIRAssignment_(self);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"accept:",{aVisitor:aVisitor},smalltalk.IRAssignment)})},
-messageSends: ["visitIRAssignment:"]}),
-smalltalk.IRAssignment);
-
-
-
-smalltalk.addClass('IRDynamicArray', smalltalk.IRInstruction, [], 'Compiler-IR');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "accept:",
-fn: function (aVisitor){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(aVisitor)._visitIRDynamicArray_(self);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"accept:",{aVisitor:aVisitor},smalltalk.IRDynamicArray)})},
-messageSends: ["visitIRDynamicArray:"]}),
-smalltalk.IRDynamicArray);
-
-
-
-smalltalk.addClass('IRDynamicDictionary', smalltalk.IRInstruction, [], 'Compiler-IR');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "accept:",
-fn: function (aVisitor){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(aVisitor)._visitIRDynamicDictionary_(self);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"accept:",{aVisitor:aVisitor},smalltalk.IRDynamicDictionary)})},
-messageSends: ["visitIRDynamicDictionary:"]}),
-smalltalk.IRDynamicDictionary);
-
-
-
-smalltalk.addClass('IRScopedInstruction', smalltalk.IRInstruction, ['scope'], 'Compiler-IR');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "scope",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@scope"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"scope",{},smalltalk.IRScopedInstruction)})},
-messageSends: []}),
-smalltalk.IRScopedInstruction);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "scope:",
-fn: function (aScope){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@scope"]=aScope;
-return self}, function($ctx1) {$ctx1.fill(self,"scope:",{aScope:aScope},smalltalk.IRScopedInstruction)})},
-messageSends: []}),
-smalltalk.IRScopedInstruction);
-
-
-
-smalltalk.addClass('IRClosureInstruction', smalltalk.IRScopedInstruction, ['arguments'], 'Compiler-IR');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "arguments",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@arguments"];
-if(($receiver = $2) == nil || $receiver == undefined){
-$1=[];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"arguments",{},smalltalk.IRClosureInstruction)})},
-messageSends: ["ifNil:"]}),
-smalltalk.IRClosureInstruction);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "arguments:",
-fn: function (aCollection){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@arguments"]=aCollection;
-return self}, function($ctx1) {$ctx1.fill(self,"arguments:",{aCollection:aCollection},smalltalk.IRClosureInstruction)})},
-messageSends: []}),
-smalltalk.IRClosureInstruction);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "locals",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=_st(self._arguments())._copy();
-_st($2)._addAll_(_st(self._tempDeclarations())._collect_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(each)._name();
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})})));
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"locals",{},smalltalk.IRClosureInstruction)})},
-messageSends: ["addAll:", "collect:", "name", "tempDeclarations", "copy", "arguments", "yourself"]}),
-smalltalk.IRClosureInstruction);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "scope:",
-fn: function (aScope){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-smalltalk.IRClosureInstruction.superclass.fn.prototype._scope_.apply(_st(self), [aScope]);
-_st(aScope)._instruction_(self);
-return self}, function($ctx1) {$ctx1.fill(self,"scope:",{aScope:aScope},smalltalk.IRClosureInstruction)})},
-messageSends: ["scope:", "instruction:"]}),
-smalltalk.IRClosureInstruction);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "tempDeclarations",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._instructions())._select_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(each)._isTempDeclaration();
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"tempDeclarations",{},smalltalk.IRClosureInstruction)})},
-messageSends: ["select:", "isTempDeclaration", "instructions"]}),
-smalltalk.IRClosureInstruction);
-
-
-
-smalltalk.addClass('IRClosure', smalltalk.IRClosureInstruction, [], 'Compiler-IR');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "accept:",
-fn: function (aVisitor){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(aVisitor)._visitIRClosure_(self);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"accept:",{aVisitor:aVisitor},smalltalk.IRClosure)})},
-messageSends: ["visitIRClosure:"]}),
-smalltalk.IRClosure);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isClosure",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"isClosure",{},smalltalk.IRClosure)})},
-messageSends: []}),
-smalltalk.IRClosure);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "sequence",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._instructions())._last();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"sequence",{},smalltalk.IRClosure)})},
-messageSends: ["last", "instructions"]}),
-smalltalk.IRClosure);
-
-
-
-smalltalk.addClass('IRMethod', smalltalk.IRClosureInstruction, ['theClass', 'source', 'selector', 'classReferences', 'messageSends', 'superSends', 'internalVariables'], 'Compiler-IR');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "accept:",
-fn: function (aVisitor){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(aVisitor)._visitIRMethod_(self);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"accept:",{aVisitor:aVisitor},smalltalk.IRMethod)})},
-messageSends: ["visitIRMethod:"]}),
-smalltalk.IRMethod);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "classReferences",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@classReferences"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"classReferences",{},smalltalk.IRMethod)})},
-messageSends: []}),
-smalltalk.IRMethod);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "classReferences:",
-fn: function (aCollection){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@classReferences"]=aCollection;
-return self}, function($ctx1) {$ctx1.fill(self,"classReferences:",{aCollection:aCollection},smalltalk.IRMethod)})},
-messageSends: []}),
-smalltalk.IRMethod);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "internalVariables",
-fn: function (){
-var self=this;
-function $Set(){return smalltalk.Set||(typeof Set=="undefined"?nil:Set)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@internalVariables"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@internalVariables"]=_st($Set())._new();
-$1=self["@internalVariables"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"internalVariables",{},smalltalk.IRMethod)})},
-messageSends: ["ifNil:", "new"]}),
-smalltalk.IRMethod);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isMethod",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"isMethod",{},smalltalk.IRMethod)})},
-messageSends: []}),
-smalltalk.IRMethod);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "messageSends",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@messageSends"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"messageSends",{},smalltalk.IRMethod)})},
-messageSends: []}),
-smalltalk.IRMethod);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "messageSends:",
-fn: function (aCollection){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@messageSends"]=aCollection;
-return self}, function($ctx1) {$ctx1.fill(self,"messageSends:",{aCollection:aCollection},smalltalk.IRMethod)})},
-messageSends: []}),
-smalltalk.IRMethod);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "method",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"method",{},smalltalk.IRMethod)})},
-messageSends: []}),
-smalltalk.IRMethod);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selector",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@selector"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"selector",{},smalltalk.IRMethod)})},
-messageSends: []}),
-smalltalk.IRMethod);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selector:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@selector"]=aString;
-return self}, function($ctx1) {$ctx1.fill(self,"selector:",{aString:aString},smalltalk.IRMethod)})},
-messageSends: []}),
-smalltalk.IRMethod);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "source",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@source"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"source",{},smalltalk.IRMethod)})},
-messageSends: []}),
-smalltalk.IRMethod);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "source:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@source"]=aString;
-return self}, function($ctx1) {$ctx1.fill(self,"source:",{aString:aString},smalltalk.IRMethod)})},
-messageSends: []}),
-smalltalk.IRMethod);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "superSends",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@superSends"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"superSends",{},smalltalk.IRMethod)})},
-messageSends: []}),
-smalltalk.IRMethod);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "superSends:",
-fn: function (aCollection){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@superSends"]=aCollection;
-return self}, function($ctx1) {$ctx1.fill(self,"superSends:",{aCollection:aCollection},smalltalk.IRMethod)})},
-messageSends: []}),
-smalltalk.IRMethod);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "theClass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@theClass"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"theClass",{},smalltalk.IRMethod)})},
-messageSends: []}),
-smalltalk.IRMethod);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "theClass:",
-fn: function (aClass){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@theClass"]=aClass;
-return self}, function($ctx1) {$ctx1.fill(self,"theClass:",{aClass:aClass},smalltalk.IRMethod)})},
-messageSends: []}),
-smalltalk.IRMethod);
-
-
-
-smalltalk.addClass('IRReturn', smalltalk.IRScopedInstruction, [], 'Compiler-IR');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "accept:",
-fn: function (aVisitor){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(aVisitor)._visitIRReturn_(self);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"accept:",{aVisitor:aVisitor},smalltalk.IRReturn)})},
-messageSends: ["visitIRReturn:"]}),
-smalltalk.IRReturn);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "canBeAssigned",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return false;
-}, function($ctx1) {$ctx1.fill(self,"canBeAssigned",{},smalltalk.IRReturn)})},
-messageSends: []}),
-smalltalk.IRReturn);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isBlockReturn",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return false;
-}, function($ctx1) {$ctx1.fill(self,"isBlockReturn",{},smalltalk.IRReturn)})},
-messageSends: []}),
-smalltalk.IRReturn);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isLocalReturn",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"isLocalReturn",{},smalltalk.IRReturn)})},
-messageSends: []}),
-smalltalk.IRReturn);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isNonLocalReturn",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._isLocalReturn())._not();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"isNonLocalReturn",{},smalltalk.IRReturn)})},
-messageSends: ["not", "isLocalReturn"]}),
-smalltalk.IRReturn);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isReturn",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"isReturn",{},smalltalk.IRReturn)})},
-messageSends: []}),
-smalltalk.IRReturn);
-
-
-
-smalltalk.addClass('IRBlockReturn', smalltalk.IRReturn, [], 'Compiler-IR');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "accept:",
-fn: function (aVisitor){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(aVisitor)._visitIRBlockReturn_(self);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"accept:",{aVisitor:aVisitor},smalltalk.IRBlockReturn)})},
-messageSends: ["visitIRBlockReturn:"]}),
-smalltalk.IRBlockReturn);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isBlockReturn",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"isBlockReturn",{},smalltalk.IRBlockReturn)})},
-messageSends: []}),
-smalltalk.IRBlockReturn);
-
-
-
-smalltalk.addClass('IRNonLocalReturn', smalltalk.IRReturn, [], 'Compiler-IR');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "accept:",
-fn: function (aVisitor){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(aVisitor)._visitIRNonLocalReturn_(self);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"accept:",{aVisitor:aVisitor},smalltalk.IRNonLocalReturn)})},
-messageSends: ["visitIRNonLocalReturn:"]}),
-smalltalk.IRNonLocalReturn);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isLocalReturn",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return false;
-}, function($ctx1) {$ctx1.fill(self,"isLocalReturn",{},smalltalk.IRNonLocalReturn)})},
-messageSends: []}),
-smalltalk.IRNonLocalReturn);
-
-
-
-smalltalk.addClass('IRTempDeclaration', smalltalk.IRScopedInstruction, ['name'], 'Compiler-IR');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "accept:",
-fn: function (aVisitor){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(aVisitor)._visitIRTempDeclaration_(self);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"accept:",{aVisitor:aVisitor},smalltalk.IRTempDeclaration)})},
-messageSends: ["visitIRTempDeclaration:"]}),
-smalltalk.IRTempDeclaration);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isTempDeclaration",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"isTempDeclaration",{},smalltalk.IRTempDeclaration)})},
-messageSends: []}),
-smalltalk.IRTempDeclaration);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "name",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@name"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"name",{},smalltalk.IRTempDeclaration)})},
-messageSends: []}),
-smalltalk.IRTempDeclaration);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "name:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@name"]=aString;
-return self}, function($ctx1) {$ctx1.fill(self,"name:",{aString:aString},smalltalk.IRTempDeclaration)})},
-messageSends: []}),
-smalltalk.IRTempDeclaration);
-
-
-
-smalltalk.addClass('IRSend', smalltalk.IRInstruction, ['selector', 'classSend', 'index'], 'Compiler-IR');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "accept:",
-fn: function (aVisitor){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(aVisitor)._visitIRSend_(self);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"accept:",{aVisitor:aVisitor},smalltalk.IRSend)})},
-messageSends: ["visitIRSend:"]}),
-smalltalk.IRSend);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "classSend",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@classSend"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"classSend",{},smalltalk.IRSend)})},
-messageSends: []}),
-smalltalk.IRSend);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "classSend:",
-fn: function (aClass){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@classSend"]=aClass;
-return self}, function($ctx1) {$ctx1.fill(self,"classSend:",{aClass:aClass},smalltalk.IRSend)})},
-messageSends: []}),
-smalltalk.IRSend);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "index",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@index"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"index",{},smalltalk.IRSend)})},
-messageSends: []}),
-smalltalk.IRSend);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "index:",
-fn: function (anInteger){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@index"]=anInteger;
-return self}, function($ctx1) {$ctx1.fill(self,"index:",{anInteger:anInteger},smalltalk.IRSend)})},
-messageSends: []}),
-smalltalk.IRSend);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isSend",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"isSend",{},smalltalk.IRSend)})},
-messageSends: []}),
-smalltalk.IRSend);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selector",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@selector"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"selector",{},smalltalk.IRSend)})},
-messageSends: []}),
-smalltalk.IRSend);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selector:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@selector"]=aString;
-return self}, function($ctx1) {$ctx1.fill(self,"selector:",{aString:aString},smalltalk.IRSend)})},
-messageSends: []}),
-smalltalk.IRSend);
-
-
-
-smalltalk.addClass('IRSequence', smalltalk.IRInstruction, [], 'Compiler-IR');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "accept:",
-fn: function (aVisitor){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(aVisitor)._visitIRSequence_(self);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"accept:",{aVisitor:aVisitor},smalltalk.IRSequence)})},
-messageSends: ["visitIRSequence:"]}),
-smalltalk.IRSequence);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isSequence",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"isSequence",{},smalltalk.IRSequence)})},
-messageSends: []}),
-smalltalk.IRSequence);
-
-
-
-smalltalk.addClass('IRBlockSequence', smalltalk.IRSequence, [], 'Compiler-IR');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "accept:",
-fn: function (aVisitor){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(aVisitor)._visitIRBlockSequence_(self);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"accept:",{aVisitor:aVisitor},smalltalk.IRBlockSequence)})},
-messageSends: ["visitIRBlockSequence:"]}),
-smalltalk.IRBlockSequence);
-
-
-
-smalltalk.addClass('IRValue', smalltalk.IRInstruction, ['value'], 'Compiler-IR');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "accept:",
-fn: function (aVisitor){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(aVisitor)._visitIRValue_(self);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"accept:",{aVisitor:aVisitor},smalltalk.IRValue)})},
-messageSends: ["visitIRValue:"]}),
-smalltalk.IRValue);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "needsBoxingAsReceiver",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return false;
-}, function($ctx1) {$ctx1.fill(self,"needsBoxingAsReceiver",{},smalltalk.IRValue)})},
-messageSends: []}),
-smalltalk.IRValue);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "value",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@value"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"value",{},smalltalk.IRValue)})},
-messageSends: []}),
-smalltalk.IRValue);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "value:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@value"]=aString;
-return self}, function($ctx1) {$ctx1.fill(self,"value:",{aString:aString},smalltalk.IRValue)})},
-messageSends: []}),
-smalltalk.IRValue);
-
-
-
-smalltalk.addClass('IRVariable', smalltalk.IRInstruction, ['variable'], 'Compiler-IR');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "accept:",
-fn: function (aVisitor){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(aVisitor)._visitIRVariable_(self);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"accept:",{aVisitor:aVisitor},smalltalk.IRVariable)})},
-messageSends: ["visitIRVariable:"]}),
-smalltalk.IRVariable);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isVariable",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"isVariable",{},smalltalk.IRVariable)})},
-messageSends: []}),
-smalltalk.IRVariable);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "needsBoxingAsReceiver",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(self._variable())._isPseudoVar())._not();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"needsBoxingAsReceiver",{},smalltalk.IRVariable)})},
-messageSends: ["not", "isPseudoVar", "variable"]}),
-smalltalk.IRVariable);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "variable",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@variable"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"variable",{},smalltalk.IRVariable)})},
-messageSends: []}),
-smalltalk.IRVariable);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "variable:",
-fn: function (aScopeVariable){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@variable"]=aScopeVariable;
-return self}, function($ctx1) {$ctx1.fill(self,"variable:",{aScopeVariable:aScopeVariable},smalltalk.IRVariable)})},
-messageSends: []}),
-smalltalk.IRVariable);
-
-
-
-smalltalk.addClass('IRVerbatim', smalltalk.IRInstruction, ['source'], 'Compiler-IR');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "accept:",
-fn: function (aVisitor){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(aVisitor)._visitIRVerbatim_(self);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"accept:",{aVisitor:aVisitor},smalltalk.IRVerbatim)})},
-messageSends: ["visitIRVerbatim:"]}),
-smalltalk.IRVerbatim);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "source",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@source"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"source",{},smalltalk.IRVerbatim)})},
-messageSends: []}),
-smalltalk.IRVerbatim);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "source:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@source"]=aString;
-return self}, function($ctx1) {$ctx1.fill(self,"source:",{aString:aString},smalltalk.IRVerbatim)})},
-messageSends: []}),
-smalltalk.IRVerbatim);
-
-
-
-smalltalk.addClass('IRVisitor', smalltalk.Object, [], 'Compiler-IR');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visit:",
-fn: function (anIRInstruction){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(anIRInstruction)._accept_(self);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"visit:",{anIRInstruction:anIRInstruction},smalltalk.IRVisitor)})},
-messageSends: ["accept:"]}),
-smalltalk.IRVisitor);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitIRAssignment:",
-fn: function (anIRAssignment){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._visitIRInstruction_(anIRAssignment);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"visitIRAssignment:",{anIRAssignment:anIRAssignment},smalltalk.IRVisitor)})},
-messageSends: ["visitIRInstruction:"]}),
-smalltalk.IRVisitor);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitIRBlockReturn:",
-fn: function (anIRBlockReturn){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._visitIRReturn_(anIRBlockReturn);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"visitIRBlockReturn:",{anIRBlockReturn:anIRBlockReturn},smalltalk.IRVisitor)})},
-messageSends: ["visitIRReturn:"]}),
-smalltalk.IRVisitor);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitIRBlockSequence:",
-fn: function (anIRBlockSequence){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._visitIRSequence_(anIRBlockSequence);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"visitIRBlockSequence:",{anIRBlockSequence:anIRBlockSequence},smalltalk.IRVisitor)})},
-messageSends: ["visitIRSequence:"]}),
-smalltalk.IRVisitor);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitIRClosure:",
-fn: function (anIRClosure){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._visitIRInstruction_(anIRClosure);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"visitIRClosure:",{anIRClosure:anIRClosure},smalltalk.IRVisitor)})},
-messageSends: ["visitIRInstruction:"]}),
-smalltalk.IRVisitor);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitIRDynamicArray:",
-fn: function (anIRDynamicArray){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._visitIRInstruction_(anIRDynamicArray);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"visitIRDynamicArray:",{anIRDynamicArray:anIRDynamicArray},smalltalk.IRVisitor)})},
-messageSends: ["visitIRInstruction:"]}),
-smalltalk.IRVisitor);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitIRDynamicDictionary:",
-fn: function (anIRDynamicDictionary){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._visitIRInstruction_(anIRDynamicDictionary);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"visitIRDynamicDictionary:",{anIRDynamicDictionary:anIRDynamicDictionary},smalltalk.IRVisitor)})},
-messageSends: ["visitIRInstruction:"]}),
-smalltalk.IRVisitor);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitIRInlinedClosure:",
-fn: function (anIRInlinedClosure){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._visitIRClosure_(anIRInlinedClosure);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"visitIRInlinedClosure:",{anIRInlinedClosure:anIRInlinedClosure},smalltalk.IRVisitor)})},
-messageSends: ["visitIRClosure:"]}),
-smalltalk.IRVisitor);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitIRInlinedSequence:",
-fn: function (anIRInlinedSequence){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._visitIRSequence_(anIRInlinedSequence);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"visitIRInlinedSequence:",{anIRInlinedSequence:anIRInlinedSequence},smalltalk.IRVisitor)})},
-messageSends: ["visitIRSequence:"]}),
-smalltalk.IRVisitor);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitIRInstruction:",
-fn: function (anIRInstruction){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-_st(_st(anIRInstruction)._instructions())._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return self._visit_(each);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-$1=anIRInstruction;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"visitIRInstruction:",{anIRInstruction:anIRInstruction},smalltalk.IRVisitor)})},
-messageSends: ["do:", "visit:", "instructions"]}),
-smalltalk.IRVisitor);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitIRMethod:",
-fn: function (anIRMethod){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._visitIRInstruction_(anIRMethod);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"visitIRMethod:",{anIRMethod:anIRMethod},smalltalk.IRVisitor)})},
-messageSends: ["visitIRInstruction:"]}),
-smalltalk.IRVisitor);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitIRNonLocalReturn:",
-fn: function (anIRNonLocalReturn){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._visitIRInstruction_(anIRNonLocalReturn);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"visitIRNonLocalReturn:",{anIRNonLocalReturn:anIRNonLocalReturn},smalltalk.IRVisitor)})},
-messageSends: ["visitIRInstruction:"]}),
-smalltalk.IRVisitor);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitIRNonLocalReturnHandling:",
-fn: function (anIRNonLocalReturnHandling){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._visitIRInstruction_(anIRNonLocalReturnHandling);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"visitIRNonLocalReturnHandling:",{anIRNonLocalReturnHandling:anIRNonLocalReturnHandling},smalltalk.IRVisitor)})},
-messageSends: ["visitIRInstruction:"]}),
-smalltalk.IRVisitor);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitIRReturn:",
-fn: function (anIRReturn){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._visitIRInstruction_(anIRReturn);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"visitIRReturn:",{anIRReturn:anIRReturn},smalltalk.IRVisitor)})},
-messageSends: ["visitIRInstruction:"]}),
-smalltalk.IRVisitor);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitIRSend:",
-fn: function (anIRSend){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._visitIRInstruction_(anIRSend);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"visitIRSend:",{anIRSend:anIRSend},smalltalk.IRVisitor)})},
-messageSends: ["visitIRInstruction:"]}),
-smalltalk.IRVisitor);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitIRSequence:",
-fn: function (anIRSequence){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._visitIRInstruction_(anIRSequence);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"visitIRSequence:",{anIRSequence:anIRSequence},smalltalk.IRVisitor)})},
-messageSends: ["visitIRInstruction:"]}),
-smalltalk.IRVisitor);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitIRTempDeclaration:",
-fn: function (anIRTempDeclaration){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._visitIRInstruction_(anIRTempDeclaration);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"visitIRTempDeclaration:",{anIRTempDeclaration:anIRTempDeclaration},smalltalk.IRVisitor)})},
-messageSends: ["visitIRInstruction:"]}),
-smalltalk.IRVisitor);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitIRValue:",
-fn: function (anIRValue){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._visitIRInstruction_(anIRValue);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"visitIRValue:",{anIRValue:anIRValue},smalltalk.IRVisitor)})},
-messageSends: ["visitIRInstruction:"]}),
-smalltalk.IRVisitor);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitIRVariable:",
-fn: function (anIRVariable){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._visitIRInstruction_(anIRVariable);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"visitIRVariable:",{anIRVariable:anIRVariable},smalltalk.IRVisitor)})},
-messageSends: ["visitIRInstruction:"]}),
-smalltalk.IRVisitor);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitIRVerbatim:",
-fn: function (anIRVerbatim){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._visitIRInstruction_(anIRVerbatim);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"visitIRVerbatim:",{anIRVerbatim:anIRVerbatim},smalltalk.IRVisitor)})},
-messageSends: ["visitIRInstruction:"]}),
-smalltalk.IRVisitor);
-
-
-
-smalltalk.addClass('IRJSTranslator', smalltalk.IRVisitor, ['stream', 'currentClass'], 'Compiler-IR');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "contents",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._stream())._contents();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"contents",{},smalltalk.IRJSTranslator)})},
-messageSends: ["contents", "stream"]}),
-smalltalk.IRJSTranslator);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "currentClass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@currentClass"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"currentClass",{},smalltalk.IRJSTranslator)})},
-messageSends: []}),
-smalltalk.IRJSTranslator);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "currentClass:",
-fn: function (aClass){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@currentClass"]=aClass;
-return self}, function($ctx1) {$ctx1.fill(self,"currentClass:",{aClass:aClass},smalltalk.IRJSTranslator)})},
-messageSends: []}),
-smalltalk.IRJSTranslator);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "initialize",
-fn: function (){
-var self=this;
-function $JSStream(){return smalltalk.JSStream||(typeof JSStream=="undefined"?nil:JSStream)}
-return smalltalk.withContext(function($ctx1) { 
-smalltalk.IRJSTranslator.superclass.fn.prototype._initialize.apply(_st(self), []);
-self["@stream"]=_st($JSStream())._new();
-return self}, function($ctx1) {$ctx1.fill(self,"initialize",{},smalltalk.IRJSTranslator)})},
-messageSends: ["initialize", "new"]}),
-smalltalk.IRJSTranslator);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "stream",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@stream"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"stream",{},smalltalk.IRJSTranslator)})},
-messageSends: []}),
-smalltalk.IRJSTranslator);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "stream:",
-fn: function (aStream){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@stream"]=aStream;
-return self}, function($ctx1) {$ctx1.fill(self,"stream:",{aStream:aStream},smalltalk.IRJSTranslator)})},
-messageSends: []}),
-smalltalk.IRJSTranslator);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitIRAssignment:",
-fn: function (anIRAssignment){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._visit_(_st(_st(anIRAssignment)._instructions())._first());
-_st(self._stream())._nextPutAssignment();
-self._visit_(_st(_st(anIRAssignment)._instructions())._last());
-return self}, function($ctx1) {$ctx1.fill(self,"visitIRAssignment:",{anIRAssignment:anIRAssignment},smalltalk.IRJSTranslator)})},
-messageSends: ["visit:", "first", "instructions", "nextPutAssignment", "stream", "last"]}),
-smalltalk.IRJSTranslator);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitIRClosure:",
-fn: function (anIRClosure){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._stream())._nextPutClosureWith_arguments_((function(){
-return smalltalk.withContext(function($ctx2) {
-_st(self._stream())._nextPutVars_(_st(_st(anIRClosure)._tempDeclarations())._collect_((function(each){
-return smalltalk.withContext(function($ctx3) {
-return _st(_st(each)._name())._asVariableName();
-}, function($ctx3) {$ctx3.fillBlock({each:each},$ctx2)})})));
-return _st(self._stream())._nextPutBlockContextFor_during_(anIRClosure,(function(){
-return smalltalk.withContext(function($ctx3) {
-return smalltalk.IRJSTranslator.superclass.fn.prototype._visitIRClosure_.apply(_st(self), [anIRClosure]);
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),_st(anIRClosure)._arguments());
-return self}, function($ctx1) {$ctx1.fill(self,"visitIRClosure:",{anIRClosure:anIRClosure},smalltalk.IRJSTranslator)})},
-messageSends: ["nextPutClosureWith:arguments:", "nextPutVars:", "collect:", "asVariableName", "name", "tempDeclarations", "stream", "nextPutBlockContextFor:during:", "visitIRClosure:", "arguments"]}),
-smalltalk.IRJSTranslator);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitIRDynamicArray:",
-fn: function (anIRDynamicArray){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._stream())._nextPutAll_("[");
-_st(_st(anIRDynamicArray)._instructions())._do_separatedBy_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return self._visit_(each);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}),(function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(self._stream())._nextPutAll_(",");
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-_st(self["@stream"])._nextPutAll_("]");
-return self}, function($ctx1) {$ctx1.fill(self,"visitIRDynamicArray:",{anIRDynamicArray:anIRDynamicArray},smalltalk.IRJSTranslator)})},
-messageSends: ["nextPutAll:", "stream", "do:separatedBy:", "visit:", "instructions"]}),
-smalltalk.IRJSTranslator);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitIRDynamicDictionary:",
-fn: function (anIRDynamicDictionary){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._stream())._nextPutAll_("smalltalk.HashedCollection._from_([");
-_st(_st(anIRDynamicDictionary)._instructions())._do_separatedBy_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return self._visit_(each);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}),(function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(self._stream())._nextPutAll_(",");
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-_st(self._stream())._nextPutAll_("])");
-return self}, function($ctx1) {$ctx1.fill(self,"visitIRDynamicDictionary:",{anIRDynamicDictionary:anIRDynamicDictionary},smalltalk.IRJSTranslator)})},
-messageSends: ["nextPutAll:", "stream", "do:separatedBy:", "visit:", "instructions"]}),
-smalltalk.IRJSTranslator);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitIRMethod:",
-fn: function (anIRMethod){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-_st(self._stream())._nextPutMethodDeclaration_with_(anIRMethod,(function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(self._stream())._nextPutFunctionWith_arguments_((function(){
-return smalltalk.withContext(function($ctx3) {
-_st(self._stream())._nextPutVars_(_st(_st(anIRMethod)._tempDeclarations())._collect_((function(each){
-return smalltalk.withContext(function($ctx4) {
-return _st(_st(each)._name())._asVariableName();
-}, function($ctx4) {$ctx4.fillBlock({each:each},$ctx3)})})));
-_st(_st(anIRMethod)._classReferences())._do_((function(each){
-return smalltalk.withContext(function($ctx4) {
-return _st(self._stream())._nextPutClassRefFunction_(each);
-}, function($ctx4) {$ctx4.fillBlock({each:each},$ctx3)})}));
-return _st(self._stream())._nextPutContextFor_during_(anIRMethod,(function(){
-return smalltalk.withContext(function($ctx4) {
-$1=_st(_st(anIRMethod)._internalVariables())._notEmpty();
-if(smalltalk.assert($1)){
-_st(self._stream())._nextPutVars_(_st(_st(_st(anIRMethod)._internalVariables())._asArray())._collect_((function(each){
-return smalltalk.withContext(function($ctx5) {
-return _st(_st(each)._variable())._alias();
-}, function($ctx5) {$ctx5.fillBlock({each:each},$ctx4)})})));
-};
-$2=_st(_st(anIRMethod)._scope())._hasNonLocalReturn();
-if(smalltalk.assert($2)){
-return _st(self._stream())._nextPutNonLocalReturnHandlingWith_((function(){
-return smalltalk.withContext(function($ctx5) {
-return smalltalk.IRJSTranslator.superclass.fn.prototype._visitIRMethod_.apply(_st(self), [anIRMethod]);
-}, function($ctx5) {$ctx5.fillBlock({},$ctx4)})}));
-} else {
-return smalltalk.IRJSTranslator.superclass.fn.prototype._visitIRMethod_.apply(_st(self), [anIRMethod]);
-};
-}, function($ctx4) {$ctx4.fillBlock({},$ctx3)})}));
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}),_st(anIRMethod)._arguments());
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"visitIRMethod:",{anIRMethod:anIRMethod},smalltalk.IRJSTranslator)})},
-messageSends: ["nextPutMethodDeclaration:with:", "nextPutFunctionWith:arguments:", "nextPutVars:", "collect:", "asVariableName", "name", "tempDeclarations", "stream", "do:", "nextPutClassRefFunction:", "classReferences", "nextPutContextFor:during:", "ifTrue:", "alias", "variable", "asArray", "internalVariables", "notEmpty", "ifTrue:ifFalse:", "nextPutNonLocalReturnHandlingWith:", "visitIRMethod:", "hasNonLocalReturn", "scope", "arguments"]}),
-smalltalk.IRJSTranslator);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitIRNonLocalReturn:",
-fn: function (anIRNonLocalReturn){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._stream())._nextPutNonLocalReturnWith_((function(){
-return smalltalk.withContext(function($ctx2) {
-return smalltalk.IRJSTranslator.superclass.fn.prototype._visitIRNonLocalReturn_.apply(_st(self), [anIRNonLocalReturn]);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"visitIRNonLocalReturn:",{anIRNonLocalReturn:anIRNonLocalReturn},smalltalk.IRJSTranslator)})},
-messageSends: ["nextPutNonLocalReturnWith:", "visitIRNonLocalReturn:", "stream"]}),
-smalltalk.IRJSTranslator);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitIRReturn:",
-fn: function (anIRReturn){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._stream())._nextPutReturnWith_((function(){
-return smalltalk.withContext(function($ctx2) {
-return smalltalk.IRJSTranslator.superclass.fn.prototype._visitIRReturn_.apply(_st(self), [anIRReturn]);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"visitIRReturn:",{anIRReturn:anIRReturn},smalltalk.IRJSTranslator)})},
-messageSends: ["nextPutReturnWith:", "visitIRReturn:", "stream"]}),
-smalltalk.IRJSTranslator);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitIRSend:",
-fn: function (anIRSend){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(anIRSend)._classSend();
-if(($receiver = $1) == nil || $receiver == undefined){
-self._visitSend_(anIRSend);
-} else {
-self._visitSuperSend_(anIRSend);
-};
-return self}, function($ctx1) {$ctx1.fill(self,"visitIRSend:",{anIRSend:anIRSend},smalltalk.IRJSTranslator)})},
-messageSends: ["ifNil:ifNotNil:", "visitSend:", "visitSuperSend:", "classSend"]}),
-smalltalk.IRJSTranslator);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitIRSequence:",
-fn: function (anIRSequence){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._stream())._nextPutSequenceWith_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(anIRSequence)._instructions())._do_((function(each){
-return smalltalk.withContext(function($ctx3) {
-return _st(self._stream())._nextPutStatementWith_(self._visit_(each));
-}, function($ctx3) {$ctx3.fillBlock({each:each},$ctx2)})}));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"visitIRSequence:",{anIRSequence:anIRSequence},smalltalk.IRJSTranslator)})},
-messageSends: ["nextPutSequenceWith:", "do:", "nextPutStatementWith:", "visit:", "stream", "instructions"]}),
-smalltalk.IRJSTranslator);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitIRTempDeclaration:",
-fn: function (anIRTempDeclaration){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self}, function($ctx1) {$ctx1.fill(self,"visitIRTempDeclaration:",{anIRTempDeclaration:anIRTempDeclaration},smalltalk.IRJSTranslator)})},
-messageSends: []}),
-smalltalk.IRJSTranslator);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitIRValue:",
-fn: function (anIRValue){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._stream())._nextPutAll_(_st(_st(anIRValue)._value())._asJavascript());
-return self}, function($ctx1) {$ctx1.fill(self,"visitIRValue:",{anIRValue:anIRValue},smalltalk.IRJSTranslator)})},
-messageSends: ["nextPutAll:", "asJavascript", "value", "stream"]}),
-smalltalk.IRJSTranslator);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitIRVariable:",
-fn: function (anIRVariable){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(_st(anIRVariable)._variable())._name()).__eq("thisContext");
-if(smalltalk.assert($1)){
-_st(self._stream())._nextPutAll_("smalltalk.getThisContext()");
-} else {
-_st(self._stream())._nextPutAll_(_st(_st(anIRVariable)._variable())._alias());
-};
-return self}, function($ctx1) {$ctx1.fill(self,"visitIRVariable:",{anIRVariable:anIRVariable},smalltalk.IRJSTranslator)})},
-messageSends: ["ifTrue:ifFalse:", "nextPutAll:", "stream", "alias", "variable", "=", "name"]}),
-smalltalk.IRJSTranslator);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitIRVerbatim:",
-fn: function (anIRVerbatim){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._stream())._nextPutStatementWith_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(self._stream())._nextPutAll_(_st(anIRVerbatim)._source());
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"visitIRVerbatim:",{anIRVerbatim:anIRVerbatim},smalltalk.IRJSTranslator)})},
-messageSends: ["nextPutStatementWith:", "nextPutAll:", "source", "stream"]}),
-smalltalk.IRJSTranslator);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitReceiver:",
-fn: function (anIRInstruction){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st(anIRInstruction)._needsBoxingAsReceiver();
-if(! smalltalk.assert($1)){
-$2=self._visit_(anIRInstruction);
-return $2;
-};
-_st(self._stream())._nextPutAll_("_st(");
-self._visit_(anIRInstruction);
-_st(self._stream())._nextPutAll_(")");
-return self}, function($ctx1) {$ctx1.fill(self,"visitReceiver:",{anIRInstruction:anIRInstruction},smalltalk.IRJSTranslator)})},
-messageSends: ["ifFalse:", "visit:", "needsBoxingAsReceiver", "nextPutAll:", "stream"]}),
-smalltalk.IRJSTranslator);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitSend:",
-fn: function (anIRSend){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._visitReceiver_(_st(_st(anIRSend)._instructions())._first());
-_st(self._stream())._nextPutAll_(_st(".".__comma(_st(_st(anIRSend)._selector())._asSelector())).__comma("("));
-_st(_st(_st(anIRSend)._instructions())._allButFirst())._do_separatedBy_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return self._visit_(each);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}),(function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(self._stream())._nextPutAll_(",");
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-_st(self._stream())._nextPutAll_(")");
-return self}, function($ctx1) {$ctx1.fill(self,"visitSend:",{anIRSend:anIRSend},smalltalk.IRJSTranslator)})},
-messageSends: ["visitReceiver:", "first", "instructions", "nextPutAll:", ",", "asSelector", "selector", "stream", "do:separatedBy:", "visit:", "allButFirst"]}),
-smalltalk.IRJSTranslator);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitSuperSend:",
-fn: function (anIRSend){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=self._stream();
-_st($1)._nextPutAll_(_st(self._currentClass())._asJavascript());
-_st($1)._nextPutAll_(".superclass.fn.prototype.");
-_st($1)._nextPutAll_(_st(_st(_st(anIRSend)._selector())._asSelector()).__comma(".apply("));
-$2=_st($1)._nextPutAll_("_st(");
-self._visit_(_st(_st(anIRSend)._instructions())._first());
-_st(self._stream())._nextPutAll_("), [");
-_st(_st(_st(anIRSend)._instructions())._allButFirst())._do_separatedBy_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return self._visit_(each);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}),(function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(self._stream())._nextPutAll_(",");
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-_st(self._stream())._nextPutAll_("])");
-return self}, function($ctx1) {$ctx1.fill(self,"visitSuperSend:",{anIRSend:anIRSend},smalltalk.IRJSTranslator)})},
-messageSends: ["nextPutAll:", "asJavascript", "currentClass", "stream", ",", "asSelector", "selector", "visit:", "first", "instructions", "do:separatedBy:", "allButFirst"]}),
-smalltalk.IRJSTranslator);
-
-
-
-smalltalk.addClass('JSStream', smalltalk.Object, ['stream'], 'Compiler-IR');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "contents",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self["@stream"])._contents();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"contents",{},smalltalk.JSStream)})},
-messageSends: ["contents"]}),
-smalltalk.JSStream);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "initialize",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-smalltalk.JSStream.superclass.fn.prototype._initialize.apply(_st(self), []);
-self["@stream"]=""._writeStream();
-return self}, function($ctx1) {$ctx1.fill(self,"initialize",{},smalltalk.JSStream)})},
-messageSends: ["initialize", "writeStream"]}),
-smalltalk.JSStream);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "lf",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self["@stream"])._lf();
-return self}, function($ctx1) {$ctx1.fill(self,"lf",{},smalltalk.JSStream)})},
-messageSends: ["lf"]}),
-smalltalk.JSStream);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "nextPut:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self["@stream"])._nextPut_(aString);
-return self}, function($ctx1) {$ctx1.fill(self,"nextPut:",{aString:aString},smalltalk.JSStream)})},
-messageSends: ["nextPut:"]}),
-smalltalk.JSStream);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "nextPutAll:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self["@stream"])._nextPutAll_(aString);
-return self}, function($ctx1) {$ctx1.fill(self,"nextPutAll:",{aString:aString},smalltalk.JSStream)})},
-messageSends: ["nextPutAll:"]}),
-smalltalk.JSStream);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "nextPutAssignment",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self["@stream"])._nextPutAll_("=");
-return self}, function($ctx1) {$ctx1.fill(self,"nextPutAssignment",{},smalltalk.JSStream)})},
-messageSends: ["nextPutAll:"]}),
-smalltalk.JSStream);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "nextPutBlockContextFor:during:",
-fn: function (anIRClosure,aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4,$5,$6,$7,$8;
-$1=self;
-_st($1)._nextPutAll_(_st("return smalltalk.withContext(function(".__comma(_st(_st(anIRClosure)._scope())._alias())).__comma(") {"));
-$2=_st($1)._lf();
-_st(aBlock)._value();
-$3=self;
-_st($3)._nextPutAll_(_st("}, function(".__comma(_st(_st(anIRClosure)._scope())._alias())).__comma(") {"));
-$4=_st($3)._nextPutAll_(_st(_st(_st(anIRClosure)._scope())._alias()).__comma(".fillBlock({"));
-_st(_st(anIRClosure)._locals())._do_separatedBy_((function(each){
-return smalltalk.withContext(function($ctx2) {
-$5=self;
-_st($5)._nextPutAll_(_st(each)._asVariableName());
-_st($5)._nextPutAll_(":");
-$6=_st($5)._nextPutAll_(_st(each)._asVariableName());
-return $6;
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}),(function(){
-return smalltalk.withContext(function($ctx2) {
-return self._nextPutAll_(",");
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-$7=self;
-_st($7)._nextPutAll_("},");
-$8=_st($7)._nextPutAll_(_st(_st(_st(_st(anIRClosure)._scope())._outerScope())._alias()).__comma(")})"));
-return self}, function($ctx1) {$ctx1.fill(self,"nextPutBlockContextFor:during:",{anIRClosure:anIRClosure,aBlock:aBlock},smalltalk.JSStream)})},
-messageSends: ["nextPutAll:", ",", "alias", "scope", "lf", "value", "do:separatedBy:", "asVariableName", "locals", "outerScope"]}),
-smalltalk.JSStream);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "nextPutClassRefFunction:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=self["@stream"];
-_st($1)._nextPutAll_("function $");
-_st($1)._nextPutAll_(aString);
-_st($1)._nextPutAll_("(){return smalltalk.");
-_st($1)._nextPutAll_(aString);
-_st($1)._nextPutAll_("||(typeof ");
-_st($1)._nextPutAll_(aString);
-_st($1)._nextPutAll_("==\x22undefined\x22?nil:");
-_st($1)._nextPutAll_(aString);
-_st($1)._nextPutAll_(")}");
-$2=_st($1)._lf();
-return self}, function($ctx1) {$ctx1.fill(self,"nextPutClassRefFunction:",{aString:aString},smalltalk.JSStream)})},
-messageSends: ["nextPutAll:", "lf"]}),
-smalltalk.JSStream);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "nextPutClosureWith:arguments:",
-fn: function (aBlock,anArray){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-_st(self["@stream"])._nextPutAll_("(function(");
-_st(anArray)._do_separatedBy_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(self["@stream"])._nextPutAll_(_st(each)._asVariableName());
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}),(function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(self["@stream"])._nextPut_(",");
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-$1=self["@stream"];
-_st($1)._nextPutAll_("){");
-$2=_st($1)._lf();
-_st(aBlock)._value();
-_st(self["@stream"])._nextPutAll_("})");
-return self}, function($ctx1) {$ctx1.fill(self,"nextPutClosureWith:arguments:",{aBlock:aBlock,anArray:anArray},smalltalk.JSStream)})},
-messageSends: ["nextPutAll:", "do:separatedBy:", "asVariableName", "nextPut:", "lf", "value"]}),
-smalltalk.JSStream);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "nextPutContextFor:during:",
-fn: function (aMethod,aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4,$5,$6,$7,$8;
-$1=self;
-_st($1)._nextPutAll_(_st("return smalltalk.withContext(function(".__comma(_st(_st(aMethod)._scope())._alias())).__comma(") { "));
-$2=_st($1)._lf();
-_st(aBlock)._value();
-$3=self;
-_st($3)._nextPutAll_(_st(_st("}, function(".__comma(_st(_st(aMethod)._scope())._alias())).__comma(") {")).__comma(_st(_st(aMethod)._scope())._alias()));
-$4=_st($3)._nextPutAll_(_st(".fill(self,".__comma(_st(_st(aMethod)._selector())._asJavascript())).__comma(",{"));
-_st(_st(aMethod)._locals())._do_separatedBy_((function(each){
-return smalltalk.withContext(function($ctx2) {
-$5=self;
-_st($5)._nextPutAll_(_st(each)._asVariableName());
-_st($5)._nextPutAll_(":");
-$6=_st($5)._nextPutAll_(_st(each)._asVariableName());
-return $6;
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}),(function(){
-return smalltalk.withContext(function($ctx2) {
-return self._nextPutAll_(",");
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-$7=self;
-_st($7)._nextPutAll_("},");
-_st($7)._nextPutAll_(_st(_st(aMethod)._theClass())._asJavascript());
-$8=_st($7)._nextPutAll_(")})");
-return self}, function($ctx1) {$ctx1.fill(self,"nextPutContextFor:during:",{aMethod:aMethod,aBlock:aBlock},smalltalk.JSStream)})},
-messageSends: ["nextPutAll:", ",", "alias", "scope", "lf", "value", "asJavascript", "selector", "do:separatedBy:", "asVariableName", "locals", "theClass"]}),
-smalltalk.JSStream);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "nextPutFunctionWith:arguments:",
-fn: function (aBlock,anArray){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4;
-_st(self["@stream"])._nextPutAll_("fn: function(");
-_st(anArray)._do_separatedBy_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(self["@stream"])._nextPutAll_(_st(each)._asVariableName());
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}),(function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(self["@stream"])._nextPut_(",");
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-$1=self["@stream"];
-_st($1)._nextPutAll_("){");
-$2=_st($1)._lf();
-$3=self["@stream"];
-_st($3)._nextPutAll_("var self=this;");
-$4=_st($3)._lf();
-_st(aBlock)._value();
-_st(self["@stream"])._nextPutAll_("}");
-return self}, function($ctx1) {$ctx1.fill(self,"nextPutFunctionWith:arguments:",{aBlock:aBlock,anArray:anArray},smalltalk.JSStream)})},
-messageSends: ["nextPutAll:", "do:separatedBy:", "asVariableName", "nextPut:", "lf", "value"]}),
-smalltalk.JSStream);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "nextPutIf:with:",
-fn: function (aBlock,anotherBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-_st(self["@stream"])._nextPutAll_("if(");
-_st(aBlock)._value();
-$1=self["@stream"];
-_st($1)._nextPutAll_("){");
-$2=_st($1)._lf();
-_st(anotherBlock)._value();
-_st(self["@stream"])._nextPutAll_("}");
-return self}, function($ctx1) {$ctx1.fill(self,"nextPutIf:with:",{aBlock:aBlock,anotherBlock:anotherBlock},smalltalk.JSStream)})},
-messageSends: ["nextPutAll:", "value", "lf"]}),
-smalltalk.JSStream);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "nextPutIfElse:with:with:",
-fn: function (aBlock,ifBlock,elseBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4;
-_st(self["@stream"])._nextPutAll_("if(");
-_st(aBlock)._value();
-$1=self["@stream"];
-_st($1)._nextPutAll_("){");
-$2=_st($1)._lf();
-_st(ifBlock)._value();
-$3=self["@stream"];
-_st($3)._nextPutAll_("} else {");
-$4=_st($3)._lf();
-_st(elseBlock)._value();
-_st(self["@stream"])._nextPutAll_("}");
-return self}, function($ctx1) {$ctx1.fill(self,"nextPutIfElse:with:with:",{aBlock:aBlock,ifBlock:ifBlock,elseBlock:elseBlock},smalltalk.JSStream)})},
-messageSends: ["nextPutAll:", "value", "lf"]}),
-smalltalk.JSStream);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "nextPutMethodDeclaration:with:",
-fn: function (aMethod,aBlock){
-var self=this;
-function $String(){return smalltalk.String||(typeof String=="undefined"?nil:String)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4,$5,$6;
-$1=self["@stream"];
-_st($1)._nextPutAll_("smalltalk.method({");
-_st($1)._lf();
-_st($1)._nextPutAll_(_st("selector: ".__comma(_st(_st(aMethod)._selector())._asJavascript())).__comma(","));
-_st($1)._lf();
-_st($1)._nextPutAll_(_st("source: ".__comma(_st(_st(aMethod)._source())._asJavascript())).__comma(","));
-$2=_st($1)._lf();
-_st(aBlock)._value();
-$3=self["@stream"];
-_st($3)._nextPutAll_(_st(",".__comma(_st($String())._lf())).__comma("messageSends: "));
-_st($3)._nextPutAll_(_st(_st(_st(_st(aMethod)._messageSends())._asArray())._asJavascript()).__comma(","));
-_st($3)._lf();
-_st($3)._nextPutAll_(_st("args: ".__comma(_st(_st(_st(_st(aMethod)._arguments())._collect_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(each)._value();
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})})))._asArray())._asJavascript())).__comma(","));
-_st($3)._lf();
-$4=_st($3)._nextPutAll_("referencedClasses: [");
-_st(_st(aMethod)._classReferences())._do_separatedBy_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(self["@stream"])._nextPutAll_(_st(each)._asJavascript());
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}),(function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(self["@stream"])._nextPutAll_(",");
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-$5=self["@stream"];
-_st($5)._nextPutAll_("]");
-$6=_st($5)._nextPutAll_("})");
-return self}, function($ctx1) {$ctx1.fill(self,"nextPutMethodDeclaration:with:",{aMethod:aMethod,aBlock:aBlock},smalltalk.JSStream)})},
-messageSends: ["nextPutAll:", "lf", ",", "asJavascript", "selector", "source", "value", "asArray", "messageSends", "collect:", "arguments", "do:separatedBy:", "classReferences"]}),
-smalltalk.JSStream);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "nextPutNonLocalReturnHandlingWith:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4;
-$1=self["@stream"];
-_st($1)._nextPutAll_("var $early={};");
-_st($1)._lf();
-_st($1)._nextPutAll_("try {");
-$2=_st($1)._lf();
-_st(aBlock)._value();
-$3=self["@stream"];
-_st($3)._nextPutAll_("}");
-_st($3)._lf();
-_st($3)._nextPutAll_("catch(e) {if(e===$early)return e[0]; throw e}");
-$4=_st($3)._lf();
-return self}, function($ctx1) {$ctx1.fill(self,"nextPutNonLocalReturnHandlingWith:",{aBlock:aBlock},smalltalk.JSStream)})},
-messageSends: ["nextPutAll:", "lf", "value"]}),
-smalltalk.JSStream);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "nextPutNonLocalReturnWith:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self["@stream"])._nextPutAll_("throw $early=[");
-_st(aBlock)._value();
-_st(self["@stream"])._nextPutAll_("]");
-return self}, function($ctx1) {$ctx1.fill(self,"nextPutNonLocalReturnWith:",{aBlock:aBlock},smalltalk.JSStream)})},
-messageSends: ["nextPutAll:", "value"]}),
-smalltalk.JSStream);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "nextPutReturn",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self["@stream"])._nextPutAll_("return ");
-return self}, function($ctx1) {$ctx1.fill(self,"nextPutReturn",{},smalltalk.JSStream)})},
-messageSends: ["nextPutAll:"]}),
-smalltalk.JSStream);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "nextPutReturnWith:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._nextPutReturn();
-_st(aBlock)._value();
-return self}, function($ctx1) {$ctx1.fill(self,"nextPutReturnWith:",{aBlock:aBlock},smalltalk.JSStream)})},
-messageSends: ["nextPutReturn", "value"]}),
-smalltalk.JSStream);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "nextPutSequenceWith:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(aBlock)._value();
-return self}, function($ctx1) {$ctx1.fill(self,"nextPutSequenceWith:",{aBlock:aBlock},smalltalk.JSStream)})},
-messageSends: ["value"]}),
-smalltalk.JSStream);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "nextPutStatement:with:",
-fn: function (anInteger,aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4;
-$1=self["@stream"];
-_st($1)._nextPutAll_(_st("case ".__comma(_st(anInteger)._asString())).__comma(":"));
-$2=_st($1)._lf();
-self._nextPutStatementWith_(aBlock);
-$3=self["@stream"];
-_st($3)._nextPutAll_(_st("smalltalk.thisContext.pc=".__comma(_st(_st(anInteger).__plus((1)))._asString())).__comma(";"));
-$4=_st($3)._lf();
-return self}, function($ctx1) {$ctx1.fill(self,"nextPutStatement:with:",{anInteger:anInteger,aBlock:aBlock},smalltalk.JSStream)})},
-messageSends: ["nextPutAll:", ",", "asString", "lf", "nextPutStatementWith:", "+"]}),
-smalltalk.JSStream);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "nextPutStatementWith:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-_st(aBlock)._value();
-$1=self["@stream"];
-_st($1)._nextPutAll_(";");
-$2=_st($1)._lf();
-return self}, function($ctx1) {$ctx1.fill(self,"nextPutStatementWith:",{aBlock:aBlock},smalltalk.JSStream)})},
-messageSends: ["value", "nextPutAll:", "lf"]}),
-smalltalk.JSStream);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "nextPutVars:",
-fn: function (aCollection){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3;
-var $early={};
-try {
-_st(aCollection)._ifEmpty_((function(){
-return smalltalk.withContext(function($ctx2) {
-$1=self;
-throw $early=[$1];
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-_st(self["@stream"])._nextPutAll_("var ");
-_st(aCollection)._do_separatedBy_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(self["@stream"])._nextPutAll_(each);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}),(function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(self["@stream"])._nextPutAll_(",");
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-$2=self["@stream"];
-_st($2)._nextPutAll_(";");
-$3=_st($2)._lf();
-return self}
-catch(e) {if(e===$early)return e[0]; throw e}
-}, function($ctx1) {$ctx1.fill(self,"nextPutVars:",{aCollection:aCollection},smalltalk.JSStream)})},
-messageSends: ["ifEmpty:", "nextPutAll:", "do:separatedBy:", "lf"]}),
-smalltalk.JSStream);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "appendToInstruction:",
-fn: function (anIRInstruction){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(anIRInstruction)._appendBlock_(self);
-return self}, function($ctx1) {$ctx1.fill(self,"appendToInstruction:",{anIRInstruction:anIRInstruction},smalltalk.BlockClosure)})},
-messageSends: ["appendBlock:"]}),
-smalltalk.BlockClosure);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "asVariableName",
-fn: function (){
-var self=this;
-function $Smalltalk(){return smalltalk.Smalltalk||(typeof Smalltalk=="undefined"?nil:Smalltalk)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=_st(_st(_st($Smalltalk())._current())._reservedWords())._includes_(self);
-if(smalltalk.assert($2)){
-$1=self.__comma("_");
-} else {
-$1=self;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"asVariableName",{},smalltalk.String)})},
-messageSends: ["ifTrue:ifFalse:", ",", "includes:", "reservedWords", "current"]}),
-smalltalk.String);
-
-});

+ 0 - 1162
js/Compiler-Inlining.deploy.js

@@ -1,1162 +0,0 @@
-define("amber/Compiler-Inlining", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/Compiler-IR", "amber/Kernel-Objects", "amber/Compiler-Core"], function(smalltalk,nil,_st){
-smalltalk.addPackage('Compiler-Inlining');
-smalltalk.packages["Compiler-Inlining"].transport = {"type":"amd","amdNamespace":"amber"};
-
-smalltalk.addClass('IRInlinedAssignment', smalltalk.IRAssignment, [], 'Compiler-Inlining');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "accept:",
-fn: function (aVisitor){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(aVisitor)._visitIRInlinedAssignment_(self);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"accept:",{aVisitor:aVisitor},smalltalk.IRInlinedAssignment)})},
-messageSends: ["visitIRInlinedAssignment:"]}),
-smalltalk.IRInlinedAssignment);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isInlined",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"isInlined",{},smalltalk.IRInlinedAssignment)})},
-messageSends: []}),
-smalltalk.IRInlinedAssignment);
-
-
-
-smalltalk.addClass('IRInlinedClosure', smalltalk.IRClosure, [], 'Compiler-Inlining');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "accept:",
-fn: function (aVisitor){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(aVisitor)._visitIRInlinedClosure_(self);
-return self}, function($ctx1) {$ctx1.fill(self,"accept:",{aVisitor:aVisitor},smalltalk.IRInlinedClosure)})},
-messageSends: ["visitIRInlinedClosure:"]}),
-smalltalk.IRInlinedClosure);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isInlined",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"isInlined",{},smalltalk.IRInlinedClosure)})},
-messageSends: []}),
-smalltalk.IRInlinedClosure);
-
-
-
-smalltalk.addClass('IRInlinedReturn', smalltalk.IRReturn, [], 'Compiler-Inlining');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "accept:",
-fn: function (aVisitor){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(aVisitor)._visitIRInlinedReturn_(self);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"accept:",{aVisitor:aVisitor},smalltalk.IRInlinedReturn)})},
-messageSends: ["visitIRInlinedReturn:"]}),
-smalltalk.IRInlinedReturn);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isInlined",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"isInlined",{},smalltalk.IRInlinedReturn)})},
-messageSends: []}),
-smalltalk.IRInlinedReturn);
-
-
-
-smalltalk.addClass('IRInlinedSend', smalltalk.IRSend, [], 'Compiler-Inlining');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "accept:",
-fn: function (aVisitor){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(aVisitor)._visitInlinedSend_(self);
-return self}, function($ctx1) {$ctx1.fill(self,"accept:",{aVisitor:aVisitor},smalltalk.IRInlinedSend)})},
-messageSends: ["visitInlinedSend:"]}),
-smalltalk.IRInlinedSend);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isInlined",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"isInlined",{},smalltalk.IRInlinedSend)})},
-messageSends: []}),
-smalltalk.IRInlinedSend);
-
-
-
-smalltalk.addClass('IRInlinedIfFalse', smalltalk.IRInlinedSend, [], 'Compiler-Inlining');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "accept:",
-fn: function (aVisitor){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(aVisitor)._visitIRInlinedIfFalse_(self);
-return self}, function($ctx1) {$ctx1.fill(self,"accept:",{aVisitor:aVisitor},smalltalk.IRInlinedIfFalse)})},
-messageSends: ["visitIRInlinedIfFalse:"]}),
-smalltalk.IRInlinedIfFalse);
-
-
-
-smalltalk.addClass('IRInlinedIfNilIfNotNil', smalltalk.IRInlinedSend, [], 'Compiler-Inlining');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "accept:",
-fn: function (aVisitor){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(aVisitor)._visitIRInlinedIfNilIfNotNil_(self);
-return self}, function($ctx1) {$ctx1.fill(self,"accept:",{aVisitor:aVisitor},smalltalk.IRInlinedIfNilIfNotNil)})},
-messageSends: ["visitIRInlinedIfNilIfNotNil:"]}),
-smalltalk.IRInlinedIfNilIfNotNil);
-
-
-
-smalltalk.addClass('IRInlinedIfTrue', smalltalk.IRInlinedSend, [], 'Compiler-Inlining');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "accept:",
-fn: function (aVisitor){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(aVisitor)._visitIRInlinedIfTrue_(self);
-return self}, function($ctx1) {$ctx1.fill(self,"accept:",{aVisitor:aVisitor},smalltalk.IRInlinedIfTrue)})},
-messageSends: ["visitIRInlinedIfTrue:"]}),
-smalltalk.IRInlinedIfTrue);
-
-
-
-smalltalk.addClass('IRInlinedIfTrueIfFalse', smalltalk.IRInlinedSend, [], 'Compiler-Inlining');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "accept:",
-fn: function (aVisitor){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(aVisitor)._visitIRInlinedIfTrueIfFalse_(self);
-return self}, function($ctx1) {$ctx1.fill(self,"accept:",{aVisitor:aVisitor},smalltalk.IRInlinedIfTrueIfFalse)})},
-messageSends: ["visitIRInlinedIfTrueIfFalse:"]}),
-smalltalk.IRInlinedIfTrueIfFalse);
-
-
-
-smalltalk.addClass('IRInlinedSequence', smalltalk.IRBlockSequence, [], 'Compiler-Inlining');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "accept:",
-fn: function (aVisitor){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(aVisitor)._visitIRInlinedSequence_(self);
-return self}, function($ctx1) {$ctx1.fill(self,"accept:",{aVisitor:aVisitor},smalltalk.IRInlinedSequence)})},
-messageSends: ["visitIRInlinedSequence:"]}),
-smalltalk.IRInlinedSequence);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isInlined",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"isInlined",{},smalltalk.IRInlinedSequence)})},
-messageSends: []}),
-smalltalk.IRInlinedSequence);
-
-
-
-smalltalk.addClass('IRInliner', smalltalk.IRVisitor, [], 'Compiler-Inlining');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "assignmentInliner",
-fn: function (){
-var self=this;
-function $IRAssignmentInliner(){return smalltalk.IRAssignmentInliner||(typeof IRAssignmentInliner=="undefined"?nil:IRAssignmentInliner)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=_st($IRAssignmentInliner())._new();
-_st($2)._translator_(self);
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"assignmentInliner",{},smalltalk.IRInliner)})},
-messageSends: ["translator:", "new", "yourself"]}),
-smalltalk.IRInliner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "returnInliner",
-fn: function (){
-var self=this;
-function $IRReturnInliner(){return smalltalk.IRReturnInliner||(typeof IRReturnInliner=="undefined"?nil:IRReturnInliner)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=_st($IRReturnInliner())._new();
-_st($2)._translator_(self);
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"returnInliner",{},smalltalk.IRInliner)})},
-messageSends: ["translator:", "new", "yourself"]}),
-smalltalk.IRInliner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "sendInliner",
-fn: function (){
-var self=this;
-function $IRSendInliner(){return smalltalk.IRSendInliner||(typeof IRSendInliner=="undefined"?nil:IRSendInliner)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=_st($IRSendInliner())._new();
-_st($2)._translator_(self);
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"sendInliner",{},smalltalk.IRInliner)})},
-messageSends: ["translator:", "new", "yourself"]}),
-smalltalk.IRInliner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "shouldInlineAssignment:",
-fn: function (anIRAssignment){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(_st(anIRAssignment)._isInlined())._not())._and_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(_st(_st(anIRAssignment)._instructions())._last())._isSend())._and_((function(){
-return smalltalk.withContext(function($ctx3) {
-return self._shouldInlineSend_(_st(_st(anIRAssignment)._instructions())._last());
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"shouldInlineAssignment:",{anIRAssignment:anIRAssignment},smalltalk.IRInliner)})},
-messageSends: ["and:", "shouldInlineSend:", "last", "instructions", "isSend", "not", "isInlined"]}),
-smalltalk.IRInliner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "shouldInlineReturn:",
-fn: function (anIRReturn){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(_st(anIRReturn)._isInlined())._not())._and_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(_st(_st(anIRReturn)._instructions())._first())._isSend())._and_((function(){
-return smalltalk.withContext(function($ctx3) {
-return self._shouldInlineSend_(_st(_st(anIRReturn)._instructions())._first());
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"shouldInlineReturn:",{anIRReturn:anIRReturn},smalltalk.IRInliner)})},
-messageSends: ["and:", "shouldInlineSend:", "first", "instructions", "isSend", "not", "isInlined"]}),
-smalltalk.IRInliner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "shouldInlineSend:",
-fn: function (anIRSend){
-var self=this;
-function $IRSendInliner(){return smalltalk.IRSendInliner||(typeof IRSendInliner=="undefined"?nil:IRSendInliner)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(_st(anIRSend)._isInlined())._not())._and_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st($IRSendInliner())._shouldInline_(anIRSend);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"shouldInlineSend:",{anIRSend:anIRSend},smalltalk.IRInliner)})},
-messageSends: ["and:", "shouldInline:", "not", "isInlined"]}),
-smalltalk.IRInliner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "transformNonLocalReturn:",
-fn: function (anIRNonLocalReturn){
-var self=this;
-var localReturn;
-function $IRReturn(){return smalltalk.IRReturn||(typeof IRReturn=="undefined"?nil:IRReturn)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4,$5;
-$1=_st(_st(anIRNonLocalReturn)._scope())._canInlineNonLocalReturns();
-if(smalltalk.assert($1)){
-_st(_st(_st(anIRNonLocalReturn)._scope())._methodScope())._removeNonLocalReturn_(_st(anIRNonLocalReturn)._scope());
-$2=_st($IRReturn())._new();
-_st($2)._scope_(_st(anIRNonLocalReturn)._scope());
-$3=_st($2)._yourself();
-localReturn=$3;
-localReturn;
-_st(_st(anIRNonLocalReturn)._instructions())._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(localReturn)._add_(each);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-_st(anIRNonLocalReturn)._replaceWith_(localReturn);
-$4=localReturn;
-return $4;
-};
-$5=smalltalk.IRInliner.superclass.fn.prototype._visitIRNonLocalReturn_.apply(_st(self), [anIRNonLocalReturn]);
-return $5;
-}, function($ctx1) {$ctx1.fill(self,"transformNonLocalReturn:",{anIRNonLocalReturn:anIRNonLocalReturn,localReturn:localReturn},smalltalk.IRInliner)})},
-messageSends: ["ifTrue:", "removeNonLocalReturn:", "scope", "methodScope", "scope:", "new", "yourself", "do:", "add:", "instructions", "replaceWith:", "canInlineNonLocalReturns", "visitIRNonLocalReturn:"]}),
-smalltalk.IRInliner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitIRAssignment:",
-fn: function (anIRAssignment){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self._shouldInlineAssignment_(anIRAssignment);
-if(smalltalk.assert($2)){
-$1=_st(self._assignmentInliner())._inlineAssignment_(anIRAssignment);
-} else {
-$1=smalltalk.IRInliner.superclass.fn.prototype._visitIRAssignment_.apply(_st(self), [anIRAssignment]);
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"visitIRAssignment:",{anIRAssignment:anIRAssignment},smalltalk.IRInliner)})},
-messageSends: ["ifTrue:ifFalse:", "inlineAssignment:", "assignmentInliner", "visitIRAssignment:", "shouldInlineAssignment:"]}),
-smalltalk.IRInliner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitIRNonLocalReturn:",
-fn: function (anIRNonLocalReturn){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._transformNonLocalReturn_(anIRNonLocalReturn);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"visitIRNonLocalReturn:",{anIRNonLocalReturn:anIRNonLocalReturn},smalltalk.IRInliner)})},
-messageSends: ["transformNonLocalReturn:"]}),
-smalltalk.IRInliner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitIRReturn:",
-fn: function (anIRReturn){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self._shouldInlineReturn_(anIRReturn);
-if(smalltalk.assert($2)){
-$1=_st(self._returnInliner())._inlineReturn_(anIRReturn);
-} else {
-$1=smalltalk.IRInliner.superclass.fn.prototype._visitIRReturn_.apply(_st(self), [anIRReturn]);
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"visitIRReturn:",{anIRReturn:anIRReturn},smalltalk.IRInliner)})},
-messageSends: ["ifTrue:ifFalse:", "inlineReturn:", "returnInliner", "visitIRReturn:", "shouldInlineReturn:"]}),
-smalltalk.IRInliner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitIRSend:",
-fn: function (anIRSend){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self._shouldInlineSend_(anIRSend);
-if(smalltalk.assert($2)){
-$1=_st(self._sendInliner())._inlineSend_(anIRSend);
-} else {
-$1=smalltalk.IRInliner.superclass.fn.prototype._visitIRSend_.apply(_st(self), [anIRSend]);
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"visitIRSend:",{anIRSend:anIRSend},smalltalk.IRInliner)})},
-messageSends: ["ifTrue:ifFalse:", "inlineSend:", "sendInliner", "visitIRSend:", "shouldInlineSend:"]}),
-smalltalk.IRInliner);
-
-
-
-smalltalk.addClass('IRInliningJSTranslator', smalltalk.IRJSTranslator, [], 'Compiler-Inlining');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitIRInlinedAssignment:",
-fn: function (anIRInlinedAssignment){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._visit_(_st(_st(anIRInlinedAssignment)._instructions())._last());
-return self}, function($ctx1) {$ctx1.fill(self,"visitIRInlinedAssignment:",{anIRInlinedAssignment:anIRInlinedAssignment},smalltalk.IRInliningJSTranslator)})},
-messageSends: ["visit:", "last", "instructions"]}),
-smalltalk.IRInliningJSTranslator);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitIRInlinedClosure:",
-fn: function (anIRInlinedClosure){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._stream())._nextPutVars_(_st(_st(anIRInlinedClosure)._tempDeclarations())._collect_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(each)._name())._asVariableName();
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})})));
-_st(_st(anIRInlinedClosure)._instructions())._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return self._visit_(each);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"visitIRInlinedClosure:",{anIRInlinedClosure:anIRInlinedClosure},smalltalk.IRInliningJSTranslator)})},
-messageSends: ["nextPutVars:", "collect:", "asVariableName", "name", "tempDeclarations", "stream", "do:", "visit:", "instructions"]}),
-smalltalk.IRInliningJSTranslator);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitIRInlinedIfFalse:",
-fn: function (anIRInlinedIfFalse){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._stream())._nextPutIf_with_((function(){
-return smalltalk.withContext(function($ctx2) {
-_st(self._stream())._nextPutAll_("! smalltalk.assert(");
-self._visit_(_st(_st(anIRInlinedIfFalse)._instructions())._first());
-return _st(self._stream())._nextPutAll_(")");
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),(function(){
-return smalltalk.withContext(function($ctx2) {
-return self._visit_(_st(_st(anIRInlinedIfFalse)._instructions())._last());
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"visitIRInlinedIfFalse:",{anIRInlinedIfFalse:anIRInlinedIfFalse},smalltalk.IRInliningJSTranslator)})},
-messageSends: ["nextPutIf:with:", "nextPutAll:", "stream", "visit:", "first", "instructions", "last"]}),
-smalltalk.IRInliningJSTranslator);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitIRInlinedIfNil:",
-fn: function (anIRInlinedIfNil){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._stream())._nextPutIf_with_((function(){
-return smalltalk.withContext(function($ctx2) {
-_st(self._stream())._nextPutAll_("($receiver = ");
-self._visit_(_st(_st(anIRInlinedIfNil)._instructions())._first());
-return _st(self._stream())._nextPutAll_(") == nil || $receiver == undefined");
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),(function(){
-return smalltalk.withContext(function($ctx2) {
-return self._visit_(_st(_st(anIRInlinedIfNil)._instructions())._last());
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"visitIRInlinedIfNil:",{anIRInlinedIfNil:anIRInlinedIfNil},smalltalk.IRInliningJSTranslator)})},
-messageSends: ["nextPutIf:with:", "nextPutAll:", "stream", "visit:", "first", "instructions", "last"]}),
-smalltalk.IRInliningJSTranslator);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitIRInlinedIfNilIfNotNil:",
-fn: function (anIRInlinedIfNilIfNotNil){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._stream())._nextPutIfElse_with_with_((function(){
-return smalltalk.withContext(function($ctx2) {
-_st(self._stream())._nextPutAll_("($receiver = ");
-self._visit_(_st(_st(anIRInlinedIfNilIfNotNil)._instructions())._first());
-return _st(self._stream())._nextPutAll_(") == nil || $receiver == undefined");
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),(function(){
-return smalltalk.withContext(function($ctx2) {
-return self._visit_(_st(_st(anIRInlinedIfNilIfNotNil)._instructions())._second());
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),(function(){
-return smalltalk.withContext(function($ctx2) {
-return self._visit_(_st(_st(anIRInlinedIfNilIfNotNil)._instructions())._third());
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"visitIRInlinedIfNilIfNotNil:",{anIRInlinedIfNilIfNotNil:anIRInlinedIfNilIfNotNil},smalltalk.IRInliningJSTranslator)})},
-messageSends: ["nextPutIfElse:with:with:", "nextPutAll:", "stream", "visit:", "first", "instructions", "second", "third"]}),
-smalltalk.IRInliningJSTranslator);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitIRInlinedIfTrue:",
-fn: function (anIRInlinedIfTrue){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._stream())._nextPutIf_with_((function(){
-return smalltalk.withContext(function($ctx2) {
-_st(self._stream())._nextPutAll_("smalltalk.assert(");
-self._visit_(_st(_st(anIRInlinedIfTrue)._instructions())._first());
-return _st(self._stream())._nextPutAll_(")");
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),(function(){
-return smalltalk.withContext(function($ctx2) {
-return self._visit_(_st(_st(anIRInlinedIfTrue)._instructions())._last());
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"visitIRInlinedIfTrue:",{anIRInlinedIfTrue:anIRInlinedIfTrue},smalltalk.IRInliningJSTranslator)})},
-messageSends: ["nextPutIf:with:", "nextPutAll:", "stream", "visit:", "first", "instructions", "last"]}),
-smalltalk.IRInliningJSTranslator);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitIRInlinedIfTrueIfFalse:",
-fn: function (anIRInlinedIfTrueIfFalse){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._stream())._nextPutIfElse_with_with_((function(){
-return smalltalk.withContext(function($ctx2) {
-_st(self._stream())._nextPutAll_("smalltalk.assert(");
-self._visit_(_st(_st(anIRInlinedIfTrueIfFalse)._instructions())._first());
-return _st(self._stream())._nextPutAll_(")");
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),(function(){
-return smalltalk.withContext(function($ctx2) {
-return self._visit_(_st(_st(anIRInlinedIfTrueIfFalse)._instructions())._second());
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),(function(){
-return smalltalk.withContext(function($ctx2) {
-return self._visit_(_st(_st(anIRInlinedIfTrueIfFalse)._instructions())._third());
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"visitIRInlinedIfTrueIfFalse:",{anIRInlinedIfTrueIfFalse:anIRInlinedIfTrueIfFalse},smalltalk.IRInliningJSTranslator)})},
-messageSends: ["nextPutIfElse:with:with:", "nextPutAll:", "stream", "visit:", "first", "instructions", "second", "third"]}),
-smalltalk.IRInliningJSTranslator);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitIRInlinedNonLocalReturn:",
-fn: function (anIRInlinedReturn){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._stream())._nextPutStatementWith_((function(){
-return smalltalk.withContext(function($ctx2) {
-return self._visit_(_st(_st(anIRInlinedReturn)._instructions())._last());
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-_st(self._stream())._nextPutNonLocalReturnWith_((function(){
-return smalltalk.withContext(function($ctx2) {
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"visitIRInlinedNonLocalReturn:",{anIRInlinedReturn:anIRInlinedReturn},smalltalk.IRInliningJSTranslator)})},
-messageSends: ["nextPutStatementWith:", "visit:", "last", "instructions", "stream", "nextPutNonLocalReturnWith:"]}),
-smalltalk.IRInliningJSTranslator);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitIRInlinedReturn:",
-fn: function (anIRInlinedReturn){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._visit_(_st(_st(anIRInlinedReturn)._instructions())._last());
-return self}, function($ctx1) {$ctx1.fill(self,"visitIRInlinedReturn:",{anIRInlinedReturn:anIRInlinedReturn},smalltalk.IRInliningJSTranslator)})},
-messageSends: ["visit:", "last", "instructions"]}),
-smalltalk.IRInliningJSTranslator);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitIRInlinedSequence:",
-fn: function (anIRInlinedSequence){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(_st(anIRInlinedSequence)._instructions())._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(self._stream())._nextPutStatementWith_((function(){
-return smalltalk.withContext(function($ctx3) {
-return self._visit_(each);
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"visitIRInlinedSequence:",{anIRInlinedSequence:anIRInlinedSequence},smalltalk.IRInliningJSTranslator)})},
-messageSends: ["do:", "nextPutStatementWith:", "visit:", "stream", "instructions"]}),
-smalltalk.IRInliningJSTranslator);
-
-
-
-smalltalk.addClass('IRSendInliner', smalltalk.Object, ['send', 'translator'], 'Compiler-Inlining');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "ifFalse:",
-fn: function (anIRInstruction){
-var self=this;
-function $IRInlinedIfFalse(){return smalltalk.IRInlinedIfFalse||(typeof IRInlinedIfFalse=="undefined"?nil:IRInlinedIfFalse)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._inlinedSend_with_(_st($IRInlinedIfFalse())._new(),anIRInstruction);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"ifFalse:",{anIRInstruction:anIRInstruction},smalltalk.IRSendInliner)})},
-messageSends: ["inlinedSend:with:", "new"]}),
-smalltalk.IRSendInliner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "ifFalse:ifTrue:",
-fn: function (anIRInstruction,anotherIRInstruction){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._perform_withArguments_("ifTrue:ifFalse:",[anotherIRInstruction,anIRInstruction]);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"ifFalse:ifTrue:",{anIRInstruction:anIRInstruction,anotherIRInstruction:anotherIRInstruction},smalltalk.IRSendInliner)})},
-messageSends: ["perform:withArguments:"]}),
-smalltalk.IRSendInliner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "ifNil:",
-fn: function (anIRInstruction){
-var self=this;
-function $IRInlinedIfNilIfNotNil(){return smalltalk.IRInlinedIfNilIfNotNil||(typeof IRInlinedIfNilIfNotNil=="undefined"?nil:IRInlinedIfNilIfNotNil)}
-function $IRClosure(){return smalltalk.IRClosure||(typeof IRClosure=="undefined"?nil:IRClosure)}
-function $IRBlockSequence(){return smalltalk.IRBlockSequence||(typeof IRBlockSequence=="undefined"?nil:IRBlockSequence)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$4,$5,$1;
-$2=_st($IRClosure())._new();
-_st($2)._scope_(_st(_st(anIRInstruction)._scope())._copy());
-$3=_st($IRBlockSequence())._new();
-_st($3)._add_(_st(_st(self._send())._instructions())._first());
-$4=_st($3)._yourself();
-_st($2)._add_($4);
-$5=_st($2)._yourself();
-$1=self._inlinedSend_with_with_(_st($IRInlinedIfNilIfNotNil())._new(),anIRInstruction,$5);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"ifNil:",{anIRInstruction:anIRInstruction},smalltalk.IRSendInliner)})},
-messageSends: ["inlinedSend:with:with:", "new", "scope:", "copy", "scope", "add:", "first", "instructions", "send", "yourself"]}),
-smalltalk.IRSendInliner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "ifNil:ifNotNil:",
-fn: function (anIRInstruction,anotherIRInstruction){
-var self=this;
-function $IRInlinedIfNilIfNotNil(){return smalltalk.IRInlinedIfNilIfNotNil||(typeof IRInlinedIfNilIfNotNil=="undefined"?nil:IRInlinedIfNilIfNotNil)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._inlinedSend_with_with_(_st($IRInlinedIfNilIfNotNil())._new(),anIRInstruction,anotherIRInstruction);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"ifNil:ifNotNil:",{anIRInstruction:anIRInstruction,anotherIRInstruction:anotherIRInstruction},smalltalk.IRSendInliner)})},
-messageSends: ["inlinedSend:with:with:", "new"]}),
-smalltalk.IRSendInliner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "ifNotNil:",
-fn: function (anIRInstruction){
-var self=this;
-function $IRInlinedIfNilIfNotNil(){return smalltalk.IRInlinedIfNilIfNotNil||(typeof IRInlinedIfNilIfNotNil=="undefined"?nil:IRInlinedIfNilIfNotNil)}
-function $IRClosure(){return smalltalk.IRClosure||(typeof IRClosure=="undefined"?nil:IRClosure)}
-function $IRBlockSequence(){return smalltalk.IRBlockSequence||(typeof IRBlockSequence=="undefined"?nil:IRBlockSequence)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$4,$5,$1;
-$2=_st($IRClosure())._new();
-_st($2)._scope_(_st(_st(anIRInstruction)._scope())._copy());
-$3=_st($IRBlockSequence())._new();
-_st($3)._add_(_st(_st(self._send())._instructions())._first());
-$4=_st($3)._yourself();
-_st($2)._add_($4);
-$5=_st($2)._yourself();
-$1=self._inlinedSend_with_with_(_st($IRInlinedIfNilIfNotNil())._new(),$5,anIRInstruction);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"ifNotNil:",{anIRInstruction:anIRInstruction},smalltalk.IRSendInliner)})},
-messageSends: ["inlinedSend:with:with:", "new", "scope:", "copy", "scope", "add:", "first", "instructions", "send", "yourself"]}),
-smalltalk.IRSendInliner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "ifNotNil:ifNil:",
-fn: function (anIRInstruction,anotherIRInstruction){
-var self=this;
-function $IRInlinedIfNilIfNotNil(){return smalltalk.IRInlinedIfNilIfNotNil||(typeof IRInlinedIfNilIfNotNil=="undefined"?nil:IRInlinedIfNilIfNotNil)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._inlinedSend_with_with_(_st($IRInlinedIfNilIfNotNil())._new(),anotherIRInstruction,anIRInstruction);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"ifNotNil:ifNil:",{anIRInstruction:anIRInstruction,anotherIRInstruction:anotherIRInstruction},smalltalk.IRSendInliner)})},
-messageSends: ["inlinedSend:with:with:", "new"]}),
-smalltalk.IRSendInliner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "ifTrue:",
-fn: function (anIRInstruction){
-var self=this;
-function $IRInlinedIfTrue(){return smalltalk.IRInlinedIfTrue||(typeof IRInlinedIfTrue=="undefined"?nil:IRInlinedIfTrue)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._inlinedSend_with_(_st($IRInlinedIfTrue())._new(),anIRInstruction);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"ifTrue:",{anIRInstruction:anIRInstruction},smalltalk.IRSendInliner)})},
-messageSends: ["inlinedSend:with:", "new"]}),
-smalltalk.IRSendInliner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "ifTrue:ifFalse:",
-fn: function (anIRInstruction,anotherIRInstruction){
-var self=this;
-function $IRInlinedIfTrueIfFalse(){return smalltalk.IRInlinedIfTrueIfFalse||(typeof IRInlinedIfTrueIfFalse=="undefined"?nil:IRInlinedIfTrueIfFalse)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._inlinedSend_with_with_(_st($IRInlinedIfTrueIfFalse())._new(),anIRInstruction,anotherIRInstruction);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"ifTrue:ifFalse:",{anIRInstruction:anIRInstruction,anotherIRInstruction:anotherIRInstruction},smalltalk.IRSendInliner)})},
-messageSends: ["inlinedSend:with:with:", "new"]}),
-smalltalk.IRSendInliner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "inlineClosure:",
-fn: function (anIRClosure){
-var self=this;
-var inlinedClosure,sequence,statements;
-function $IRTempDeclaration(){return smalltalk.IRTempDeclaration||(typeof IRTempDeclaration=="undefined"?nil:IRTempDeclaration)}
-function $AliasVar(){return smalltalk.AliasVar||(typeof AliasVar=="undefined"?nil:AliasVar)}
-function $IRVariable(){return smalltalk.IRVariable||(typeof IRVariable=="undefined"?nil:IRVariable)}
-function $IRAssignment(){return smalltalk.IRAssignment||(typeof IRAssignment=="undefined"?nil:IRAssignment)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4,$5,$6,$7,$8,$9,$10;
-inlinedClosure=self._inlinedClosure();
-_st(inlinedClosure)._scope_(_st(anIRClosure)._scope());
-_st(_st(anIRClosure)._tempDeclarations())._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(inlinedClosure)._add_(each);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-sequence=self._inlinedSequence();
-_st(_st(anIRClosure)._arguments())._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-$1=_st($IRTempDeclaration())._new();
-_st($1)._name_(each);
-$2=_st($1)._yourself();
-_st(inlinedClosure)._add_($2);
-$3=_st($IRAssignment())._new();
-$4=_st($AliasVar())._new();
-_st($4)._scope_(_st(inlinedClosure)._scope());
-_st($4)._name_(each);
-$5=_st($4)._yourself();
-_st($3)._add_(_st(_st($IRVariable())._new())._variable_($5));
-$6=_st($AliasVar())._new();
-_st($6)._scope_(_st(inlinedClosure)._scope());
-_st($6)._name_("$receiver");
-$7=_st($6)._yourself();
-_st($3)._add_(_st(_st($IRVariable())._new())._variable_($7));
-$8=_st($3)._yourself();
-return _st(sequence)._add_($8);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-_st(inlinedClosure)._add_(sequence);
-statements=_st(_st(_st(anIRClosure)._instructions())._last())._instructions();
-_st(statements)._ifNotEmpty_((function(){
-return smalltalk.withContext(function($ctx2) {
-_st(_st(statements)._allButLast())._do_((function(each){
-return smalltalk.withContext(function($ctx3) {
-return _st(sequence)._add_(each);
-}, function($ctx3) {$ctx3.fillBlock({each:each},$ctx2)})}));
-$9=_st(_st(_st(statements)._last())._isReturn())._and_((function(){
-return smalltalk.withContext(function($ctx3) {
-return _st(_st(statements)._last())._isBlockReturn();
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-if(smalltalk.assert($9)){
-return _st(sequence)._add_(_st(_st(_st(statements)._last())._instructions())._first());
-} else {
-return _st(sequence)._add_(_st(statements)._last());
-};
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-$10=inlinedClosure;
-return $10;
-}, function($ctx1) {$ctx1.fill(self,"inlineClosure:",{anIRClosure:anIRClosure,inlinedClosure:inlinedClosure,sequence:sequence,statements:statements},smalltalk.IRSendInliner)})},
-messageSends: ["inlinedClosure", "scope:", "scope", "do:", "add:", "tempDeclarations", "inlinedSequence", "name:", "new", "yourself", "variable:", "arguments", "instructions", "last", "ifNotEmpty:", "allButLast", "ifTrue:ifFalse:", "first", "and:", "isBlockReturn", "isReturn"]}),
-smalltalk.IRSendInliner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "inlineSend:",
-fn: function (anIRSend){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-self._send_(anIRSend);
-$1=self._perform_withArguments_(_st(self._send())._selector(),_st(_st(self._send())._instructions())._allButFirst());
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"inlineSend:",{anIRSend:anIRSend},smalltalk.IRSendInliner)})},
-messageSends: ["send:", "perform:withArguments:", "selector", "send", "allButFirst", "instructions"]}),
-smalltalk.IRSendInliner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "inlinedClosure",
-fn: function (){
-var self=this;
-function $IRInlinedClosure(){return smalltalk.IRInlinedClosure||(typeof IRInlinedClosure=="undefined"?nil:IRInlinedClosure)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st($IRInlinedClosure())._new();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"inlinedClosure",{},smalltalk.IRSendInliner)})},
-messageSends: ["new"]}),
-smalltalk.IRSendInliner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "inlinedSend:with:",
-fn: function (inlinedSend,anIRInstruction){
-var self=this;
-var inlinedClosure;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4,$5;
-$1=_st(anIRInstruction)._isClosure();
-if(! smalltalk.assert($1)){
-self._inliningError_("Message argument should be a block");
-};
-$2=_st(_st(_st(anIRInstruction)._arguments())._size()).__eq((0));
-if(! smalltalk.assert($2)){
-self._inliningError_("Inlined block should have zero argument");
-};
-inlinedClosure=_st(self._translator())._visit_(self._inlineClosure_(anIRInstruction));
-$3=inlinedSend;
-_st($3)._add_(_st(_st(self._send())._instructions())._first());
-$4=_st($3)._add_(inlinedClosure);
-_st(self._send())._replaceWith_(inlinedSend);
-$5=inlinedSend;
-return $5;
-}, function($ctx1) {$ctx1.fill(self,"inlinedSend:with:",{inlinedSend:inlinedSend,anIRInstruction:anIRInstruction,inlinedClosure:inlinedClosure},smalltalk.IRSendInliner)})},
-messageSends: ["ifFalse:", "inliningError:", "isClosure", "=", "size", "arguments", "visit:", "inlineClosure:", "translator", "add:", "first", "instructions", "send", "replaceWith:"]}),
-smalltalk.IRSendInliner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "inlinedSend:with:with:",
-fn: function (inlinedSend,anIRInstruction,anotherIRInstruction){
-var self=this;
-var inlinedClosure1,inlinedClosure2;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4,$5;
-$1=_st(anIRInstruction)._isClosure();
-if(! smalltalk.assert($1)){
-self._inliningError_("Message argument should be a block");
-};
-$2=_st(anotherIRInstruction)._isClosure();
-if(! smalltalk.assert($2)){
-self._inliningError_("Message argument should be a block");
-};
-inlinedClosure1=_st(self._translator())._visit_(self._inlineClosure_(anIRInstruction));
-inlinedClosure2=_st(self._translator())._visit_(self._inlineClosure_(anotherIRInstruction));
-$3=inlinedSend;
-_st($3)._add_(_st(_st(self._send())._instructions())._first());
-_st($3)._add_(inlinedClosure1);
-$4=_st($3)._add_(inlinedClosure2);
-_st(self._send())._replaceWith_(inlinedSend);
-$5=inlinedSend;
-return $5;
-}, function($ctx1) {$ctx1.fill(self,"inlinedSend:with:with:",{inlinedSend:inlinedSend,anIRInstruction:anIRInstruction,anotherIRInstruction:anotherIRInstruction,inlinedClosure1:inlinedClosure1,inlinedClosure2:inlinedClosure2},smalltalk.IRSendInliner)})},
-messageSends: ["ifFalse:", "inliningError:", "isClosure", "visit:", "inlineClosure:", "translator", "add:", "first", "instructions", "send", "replaceWith:"]}),
-smalltalk.IRSendInliner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "inlinedSequence",
-fn: function (){
-var self=this;
-function $IRInlinedSequence(){return smalltalk.IRInlinedSequence||(typeof IRInlinedSequence=="undefined"?nil:IRInlinedSequence)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st($IRInlinedSequence())._new();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"inlinedSequence",{},smalltalk.IRSendInliner)})},
-messageSends: ["new"]}),
-smalltalk.IRSendInliner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "inliningError:",
-fn: function (aString){
-var self=this;
-function $InliningError(){return smalltalk.InliningError||(typeof InliningError=="undefined"?nil:InliningError)}
-return smalltalk.withContext(function($ctx1) { 
-_st($InliningError())._signal_(aString);
-return self}, function($ctx1) {$ctx1.fill(self,"inliningError:",{aString:aString},smalltalk.IRSendInliner)})},
-messageSends: ["signal:"]}),
-smalltalk.IRSendInliner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "send",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@send"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"send",{},smalltalk.IRSendInliner)})},
-messageSends: []}),
-smalltalk.IRSendInliner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "send:",
-fn: function (anIRSend){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@send"]=anIRSend;
-return self}, function($ctx1) {$ctx1.fill(self,"send:",{anIRSend:anIRSend},smalltalk.IRSendInliner)})},
-messageSends: []}),
-smalltalk.IRSendInliner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "translator",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@translator"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"translator",{},smalltalk.IRSendInliner)})},
-messageSends: []}),
-smalltalk.IRSendInliner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "translator:",
-fn: function (anASTTranslator){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@translator"]=anASTTranslator;
-return self}, function($ctx1) {$ctx1.fill(self,"translator:",{anASTTranslator:anASTTranslator},smalltalk.IRSendInliner)})},
-messageSends: []}),
-smalltalk.IRSendInliner);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "inlinedSelectors",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=["ifTrue:", "ifFalse:", "ifTrue:ifFalse:", "ifFalse:ifTrue:", "ifNil:", "ifNotNil:", "ifNil:ifNotNil:", "ifNotNil:ifNil:"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"inlinedSelectors",{},smalltalk.IRSendInliner.klass)})},
-messageSends: []}),
-smalltalk.IRSendInliner.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "shouldInline:",
-fn: function (anIRInstruction){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-var $early={};
-try {
-$1=_st(self._inlinedSelectors())._includes_(_st(anIRInstruction)._selector());
-if(! smalltalk.assert($1)){
-return false;
-};
-_st(_st(_st(anIRInstruction)._instructions())._allButFirst())._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-$2=_st(each)._isClosure();
-if(! smalltalk.assert($2)){
-throw $early=[false];
-};
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return true;
-}
-catch(e) {if(e===$early)return e[0]; throw e}
-}, function($ctx1) {$ctx1.fill(self,"shouldInline:",{anIRInstruction:anIRInstruction},smalltalk.IRSendInliner.klass)})},
-messageSends: ["ifFalse:", "includes:", "selector", "inlinedSelectors", "do:", "isClosure", "allButFirst", "instructions"]}),
-smalltalk.IRSendInliner.klass);
-
-
-smalltalk.addClass('IRAssignmentInliner', smalltalk.IRSendInliner, ['assignment'], 'Compiler-Inlining');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "assignment",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@assignment"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"assignment",{},smalltalk.IRAssignmentInliner)})},
-messageSends: []}),
-smalltalk.IRAssignmentInliner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "assignment:",
-fn: function (aNode){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@assignment"]=aNode;
-return self}, function($ctx1) {$ctx1.fill(self,"assignment:",{aNode:aNode},smalltalk.IRAssignmentInliner)})},
-messageSends: []}),
-smalltalk.IRAssignmentInliner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "inlineAssignment:",
-fn: function (anIRAssignment){
-var self=this;
-var inlinedAssignment;
-function $IRInlinedAssignment(){return smalltalk.IRInlinedAssignment||(typeof IRInlinedAssignment=="undefined"?nil:IRInlinedAssignment)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-self._assignment_(anIRAssignment);
-inlinedAssignment=_st($IRInlinedAssignment())._new();
-_st(_st(anIRAssignment)._instructions())._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(inlinedAssignment)._add_(each);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-_st(anIRAssignment)._replaceWith_(inlinedAssignment);
-self._inlineSend_(_st(_st(inlinedAssignment)._instructions())._last());
-$1=inlinedAssignment;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"inlineAssignment:",{anIRAssignment:anIRAssignment,inlinedAssignment:inlinedAssignment},smalltalk.IRAssignmentInliner)})},
-messageSends: ["assignment:", "new", "do:", "add:", "instructions", "replaceWith:", "inlineSend:", "last"]}),
-smalltalk.IRAssignmentInliner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "inlineClosure:",
-fn: function (anIRClosure){
-var self=this;
-var inlinedClosure,statements;
-function $IRAssignment(){return smalltalk.IRAssignment||(typeof IRAssignment=="undefined"?nil:IRAssignment)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4;
-inlinedClosure=smalltalk.IRAssignmentInliner.superclass.fn.prototype._inlineClosure_.apply(_st(self), [anIRClosure]);
-statements=_st(_st(_st(inlinedClosure)._instructions())._last())._instructions();
-_st(statements)._ifNotEmpty_((function(){
-return smalltalk.withContext(function($ctx2) {
-$1=_st(_st(statements)._last())._canBeAssigned();
-if(smalltalk.assert($1)){
-$2=_st($IRAssignment())._new();
-_st($2)._add_(_st(_st(self._assignment())._instructions())._first());
-_st($2)._add_(_st(_st(statements)._last())._copy());
-$3=_st($2)._yourself();
-return _st(_st(statements)._last())._replaceWith_($3);
-};
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-$4=inlinedClosure;
-return $4;
-}, function($ctx1) {$ctx1.fill(self,"inlineClosure:",{anIRClosure:anIRClosure,inlinedClosure:inlinedClosure,statements:statements},smalltalk.IRAssignmentInliner)})},
-messageSends: ["inlineClosure:", "instructions", "last", "ifNotEmpty:", "ifTrue:", "replaceWith:", "add:", "first", "assignment", "new", "copy", "yourself", "canBeAssigned"]}),
-smalltalk.IRAssignmentInliner);
-
-
-
-smalltalk.addClass('IRReturnInliner', smalltalk.IRSendInliner, [], 'Compiler-Inlining');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "inlineClosure:",
-fn: function (anIRClosure){
-var self=this;
-var closure,statements;
-function $IRReturn(){return smalltalk.IRReturn||(typeof IRReturn=="undefined"?nil:IRReturn)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4;
-closure=smalltalk.IRReturnInliner.superclass.fn.prototype._inlineClosure_.apply(_st(self), [anIRClosure]);
-statements=_st(_st(_st(closure)._instructions())._last())._instructions();
-_st(statements)._ifNotEmpty_((function(){
-return smalltalk.withContext(function($ctx2) {
-$1=_st(_st(statements)._last())._isReturn();
-if(! smalltalk.assert($1)){
-$2=_st($IRReturn())._new();
-_st($2)._add_(_st(_st(statements)._last())._copy());
-$3=_st($2)._yourself();
-return _st(_st(statements)._last())._replaceWith_($3);
-};
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-$4=closure;
-return $4;
-}, function($ctx1) {$ctx1.fill(self,"inlineClosure:",{anIRClosure:anIRClosure,closure:closure,statements:statements},smalltalk.IRReturnInliner)})},
-messageSends: ["inlineClosure:", "instructions", "last", "ifNotEmpty:", "ifFalse:", "replaceWith:", "add:", "copy", "new", "yourself", "isReturn"]}),
-smalltalk.IRReturnInliner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "inlineReturn:",
-fn: function (anIRReturn){
-var self=this;
-var return_;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-return_=self._inlinedReturn();
-_st(_st(anIRReturn)._instructions())._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(return_)._add_(each);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-_st(anIRReturn)._replaceWith_(return_);
-self._inlineSend_(_st(_st(return_)._instructions())._last());
-$1=return_;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"inlineReturn:",{anIRReturn:anIRReturn,return_:return_},smalltalk.IRReturnInliner)})},
-messageSends: ["inlinedReturn", "do:", "add:", "instructions", "replaceWith:", "inlineSend:", "last"]}),
-smalltalk.IRReturnInliner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "inlinedReturn",
-fn: function (){
-var self=this;
-function $IRInlinedReturn(){return smalltalk.IRInlinedReturn||(typeof IRInlinedReturn=="undefined"?nil:IRInlinedReturn)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st($IRInlinedReturn())._new();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"inlinedReturn",{},smalltalk.IRReturnInliner)})},
-messageSends: ["new"]}),
-smalltalk.IRReturnInliner);
-
-
-
-smalltalk.addClass('InliningCodeGenerator', smalltalk.CodeGenerator, [], 'Compiler-Inlining');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "compileNode:",
-fn: function (aNode){
-var self=this;
-var ir,stream;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-_st(self._semanticAnalyzer())._visit_(aNode);
-ir=_st(self._translator())._visit_(aNode);
-_st(self._inliner())._visit_(ir);
-$2=self._irTranslator();
-_st($2)._currentClass_(self._currentClass());
-_st($2)._visit_(ir);
-$3=_st($2)._contents();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"compileNode:",{aNode:aNode,ir:ir,stream:stream},smalltalk.InliningCodeGenerator)})},
-messageSends: ["visit:", "semanticAnalyzer", "translator", "inliner", "currentClass:", "currentClass", "irTranslator", "contents"]}),
-smalltalk.InliningCodeGenerator);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "inliner",
-fn: function (){
-var self=this;
-function $IRInliner(){return smalltalk.IRInliner||(typeof IRInliner=="undefined"?nil:IRInliner)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st($IRInliner())._new();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"inliner",{},smalltalk.InliningCodeGenerator)})},
-messageSends: ["new"]}),
-smalltalk.InliningCodeGenerator);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "irTranslator",
-fn: function (){
-var self=this;
-function $IRInliningJSTranslator(){return smalltalk.IRInliningJSTranslator||(typeof IRInliningJSTranslator=="undefined"?nil:IRInliningJSTranslator)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st($IRInliningJSTranslator())._new();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"irTranslator",{},smalltalk.InliningCodeGenerator)})},
-messageSends: ["new"]}),
-smalltalk.InliningCodeGenerator);
-
-
-});

+ 0 - 1535
js/Compiler-Interpreter.deploy.js

@@ -1,1535 +0,0 @@
-define("amber/Compiler-Interpreter", ["amber_vm/smalltalk","amber_vm/nil","amber_vm/_st"], function(smalltalk,nil,_st){
-smalltalk.addPackage('Compiler-Interpreter');
-smalltalk.packages["Compiler-Interpreter"].transport = {"type":"amd","amdNamespace":"amber"};
-
-smalltalk.addClass('AIContext', smalltalk.NodeVisitor, ['methodContext', 'outerContext', 'pc', 'locals', 'method'], 'Compiler-Interpreter');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "asString",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self["@methodContext"])._asString();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"asString",{},smalltalk.AIContext)})},
-messageSends: ["asString"]}),
-smalltalk.AIContext);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "home",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self._isBlockContext();
-if(smalltalk.assert($2)){
-$1=_st(self._outerContext())._methodContext();
-} else {
-$1=self;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"home",{},smalltalk.AIContext)})},
-messageSends: ["ifTrue:ifFalse:", "methodContext", "outerContext", "isBlockContext"]}),
-smalltalk.AIContext);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "initializeFromMethodContext:",
-fn: function (aMethodContext){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-self["@methodContext"]=aMethodContext;
-self._pc_(_st(aMethodContext)._pc());
-self._receiver_(_st(aMethodContext)._receiver());
-self._method_(_st(aMethodContext)._method());
-$1=_st(aMethodContext)._outerContext();
-if(($receiver = $1) == nil || $receiver == undefined){
-$1;
-} else {
-var outer;
-outer=$receiver;
-$2=_st(outer)._methodContext();
-if(($receiver = $2) == nil || $receiver == undefined){
-$2;
-} else {
-self._outerContext_(_st(self._class())._fromMethodContext_(_st(aMethodContext)._outerContext()));
-};
-_st(_st(aMethodContext)._locals())._keysAndValuesDo_((function(key,value){
-return smalltalk.withContext(function($ctx2) {
-return _st(self._locals())._at_put_(key,value);
-}, function($ctx2) {$ctx2.fillBlock({key:key,value:value},$ctx1)})}));
-};
-return self}, function($ctx1) {$ctx1.fill(self,"initializeFromMethodContext:",{aMethodContext:aMethodContext},smalltalk.AIContext)})},
-messageSends: ["pc:", "pc", "receiver:", "receiver", "method:", "method", "ifNotNil:", "outerContext:", "fromMethodContext:", "outerContext", "class", "methodContext", "keysAndValuesDo:", "at:put:", "locals"]}),
-smalltalk.AIContext);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "initializeLocals",
-fn: function (){
-var self=this;
-function $Dictionary(){return smalltalk.Dictionary||(typeof Dictionary=="undefined"?nil:Dictionary)}
-return smalltalk.withContext(function($ctx1) { 
-self["@locals"]=_st($Dictionary())._new();
-_st(self["@locals"])._at_put_("thisContext",self);
-return self}, function($ctx1) {$ctx1.fill(self,"initializeLocals",{},smalltalk.AIContext)})},
-messageSends: ["new", "at:put:"]}),
-smalltalk.AIContext);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isBlockContext",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self["@methodContext"])._isBlockContext();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"isBlockContext",{},smalltalk.AIContext)})},
-messageSends: ["isBlockContext"]}),
-smalltalk.AIContext);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "localAt:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._locals())._at_ifAbsent_(aString,(function(){
-return smalltalk.withContext(function($ctx2) {
-return nil;
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"localAt:",{aString:aString},smalltalk.AIContext)})},
-messageSends: ["at:ifAbsent:", "locals"]}),
-smalltalk.AIContext);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "localAt:put:",
-fn: function (aString,anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._locals())._at_put_(aString,anObject);
-return self}, function($ctx1) {$ctx1.fill(self,"localAt:put:",{aString:aString,anObject:anObject},smalltalk.AIContext)})},
-messageSends: ["at:put:", "locals"]}),
-smalltalk.AIContext);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "locals",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=self["@locals"];
-if(($receiver = $1) == nil || $receiver == undefined){
-self._initializeLocals();
-} else {
-$1;
-};
-$2=self["@locals"];
-return $2;
-}, function($ctx1) {$ctx1.fill(self,"locals",{},smalltalk.AIContext)})},
-messageSends: ["ifNil:", "initializeLocals"]}),
-smalltalk.AIContext);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "method",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@method"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"method",{},smalltalk.AIContext)})},
-messageSends: []}),
-smalltalk.AIContext);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "method:",
-fn: function (aCompiledMethod){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@method"]=aCompiledMethod;
-return self}, function($ctx1) {$ctx1.fill(self,"method:",{aCompiledMethod:aCompiledMethod},smalltalk.AIContext)})},
-messageSends: []}),
-smalltalk.AIContext);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "outerContext",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@outerContext"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"outerContext",{},smalltalk.AIContext)})},
-messageSends: []}),
-smalltalk.AIContext);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "outerContext:",
-fn: function (anAIContext){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@outerContext"]=anAIContext;
-return self}, function($ctx1) {$ctx1.fill(self,"outerContext:",{anAIContext:anAIContext},smalltalk.AIContext)})},
-messageSends: []}),
-smalltalk.AIContext);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "pc",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@pc"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@pc"]=(0);
-$1=self["@pc"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"pc",{},smalltalk.AIContext)})},
-messageSends: ["ifNil:"]}),
-smalltalk.AIContext);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "pc:",
-fn: function (anInteger){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@pc"]=anInteger;
-return self}, function($ctx1) {$ctx1.fill(self,"pc:",{anInteger:anInteger},smalltalk.AIContext)})},
-messageSends: []}),
-smalltalk.AIContext);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "receiver",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._localAt_("self");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"receiver",{},smalltalk.AIContext)})},
-messageSends: ["localAt:"]}),
-smalltalk.AIContext);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "receiver:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._localAt_put_("self",anObject);
-return self}, function($ctx1) {$ctx1.fill(self,"receiver:",{anObject:anObject},smalltalk.AIContext)})},
-messageSends: ["localAt:put:"]}),
-smalltalk.AIContext);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selector",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self._method();
-if(($receiver = $2) == nil || $receiver == undefined){
-$1=$2;
-} else {
-$1=_st(self._method())._selector();
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"selector",{},smalltalk.AIContext)})},
-messageSends: ["ifNotNil:", "selector", "method"]}),
-smalltalk.AIContext);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "fromMethodContext:",
-fn: function (aMethodContext){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=self._new();
-_st($2)._initializeFromMethodContext_(aMethodContext);
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"fromMethodContext:",{aMethodContext:aMethodContext},smalltalk.AIContext.klass)})},
-messageSends: ["initializeFromMethodContext:", "new", "yourself"]}),
-smalltalk.AIContext.klass);
-
-
-smalltalk.addClass('ASTDebugger', smalltalk.Object, ['interpreter', 'context'], 'Compiler-Interpreter');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "atEnd",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._interpreter())._atEnd();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"atEnd",{},smalltalk.ASTDebugger)})},
-messageSends: ["atEnd", "interpreter"]}),
-smalltalk.ASTDebugger);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "buildAST",
-fn: function (){
-var self=this;
-var ast;
-function $Smalltalk(){return smalltalk.Smalltalk||(typeof Smalltalk=="undefined"?nil:Smalltalk)}
-function $SemanticAnalyzer(){return smalltalk.SemanticAnalyzer||(typeof SemanticAnalyzer=="undefined"?nil:SemanticAnalyzer)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-ast=_st(_st($Smalltalk())._current())._parse_(_st(self._method())._source());
-_st(_st($SemanticAnalyzer())._on_(_st(_st(self._context())._receiver())._class()))._visit_(ast);
-$1=ast;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"buildAST",{ast:ast},smalltalk.ASTDebugger)})},
-messageSends: ["parse:", "source", "method", "current", "visit:", "on:", "class", "receiver", "context"]}),
-smalltalk.ASTDebugger);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "context",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@context"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"context",{},smalltalk.ASTDebugger)})},
-messageSends: []}),
-smalltalk.ASTDebugger);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "context:",
-fn: function (aContext){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@context"]=aContext;
-return self}, function($ctx1) {$ctx1.fill(self,"context:",{aContext:aContext},smalltalk.ASTDebugger)})},
-messageSends: []}),
-smalltalk.ASTDebugger);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "defaultInterpreterClass",
-fn: function (){
-var self=this;
-function $ASTSteppingInterpreter(){return smalltalk.ASTSteppingInterpreter||(typeof ASTSteppingInterpreter=="undefined"?nil:ASTSteppingInterpreter)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=$ASTSteppingInterpreter();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"defaultInterpreterClass",{},smalltalk.ASTDebugger)})},
-messageSends: []}),
-smalltalk.ASTDebugger);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "initializeInterpreter",
-fn: function (){
-var self=this;
-var ast,next;
-function $ASTPCNodeVisitor(){return smalltalk.ASTPCNodeVisitor||(typeof ASTPCNodeVisitor=="undefined"?nil:ASTPCNodeVisitor)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-ast=self._buildAST();
-$1=_st($ASTPCNodeVisitor())._new();
-_st($1)._context_(self._context());
-_st($1)._visit_(ast);
-$2=_st($1)._currentNode();
-next=$2;
-_st(self._interpreter())._interpret_(next);
-return self}, function($ctx1) {$ctx1.fill(self,"initializeInterpreter",{ast:ast,next:next},smalltalk.ASTDebugger)})},
-messageSends: ["buildAST", "context:", "context", "new", "visit:", "currentNode", "interpret:", "interpreter"]}),
-smalltalk.ASTDebugger);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "initializeWithContext:",
-fn: function (aContext){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._context_(aContext);
-self._initializeInterpreter();
-return self}, function($ctx1) {$ctx1.fill(self,"initializeWithContext:",{aContext:aContext},smalltalk.ASTDebugger)})},
-messageSends: ["context:", "initializeInterpreter"]}),
-smalltalk.ASTDebugger);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "interpreter",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@interpreter"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@interpreter"]=_st(self._defaultInterpreterClass())._new();
-$1=self["@interpreter"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"interpreter",{},smalltalk.ASTDebugger)})},
-messageSends: ["ifNil:", "new", "defaultInterpreterClass"]}),
-smalltalk.ASTDebugger);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "interpreter:",
-fn: function (anInterpreter){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@interpreter"]=anInterpreter;
-return self}, function($ctx1) {$ctx1.fill(self,"interpreter:",{anInterpreter:anInterpreter},smalltalk.ASTDebugger)})},
-messageSends: []}),
-smalltalk.ASTDebugger);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "method",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._context())._method();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"method",{},smalltalk.ASTDebugger)})},
-messageSends: ["method", "context"]}),
-smalltalk.ASTDebugger);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "nextNode",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._interpreter())._nextNode();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"nextNode",{},smalltalk.ASTDebugger)})},
-messageSends: ["nextNode", "interpreter"]}),
-smalltalk.ASTDebugger);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "proceed",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._shouldBeImplemented();
-return self}, function($ctx1) {$ctx1.fill(self,"proceed",{},smalltalk.ASTDebugger)})},
-messageSends: ["shouldBeImplemented"]}),
-smalltalk.ASTDebugger);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "restart",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._shouldBeImplemented();
-return self}, function($ctx1) {$ctx1.fill(self,"restart",{},smalltalk.ASTDebugger)})},
-messageSends: ["shouldBeImplemented"]}),
-smalltalk.ASTDebugger);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "step",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(_st(_st(self._interpreter())._nextNode())._notNil())._and_((function(){
-return smalltalk.withContext(function($ctx3) {
-return _st(_st(self._interpreter())._nextNode())._stopOnStepping();
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})})))._or_((function(){
-return smalltalk.withContext(function($ctx3) {
-return _st(_st(self._interpreter())._atEnd())._not();
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._whileFalse_((function(){
-return smalltalk.withContext(function($ctx2) {
-_st(self._interpreter())._step();
-return self._step();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"step",{},smalltalk.ASTDebugger)})},
-messageSends: ["whileFalse:", "step", "interpreter", "or:", "not", "atEnd", "and:", "stopOnStepping", "nextNode", "notNil"]}),
-smalltalk.ASTDebugger);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "stepInto",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._shouldBeImplemented();
-return self}, function($ctx1) {$ctx1.fill(self,"stepInto",{},smalltalk.ASTDebugger)})},
-messageSends: ["shouldBeImplemented"]}),
-smalltalk.ASTDebugger);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "stepOver",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._step();
-return self}, function($ctx1) {$ctx1.fill(self,"stepOver",{},smalltalk.ASTDebugger)})},
-messageSends: ["step"]}),
-smalltalk.ASTDebugger);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "context:",
-fn: function (aContext){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=self._new();
-_st($2)._initializeWithContext_(aContext);
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"context:",{aContext:aContext},smalltalk.ASTDebugger.klass)})},
-messageSends: ["initializeWithContext:", "new", "yourself"]}),
-smalltalk.ASTDebugger.klass);
-
-
-smalltalk.addClass('ASTInterpreter', smalltalk.Object, ['currentNode', 'context', 'shouldReturn', 'result'], 'Compiler-Interpreter');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "assign:to:",
-fn: function (aNode,anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=_st(_st(aNode)._binding())._isInstanceVar();
-if(smalltalk.assert($2)){
-$1=_st(_st(self._context())._receiver())._instVarAt_put_(_st(aNode)._value(),anObject);
-} else {
-$1=_st(self._context())._localAt_put_(_st(aNode)._value(),anObject);
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"assign:to:",{aNode:aNode,anObject:anObject},smalltalk.ASTInterpreter)})},
-messageSends: ["ifTrue:ifFalse:", "instVarAt:put:", "value", "receiver", "context", "localAt:put:", "isInstanceVar", "binding"]}),
-smalltalk.ASTInterpreter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "context",
-fn: function (){
-var self=this;
-function $AIContext(){return smalltalk.AIContext||(typeof AIContext=="undefined"?nil:AIContext)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@context"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@context"]=_st($AIContext())._new();
-$1=self["@context"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"context",{},smalltalk.ASTInterpreter)})},
-messageSends: ["ifNil:", "new"]}),
-smalltalk.ASTInterpreter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "context:",
-fn: function (anAIContext){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@context"]=anAIContext;
-return self}, function($ctx1) {$ctx1.fill(self,"context:",{anAIContext:anAIContext},smalltalk.ASTInterpreter)})},
-messageSends: []}),
-smalltalk.ASTInterpreter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "continue:value:",
-fn: function (aBlock,anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@result"]=anObject;
-_st(aBlock)._value_(anObject);
-return self}, function($ctx1) {$ctx1.fill(self,"continue:value:",{aBlock:aBlock,anObject:anObject},smalltalk.ASTInterpreter)})},
-messageSends: ["value:"]}),
-smalltalk.ASTInterpreter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "currentNode",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@currentNode"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"currentNode",{},smalltalk.ASTInterpreter)})},
-messageSends: []}),
-smalltalk.ASTInterpreter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "eval:",
-fn: function (aString){
-var self=this;
-var source,function_;
-function $String(){return smalltalk.String||(typeof String=="undefined"?nil:String)}
-function $Compiler(){return smalltalk.Compiler||(typeof Compiler=="undefined"?nil:Compiler)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3;
-source=_st($String())._streamContents_((function(str){
-return smalltalk.withContext(function($ctx2) {
-_st(str)._nextPutAll_("(function(");
-_st(_st(_st(self._context())._locals())._keys())._do_separatedBy_((function(each){
-return smalltalk.withContext(function($ctx3) {
-return _st(str)._nextPutAll_(each);
-}, function($ctx3) {$ctx3.fillBlock({each:each},$ctx2)})}),(function(){
-return smalltalk.withContext(function($ctx3) {
-return _st(str)._nextPutAll_(",");
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-$1=str;
-_st($1)._nextPutAll_("){ return (function() {");
-_st($1)._nextPutAll_(aString);
-$2=_st($1)._nextPutAll_("})() })");
-return $2;
-}, function($ctx2) {$ctx2.fillBlock({str:str},$ctx1)})}));
-function_=_st(_st($Compiler())._new())._eval_(source);
-$3=_st(function_)._valueWithPossibleArguments_(_st(_st(self._context())._locals())._values());
-return $3;
-}, function($ctx1) {$ctx1.fill(self,"eval:",{aString:aString,source:source,function_:function_},smalltalk.ASTInterpreter)})},
-messageSends: ["streamContents:", "nextPutAll:", "do:separatedBy:", "keys", "locals", "context", "eval:", "new", "valueWithPossibleArguments:", "values"]}),
-smalltalk.ASTInterpreter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "initialize",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-smalltalk.ASTInterpreter.superclass.fn.prototype._initialize.apply(_st(self), []);
-self["@shouldReturn"]=false;
-return self}, function($ctx1) {$ctx1.fill(self,"initialize",{},smalltalk.ASTInterpreter)})},
-messageSends: ["initialize"]}),
-smalltalk.ASTInterpreter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "interpret:",
-fn: function (aNode){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@shouldReturn"]=false;
-self._interpret_continue_(aNode,(function(value){
-return smalltalk.withContext(function($ctx2) {
-self["@result"]=value;
-return self["@result"];
-}, function($ctx2) {$ctx2.fillBlock({value:value},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"interpret:",{aNode:aNode},smalltalk.ASTInterpreter)})},
-messageSends: ["interpret:continue:"]}),
-smalltalk.ASTInterpreter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "interpret:continue:",
-fn: function (aNode,aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3;
-$1=self["@shouldReturn"];
-if(smalltalk.assert($1)){
-$2=self;
-return $2;
-};
-$3=_st(aNode)._isNode();
-if(smalltalk.assert($3)){
-self["@currentNode"]=aNode;
-self["@currentNode"];
-self._interpretNode_continue_(aNode,(function(value){
-return smalltalk.withContext(function($ctx2) {
-return self._continue_value_(aBlock,value);
-}, function($ctx2) {$ctx2.fillBlock({value:value},$ctx1)})}));
-} else {
-self._continue_value_(aBlock,aNode);
-};
-return self}, function($ctx1) {$ctx1.fill(self,"interpret:continue:",{aNode:aNode,aBlock:aBlock},smalltalk.ASTInterpreter)})},
-messageSends: ["ifTrue:", "ifTrue:ifFalse:", "interpretNode:continue:", "continue:value:", "isNode"]}),
-smalltalk.ASTInterpreter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "interpretAll:continue:",
-fn: function (aCollection,aBlock){
-var self=this;
-function $OrderedCollection(){return smalltalk.OrderedCollection||(typeof OrderedCollection=="undefined"?nil:OrderedCollection)}
-return smalltalk.withContext(function($ctx1) { 
-self._interpretAll_continue_result_(aCollection,aBlock,_st($OrderedCollection())._new());
-return self}, function($ctx1) {$ctx1.fill(self,"interpretAll:continue:",{aCollection:aCollection,aBlock:aBlock},smalltalk.ASTInterpreter)})},
-messageSends: ["interpretAll:continue:result:", "new"]}),
-smalltalk.ASTInterpreter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "interpretAll:continue:result:",
-fn: function (nodes,aBlock,aCollection){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(nodes)._isEmpty();
-if(smalltalk.assert($1)){
-self._continue_value_(aBlock,aCollection);
-} else {
-self._interpret_continue_(_st(nodes)._first(),(function(value){
-return smalltalk.withContext(function($ctx2) {
-return self._interpretAll_continue_result_(_st(nodes)._allButFirst(),aBlock,_st(aCollection).__comma([value]));
-}, function($ctx2) {$ctx2.fillBlock({value:value},$ctx1)})}));
-};
-return self}, function($ctx1) {$ctx1.fill(self,"interpretAll:continue:result:",{nodes:nodes,aBlock:aBlock,aCollection:aCollection},smalltalk.ASTInterpreter)})},
-messageSends: ["ifTrue:ifFalse:", "continue:value:", "interpret:continue:", "first", "interpretAll:continue:result:", "allButFirst", ",", "isEmpty"]}),
-smalltalk.ASTInterpreter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "interpretAssignmentNode:continue:",
-fn: function (aNode,aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._interpret_continue_(_st(aNode)._right(),(function(value){
-return smalltalk.withContext(function($ctx2) {
-return self._continue_value_(aBlock,self._assign_to_(_st(aNode)._left(),value));
-}, function($ctx2) {$ctx2.fillBlock({value:value},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"interpretAssignmentNode:continue:",{aNode:aNode,aBlock:aBlock},smalltalk.ASTInterpreter)})},
-messageSends: ["interpret:continue:", "right", "continue:value:", "assign:to:", "left"]}),
-smalltalk.ASTInterpreter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "interpretBlockNode:continue:",
-fn: function (aNode,aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-self._continue_value_(aBlock,(function(){
-return smalltalk.withContext(function($ctx2) {
-return self._withBlockContext_((function(){
-return smalltalk.withContext(function($ctx3) {
-$1=self;
-_st($1)._interpret_(_st(_st(aNode)._nodes())._first());
-$2=_st($1)._result();
-return $2;
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"interpretBlockNode:continue:",{aNode:aNode,aBlock:aBlock},smalltalk.ASTInterpreter)})},
-messageSends: ["continue:value:", "withBlockContext:", "interpret:", "first", "nodes", "result"]}),
-smalltalk.ASTInterpreter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "interpretBlockSequenceNode:continue:",
-fn: function (aNode,aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._interpretSequenceNode_continue_(aNode,aBlock);
-return self}, function($ctx1) {$ctx1.fill(self,"interpretBlockSequenceNode:continue:",{aNode:aNode,aBlock:aBlock},smalltalk.ASTInterpreter)})},
-messageSends: ["interpretSequenceNode:continue:"]}),
-smalltalk.ASTInterpreter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "interpretCascadeNode:continue:",
-fn: function (aNode,aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._interpret_continue_(_st(aNode)._receiver(),(function(receiver){
-return smalltalk.withContext(function($ctx2) {
-_st(_st(aNode)._nodes())._do_((function(each){
-return smalltalk.withContext(function($ctx3) {
-return _st(each)._receiver_(receiver);
-}, function($ctx3) {$ctx3.fillBlock({each:each},$ctx2)})}));
-return self._interpretAll_continue_(_st(_st(aNode)._nodes())._allButLast(),(function(){
-return smalltalk.withContext(function($ctx3) {
-return self._interpret_continue_(_st(_st(aNode)._nodes())._last(),(function(val){
-return smalltalk.withContext(function($ctx4) {
-return self._continue_value_(aBlock,val);
-}, function($ctx4) {$ctx4.fillBlock({val:val},$ctx3)})}));
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-}, function($ctx2) {$ctx2.fillBlock({receiver:receiver},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"interpretCascadeNode:continue:",{aNode:aNode,aBlock:aBlock},smalltalk.ASTInterpreter)})},
-messageSends: ["interpret:continue:", "receiver", "do:", "receiver:", "nodes", "interpretAll:continue:", "allButLast", "last", "continue:value:"]}),
-smalltalk.ASTInterpreter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "interpretClassReferenceNode:continue:",
-fn: function (aNode,aBlock){
-var self=this;
-function $Smalltalk(){return smalltalk.Smalltalk||(typeof Smalltalk=="undefined"?nil:Smalltalk)}
-return smalltalk.withContext(function($ctx1) { 
-self._continue_value_(aBlock,_st(_st($Smalltalk())._current())._at_(_st(aNode)._value()));
-return self}, function($ctx1) {$ctx1.fill(self,"interpretClassReferenceNode:continue:",{aNode:aNode,aBlock:aBlock},smalltalk.ASTInterpreter)})},
-messageSends: ["continue:value:", "at:", "value", "current"]}),
-smalltalk.ASTInterpreter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "interpretDynamicArrayNode:continue:",
-fn: function (aNode,aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._interpretAll_continue_(_st(aNode)._nodes(),(function(array){
-return smalltalk.withContext(function($ctx2) {
-return self._continue_value_(aBlock,array);
-}, function($ctx2) {$ctx2.fillBlock({array:array},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"interpretDynamicArrayNode:continue:",{aNode:aNode,aBlock:aBlock},smalltalk.ASTInterpreter)})},
-messageSends: ["interpretAll:continue:", "nodes", "continue:value:"]}),
-smalltalk.ASTInterpreter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "interpretDynamicDictionaryNode:continue:",
-fn: function (aNode,aBlock){
-var self=this;
-function $HashedCollection(){return smalltalk.HashedCollection||(typeof HashedCollection=="undefined"?nil:HashedCollection)}
-return smalltalk.withContext(function($ctx1) { 
-self._interpretAll_continue_(_st(aNode)._nodes(),(function(array){
-var hashedCollection;
-return smalltalk.withContext(function($ctx2) {
-hashedCollection=_st($HashedCollection())._new();
-hashedCollection;
-_st(array)._do_((function(each){
-return smalltalk.withContext(function($ctx3) {
-return _st(hashedCollection)._add_(each);
-}, function($ctx3) {$ctx3.fillBlock({each:each},$ctx2)})}));
-return self._continue_value_(aBlock,hashedCollection);
-}, function($ctx2) {$ctx2.fillBlock({array:array,hashedCollection:hashedCollection},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"interpretDynamicDictionaryNode:continue:",{aNode:aNode,aBlock:aBlock},smalltalk.ASTInterpreter)})},
-messageSends: ["interpretAll:continue:", "nodes", "new", "do:", "add:", "continue:value:"]}),
-smalltalk.ASTInterpreter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "interpretJSStatementNode:continue:",
-fn: function (aNode,aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@shouldReturn"]=true;
-self._continue_value_(aBlock,self._eval_(_st(aNode)._source()));
-return self}, function($ctx1) {$ctx1.fill(self,"interpretJSStatementNode:continue:",{aNode:aNode,aBlock:aBlock},smalltalk.ASTInterpreter)})},
-messageSends: ["continue:value:", "eval:", "source"]}),
-smalltalk.ASTInterpreter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "interpretMethodNode:continue:",
-fn: function (aNode,aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._interpretAll_continue_(_st(aNode)._nodes(),(function(array){
-return smalltalk.withContext(function($ctx2) {
-return self._continue_value_(aBlock,_st(array)._first());
-}, function($ctx2) {$ctx2.fillBlock({array:array},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"interpretMethodNode:continue:",{aNode:aNode,aBlock:aBlock},smalltalk.ASTInterpreter)})},
-messageSends: ["interpretAll:continue:", "nodes", "continue:value:", "first"]}),
-smalltalk.ASTInterpreter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "interpretNode:continue:",
-fn: function (aNode,aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(aNode)._interpreter_continue_(self,aBlock);
-return self}, function($ctx1) {$ctx1.fill(self,"interpretNode:continue:",{aNode:aNode,aBlock:aBlock},smalltalk.ASTInterpreter)})},
-messageSends: ["interpreter:continue:"]}),
-smalltalk.ASTInterpreter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "interpretReturnNode:continue:",
-fn: function (aNode,aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._interpret_continue_(_st(_st(aNode)._nodes())._first(),(function(value){
-return smalltalk.withContext(function($ctx2) {
-self["@shouldReturn"]=true;
-self["@shouldReturn"];
-return self._continue_value_(aBlock,value);
-}, function($ctx2) {$ctx2.fillBlock({value:value},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"interpretReturnNode:continue:",{aNode:aNode,aBlock:aBlock},smalltalk.ASTInterpreter)})},
-messageSends: ["interpret:continue:", "first", "nodes", "continue:value:"]}),
-smalltalk.ASTInterpreter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "interpretSendNode:continue:",
-fn: function (aNode,aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._interpret_continue_(_st(aNode)._receiver(),(function(receiver){
-return smalltalk.withContext(function($ctx2) {
-return self._interpretAll_continue_(_st(aNode)._arguments(),(function(args){
-return smalltalk.withContext(function($ctx3) {
-return self._messageFromSendNode_arguments_do_(aNode,args,(function(message){
-return smalltalk.withContext(function($ctx4) {
-_st(self._context())._pc_(_st(_st(self._context())._pc()).__plus((1)));
-return self._continue_value_(aBlock,self._sendMessage_to_superSend_(message,receiver,_st(aNode)._superSend()));
-}, function($ctx4) {$ctx4.fillBlock({message:message},$ctx3)})}));
-}, function($ctx3) {$ctx3.fillBlock({args:args},$ctx2)})}));
-}, function($ctx2) {$ctx2.fillBlock({receiver:receiver},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"interpretSendNode:continue:",{aNode:aNode,aBlock:aBlock},smalltalk.ASTInterpreter)})},
-messageSends: ["interpret:continue:", "receiver", "interpretAll:continue:", "arguments", "messageFromSendNode:arguments:do:", "pc:", "+", "pc", "context", "continue:value:", "sendMessage:to:superSend:", "superSend"]}),
-smalltalk.ASTInterpreter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "interpretSequenceNode:continue:",
-fn: function (aNode,aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._interpretAll_continue_(_st(aNode)._nodes(),(function(array){
-return smalltalk.withContext(function($ctx2) {
-return self._continue_value_(aBlock,_st(array)._last());
-}, function($ctx2) {$ctx2.fillBlock({array:array},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"interpretSequenceNode:continue:",{aNode:aNode,aBlock:aBlock},smalltalk.ASTInterpreter)})},
-messageSends: ["interpretAll:continue:", "nodes", "continue:value:", "last"]}),
-smalltalk.ASTInterpreter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "interpretValueNode:continue:",
-fn: function (aNode,aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._continue_value_(aBlock,_st(aNode)._value());
-return self}, function($ctx1) {$ctx1.fill(self,"interpretValueNode:continue:",{aNode:aNode,aBlock:aBlock},smalltalk.ASTInterpreter)})},
-messageSends: ["continue:value:", "value"]}),
-smalltalk.ASTInterpreter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "interpretVariableNode:continue:",
-fn: function (aNode,aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$4,$3;
-$1=self;
-$2=aBlock;
-$4=_st(_st(aNode)._binding())._isInstanceVar();
-if(smalltalk.assert($4)){
-$3=_st(_st(self._context())._receiver())._instVarAt_(_st(aNode)._value());
-} else {
-$3=_st(self._context())._localAt_(_st(aNode)._value());
-};
-_st($1)._continue_value_($2,$3);
-return self}, function($ctx1) {$ctx1.fill(self,"interpretVariableNode:continue:",{aNode:aNode,aBlock:aBlock},smalltalk.ASTInterpreter)})},
-messageSends: ["continue:value:", "ifTrue:ifFalse:", "instVarAt:", "value", "receiver", "context", "localAt:", "isInstanceVar", "binding"]}),
-smalltalk.ASTInterpreter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "messageFromSendNode:arguments:do:",
-fn: function (aSendNode,aCollection,aBlock){
-var self=this;
-function $Message(){return smalltalk.Message||(typeof Message=="undefined"?nil:Message)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st($Message())._new();
-_st($1)._selector_(_st(aSendNode)._selector());
-_st($1)._arguments_(aCollection);
-$2=_st($1)._yourself();
-self._continue_value_(aBlock,$2);
-return self}, function($ctx1) {$ctx1.fill(self,"messageFromSendNode:arguments:do:",{aSendNode:aSendNode,aCollection:aCollection,aBlock:aBlock},smalltalk.ASTInterpreter)})},
-messageSends: ["continue:value:", "selector:", "selector", "new", "arguments:", "yourself"]}),
-smalltalk.ASTInterpreter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "result",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@result"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"result",{},smalltalk.ASTInterpreter)})},
-messageSends: []}),
-smalltalk.ASTInterpreter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "sendMessage:to:superSend:",
-fn: function (aMessage,anObject,aBoolean){
-var self=this;
-var method;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4,$5,$6;
-var $early={};
-try {
-$1=aBoolean;
-if(! smalltalk.assert($1)){
-$2=_st(aMessage)._sendTo_(anObject);
-return $2;
-};
-$3=_st(_st(anObject)._class())._superclass();
-if(($receiver = $3) == nil || $receiver == undefined){
-$4=self._messageNotUnderstood_receiver_(aMessage,anObject);
-return $4;
-} else {
-$3;
-};
-method=_st(_st(_st(_st(anObject)._class())._superclass())._methodDictionary())._at_ifAbsent_(_st(aMessage)._selector(),(function(){
-return smalltalk.withContext(function($ctx2) {
-$5=self._messageNotUnderstood_receiver_(aMessage,anObject);
-throw $early=[$5];
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-$6=_st(_st(method)._fn())._applyTo_arguments_(anObject,_st(aMessage)._arguments());
-return $6;
-}
-catch(e) {if(e===$early)return e[0]; throw e}
-}, function($ctx1) {$ctx1.fill(self,"sendMessage:to:superSend:",{aMessage:aMessage,anObject:anObject,aBoolean:aBoolean,method:method},smalltalk.ASTInterpreter)})},
-messageSends: ["ifFalse:", "sendTo:", "ifNil:", "messageNotUnderstood:receiver:", "superclass", "class", "at:ifAbsent:", "selector", "methodDictionary", "applyTo:arguments:", "arguments", "fn"]}),
-smalltalk.ASTInterpreter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "shouldReturn",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@shouldReturn"];
-if(($receiver = $2) == nil || $receiver == undefined){
-$1=false;
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"shouldReturn",{},smalltalk.ASTInterpreter)})},
-messageSends: ["ifNil:"]}),
-smalltalk.ASTInterpreter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "withBlockContext:",
-fn: function (aBlock){
-var self=this;
-var blockResult;
-function $AIContext(){return smalltalk.AIContext||(typeof AIContext=="undefined"?nil:AIContext)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3;
-$1=_st($AIContext())._new();
-_st($1)._outerContext_(self._context());
-$2=_st($1)._yourself();
-self._context_($2);
-blockResult=_st(aBlock)._value();
-self._context_(_st(self._context())._outerContext());
-$3=blockResult;
-return $3;
-}, function($ctx1) {$ctx1.fill(self,"withBlockContext:",{aBlock:aBlock,blockResult:blockResult},smalltalk.ASTInterpreter)})},
-messageSends: ["context:", "outerContext:", "context", "new", "yourself", "value", "outerContext"]}),
-smalltalk.ASTInterpreter);
-
-
-
-smalltalk.addClass('ASTSteppingInterpreter', smalltalk.ASTInterpreter, ['continuation', 'nextNode'], 'Compiler-Interpreter');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "atEnd",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._shouldReturn())._or_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(self._nextNode()).__eq_eq(self._currentNode());
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"atEnd",{},smalltalk.ASTSteppingInterpreter)})},
-messageSends: ["or:", "==", "currentNode", "nextNode", "shouldReturn"]}),
-smalltalk.ASTSteppingInterpreter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "initialize",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-smalltalk.ASTSteppingInterpreter.superclass.fn.prototype._initialize.apply(_st(self), []);
-self["@continuation"]=(function(){
-return smalltalk.withContext(function($ctx2) {
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})});
-return self}, function($ctx1) {$ctx1.fill(self,"initialize",{},smalltalk.ASTSteppingInterpreter)})},
-messageSends: ["initialize"]}),
-smalltalk.ASTSteppingInterpreter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "interpret:continue:",
-fn: function (aNode,aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@nextNode"]=aNode;
-self["@continuation"]=(function(){
-return smalltalk.withContext(function($ctx2) {
-return smalltalk.ASTSteppingInterpreter.superclass.fn.prototype._interpret_continue_.apply(_st(self), [aNode,aBlock]);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})});
-return self}, function($ctx1) {$ctx1.fill(self,"interpret:continue:",{aNode:aNode,aBlock:aBlock},smalltalk.ASTSteppingInterpreter)})},
-messageSends: ["interpret:continue:"]}),
-smalltalk.ASTSteppingInterpreter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "nextNode",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@nextNode"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"nextNode",{},smalltalk.ASTSteppingInterpreter)})},
-messageSends: []}),
-smalltalk.ASTSteppingInterpreter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "step",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self["@continuation"])._value();
-return self}, function($ctx1) {$ctx1.fill(self,"step",{},smalltalk.ASTSteppingInterpreter)})},
-messageSends: ["value"]}),
-smalltalk.ASTSteppingInterpreter);
-
-
-
-smalltalk.addClass('ASTPCNodeVisitor', smalltalk.NodeVisitor, ['useInlinings', 'pc', 'context', 'currentNode'], 'Compiler-Interpreter');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "context",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@context"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"context",{},smalltalk.ASTPCNodeVisitor)})},
-messageSends: []}),
-smalltalk.ASTPCNodeVisitor);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "context:",
-fn: function (aContext){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@context"]=aContext;
-return self}, function($ctx1) {$ctx1.fill(self,"context:",{aContext:aContext},smalltalk.ASTPCNodeVisitor)})},
-messageSends: []}),
-smalltalk.ASTPCNodeVisitor);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "currentNode",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@currentNode"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"currentNode",{},smalltalk.ASTPCNodeVisitor)})},
-messageSends: []}),
-smalltalk.ASTPCNodeVisitor);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "pc",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@pc"];
-if(($receiver = $2) == nil || $receiver == undefined){
-$1=(0);
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"pc",{},smalltalk.ASTPCNodeVisitor)})},
-messageSends: ["ifNil:"]}),
-smalltalk.ASTPCNodeVisitor);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "pc:",
-fn: function (anInteger){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@pc"]=anInteger;
-return self}, function($ctx1) {$ctx1.fill(self,"pc:",{anInteger:anInteger},smalltalk.ASTPCNodeVisitor)})},
-messageSends: []}),
-smalltalk.ASTPCNodeVisitor);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "useInlinings",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@useInlinings"];
-if(($receiver = $2) == nil || $receiver == undefined){
-$1=true;
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"useInlinings",{},smalltalk.ASTPCNodeVisitor)})},
-messageSends: ["ifNil:"]}),
-smalltalk.ASTPCNodeVisitor);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "useInlinings:",
-fn: function (aBoolean){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@useInlinings"]=aBoolean;
-return self}, function($ctx1) {$ctx1.fill(self,"useInlinings:",{aBoolean:aBoolean},smalltalk.ASTPCNodeVisitor)})},
-messageSends: []}),
-smalltalk.ASTPCNodeVisitor);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitJSStatementNode:",
-fn: function (aNode){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@currentNode"]=aNode;
-return self}, function($ctx1) {$ctx1.fill(self,"visitJSStatementNode:",{aNode:aNode},smalltalk.ASTPCNodeVisitor)})},
-messageSends: []}),
-smalltalk.ASTPCNodeVisitor);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitSendNode:",
-fn: function (aNode){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-smalltalk.ASTPCNodeVisitor.superclass.fn.prototype._visitSendNode_.apply(_st(self), [aNode]);
-$1=_st(self._pc()).__eq(_st(self._context())._pc());
-if(! smalltalk.assert($1)){
-$2=_st(aNode)._shouldBeInlined();
-if(! smalltalk.assert($2)){
-self._pc_(_st(self._pc()).__plus((1)));
-self["@currentNode"]=aNode;
-self["@currentNode"];
-};
-};
-return self}, function($ctx1) {$ctx1.fill(self,"visitSendNode:",{aNode:aNode},smalltalk.ASTPCNodeVisitor)})},
-messageSends: ["visitSendNode:", "ifFalse:", "pc:", "+", "pc", "shouldBeInlined", "=", "context"]}),
-smalltalk.ASTPCNodeVisitor);
-
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "interpreter:continue:",
-fn: function (anInterpreter,aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(anInterpreter)._interpretNode_continue_(self,aBlock);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"interpreter:continue:",{anInterpreter:anInterpreter,aBlock:aBlock},smalltalk.Node)})},
-messageSends: ["interpretNode:continue:"]}),
-smalltalk.Node);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isSteppingNode",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return false;
-}, function($ctx1) {$ctx1.fill(self,"isSteppingNode",{},smalltalk.Node)})},
-messageSends: []}),
-smalltalk.Node);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "interpreter:continue:",
-fn: function (anInterpreter,aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(anInterpreter)._interpretAssignmentNode_continue_(self,aBlock);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"interpreter:continue:",{anInterpreter:anInterpreter,aBlock:aBlock},smalltalk.AssignmentNode)})},
-messageSends: ["interpretAssignmentNode:continue:"]}),
-smalltalk.AssignmentNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isSteppingNode",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"isSteppingNode",{},smalltalk.AssignmentNode)})},
-messageSends: []}),
-smalltalk.AssignmentNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "interpreter:continue:",
-fn: function (anInterpreter,aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(anInterpreter)._interpretBlockNode_continue_(self,aBlock);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"interpreter:continue:",{anInterpreter:anInterpreter,aBlock:aBlock},smalltalk.BlockNode)})},
-messageSends: ["interpretBlockNode:continue:"]}),
-smalltalk.BlockNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isSteppingNode",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"isSteppingNode",{},smalltalk.BlockNode)})},
-messageSends: []}),
-smalltalk.BlockNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "interpreter:continue:",
-fn: function (anInterpreter,aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(anInterpreter)._interpretCascadeNode_continue_(self,aBlock);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"interpreter:continue:",{anInterpreter:anInterpreter,aBlock:aBlock},smalltalk.CascadeNode)})},
-messageSends: ["interpretCascadeNode:continue:"]}),
-smalltalk.CascadeNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "interpreter:continue:",
-fn: function (anInterpreter,aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(anInterpreter)._interpretDynamicArrayNode_continue_(self,aBlock);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"interpreter:continue:",{anInterpreter:anInterpreter,aBlock:aBlock},smalltalk.DynamicArrayNode)})},
-messageSends: ["interpretDynamicArrayNode:continue:"]}),
-smalltalk.DynamicArrayNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isSteppingNode",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"isSteppingNode",{},smalltalk.DynamicArrayNode)})},
-messageSends: []}),
-smalltalk.DynamicArrayNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "interpreter:continue:",
-fn: function (anInterpreter,aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(anInterpreter)._interpretDynamicDictionaryNode_continue_(self,aBlock);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"interpreter:continue:",{anInterpreter:anInterpreter,aBlock:aBlock},smalltalk.DynamicDictionaryNode)})},
-messageSends: ["interpretDynamicDictionaryNode:continue:"]}),
-smalltalk.DynamicDictionaryNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isSteppingNode",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"isSteppingNode",{},smalltalk.DynamicDictionaryNode)})},
-messageSends: []}),
-smalltalk.DynamicDictionaryNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "interpreter:continue:",
-fn: function (anInterpreter,aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(anInterpreter)._interpretJSStatementNode_continue_(self,aBlock);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"interpreter:continue:",{anInterpreter:anInterpreter,aBlock:aBlock},smalltalk.JSStatementNode)})},
-messageSends: ["interpretJSStatementNode:continue:"]}),
-smalltalk.JSStatementNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isSteppingNode",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"isSteppingNode",{},smalltalk.JSStatementNode)})},
-messageSends: []}),
-smalltalk.JSStatementNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "interpreter:continue:",
-fn: function (anInterpreter,aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(anInterpreter)._interpretMethodNode_continue_(self,aBlock);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"interpreter:continue:",{anInterpreter:anInterpreter,aBlock:aBlock},smalltalk.MethodNode)})},
-messageSends: ["interpretMethodNode:continue:"]}),
-smalltalk.MethodNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "interpreter:continue:",
-fn: function (anInterpreter,aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(anInterpreter)._interpretReturnNode_continue_(self,aBlock);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"interpreter:continue:",{anInterpreter:anInterpreter,aBlock:aBlock},smalltalk.ReturnNode)})},
-messageSends: ["interpretReturnNode:continue:"]}),
-smalltalk.ReturnNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "interpreter:continue:",
-fn: function (anInterpreter,aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(anInterpreter)._interpretSendNode_continue_(self,aBlock);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"interpreter:continue:",{anInterpreter:anInterpreter,aBlock:aBlock},smalltalk.SendNode)})},
-messageSends: ["interpretSendNode:continue:"]}),
-smalltalk.SendNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isSteppingNode",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"isSteppingNode",{},smalltalk.SendNode)})},
-messageSends: []}),
-smalltalk.SendNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "interpreter:continue:",
-fn: function (anInterpreter,aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(anInterpreter)._interpretSequenceNode_continue_(self,aBlock);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"interpreter:continue:",{anInterpreter:anInterpreter,aBlock:aBlock},smalltalk.SequenceNode)})},
-messageSends: ["interpretSequenceNode:continue:"]}),
-smalltalk.SequenceNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "interpreter:continue:",
-fn: function (anInterpreter,aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(anInterpreter)._interpretBlockSequenceNode_continue_(self,aBlock);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"interpreter:continue:",{anInterpreter:anInterpreter,aBlock:aBlock},smalltalk.BlockSequenceNode)})},
-messageSends: ["interpretBlockSequenceNode:continue:"]}),
-smalltalk.BlockSequenceNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "interpreter:continue:",
-fn: function (anInterpreter,aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(anInterpreter)._interpretValueNode_continue_(self,aBlock);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"interpreter:continue:",{anInterpreter:anInterpreter,aBlock:aBlock},smalltalk.ValueNode)})},
-messageSends: ["interpretValueNode:continue:"]}),
-smalltalk.ValueNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "interpreter:continue:",
-fn: function (anInterpreter,aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(anInterpreter)._interpretVariableNode_continue_(self,aBlock);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"interpreter:continue:",{anInterpreter:anInterpreter,aBlock:aBlock},smalltalk.VariableNode)})},
-messageSends: ["interpretVariableNode:continue:"]}),
-smalltalk.VariableNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "interpreter:continue:",
-fn: function (anInterpreter,aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(anInterpreter)._interpretClassReferenceNode_continue_(self,aBlock);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"interpreter:continue:",{anInterpreter:anInterpreter,aBlock:aBlock},smalltalk.ClassReferenceNode)})},
-messageSends: ["interpretClassReferenceNode:continue:"]}),
-smalltalk.ClassReferenceNode);
-
-});

+ 0 - 1346
js/Compiler-Semantic.deploy.js

@@ -1,1346 +0,0 @@
-define("amber/Compiler-Semantic", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/Kernel-Objects", "amber/Compiler-Core"], function(smalltalk,nil,_st){
-smalltalk.addPackage('Compiler-Semantic');
-smalltalk.packages["Compiler-Semantic"].transport = {"type":"amd","amdNamespace":"amber"};
-
-smalltalk.addClass('LexicalScope', smalltalk.Object, ['node', 'instruction', 'temps', 'args', 'outerScope'], 'Compiler-Semantic');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "addArg:",
-fn: function (aString){
-var self=this;
-function $ArgVar(){return smalltalk.ArgVar||(typeof ArgVar=="undefined"?nil:ArgVar)}
-return smalltalk.withContext(function($ctx1) { 
-_st(self._args())._at_put_(aString,_st($ArgVar())._on_(aString));
-_st(_st(self._args())._at_(aString))._scope_(self);
-return self}, function($ctx1) {$ctx1.fill(self,"addArg:",{aString:aString},smalltalk.LexicalScope)})},
-messageSends: ["at:put:", "on:", "args", "scope:", "at:"]}),
-smalltalk.LexicalScope);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "addTemp:",
-fn: function (aString){
-var self=this;
-function $TempVar(){return smalltalk.TempVar||(typeof TempVar=="undefined"?nil:TempVar)}
-return smalltalk.withContext(function($ctx1) { 
-_st(self._temps())._at_put_(aString,_st($TempVar())._on_(aString));
-_st(_st(self._temps())._at_(aString))._scope_(self);
-return self}, function($ctx1) {$ctx1.fill(self,"addTemp:",{aString:aString},smalltalk.LexicalScope)})},
-messageSends: ["at:put:", "on:", "temps", "scope:", "at:"]}),
-smalltalk.LexicalScope);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "alias",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1="$ctx".__comma(_st(self._scopeLevel())._asString());
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"alias",{},smalltalk.LexicalScope)})},
-messageSends: [",", "asString", "scopeLevel"]}),
-smalltalk.LexicalScope);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "allVariableNames",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(self._args())._keys()).__comma(_st(self._temps())._keys());
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"allVariableNames",{},smalltalk.LexicalScope)})},
-messageSends: [",", "keys", "temps", "args"]}),
-smalltalk.LexicalScope);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "args",
-fn: function (){
-var self=this;
-function $Dictionary(){return smalltalk.Dictionary||(typeof Dictionary=="undefined"?nil:Dictionary)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@args"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@args"]=_st($Dictionary())._new();
-$1=self["@args"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"args",{},smalltalk.LexicalScope)})},
-messageSends: ["ifNil:", "new"]}),
-smalltalk.LexicalScope);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "bindingFor:",
-fn: function (aStringOrNode){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._pseudoVars())._at_ifAbsent_(_st(aStringOrNode)._value(),(function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(self._args())._at_ifAbsent_(_st(aStringOrNode)._value(),(function(){
-return smalltalk.withContext(function($ctx3) {
-return _st(self._temps())._at_ifAbsent_(_st(aStringOrNode)._value(),(function(){
-return smalltalk.withContext(function($ctx4) {
-return nil;
-}, function($ctx4) {$ctx4.fillBlock({},$ctx3)})}));
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"bindingFor:",{aStringOrNode:aStringOrNode},smalltalk.LexicalScope)})},
-messageSends: ["at:ifAbsent:", "value", "temps", "args", "pseudoVars"]}),
-smalltalk.LexicalScope);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "canInlineNonLocalReturns",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._isInlined())._and_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(self._outerScope())._canInlineNonLocalReturns();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"canInlineNonLocalReturns",{},smalltalk.LexicalScope)})},
-messageSends: ["and:", "canInlineNonLocalReturns", "outerScope", "isInlined"]}),
-smalltalk.LexicalScope);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "instruction",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@instruction"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"instruction",{},smalltalk.LexicalScope)})},
-messageSends: []}),
-smalltalk.LexicalScope);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "instruction:",
-fn: function (anIRInstruction){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@instruction"]=anIRInstruction;
-return self}, function($ctx1) {$ctx1.fill(self,"instruction:",{anIRInstruction:anIRInstruction},smalltalk.LexicalScope)})},
-messageSends: []}),
-smalltalk.LexicalScope);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isBlockScope",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._isMethodScope())._not();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"isBlockScope",{},smalltalk.LexicalScope)})},
-messageSends: ["not", "isMethodScope"]}),
-smalltalk.LexicalScope);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isInlined",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(self._instruction())._notNil())._and_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(self._instruction())._isInlined();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"isInlined",{},smalltalk.LexicalScope)})},
-messageSends: ["and:", "isInlined", "instruction", "notNil"]}),
-smalltalk.LexicalScope);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isMethodScope",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return false;
-}, function($ctx1) {$ctx1.fill(self,"isMethodScope",{},smalltalk.LexicalScope)})},
-messageSends: []}),
-smalltalk.LexicalScope);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "lookupVariable:",
-fn: function (aNode){
-var self=this;
-var lookup;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3;
-lookup=self._bindingFor_(aNode);
-$1=lookup;
-if(($receiver = $1) == nil || $receiver == undefined){
-$2=self._outerScope();
-if(($receiver = $2) == nil || $receiver == undefined){
-lookup=$2;
-} else {
-lookup=_st(self._outerScope())._lookupVariable_(aNode);
-};
-lookup;
-} else {
-$1;
-};
-$3=lookup;
-return $3;
-}, function($ctx1) {$ctx1.fill(self,"lookupVariable:",{aNode:aNode,lookup:lookup},smalltalk.LexicalScope)})},
-messageSends: ["bindingFor:", "ifNil:", "ifNotNil:", "lookupVariable:", "outerScope"]}),
-smalltalk.LexicalScope);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "methodScope",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self._outerScope();
-if(($receiver = $2) == nil || $receiver == undefined){
-$1=$2;
-} else {
-$1=_st(self._outerScope())._methodScope();
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"methodScope",{},smalltalk.LexicalScope)})},
-messageSends: ["ifNotNil:", "methodScope", "outerScope"]}),
-smalltalk.LexicalScope);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "node",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@node"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"node",{},smalltalk.LexicalScope)})},
-messageSends: []}),
-smalltalk.LexicalScope);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "node:",
-fn: function (aNode){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@node"]=aNode;
-return self}, function($ctx1) {$ctx1.fill(self,"node:",{aNode:aNode},smalltalk.LexicalScope)})},
-messageSends: []}),
-smalltalk.LexicalScope);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "outerScope",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@outerScope"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"outerScope",{},smalltalk.LexicalScope)})},
-messageSends: []}),
-smalltalk.LexicalScope);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "outerScope:",
-fn: function (aLexicalScope){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@outerScope"]=aLexicalScope;
-return self}, function($ctx1) {$ctx1.fill(self,"outerScope:",{aLexicalScope:aLexicalScope},smalltalk.LexicalScope)})},
-messageSends: []}),
-smalltalk.LexicalScope);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "pseudoVars",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._methodScope())._pseudoVars();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"pseudoVars",{},smalltalk.LexicalScope)})},
-messageSends: ["pseudoVars", "methodScope"]}),
-smalltalk.LexicalScope);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "scopeLevel",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4;
-$1=self._outerScope();
-if(($receiver = $1) == nil || $receiver == undefined){
-return (1);
-} else {
-$1;
-};
-$2=self._isInlined();
-if(smalltalk.assert($2)){
-$3=_st(self._outerScope())._scopeLevel();
-return $3;
-};
-$4=_st(_st(self._outerScope())._scopeLevel()).__plus((1));
-return $4;
-}, function($ctx1) {$ctx1.fill(self,"scopeLevel",{},smalltalk.LexicalScope)})},
-messageSends: ["ifNil:", "outerScope", "ifTrue:", "scopeLevel", "isInlined", "+"]}),
-smalltalk.LexicalScope);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "temps",
-fn: function (){
-var self=this;
-function $Dictionary(){return smalltalk.Dictionary||(typeof Dictionary=="undefined"?nil:Dictionary)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@temps"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@temps"]=_st($Dictionary())._new();
-$1=self["@temps"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"temps",{},smalltalk.LexicalScope)})},
-messageSends: ["ifNil:", "new"]}),
-smalltalk.LexicalScope);
-
-
-
-smalltalk.addClass('MethodLexicalScope', smalltalk.LexicalScope, ['iVars', 'pseudoVars', 'unknownVariables', 'localReturn', 'nonLocalReturns'], 'Compiler-Semantic');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "addIVar:",
-fn: function (aString){
-var self=this;
-function $InstanceVar(){return smalltalk.InstanceVar||(typeof InstanceVar=="undefined"?nil:InstanceVar)}
-return smalltalk.withContext(function($ctx1) { 
-_st(self._iVars())._at_put_(aString,_st($InstanceVar())._on_(aString));
-_st(_st(self._iVars())._at_(aString))._scope_(self);
-return self}, function($ctx1) {$ctx1.fill(self,"addIVar:",{aString:aString},smalltalk.MethodLexicalScope)})},
-messageSends: ["at:put:", "on:", "iVars", "scope:", "at:"]}),
-smalltalk.MethodLexicalScope);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "addNonLocalReturn:",
-fn: function (aScope){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._nonLocalReturns())._add_(aScope);
-return self}, function($ctx1) {$ctx1.fill(self,"addNonLocalReturn:",{aScope:aScope},smalltalk.MethodLexicalScope)})},
-messageSends: ["add:", "nonLocalReturns"]}),
-smalltalk.MethodLexicalScope);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "allVariableNames",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(smalltalk.MethodLexicalScope.superclass.fn.prototype._allVariableNames.apply(_st(self), [])).__comma(_st(self._iVars())._keys());
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"allVariableNames",{},smalltalk.MethodLexicalScope)})},
-messageSends: [",", "keys", "iVars", "allVariableNames"]}),
-smalltalk.MethodLexicalScope);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "bindingFor:",
-fn: function (aNode){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=smalltalk.MethodLexicalScope.superclass.fn.prototype._bindingFor_.apply(_st(self), [aNode]);
-if(($receiver = $2) == nil || $receiver == undefined){
-$1=_st(self._iVars())._at_ifAbsent_(_st(aNode)._value(),(function(){
-return smalltalk.withContext(function($ctx2) {
-return nil;
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"bindingFor:",{aNode:aNode},smalltalk.MethodLexicalScope)})},
-messageSends: ["ifNil:", "at:ifAbsent:", "value", "iVars", "bindingFor:"]}),
-smalltalk.MethodLexicalScope);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "canInlineNonLocalReturns",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"canInlineNonLocalReturns",{},smalltalk.MethodLexicalScope)})},
-messageSends: []}),
-smalltalk.MethodLexicalScope);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "hasLocalReturn",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._localReturn();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"hasLocalReturn",{},smalltalk.MethodLexicalScope)})},
-messageSends: ["localReturn"]}),
-smalltalk.MethodLexicalScope);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "hasNonLocalReturn",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._nonLocalReturns())._notEmpty();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"hasNonLocalReturn",{},smalltalk.MethodLexicalScope)})},
-messageSends: ["notEmpty", "nonLocalReturns"]}),
-smalltalk.MethodLexicalScope);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "iVars",
-fn: function (){
-var self=this;
-function $Dictionary(){return smalltalk.Dictionary||(typeof Dictionary=="undefined"?nil:Dictionary)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@iVars"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@iVars"]=_st($Dictionary())._new();
-$1=self["@iVars"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"iVars",{},smalltalk.MethodLexicalScope)})},
-messageSends: ["ifNil:", "new"]}),
-smalltalk.MethodLexicalScope);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isMethodScope",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"isMethodScope",{},smalltalk.MethodLexicalScope)})},
-messageSends: []}),
-smalltalk.MethodLexicalScope);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "localReturn",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@localReturn"];
-if(($receiver = $2) == nil || $receiver == undefined){
-$1=false;
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"localReturn",{},smalltalk.MethodLexicalScope)})},
-messageSends: ["ifNil:"]}),
-smalltalk.MethodLexicalScope);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "localReturn:",
-fn: function (aBoolean){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@localReturn"]=aBoolean;
-return self}, function($ctx1) {$ctx1.fill(self,"localReturn:",{aBoolean:aBoolean},smalltalk.MethodLexicalScope)})},
-messageSends: []}),
-smalltalk.MethodLexicalScope);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "methodScope",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"methodScope",{},smalltalk.MethodLexicalScope)})},
-messageSends: []}),
-smalltalk.MethodLexicalScope);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "nonLocalReturns",
-fn: function (){
-var self=this;
-function $OrderedCollection(){return smalltalk.OrderedCollection||(typeof OrderedCollection=="undefined"?nil:OrderedCollection)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@nonLocalReturns"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@nonLocalReturns"]=_st($OrderedCollection())._new();
-$1=self["@nonLocalReturns"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"nonLocalReturns",{},smalltalk.MethodLexicalScope)})},
-messageSends: ["ifNil:", "new"]}),
-smalltalk.MethodLexicalScope);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "pseudoVars",
-fn: function (){
-var self=this;
-function $Dictionary(){return smalltalk.Dictionary||(typeof Dictionary=="undefined"?nil:Dictionary)}
-function $PseudoVar(){return smalltalk.PseudoVar||(typeof PseudoVar=="undefined"?nil:PseudoVar)}
-function $Smalltalk(){return smalltalk.Smalltalk||(typeof Smalltalk=="undefined"?nil:Smalltalk)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4;
-$1=self["@pseudoVars"];
-if(($receiver = $1) == nil || $receiver == undefined){
-self["@pseudoVars"]=_st($Dictionary())._new();
-self["@pseudoVars"];
-_st(_st(_st($Smalltalk())._current())._pseudoVariableNames())._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-$2=_st($PseudoVar())._on_(each);
-_st($2)._scope_(self._methodScope());
-$3=_st($2)._yourself();
-return _st(self["@pseudoVars"])._at_put_(each,$3);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-} else {
-$1;
-};
-$4=self["@pseudoVars"];
-return $4;
-}, function($ctx1) {$ctx1.fill(self,"pseudoVars",{},smalltalk.MethodLexicalScope)})},
-messageSends: ["ifNil:", "new", "do:", "at:put:", "scope:", "methodScope", "on:", "yourself", "pseudoVariableNames", "current"]}),
-smalltalk.MethodLexicalScope);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "removeNonLocalReturn:",
-fn: function (aScope){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._nonLocalReturns())._remove_ifAbsent_(aScope,(function(){
-return smalltalk.withContext(function($ctx2) {
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"removeNonLocalReturn:",{aScope:aScope},smalltalk.MethodLexicalScope)})},
-messageSends: ["remove:ifAbsent:", "nonLocalReturns"]}),
-smalltalk.MethodLexicalScope);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "unknownVariables",
-fn: function (){
-var self=this;
-function $OrderedCollection(){return smalltalk.OrderedCollection||(typeof OrderedCollection=="undefined"?nil:OrderedCollection)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@unknownVariables"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@unknownVariables"]=_st($OrderedCollection())._new();
-$1=self["@unknownVariables"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"unknownVariables",{},smalltalk.MethodLexicalScope)})},
-messageSends: ["ifNil:", "new"]}),
-smalltalk.MethodLexicalScope);
-
-
-
-smalltalk.addClass('ScopeVar', smalltalk.Object, ['scope', 'name'], 'Compiler-Semantic');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "alias",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._name())._asVariableName();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"alias",{},smalltalk.ScopeVar)})},
-messageSends: ["asVariableName", "name"]}),
-smalltalk.ScopeVar);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isArgVar",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return false;
-}, function($ctx1) {$ctx1.fill(self,"isArgVar",{},smalltalk.ScopeVar)})},
-messageSends: []}),
-smalltalk.ScopeVar);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isClassRefVar",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return false;
-}, function($ctx1) {$ctx1.fill(self,"isClassRefVar",{},smalltalk.ScopeVar)})},
-messageSends: []}),
-smalltalk.ScopeVar);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isInstanceVar",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return false;
-}, function($ctx1) {$ctx1.fill(self,"isInstanceVar",{},smalltalk.ScopeVar)})},
-messageSends: []}),
-smalltalk.ScopeVar);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isPseudoVar",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return false;
-}, function($ctx1) {$ctx1.fill(self,"isPseudoVar",{},smalltalk.ScopeVar)})},
-messageSends: []}),
-smalltalk.ScopeVar);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isTempVar",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return false;
-}, function($ctx1) {$ctx1.fill(self,"isTempVar",{},smalltalk.ScopeVar)})},
-messageSends: []}),
-smalltalk.ScopeVar);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isUnknownVar",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return false;
-}, function($ctx1) {$ctx1.fill(self,"isUnknownVar",{},smalltalk.ScopeVar)})},
-messageSends: []}),
-smalltalk.ScopeVar);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "name",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@name"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"name",{},smalltalk.ScopeVar)})},
-messageSends: []}),
-smalltalk.ScopeVar);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "name:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@name"]=aString;
-return self}, function($ctx1) {$ctx1.fill(self,"name:",{aString:aString},smalltalk.ScopeVar)})},
-messageSends: []}),
-smalltalk.ScopeVar);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "scope",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@scope"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"scope",{},smalltalk.ScopeVar)})},
-messageSends: []}),
-smalltalk.ScopeVar);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "scope:",
-fn: function (aScope){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@scope"]=aScope;
-return self}, function($ctx1) {$ctx1.fill(self,"scope:",{aScope:aScope},smalltalk.ScopeVar)})},
-messageSends: []}),
-smalltalk.ScopeVar);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "validateAssignment",
-fn: function (){
-var self=this;
-function $InvalidAssignmentError(){return smalltalk.InvalidAssignmentError||(typeof InvalidAssignmentError=="undefined"?nil:InvalidAssignmentError)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3;
-$1=_st(self._isArgVar())._or_((function(){
-return smalltalk.withContext(function($ctx2) {
-return self._isPseudoVar();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-if(smalltalk.assert($1)){
-$2=_st($InvalidAssignmentError())._new();
-_st($2)._variableName_(self._name());
-$3=_st($2)._signal();
-$3;
-};
-return self}, function($ctx1) {$ctx1.fill(self,"validateAssignment",{},smalltalk.ScopeVar)})},
-messageSends: ["ifTrue:", "variableName:", "name", "new", "signal", "or:", "isPseudoVar", "isArgVar"]}),
-smalltalk.ScopeVar);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "on:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=self._new();
-_st($2)._name_(aString);
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"on:",{aString:aString},smalltalk.ScopeVar.klass)})},
-messageSends: ["name:", "new", "yourself"]}),
-smalltalk.ScopeVar.klass);
-
-
-smalltalk.addClass('AliasVar', smalltalk.ScopeVar, ['node'], 'Compiler-Semantic');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "node",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@node"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"node",{},smalltalk.AliasVar)})},
-messageSends: []}),
-smalltalk.AliasVar);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "node:",
-fn: function (aNode){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@node"]=aNode;
-return self}, function($ctx1) {$ctx1.fill(self,"node:",{aNode:aNode},smalltalk.AliasVar)})},
-messageSends: []}),
-smalltalk.AliasVar);
-
-
-
-smalltalk.addClass('ArgVar', smalltalk.ScopeVar, [], 'Compiler-Semantic');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isArgVar",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"isArgVar",{},smalltalk.ArgVar)})},
-messageSends: []}),
-smalltalk.ArgVar);
-
-
-
-smalltalk.addClass('ClassRefVar', smalltalk.ScopeVar, [], 'Compiler-Semantic');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "alias",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st("$".__comma(self._name())).__comma("()");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"alias",{},smalltalk.ClassRefVar)})},
-messageSends: [",", "name"]}),
-smalltalk.ClassRefVar);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isClassRefVar",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"isClassRefVar",{},smalltalk.ClassRefVar)})},
-messageSends: []}),
-smalltalk.ClassRefVar);
-
-
-
-smalltalk.addClass('InstanceVar', smalltalk.ScopeVar, [], 'Compiler-Semantic');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "alias",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st("self[\x22@".__comma(self._name())).__comma("\x22]");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"alias",{},smalltalk.InstanceVar)})},
-messageSends: [",", "name"]}),
-smalltalk.InstanceVar);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isInstanceVar",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"isInstanceVar",{},smalltalk.InstanceVar)})},
-messageSends: []}),
-smalltalk.InstanceVar);
-
-
-
-smalltalk.addClass('PseudoVar', smalltalk.ScopeVar, [], 'Compiler-Semantic');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "alias",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._name();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"alias",{},smalltalk.PseudoVar)})},
-messageSends: ["name"]}),
-smalltalk.PseudoVar);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isPseudoVar",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"isPseudoVar",{},smalltalk.PseudoVar)})},
-messageSends: []}),
-smalltalk.PseudoVar);
-
-
-
-smalltalk.addClass('TempVar', smalltalk.ScopeVar, [], 'Compiler-Semantic');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isTempVar",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"isTempVar",{},smalltalk.TempVar)})},
-messageSends: []}),
-smalltalk.TempVar);
-
-
-
-smalltalk.addClass('UnknownVar', smalltalk.ScopeVar, [], 'Compiler-Semantic');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isUnknownVar",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"isUnknownVar",{},smalltalk.UnknownVar)})},
-messageSends: []}),
-smalltalk.UnknownVar);
-
-
-
-smalltalk.addClass('SemanticAnalyzer', smalltalk.NodeVisitor, ['currentScope', 'theClass', 'classReferences', 'messageSends', 'superSends'], 'Compiler-Semantic');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "classReferences",
-fn: function (){
-var self=this;
-function $Set(){return smalltalk.Set||(typeof Set=="undefined"?nil:Set)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@classReferences"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@classReferences"]=_st($Set())._new();
-$1=self["@classReferences"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"classReferences",{},smalltalk.SemanticAnalyzer)})},
-messageSends: ["ifNil:", "new"]}),
-smalltalk.SemanticAnalyzer);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "errorShadowingVariable:",
-fn: function (aString){
-var self=this;
-function $ShadowingVariableError(){return smalltalk.ShadowingVariableError||(typeof ShadowingVariableError=="undefined"?nil:ShadowingVariableError)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st($ShadowingVariableError())._new();
-_st($1)._variableName_(aString);
-$2=_st($1)._signal();
-return self}, function($ctx1) {$ctx1.fill(self,"errorShadowingVariable:",{aString:aString},smalltalk.SemanticAnalyzer)})},
-messageSends: ["variableName:", "new", "signal"]}),
-smalltalk.SemanticAnalyzer);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "errorUnknownVariable:",
-fn: function (aNode){
-var self=this;
-var identifier;
-function $UnknownVariableError(){return smalltalk.UnknownVariableError||(typeof UnknownVariableError=="undefined"?nil:UnknownVariableError)}
-function $Smalltalk(){return smalltalk.Smalltalk||(typeof Smalltalk=="undefined"?nil:Smalltalk)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3;
-identifier=_st(aNode)._value();
-$1=_st(_st(_st(_st(_st($Smalltalk())._current())._globalJsVariables())._includes_(identifier))._not())._and_((function(){
-return smalltalk.withContext(function($ctx2) {
-return self._isVariableGloballyUndefined_(identifier);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-if(smalltalk.assert($1)){
-$2=_st($UnknownVariableError())._new();
-_st($2)._variableName_(_st(aNode)._value());
-$3=_st($2)._signal();
-$3;
-} else {
-_st(_st(_st(self["@currentScope"])._methodScope())._unknownVariables())._add_(_st(aNode)._value());
-};
-return self}, function($ctx1) {$ctx1.fill(self,"errorUnknownVariable:",{aNode:aNode,identifier:identifier},smalltalk.SemanticAnalyzer)})},
-messageSends: ["value", "ifTrue:ifFalse:", "variableName:", "new", "signal", "add:", "unknownVariables", "methodScope", "and:", "isVariableGloballyUndefined:", "not", "includes:", "globalJsVariables", "current"]}),
-smalltalk.SemanticAnalyzer);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isVariableGloballyUndefined:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return eval('typeof ' + aString + ' == "undefined"');
-return self}, function($ctx1) {$ctx1.fill(self,"isVariableGloballyUndefined:",{aString:aString},smalltalk.SemanticAnalyzer)})},
-messageSends: []}),
-smalltalk.SemanticAnalyzer);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "messageSends",
-fn: function (){
-var self=this;
-function $Dictionary(){return smalltalk.Dictionary||(typeof Dictionary=="undefined"?nil:Dictionary)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@messageSends"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@messageSends"]=_st($Dictionary())._new();
-$1=self["@messageSends"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"messageSends",{},smalltalk.SemanticAnalyzer)})},
-messageSends: ["ifNil:", "new"]}),
-smalltalk.SemanticAnalyzer);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "newBlockScope",
-fn: function (){
-var self=this;
-function $LexicalScope(){return smalltalk.LexicalScope||(typeof LexicalScope=="undefined"?nil:LexicalScope)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._newScopeOfClass_($LexicalScope());
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"newBlockScope",{},smalltalk.SemanticAnalyzer)})},
-messageSends: ["newScopeOfClass:"]}),
-smalltalk.SemanticAnalyzer);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "newMethodScope",
-fn: function (){
-var self=this;
-function $MethodLexicalScope(){return smalltalk.MethodLexicalScope||(typeof MethodLexicalScope=="undefined"?nil:MethodLexicalScope)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._newScopeOfClass_($MethodLexicalScope());
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"newMethodScope",{},smalltalk.SemanticAnalyzer)})},
-messageSends: ["newScopeOfClass:"]}),
-smalltalk.SemanticAnalyzer);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "newScopeOfClass:",
-fn: function (aLexicalScopeClass){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=_st(aLexicalScopeClass)._new();
-_st($2)._outerScope_(self["@currentScope"]);
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"newScopeOfClass:",{aLexicalScopeClass:aLexicalScopeClass},smalltalk.SemanticAnalyzer)})},
-messageSends: ["outerScope:", "new", "yourself"]}),
-smalltalk.SemanticAnalyzer);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "popScope",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@currentScope"];
-if(($receiver = $1) == nil || $receiver == undefined){
-$1;
-} else {
-self["@currentScope"]=_st(self["@currentScope"])._outerScope();
-self["@currentScope"];
-};
-return self}, function($ctx1) {$ctx1.fill(self,"popScope",{},smalltalk.SemanticAnalyzer)})},
-messageSends: ["ifNotNil:", "outerScope"]}),
-smalltalk.SemanticAnalyzer);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "pushScope:",
-fn: function (aScope){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(aScope)._outerScope_(self["@currentScope"]);
-self["@currentScope"]=aScope;
-return self}, function($ctx1) {$ctx1.fill(self,"pushScope:",{aScope:aScope},smalltalk.SemanticAnalyzer)})},
-messageSends: ["outerScope:"]}),
-smalltalk.SemanticAnalyzer);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "superSends",
-fn: function (){
-var self=this;
-function $Dictionary(){return smalltalk.Dictionary||(typeof Dictionary=="undefined"?nil:Dictionary)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@superSends"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@superSends"]=_st($Dictionary())._new();
-$1=self["@superSends"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"superSends",{},smalltalk.SemanticAnalyzer)})},
-messageSends: ["ifNil:", "new"]}),
-smalltalk.SemanticAnalyzer);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "theClass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@theClass"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"theClass",{},smalltalk.SemanticAnalyzer)})},
-messageSends: []}),
-smalltalk.SemanticAnalyzer);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "theClass:",
-fn: function (aClass){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@theClass"]=aClass;
-return self}, function($ctx1) {$ctx1.fill(self,"theClass:",{aClass:aClass},smalltalk.SemanticAnalyzer)})},
-messageSends: []}),
-smalltalk.SemanticAnalyzer);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "validateVariableScope:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self["@currentScope"])._lookupVariable_(aString);
-if(($receiver = $1) == nil || $receiver == undefined){
-$1;
-} else {
-self._errorShadowingVariable_(aString);
-};
-return self}, function($ctx1) {$ctx1.fill(self,"validateVariableScope:",{aString:aString},smalltalk.SemanticAnalyzer)})},
-messageSends: ["ifNotNil:", "errorShadowingVariable:", "lookupVariable:"]}),
-smalltalk.SemanticAnalyzer);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitAssignmentNode:",
-fn: function (aNode){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-smalltalk.SemanticAnalyzer.superclass.fn.prototype._visitAssignmentNode_.apply(_st(self), [aNode]);
-_st(_st(aNode)._left())._beAssigned();
-return self}, function($ctx1) {$ctx1.fill(self,"visitAssignmentNode:",{aNode:aNode},smalltalk.SemanticAnalyzer)})},
-messageSends: ["visitAssignmentNode:", "beAssigned", "left"]}),
-smalltalk.SemanticAnalyzer);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitBlockNode:",
-fn: function (aNode){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._pushScope_(self._newBlockScope());
-_st(aNode)._scope_(self["@currentScope"]);
-_st(self["@currentScope"])._node_(aNode);
-_st(_st(aNode)._parameters())._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-self._validateVariableScope_(each);
-return _st(self["@currentScope"])._addArg_(each);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-smalltalk.SemanticAnalyzer.superclass.fn.prototype._visitBlockNode_.apply(_st(self), [aNode]);
-self._popScope();
-return self}, function($ctx1) {$ctx1.fill(self,"visitBlockNode:",{aNode:aNode},smalltalk.SemanticAnalyzer)})},
-messageSends: ["pushScope:", "newBlockScope", "scope:", "node:", "do:", "validateVariableScope:", "addArg:", "parameters", "visitBlockNode:", "popScope"]}),
-smalltalk.SemanticAnalyzer);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitCascadeNode:",
-fn: function (aNode){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-_st(_st(aNode)._nodes())._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(each)._receiver_(_st(aNode)._receiver());
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-smalltalk.SemanticAnalyzer.superclass.fn.prototype._visitCascadeNode_.apply(_st(self), [aNode]);
-$1=_st(_st(_st(aNode)._nodes())._first())._superSend();
-if(smalltalk.assert($1)){
-_st(_st(aNode)._nodes())._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(each)._superSend_(true);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-};
-return self}, function($ctx1) {$ctx1.fill(self,"visitCascadeNode:",{aNode:aNode},smalltalk.SemanticAnalyzer)})},
-messageSends: ["do:", "receiver:", "receiver", "nodes", "visitCascadeNode:", "ifTrue:", "superSend:", "superSend", "first"]}),
-smalltalk.SemanticAnalyzer);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitClassReferenceNode:",
-fn: function (aNode){
-var self=this;
-function $ClassRefVar(){return smalltalk.ClassRefVar||(typeof ClassRefVar=="undefined"?nil:ClassRefVar)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-_st(self._classReferences())._add_(_st(aNode)._value());
-$1=_st($ClassRefVar())._new();
-_st($1)._name_(_st(aNode)._value());
-$2=_st($1)._yourself();
-_st(aNode)._binding_($2);
-return self}, function($ctx1) {$ctx1.fill(self,"visitClassReferenceNode:",{aNode:aNode},smalltalk.SemanticAnalyzer)})},
-messageSends: ["add:", "value", "classReferences", "binding:", "name:", "new", "yourself"]}),
-smalltalk.SemanticAnalyzer);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitMethodNode:",
-fn: function (aNode){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-self._pushScope_(self._newMethodScope());
-_st(aNode)._scope_(self["@currentScope"]);
-_st(self["@currentScope"])._node_(aNode);
-_st(_st(self._theClass())._allInstanceVariableNames())._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(self["@currentScope"])._addIVar_(each);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-_st(_st(aNode)._arguments())._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-self._validateVariableScope_(each);
-return _st(self["@currentScope"])._addArg_(each);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-smalltalk.SemanticAnalyzer.superclass.fn.prototype._visitMethodNode_.apply(_st(self), [aNode]);
-$1=aNode;
-_st($1)._classReferences_(self._classReferences());
-_st($1)._messageSends_(_st(self._messageSends())._keys());
-$2=_st($1)._superSends_(_st(self._superSends())._keys());
-self._popScope();
-return self}, function($ctx1) {$ctx1.fill(self,"visitMethodNode:",{aNode:aNode},smalltalk.SemanticAnalyzer)})},
-messageSends: ["pushScope:", "newMethodScope", "scope:", "node:", "do:", "addIVar:", "allInstanceVariableNames", "theClass", "validateVariableScope:", "addArg:", "arguments", "visitMethodNode:", "classReferences:", "classReferences", "messageSends:", "keys", "messageSends", "superSends:", "superSends", "popScope"]}),
-smalltalk.SemanticAnalyzer);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitReturnNode:",
-fn: function (aNode){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-_st(aNode)._scope_(self["@currentScope"]);
-$1=_st(self["@currentScope"])._isMethodScope();
-if(smalltalk.assert($1)){
-_st(self["@currentScope"])._localReturn_(true);
-} else {
-_st(_st(self["@currentScope"])._methodScope())._addNonLocalReturn_(self["@currentScope"]);
-};
-smalltalk.SemanticAnalyzer.superclass.fn.prototype._visitReturnNode_.apply(_st(self), [aNode]);
-return self}, function($ctx1) {$ctx1.fill(self,"visitReturnNode:",{aNode:aNode},smalltalk.SemanticAnalyzer)})},
-messageSends: ["scope:", "ifTrue:ifFalse:", "localReturn:", "addNonLocalReturn:", "methodScope", "isMethodScope", "visitReturnNode:"]}),
-smalltalk.SemanticAnalyzer);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitSendNode:",
-fn: function (aNode){
-var self=this;
-function $Set(){return smalltalk.Set||(typeof Set=="undefined"?nil:Set)}
-function $IRSendInliner(){return smalltalk.IRSendInliner||(typeof IRSendInliner=="undefined"?nil:IRSendInliner)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st(_st(_st(aNode)._receiver())._value()).__eq("super");
-if(smalltalk.assert($1)){
-_st(aNode)._superSend_(true);
-_st(_st(aNode)._receiver())._value_("self");
-_st(self._superSends())._at_ifAbsentPut_(_st(aNode)._selector(),(function(){
-return smalltalk.withContext(function($ctx2) {
-return _st($Set())._new();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-_st(_st(self._superSends())._at_(_st(aNode)._selector()))._add_(aNode);
-} else {
-$2=_st(_st($IRSendInliner())._inlinedSelectors())._includes_(_st(aNode)._selector());
-if(smalltalk.assert($2)){
-_st(aNode)._shouldBeInlined_(true);
-_st(_st(aNode)._receiver())._shouldBeAliased_(true);
-};
-};
-_st(self._messageSends())._at_ifAbsentPut_(_st(aNode)._selector(),(function(){
-return smalltalk.withContext(function($ctx2) {
-return _st($Set())._new();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-_st(_st(self._messageSends())._at_(_st(aNode)._selector()))._add_(aNode);
-_st(aNode)._index_(_st(_st(self._messageSends())._at_(_st(aNode)._selector()))._size());
-smalltalk.SemanticAnalyzer.superclass.fn.prototype._visitSendNode_.apply(_st(self), [aNode]);
-return self}, function($ctx1) {$ctx1.fill(self,"visitSendNode:",{aNode:aNode},smalltalk.SemanticAnalyzer)})},
-messageSends: ["ifTrue:ifFalse:", "superSend:", "value:", "receiver", "at:ifAbsentPut:", "selector", "new", "superSends", "add:", "at:", "ifTrue:", "shouldBeInlined:", "shouldBeAliased:", "includes:", "inlinedSelectors", "=", "value", "messageSends", "index:", "size", "visitSendNode:"]}),
-smalltalk.SemanticAnalyzer);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitSequenceNode:",
-fn: function (aNode){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(_st(aNode)._temps())._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-self._validateVariableScope_(each);
-return _st(self["@currentScope"])._addTemp_(each);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-smalltalk.SemanticAnalyzer.superclass.fn.prototype._visitSequenceNode_.apply(_st(self), [aNode]);
-return self}, function($ctx1) {$ctx1.fill(self,"visitSequenceNode:",{aNode:aNode},smalltalk.SemanticAnalyzer)})},
-messageSends: ["do:", "validateVariableScope:", "addTemp:", "temps", "visitSequenceNode:"]}),
-smalltalk.SemanticAnalyzer);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "visitVariableNode:",
-fn: function (aNode){
-var self=this;
-function $UnknownVar(){return smalltalk.UnknownVar||(typeof UnknownVar=="undefined"?nil:UnknownVar)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$3,$4,$5,$2;
-$1=aNode;
-$3=_st(self["@currentScope"])._lookupVariable_(aNode);
-if(($receiver = $3) == nil || $receiver == undefined){
-self._errorUnknownVariable_(aNode);
-$4=_st($UnknownVar())._new();
-_st($4)._name_(_st(aNode)._value());
-$5=_st($4)._yourself();
-$2=$5;
-} else {
-$2=$3;
-};
-_st($1)._binding_($2);
-return self}, function($ctx1) {$ctx1.fill(self,"visitVariableNode:",{aNode:aNode},smalltalk.SemanticAnalyzer)})},
-messageSends: ["binding:", "ifNil:", "errorUnknownVariable:", "name:", "value", "new", "yourself", "lookupVariable:"]}),
-smalltalk.SemanticAnalyzer);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "on:",
-fn: function (aClass){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=self._new();
-_st($2)._theClass_(aClass);
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"on:",{aClass:aClass},smalltalk.SemanticAnalyzer.klass)})},
-messageSends: ["theClass:", "new", "yourself"]}),
-smalltalk.SemanticAnalyzer.klass);
-
-});

+ 0 - 1260
js/Compiler-Tests.deploy.js

@@ -1,1260 +0,0 @@
-define("amber/Compiler-Tests", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/SUnit"], function(smalltalk,nil,_st){
-smalltalk.addPackage('Compiler-Tests');
-smalltalk.packages["Compiler-Tests"].transport = {"type":"amd","amdNamespace":"amber"};
-
-smalltalk.addClass('ASTVisitorTest', smalltalk.TestCase, [], 'Compiler-Tests');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "analyze:forClass:",
-fn: function (aNode,aClass){
-var self=this;
-function $SemanticAnalyzer(){return smalltalk.SemanticAnalyzer||(typeof SemanticAnalyzer=="undefined"?nil:SemanticAnalyzer)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-_st(_st($SemanticAnalyzer())._on_(aClass))._visit_(aNode);
-$1=aNode;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"analyze:forClass:",{aNode:aNode,aClass:aClass},smalltalk.ASTVisitorTest)})},
-messageSends: ["visit:", "on:"]}),
-smalltalk.ASTVisitorTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "parse:",
-fn: function (aString){
-var self=this;
-function $Smalltalk(){return smalltalk.Smalltalk||(typeof Smalltalk=="undefined"?nil:Smalltalk)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st($Smalltalk())._current())._parse_(aString);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"parse:",{aString:aString},smalltalk.ASTVisitorTest)})},
-messageSends: ["parse:", "current"]}),
-smalltalk.ASTVisitorTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "parse:forClass:",
-fn: function (aString,aClass){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._analyze_forClass_(self._parse_(aString),aClass);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"parse:forClass:",{aString:aString,aClass:aClass},smalltalk.ASTVisitorTest)})},
-messageSends: ["analyze:forClass:", "parse:"]}),
-smalltalk.ASTVisitorTest);
-
-
-
-smalltalk.addClass('ASTPCNodeVisitorTest', smalltalk.ASTVisitorTest, [], 'Compiler-Tests');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "astPCNodeVisitor",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._astPCNodeVisitorForPC_((0));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"astPCNodeVisitor",{},smalltalk.ASTPCNodeVisitorTest)})},
-messageSends: ["astPCNodeVisitorForPC:"]}),
-smalltalk.ASTPCNodeVisitorTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "astPCNodeVisitorForPC:",
-fn: function (anInteger){
-var self=this;
-function $ASTPCNodeVisitor(){return smalltalk.ASTPCNodeVisitor||(typeof ASTPCNodeVisitor=="undefined"?nil:ASTPCNodeVisitor)}
-function $AIContext(){return smalltalk.AIContext||(typeof AIContext=="undefined"?nil:AIContext)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$4,$5,$1;
-$2=_st($ASTPCNodeVisitor())._new();
-_st($2)._pc_((0));
-$3=_st($AIContext())._new();
-_st($3)._pc_(anInteger);
-$4=_st($3)._yourself();
-_st($2)._context_($4);
-$5=_st($2)._yourself();
-$1=$5;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"astPCNodeVisitorForPC:",{anInteger:anInteger},smalltalk.ASTPCNodeVisitorTest)})},
-messageSends: ["pc:", "new", "context:", "yourself"]}),
-smalltalk.ASTPCNodeVisitorTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testJSStatementNode",
-fn: function (){
-var self=this;
-var ast,visitor;
-function $Object(){return smalltalk.Object||(typeof Object=="undefined"?nil:Object)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-ast=self._parse_forClass_("foo <consolee.log(1)>",$Object());
-$1=self._astPCNodeVisitor();
-_st($1)._visit_(ast);
-$2=_st($1)._currentNode();
-self._assert_(_st($2)._isJSStatementNode());
-return self}, function($ctx1) {$ctx1.fill(self,"testJSStatementNode",{ast:ast,visitor:visitor},smalltalk.ASTPCNodeVisitorTest)})},
-messageSends: ["parse:forClass:", "assert:", "isJSStatementNode", "visit:", "astPCNodeVisitor", "currentNode"]}),
-smalltalk.ASTPCNodeVisitorTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testMessageSend",
-fn: function (){
-var self=this;
-var ast;
-function $Object(){return smalltalk.Object||(typeof Object=="undefined"?nil:Object)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-ast=self._parse_forClass_("foo self asString yourself. ^ self asBoolean",$Object());
-$1=self._astPCNodeVisitorForPC_((2));
-_st($1)._visit_(ast);
-$2=_st($1)._currentNode();
-self._assert_equals_(_st($2)._selector(),"yourself");
-return self}, function($ctx1) {$ctx1.fill(self,"testMessageSend",{ast:ast},smalltalk.ASTPCNodeVisitorTest)})},
-messageSends: ["parse:forClass:", "assert:equals:", "selector", "visit:", "astPCNodeVisitorForPC:", "currentNode"]}),
-smalltalk.ASTPCNodeVisitorTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testMessageSendWithInlining",
-fn: function (){
-var self=this;
-var ast;
-function $Object(){return smalltalk.Object||(typeof Object=="undefined"?nil:Object)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4;
-ast=self._parse_forClass_("foo true ifTrue: [ self asString yourself ]. ^ self asBoolean",$Object());
-$1=self._astPCNodeVisitorForPC_((2));
-_st($1)._visit_(ast);
-$2=_st($1)._currentNode();
-self._assert_equals_(_st($2)._selector(),"yourself");
-ast=self._parse_forClass_("foo true ifTrue: [ self asString yourself ]. ^ self asBoolean",$Object());
-$3=self._astPCNodeVisitorForPC_((3));
-_st($3)._visit_(ast);
-$4=_st($3)._currentNode();
-self._assert_equals_(_st($4)._selector(),"asBoolean");
-return self}, function($ctx1) {$ctx1.fill(self,"testMessageSendWithInlining",{ast:ast},smalltalk.ASTPCNodeVisitorTest)})},
-messageSends: ["parse:forClass:", "assert:equals:", "selector", "visit:", "astPCNodeVisitorForPC:", "currentNode"]}),
-smalltalk.ASTPCNodeVisitorTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testNoMessageSend",
-fn: function (){
-var self=this;
-var ast;
-function $Object(){return smalltalk.Object||(typeof Object=="undefined"?nil:Object)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-ast=self._parse_forClass_("foo ^ self",$Object());
-$1=self._astPCNodeVisitor();
-_st($1)._visit_(ast);
-$2=_st($1)._currentNode();
-self._assert_(_st($2)._isNil());
-return self}, function($ctx1) {$ctx1.fill(self,"testNoMessageSend",{ast:ast},smalltalk.ASTPCNodeVisitorTest)})},
-messageSends: ["parse:forClass:", "assert:", "isNil", "visit:", "astPCNodeVisitor", "currentNode"]}),
-smalltalk.ASTPCNodeVisitorTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testPC",
-fn: function (){
-var self=this;
-var ast,visitor;
-function $Object(){return smalltalk.Object||(typeof Object=="undefined"?nil:Object)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-ast=self._parse_forClass_("foo <console.log(1)>",$Object());
-$1=self._astPCNodeVisitor();
-_st($1)._visit_(ast);
-$2=_st($1)._currentNode();
-self._assert_(_st($2)._isJSStatementNode());
-return self}, function($ctx1) {$ctx1.fill(self,"testPC",{ast:ast,visitor:visitor},smalltalk.ASTPCNodeVisitorTest)})},
-messageSends: ["parse:forClass:", "assert:", "isJSStatementNode", "visit:", "astPCNodeVisitor", "currentNode"]}),
-smalltalk.ASTPCNodeVisitorTest);
-
-
-
-smalltalk.addClass('AbstractASTInterpreterTest', smalltalk.ASTVisitorTest, [], 'Compiler-Tests');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "interpret:",
-fn: function (aString){
-var self=this;
-function $Dictionary(){return smalltalk.Dictionary||(typeof Dictionary=="undefined"?nil:Dictionary)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._interpret_withArguments_(aString,_st($Dictionary())._new());
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"interpret:",{aString:aString},smalltalk.AbstractASTInterpreterTest)})},
-messageSends: ["interpret:withArguments:", "new"]}),
-smalltalk.AbstractASTInterpreterTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "interpret:receiver:withArguments:",
-fn: function (aString,anObject,aDictionary){
-var self=this;
-var ctx;
-function $AIContext(){return smalltalk.AIContext||(typeof AIContext=="undefined"?nil:AIContext)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-ctx=_st($AIContext())._new();
-_st(ctx)._receiver_(anObject);
-_st(aDictionary)._keysAndValuesDo_((function(key,value){
-return smalltalk.withContext(function($ctx2) {
-return _st(ctx)._localAt_put_(key,value);
-}, function($ctx2) {$ctx2.fillBlock({key:key,value:value},$ctx1)})}));
-$2=self._interpreter();
-_st($2)._context_(ctx);
-_st($2)._interpret_(_st(_st(self._parse_forClass_(aString,_st(anObject)._class()))._nodes())._first());
-$3=_st($2)._result();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"interpret:receiver:withArguments:",{aString:aString,anObject:anObject,aDictionary:aDictionary,ctx:ctx},smalltalk.AbstractASTInterpreterTest)})},
-messageSends: ["new", "receiver:", "keysAndValuesDo:", "localAt:put:", "context:", "interpreter", "interpret:", "first", "nodes", "parse:forClass:", "class", "result"]}),
-smalltalk.AbstractASTInterpreterTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "interpret:withArguments:",
-fn: function (aString,aDictionary){
-var self=this;
-function $Object(){return smalltalk.Object||(typeof Object=="undefined"?nil:Object)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._interpret_receiver_withArguments_(aString,_st($Object())._new(),aDictionary);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"interpret:withArguments:",{aString:aString,aDictionary:aDictionary},smalltalk.AbstractASTInterpreterTest)})},
-messageSends: ["interpret:receiver:withArguments:", "new"]}),
-smalltalk.AbstractASTInterpreterTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "interpreter",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._subclassResponsibility();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"interpreter",{},smalltalk.AbstractASTInterpreterTest)})},
-messageSends: ["subclassResponsibility"]}),
-smalltalk.AbstractASTInterpreterTest);
-
-
-
-smalltalk.addClass('ASTInterpreterTest', smalltalk.AbstractASTInterpreterTest, [], 'Compiler-Tests');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "interpreter",
-fn: function (){
-var self=this;
-function $ASTInterpreter(){return smalltalk.ASTInterpreter||(typeof ASTInterpreter=="undefined"?nil:ASTInterpreter)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st($ASTInterpreter())._new();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"interpreter",{},smalltalk.ASTInterpreterTest)})},
-messageSends: ["new"]}),
-smalltalk.ASTInterpreterTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testBinarySend",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_(self._interpret_("foo 2+3+4"),(9));
-return self}, function($ctx1) {$ctx1.fill(self,"testBinarySend",{},smalltalk.ASTInterpreterTest)})},
-messageSends: ["assert:equals:", "interpret:"]}),
-smalltalk.ASTInterpreterTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testBlockLiteral",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_(self._interpret_("foo ^ true ifTrue: [ 1 ] ifFalse: [ 2 ]"),(1));
-self._assert_equals_(self._interpret_("foo true ifTrue: [ ^ 1 ] ifFalse: [ 2 ]"),(1));
-self._assert_equals_(self._interpret_("foo ^ false ifTrue: [ 1 ] ifFalse: [ 2 ]"),(2));
-return self}, function($ctx1) {$ctx1.fill(self,"testBlockLiteral",{},smalltalk.ASTInterpreterTest)})},
-messageSends: ["assert:equals:", "interpret:"]}),
-smalltalk.ASTInterpreterTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testCascade",
-fn: function (){
-var self=this;
-function $OrderedCollection(){return smalltalk.OrderedCollection||(typeof OrderedCollection=="undefined"?nil:OrderedCollection)}
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_(self._interpret_("foo ^ OrderedCollection new add: 2; add: 3; yourself"),_st($OrderedCollection())._with_with_((2),(3)));
-return self}, function($ctx1) {$ctx1.fill(self,"testCascade",{},smalltalk.ASTInterpreterTest)})},
-messageSends: ["assert:equals:", "interpret:", "with:with:"]}),
-smalltalk.ASTInterpreterTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testDynamicArray",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_(self._interpret_("foo ^ {1+1. 2+2}"),[(2), (4)]);
-return self}, function($ctx1) {$ctx1.fill(self,"testDynamicArray",{},smalltalk.ASTInterpreterTest)})},
-messageSends: ["assert:equals:", "interpret:"]}),
-smalltalk.ASTInterpreterTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testDynamicDictionary",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_(self._interpret_("foo ^ #{1->1. 2->3}"),smalltalk.HashedCollection._from_([(1).__minus_gt((1)),(2).__minus_gt((3))]));
-return self}, function($ctx1) {$ctx1.fill(self,"testDynamicDictionary",{},smalltalk.ASTInterpreterTest)})},
-messageSends: ["assert:equals:", "interpret:", "->"]}),
-smalltalk.ASTInterpreterTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testInlinedJSStatement",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_(self._interpret_("foo <return 2+3>"),(5));
-self._assert_equals_(self._interpret_withArguments_("foo: anInteger <return 2 + anInteger>",smalltalk.HashedCollection._from_(["anInteger".__minus_gt((3))])),(5));
-return self}, function($ctx1) {$ctx1.fill(self,"testInlinedJSStatement",{},smalltalk.ASTInterpreterTest)})},
-messageSends: ["assert:equals:", "interpret:", "interpret:withArguments:", "->"]}),
-smalltalk.ASTInterpreterTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testInstVarAccess",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_(self._interpret_receiver_withArguments_("foo ^ x",(2).__at((3)),smalltalk.HashedCollection._from_([])),(2));
-return self}, function($ctx1) {$ctx1.fill(self,"testInstVarAccess",{},smalltalk.ASTInterpreterTest)})},
-messageSends: ["assert:equals:", "interpret:receiver:withArguments:", "@"]}),
-smalltalk.ASTInterpreterTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testInstVarAssignment",
-fn: function (){
-var self=this;
-function $Point(){return smalltalk.Point||(typeof Point=="undefined"?nil:Point)}
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_(self._interpret_receiver_withArguments_("foo: anInteger x := anInteger. ^ x",_st($Point())._new(),smalltalk.HashedCollection._from_(["anInteger".__minus_gt((2))])),(2));
-return self}, function($ctx1) {$ctx1.fill(self,"testInstVarAssignment",{},smalltalk.ASTInterpreterTest)})},
-messageSends: ["assert:equals:", "interpret:receiver:withArguments:", "new", "->"]}),
-smalltalk.ASTInterpreterTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testNonlocalReturn",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_(self._interpret_("foo true ifTrue: [ ^ 1 ]. ^2"),(1));
-return self}, function($ctx1) {$ctx1.fill(self,"testNonlocalReturn",{},smalltalk.ASTInterpreterTest)})},
-messageSends: ["assert:equals:", "interpret:"]}),
-smalltalk.ASTInterpreterTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testReceiver",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_(self._interpret_receiver_withArguments_("foo ^ self",(2).__at((3)),smalltalk.HashedCollection._from_([])),(2).__at((3)));
-return self}, function($ctx1) {$ctx1.fill(self,"testReceiver",{},smalltalk.ASTInterpreterTest)})},
-messageSends: ["assert:equals:", "interpret:receiver:withArguments:", "@"]}),
-smalltalk.ASTInterpreterTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testSuper",
-fn: function (){
-var self=this;
-function $Dictionary(){return smalltalk.Dictionary||(typeof Dictionary=="undefined"?nil:Dictionary)}
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_(self._interpret_receiver_withArguments_("foo ^ super isBoolean",true,_st($Dictionary())._new()),false);
-return self}, function($ctx1) {$ctx1.fill(self,"testSuper",{},smalltalk.ASTInterpreterTest)})},
-messageSends: ["assert:equals:", "interpret:receiver:withArguments:", "new"]}),
-smalltalk.ASTInterpreterTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testTempAssignment",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_(self._interpret_("foo | a | a := 2. ^ a"),(2));
-return self}, function($ctx1) {$ctx1.fill(self,"testTempAssignment",{},smalltalk.ASTInterpreterTest)})},
-messageSends: ["assert:equals:", "interpret:"]}),
-smalltalk.ASTInterpreterTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testThisContext",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_(_st(_st(self._interpret_("foo ^ thisContext"))._outerContext())._isNil());
-self._assert_(_st(_st(self._interpret_("foo ^ [ thisContext ] value"))._outerContext())._notNil());
-self._assert_(self._interpret_("foo ^ [ thisContext ] value outerContext == thisContext"));
-return self}, function($ctx1) {$ctx1.fill(self,"testThisContext",{},smalltalk.ASTInterpreterTest)})},
-messageSends: ["assert:", "isNil", "outerContext", "interpret:", "notNil"]}),
-smalltalk.ASTInterpreterTest);
-
-
-
-smalltalk.addClass('ASTSteppingInterpreterTest', smalltalk.AbstractASTInterpreterTest, ['interpreter'], 'Compiler-Tests');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "interpreter",
-fn: function (){
-var self=this;
-function $ASTSteppingInterpreter(){return smalltalk.ASTSteppingInterpreter||(typeof ASTSteppingInterpreter=="undefined"?nil:ASTSteppingInterpreter)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@interpreter"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@interpreter"]=_st($ASTSteppingInterpreter())._new();
-$1=self["@interpreter"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"interpreter",{},smalltalk.ASTSteppingInterpreterTest)})},
-messageSends: ["ifNil:", "new"]}),
-smalltalk.ASTSteppingInterpreterTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testAtEnd",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._interpret_("foo 1 + 2");
-self._deny_(_st(self._interpreter())._atEnd());
-_st(self._interpreter())._step();
-self._deny_(_st(self._interpreter())._atEnd());
-_st(self._interpreter())._step();
-self._deny_(_st(self._interpreter())._atEnd());
-_st(self._interpreter())._step();
-self._deny_(_st(self._interpreter())._atEnd());
-_st(self._interpreter())._step();
-self._assert_(_st(self._interpreter())._atEnd());
-return self}, function($ctx1) {$ctx1.fill(self,"testAtEnd",{},smalltalk.ASTSteppingInterpreterTest)})},
-messageSends: ["interpret:", "deny:", "atEnd", "interpreter", "step", "assert:"]}),
-smalltalk.ASTSteppingInterpreterTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testMessageSend",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._interpret_("foo 1 + 2");
-_st(self._interpreter())._step();
-_st(self._interpreter())._step();
-_st(self._interpreter())._step();
-self._assert_equals_(_st(_st(self._interpreter())._currentNode())._value(),(1));
-_st(self._interpreter())._step();
-self._assert_equals_(_st(_st(self._interpreter())._currentNode())._value(),(2));
-_st(self._interpreter())._step();
-self._assert_equals_(_st(self._interpreter())._result(),(3));
-return self}, function($ctx1) {$ctx1.fill(self,"testMessageSend",{},smalltalk.ASTSteppingInterpreterTest)})},
-messageSends: ["interpret:", "step", "interpreter", "assert:equals:", "value", "currentNode", "result"]}),
-smalltalk.ASTSteppingInterpreterTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testSimpleStepping",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._interpret_("foo 1");
-_st(self._interpreter())._step();
-self._assert_(_st(_st(self._interpreter())._result())._isNil());
-_st(self._interpreter())._step();
-self._assert_equals_(_st(self._interpreter())._result(),(1));
-return self}, function($ctx1) {$ctx1.fill(self,"testSimpleStepping",{},smalltalk.ASTSteppingInterpreterTest)})},
-messageSends: ["interpret:", "step", "interpreter", "assert:", "isNil", "result", "assert:equals:"]}),
-smalltalk.ASTSteppingInterpreterTest);
-
-
-
-smalltalk.addClass('CodeGeneratorTest', smalltalk.TestCase, ['receiver'], 'Compiler-Tests');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "codeGeneratorClass",
-fn: function (){
-var self=this;
-function $CodeGenerator(){return smalltalk.CodeGenerator||(typeof CodeGenerator=="undefined"?nil:CodeGenerator)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=$CodeGenerator();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"codeGeneratorClass",{},smalltalk.CodeGeneratorTest)})},
-messageSends: []}),
-smalltalk.CodeGeneratorTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "compiler",
-fn: function (){
-var self=this;
-function $Compiler(){return smalltalk.Compiler||(typeof Compiler=="undefined"?nil:Compiler)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=_st($Compiler())._new();
-_st($2)._codeGeneratorClass_(self._codeGeneratorClass());
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"compiler",{},smalltalk.CodeGeneratorTest)})},
-messageSends: ["codeGeneratorClass:", "codeGeneratorClass", "new", "yourself"]}),
-smalltalk.CodeGeneratorTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "setUp",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@receiver"]=_st(self._targetClass())._new();
-return self}, function($ctx1) {$ctx1.fill(self,"setUp",{},smalltalk.CodeGeneratorTest)})},
-messageSends: ["new", "targetClass"]}),
-smalltalk.CodeGeneratorTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "should:return:",
-fn: function (aString,anObject){
-var self=this;
-var method,result;
-return smalltalk.withContext(function($ctx1) { 
-method=_st(self._compiler())._install_forClass_category_(aString,self._targetClass(),"tests");
-result=_st(self["@receiver"])._perform_(_st(method)._selector());
-_st(self._targetClass())._removeCompiledMethod_(method);
-self._assert_equals_(anObject,result);
-return self}, function($ctx1) {$ctx1.fill(self,"should:return:",{aString:aString,anObject:anObject,method:method,result:result},smalltalk.CodeGeneratorTest)})},
-messageSends: ["install:forClass:category:", "targetClass", "compiler", "perform:", "selector", "removeCompiledMethod:", "assert:equals:"]}),
-smalltalk.CodeGeneratorTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "targetClass",
-fn: function (){
-var self=this;
-function $DoIt(){return smalltalk.DoIt||(typeof DoIt=="undefined"?nil:DoIt)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=$DoIt();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"targetClass",{},smalltalk.CodeGeneratorTest)})},
-messageSends: []}),
-smalltalk.CodeGeneratorTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "tearDown",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self}, function($ctx1) {$ctx1.fill(self,"tearDown",{},smalltalk.CodeGeneratorTest)})},
-messageSends: []}),
-smalltalk.CodeGeneratorTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testAssignment",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._should_return_("foo | a | a := true ifTrue: [ 1 ]. ^ a",(1));
-self._should_return_("foo | a | a := false ifTrue: [ 1 ]. ^ a",nil);
-self._should_return_("foo | a | ^ a := true ifTrue: [ 1 ]",(1));
-return self}, function($ctx1) {$ctx1.fill(self,"testAssignment",{},smalltalk.CodeGeneratorTest)})},
-messageSends: ["should:return:"]}),
-smalltalk.CodeGeneratorTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testBackslashSelectors",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._should_return_("\x5c arg ^ 4",(4));
-self._should_return_("\x5c\x5c arg ^ 42",(42));
-return self}, function($ctx1) {$ctx1.fill(self,"testBackslashSelectors",{},smalltalk.CodeGeneratorTest)})},
-messageSends: ["should:return:"]}),
-smalltalk.CodeGeneratorTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testBlockReturn",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._should_return_("foo ^ #(1 2 3) collect: [ :each | true ifTrue: [ each + 1 ] ]",[(2), (3), (4)]);
-self._should_return_("foo ^ #(1 2 3) collect: [ :each | false ifFalse: [ each + 1 ] ]",[(2), (3), (4)]);
-self._should_return_("foo ^ #(1 2 3) collect: [ :each | each odd ifTrue: [ each + 1 ] ifFalse: [ each - 1 ] ]",[(2), (1), (4)]);
-return self}, function($ctx1) {$ctx1.fill(self,"testBlockReturn",{},smalltalk.CodeGeneratorTest)})},
-messageSends: ["should:return:"]}),
-smalltalk.CodeGeneratorTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testCascades",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._should_return_("foo ^ Array new add: 3; add: 4; yourself",[(3), (4)]);
-return self}, function($ctx1) {$ctx1.fill(self,"testCascades",{},smalltalk.CodeGeneratorTest)})},
-messageSends: ["should:return:"]}),
-smalltalk.CodeGeneratorTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testDynamicArrayElementsOrdered",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._should_return_("foo\x0a\x09| x |\x0a\x09x := 1.\x0a\x09^ { x. true ifTrue: [ x := 2 ] }\x0a",[(1), (2)]);
-return self}, function($ctx1) {$ctx1.fill(self,"testDynamicArrayElementsOrdered",{},smalltalk.CodeGeneratorTest)})},
-messageSends: ["should:return:"]}),
-smalltalk.CodeGeneratorTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testDynamicDictionaryElementsOrdered",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._should_return_("foo\x0a\x09| x |\x0a\x09x := 'foo'->1.\x0a\x09^ #{ x. (true ifTrue: [ x := 'bar'->2 ]) }\x0a",smalltalk.HashedCollection._from_(["foo".__minus_gt((1)),"bar".__minus_gt((2))]));
-return self}, function($ctx1) {$ctx1.fill(self,"testDynamicDictionaryElementsOrdered",{},smalltalk.CodeGeneratorTest)})},
-messageSends: ["should:return:", "->"]}),
-smalltalk.CodeGeneratorTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testInnerTemporalDependentElementsOrdered",
-fn: function (){
-var self=this;
-function $Array(){return smalltalk.Array||(typeof Array=="undefined"?nil:Array)}
-return smalltalk.withContext(function($ctx1) { 
-self._should_return_("foo\x0a\x09| x |\x0a\x09x := Array.\x0a\x09^ x with: 'foo'->x with: 'bar'->(true ifTrue: [ x := 2 ])\x0a",["foo".__minus_gt($Array()),"bar".__minus_gt((2))]);
-self._should_return_("foo\x0a\x09| x |\x0a\x09x := 1.\x0a\x09^ Array with: 'foo'->x with: 'bar'->(true ifTrue: [ x := 2 ])\x0a",["foo".__minus_gt((1)),"bar".__minus_gt((2))]);
-self._should_return_("foo\x0a\x09| x |\x0a\x09x := 1.\x0a\x09^ { 'foo'->x. 'bar'->(true ifTrue: [ x := 2 ]) }\x0a",["foo".__minus_gt((1)),"bar".__minus_gt((2))]);
-self._should_return_("foo\x0a\x09| x |\x0a\x09x := 1.\x0a\x09^ #{ 'foo'->x. 'bar'->(true ifTrue: [ x := 2 ]) }\x0a",smalltalk.HashedCollection._from_(["foo".__minus_gt((1)),"bar".__minus_gt((2))]));
-return self}, function($ctx1) {$ctx1.fill(self,"testInnerTemporalDependentElementsOrdered",{},smalltalk.CodeGeneratorTest)})},
-messageSends: ["should:return:", "->"]}),
-smalltalk.CodeGeneratorTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testLiterals",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._should_return_("foo ^ 1",(1));
-self._should_return_("foo ^ 'hello'","hello");
-self._should_return_("foo ^ #(1 2 3 4)",[(1), (2), (3), (4)]);
-self._should_return_("foo ^ {1. [:x | x ] value: 2. 3. [4] value}",[(1), (2), (3), (4)]);
-self._should_return_("foo ^ true",true);
-self._should_return_("foo ^ false",false);
-self._should_return_("foo ^ #{1->2. 3->4}",smalltalk.HashedCollection._from_([(1).__minus_gt((2)),(3).__minus_gt((4))]));
-self._should_return_("foo ^ #hello","hello");
-self._should_return_("foo ^ -123.456",(-123.456));
-return self}, function($ctx1) {$ctx1.fill(self,"testLiterals",{},smalltalk.CodeGeneratorTest)})},
-messageSends: ["should:return:", "->"]}),
-smalltalk.CodeGeneratorTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testLocalReturn",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._should_return_("foo ^ 1",(1));
-self._should_return_("foo ^ 1 + 1",(2));
-self._should_return_("foo ",self["@receiver"]);
-self._should_return_("foo self asString",self["@receiver"]);
-self._should_return_("foo | a b | a := 1. b := 2. ^ a + b",(3));
-return self}, function($ctx1) {$ctx1.fill(self,"testLocalReturn",{},smalltalk.CodeGeneratorTest)})},
-messageSends: ["should:return:"]}),
-smalltalk.CodeGeneratorTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testMessageSends",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._should_return_("foo ^ 1 asString","1");
-self._should_return_("foo ^ 1 + 1",(2));
-self._should_return_("foo ^ 1 + 2 * 3",(9));
-self._should_return_("foo ^ 1 to: 3",[(1), (2), (3)]);
-self._should_return_("foo ^ 1 to: 5 by: 2",[(1), (3), (5)]);
-return self}, function($ctx1) {$ctx1.fill(self,"testMessageSends",{},smalltalk.CodeGeneratorTest)})},
-messageSends: ["should:return:"]}),
-smalltalk.CodeGeneratorTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testMutableLiterals",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._should_return_("foo ^ #( 1 2 ) at: 1 put: 3; yourself",[(3), (2)]);
-return self}, function($ctx1) {$ctx1.fill(self,"testMutableLiterals",{},smalltalk.CodeGeneratorTest)})},
-messageSends: ["should:return:"]}),
-smalltalk.CodeGeneratorTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testNestedIfTrue",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._should_return_("foo ^ true ifTrue: [ false ifFalse: [ 1 ] ]",(1));
-self._should_return_("foo ^ true ifTrue: [ false ifTrue: [ 1 ] ]",nil);
-self._should_return_("foo true ifTrue: [ false ifFalse: [ ^ 1 ] ]",(1));
-self._should_return_("foo true ifTrue: [ false ifTrue: [ ^ 1 ] ]",self["@receiver"]);
-return self}, function($ctx1) {$ctx1.fill(self,"testNestedIfTrue",{},smalltalk.CodeGeneratorTest)})},
-messageSends: ["should:return:"]}),
-smalltalk.CodeGeneratorTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testNonLocalReturn",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._should_return_("foo [ ^ 1 ] value",(1));
-self._should_return_("foo [ ^ 1 + 1 ] value",(2));
-self._should_return_("foo | a b | a := 1. b := 2. [ ^ a + b ] value. self halt",(3));
-self._should_return_("foo [ :x | ^ x + x ] value: 4. ^ 2",(8));
-return self}, function($ctx1) {$ctx1.fill(self,"testNonLocalReturn",{},smalltalk.CodeGeneratorTest)})},
-messageSends: ["should:return:"]}),
-smalltalk.CodeGeneratorTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testPascalCaseGlobal",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._should_return_("foo ^Object",_st(smalltalk)._at_("Object"));
-self._should_return_("foo ^NonExistent",nil);
-return self}, function($ctx1) {$ctx1.fill(self,"testPascalCaseGlobal",{},smalltalk.CodeGeneratorTest)})},
-messageSends: ["should:return:", "at:"]}),
-smalltalk.CodeGeneratorTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testSendReceiverAndArgumentsOrdered",
-fn: function (){
-var self=this;
-function $Array(){return smalltalk.Array||(typeof Array=="undefined"?nil:Array)}
-return smalltalk.withContext(function($ctx1) { 
-self._should_return_("foo\x0a\x09| x |\x0a\x09x := 1.\x0a\x09^ Array with: x with: (true ifTrue: [ x := 2 ])\x0a",[(1), (2)]);
-self._should_return_("foo\x0a\x09| x |\x0a\x09x := Array.\x0a\x09^ x with: x with: (true ifTrue: [ x := 2 ])\x0a",[$Array(),(2)]);
-return self}, function($ctx1) {$ctx1.fill(self,"testSendReceiverAndArgumentsOrdered",{},smalltalk.CodeGeneratorTest)})},
-messageSends: ["should:return:"]}),
-smalltalk.CodeGeneratorTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testifFalse",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._should_return_("foo true ifFalse: [ ^ 1 ]",self["@receiver"]);
-self._should_return_("foo false ifFalse: [ ^ 2 ]",(2));
-self._should_return_("foo ^ true ifFalse: [ 1 ]",nil);
-self._should_return_("foo ^ false ifFalse: [ 2 ]",(2));
-return self}, function($ctx1) {$ctx1.fill(self,"testifFalse",{},smalltalk.CodeGeneratorTest)})},
-messageSends: ["should:return:"]}),
-smalltalk.CodeGeneratorTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testifFalseIfTrue",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._should_return_("foo true ifFalse: [ ^ 1 ] ifTrue: [ ^ 2 ]",(2));
-self._should_return_("foo false ifFalse: [ ^ 2 ] ifTrue: [ ^1 ]",(2));
-self._should_return_("foo ^ true ifFalse: [ 1 ] ifTrue: [ 2 ]",(2));
-self._should_return_("foo ^ false ifFalse: [ 2 ] ifTrue: [ 1 ]",(2));
-return self}, function($ctx1) {$ctx1.fill(self,"testifFalseIfTrue",{},smalltalk.CodeGeneratorTest)})},
-messageSends: ["should:return:"]}),
-smalltalk.CodeGeneratorTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testifNil",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._should_return_("foo ^ 1 ifNil: [ 2 ]",(1));
-self._should_return_("foo ^ nil ifNil: [ 2 ]",(2));
-self._should_return_("foo 1 ifNil: [ ^ 2 ]",self["@receiver"]);
-self._should_return_("foo nil ifNil: [ ^ 2 ]",(2));
-return self}, function($ctx1) {$ctx1.fill(self,"testifNil",{},smalltalk.CodeGeneratorTest)})},
-messageSends: ["should:return:"]}),
-smalltalk.CodeGeneratorTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testifNilIfNotNil",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._should_return_("foo ^ 1 ifNil: [ 2 ] ifNotNil: [ 3 ]",(3));
-self._should_return_("foo ^ nil ifNil: [ 2 ] ifNotNil: [ 3 ]",(2));
-self._should_return_("foo 1 ifNil: [ ^ 2 ] ifNotNil: [ ^3 ]",(3));
-self._should_return_("foo nil ifNil: [ ^ 2 ] ifNotNil: [ ^3 ]",(2));
-return self}, function($ctx1) {$ctx1.fill(self,"testifNilIfNotNil",{},smalltalk.CodeGeneratorTest)})},
-messageSends: ["should:return:"]}),
-smalltalk.CodeGeneratorTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testifNotNil",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._should_return_("foo ^ 1 ifNotNil: [ 2 ]",(2));
-self._should_return_("foo ^ nil ifNotNil: [ 2 ]",nil);
-self._should_return_("foo 1 ifNotNil: [ ^ 2 ]",(2));
-self._should_return_("foo nil ifNotNil: [ ^ 2 ]",self["@receiver"]);
-return self}, function($ctx1) {$ctx1.fill(self,"testifNotNil",{},smalltalk.CodeGeneratorTest)})},
-messageSends: ["should:return:"]}),
-smalltalk.CodeGeneratorTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testifNotNilWithArgument",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._should_return_("foo ^ 1 ifNotNil: [ :val | val + 2 ]",(3));
-self._should_return_("foo ^ nil ifNotNil: [ :val | val + 2 ]",nil);
-self._should_return_("foo ^ 1 ifNil: [ 5 ] ifNotNil: [ :val | val + 2 ]",(3));
-self._should_return_("foo ^ nil ifNil: [ 5 ] ifNotNil: [ :val | val + 2 ]",(5));
-self._should_return_("foo ^ 1 ifNotNil: [ :val | val + 2 ] ifNil: [ 5 ]",(3));
-self._should_return_("foo ^ nil ifNotNil: [ :val | val + 2 ] ifNil: [ 5 ]",(5));
-return self}, function($ctx1) {$ctx1.fill(self,"testifNotNilWithArgument",{},smalltalk.CodeGeneratorTest)})},
-messageSends: ["should:return:"]}),
-smalltalk.CodeGeneratorTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testifTrue",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._should_return_("foo false ifTrue: [ ^ 1 ]",self["@receiver"]);
-self._should_return_("foo true ifTrue: [ ^ 2 ]",(2));
-self._should_return_("foo ^ false ifTrue: [ 1 ]",nil);
-self._should_return_("foo ^ true ifTrue: [ 2 ]",(2));
-return self}, function($ctx1) {$ctx1.fill(self,"testifTrue",{},smalltalk.CodeGeneratorTest)})},
-messageSends: ["should:return:"]}),
-smalltalk.CodeGeneratorTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testifTrueIfFalse",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._should_return_("foo false ifTrue: [ ^ 1 ] ifFalse: [ ^2 ]",(2));
-self._should_return_("foo true ifTrue: [ ^ 1 ] ifFalse: [ ^ 2 ]",(1));
-self._should_return_("foo ^ false ifTrue: [ 2 ] ifFalse: [ 1 ]",(1));
-self._should_return_("foo ^ true ifTrue: [ 2 ] ifFalse: [ 1 ]",(2));
-return self}, function($ctx1) {$ctx1.fill(self,"testifTrueIfFalse",{},smalltalk.CodeGeneratorTest)})},
-messageSends: ["should:return:"]}),
-smalltalk.CodeGeneratorTest);
-
-
-
-smalltalk.addClass('InliningCodeGeneratorTest', smalltalk.CodeGeneratorTest, [], 'Compiler-Tests');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "codeGeneratorClass",
-fn: function (){
-var self=this;
-function $InliningCodeGenerator(){return smalltalk.InliningCodeGenerator||(typeof InliningCodeGenerator=="undefined"?nil:InliningCodeGenerator)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=$InliningCodeGenerator();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"codeGeneratorClass",{},smalltalk.InliningCodeGeneratorTest)})},
-messageSends: []}),
-smalltalk.InliningCodeGeneratorTest);
-
-
-
-smalltalk.addClass('ScopeVarTest', smalltalk.TestCase, [], 'Compiler-Tests');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testClassRefVar",
-fn: function (){
-var self=this;
-var node;
-function $ClassReferenceNode(){return smalltalk.ClassReferenceNode||(typeof ClassReferenceNode=="undefined"?nil:ClassReferenceNode)}
-function $SemanticAnalyzer(){return smalltalk.SemanticAnalyzer||(typeof SemanticAnalyzer=="undefined"?nil:SemanticAnalyzer)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st($ClassReferenceNode())._new();
-_st($1)._value_("Object");
-$2=_st($1)._yourself();
-node=$2;
-_st(_st($SemanticAnalyzer())._new())._visit_(node);
-self._assert_(_st(_st(node)._binding())._isClassRefVar());
-return self}, function($ctx1) {$ctx1.fill(self,"testClassRefVar",{node:node},smalltalk.ScopeVarTest)})},
-messageSends: ["value:", "new", "yourself", "visit:", "assert:", "isClassRefVar", "binding"]}),
-smalltalk.ScopeVarTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testInstanceVar",
-fn: function (){
-var self=this;
-var node,scope;
-function $VariableNode(){return smalltalk.VariableNode||(typeof VariableNode=="undefined"?nil:VariableNode)}
-function $MethodLexicalScope(){return smalltalk.MethodLexicalScope||(typeof MethodLexicalScope=="undefined"?nil:MethodLexicalScope)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st($VariableNode())._new();
-_st($1)._value_("bzzz");
-$2=_st($1)._yourself();
-node=$2;
-scope=_st($MethodLexicalScope())._new();
-_st(scope)._addIVar_("bzzz");
-self._assert_(_st(_st(scope)._bindingFor_(node))._isInstanceVar());
-return self}, function($ctx1) {$ctx1.fill(self,"testInstanceVar",{node:node,scope:scope},smalltalk.ScopeVarTest)})},
-messageSends: ["value:", "new", "yourself", "addIVar:", "assert:", "isInstanceVar", "bindingFor:"]}),
-smalltalk.ScopeVarTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testPseudoVar",
-fn: function (){
-var self=this;
-var node,pseudoVars;
-function $VariableNode(){return smalltalk.VariableNode||(typeof VariableNode=="undefined"?nil:VariableNode)}
-function $MethodLexicalScope(){return smalltalk.MethodLexicalScope||(typeof MethodLexicalScope=="undefined"?nil:MethodLexicalScope)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-pseudoVars=["self", "super", "true", "false", "nil"];
-_st(pseudoVars)._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-$1=_st($VariableNode())._new();
-_st($1)._value_(each);
-$2=_st($1)._yourself();
-node=$2;
-node;
-return self._assert_(_st(_st(_st($MethodLexicalScope())._new())._bindingFor_(node))._isPseudoVar());
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"testPseudoVar",{node:node,pseudoVars:pseudoVars},smalltalk.ScopeVarTest)})},
-messageSends: ["do:", "value:", "new", "yourself", "assert:", "isPseudoVar", "bindingFor:"]}),
-smalltalk.ScopeVarTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testTempVar",
-fn: function (){
-var self=this;
-var node,scope;
-function $VariableNode(){return smalltalk.VariableNode||(typeof VariableNode=="undefined"?nil:VariableNode)}
-function $MethodLexicalScope(){return smalltalk.MethodLexicalScope||(typeof MethodLexicalScope=="undefined"?nil:MethodLexicalScope)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st($VariableNode())._new();
-_st($1)._value_("bzzz");
-$2=_st($1)._yourself();
-node=$2;
-scope=_st($MethodLexicalScope())._new();
-_st(scope)._addTemp_("bzzz");
-self._assert_(_st(_st(scope)._bindingFor_(node))._isTempVar());
-return self}, function($ctx1) {$ctx1.fill(self,"testTempVar",{node:node,scope:scope},smalltalk.ScopeVarTest)})},
-messageSends: ["value:", "new", "yourself", "addTemp:", "assert:", "isTempVar", "bindingFor:"]}),
-smalltalk.ScopeVarTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testUnknownVar",
-fn: function (){
-var self=this;
-var node;
-function $VariableNode(){return smalltalk.VariableNode||(typeof VariableNode=="undefined"?nil:VariableNode)}
-function $MethodLexicalScope(){return smalltalk.MethodLexicalScope||(typeof MethodLexicalScope=="undefined"?nil:MethodLexicalScope)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st($VariableNode())._new();
-_st($1)._value_("bzzz");
-$2=_st($1)._yourself();
-node=$2;
-self._assert_(_st(_st(_st($MethodLexicalScope())._new())._bindingFor_(node))._isNil());
-return self}, function($ctx1) {$ctx1.fill(self,"testUnknownVar",{node:node},smalltalk.ScopeVarTest)})},
-messageSends: ["value:", "new", "yourself", "assert:", "isNil", "bindingFor:"]}),
-smalltalk.ScopeVarTest);
-
-
-
-smalltalk.addClass('SemanticAnalyzerTest', smalltalk.TestCase, ['analyzer'], 'Compiler-Tests');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "setUp",
-fn: function (){
-var self=this;
-function $Object(){return smalltalk.Object||(typeof Object=="undefined"?nil:Object)}
-function $SemanticAnalyzer(){return smalltalk.SemanticAnalyzer||(typeof SemanticAnalyzer=="undefined"?nil:SemanticAnalyzer)}
-return smalltalk.withContext(function($ctx1) { 
-self["@analyzer"]=_st($SemanticAnalyzer())._on_($Object());
-return self}, function($ctx1) {$ctx1.fill(self,"setUp",{},smalltalk.SemanticAnalyzerTest)})},
-messageSends: ["on:"]}),
-smalltalk.SemanticAnalyzerTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testAssignment",
-fn: function (){
-var self=this;
-var src,ast;
-function $InvalidAssignmentError(){return smalltalk.InvalidAssignmentError||(typeof InvalidAssignmentError=="undefined"?nil:InvalidAssignmentError)}
-return smalltalk.withContext(function($ctx1) { 
-src="foo self := 1";
-ast=_st(smalltalk)._parse_(src);
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(self["@analyzer"])._visit_(ast);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$InvalidAssignmentError());
-return self}, function($ctx1) {$ctx1.fill(self,"testAssignment",{src:src,ast:ast},smalltalk.SemanticAnalyzerTest)})},
-messageSends: ["parse:", "should:raise:", "visit:"]}),
-smalltalk.SemanticAnalyzerTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testNonLocalReturn",
-fn: function (){
-var self=this;
-var src,ast;
-return smalltalk.withContext(function($ctx1) { 
-src="foo | a | a + 1. ^ a";
-ast=_st(smalltalk)._parse_(src);
-_st(self["@analyzer"])._visit_(ast);
-self._deny_(_st(_st(ast)._scope())._hasNonLocalReturn());
-return self}, function($ctx1) {$ctx1.fill(self,"testNonLocalReturn",{src:src,ast:ast},smalltalk.SemanticAnalyzerTest)})},
-messageSends: ["parse:", "visit:", "deny:", "hasNonLocalReturn", "scope"]}),
-smalltalk.SemanticAnalyzerTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testNonLocalReturn2",
-fn: function (){
-var self=this;
-var src,ast;
-return smalltalk.withContext(function($ctx1) { 
-src="foo | a | a + 1. [ [ ^ a] ]";
-ast=_st(smalltalk)._parse_(src);
-_st(self["@analyzer"])._visit_(ast);
-self._assert_(_st(_st(ast)._scope())._hasNonLocalReturn());
-return self}, function($ctx1) {$ctx1.fill(self,"testNonLocalReturn2",{src:src,ast:ast},smalltalk.SemanticAnalyzerTest)})},
-messageSends: ["parse:", "visit:", "assert:", "hasNonLocalReturn", "scope"]}),
-smalltalk.SemanticAnalyzerTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testScope",
-fn: function (){
-var self=this;
-var src,ast;
-return smalltalk.withContext(function($ctx1) { 
-src="foo | a | a + 1. [ | b | b := a ]";
-ast=_st(smalltalk)._parse_(src);
-_st(self["@analyzer"])._visit_(ast);
-self._deny_(_st(_st(_st(_st(_st(_st(ast)._nodes())._first())._nodes())._last())._scope()).__eq_eq(_st(ast)._scope()));
-return self}, function($ctx1) {$ctx1.fill(self,"testScope",{src:src,ast:ast},smalltalk.SemanticAnalyzerTest)})},
-messageSends: ["parse:", "visit:", "deny:", "==", "scope", "last", "nodes", "first"]}),
-smalltalk.SemanticAnalyzerTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testScope2",
-fn: function (){
-var self=this;
-var src,ast;
-return smalltalk.withContext(function($ctx1) { 
-src="foo | a | a + 1. [ [ | b | b := a ] ]";
-ast=_st(smalltalk)._parse_(src);
-_st(self["@analyzer"])._visit_(ast);
-self._deny_(_st(_st(_st(_st(_st(_st(_st(_st(_st(_st(ast)._nodes())._first())._nodes())._last())._nodes())._first())._nodes())._first())._scope()).__eq_eq(_st(ast)._scope()));
-return self}, function($ctx1) {$ctx1.fill(self,"testScope2",{src:src,ast:ast},smalltalk.SemanticAnalyzerTest)})},
-messageSends: ["parse:", "visit:", "deny:", "==", "scope", "first", "nodes", "last"]}),
-smalltalk.SemanticAnalyzerTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testScopeLevel",
-fn: function (){
-var self=this;
-var src,ast;
-return smalltalk.withContext(function($ctx1) { 
-src="foo | a | a + 1. [ [ | b | b := a ] ]";
-ast=_st(smalltalk)._parse_(src);
-_st(self["@analyzer"])._visit_(ast);
-self._assert_equals_(_st(_st(ast)._scope())._scopeLevel(),(1));
-self._assert_equals_(_st(_st(_st(_st(_st(_st(_st(_st(_st(_st(ast)._nodes())._first())._nodes())._last())._nodes())._first())._nodes())._first())._scope())._scopeLevel(),(3));
-return self}, function($ctx1) {$ctx1.fill(self,"testScopeLevel",{src:src,ast:ast},smalltalk.SemanticAnalyzerTest)})},
-messageSends: ["parse:", "visit:", "assert:equals:", "scopeLevel", "scope", "first", "nodes", "last"]}),
-smalltalk.SemanticAnalyzerTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testUnknownVariables",
-fn: function (){
-var self=this;
-var src,ast;
-function $UnknownVariableError(){return smalltalk.UnknownVariableError||(typeof UnknownVariableError=="undefined"?nil:UnknownVariableError)}
-return smalltalk.withContext(function($ctx1) { 
-src="foo | a | b + a";
-ast=_st(smalltalk)._parse_(src);
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(self["@analyzer"])._visit_(ast);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$UnknownVariableError());
-return self}, function($ctx1) {$ctx1.fill(self,"testUnknownVariables",{src:src,ast:ast},smalltalk.SemanticAnalyzerTest)})},
-messageSends: ["parse:", "should:raise:", "visit:"]}),
-smalltalk.SemanticAnalyzerTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testUnknownVariablesWithScope",
-fn: function (){
-var self=this;
-var src,ast;
-function $UnknownVariableError(){return smalltalk.UnknownVariableError||(typeof UnknownVariableError=="undefined"?nil:UnknownVariableError)}
-return smalltalk.withContext(function($ctx1) { 
-src="foo | a b | [ c + 1. [ a + 1. d + 1 ]]";
-ast=_st(smalltalk)._parse_(src);
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(self["@analyzer"])._visit_(ast);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$UnknownVariableError());
-return self}, function($ctx1) {$ctx1.fill(self,"testUnknownVariablesWithScope",{src:src,ast:ast},smalltalk.SemanticAnalyzerTest)})},
-messageSends: ["parse:", "should:raise:", "visit:"]}),
-smalltalk.SemanticAnalyzerTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testVariableShadowing",
-fn: function (){
-var self=this;
-var src,ast;
-return smalltalk.withContext(function($ctx1) { 
-src="foo | a | a + 1";
-ast=_st(smalltalk)._parse_(src);
-_st(self["@analyzer"])._visit_(ast);
-return self}, function($ctx1) {$ctx1.fill(self,"testVariableShadowing",{src:src,ast:ast},smalltalk.SemanticAnalyzerTest)})},
-messageSends: ["parse:", "visit:"]}),
-smalltalk.SemanticAnalyzerTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testVariableShadowing2",
-fn: function (){
-var self=this;
-var src,ast;
-function $ShadowingVariableError(){return smalltalk.ShadowingVariableError||(typeof ShadowingVariableError=="undefined"?nil:ShadowingVariableError)}
-return smalltalk.withContext(function($ctx1) { 
-src="foo | a | a + 1. [ | a | a := 2 ]";
-ast=_st(smalltalk)._parse_(src);
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(self["@analyzer"])._visit_(ast);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$ShadowingVariableError());
-return self}, function($ctx1) {$ctx1.fill(self,"testVariableShadowing2",{src:src,ast:ast},smalltalk.SemanticAnalyzerTest)})},
-messageSends: ["parse:", "should:raise:", "visit:"]}),
-smalltalk.SemanticAnalyzerTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testVariableShadowing3",
-fn: function (){
-var self=this;
-var src,ast;
-return smalltalk.withContext(function($ctx1) { 
-src="foo | a | a + 1. [ | b | b := 2 ]";
-ast=_st(smalltalk)._parse_(src);
-_st(self["@analyzer"])._visit_(ast);
-return self}, function($ctx1) {$ctx1.fill(self,"testVariableShadowing3",{src:src,ast:ast},smalltalk.SemanticAnalyzerTest)})},
-messageSends: ["parse:", "visit:"]}),
-smalltalk.SemanticAnalyzerTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testVariableShadowing4",
-fn: function (){
-var self=this;
-var src,ast;
-return smalltalk.withContext(function($ctx1) { 
-src="foo | a | a + 1. [ [ [ | b | b := 2 ] ] ]";
-ast=_st(smalltalk)._parse_(src);
-_st(self["@analyzer"])._visit_(ast);
-return self}, function($ctx1) {$ctx1.fill(self,"testVariableShadowing4",{src:src,ast:ast},smalltalk.SemanticAnalyzerTest)})},
-messageSends: ["parse:", "visit:"]}),
-smalltalk.SemanticAnalyzerTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testVariableShadowing5",
-fn: function (){
-var self=this;
-var src,ast;
-function $ShadowingVariableError(){return smalltalk.ShadowingVariableError||(typeof ShadowingVariableError=="undefined"?nil:ShadowingVariableError)}
-return smalltalk.withContext(function($ctx1) { 
-src="foo | a | a + 1. [ [ [ | a | a := 2 ] ] ]";
-ast=_st(smalltalk)._parse_(src);
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(self["@analyzer"])._visit_(ast);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$ShadowingVariableError());
-return self}, function($ctx1) {$ctx1.fill(self,"testVariableShadowing5",{src:src,ast:ast},smalltalk.SemanticAnalyzerTest)})},
-messageSends: ["parse:", "should:raise:", "visit:"]}),
-smalltalk.SemanticAnalyzerTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testVariablesLookup",
-fn: function (){
-var self=this;
-var src,ast;
-return smalltalk.withContext(function($ctx1) { 
-src="foo | a | a + 1. [ | b | b := a ]";
-ast=_st(smalltalk)._parse_(src);
-_st(self["@analyzer"])._visit_(ast);
-self._assert_(_st(_st(_st(_st(_st(_st(_st(ast)._nodes())._first())._nodes())._first())._receiver())._binding())._isTempVar());
-self._assert_(_st(_st(_st(_st(_st(_st(_st(_st(ast)._nodes())._first())._nodes())._first())._receiver())._binding())._scope()).__eq_eq(_st(ast)._scope()));
-self._assert_(_st(_st(_st(_st(_st(_st(_st(_st(_st(_st(_st(ast)._nodes())._first())._nodes())._last())._nodes())._first())._nodes())._first())._left())._binding())._isTempVar());
-self._assert_(_st(_st(_st(_st(_st(_st(_st(_st(_st(_st(_st(_st(ast)._nodes())._first())._nodes())._last())._nodes())._first())._nodes())._first())._left())._binding())._scope()).__eq_eq(_st(_st(_st(_st(_st(ast)._nodes())._first())._nodes())._last())._scope()));
-return self}, function($ctx1) {$ctx1.fill(self,"testVariablesLookup",{src:src,ast:ast},smalltalk.SemanticAnalyzerTest)})},
-messageSends: ["parse:", "visit:", "assert:", "isTempVar", "binding", "receiver", "first", "nodes", "==", "scope", "left", "last"]}),
-smalltalk.SemanticAnalyzerTest);
-
-
-});

+ 0 - 87
js/Examples.deploy.js

@@ -1,87 +0,0 @@
-define("amber/Examples", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/Canvas"], function(smalltalk,nil,_st){
-smalltalk.addPackage('Examples');
-smalltalk.packages["Examples"].transport = {"type":"amd","amdNamespace":"amber"};
-
-smalltalk.addClass('Counter', smalltalk.Widget, ['count', 'header'], 'Examples');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "decrease",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@count"]=_st(self["@count"]).__minus((1));
-_st(self["@header"])._contents_((function(html){
-return smalltalk.withContext(function($ctx2) {
-return _st(html)._with_(_st(self["@count"])._asString());
-}, function($ctx2) {$ctx2.fillBlock({html:html},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"decrease",{},smalltalk.Counter)})},
-messageSends: ["-", "contents:", "with:", "asString"]}),
-smalltalk.Counter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "increase",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@count"]=_st(self["@count"]).__plus((1));
-_st(self["@header"])._contents_((function(html){
-return smalltalk.withContext(function($ctx2) {
-return _st(html)._with_(_st(self["@count"])._asString());
-}, function($ctx2) {$ctx2.fillBlock({html:html},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"increase",{},smalltalk.Counter)})},
-messageSends: ["+", "contents:", "with:", "asString"]}),
-smalltalk.Counter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "initialize",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-smalltalk.Counter.superclass.fn.prototype._initialize.apply(_st(self), []);
-self["@count"]=(0);
-return self}, function($ctx1) {$ctx1.fill(self,"initialize",{},smalltalk.Counter)})},
-messageSends: ["initialize"]}),
-smalltalk.Counter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4,$5,$6;
-$1=_st(html)._h1();
-_st($1)._with_(_st(self["@count"])._asString());
-$2=_st($1)._yourself();
-self["@header"]=$2;
-$3=_st(html)._button();
-_st($3)._with_("++");
-$4=_st($3)._onClick_((function(){
-return smalltalk.withContext(function($ctx2) {
-return self._increase();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-$5=_st(html)._button();
-_st($5)._with_("--");
-$6=_st($5)._onClick_((function(){
-return smalltalk.withContext(function($ctx2) {
-return self._decrease();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"renderOn:",{html:html},smalltalk.Counter)})},
-messageSends: ["with:", "asString", "h1", "yourself", "button", "onClick:", "increase", "decrease"]}),
-smalltalk.Counter);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "tryExample",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._new())._appendToJQuery_("body"._asJQuery());
-return self}, function($ctx1) {$ctx1.fill(self,"tryExample",{},smalltalk.Counter.klass)})},
-messageSends: ["appendToJQuery:", "asJQuery", "new"]}),
-smalltalk.Counter.klass);
-
-});

+ 0 - 407
js/Helios-Announcements.deploy.js

@@ -1,407 +0,0 @@
-define("amber/Helios-Announcements", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/Kernel-Objects"], function(smalltalk,nil,_st){
-smalltalk.addPackage('Helios-Announcements');
-smalltalk.packages["Helios-Announcements"].transport = {"type":"amd","amdNamespace":"amber"};
-
-smalltalk.addClass('HLAboutToChange', smalltalk.Object, ['actionBlock'], 'Helios-Announcements');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "actionBlock",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@actionBlock"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"actionBlock",{},smalltalk.HLAboutToChange)})},
-messageSends: []}),
-smalltalk.HLAboutToChange);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "actionBlock:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@actionBlock"]=aBlock;
-return self}, function($ctx1) {$ctx1.fill(self,"actionBlock:",{aBlock:aBlock},smalltalk.HLAboutToChange)})},
-messageSends: []}),
-smalltalk.HLAboutToChange);
-
-
-
-smalltalk.addClass('HLAnnouncement', smalltalk.Object, [], 'Helios-Announcements');
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "heliosClass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "announcement";
-}, function($ctx1) {$ctx1.fill(self,"heliosClass",{},smalltalk.HLAnnouncement.klass)})},
-messageSends: []}),
-smalltalk.HLAnnouncement.klass);
-
-
-smalltalk.addClass('HLCodeHandled', smalltalk.HLAnnouncement, ['code'], 'Helios-Announcements');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "code",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@code"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"code",{},smalltalk.HLCodeHandled)})},
-messageSends: []}),
-smalltalk.HLCodeHandled);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "code:",
-fn: function (aModel){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@code"]=aModel;
-return self}, function($ctx1) {$ctx1.fill(self,"code:",{aModel:aModel},smalltalk.HLCodeHandled)})},
-messageSends: []}),
-smalltalk.HLCodeHandled);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "on:",
-fn: function (aCodeModel){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=self._new();
-_st($2)._code_(aCodeModel);
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"on:",{aCodeModel:aCodeModel},smalltalk.HLCodeHandled.klass)})},
-messageSends: ["code:", "new", "yourself"]}),
-smalltalk.HLCodeHandled.klass);
-
-
-smalltalk.addClass('HLDoItExecuted', smalltalk.HLCodeHandled, [], 'Helios-Announcements');
-
-
-smalltalk.addClass('HLDoItRequested', smalltalk.HLCodeHandled, [], 'Helios-Announcements');
-
-
-smalltalk.addClass('HLInspectItRequested', smalltalk.HLCodeHandled, [], 'Helios-Announcements');
-
-
-smalltalk.addClass('HLPrintItRequested', smalltalk.HLCodeHandled, [], 'Helios-Announcements');
-
-
-smalltalk.addClass('HLDebuggerContextSelected', smalltalk.HLAnnouncement, ['context'], 'Helios-Announcements');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "context",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@context"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"context",{},smalltalk.HLDebuggerContextSelected)})},
-messageSends: []}),
-smalltalk.HLDebuggerContextSelected);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "context:",
-fn: function (aContext){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@context"]=aContext;
-return self}, function($ctx1) {$ctx1.fill(self,"context:",{aContext:aContext},smalltalk.HLDebuggerContextSelected)})},
-messageSends: []}),
-smalltalk.HLDebuggerContextSelected);
-
-
-
-smalltalk.addClass('HLDiveRequested', smalltalk.HLAnnouncement, [], 'Helios-Announcements');
-
-
-smalltalk.addClass('HLEditComment', smalltalk.HLAnnouncement, [], 'Helios-Announcements');
-
-
-smalltalk.addClass('HLErrorRaised', smalltalk.HLAnnouncement, ['error'], 'Helios-Announcements');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "error",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@error"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"error",{},smalltalk.HLErrorRaised)})},
-messageSends: []}),
-smalltalk.HLErrorRaised);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "error:",
-fn: function (anError){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@error"]=anError;
-return self}, function($ctx1) {$ctx1.fill(self,"error:",{anError:anError},smalltalk.HLErrorRaised)})},
-messageSends: []}),
-smalltalk.HLErrorRaised);
-
-
-
-smalltalk.addClass('HLCompileErrorRaised', smalltalk.HLErrorRaised, [], 'Helios-Announcements');
-
-
-smalltalk.addClass('HLParseErrorRaised', smalltalk.HLErrorRaised, ['line', 'column', 'message'], 'Helios-Announcements');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "column",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@column"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"column",{},smalltalk.HLParseErrorRaised)})},
-messageSends: []}),
-smalltalk.HLParseErrorRaised);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "column:",
-fn: function (anInteger){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@column"]=anInteger;
-return self}, function($ctx1) {$ctx1.fill(self,"column:",{anInteger:anInteger},smalltalk.HLParseErrorRaised)})},
-messageSends: []}),
-smalltalk.HLParseErrorRaised);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "line",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@line"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"line",{},smalltalk.HLParseErrorRaised)})},
-messageSends: []}),
-smalltalk.HLParseErrorRaised);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "line:",
-fn: function (anInteger){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@line"]=anInteger;
-return self}, function($ctx1) {$ctx1.fill(self,"line:",{anInteger:anInteger},smalltalk.HLParseErrorRaised)})},
-messageSends: []}),
-smalltalk.HLParseErrorRaised);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "message",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@message"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"message",{},smalltalk.HLParseErrorRaised)})},
-messageSends: []}),
-smalltalk.HLParseErrorRaised);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "message:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@message"]=aString;
-return self}, function($ctx1) {$ctx1.fill(self,"message:",{aString:aString},smalltalk.HLParseErrorRaised)})},
-messageSends: []}),
-smalltalk.HLParseErrorRaised);
-
-
-
-smalltalk.addClass('HLUnknownVariableErrorRaised', smalltalk.HLErrorRaised, [], 'Helios-Announcements');
-
-
-smalltalk.addClass('HLFocusRequested', smalltalk.HLAnnouncement, [], 'Helios-Announcements');
-
-
-smalltalk.addClass('HLClassesFocusRequested', smalltalk.HLFocusRequested, [], 'Helios-Announcements');
-
-
-smalltalk.addClass('HLMethodsFocusRequested', smalltalk.HLFocusRequested, [], 'Helios-Announcements');
-
-
-smalltalk.addClass('HLPackagesFocusRequested', smalltalk.HLFocusRequested, [], 'Helios-Announcements');
-
-
-smalltalk.addClass('HLProtocolsFocusRequested', smalltalk.HLFocusRequested, [], 'Helios-Announcements');
-
-
-smalltalk.addClass('HLSourceCodeFocusRequested', smalltalk.HLFocusRequested, [], 'Helios-Announcements');
-
-
-smalltalk.addClass('HLInstVarAdded', smalltalk.HLAnnouncement, ['theClass', 'variableName'], 'Helios-Announcements');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "theClass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@theClass"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"theClass",{},smalltalk.HLInstVarAdded)})},
-messageSends: []}),
-smalltalk.HLInstVarAdded);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "theClass:",
-fn: function (aClass){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@theClass"]=aClass;
-return self}, function($ctx1) {$ctx1.fill(self,"theClass:",{aClass:aClass},smalltalk.HLInstVarAdded)})},
-messageSends: []}),
-smalltalk.HLInstVarAdded);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "variableName",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@variableName"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"variableName",{},smalltalk.HLInstVarAdded)})},
-messageSends: []}),
-smalltalk.HLInstVarAdded);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "variableName:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@variableName"]=aString;
-return self}, function($ctx1) {$ctx1.fill(self,"variableName:",{aString:aString},smalltalk.HLInstVarAdded)})},
-messageSends: []}),
-smalltalk.HLInstVarAdded);
-
-
-
-smalltalk.addClass('HLItemSelected', smalltalk.HLAnnouncement, ['item'], 'Helios-Announcements');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "item",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@item"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"item",{},smalltalk.HLItemSelected)})},
-messageSends: []}),
-smalltalk.HLItemSelected);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "item:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@item"]=anObject;
-return self}, function($ctx1) {$ctx1.fill(self,"item:",{anObject:anObject},smalltalk.HLItemSelected)})},
-messageSends: []}),
-smalltalk.HLItemSelected);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "on:",
-fn: function (anItem){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=self._new();
-_st($2)._item_(anItem);
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"on:",{anItem:anItem},smalltalk.HLItemSelected.klass)})},
-messageSends: ["item:", "new", "yourself"]}),
-smalltalk.HLItemSelected.klass);
-
-
-smalltalk.addClass('HLClassSelected', smalltalk.HLItemSelected, [], 'Helios-Announcements');
-
-
-smalltalk.addClass('HLInstanceVariableSelected', smalltalk.HLItemSelected, [], 'Helios-Announcements');
-
-
-smalltalk.addClass('HLMethodSelected', smalltalk.HLItemSelected, [], 'Helios-Announcements');
-
-
-smalltalk.addClass('HLPackageSelected', smalltalk.HLItemSelected, [], 'Helios-Announcements');
-
-
-smalltalk.addClass('HLProtocolSelected', smalltalk.HLItemSelected, [], 'Helios-Announcements');
-
-
-smalltalk.addClass('HLSaveSourceCode', smalltalk.HLAnnouncement, [], 'Helios-Announcements');
-
-
-smalltalk.addClass('HLSearchReferences', smalltalk.HLAnnouncement, ['searchString'], 'Helios-Announcements');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "searchString",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@searchString"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"searchString",{},smalltalk.HLSearchReferences)})},
-messageSends: []}),
-smalltalk.HLSearchReferences);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "searchString:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@searchString"]=aString;
-return self}, function($ctx1) {$ctx1.fill(self,"searchString:",{aString:aString},smalltalk.HLSearchReferences)})},
-messageSends: []}),
-smalltalk.HLSearchReferences);
-
-
-
-smalltalk.addClass('HLShowCommentToggled', smalltalk.HLAnnouncement, [], 'Helios-Announcements');
-
-
-smalltalk.addClass('HLShowInstanceToggled', smalltalk.HLAnnouncement, [], 'Helios-Announcements');
-
-
-smalltalk.addClass('HLSourceCodeSaved', smalltalk.HLAnnouncement, [], 'Helios-Announcements');
-
-});

+ 0 - 2991
js/Helios-Browser.deploy.js

@@ -1,2991 +0,0 @@
-define("amber/Helios-Browser", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/Helios-Core", "amber/Kernel-Objects"], function(smalltalk,nil,_st){
-smalltalk.addPackage('Helios-Browser');
-smalltalk.packages["Helios-Browser"].transport = {"type":"amd","amdNamespace":"amber"};
-
-smalltalk.addClass('HLBrowser', smalltalk.HLWidget, ['model', 'packagesListWidget', 'classesListWidget', 'protocolsListWidget', 'methodsListWidget', 'sourceWidget', 'bottomDiv'], 'Helios-Browser');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "canHaveFocus",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"canHaveFocus",{},smalltalk.HLBrowser)})},
-messageSends: []}),
-smalltalk.HLBrowser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "classesListWidget",
-fn: function (){
-var self=this;
-function $HLClassesListWidget(){return smalltalk.HLClassesListWidget||(typeof HLClassesListWidget=="undefined"?nil:HLClassesListWidget)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@classesListWidget"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@classesListWidget"]=_st($HLClassesListWidget())._on_(self._model());
-self["@classesListWidget"];
-$1=_st(self["@classesListWidget"])._next_(self._protocolsListWidget());
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"classesListWidget",{},smalltalk.HLBrowser)})},
-messageSends: ["ifNil:", "on:", "model", "next:", "protocolsListWidget"]}),
-smalltalk.HLBrowser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "environment",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._model())._environment();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"environment",{},smalltalk.HLBrowser)})},
-messageSends: ["environment", "model"]}),
-smalltalk.HLBrowser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "focus",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._packagesListWidget())._focus();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"focus",{},smalltalk.HLBrowser)})},
-messageSends: ["focus", "packagesListWidget"]}),
-smalltalk.HLBrowser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "methodsListWidget",
-fn: function (){
-var self=this;
-function $HLMethodsListWidget(){return smalltalk.HLMethodsListWidget||(typeof HLMethodsListWidget=="undefined"?nil:HLMethodsListWidget)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@methodsListWidget"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@methodsListWidget"]=_st($HLMethodsListWidget())._on_(self._model());
-self["@methodsListWidget"];
-$1=_st(self["@methodsListWidget"])._next_(self._sourceWidget());
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"methodsListWidget",{},smalltalk.HLBrowser)})},
-messageSends: ["ifNil:", "on:", "model", "next:", "sourceWidget"]}),
-smalltalk.HLBrowser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "model",
-fn: function (){
-var self=this;
-function $HLBrowserModel(){return smalltalk.HLBrowserModel||(typeof HLBrowserModel=="undefined"?nil:HLBrowserModel)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@model"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@model"]=_st($HLBrowserModel())._new();
-$1=self["@model"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"model",{},smalltalk.HLBrowser)})},
-messageSends: ["ifNil:", "new"]}),
-smalltalk.HLBrowser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "model:",
-fn: function (aModel){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@model"]=aModel;
-return self}, function($ctx1) {$ctx1.fill(self,"model:",{aModel:aModel},smalltalk.HLBrowser)})},
-messageSends: []}),
-smalltalk.HLBrowser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "packagesListWidget",
-fn: function (){
-var self=this;
-function $HLPackagesListWidget(){return smalltalk.HLPackagesListWidget||(typeof HLPackagesListWidget=="undefined"?nil:HLPackagesListWidget)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@packagesListWidget"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@packagesListWidget"]=_st($HLPackagesListWidget())._on_(self._model());
-self["@packagesListWidget"];
-$1=_st(self["@packagesListWidget"])._next_(self._classesListWidget());
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"packagesListWidget",{},smalltalk.HLBrowser)})},
-messageSends: ["ifNil:", "on:", "model", "next:", "classesListWidget"]}),
-smalltalk.HLBrowser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "protocolsListWidget",
-fn: function (){
-var self=this;
-function $HLProtocolsListWidget(){return smalltalk.HLProtocolsListWidget||(typeof HLProtocolsListWidget=="undefined"?nil:HLProtocolsListWidget)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@protocolsListWidget"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@protocolsListWidget"]=_st($HLProtocolsListWidget())._on_(self._model());
-self["@protocolsListWidget"];
-$1=_st(self["@protocolsListWidget"])._next_(self._methodsListWidget());
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"protocolsListWidget",{},smalltalk.HLBrowser)})},
-messageSends: ["ifNil:", "on:", "model", "next:", "methodsListWidget"]}),
-smalltalk.HLBrowser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "registerBindingsOn:",
-fn: function (aBindingGroup){
-var self=this;
-function $HLToolCommand(){return smalltalk.HLToolCommand||(typeof HLToolCommand=="undefined"?nil:HLToolCommand)}
-return smalltalk.withContext(function($ctx1) { 
-_st($HLToolCommand())._registerConcreteClassesOn_for_(aBindingGroup,self._model());
-return self}, function($ctx1) {$ctx1.fill(self,"registerBindingsOn:",{aBindingGroup:aBindingGroup},smalltalk.HLBrowser)})},
-messageSends: ["registerConcreteClassesOn:for:", "model"]}),
-smalltalk.HLBrowser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderContentOn:",
-fn: function (html){
-var self=this;
-function $HLVerticalSplitter(){return smalltalk.HLVerticalSplitter||(typeof HLVerticalSplitter=="undefined"?nil:HLVerticalSplitter)}
-function $HLHorizontalSplitter(){return smalltalk.HLHorizontalSplitter||(typeof HLHorizontalSplitter=="undefined"?nil:HLHorizontalSplitter)}
-function $HLContainer(){return smalltalk.HLContainer||(typeof HLContainer=="undefined"?nil:HLContainer)}
-return smalltalk.withContext(function($ctx1) { 
-_st(html)._with_(_st($HLContainer())._with_(_st($HLHorizontalSplitter())._with_with_(_st($HLVerticalSplitter())._with_with_(_st($HLVerticalSplitter())._with_with_(self._packagesListWidget(),self._classesListWidget()),_st($HLVerticalSplitter())._with_with_(self._protocolsListWidget(),self._methodsListWidget())),self._sourceWidget())));
-_st(self._packagesListWidget())._focus();
-return self}, function($ctx1) {$ctx1.fill(self,"renderContentOn:",{html:html},smalltalk.HLBrowser)})},
-messageSends: ["with:", "with:with:", "packagesListWidget", "classesListWidget", "protocolsListWidget", "methodsListWidget", "sourceWidget", "focus"]}),
-smalltalk.HLBrowser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "sourceWidget",
-fn: function (){
-var self=this;
-function $HLBrowserBottomWidget(){return smalltalk.HLBrowserBottomWidget||(typeof HLBrowserBottomWidget=="undefined"?nil:HLBrowserBottomWidget)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$4,$1;
-$2=self["@sourceWidget"];
-if(($receiver = $2) == nil || $receiver == undefined){
-$3=_st($HLBrowserBottomWidget())._new();
-_st($3)._model_(self._model());
-$4=_st($3)._yourself();
-self["@sourceWidget"]=$4;
-$1=self["@sourceWidget"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"sourceWidget",{},smalltalk.HLBrowser)})},
-messageSends: ["ifNil:", "model:", "model", "new", "yourself"]}),
-smalltalk.HLBrowser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "unregister",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-smalltalk.HLBrowser.superclass.fn.prototype._unregister.apply(_st(self), []);
-_st([self._packagesListWidget(),self._classesListWidget(),self._protocolsListWidget(),self._methodsListWidget(),self._sourceWidget()])._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(each)._unregister();
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"unregister",{},smalltalk.HLBrowser)})},
-messageSends: ["unregister", "do:", "packagesListWidget", "classesListWidget", "protocolsListWidget", "methodsListWidget", "sourceWidget"]}),
-smalltalk.HLBrowser);
-
-
-smalltalk.HLBrowser.klass.iVarNames = ['nextId'];
-smalltalk.addMethod(
-smalltalk.method({
-selector: "canBeOpenAsTab",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"canBeOpenAsTab",{},smalltalk.HLBrowser.klass)})},
-messageSends: []}),
-smalltalk.HLBrowser.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "nextId",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=self["@nextId"];
-if(($receiver = $1) == nil || $receiver == undefined){
-self["@nextId"]=(0);
-self["@nextId"];
-} else {
-$1;
-};
-$2="browser_".__comma(_st(_st(self["@nextId"]).__plus((1)))._asString());
-return $2;
-}, function($ctx1) {$ctx1.fill(self,"nextId",{},smalltalk.HLBrowser.klass)})},
-messageSends: ["ifNil:", ",", "asString", "+"]}),
-smalltalk.HLBrowser.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "tabClass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "browser";
-}, function($ctx1) {$ctx1.fill(self,"tabClass",{},smalltalk.HLBrowser.klass)})},
-messageSends: []}),
-smalltalk.HLBrowser.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "tabLabel",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Browser";
-}, function($ctx1) {$ctx1.fill(self,"tabLabel",{},smalltalk.HLBrowser.klass)})},
-messageSends: []}),
-smalltalk.HLBrowser.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "tabPriority",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return (0);
-}, function($ctx1) {$ctx1.fill(self,"tabPriority",{},smalltalk.HLBrowser.klass)})},
-messageSends: []}),
-smalltalk.HLBrowser.klass);
-
-
-smalltalk.addClass('HLBrowserBottomWidget', smalltalk.HLWidget, ['model', 'codeWidget', 'documentationWidget'], 'Helios-Browser');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "canHaveFocus",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"canHaveFocus",{},smalltalk.HLBrowserBottomWidget)})},
-messageSends: []}),
-smalltalk.HLBrowserBottomWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "codeWidget",
-fn: function (){
-var self=this;
-function $HLBrowserCodeWidget(){return smalltalk.HLBrowserCodeWidget||(typeof HLBrowserCodeWidget=="undefined"?nil:HLBrowserCodeWidget)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$4,$1;
-$2=self["@codeWidget"];
-if(($receiver = $2) == nil || $receiver == undefined){
-$3=_st($HLBrowserCodeWidget())._new();
-_st($3)._browserModel_(self._model());
-$4=_st($3)._yourself();
-self["@codeWidget"]=$4;
-$1=self["@codeWidget"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"codeWidget",{},smalltalk.HLBrowserBottomWidget)})},
-messageSends: ["ifNil:", "browserModel:", "model", "new", "yourself"]}),
-smalltalk.HLBrowserBottomWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "documentationWidget",
-fn: function (){
-var self=this;
-function $HLDocumentationWidget(){return smalltalk.HLDocumentationWidget||(typeof HLDocumentationWidget=="undefined"?nil:HLDocumentationWidget)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$4,$1;
-$2=self["@documentationWidget"];
-if(($receiver = $2) == nil || $receiver == undefined){
-$3=_st($HLDocumentationWidget())._new();
-_st($3)._model_(self._model());
-$4=_st($3)._yourself();
-self["@documentationWidget"]=$4;
-$1=self["@documentationWidget"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"documentationWidget",{},smalltalk.HLBrowserBottomWidget)})},
-messageSends: ["ifNil:", "model:", "model", "new", "yourself"]}),
-smalltalk.HLBrowserBottomWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "focus",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._codeWidget())._focus();
-return self}, function($ctx1) {$ctx1.fill(self,"focus",{},smalltalk.HLBrowserBottomWidget)})},
-messageSends: ["focus", "codeWidget"]}),
-smalltalk.HLBrowserBottomWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "model",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@model"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"model",{},smalltalk.HLBrowserBottomWidget)})},
-messageSends: []}),
-smalltalk.HLBrowserBottomWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "model:",
-fn: function (aModel){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@model"]=aModel;
-self._observeModel();
-return self}, function($ctx1) {$ctx1.fill(self,"model:",{aModel:aModel},smalltalk.HLBrowserBottomWidget)})},
-messageSends: ["observeModel"]}),
-smalltalk.HLBrowserBottomWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "observeModel",
-fn: function (){
-var self=this;
-function $HLShowInstanceToggled(){return smalltalk.HLShowInstanceToggled||(typeof HLShowInstanceToggled=="undefined"?nil:HLShowInstanceToggled)}
-function $HLShowCommentToggled(){return smalltalk.HLShowCommentToggled||(typeof HLShowCommentToggled=="undefined"?nil:HLShowCommentToggled)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st(self._model())._announcer();
-_st($1)._on_send_to_($HLShowInstanceToggled(),"onShowInstanceToggled",self);
-$2=_st($1)._on_send_to_($HLShowCommentToggled(),"onShowCommentToggled",self);
-return self}, function($ctx1) {$ctx1.fill(self,"observeModel",{},smalltalk.HLBrowserBottomWidget)})},
-messageSends: ["on:send:to:", "announcer", "model"]}),
-smalltalk.HLBrowserBottomWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onShowCommentToggled",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._refresh();
-return self}, function($ctx1) {$ctx1.fill(self,"onShowCommentToggled",{},smalltalk.HLBrowserBottomWidget)})},
-messageSends: ["refresh"]}),
-smalltalk.HLBrowserBottomWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onShowInstanceToggled",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._refresh();
-return self}, function($ctx1) {$ctx1.fill(self,"onShowInstanceToggled",{},smalltalk.HLBrowserBottomWidget)})},
-messageSends: ["refresh"]}),
-smalltalk.HLBrowserBottomWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "previous",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self}, function($ctx1) {$ctx1.fill(self,"previous",{},smalltalk.HLBrowserBottomWidget)})},
-messageSends: []}),
-smalltalk.HLBrowserBottomWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "previous:",
-fn: function (aWidget){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self}, function($ctx1) {$ctx1.fill(self,"previous:",{aWidget:aWidget},smalltalk.HLBrowserBottomWidget)})},
-messageSends: []}),
-smalltalk.HLBrowserBottomWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderContentOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._model())._showComment();
-if(smalltalk.assert($1)){
-self._renderPanesOn_(html);
-} else {
-_st(html)._with_(self._codeWidget());
-};
-return self}, function($ctx1) {$ctx1.fill(self,"renderContentOn:",{html:html},smalltalk.HLBrowserBottomWidget)})},
-messageSends: ["ifTrue:ifFalse:", "renderPanesOn:", "with:", "codeWidget", "showComment", "model"]}),
-smalltalk.HLBrowserBottomWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderPanesOn:",
-fn: function (html){
-var self=this;
-function $HLVerticalSplitter(){return smalltalk.HLVerticalSplitter||(typeof HLVerticalSplitter=="undefined"?nil:HLVerticalSplitter)}
-return smalltalk.withContext(function($ctx1) { 
-_st(html)._with_(_st($HLVerticalSplitter())._with_with_(self._codeWidget(),self._documentationWidget()));
-return self}, function($ctx1) {$ctx1.fill(self,"renderPanesOn:",{html:html},smalltalk.HLBrowserBottomWidget)})},
-messageSends: ["with:", "with:with:", "codeWidget", "documentationWidget"]}),
-smalltalk.HLBrowserBottomWidget);
-
-
-
-smalltalk.addClass('HLBrowserModel', smalltalk.HLToolModel, ['showInstance', 'showComment'], 'Helios-Browser');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "editComment",
-fn: function (){
-var self=this;
-function $HLEditComment(){return smalltalk.HLEditComment||(typeof HLEditComment=="undefined"?nil:HLEditComment)}
-return smalltalk.withContext(function($ctx1) { 
-_st(self._announcer())._announce_(_st($HLEditComment())._new());
-return self}, function($ctx1) {$ctx1.fill(self,"editComment",{},smalltalk.HLBrowserModel)})},
-messageSends: ["announce:", "new", "announcer"]}),
-smalltalk.HLBrowserModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "focusOnClasses",
-fn: function (){
-var self=this;
-function $HLClassesFocusRequested(){return smalltalk.HLClassesFocusRequested||(typeof HLClassesFocusRequested=="undefined"?nil:HLClassesFocusRequested)}
-return smalltalk.withContext(function($ctx1) { 
-_st(self._announcer())._announce_(_st($HLClassesFocusRequested())._new());
-return self}, function($ctx1) {$ctx1.fill(self,"focusOnClasses",{},smalltalk.HLBrowserModel)})},
-messageSends: ["announce:", "new", "announcer"]}),
-smalltalk.HLBrowserModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "focusOnMethods",
-fn: function (){
-var self=this;
-function $HLMethodsFocusRequested(){return smalltalk.HLMethodsFocusRequested||(typeof HLMethodsFocusRequested=="undefined"?nil:HLMethodsFocusRequested)}
-return smalltalk.withContext(function($ctx1) { 
-_st(self._announcer())._announce_(_st($HLMethodsFocusRequested())._new());
-return self}, function($ctx1) {$ctx1.fill(self,"focusOnMethods",{},smalltalk.HLBrowserModel)})},
-messageSends: ["announce:", "new", "announcer"]}),
-smalltalk.HLBrowserModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "focusOnPackages",
-fn: function (){
-var self=this;
-function $HLPackagesFocusRequested(){return smalltalk.HLPackagesFocusRequested||(typeof HLPackagesFocusRequested=="undefined"?nil:HLPackagesFocusRequested)}
-return smalltalk.withContext(function($ctx1) { 
-_st(self._announcer())._announce_(_st($HLPackagesFocusRequested())._new());
-return self}, function($ctx1) {$ctx1.fill(self,"focusOnPackages",{},smalltalk.HLBrowserModel)})},
-messageSends: ["announce:", "new", "announcer"]}),
-smalltalk.HLBrowserModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "focusOnProtocols",
-fn: function (){
-var self=this;
-function $HLProtocolsFocusRequested(){return smalltalk.HLProtocolsFocusRequested||(typeof HLProtocolsFocusRequested=="undefined"?nil:HLProtocolsFocusRequested)}
-return smalltalk.withContext(function($ctx1) { 
-_st(self._announcer())._announce_(_st($HLProtocolsFocusRequested())._new());
-return self}, function($ctx1) {$ctx1.fill(self,"focusOnProtocols",{},smalltalk.HLBrowserModel)})},
-messageSends: ["announce:", "new", "announcer"]}),
-smalltalk.HLBrowserModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "focusOnSourceCode",
-fn: function (){
-var self=this;
-function $HLSourceCodeFocusRequested(){return smalltalk.HLSourceCodeFocusRequested||(typeof HLSourceCodeFocusRequested=="undefined"?nil:HLSourceCodeFocusRequested)}
-return smalltalk.withContext(function($ctx1) { 
-_st(self._announcer())._announce_(_st($HLSourceCodeFocusRequested())._new());
-return self}, function($ctx1) {$ctx1.fill(self,"focusOnSourceCode",{},smalltalk.HLBrowserModel)})},
-messageSends: ["announce:", "new", "announcer"]}),
-smalltalk.HLBrowserModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isBrowserModel",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"isBrowserModel",{},smalltalk.HLBrowserModel)})},
-messageSends: []}),
-smalltalk.HLBrowserModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "setClassComment:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._environment())._setClassCommentOf_to_(_st(self._selectedClass())._theNonMetaClass(),aString);
-return self}, function($ctx1) {$ctx1.fill(self,"setClassComment:",{aString:aString},smalltalk.HLBrowserModel)})},
-messageSends: ["setClassCommentOf:to:", "theNonMetaClass", "selectedClass", "environment"]}),
-smalltalk.HLBrowserModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "showComment",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@showComment"];
-if(($receiver = $2) == nil || $receiver == undefined){
-$1=false;
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"showComment",{},smalltalk.HLBrowserModel)})},
-messageSends: ["ifNil:"]}),
-smalltalk.HLBrowserModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "showComment:",
-fn: function (aBoolean){
-var self=this;
-function $HLShowCommentToggled(){return smalltalk.HLShowCommentToggled||(typeof HLShowCommentToggled=="undefined"?nil:HLShowCommentToggled)}
-return smalltalk.withContext(function($ctx1) { 
-self._withChangesDo_((function(){
-return smalltalk.withContext(function($ctx2) {
-self["@showComment"]=aBoolean;
-self["@showComment"];
-return _st(self._announcer())._announce_(_st($HLShowCommentToggled())._new());
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"showComment:",{aBoolean:aBoolean},smalltalk.HLBrowserModel)})},
-messageSends: ["withChangesDo:", "announce:", "new", "announcer"]}),
-smalltalk.HLBrowserModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "showInstance",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@showInstance"];
-if(($receiver = $2) == nil || $receiver == undefined){
-$1=true;
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"showInstance",{},smalltalk.HLBrowserModel)})},
-messageSends: ["ifNil:"]}),
-smalltalk.HLBrowserModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "showInstance:",
-fn: function (aBoolean){
-var self=this;
-function $HLShowInstanceToggled(){return smalltalk.HLShowInstanceToggled||(typeof HLShowInstanceToggled=="undefined"?nil:HLShowInstanceToggled)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$4,$3;
-self._withChangesDo_((function(){
-return smalltalk.withContext(function($ctx2) {
-self["@showInstance"]=aBoolean;
-self["@showInstance"];
-$1=self._selectedClass();
-if(($receiver = $1) == nil || $receiver == undefined){
-$1;
-} else {
-$2=self;
-$4=aBoolean;
-if(smalltalk.assert($4)){
-$3=_st(self._selectedClass())._theNonMetaClass();
-} else {
-$3=_st(self._selectedClass())._theMetaClass();
-};
-_st($2)._selectedClass_($3);
-};
-return _st(self._announcer())._announce_(_st($HLShowInstanceToggled())._new());
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"showInstance:",{aBoolean:aBoolean},smalltalk.HLBrowserModel)})},
-messageSends: ["withChangesDo:", "ifNotNil:", "selectedClass:", "ifTrue:ifFalse:", "theNonMetaClass", "selectedClass", "theMetaClass", "announce:", "new", "announcer"]}),
-smalltalk.HLBrowserModel);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "on:",
-fn: function (anEnvironment){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=self._new();
-_st($2)._environment_(anEnvironment);
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"on:",{anEnvironment:anEnvironment},smalltalk.HLBrowserModel.klass)})},
-messageSends: ["environment:", "new", "yourself"]}),
-smalltalk.HLBrowserModel.klass);
-
-
-smalltalk.addClass('HLClassCache', smalltalk.Object, ['class', 'selectorsCache', 'overrideCache', 'overriddenCache'], 'Helios-Browser');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "invalidateChildrenSelector:",
-fn: function (aSelector){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-_st(_st(self._theClass())._subclasses())._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-$1=_st(self._selectorsCache())._cacheFor_(each);
-_st($1)._removeSelector_(aSelector);
-$2=_st($1)._invalidateChildrenSelector_(aSelector);
-return $2;
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"invalidateChildrenSelector:",{aSelector:aSelector},smalltalk.HLClassCache)})},
-messageSends: ["do:", "removeSelector:", "cacheFor:", "selectorsCache", "invalidateChildrenSelector:", "subclasses", "theClass"]}),
-smalltalk.HLClassCache);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "invalidateParentSelector:",
-fn: function (aSelector){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3;
-$1=_st(self._theClass())._superclass();
-if(($receiver = $1) == nil || $receiver == undefined){
-$1;
-} else {
-$2=_st(self._selectorsCache())._cacheFor_(_st(self._theClass())._superclass());
-_st($2)._removeSelector_(aSelector);
-$3=_st($2)._invalidateParentSelector_(aSelector);
-$3;
-};
-return self}, function($ctx1) {$ctx1.fill(self,"invalidateParentSelector:",{aSelector:aSelector},smalltalk.HLClassCache)})},
-messageSends: ["ifNotNil:", "removeSelector:", "cacheFor:", "superclass", "theClass", "selectorsCache", "invalidateParentSelector:"]}),
-smalltalk.HLClassCache);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "invalidateSelector:",
-fn: function (aSelector){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=self;
-_st($1)._invalidateParentSelector_(aSelector);
-_st($1)._invalidateChildrenSelector_(aSelector);
-$2=_st($1)._removeSelector_(aSelector);
-return self}, function($ctx1) {$ctx1.fill(self,"invalidateSelector:",{aSelector:aSelector},smalltalk.HLClassCache)})},
-messageSends: ["invalidateParentSelector:", "invalidateChildrenSelector:", "removeSelector:"]}),
-smalltalk.HLClassCache);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isOverridden:",
-fn: function (aMethod){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._overriddenCache())._at_ifAbsentPut_(_st(aMethod)._selector(),(function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(aMethod)._isOverridden();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"isOverridden:",{aMethod:aMethod},smalltalk.HLClassCache)})},
-messageSends: ["at:ifAbsentPut:", "selector", "isOverridden", "overriddenCache"]}),
-smalltalk.HLClassCache);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isOverride:",
-fn: function (aMethod){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._overrideCache())._at_ifAbsentPut_(_st(aMethod)._selector(),(function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(aMethod)._isOverride();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"isOverride:",{aMethod:aMethod},smalltalk.HLClassCache)})},
-messageSends: ["at:ifAbsentPut:", "selector", "isOverride", "overrideCache"]}),
-smalltalk.HLClassCache);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "overriddenCache",
-fn: function (){
-var self=this;
-function $HashedCollection(){return smalltalk.HashedCollection||(typeof HashedCollection=="undefined"?nil:HashedCollection)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@overriddenCache"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@overriddenCache"]=_st($HashedCollection())._new();
-$1=self["@overriddenCache"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"overriddenCache",{},smalltalk.HLClassCache)})},
-messageSends: ["ifNil:", "new"]}),
-smalltalk.HLClassCache);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "overrideCache",
-fn: function (){
-var self=this;
-function $HashedCollection(){return smalltalk.HashedCollection||(typeof HashedCollection=="undefined"?nil:HashedCollection)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@overrideCache"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@overrideCache"]=_st($HashedCollection())._new();
-$1=self["@overrideCache"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"overrideCache",{},smalltalk.HLClassCache)})},
-messageSends: ["ifNil:", "new"]}),
-smalltalk.HLClassCache);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "removeSelector:",
-fn: function (aSelector){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._overriddenCache())._removeKey_ifAbsent_(aSelector,(function(){
-return smalltalk.withContext(function($ctx2) {
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-_st(self._overrideCache())._removeKey_ifAbsent_(aSelector,(function(){
-return smalltalk.withContext(function($ctx2) {
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"removeSelector:",{aSelector:aSelector},smalltalk.HLClassCache)})},
-messageSends: ["removeKey:ifAbsent:", "overriddenCache", "overrideCache"]}),
-smalltalk.HLClassCache);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selectorsCache",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@selectorsCache"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"selectorsCache",{},smalltalk.HLClassCache)})},
-messageSends: []}),
-smalltalk.HLClassCache);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selectorsCache:",
-fn: function (aCache){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@selectorsCache"]=aCache;
-return self}, function($ctx1) {$ctx1.fill(self,"selectorsCache:",{aCache:aCache},smalltalk.HLClassCache)})},
-messageSends: []}),
-smalltalk.HLClassCache);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "theClass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@class"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"theClass",{},smalltalk.HLClassCache)})},
-messageSends: []}),
-smalltalk.HLClassCache);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "theClass:",
-fn: function (aClass){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@class"]=aClass;
-return self}, function($ctx1) {$ctx1.fill(self,"theClass:",{aClass:aClass},smalltalk.HLClassCache)})},
-messageSends: []}),
-smalltalk.HLClassCache);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "on:selectorsCache:",
-fn: function (aClass,aSelectorsCache){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=self._new();
-_st($2)._theClass_(aClass);
-_st($2)._selectorsCache_(aSelectorsCache);
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"on:selectorsCache:",{aClass:aClass,aSelectorsCache:aSelectorsCache},smalltalk.HLClassCache.klass)})},
-messageSends: ["theClass:", "new", "selectorsCache:", "yourself"]}),
-smalltalk.HLClassCache.klass);
-
-
-smalltalk.addClass('HLClassesListWidget', smalltalk.HLToolListWidget, [], 'Helios-Browser');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "cssClassForItem:",
-fn: function (aClass){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st(_st(_st(aClass)._theNonMetaClass())._comment())._isEmpty();
-if(smalltalk.assert($1)){
-return "uncommented";
-};
-$2=_st(_st(aClass)._theNonMetaClass())._heliosClass();
-return $2;
-}, function($ctx1) {$ctx1.fill(self,"cssClassForItem:",{aClass:aClass},smalltalk.HLClassesListWidget)})},
-messageSends: ["ifTrue:", "isEmpty", "comment", "theNonMetaClass", "heliosClass"]}),
-smalltalk.HLClassesListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "focusMethodsListWidget",
-fn: function (){
-var self=this;
-function $HLMethodsListFocus(){return smalltalk.HLMethodsListFocus||(typeof HLMethodsListFocus=="undefined"?nil:HLMethodsListFocus)}
-return smalltalk.withContext(function($ctx1) { 
-_st(_st(self._model())._announcer())._announce_(_st($HLMethodsListFocus())._new());
-return self}, function($ctx1) {$ctx1.fill(self,"focusMethodsListWidget",{},smalltalk.HLClassesListWidget)})},
-messageSends: ["announce:", "new", "announcer", "model"]}),
-smalltalk.HLClassesListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "focusProtocolsListWidget",
-fn: function (){
-var self=this;
-function $HLProtocolsListFocus(){return smalltalk.HLProtocolsListFocus||(typeof HLProtocolsListFocus=="undefined"?nil:HLProtocolsListFocus)}
-return smalltalk.withContext(function($ctx1) { 
-_st(_st(self._model())._announcer())._announce_(_st($HLProtocolsListFocus())._new());
-return self}, function($ctx1) {$ctx1.fill(self,"focusProtocolsListWidget",{},smalltalk.HLClassesListWidget)})},
-messageSends: ["announce:", "new", "announcer", "model"]}),
-smalltalk.HLClassesListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "getChildrenOf:",
-fn: function (aClass){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._items())._select_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(each)._superclass()).__eq(aClass);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"getChildrenOf:",{aClass:aClass},smalltalk.HLClassesListWidget)})},
-messageSends: ["select:", "=", "superclass", "items"]}),
-smalltalk.HLClassesListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "getRootClassesOf:",
-fn: function (aCollection){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(aCollection)._select_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(aCollection)._includes_(_st(each)._superclass()))._not();
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"getRootClassesOf:",{aCollection:aCollection},smalltalk.HLClassesListWidget)})},
-messageSends: ["select:", "not", "includes:", "superclass"]}),
-smalltalk.HLClassesListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "label",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Classes";
-}, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.HLClassesListWidget)})},
-messageSends: []}),
-smalltalk.HLClassesListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "observeModel",
-fn: function (){
-var self=this;
-function $HLPackageSelected(){return smalltalk.HLPackageSelected||(typeof HLPackageSelected=="undefined"?nil:HLPackageSelected)}
-function $HLShowInstanceToggled(){return smalltalk.HLShowInstanceToggled||(typeof HLShowInstanceToggled=="undefined"?nil:HLShowInstanceToggled)}
-function $HLShowCommentToggled(){return smalltalk.HLShowCommentToggled||(typeof HLShowCommentToggled=="undefined"?nil:HLShowCommentToggled)}
-function $HLClassSelected(){return smalltalk.HLClassSelected||(typeof HLClassSelected=="undefined"?nil:HLClassSelected)}
-function $HLClassesFocusRequested(){return smalltalk.HLClassesFocusRequested||(typeof HLClassesFocusRequested=="undefined"?nil:HLClassesFocusRequested)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st(self._model())._announcer();
-_st($1)._on_send_to_($HLPackageSelected(),"onPackageSelected:",self);
-_st($1)._on_send_to_($HLShowInstanceToggled(),"onShowInstanceToggled",self);
-_st($1)._on_send_to_($HLShowCommentToggled(),"onShowCommentToggled",self);
-_st($1)._on_send_to_($HLClassSelected(),"onClassSelected:",self);
-$2=_st($1)._on_send_to_($HLClassesFocusRequested(),"onClassesFocusRequested",self);
-return self}, function($ctx1) {$ctx1.fill(self,"observeModel",{},smalltalk.HLClassesListWidget)})},
-messageSends: ["on:send:to:", "announcer", "model"]}),
-smalltalk.HLClassesListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "observeSystem",
-fn: function (){
-var self=this;
-function $ClassAdded(){return smalltalk.ClassAdded||(typeof ClassAdded=="undefined"?nil:ClassAdded)}
-function $ClassRemoved(){return smalltalk.ClassRemoved||(typeof ClassRemoved=="undefined"?nil:ClassRemoved)}
-function $ClassMoved(){return smalltalk.ClassMoved||(typeof ClassMoved=="undefined"?nil:ClassMoved)}
-function $ClassRenamed(){return smalltalk.ClassRenamed||(typeof ClassRenamed=="undefined"?nil:ClassRenamed)}
-function $ClassMigrated(){return smalltalk.ClassMigrated||(typeof ClassMigrated=="undefined"?nil:ClassMigrated)}
-function $ClassCommentChanged(){return smalltalk.ClassCommentChanged||(typeof ClassCommentChanged=="undefined"?nil:ClassCommentChanged)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st(self._model())._systemAnnouncer();
-_st($1)._on_send_to_($ClassAdded(),"onClassAdded:",self);
-_st($1)._on_send_to_($ClassRemoved(),"onClassRemoved:",self);
-_st($1)._on_send_to_($ClassMoved(),"onClassMoved:",self);
-_st($1)._on_send_to_($ClassRenamed(),"onClassRenamed:",self);
-_st($1)._on_send_to_($ClassMigrated(),"onClassMigrated:",self);
-$2=_st($1)._on_send_to_($ClassCommentChanged(),"onClassCommentChanged:",self);
-return self}, function($ctx1) {$ctx1.fill(self,"observeSystem",{},smalltalk.HLClassesListWidget)})},
-messageSends: ["on:send:to:", "systemAnnouncer", "model"]}),
-smalltalk.HLClassesListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onClassAdded:",
-fn: function (anAnnouncement){
-var self=this;
-var class_;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-class_=_st(anAnnouncement)._theClass();
-$1=_st(_st(_st(class_)._package()).__eq(_st(self._model())._selectedPackage()))._or_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(self._items())._includes_(class_);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-if(! smalltalk.assert($1)){
-$2=self;
-return $2;
-};
-self._setItemsForSelectedPackage();
-self._refresh();
-return self}, function($ctx1) {$ctx1.fill(self,"onClassAdded:",{anAnnouncement:anAnnouncement,class_:class_},smalltalk.HLClassesListWidget)})},
-messageSends: ["theClass", "ifFalse:", "or:", "includes:", "items", "=", "selectedPackage", "model", "package", "setItemsForSelectedPackage", "refresh"]}),
-smalltalk.HLClassesListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onClassCommentChanged:",
-fn: function (anAnnouncement){
-var self=this;
-var class_;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-class_=_st(anAnnouncement)._theClass();
-$1=_st(_st(class_)._package()).__eq(_st(self._model())._selectedPackage());
-if(! smalltalk.assert($1)){
-$2=self;
-return $2;
-};
-self._refresh();
-return self}, function($ctx1) {$ctx1.fill(self,"onClassCommentChanged:",{anAnnouncement:anAnnouncement,class_:class_},smalltalk.HLClassesListWidget)})},
-messageSends: ["theClass", "ifFalse:", "=", "selectedPackage", "model", "package", "refresh"]}),
-smalltalk.HLClassesListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onClassMigrated:",
-fn: function (anAnnouncement){
-var self=this;
-var class_,oldClass;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3;
-class_=_st(anAnnouncement)._theClass();
-oldClass=_st(anAnnouncement)._oldClass();
-$1=_st(self._items())._includes_(oldClass);
-if(! smalltalk.assert($1)){
-$2=self;
-return $2;
-};
-$3=_st(_st(self._model())._selectedClass()).__eq(oldClass);
-if(smalltalk.assert($3)){
-_st(self._model())._selectedClass_(class_);
-};
-self._setItemsForSelectedPackage();
-self._refresh();
-return self}, function($ctx1) {$ctx1.fill(self,"onClassMigrated:",{anAnnouncement:anAnnouncement,class_:class_,oldClass:oldClass},smalltalk.HLClassesListWidget)})},
-messageSends: ["theClass", "oldClass", "ifFalse:", "includes:", "items", "ifTrue:", "selectedClass:", "model", "=", "selectedClass", "setItemsForSelectedPackage", "refresh"]}),
-smalltalk.HLClassesListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onClassMoved:",
-fn: function (anAnnouncement){
-var self=this;
-var class_,oldPackage;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4,$5;
-class_=_st(anAnnouncement)._theClass();
-oldPackage=_st(anAnnouncement)._oldPackage();
-$1=_st(_st(oldPackage).__eq(_st(self._model())._selectedPackage()))._or_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(class_)._package()).__eq(_st(self._model())._selectedPackage());
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-if(! smalltalk.assert($1)){
-$2=self;
-return $2;
-};
-$3=_st(oldPackage).__eq(_st(self._model())._selectedPackage());
-if(smalltalk.assert($3)){
-$4=self;
-_st($4)._selectedItem_(nil);
-$5=_st($4)._selectItem_(nil);
-$5;
-};
-self._setItemsForSelectedPackage();
-self._refresh();
-return self}, function($ctx1) {$ctx1.fill(self,"onClassMoved:",{anAnnouncement:anAnnouncement,class_:class_,oldPackage:oldPackage},smalltalk.HLClassesListWidget)})},
-messageSends: ["theClass", "oldPackage", "ifFalse:", "or:", "=", "selectedPackage", "model", "package", "ifTrue:", "selectedItem:", "selectItem:", "setItemsForSelectedPackage", "refresh"]}),
-smalltalk.HLClassesListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onClassRemoved:",
-fn: function (anAnnouncement){
-var self=this;
-var class_;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-class_=_st(anAnnouncement)._theClass();
-$1=_st(_st(class_)._package()).__eq(_st(self._model())._selectedPackage());
-if(! smalltalk.assert($1)){
-$2=self;
-return $2;
-};
-self._setItemsForSelectedPackage();
-self._refresh();
-return self}, function($ctx1) {$ctx1.fill(self,"onClassRemoved:",{anAnnouncement:anAnnouncement,class_:class_},smalltalk.HLClassesListWidget)})},
-messageSends: ["theClass", "ifFalse:", "=", "selectedPackage", "model", "package", "setItemsForSelectedPackage", "refresh"]}),
-smalltalk.HLClassesListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onClassRenamed:",
-fn: function (anAnnouncement){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st(_st(_st(anAnnouncement)._theClass())._package()).__eq(_st(self._model())._selectedPackage());
-if(! smalltalk.assert($1)){
-$2=self;
-return $2;
-};
-self._setItemsForSelectedPackage();
-self._refresh();
-return self}, function($ctx1) {$ctx1.fill(self,"onClassRenamed:",{anAnnouncement:anAnnouncement},smalltalk.HLClassesListWidget)})},
-messageSends: ["ifFalse:", "=", "selectedPackage", "model", "package", "theClass", "setItemsForSelectedPackage", "refresh"]}),
-smalltalk.HLClassesListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onClassSelected:",
-fn: function (anAnnouncement){
-var self=this;
-var selectedClass;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4,$5;
-$1=_st(anAnnouncement)._item();
-if(($receiver = $1) == nil || $receiver == undefined){
-$2=self;
-return $2;
-} else {
-$1;
-};
-selectedClass=_st(_st(anAnnouncement)._item())._theNonMetaClass();
-self._selectedItem_(selectedClass);
-$3=self._hasFocus();
-if(! smalltalk.assert($3)){
-$4=self;
-_st($4)._activateItem_(selectedClass);
-$5=_st($4)._focus();
-$5;
-};
-return self}, function($ctx1) {$ctx1.fill(self,"onClassSelected:",{anAnnouncement:anAnnouncement,selectedClass:selectedClass},smalltalk.HLClassesListWidget)})},
-messageSends: ["ifNil:", "item", "theNonMetaClass", "selectedItem:", "ifFalse:", "activateItem:", "focus", "hasFocus"]}),
-smalltalk.HLClassesListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onClassesFocusRequested",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._focus();
-return self}, function($ctx1) {$ctx1.fill(self,"onClassesFocusRequested",{},smalltalk.HLClassesListWidget)})},
-messageSends: ["focus"]}),
-smalltalk.HLClassesListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onPackageSelected:",
-fn: function (anAnnouncement){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._selectedItem_(nil);
-self._setItemsForSelectedPackage();
-self._refresh();
-return self}, function($ctx1) {$ctx1.fill(self,"onPackageSelected:",{anAnnouncement:anAnnouncement},smalltalk.HLClassesListWidget)})},
-messageSends: ["selectedItem:", "setItemsForSelectedPackage", "refresh"]}),
-smalltalk.HLClassesListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onShowCommentToggled",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._refresh();
-return self}, function($ctx1) {$ctx1.fill(self,"onShowCommentToggled",{},smalltalk.HLClassesListWidget)})},
-messageSends: ["refresh"]}),
-smalltalk.HLClassesListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onShowInstanceToggled",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._refresh();
-return self}, function($ctx1) {$ctx1.fill(self,"onShowInstanceToggled",{},smalltalk.HLClassesListWidget)})},
-messageSends: ["refresh"]}),
-smalltalk.HLClassesListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderButtonsOn:",
-fn: function (html){
-var self=this;
-var checkbox;
-function $String(){return smalltalk.String||(typeof String=="undefined"?nil:String)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$3,$4,$5,$6,$7,$8,$2,$9,$11,$12,$10,$13;
-$1=_st(html)._div();
-_st($1)._class_("btn-group");
-$2=_st($1)._with_((function(){
-return smalltalk.withContext(function($ctx2) {
-$3=_st(html)._button();
-_st($3)._class_(_st($String())._streamContents_((function(str){
-return smalltalk.withContext(function($ctx3) {
-_st(str)._nextPutAll_("btn");
-$4=self._showInstance();
-if(smalltalk.assert($4)){
-return _st(str)._nextPutAll_(" active");
-};
-}, function($ctx3) {$ctx3.fillBlock({str:str},$ctx2)})})));
-_st($3)._with_("Instance");
-$5=_st($3)._onClick_((function(){
-return smalltalk.withContext(function($ctx3) {
-return self._showInstance_(true);
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-$5;
-$6=_st(html)._button();
-_st($6)._class_(_st($String())._streamContents_((function(str){
-return smalltalk.withContext(function($ctx3) {
-_st(str)._nextPutAll_("btn");
-$7=self._showClass();
-if(smalltalk.assert($7)){
-return _st(str)._nextPutAll_(" active");
-};
-}, function($ctx3) {$ctx3.fillBlock({str:str},$ctx2)})})));
-_st($6)._with_("Class");
-$8=_st($6)._onClick_((function(){
-return smalltalk.withContext(function($ctx3) {
-return self._showInstance_(false);
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-return $8;
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-$9=_st(html)._label();
-_st($9)._class_("checkbox");
-$10=_st($9)._with_((function(){
-return smalltalk.withContext(function($ctx2) {
-$11=_st(html)._input();
-_st($11)._type_("checkbox");
-$12=_st($11)._onClick_((function(){
-return smalltalk.withContext(function($ctx3) {
-return self._toggleShowComment();
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-checkbox=$12;
-checkbox;
-return _st(html)._with_("Doc");
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-$13=self._showComment();
-if(smalltalk.assert($13)){
-_st(checkbox)._at_put_("checked","checked");
-};
-return self}, function($ctx1) {$ctx1.fill(self,"renderButtonsOn:",{html:html,checkbox:checkbox},smalltalk.HLClassesListWidget)})},
-messageSends: ["class:", "div", "with:", "streamContents:", "nextPutAll:", "ifTrue:", "showInstance", "button", "onClick:", "showInstance:", "showClass", "label", "type:", "input", "toggleShowComment", "at:put:", "showComment"]}),
-smalltalk.HLClassesListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderItem:level:on:",
-fn: function (aClass,anInteger,html){
-var self=this;
-var li;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$3,$4,$2;
-li=_st(html)._li();
-self._registerMappingFrom_to_(aClass,li);
-$1=li;
-_st($1)._at_put_("list-data",_st(self._items())._indexOf_(aClass));
-_st($1)._class_(self._listCssClassForItem_(aClass));
-$2=_st($1)._with_((function(){
-return smalltalk.withContext(function($ctx2) {
-$3=_st(html)._a();
-_st($3)._with_((function(){
-return smalltalk.withContext(function($ctx3) {
-_st(_st(html)._tag_("i"))._class_(self._cssClassForItem_(aClass));
-return self._renderItemLabel_level_on_(aClass,anInteger,html);
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-$4=_st($3)._onClick_((function(){
-return smalltalk.withContext(function($ctx3) {
-return self._activateListItem_(_st(li)._asJQuery());
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-return $4;
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-_st(self._getChildrenOf_(aClass))._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return self._renderItem_level_on_(each,_st(anInteger).__plus((1)),html);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"renderItem:level:on:",{aClass:aClass,anInteger:anInteger,html:html,li:li},smalltalk.HLClassesListWidget)})},
-messageSends: ["li", "registerMappingFrom:to:", "at:put:", "indexOf:", "items", "class:", "listCssClassForItem:", "with:", "cssClassForItem:", "tag:", "renderItemLabel:level:on:", "a", "onClick:", "activateListItem:", "asJQuery", "do:", "renderItem:level:on:", "+", "getChildrenOf:"]}),
-smalltalk.HLClassesListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderItem:on:",
-fn: function (aClass,html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-smalltalk.HLClassesListWidget.superclass.fn.prototype._renderItem_on_.apply(_st(self), [aClass,html]);
-_st(self._getChildrenOf_(aClass))._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return self._renderItem_level_on_(each,(1),html);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"renderItem:on:",{aClass:aClass,html:html},smalltalk.HLClassesListWidget)})},
-messageSends: ["renderItem:on:", "do:", "renderItem:level:on:", "getChildrenOf:"]}),
-smalltalk.HLClassesListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderItemLabel:level:on:",
-fn: function (aClass,anInteger,html){
-var self=this;
-function $String(){return smalltalk.String||(typeof String=="undefined"?nil:String)}
-return smalltalk.withContext(function($ctx1) { 
-_st(_st(_st(html)._span())._asJQuery())._html_(_st($String())._streamContents_((function(str){
-return smalltalk.withContext(function($ctx2) {
-_st(anInteger)._timesRepeat_((function(){
-return smalltalk.withContext(function($ctx3) {
-return _st(str)._nextPutAll_("&nbsp;&nbsp;&nbsp;&nbsp;");
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-return _st(str)._nextPutAll_(_st(aClass)._name());
-}, function($ctx2) {$ctx2.fillBlock({str:str},$ctx1)})})));
-return self}, function($ctx1) {$ctx1.fill(self,"renderItemLabel:level:on:",{aClass:aClass,anInteger:anInteger,html:html},smalltalk.HLClassesListWidget)})},
-messageSends: ["html:", "streamContents:", "timesRepeat:", "nextPutAll:", "name", "asJQuery", "span"]}),
-smalltalk.HLClassesListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderItemLabel:on:",
-fn: function (aClass,html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._renderItemLabel_level_on_(aClass,(0),html);
-return self}, function($ctx1) {$ctx1.fill(self,"renderItemLabel:on:",{aClass:aClass,html:html},smalltalk.HLClassesListWidget)})},
-messageSends: ["renderItemLabel:level:on:"]}),
-smalltalk.HLClassesListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderListOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._getRootClassesOf_(self._items()))._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return self._renderItem_on_(each,html);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"renderListOn:",{html:html},smalltalk.HLClassesListWidget)})},
-messageSends: ["do:", "renderItem:on:", "getRootClassesOf:", "items"]}),
-smalltalk.HLClassesListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selectItem:",
-fn: function (aClass){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._model())._selectedClass_(aClass);
-return self}, function($ctx1) {$ctx1.fill(self,"selectItem:",{aClass:aClass},smalltalk.HLClassesListWidget)})},
-messageSends: ["selectedClass:", "model"]}),
-smalltalk.HLClassesListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "setItemsForPackage:",
-fn: function (aPackage){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$3,$2;
-$1=self;
-$3=aPackage;
-if(($receiver = $3) == nil || $receiver == undefined){
-$2=[];
-} else {
-$2=_st(_st(_st(_st(_st(aPackage)._classes())._collect_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(each)._theNonMetaClass();
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})})))._asSet())._asArray())._sort_((function(a,b){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(a)._name()).__lt(_st(b)._name());
-}, function($ctx2) {$ctx2.fillBlock({a:a,b:b},$ctx1)})}));
-};
-_st($1)._items_($2);
-return self}, function($ctx1) {$ctx1.fill(self,"setItemsForPackage:",{aPackage:aPackage},smalltalk.HLClassesListWidget)})},
-messageSends: ["items:", "ifNil:ifNotNil:", "sort:", "<", "name", "asArray", "asSet", "collect:", "theNonMetaClass", "classes"]}),
-smalltalk.HLClassesListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "setItemsForSelectedPackage",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._setItemsForPackage_(_st(self._model())._selectedPackage());
-return self}, function($ctx1) {$ctx1.fill(self,"setItemsForSelectedPackage",{},smalltalk.HLClassesListWidget)})},
-messageSends: ["setItemsForPackage:", "selectedPackage", "model"]}),
-smalltalk.HLClassesListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "showClass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(self._model())._showInstance())._not();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"showClass",{},smalltalk.HLClassesListWidget)})},
-messageSends: ["not", "showInstance", "model"]}),
-smalltalk.HLClassesListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "showComment",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._model())._showComment();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"showComment",{},smalltalk.HLClassesListWidget)})},
-messageSends: ["showComment", "model"]}),
-smalltalk.HLClassesListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "showComment:",
-fn: function (aBoolean){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._model())._showComment_(aBoolean);
-return self}, function($ctx1) {$ctx1.fill(self,"showComment:",{aBoolean:aBoolean},smalltalk.HLClassesListWidget)})},
-messageSends: ["showComment:", "model"]}),
-smalltalk.HLClassesListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "showInstance",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._model())._showInstance();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"showInstance",{},smalltalk.HLClassesListWidget)})},
-messageSends: ["showInstance", "model"]}),
-smalltalk.HLClassesListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "showInstance:",
-fn: function (aBoolean){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._model())._showInstance_(aBoolean);
-return self}, function($ctx1) {$ctx1.fill(self,"showInstance:",{aBoolean:aBoolean},smalltalk.HLClassesListWidget)})},
-messageSends: ["showInstance:", "model"]}),
-smalltalk.HLClassesListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "toggleShowComment",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._model())._showComment_(_st(self._showComment())._not());
-return self}, function($ctx1) {$ctx1.fill(self,"toggleShowComment",{},smalltalk.HLClassesListWidget)})},
-messageSends: ["showComment:", "not", "showComment", "model"]}),
-smalltalk.HLClassesListWidget);
-
-
-
-smalltalk.addClass('HLDocumentationWidget', smalltalk.HLFocusableWidget, ['model'], 'Helios-Browser');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "defaultDocumentation",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "No documentation available. \x0a**That's bad. Seriously.**";
-}, function($ctx1) {$ctx1.fill(self,"defaultDocumentation",{},smalltalk.HLDocumentationWidget)})},
-messageSends: []}),
-smalltalk.HLDocumentationWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "defaultHead",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "No class selected";
-}, function($ctx1) {$ctx1.fill(self,"defaultHead",{},smalltalk.HLDocumentationWidget)})},
-messageSends: []}),
-smalltalk.HLDocumentationWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "documentation",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self._selectedItem();
-if(($receiver = $2) == nil || $receiver == undefined){
-$1="";
-} else {
-var item;
-item=$receiver;
-$1=_st(_st(item)._comment())._ifEmpty_((function(){
-return smalltalk.withContext(function($ctx2) {
-return self._defaultDocumentation();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"documentation",{},smalltalk.HLDocumentationWidget)})},
-messageSends: ["ifNil:ifNotNil:", "ifEmpty:", "defaultDocumentation", "comment", "selectedItem"]}),
-smalltalk.HLDocumentationWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "editDocumentation",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._model())._editComment();
-return self}, function($ctx1) {$ctx1.fill(self,"editDocumentation",{},smalltalk.HLDocumentationWidget)})},
-messageSends: ["editComment", "model"]}),
-smalltalk.HLDocumentationWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "head",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self._selectedItem();
-if(($receiver = $2) == nil || $receiver == undefined){
-$1=self._defaultHead();
-} else {
-var item;
-item=$receiver;
-$1=_st(item)._name();
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"head",{},smalltalk.HLDocumentationWidget)})},
-messageSends: ["ifNil:ifNotNil:", "defaultHead", "name", "selectedItem"]}),
-smalltalk.HLDocumentationWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "model",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@model"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"model",{},smalltalk.HLDocumentationWidget)})},
-messageSends: []}),
-smalltalk.HLDocumentationWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "model:",
-fn: function (aModel){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-self["@model"]=aModel;
-$1=self;
-_st($1)._observeSystem();
-$2=_st($1)._observeModel();
-return self}, function($ctx1) {$ctx1.fill(self,"model:",{aModel:aModel},smalltalk.HLDocumentationWidget)})},
-messageSends: ["observeSystem", "observeModel"]}),
-smalltalk.HLDocumentationWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "observeModel",
-fn: function (){
-var self=this;
-function $HLClassSelected(){return smalltalk.HLClassSelected||(typeof HLClassSelected=="undefined"?nil:HLClassSelected)}
-function $HLEditComment(){return smalltalk.HLEditComment||(typeof HLEditComment=="undefined"?nil:HLEditComment)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st(self._model())._announcer();
-_st($1)._on_send_to_($HLClassSelected(),"onClassSelected:",self);
-$2=_st($1)._on_send_to_($HLEditComment(),"onEditDocumentation",self);
-return self}, function($ctx1) {$ctx1.fill(self,"observeModel",{},smalltalk.HLDocumentationWidget)})},
-messageSends: ["on:send:to:", "announcer", "model"]}),
-smalltalk.HLDocumentationWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "observeSystem",
-fn: function (){
-var self=this;
-function $ClassCommentChanged(){return smalltalk.ClassCommentChanged||(typeof ClassCommentChanged=="undefined"?nil:ClassCommentChanged)}
-return smalltalk.withContext(function($ctx1) { 
-_st(_st(self._model())._systemAnnouncer())._on_send_to_($ClassCommentChanged(),"onClassCommentChanged:",self);
-return self}, function($ctx1) {$ctx1.fill(self,"observeSystem",{},smalltalk.HLDocumentationWidget)})},
-messageSends: ["on:send:to:", "systemAnnouncer", "model"]}),
-smalltalk.HLDocumentationWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onClassCommentChanged:",
-fn: function (anAnnouncement){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(anAnnouncement)._theClass()).__eq(_st(_st(self._model())._selectedClass())._theNonMetaClass());
-if(smalltalk.assert($1)){
-self._refresh();
-};
-return self}, function($ctx1) {$ctx1.fill(self,"onClassCommentChanged:",{anAnnouncement:anAnnouncement},smalltalk.HLDocumentationWidget)})},
-messageSends: ["ifTrue:", "refresh", "=", "theNonMetaClass", "selectedClass", "model", "theClass"]}),
-smalltalk.HLDocumentationWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onClassSelected:",
-fn: function (anAnnouncement){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._refresh();
-return self}, function($ctx1) {$ctx1.fill(self,"onClassSelected:",{anAnnouncement:anAnnouncement},smalltalk.HLDocumentationWidget)})},
-messageSends: ["refresh"]}),
-smalltalk.HLDocumentationWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onEditDocumentation",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._request_value_do_(_st(_st(_st(_st(self._model())._selectedClass())._theNonMetaClass())._name()).__comma(" comment"),_st(_st(_st(self._model())._selectedClass())._theNonMetaClass())._comment(),(function(comment){
-return smalltalk.withContext(function($ctx2) {
-return self._setClassComment_(comment);
-}, function($ctx2) {$ctx2.fillBlock({comment:comment},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"onEditDocumentation",{},smalltalk.HLDocumentationWidget)})},
-messageSends: ["request:value:do:", ",", "name", "theNonMetaClass", "selectedClass", "model", "comment", "setClassComment:"]}),
-smalltalk.HLDocumentationWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderContentOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$3,$4,$2;
-$1=_st(html)._div();
-_st($1)._class_("doc");
-$2=_st($1)._with_((function(){
-return smalltalk.withContext(function($ctx2) {
-$3=self;
-_st($3)._renderHeadOn_(html);
-$4=_st($3)._renderDocOn_(html);
-return $4;
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"renderContentOn:",{html:html},smalltalk.HLDocumentationWidget)})},
-messageSends: ["class:", "div", "with:", "renderHeadOn:", "renderDocOn:"]}),
-smalltalk.HLDocumentationWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderDocOn:",
-fn: function (html){
-var self=this;
-function $Showdown(){return smalltalk.Showdown||(typeof Showdown=="undefined"?nil:Showdown)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$4,$5,$3,$6,$7;
-$1=self._selectedItem();
-if(($receiver = $1) == nil || $receiver == undefined){
-$1;
-} else {
-self._renderInheritanceOn_(html);
-$2=_st(html)._h1();
-_st($2)._with_("Overview");
-$3=_st($2)._with_((function(){
-return smalltalk.withContext(function($ctx2) {
-$4=_st(html)._button();
-_st($4)._class_("button default");
-_st($4)._with_("Edit");
-$5=_st($4)._onClick_((function(){
-return smalltalk.withContext(function($ctx3) {
-return self._editDocumentation();
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-return $5;
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-$3;
-$6=_st(html)._div();
-_st($6)._class_("markdown");
-$7=_st($6)._asJQuery();
-_st($7)._html_(_st(_st(_st($Showdown())._at_("converter"))._new())._makeHtml_(self._documentation()));
-};
-return self}, function($ctx1) {$ctx1.fill(self,"renderDocOn:",{html:html},smalltalk.HLDocumentationWidget)})},
-messageSends: ["ifNotNil:", "renderInheritanceOn:", "with:", "h1", "class:", "button", "onClick:", "editDocumentation", "html:", "makeHtml:", "documentation", "new", "at:", "div", "asJQuery", "selectedItem"]}),
-smalltalk.HLDocumentationWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderHeadOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st(html)._div();
-_st($1)._class_("head");
-$2=_st($1)._with_(self._head());
-return self}, function($ctx1) {$ctx1.fill(self,"renderHeadOn:",{html:html},smalltalk.HLDocumentationWidget)})},
-messageSends: ["class:", "div", "with:", "head"]}),
-smalltalk.HLDocumentationWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderInheritanceOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$3,$4,$5,$2;
-$1=_st(html)._div();
-_st($1)._class_("inheritance");
-$2=_st($1)._with_((function(){
-return smalltalk.withContext(function($ctx2) {
-_st(html)._with_("Subclass of ");
-$3=_st(self._selectedItem())._superclass();
-if(($receiver = $3) == nil || $receiver == undefined){
-return _st(_st(html)._em())._with_("nil");
-} else {
-$4=_st(html)._a();
-_st($4)._with_(_st(_st(self._selectedItem())._superclass())._name());
-$5=_st($4)._onClick_((function(){
-return smalltalk.withContext(function($ctx3) {
-return self._selectClass_(_st(self._selectedItem())._superclass());
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-return $5;
-};
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"renderInheritanceOn:",{html:html},smalltalk.HLDocumentationWidget)})},
-messageSends: ["class:", "div", "with:", "ifNil:ifNotNil:", "em", "name", "superclass", "selectedItem", "a", "onClick:", "selectClass:"]}),
-smalltalk.HLDocumentationWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selectClass:",
-fn: function (aClass){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._model())._selectedClass_(aClass);
-return self}, function($ctx1) {$ctx1.fill(self,"selectClass:",{aClass:aClass},smalltalk.HLDocumentationWidget)})},
-messageSends: ["selectedClass:", "model"]}),
-smalltalk.HLDocumentationWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selectedItem",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=_st(self._model())._selectedClass();
-if(($receiver = $2) == nil || $receiver == undefined){
-$1=$2;
-} else {
-var class_;
-class_=$receiver;
-$1=_st(class_)._theNonMetaClass();
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"selectedItem",{},smalltalk.HLDocumentationWidget)})},
-messageSends: ["ifNotNil:", "theNonMetaClass", "selectedClass", "model"]}),
-smalltalk.HLDocumentationWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "setClassComment:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._model())._setClassComment_(aString);
-return self}, function($ctx1) {$ctx1.fill(self,"setClassComment:",{aString:aString},smalltalk.HLDocumentationWidget)})},
-messageSends: ["setClassComment:", "model"]}),
-smalltalk.HLDocumentationWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "unregister",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-smalltalk.HLDocumentationWidget.superclass.fn.prototype._unregister.apply(_st(self), []);
-_st(_st(self._model())._announcer())._unregister_(self);
-return self}, function($ctx1) {$ctx1.fill(self,"unregister",{},smalltalk.HLDocumentationWidget)})},
-messageSends: ["unregister", "unregister:", "announcer", "model"]}),
-smalltalk.HLDocumentationWidget);
-
-
-
-smalltalk.addClass('HLMethodsListWidget', smalltalk.HLToolListWidget, ['selectorsCache'], 'Helios-Browser');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "allProtocol",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._model())._allProtocol();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"allProtocol",{},smalltalk.HLMethodsListWidget)})},
-messageSends: ["allProtocol", "model"]}),
-smalltalk.HLMethodsListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "cssClassForItem:",
-fn: function (aSelector){
-var self=this;
-var override,overriden,method;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$4,$1;
-method=self._methodForSelector_(aSelector);
-override=self._isOverride_(method);
-overriden=self._isOverridden_(method);
-$2=override;
-if(smalltalk.assert($2)){
-$3=overriden;
-if(smalltalk.assert($3)){
-$1="override-overridden";
-} else {
-$1="override";
-};
-} else {
-$4=overriden;
-if(smalltalk.assert($4)){
-$1="overridden";
-} else {
-$1="";
-};
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"cssClassForItem:",{aSelector:aSelector,override:override,overriden:overriden,method:method},smalltalk.HLMethodsListWidget)})},
-messageSends: ["methodForSelector:", "isOverride:", "isOverridden:", "ifTrue:ifFalse:"]}),
-smalltalk.HLMethodsListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isOverridden:",
-fn: function (aMethod){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._selectorsCache())._isOverridden_(aMethod);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"isOverridden:",{aMethod:aMethod},smalltalk.HLMethodsListWidget)})},
-messageSends: ["isOverridden:", "selectorsCache"]}),
-smalltalk.HLMethodsListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isOverride:",
-fn: function (aMethod){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._selectorsCache())._isOverride_(aMethod);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"isOverride:",{aMethod:aMethod},smalltalk.HLMethodsListWidget)})},
-messageSends: ["isOverride:", "selectorsCache"]}),
-smalltalk.HLMethodsListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "label",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Methods";
-}, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.HLMethodsListWidget)})},
-messageSends: []}),
-smalltalk.HLMethodsListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "methodForSelector:",
-fn: function (aSelector){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(_st(self._model())._selectedClass())._methodDictionary())._at_(aSelector);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"methodForSelector:",{aSelector:aSelector},smalltalk.HLMethodsListWidget)})},
-messageSends: ["at:", "methodDictionary", "selectedClass", "model"]}),
-smalltalk.HLMethodsListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "methodsInProtocol:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$4,$3;
-$1=_st(self._model())._selectedClass();
-if(($receiver = $1) == nil || $receiver == undefined){
-$2=[];
-return $2;
-} else {
-$1;
-};
-$4=_st(aString).__eq(self._allProtocol());
-if(smalltalk.assert($4)){
-$3=_st(_st(self._model())._selectedClass())._methods();
-} else {
-$3=_st(_st(self._model())._selectedClass())._methodsInProtocol_(aString);
-};
-return $3;
-}, function($ctx1) {$ctx1.fill(self,"methodsInProtocol:",{aString:aString},smalltalk.HLMethodsListWidget)})},
-messageSends: ["ifNil:", "selectedClass", "model", "ifTrue:ifFalse:", "methods", "methodsInProtocol:", "=", "allProtocol"]}),
-smalltalk.HLMethodsListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "observeModel",
-fn: function (){
-var self=this;
-function $HLProtocolSelected(){return smalltalk.HLProtocolSelected||(typeof HLProtocolSelected=="undefined"?nil:HLProtocolSelected)}
-function $HLShowInstanceToggled(){return smalltalk.HLShowInstanceToggled||(typeof HLShowInstanceToggled=="undefined"?nil:HLShowInstanceToggled)}
-function $HLMethodSelected(){return smalltalk.HLMethodSelected||(typeof HLMethodSelected=="undefined"?nil:HLMethodSelected)}
-function $HLMethodsFocusRequested(){return smalltalk.HLMethodsFocusRequested||(typeof HLMethodsFocusRequested=="undefined"?nil:HLMethodsFocusRequested)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st(self._model())._announcer();
-_st($1)._on_send_to_($HLProtocolSelected(),"onProtocolSelected:",self);
-_st($1)._on_send_to_($HLShowInstanceToggled(),"onShowInstanceToggled",self);
-_st($1)._on_send_to_($HLMethodSelected(),"onMethodSelected:",self);
-$2=_st($1)._on_send_to_($HLMethodsFocusRequested(),"onMethodsFocusRequested",self);
-return self}, function($ctx1) {$ctx1.fill(self,"observeModel",{},smalltalk.HLMethodsListWidget)})},
-messageSends: ["on:send:to:", "announcer", "model"]}),
-smalltalk.HLMethodsListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "observeSystem",
-fn: function (){
-var self=this;
-function $ProtocolAdded(){return smalltalk.ProtocolAdded||(typeof ProtocolAdded=="undefined"?nil:ProtocolAdded)}
-function $ProtocolRemoved(){return smalltalk.ProtocolRemoved||(typeof ProtocolRemoved=="undefined"?nil:ProtocolRemoved)}
-function $MethodAdded(){return smalltalk.MethodAdded||(typeof MethodAdded=="undefined"?nil:MethodAdded)}
-function $MethodRemoved(){return smalltalk.MethodRemoved||(typeof MethodRemoved=="undefined"?nil:MethodRemoved)}
-function $MethodMoved(){return smalltalk.MethodMoved||(typeof MethodMoved=="undefined"?nil:MethodMoved)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st(self._model())._systemAnnouncer();
-_st($1)._on_send_to_($ProtocolAdded(),"onProtocolAdded:",self);
-_st($1)._on_send_to_($ProtocolRemoved(),"onProtocolRemoved:",self);
-_st($1)._on_send_to_($MethodAdded(),"onMethodAdded:",self);
-_st($1)._on_send_to_($MethodRemoved(),"onMethodRemoved:",self);
-$2=_st($1)._on_send_to_($MethodMoved(),"onMethodMoved:",self);
-return self}, function($ctx1) {$ctx1.fill(self,"observeSystem",{},smalltalk.HLMethodsListWidget)})},
-messageSends: ["on:send:to:", "systemAnnouncer", "model"]}),
-smalltalk.HLMethodsListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onMethodAdded:",
-fn: function (anAnnouncement){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st(_st(self._model())._selectedClass()).__eq(_st(_st(anAnnouncement)._method())._methodClass());
-if(! smalltalk.assert($1)){
-$2=self;
-return $2;
-};
-self._setItemsForSelectedProtocol();
-self._refresh();
-return self}, function($ctx1) {$ctx1.fill(self,"onMethodAdded:",{anAnnouncement:anAnnouncement},smalltalk.HLMethodsListWidget)})},
-messageSends: ["ifFalse:", "=", "methodClass", "method", "selectedClass", "model", "setItemsForSelectedProtocol", "refresh"]}),
-smalltalk.HLMethodsListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onMethodMoved:",
-fn: function (anAnnouncement){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4,$5;
-$1=_st(_st(self._model())._selectedMethod()).__eq(_st(anAnnouncement)._method());
-if(! smalltalk.assert($1)){
-$2=self;
-return $2;
-};
-$3=_st(_st(self._model())._selectedProtocol()).__eq(_st(self._model())._allProtocol());
-if(! smalltalk.assert($3)){
-$4=self;
-_st($4)._selectedItem_(nil);
-_st($4)._selectItem_(nil);
-_st($4)._setItemsForSelectedProtocol();
-$5=_st($4)._refresh();
-$5;
-};
-return self}, function($ctx1) {$ctx1.fill(self,"onMethodMoved:",{anAnnouncement:anAnnouncement},smalltalk.HLMethodsListWidget)})},
-messageSends: ["ifFalse:", "=", "method", "selectedMethod", "model", "selectedItem:", "selectItem:", "setItemsForSelectedProtocol", "refresh", "allProtocol", "selectedProtocol"]}),
-smalltalk.HLMethodsListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onMethodRemoved:",
-fn: function (anAnnouncement){
-var self=this;
-var method;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4,$5;
-var $early={};
-try {
-method=_st(anAnnouncement)._method();
-_st(self._items())._detect_ifNone_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(each).__eq(_st(method)._selector());
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}),(function(){
-return smalltalk.withContext(function($ctx2) {
-$1=self;
-throw $early=[$1];
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-$2=self._selectedItem();
-if(($receiver = $2) == nil || $receiver == undefined){
-$2;
-} else {
-$3=_st(_st(_st(method)._methodClass()).__eq(_st(self._model())._selectedClass()))._and_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(method)._selector()).__eq(self._selectedItem());
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-if(smalltalk.assert($3)){
-$4=self;
-_st($4)._selectedItem_(nil);
-$5=_st($4)._selectItem_(nil);
-$5;
-};
-};
-self._setItemsForSelectedProtocol();
-self._refresh();
-return self}
-catch(e) {if(e===$early)return e[0]; throw e}
-}, function($ctx1) {$ctx1.fill(self,"onMethodRemoved:",{anAnnouncement:anAnnouncement,method:method},smalltalk.HLMethodsListWidget)})},
-messageSends: ["method", "detect:ifNone:", "=", "selector", "items", "ifNotNil:", "ifTrue:", "selectedItem:", "selectItem:", "and:", "selectedItem", "selectedClass", "model", "methodClass", "setItemsForSelectedProtocol", "refresh"]}),
-smalltalk.HLMethodsListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onMethodSelected:",
-fn: function (anAnnouncement){
-var self=this;
-var selector,method;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3;
-method=_st(anAnnouncement)._item();
-$1=_st(method)._isCompiledMethod();
-if(smalltalk.assert($1)){
-selector=_st(method)._selector();
-} else {
-selector=nil;
-};
-$2=self;
-_st($2)._selectedItem_(selector);
-$3=_st($2)._activateItem_(selector);
-return self}, function($ctx1) {$ctx1.fill(self,"onMethodSelected:",{anAnnouncement:anAnnouncement,selector:selector,method:method},smalltalk.HLMethodsListWidget)})},
-messageSends: ["item", "ifTrue:ifFalse:", "selector", "isCompiledMethod", "selectedItem:", "activateItem:"]}),
-smalltalk.HLMethodsListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onMethodsFocusRequested",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._focus();
-return self}, function($ctx1) {$ctx1.fill(self,"onMethodsFocusRequested",{},smalltalk.HLMethodsListWidget)})},
-messageSends: ["focus"]}),
-smalltalk.HLMethodsListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onProtocolAdded:",
-fn: function (anAnnouncement){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st(_st(self._model())._selectedClass()).__eq(_st(anAnnouncement)._theClass());
-if(! smalltalk.assert($1)){
-$2=self;
-return $2;
-};
-self._setItemsForSelectedProtocol();
-self._refresh();
-self._focus();
-return self}, function($ctx1) {$ctx1.fill(self,"onProtocolAdded:",{anAnnouncement:anAnnouncement},smalltalk.HLMethodsListWidget)})},
-messageSends: ["ifFalse:", "=", "theClass", "selectedClass", "model", "setItemsForSelectedProtocol", "refresh", "focus"]}),
-smalltalk.HLMethodsListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onProtocolRemoved:",
-fn: function (anAnnouncement){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st(_st(self._model())._selectedClass()).__eq(_st(anAnnouncement)._theClass());
-if(! smalltalk.assert($1)){
-$2=self;
-return $2;
-};
-self._setItemsForSelectedProtocol();
-self._refresh();
-self._focus();
-return self}, function($ctx1) {$ctx1.fill(self,"onProtocolRemoved:",{anAnnouncement:anAnnouncement},smalltalk.HLMethodsListWidget)})},
-messageSends: ["ifFalse:", "=", "theClass", "selectedClass", "model", "setItemsForSelectedProtocol", "refresh", "focus"]}),
-smalltalk.HLMethodsListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onProtocolSelected:",
-fn: function (anAnnouncement){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._selectedItem_(nil);
-self._setItemsForSelectedProtocol();
-self._refresh();
-return self}, function($ctx1) {$ctx1.fill(self,"onProtocolSelected:",{anAnnouncement:anAnnouncement},smalltalk.HLMethodsListWidget)})},
-messageSends: ["selectedItem:", "setItemsForSelectedProtocol", "refresh"]}),
-smalltalk.HLMethodsListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onShowInstanceToggled",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._onProtocolSelected_(nil);
-return self}, function($ctx1) {$ctx1.fill(self,"onShowInstanceToggled",{},smalltalk.HLMethodsListWidget)})},
-messageSends: ["onProtocolSelected:"]}),
-smalltalk.HLMethodsListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "overrideSelectors",
-fn: function (){
-var self=this;
-function $Set(){return smalltalk.Set||(typeof Set=="undefined"?nil:Set)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$1=_st(self._selectorsCache())._at_ifAbsentPut_("override",(function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(_st(self._model())._selectedClass())._allSuperclasses())._inject_into_(_st($Set())._new(),(function(acc,each){
-return smalltalk.withContext(function($ctx3) {
-$2=acc;
-_st($2)._addAll_(_st(each)._selectors());
-$3=_st($2)._yourself();
-return $3;
-}, function($ctx3) {$ctx3.fillBlock({acc:acc,each:each},$ctx2)})}));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"overrideSelectors",{},smalltalk.HLMethodsListWidget)})},
-messageSends: ["at:ifAbsentPut:", "inject:into:", "new", "addAll:", "selectors", "yourself", "allSuperclasses", "selectedClass", "model", "selectorsCache"]}),
-smalltalk.HLMethodsListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "overridenSelectors",
-fn: function (){
-var self=this;
-function $Set(){return smalltalk.Set||(typeof Set=="undefined"?nil:Set)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$1=_st(self._selectorsCache())._at_ifAbsentPut_("overriden",(function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(_st(self._model())._selectedClass())._allSubclasses())._inject_into_(_st($Set())._new(),(function(acc,each){
-return smalltalk.withContext(function($ctx3) {
-$2=acc;
-_st($2)._addAll_(_st(each)._selectors());
-$3=_st($2)._yourself();
-return $3;
-}, function($ctx3) {$ctx3.fillBlock({acc:acc,each:each},$ctx2)})}));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"overridenSelectors",{},smalltalk.HLMethodsListWidget)})},
-messageSends: ["at:ifAbsentPut:", "inject:into:", "new", "addAll:", "selectors", "yourself", "allSubclasses", "selectedClass", "model", "selectorsCache"]}),
-smalltalk.HLMethodsListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderContentOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3;
-$1=_st(self._model())._showInstance();
-if(smalltalk.assert($1)){
-smalltalk.HLMethodsListWidget.superclass.fn.prototype._renderContentOn_.apply(_st(self), [html]);
-} else {
-$2=_st(html)._div();
-_st($2)._class_("class_side");
-$3=_st($2)._with_((function(){
-return smalltalk.withContext(function($ctx2) {
-return smalltalk.HLMethodsListWidget.superclass.fn.prototype._renderContentOn_.apply(_st(self), [html]);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-$3;
-};
-return self}, function($ctx1) {$ctx1.fill(self,"renderContentOn:",{html:html},smalltalk.HLMethodsListWidget)})},
-messageSends: ["ifFalse:ifTrue:", "class:", "div", "with:", "renderContentOn:", "showInstance", "model"]}),
-smalltalk.HLMethodsListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderItemLabel:on:",
-fn: function (aSelector,html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(html)._with_(aSelector);
-return self}, function($ctx1) {$ctx1.fill(self,"renderItemLabel:on:",{aSelector:aSelector,html:html},smalltalk.HLMethodsListWidget)})},
-messageSends: ["with:"]}),
-smalltalk.HLMethodsListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selectItem:",
-fn: function (aSelector){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=aSelector;
-if(($receiver = $1) == nil || $receiver == undefined){
-$2=_st(self._model())._selectedMethod_(nil);
-return $2;
-} else {
-$1;
-};
-_st(self._model())._selectedMethod_(self._methodForSelector_(aSelector));
-return self}, function($ctx1) {$ctx1.fill(self,"selectItem:",{aSelector:aSelector},smalltalk.HLMethodsListWidget)})},
-messageSends: ["ifNil:", "selectedMethod:", "model", "methodForSelector:"]}),
-smalltalk.HLMethodsListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selectorsCache",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._class())._selectorsCache();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"selectorsCache",{},smalltalk.HLMethodsListWidget)})},
-messageSends: ["selectorsCache", "class"]}),
-smalltalk.HLMethodsListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selectorsInProtocol:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(self._methodsInProtocol_(aString))._collect_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(each)._selector();
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})})))._sorted();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"selectorsInProtocol:",{aString:aString},smalltalk.HLMethodsListWidget)})},
-messageSends: ["sorted", "collect:", "selector", "methodsInProtocol:"]}),
-smalltalk.HLMethodsListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "setItemsForProtocol:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$4,$3,$1;
-$2=self;
-$4=aString;
-if(($receiver = $4) == nil || $receiver == undefined){
-$3=[];
-} else {
-$3=self._selectorsInProtocol_(aString);
-};
-$1=_st($2)._items_($3);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"setItemsForProtocol:",{aString:aString},smalltalk.HLMethodsListWidget)})},
-messageSends: ["items:", "ifNil:ifNotNil:", "selectorsInProtocol:"]}),
-smalltalk.HLMethodsListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "setItemsForSelectedProtocol",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._setItemsForProtocol_(_st(self._model())._selectedProtocol());
-return self}, function($ctx1) {$ctx1.fill(self,"setItemsForSelectedProtocol",{},smalltalk.HLMethodsListWidget)})},
-messageSends: ["setItemsForProtocol:", "selectedProtocol", "model"]}),
-smalltalk.HLMethodsListWidget);
-
-
-smalltalk.HLMethodsListWidget.klass.iVarNames = ['selectorsCache'];
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selectorsCache",
-fn: function (){
-var self=this;
-function $HLSelectorsCache(){return smalltalk.HLSelectorsCache||(typeof HLSelectorsCache=="undefined"?nil:HLSelectorsCache)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st($HLSelectorsCache())._current();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"selectorsCache",{},smalltalk.HLMethodsListWidget.klass)})},
-messageSends: ["current"]}),
-smalltalk.HLMethodsListWidget.klass);
-
-
-smalltalk.addClass('HLPackagesListWidget', smalltalk.HLToolListWidget, [], 'Helios-Browser');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "commitPackage",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._model())._commitPackage();
-return self}, function($ctx1) {$ctx1.fill(self,"commitPackage",{},smalltalk.HLPackagesListWidget)})},
-messageSends: ["commitPackage", "model"]}),
-smalltalk.HLPackagesListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "cssClassForItem:",
-fn: function (anItem){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "package";
-}, function($ctx1) {$ctx1.fill(self,"cssClassForItem:",{anItem:anItem},smalltalk.HLPackagesListWidget)})},
-messageSends: []}),
-smalltalk.HLPackagesListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "focusClassesListWidget",
-fn: function (){
-var self=this;
-function $HLClassesListFocus(){return smalltalk.HLClassesListFocus||(typeof HLClassesListFocus=="undefined"?nil:HLClassesListFocus)}
-return smalltalk.withContext(function($ctx1) { 
-_st(_st(self._model())._announcer())._announce_(_st($HLClassesListFocus())._new());
-return self}, function($ctx1) {$ctx1.fill(self,"focusClassesListWidget",{},smalltalk.HLPackagesListWidget)})},
-messageSends: ["announce:", "new", "announcer", "model"]}),
-smalltalk.HLPackagesListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "initializeItems",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-self["@items"]=_st(_st(self._model())._packages())._sort_((function(a,b){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(a)._name()).__lt(_st(b)._name());
-}, function($ctx2) {$ctx2.fillBlock({a:a,b:b},$ctx1)})}));
-$1=self["@items"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"initializeItems",{},smalltalk.HLPackagesListWidget)})},
-messageSends: ["sort:", "<", "name", "packages", "model"]}),
-smalltalk.HLPackagesListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "items",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@items"];
-if(($receiver = $2) == nil || $receiver == undefined){
-$1=self._initializeItems();
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"items",{},smalltalk.HLPackagesListWidget)})},
-messageSends: ["ifNil:", "initializeItems"]}),
-smalltalk.HLPackagesListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "label",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Packages";
-}, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.HLPackagesListWidget)})},
-messageSends: []}),
-smalltalk.HLPackagesListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "observeModel",
-fn: function (){
-var self=this;
-function $HLPackageSelected(){return smalltalk.HLPackageSelected||(typeof HLPackageSelected=="undefined"?nil:HLPackageSelected)}
-function $HLPackagesFocusRequested(){return smalltalk.HLPackagesFocusRequested||(typeof HLPackagesFocusRequested=="undefined"?nil:HLPackagesFocusRequested)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st(self._model())._announcer();
-_st($1)._on_send_to_($HLPackageSelected(),"onPackageSelected:",self);
-$2=_st($1)._on_send_to_($HLPackagesFocusRequested(),"onPackagesFocusRequested",self);
-return self}, function($ctx1) {$ctx1.fill(self,"observeModel",{},smalltalk.HLPackagesListWidget)})},
-messageSends: ["on:send:to:", "announcer", "model"]}),
-smalltalk.HLPackagesListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "observeSystem",
-fn: function (){
-var self=this;
-function $ClassAdded(){return smalltalk.ClassAdded||(typeof ClassAdded=="undefined"?nil:ClassAdded)}
-return smalltalk.withContext(function($ctx1) { 
-_st(_st(self._model())._systemAnnouncer())._on_send_to_($ClassAdded(),"onClassAdded:",self);
-return self}, function($ctx1) {$ctx1.fill(self,"observeSystem",{},smalltalk.HLPackagesListWidget)})},
-messageSends: ["on:send:to:", "systemAnnouncer", "model"]}),
-smalltalk.HLPackagesListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onClassAdded:",
-fn: function (anAnnouncement){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3;
-$1=_st(self._items())._includes_(_st(_st(anAnnouncement)._theClass())._package());
-if(! smalltalk.assert($1)){
-$2=self;
-_st($2)._initializeItems();
-$3=_st($2)._refresh();
-$3;
-};
-return self}, function($ctx1) {$ctx1.fill(self,"onClassAdded:",{anAnnouncement:anAnnouncement},smalltalk.HLPackagesListWidget)})},
-messageSends: ["ifFalse:", "initializeItems", "refresh", "includes:", "package", "theClass", "items"]}),
-smalltalk.HLPackagesListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onPackageSelected:",
-fn: function (anAnnouncement){
-var self=this;
-var package_;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3;
-package_=_st(anAnnouncement)._item();
-self._selectedItem_(package_);
-$1=self._hasFocus();
-if(! smalltalk.assert($1)){
-$2=self;
-_st($2)._activateItem_(package_);
-$3=_st($2)._focus();
-$3;
-};
-return self}, function($ctx1) {$ctx1.fill(self,"onPackageSelected:",{anAnnouncement:anAnnouncement,package_:package_},smalltalk.HLPackagesListWidget)})},
-messageSends: ["item", "selectedItem:", "ifFalse:", "activateItem:", "focus", "hasFocus"]}),
-smalltalk.HLPackagesListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onPackagesFocusRequested",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._focus();
-return self}, function($ctx1) {$ctx1.fill(self,"onPackagesFocusRequested",{},smalltalk.HLPackagesListWidget)})},
-messageSends: ["focus"]}),
-smalltalk.HLPackagesListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderItemLabel:on:",
-fn: function (aPackage,html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(html)._with_(_st(aPackage)._name());
-return self}, function($ctx1) {$ctx1.fill(self,"renderItemLabel:on:",{aPackage:aPackage,html:html},smalltalk.HLPackagesListWidget)})},
-messageSends: ["with:", "name"]}),
-smalltalk.HLPackagesListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selectItem:",
-fn: function (aPackage){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._model())._selectedPackage_(aPackage);
-return self}, function($ctx1) {$ctx1.fill(self,"selectItem:",{aPackage:aPackage},smalltalk.HLPackagesListWidget)})},
-messageSends: ["selectedPackage:", "model"]}),
-smalltalk.HLPackagesListWidget);
-
-
-
-smalltalk.addClass('HLProtocolsListWidget', smalltalk.HLToolListWidget, [], 'Helios-Browser');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "allProtocol",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._model())._allProtocol();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"allProtocol",{},smalltalk.HLProtocolsListWidget)})},
-messageSends: ["allProtocol", "model"]}),
-smalltalk.HLProtocolsListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "cssClassForItem:",
-fn: function (anItem){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4;
-$1=_st(anItem).__eq(self._allProtocol());
-if(smalltalk.assert($1)){
-return "";
-};
-$2=_st(anItem).__eq("private");
-if(smalltalk.assert($2)){
-return "private";
-};
-$3=_st(anItem).__eq("initialization");
-if(smalltalk.assert($3)){
-return "initialization";
-};
-$4=_st(anItem)._match_("^\x5c*");
-if(smalltalk.assert($4)){
-return "extension";
-};
-return "";
-}, function($ctx1) {$ctx1.fill(self,"cssClassForItem:",{anItem:anItem},smalltalk.HLProtocolsListWidget)})},
-messageSends: ["ifTrue:", "=", "allProtocol", "match:"]}),
-smalltalk.HLProtocolsListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "label",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Protocols";
-}, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.HLProtocolsListWidget)})},
-messageSends: []}),
-smalltalk.HLProtocolsListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "observeModel",
-fn: function (){
-var self=this;
-function $HLClassSelected(){return smalltalk.HLClassSelected||(typeof HLClassSelected=="undefined"?nil:HLClassSelected)}
-function $HLShowInstanceToggled(){return smalltalk.HLShowInstanceToggled||(typeof HLShowInstanceToggled=="undefined"?nil:HLShowInstanceToggled)}
-function $HLProtocolSelected(){return smalltalk.HLProtocolSelected||(typeof HLProtocolSelected=="undefined"?nil:HLProtocolSelected)}
-function $HLProtocolsFocusRequested(){return smalltalk.HLProtocolsFocusRequested||(typeof HLProtocolsFocusRequested=="undefined"?nil:HLProtocolsFocusRequested)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st(self._model())._announcer();
-_st($1)._on_send_to_($HLClassSelected(),"onClassSelected:",self);
-_st($1)._on_send_to_($HLShowInstanceToggled(),"onClassSelected:",self);
-_st($1)._on_send_to_($HLProtocolSelected(),"onProtocolSelected:",self);
-$2=_st($1)._on_send_to_($HLProtocolsFocusRequested(),"onProtocolsFocusRequested",self);
-return self}, function($ctx1) {$ctx1.fill(self,"observeModel",{},smalltalk.HLProtocolsListWidget)})},
-messageSends: ["on:send:to:", "announcer", "model"]}),
-smalltalk.HLProtocolsListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "observeSystem",
-fn: function (){
-var self=this;
-function $ProtocolAdded(){return smalltalk.ProtocolAdded||(typeof ProtocolAdded=="undefined"?nil:ProtocolAdded)}
-function $ProtocolRemoved(){return smalltalk.ProtocolRemoved||(typeof ProtocolRemoved=="undefined"?nil:ProtocolRemoved)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st(self._model())._systemAnnouncer();
-_st($1)._on_send_to_($ProtocolAdded(),"onProtocolAdded:",self);
-$2=_st($1)._on_send_to_($ProtocolRemoved(),"onProtocolRemoved:",self);
-return self}, function($ctx1) {$ctx1.fill(self,"observeSystem",{},smalltalk.HLProtocolsListWidget)})},
-messageSends: ["on:send:to:", "systemAnnouncer", "model"]}),
-smalltalk.HLProtocolsListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onClassSelected:",
-fn: function (anAnnouncement){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._selectedItem_(nil);
-self._setItemsForSelectedClass();
-self._refresh();
-return self}, function($ctx1) {$ctx1.fill(self,"onClassSelected:",{anAnnouncement:anAnnouncement},smalltalk.HLProtocolsListWidget)})},
-messageSends: ["selectedItem:", "setItemsForSelectedClass", "refresh"]}),
-smalltalk.HLProtocolsListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onProtocolAdded:",
-fn: function (anAnnouncement){
-var self=this;
-var class_;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-class_=_st(anAnnouncement)._theClass();
-$1=_st(class_).__eq(_st(self._model())._selectedClass());
-if(! smalltalk.assert($1)){
-$2=self;
-return $2;
-};
-self._setItemsForSelectedClass();
-self._refresh();
-return self}, function($ctx1) {$ctx1.fill(self,"onProtocolAdded:",{anAnnouncement:anAnnouncement,class_:class_},smalltalk.HLProtocolsListWidget)})},
-messageSends: ["theClass", "ifFalse:", "=", "selectedClass", "model", "setItemsForSelectedClass", "refresh"]}),
-smalltalk.HLProtocolsListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onProtocolRemoved:",
-fn: function (anAnnouncement){
-var self=this;
-var class_,protocol;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4,$5;
-class_=_st(anAnnouncement)._theClass();
-protocol=_st(anAnnouncement)._protocol();
-$1=_st(class_).__eq(_st(self._model())._selectedClass());
-if(! smalltalk.assert($1)){
-$2=self;
-return $2;
-};
-$3=_st(_st(self._model())._selectedProtocol()).__eq(protocol);
-if(smalltalk.assert($3)){
-$4=self;
-_st($4)._selectedItem_(nil);
-$5=_st($4)._selectItem_(nil);
-$5;
-};
-self._setItemsForSelectedClass();
-self._refresh();
-return self}, function($ctx1) {$ctx1.fill(self,"onProtocolRemoved:",{anAnnouncement:anAnnouncement,class_:class_,protocol:protocol},smalltalk.HLProtocolsListWidget)})},
-messageSends: ["theClass", "protocol", "ifFalse:", "=", "selectedClass", "model", "ifTrue:", "selectedItem:", "selectItem:", "selectedProtocol", "setItemsForSelectedClass", "refresh"]}),
-smalltalk.HLProtocolsListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onProtocolSelected:",
-fn: function (anAnnouncement){
-var self=this;
-var protocol;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4,$5;
-protocol=_st(anAnnouncement)._item();
-self._selectedItem_(protocol);
-$1=protocol;
-if(($receiver = $1) == nil || $receiver == undefined){
-$2=self;
-return $2;
-} else {
-$1;
-};
-$3=self._hasFocus();
-if(! smalltalk.assert($3)){
-$4=self;
-_st($4)._activateItem_(protocol);
-$5=_st($4)._focus();
-$5;
-};
-return self}, function($ctx1) {$ctx1.fill(self,"onProtocolSelected:",{anAnnouncement:anAnnouncement,protocol:protocol},smalltalk.HLProtocolsListWidget)})},
-messageSends: ["item", "selectedItem:", "ifNil:", "ifFalse:", "activateItem:", "focus", "hasFocus"]}),
-smalltalk.HLProtocolsListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onProtocolsFocusRequested",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._focus();
-return self}, function($ctx1) {$ctx1.fill(self,"onProtocolsFocusRequested",{},smalltalk.HLProtocolsListWidget)})},
-messageSends: ["focus"]}),
-smalltalk.HLProtocolsListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderContentOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3;
-$1=_st(self._model())._showInstance();
-if(smalltalk.assert($1)){
-smalltalk.HLProtocolsListWidget.superclass.fn.prototype._renderContentOn_.apply(_st(self), [html]);
-} else {
-$2=_st(html)._div();
-_st($2)._class_("class_side");
-$3=_st($2)._with_((function(){
-return smalltalk.withContext(function($ctx2) {
-return smalltalk.HLProtocolsListWidget.superclass.fn.prototype._renderContentOn_.apply(_st(self), [html]);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-$3;
-};
-return self}, function($ctx1) {$ctx1.fill(self,"renderContentOn:",{html:html},smalltalk.HLProtocolsListWidget)})},
-messageSends: ["ifFalse:ifTrue:", "class:", "div", "with:", "renderContentOn:", "showInstance", "model"]}),
-smalltalk.HLProtocolsListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selectItem:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._model())._selectedProtocol_(aString);
-return self}, function($ctx1) {$ctx1.fill(self,"selectItem:",{aString:aString},smalltalk.HLProtocolsListWidget)})},
-messageSends: ["selectedProtocol:", "model"]}),
-smalltalk.HLProtocolsListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selectedItem",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=smalltalk.HLProtocolsListWidget.superclass.fn.prototype._selectedItem.apply(_st(self), []);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"selectedItem",{},smalltalk.HLProtocolsListWidget)})},
-messageSends: ["selectedItem"]}),
-smalltalk.HLProtocolsListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "setItemsForClass:",
-fn: function (aClass){
-var self=this;
-function $Array(){return smalltalk.Array||(typeof Array=="undefined"?nil:Array)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$3,$4,$5,$2;
-$1=self;
-$3=aClass;
-if(($receiver = $3) == nil || $receiver == undefined){
-$2=_st($Array())._with_(self._allProtocol());
-} else {
-$4=_st($Array())._with_(self._allProtocol());
-_st($4)._addAll_(_st(aClass)._protocols());
-$5=_st($4)._yourself();
-$2=$5;
-};
-_st($1)._items_($2);
-return self}, function($ctx1) {$ctx1.fill(self,"setItemsForClass:",{aClass:aClass},smalltalk.HLProtocolsListWidget)})},
-messageSends: ["items:", "ifNil:ifNotNil:", "with:", "allProtocol", "addAll:", "protocols", "yourself"]}),
-smalltalk.HLProtocolsListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "setItemsForSelectedClass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._setItemsForClass_(_st(self._model())._selectedClass());
-return self}, function($ctx1) {$ctx1.fill(self,"setItemsForSelectedClass",{},smalltalk.HLProtocolsListWidget)})},
-messageSends: ["setItemsForClass:", "selectedClass", "model"]}),
-smalltalk.HLProtocolsListWidget);
-
-
-
-smalltalk.addClass('HLSelectorsCache', smalltalk.Object, ['classesCache'], 'Helios-Browser');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "cacheFor:",
-fn: function (aClass){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=aClass;
-if(($receiver = $1) == nil || $receiver == undefined){
-return nil;
-} else {
-$1;
-};
-$2=_st(self._classesCache())._at_ifAbsentPut_(_st(aClass)._name(),(function(){
-return smalltalk.withContext(function($ctx2) {
-return self._newCacheFor_(aClass);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return $2;
-}, function($ctx1) {$ctx1.fill(self,"cacheFor:",{aClass:aClass},smalltalk.HLSelectorsCache)})},
-messageSends: ["ifNil:", "at:ifAbsentPut:", "name", "newCacheFor:", "classesCache"]}),
-smalltalk.HLSelectorsCache);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "classesCache",
-fn: function (){
-var self=this;
-function $HashedCollection(){return smalltalk.HashedCollection||(typeof HashedCollection=="undefined"?nil:HashedCollection)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@classesCache"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@classesCache"]=_st($HashedCollection())._new();
-$1=self["@classesCache"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"classesCache",{},smalltalk.HLSelectorsCache)})},
-messageSends: ["ifNil:", "new"]}),
-smalltalk.HLSelectorsCache);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "initialize",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-smalltalk.HLSelectorsCache.superclass.fn.prototype._initialize.apply(_st(self), []);
-self._observeSystem();
-return self}, function($ctx1) {$ctx1.fill(self,"initialize",{},smalltalk.HLSelectorsCache)})},
-messageSends: ["initialize", "observeSystem"]}),
-smalltalk.HLSelectorsCache);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "invalidateCacheFor:",
-fn: function (aMethod){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._cacheFor_(_st(aMethod)._methodClass()))._invalidateSelector_(_st(aMethod)._selector());
-return self}, function($ctx1) {$ctx1.fill(self,"invalidateCacheFor:",{aMethod:aMethod},smalltalk.HLSelectorsCache)})},
-messageSends: ["invalidateSelector:", "selector", "cacheFor:", "methodClass"]}),
-smalltalk.HLSelectorsCache);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isOverridden:",
-fn: function (aMethod){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._cacheFor_(_st(aMethod)._methodClass()))._isOverridden_(aMethod);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"isOverridden:",{aMethod:aMethod},smalltalk.HLSelectorsCache)})},
-messageSends: ["isOverridden:", "cacheFor:", "methodClass"]}),
-smalltalk.HLSelectorsCache);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isOverride:",
-fn: function (aMethod){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._cacheFor_(_st(aMethod)._methodClass()))._isOverride_(aMethod);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"isOverride:",{aMethod:aMethod},smalltalk.HLSelectorsCache)})},
-messageSends: ["isOverride:", "cacheFor:", "methodClass"]}),
-smalltalk.HLSelectorsCache);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "newCacheFor:",
-fn: function (aClass){
-var self=this;
-function $HLClassCache(){return smalltalk.HLClassCache||(typeof HLClassCache=="undefined"?nil:HLClassCache)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st($HLClassCache())._on_selectorsCache_(aClass,self);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"newCacheFor:",{aClass:aClass},smalltalk.HLSelectorsCache)})},
-messageSends: ["on:selectorsCache:"]}),
-smalltalk.HLSelectorsCache);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "observeSystem",
-fn: function (){
-var self=this;
-function $MethodAdded(){return smalltalk.MethodAdded||(typeof MethodAdded=="undefined"?nil:MethodAdded)}
-function $SystemAnnouncer(){return smalltalk.SystemAnnouncer||(typeof SystemAnnouncer=="undefined"?nil:SystemAnnouncer)}
-function $MethodRemoved(){return smalltalk.MethodRemoved||(typeof MethodRemoved=="undefined"?nil:MethodRemoved)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st($SystemAnnouncer())._current();
-_st($1)._on_send_to_($MethodAdded(),"onMethodAdded:",self);
-$2=_st($1)._on_send_to_($MethodRemoved(),"onMethodRemoved:",self);
-return self}, function($ctx1) {$ctx1.fill(self,"observeSystem",{},smalltalk.HLSelectorsCache)})},
-messageSends: ["on:send:to:", "current"]}),
-smalltalk.HLSelectorsCache);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onMethodAdded:",
-fn: function (anAnnouncement){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._invalidateCacheFor_(_st(anAnnouncement)._method());
-return self}, function($ctx1) {$ctx1.fill(self,"onMethodAdded:",{anAnnouncement:anAnnouncement},smalltalk.HLSelectorsCache)})},
-messageSends: ["invalidateCacheFor:", "method"]}),
-smalltalk.HLSelectorsCache);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onMethodRemoved:",
-fn: function (anAnnouncement){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._invalidateCacheFor_(_st(anAnnouncement)._method());
-return self}, function($ctx1) {$ctx1.fill(self,"onMethodRemoved:",{anAnnouncement:anAnnouncement},smalltalk.HLSelectorsCache)})},
-messageSends: ["invalidateCacheFor:", "method"]}),
-smalltalk.HLSelectorsCache);
-
-
-smalltalk.HLSelectorsCache.klass.iVarNames = ['current'];
-smalltalk.addMethod(
-smalltalk.method({
-selector: "current",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@current"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@current"]=smalltalk.HLSelectorsCache.klass.superclass.fn.prototype._new.apply(_st(self), []);
-$1=self["@current"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"current",{},smalltalk.HLSelectorsCache.klass)})},
-messageSends: ["ifNil:", "new"]}),
-smalltalk.HLSelectorsCache.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "flush",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@current"]=nil;
-return self}, function($ctx1) {$ctx1.fill(self,"flush",{},smalltalk.HLSelectorsCache.klass)})},
-messageSends: []}),
-smalltalk.HLSelectorsCache.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "new",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._shouldNotImplement();
-return self}, function($ctx1) {$ctx1.fill(self,"new",{},smalltalk.HLSelectorsCache.klass)})},
-messageSends: ["shouldNotImplement"]}),
-smalltalk.HLSelectorsCache.klass);
-
-});

+ 0 - 423
js/Helios-Commands-Browser.deploy.js

@@ -1,423 +0,0 @@
-define("amber/Helios-Commands-Browser", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/Helios-Commands-Tools"], function(smalltalk,nil,_st){
-smalltalk.addPackage('Helios-Commands-Browser');
-smalltalk.packages["Helios-Commands-Browser"].transport = {"type":"amd","amdNamespace":"amber"};
-
-smalltalk.addClass('HLBrowserCommand', smalltalk.HLToolCommand, [], 'Helios-Commands-Browser');
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isValidFor:",
-fn: function (aModel){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(aModel)._isBrowserModel();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"isValidFor:",{aModel:aModel},smalltalk.HLBrowserCommand.klass)})},
-messageSends: ["isBrowserModel"]}),
-smalltalk.HLBrowserCommand.klass);
-
-
-smalltalk.addClass('HLBrowserGoToCommand', smalltalk.HLBrowserCommand, [], 'Helios-Commands-Browser');
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isValidFor:",
-fn: function (aModel){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(aModel)._isBrowserModel();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"isValidFor:",{aModel:aModel},smalltalk.HLBrowserGoToCommand.klass)})},
-messageSends: ["isBrowserModel"]}),
-smalltalk.HLBrowserGoToCommand.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "key",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "g";
-}, function($ctx1) {$ctx1.fill(self,"key",{},smalltalk.HLBrowserGoToCommand.klass)})},
-messageSends: []}),
-smalltalk.HLBrowserGoToCommand.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "label",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Go to";
-}, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.HLBrowserGoToCommand.klass)})},
-messageSends: []}),
-smalltalk.HLBrowserGoToCommand.klass);
-
-
-smalltalk.addClass('HLGoToClassesCommand', smalltalk.HLBrowserGoToCommand, [], 'Helios-Commands-Browser');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "execute",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._model())._focusOnClasses();
-return self}, function($ctx1) {$ctx1.fill(self,"execute",{},smalltalk.HLGoToClassesCommand)})},
-messageSends: ["focusOnClasses", "model"]}),
-smalltalk.HLGoToClassesCommand);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "key",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "c";
-}, function($ctx1) {$ctx1.fill(self,"key",{},smalltalk.HLGoToClassesCommand.klass)})},
-messageSends: []}),
-smalltalk.HLGoToClassesCommand.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "label",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Classes";
-}, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.HLGoToClassesCommand.klass)})},
-messageSends: []}),
-smalltalk.HLGoToClassesCommand.klass);
-
-
-smalltalk.addClass('HLGoToMethodsCommand', smalltalk.HLBrowserGoToCommand, [], 'Helios-Commands-Browser');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "execute",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._model())._focusOnMethods();
-return self}, function($ctx1) {$ctx1.fill(self,"execute",{},smalltalk.HLGoToMethodsCommand)})},
-messageSends: ["focusOnMethods", "model"]}),
-smalltalk.HLGoToMethodsCommand);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "key",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "m";
-}, function($ctx1) {$ctx1.fill(self,"key",{},smalltalk.HLGoToMethodsCommand.klass)})},
-messageSends: []}),
-smalltalk.HLGoToMethodsCommand.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "label",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Methods";
-}, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.HLGoToMethodsCommand.klass)})},
-messageSends: []}),
-smalltalk.HLGoToMethodsCommand.klass);
-
-
-smalltalk.addClass('HLGoToPackagesCommand', smalltalk.HLBrowserGoToCommand, [], 'Helios-Commands-Browser');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "execute",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._model())._focusOnPackages();
-return self}, function($ctx1) {$ctx1.fill(self,"execute",{},smalltalk.HLGoToPackagesCommand)})},
-messageSends: ["focusOnPackages", "model"]}),
-smalltalk.HLGoToPackagesCommand);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "key",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "p";
-}, function($ctx1) {$ctx1.fill(self,"key",{},smalltalk.HLGoToPackagesCommand.klass)})},
-messageSends: []}),
-smalltalk.HLGoToPackagesCommand.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "label",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Packages";
-}, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.HLGoToPackagesCommand.klass)})},
-messageSends: []}),
-smalltalk.HLGoToPackagesCommand.klass);
-
-
-smalltalk.addClass('HLGoToProtocolsCommand', smalltalk.HLBrowserGoToCommand, [], 'Helios-Commands-Browser');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "execute",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._model())._focusOnProtocols();
-return self}, function($ctx1) {$ctx1.fill(self,"execute",{},smalltalk.HLGoToProtocolsCommand)})},
-messageSends: ["focusOnProtocols", "model"]}),
-smalltalk.HLGoToProtocolsCommand);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "key",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "t";
-}, function($ctx1) {$ctx1.fill(self,"key",{},smalltalk.HLGoToProtocolsCommand.klass)})},
-messageSends: []}),
-smalltalk.HLGoToProtocolsCommand.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "label",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Protocols";
-}, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.HLGoToProtocolsCommand.klass)})},
-messageSends: []}),
-smalltalk.HLGoToProtocolsCommand.klass);
-
-
-smalltalk.addClass('HLGoToSourceCodeCommand', smalltalk.HLBrowserGoToCommand, [], 'Helios-Commands-Browser');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "execute",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._model())._focusOnSourceCode();
-return self}, function($ctx1) {$ctx1.fill(self,"execute",{},smalltalk.HLGoToSourceCodeCommand)})},
-messageSends: ["focusOnSourceCode", "model"]}),
-smalltalk.HLGoToSourceCodeCommand);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "key",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "s";
-}, function($ctx1) {$ctx1.fill(self,"key",{},smalltalk.HLGoToSourceCodeCommand.klass)})},
-messageSends: []}),
-smalltalk.HLGoToSourceCodeCommand.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "label",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Source code";
-}, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.HLGoToSourceCodeCommand.klass)})},
-messageSends: []}),
-smalltalk.HLGoToSourceCodeCommand.klass);
-
-
-smalltalk.addClass('HLEditCommentCommand', smalltalk.HLBrowserCommand, [], 'Helios-Commands-Browser');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "execute",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._model())._editComment();
-return self}, function($ctx1) {$ctx1.fill(self,"execute",{},smalltalk.HLEditCommentCommand)})},
-messageSends: ["editComment", "model"]}),
-smalltalk.HLEditCommentCommand);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isActive",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(self._model())._showComment())._and_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(self._model())._selectedClass())._notNil();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"isActive",{},smalltalk.HLEditCommentCommand)})},
-messageSends: ["and:", "notNil", "selectedClass", "model", "showComment"]}),
-smalltalk.HLEditCommentCommand);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "key",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "d";
-}, function($ctx1) {$ctx1.fill(self,"key",{},smalltalk.HLEditCommentCommand.klass)})},
-messageSends: []}),
-smalltalk.HLEditCommentCommand.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "label",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Edit documentation";
-}, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.HLEditCommentCommand.klass)})},
-messageSends: []}),
-smalltalk.HLEditCommentCommand.klass);
-
-
-smalltalk.addClass('HLToggleCommand', smalltalk.HLBrowserCommand, [], 'Helios-Commands-Browser');
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "key",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "t";
-}, function($ctx1) {$ctx1.fill(self,"key",{},smalltalk.HLToggleCommand.klass)})},
-messageSends: []}),
-smalltalk.HLToggleCommand.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "label",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Toggle";
-}, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.HLToggleCommand.klass)})},
-messageSends: []}),
-smalltalk.HLToggleCommand.klass);
-
-
-smalltalk.addClass('HLToggleClassCommentCommand', smalltalk.HLToggleCommand, [], 'Helios-Commands-Browser');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "execute",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._model())._showComment_(_st(_st(self._model())._showComment())._not());
-return self}, function($ctx1) {$ctx1.fill(self,"execute",{},smalltalk.HLToggleClassCommentCommand)})},
-messageSends: ["showComment:", "not", "showComment", "model"]}),
-smalltalk.HLToggleClassCommentCommand);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "key",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "d";
-}, function($ctx1) {$ctx1.fill(self,"key",{},smalltalk.HLToggleClassCommentCommand.klass)})},
-messageSends: []}),
-smalltalk.HLToggleClassCommentCommand.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "label",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Documentation";
-}, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.HLToggleClassCommentCommand.klass)})},
-messageSends: []}),
-smalltalk.HLToggleClassCommentCommand.klass);
-
-
-smalltalk.addClass('HLToggleClassSideCommand', smalltalk.HLToggleCommand, [], 'Helios-Commands-Browser');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "execute",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._model())._showInstance_(false);
-return self}, function($ctx1) {$ctx1.fill(self,"execute",{},smalltalk.HLToggleClassSideCommand)})},
-messageSends: ["showInstance:", "model"]}),
-smalltalk.HLToggleClassSideCommand);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "key",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "c";
-}, function($ctx1) {$ctx1.fill(self,"key",{},smalltalk.HLToggleClassSideCommand.klass)})},
-messageSends: []}),
-smalltalk.HLToggleClassSideCommand.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "label",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Class side";
-}, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.HLToggleClassSideCommand.klass)})},
-messageSends: []}),
-smalltalk.HLToggleClassSideCommand.klass);
-
-
-smalltalk.addClass('HLToggleInstanceSideCommand', smalltalk.HLToggleCommand, [], 'Helios-Commands-Browser');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "execute",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._model())._showInstance_(true);
-return self}, function($ctx1) {$ctx1.fill(self,"execute",{},smalltalk.HLToggleInstanceSideCommand)})},
-messageSends: ["showInstance:", "model"]}),
-smalltalk.HLToggleInstanceSideCommand);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "key",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "i";
-}, function($ctx1) {$ctx1.fill(self,"key",{},smalltalk.HLToggleInstanceSideCommand.klass)})},
-messageSends: []}),
-smalltalk.HLToggleInstanceSideCommand.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "label",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Instance side";
-}, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.HLToggleInstanceSideCommand.klass)})},
-messageSends: []}),
-smalltalk.HLToggleInstanceSideCommand.klass);
-
-});

+ 0 - 717
js/Helios-Commands-Core.deploy.js

@@ -1,717 +0,0 @@
-define("amber/Helios-Commands-Core", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/Kernel-Objects"], function(smalltalk,nil,_st){
-smalltalk.addPackage('Helios-Commands-Core');
-smalltalk.packages["Helios-Commands-Core"].transport = {"type":"amd","amdNamespace":"amber"};
-
-smalltalk.addClass('HLCommand', smalltalk.Object, ['input'], 'Helios-Commands-Core');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "asActionBinding",
-fn: function (){
-var self=this;
-function $HLBindingAction(){return smalltalk.HLBindingAction||(typeof HLBindingAction=="undefined"?nil:HLBindingAction)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=_st($HLBindingAction())._on_labelled_(self._keyCode(),self._label());
-_st($2)._command_(self);
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"asActionBinding",{},smalltalk.HLCommand)})},
-messageSends: ["command:", "on:labelled:", "keyCode", "label", "yourself"]}),
-smalltalk.HLCommand);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "asBinding",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self._isBindingGroup();
-if(smalltalk.assert($2)){
-$1=self._asGroupBinding();
-} else {
-$1=self._asActionBinding();
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"asBinding",{},smalltalk.HLCommand)})},
-messageSends: ["ifTrue:ifFalse:", "asGroupBinding", "asActionBinding", "isBindingGroup"]}),
-smalltalk.HLCommand);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "asGroupBinding",
-fn: function (){
-var self=this;
-function $HLBindingGroup(){return smalltalk.HLBindingGroup||(typeof HLBindingGroup=="undefined"?nil:HLBindingGroup)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st($HLBindingGroup())._on_labelled_(self._keyCode(),self._label());
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"asGroupBinding",{},smalltalk.HLCommand)})},
-messageSends: ["on:labelled:", "keyCode", "label"]}),
-smalltalk.HLCommand);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "commandError:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._error_(aString);
-return self}, function($ctx1) {$ctx1.fill(self,"commandError:",{aString:aString},smalltalk.HLCommand)})},
-messageSends: ["error:"]}),
-smalltalk.HLCommand);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "defaultInput",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "";
-}, function($ctx1) {$ctx1.fill(self,"defaultInput",{},smalltalk.HLCommand)})},
-messageSends: []}),
-smalltalk.HLCommand);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "documentation",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._class())._documentation();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"documentation",{},smalltalk.HLCommand)})},
-messageSends: ["documentation", "class"]}),
-smalltalk.HLCommand);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "execute",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self}, function($ctx1) {$ctx1.fill(self,"execute",{},smalltalk.HLCommand)})},
-messageSends: []}),
-smalltalk.HLCommand);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "input",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@input"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"input",{},smalltalk.HLCommand)})},
-messageSends: []}),
-smalltalk.HLCommand);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "input:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-self["@input"]=aString;
-$1=self["@input"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"input:",{aString:aString},smalltalk.HLCommand)})},
-messageSends: []}),
-smalltalk.HLCommand);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "inputCompletion",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=[];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"inputCompletion",{},smalltalk.HLCommand)})},
-messageSends: []}),
-smalltalk.HLCommand);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "inputLabel",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._label();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"inputLabel",{},smalltalk.HLCommand)})},
-messageSends: ["label"]}),
-smalltalk.HLCommand);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isAction",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._isBindingGroup())._not();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"isAction",{},smalltalk.HLCommand)})},
-messageSends: ["not", "isBindingGroup"]}),
-smalltalk.HLCommand);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isActive",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"isActive",{},smalltalk.HLCommand)})},
-messageSends: []}),
-smalltalk.HLCommand);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isBindingGroup",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(_st(self._class())._methodDictionary())._includesKey_("execute"))._not();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"isBindingGroup",{},smalltalk.HLCommand)})},
-messageSends: ["not", "includesKey:", "methodDictionary", "class"]}),
-smalltalk.HLCommand);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isInputRequired",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return false;
-}, function($ctx1) {$ctx1.fill(self,"isInputRequired",{},smalltalk.HLCommand)})},
-messageSends: []}),
-smalltalk.HLCommand);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "key",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._class())._key();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"key",{},smalltalk.HLCommand)})},
-messageSends: ["key", "class"]}),
-smalltalk.HLCommand);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "keyCode",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(self._key())._asUppercase())._charCodeAt_((1));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"keyCode",{},smalltalk.HLCommand)})},
-messageSends: ["charCodeAt:", "asUppercase", "key"]}),
-smalltalk.HLCommand);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "label",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._class())._label();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.HLCommand)})},
-messageSends: ["label", "class"]}),
-smalltalk.HLCommand);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "menuLabel",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._class())._menuLabel();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"menuLabel",{},smalltalk.HLCommand)})},
-messageSends: ["menuLabel", "class"]}),
-smalltalk.HLCommand);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "registerOn:",
-fn: function (aBinding){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(aBinding)._add_(self._asBinding());
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"registerOn:",{aBinding:aBinding},smalltalk.HLCommand)})},
-messageSends: ["add:", "asBinding"]}),
-smalltalk.HLCommand);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "concreteClasses",
-fn: function (){
-var self=this;
-var classes;
-function $OrderedCollection(){return smalltalk.OrderedCollection||(typeof OrderedCollection=="undefined"?nil:OrderedCollection)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-classes=_st($OrderedCollection())._new();
-$1=self._isConcrete();
-if(smalltalk.assert($1)){
-_st(classes)._add_(self);
-};
-_st(self._subclasses())._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(classes)._addAll_(_st(each)._concreteClasses());
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-$2=classes;
-return $2;
-}, function($ctx1) {$ctx1.fill(self,"concreteClasses",{classes:classes},smalltalk.HLCommand.klass)})},
-messageSends: ["new", "ifTrue:", "add:", "isConcrete", "do:", "addAll:", "concreteClasses", "subclasses"]}),
-smalltalk.HLCommand.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "documentation",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "";
-}, function($ctx1) {$ctx1.fill(self,"documentation",{},smalltalk.HLCommand.klass)})},
-messageSends: []}),
-smalltalk.HLCommand.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isConcrete",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._key())._notNil();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"isConcrete",{},smalltalk.HLCommand.klass)})},
-messageSends: ["notNil", "key"]}),
-smalltalk.HLCommand.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isValidFor:",
-fn: function (aModel){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"isValidFor:",{aModel:aModel},smalltalk.HLCommand.klass)})},
-messageSends: []}),
-smalltalk.HLCommand.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "key",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return nil;
-}, function($ctx1) {$ctx1.fill(self,"key",{},smalltalk.HLCommand.klass)})},
-messageSends: []}),
-smalltalk.HLCommand.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "label",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "";
-}, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.HLCommand.klass)})},
-messageSends: []}),
-smalltalk.HLCommand.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "menuLabel",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._label();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"menuLabel",{},smalltalk.HLCommand.klass)})},
-messageSends: ["label"]}),
-smalltalk.HLCommand.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "registerConcreteClassesOn:",
-fn: function (aBinding){
-var self=this;
-var newBinding;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._isConcrete();
-if(smalltalk.assert($1)){
-newBinding=self._registerOn_(aBinding);
-newBinding;
-} else {
-newBinding=aBinding;
-newBinding;
-};
-_st(self._subclasses())._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(each)._registerConcreteClassesOn_(newBinding);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"registerConcreteClassesOn:",{aBinding:aBinding,newBinding:newBinding},smalltalk.HLCommand.klass)})},
-messageSends: ["ifTrue:ifFalse:", "registerOn:", "isConcrete", "do:", "registerConcreteClassesOn:", "subclasses"]}),
-smalltalk.HLCommand.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "registerOn:",
-fn: function (aBinding){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._new())._registerOn_(aBinding);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"registerOn:",{aBinding:aBinding},smalltalk.HLCommand.klass)})},
-messageSends: ["registerOn:", "new"]}),
-smalltalk.HLCommand.klass);
-
-
-smalltalk.addClass('HLCloseTabCommand', smalltalk.HLCommand, [], 'Helios-Commands-Core');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "execute",
-fn: function (){
-var self=this;
-function $HLManager(){return smalltalk.HLManager||(typeof HLManager=="undefined"?nil:HLManager)}
-return smalltalk.withContext(function($ctx1) { 
-_st(_st($HLManager())._current())._removeActiveTab();
-return self}, function($ctx1) {$ctx1.fill(self,"execute",{},smalltalk.HLCloseTabCommand)})},
-messageSends: ["removeActiveTab", "current"]}),
-smalltalk.HLCloseTabCommand);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "key",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "w";
-}, function($ctx1) {$ctx1.fill(self,"key",{},smalltalk.HLCloseTabCommand.klass)})},
-messageSends: []}),
-smalltalk.HLCloseTabCommand.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "label",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Close tab";
-}, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.HLCloseTabCommand.klass)})},
-messageSends: []}),
-smalltalk.HLCloseTabCommand.klass);
-
-
-smalltalk.addClass('HLModelCommand', smalltalk.HLCommand, ['model'], 'Helios-Commands-Core');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "model",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@model"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"model",{},smalltalk.HLModelCommand)})},
-messageSends: []}),
-smalltalk.HLModelCommand);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "model:",
-fn: function (aModel){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@model"]=aModel;
-return self}, function($ctx1) {$ctx1.fill(self,"model:",{aModel:aModel},smalltalk.HLModelCommand)})},
-messageSends: []}),
-smalltalk.HLModelCommand);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "for:",
-fn: function (aModel){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._new();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"for:",{aModel:aModel},smalltalk.HLModelCommand.klass)})},
-messageSends: ["new"]}),
-smalltalk.HLModelCommand.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "registerConcreteClassesOn:for:",
-fn: function (aBinding,aModel){
-var self=this;
-var newBinding;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._isConcrete())._and_((function(){
-return smalltalk.withContext(function($ctx2) {
-return self._isValidFor_(aModel);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-if(smalltalk.assert($1)){
-newBinding=self._registerOn_for_(aBinding,aModel);
-newBinding;
-} else {
-newBinding=aBinding;
-newBinding;
-};
-_st(self._subclasses())._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(each)._registerConcreteClassesOn_for_(newBinding,aModel);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"registerConcreteClassesOn:for:",{aBinding:aBinding,aModel:aModel,newBinding:newBinding},smalltalk.HLModelCommand.klass)})},
-messageSends: ["ifTrue:ifFalse:", "registerOn:for:", "and:", "isValidFor:", "isConcrete", "do:", "registerConcreteClassesOn:for:", "subclasses"]}),
-smalltalk.HLModelCommand.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "registerOn:for:",
-fn: function (aBinding,aModel){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._for_(aModel))._registerOn_(aBinding);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"registerOn:for:",{aBinding:aBinding,aModel:aModel},smalltalk.HLModelCommand.klass)})},
-messageSends: ["registerOn:", "for:"]}),
-smalltalk.HLModelCommand.klass);
-
-
-smalltalk.addClass('HLOpenCommand', smalltalk.HLCommand, [], 'Helios-Commands-Core');
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "key",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "o";
-}, function($ctx1) {$ctx1.fill(self,"key",{},smalltalk.HLOpenCommand.klass)})},
-messageSends: []}),
-smalltalk.HLOpenCommand.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "label",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Open";
-}, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.HLOpenCommand.klass)})},
-messageSends: []}),
-smalltalk.HLOpenCommand.klass);
-
-
-smalltalk.addClass('HLOpenBrowserCommand', smalltalk.HLOpenCommand, [], 'Helios-Commands-Core');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "execute",
-fn: function (){
-var self=this;
-function $HLBrowser(){return smalltalk.HLBrowser||(typeof HLBrowser=="undefined"?nil:HLBrowser)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st($HLBrowser())._openAsTab();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"execute",{},smalltalk.HLOpenBrowserCommand)})},
-messageSends: ["openAsTab"]}),
-smalltalk.HLOpenBrowserCommand);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "key",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "b";
-}, function($ctx1) {$ctx1.fill(self,"key",{},smalltalk.HLOpenBrowserCommand.klass)})},
-messageSends: []}),
-smalltalk.HLOpenBrowserCommand.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "label",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Browser";
-}, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.HLOpenBrowserCommand.klass)})},
-messageSends: []}),
-smalltalk.HLOpenBrowserCommand.klass);
-
-
-smalltalk.addClass('HLOpenWorkspaceCommand', smalltalk.HLOpenCommand, [], 'Helios-Commands-Core');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "execute",
-fn: function (){
-var self=this;
-function $HLWorkspace(){return smalltalk.HLWorkspace||(typeof HLWorkspace=="undefined"?nil:HLWorkspace)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st($HLWorkspace())._openAsTab();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"execute",{},smalltalk.HLOpenWorkspaceCommand)})},
-messageSends: ["openAsTab"]}),
-smalltalk.HLOpenWorkspaceCommand);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "key",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "w";
-}, function($ctx1) {$ctx1.fill(self,"key",{},smalltalk.HLOpenWorkspaceCommand.klass)})},
-messageSends: []}),
-smalltalk.HLOpenWorkspaceCommand.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "label",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Workspace";
-}, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.HLOpenWorkspaceCommand.klass)})},
-messageSends: []}),
-smalltalk.HLOpenWorkspaceCommand.klass);
-
-
-smalltalk.addClass('HLSwitchTabCommand', smalltalk.HLCommand, [], 'Helios-Commands-Core');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "execute",
-fn: function (){
-var self=this;
-var activeTab;
-function $HLTabSelectionWidget(){return smalltalk.HLTabSelectionWidget||(typeof HLTabSelectionWidget=="undefined"?nil:HLTabSelectionWidget)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-activeTab=self._selectedTab();
-$2=_st($HLTabSelectionWidget())._new();
-_st($2)._tabs_(self._tabs());
-_st($2)._selectedTab_(self._selectedTab());
-_st($2)._selectCallback_((function(tab){
-return smalltalk.withContext(function($ctx2) {
-return _st(tab)._activate();
-}, function($ctx2) {$ctx2.fillBlock({tab:tab},$ctx1)})}));
-_st($2)._confirmCallback_((function(tab){
-return smalltalk.withContext(function($ctx2) {
-return _st(tab)._focus();
-}, function($ctx2) {$ctx2.fillBlock({tab:tab},$ctx1)})}));
-_st($2)._cancelCallback_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(activeTab)._activate();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-$3=_st($2)._show();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"execute",{activeTab:activeTab},smalltalk.HLSwitchTabCommand)})},
-messageSends: ["selectedTab", "tabs:", "tabs", "new", "selectedTab:", "selectCallback:", "activate", "confirmCallback:", "focus", "cancelCallback:", "show"]}),
-smalltalk.HLSwitchTabCommand);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selectedTab",
-fn: function (){
-var self=this;
-function $HLManager(){return smalltalk.HLManager||(typeof HLManager=="undefined"?nil:HLManager)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st($HLManager())._current())._activeTab();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"selectedTab",{},smalltalk.HLSwitchTabCommand)})},
-messageSends: ["activeTab", "current"]}),
-smalltalk.HLSwitchTabCommand);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "tabs",
-fn: function (){
-var self=this;
-function $HLManager(){return smalltalk.HLManager||(typeof HLManager=="undefined"?nil:HLManager)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st($HLManager())._current())._tabs();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"tabs",{},smalltalk.HLSwitchTabCommand)})},
-messageSends: ["tabs", "current"]}),
-smalltalk.HLSwitchTabCommand);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "key",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "s";
-}, function($ctx1) {$ctx1.fill(self,"key",{},smalltalk.HLSwitchTabCommand.klass)})},
-messageSends: []}),
-smalltalk.HLSwitchTabCommand.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "label",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Switch";
-}, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.HLSwitchTabCommand.klass)})},
-messageSends: []}),
-smalltalk.HLSwitchTabCommand.klass);
-
-
-smalltalk.addClass('HLViewCommand', smalltalk.HLCommand, [], 'Helios-Commands-Core');
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "label",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "View";
-}, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.HLViewCommand.klass)})},
-messageSends: []}),
-smalltalk.HLViewCommand.klass);
-
-});

+ 0 - 1346
js/Helios-Commands-Tools.deploy.js

@@ -1,1346 +0,0 @@
-define("amber/Helios-Commands-Tools", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/Helios-Commands-Core"], function(smalltalk,nil,_st){
-smalltalk.addPackage('Helios-Commands-Tools');
-smalltalk.packages["Helios-Commands-Tools"].transport = {"type":"amd","amdNamespace":"amber"};
-
-smalltalk.addClass('HLToolCommand', smalltalk.HLModelCommand, [], 'Helios-Commands-Tools');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "category",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return nil;
-}, function($ctx1) {$ctx1.fill(self,"category",{},smalltalk.HLToolCommand)})},
-messageSends: []}),
-smalltalk.HLToolCommand);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "for:",
-fn: function (aToolModel){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=self._new();
-_st($2)._model_(aToolModel);
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"for:",{aToolModel:aToolModel},smalltalk.HLToolCommand.klass)})},
-messageSends: ["model:", "new", "yourself"]}),
-smalltalk.HLToolCommand.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isValidFor:",
-fn: function (aModel){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(aModel)._isToolModel();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"isValidFor:",{aModel:aModel},smalltalk.HLToolCommand.klass)})},
-messageSends: ["isToolModel"]}),
-smalltalk.HLToolCommand.klass);
-
-
-smalltalk.addClass('HLCommitPackageCommand', smalltalk.HLToolCommand, [], 'Helios-Commands-Tools');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "category",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Packages";
-}, function($ctx1) {$ctx1.fill(self,"category",{},smalltalk.HLCommitPackageCommand)})},
-messageSends: []}),
-smalltalk.HLCommitPackageCommand);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "execute",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._model())._commitPackage();
-return self}, function($ctx1) {$ctx1.fill(self,"execute",{},smalltalk.HLCommitPackageCommand)})},
-messageSends: ["commitPackage", "model"]}),
-smalltalk.HLCommitPackageCommand);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isActive",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"isActive",{},smalltalk.HLCommitPackageCommand)})},
-messageSends: []}),
-smalltalk.HLCommitPackageCommand);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "key",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "k";
-}, function($ctx1) {$ctx1.fill(self,"key",{},smalltalk.HLCommitPackageCommand.klass)})},
-messageSends: []}),
-smalltalk.HLCommitPackageCommand.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "label",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Commit";
-}, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.HLCommitPackageCommand.klass)})},
-messageSends: []}),
-smalltalk.HLCommitPackageCommand.klass);
-
-
-smalltalk.addClass('HLCopyCommand', smalltalk.HLToolCommand, [], 'Helios-Commands-Tools');
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "key",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "c";
-}, function($ctx1) {$ctx1.fill(self,"key",{},smalltalk.HLCopyCommand.klass)})},
-messageSends: []}),
-smalltalk.HLCopyCommand.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "label",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Copy";
-}, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.HLCopyCommand.klass)})},
-messageSends: []}),
-smalltalk.HLCopyCommand.klass);
-
-
-smalltalk.addClass('HLCopyClassCommand', smalltalk.HLCopyCommand, [], 'Helios-Commands-Tools');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "category",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Classes";
-}, function($ctx1) {$ctx1.fill(self,"category",{},smalltalk.HLCopyClassCommand)})},
-messageSends: []}),
-smalltalk.HLCopyClassCommand);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "defaultInput",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(self._model())._selectedClass())._name();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"defaultInput",{},smalltalk.HLCopyClassCommand)})},
-messageSends: ["name", "selectedClass", "model"]}),
-smalltalk.HLCopyClassCommand);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "displayLabel",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "New class name:";
-}, function($ctx1) {$ctx1.fill(self,"displayLabel",{},smalltalk.HLCopyClassCommand)})},
-messageSends: []}),
-smalltalk.HLCopyClassCommand);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "execute",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._model())._copyClassTo_(self._input());
-return self}, function($ctx1) {$ctx1.fill(self,"execute",{},smalltalk.HLCopyClassCommand)})},
-messageSends: ["copyClassTo:", "input", "model"]}),
-smalltalk.HLCopyClassCommand);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isActive",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(self._model())._selectedClass())._notNil();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"isActive",{},smalltalk.HLCopyClassCommand)})},
-messageSends: ["notNil", "selectedClass", "model"]}),
-smalltalk.HLCopyClassCommand);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isInputRequired",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"isInputRequired",{},smalltalk.HLCopyClassCommand)})},
-messageSends: []}),
-smalltalk.HLCopyClassCommand);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "key",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "c";
-}, function($ctx1) {$ctx1.fill(self,"key",{},smalltalk.HLCopyClassCommand.klass)})},
-messageSends: []}),
-smalltalk.HLCopyClassCommand.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "label",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Class";
-}, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.HLCopyClassCommand.klass)})},
-messageSends: []}),
-smalltalk.HLCopyClassCommand.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "menuLabel",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Copy class...";
-}, function($ctx1) {$ctx1.fill(self,"menuLabel",{},smalltalk.HLCopyClassCommand.klass)})},
-messageSends: []}),
-smalltalk.HLCopyClassCommand.klass);
-
-
-smalltalk.addClass('HLFindCommand', smalltalk.HLToolCommand, [], 'Helios-Commands-Tools');
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "key",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "f";
-}, function($ctx1) {$ctx1.fill(self,"key",{},smalltalk.HLFindCommand.klass)})},
-messageSends: []}),
-smalltalk.HLFindCommand.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "label",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Find";
-}, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.HLFindCommand.klass)})},
-messageSends: []}),
-smalltalk.HLFindCommand.klass);
-
-
-smalltalk.addClass('HLFindClassCommand', smalltalk.HLFindCommand, [], 'Helios-Commands-Tools');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "displayLabel",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "select a class";
-}, function($ctx1) {$ctx1.fill(self,"displayLabel",{},smalltalk.HLFindClassCommand)})},
-messageSends: []}),
-smalltalk.HLFindClassCommand);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "execute",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._model())._openClassNamed_(self._input());
-return self}, function($ctx1) {$ctx1.fill(self,"execute",{},smalltalk.HLFindClassCommand)})},
-messageSends: ["openClassNamed:", "input", "model"]}),
-smalltalk.HLFindClassCommand);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "inputCompletion",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._model())._availableClassNames();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"inputCompletion",{},smalltalk.HLFindClassCommand)})},
-messageSends: ["availableClassNames", "model"]}),
-smalltalk.HLFindClassCommand);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "inputLabel",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Find a class";
-}, function($ctx1) {$ctx1.fill(self,"inputLabel",{},smalltalk.HLFindClassCommand)})},
-messageSends: []}),
-smalltalk.HLFindClassCommand);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isInputRequired",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"isInputRequired",{},smalltalk.HLFindClassCommand)})},
-messageSends: []}),
-smalltalk.HLFindClassCommand);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isValidFor:",
-fn: function (aModel){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(aModel)._isBrowserModel();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"isValidFor:",{aModel:aModel},smalltalk.HLFindClassCommand.klass)})},
-messageSends: ["isBrowserModel"]}),
-smalltalk.HLFindClassCommand.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "key",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "c";
-}, function($ctx1) {$ctx1.fill(self,"key",{},smalltalk.HLFindClassCommand.klass)})},
-messageSends: []}),
-smalltalk.HLFindClassCommand.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "label",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Class";
-}, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.HLFindClassCommand.klass)})},
-messageSends: []}),
-smalltalk.HLFindClassCommand.klass);
-
-
-smalltalk.addClass('HLFindReferencesCommand', smalltalk.HLFindCommand, [], 'Helios-Commands-Tools');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "defaultInput",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=_st(self._model())._selectedMethod();
-if(($receiver = $2) == nil || $receiver == undefined){
-$3=_st(self._model())._selectedClass();
-if(($receiver = $3) == nil || $receiver == undefined){
-$1="";
-} else {
-var class_;
-class_=$receiver;
-$1=_st(class_)._name();
-};
-} else {
-var method;
-method=$receiver;
-$1=_st(method)._selector();
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"defaultInput",{},smalltalk.HLFindReferencesCommand)})},
-messageSends: ["ifNil:ifNotNil:", "name", "selectedClass", "model", "selector", "selectedMethod"]}),
-smalltalk.HLFindReferencesCommand);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "displayLabel",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "find references";
-}, function($ctx1) {$ctx1.fill(self,"displayLabel",{},smalltalk.HLFindReferencesCommand)})},
-messageSends: []}),
-smalltalk.HLFindReferencesCommand);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "execute",
-fn: function (){
-var self=this;
-function $HLReferences(){return smalltalk.HLReferences||(typeof HLReferences=="undefined"?nil:HLReferences)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st($HLReferences())._new();
-_st($1)._openAsTab();
-$2=_st($1)._search_(self._input());
-return self}, function($ctx1) {$ctx1.fill(self,"execute",{},smalltalk.HLFindReferencesCommand)})},
-messageSends: ["openAsTab", "new", "search:", "input"]}),
-smalltalk.HLFindReferencesCommand);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "inputCompletion",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(self._model())._availableClassNames()).__comma(_st(self._model())._allSelectors());
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"inputCompletion",{},smalltalk.HLFindReferencesCommand)})},
-messageSends: [",", "allSelectors", "model", "availableClassNames"]}),
-smalltalk.HLFindReferencesCommand);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "inputLabel",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Find references of";
-}, function($ctx1) {$ctx1.fill(self,"inputLabel",{},smalltalk.HLFindReferencesCommand)})},
-messageSends: []}),
-smalltalk.HLFindReferencesCommand);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isInputRequired",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"isInputRequired",{},smalltalk.HLFindReferencesCommand)})},
-messageSends: []}),
-smalltalk.HLFindReferencesCommand);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "key",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "r";
-}, function($ctx1) {$ctx1.fill(self,"key",{},smalltalk.HLFindReferencesCommand.klass)})},
-messageSends: []}),
-smalltalk.HLFindReferencesCommand.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "label",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "References";
-}, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.HLFindReferencesCommand.klass)})},
-messageSends: []}),
-smalltalk.HLFindReferencesCommand.klass);
-
-
-smalltalk.addClass('HLMoveToCommand', smalltalk.HLToolCommand, [], 'Helios-Commands-Tools');
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "key",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "m";
-}, function($ctx1) {$ctx1.fill(self,"key",{},smalltalk.HLMoveToCommand.klass)})},
-messageSends: []}),
-smalltalk.HLMoveToCommand.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "label",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Move";
-}, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.HLMoveToCommand.klass)})},
-messageSends: []}),
-smalltalk.HLMoveToCommand.klass);
-
-
-smalltalk.addClass('HLMoveClassToCommand', smalltalk.HLMoveToCommand, [], 'Helios-Commands-Tools');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isActive",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(self._model())._selectedClass())._notNil();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"isActive",{},smalltalk.HLMoveClassToCommand)})},
-messageSends: ["notNil", "selectedClass", "model"]}),
-smalltalk.HLMoveClassToCommand);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "key",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "c";
-}, function($ctx1) {$ctx1.fill(self,"key",{},smalltalk.HLMoveClassToCommand.klass)})},
-messageSends: []}),
-smalltalk.HLMoveClassToCommand.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "label",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Class";
-}, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.HLMoveClassToCommand.klass)})},
-messageSends: []}),
-smalltalk.HLMoveClassToCommand.klass);
-
-
-smalltalk.addClass('HLMoveClassToPackageCommand', smalltalk.HLMoveClassToCommand, [], 'Helios-Commands-Tools');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "category",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Classes";
-}, function($ctx1) {$ctx1.fill(self,"category",{},smalltalk.HLMoveClassToPackageCommand)})},
-messageSends: []}),
-smalltalk.HLMoveClassToPackageCommand);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "displayLabel",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "select a package";
-}, function($ctx1) {$ctx1.fill(self,"displayLabel",{},smalltalk.HLMoveClassToPackageCommand)})},
-messageSends: []}),
-smalltalk.HLMoveClassToPackageCommand);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "execute",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._model())._moveClassToPackage_(self._input());
-return self}, function($ctx1) {$ctx1.fill(self,"execute",{},smalltalk.HLMoveClassToPackageCommand)})},
-messageSends: ["moveClassToPackage:", "input", "model"]}),
-smalltalk.HLMoveClassToPackageCommand);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "inputCompletion",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._model())._availablePackageNames();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"inputCompletion",{},smalltalk.HLMoveClassToPackageCommand)})},
-messageSends: ["availablePackageNames", "model"]}),
-smalltalk.HLMoveClassToPackageCommand);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "inputLabel",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Move class to package:";
-}, function($ctx1) {$ctx1.fill(self,"inputLabel",{},smalltalk.HLMoveClassToPackageCommand)})},
-messageSends: []}),
-smalltalk.HLMoveClassToPackageCommand);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isInputRequired",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"isInputRequired",{},smalltalk.HLMoveClassToPackageCommand)})},
-messageSends: []}),
-smalltalk.HLMoveClassToPackageCommand);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "key",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "p";
-}, function($ctx1) {$ctx1.fill(self,"key",{},smalltalk.HLMoveClassToPackageCommand.klass)})},
-messageSends: []}),
-smalltalk.HLMoveClassToPackageCommand.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "label",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "to package";
-}, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.HLMoveClassToPackageCommand.klass)})},
-messageSends: []}),
-smalltalk.HLMoveClassToPackageCommand.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "menuLabel",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Move to package...";
-}, function($ctx1) {$ctx1.fill(self,"menuLabel",{},smalltalk.HLMoveClassToPackageCommand.klass)})},
-messageSends: []}),
-smalltalk.HLMoveClassToPackageCommand.klass);
-
-
-smalltalk.addClass('HLMoveMethodToCommand', smalltalk.HLMoveToCommand, [], 'Helios-Commands-Tools');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "category",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Methods";
-}, function($ctx1) {$ctx1.fill(self,"category",{},smalltalk.HLMoveMethodToCommand)})},
-messageSends: []}),
-smalltalk.HLMoveMethodToCommand);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isActive",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(self._model())._selectedMethod())._notNil();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"isActive",{},smalltalk.HLMoveMethodToCommand)})},
-messageSends: ["notNil", "selectedMethod", "model"]}),
-smalltalk.HLMoveMethodToCommand);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "key",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "m";
-}, function($ctx1) {$ctx1.fill(self,"key",{},smalltalk.HLMoveMethodToCommand.klass)})},
-messageSends: []}),
-smalltalk.HLMoveMethodToCommand.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "label",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Method";
-}, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.HLMoveMethodToCommand.klass)})},
-messageSends: []}),
-smalltalk.HLMoveMethodToCommand.klass);
-
-
-smalltalk.addClass('HLMoveMethodToClassCommand', smalltalk.HLMoveMethodToCommand, [], 'Helios-Commands-Tools');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "displayLabel",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "select a class";
-}, function($ctx1) {$ctx1.fill(self,"displayLabel",{},smalltalk.HLMoveMethodToClassCommand)})},
-messageSends: []}),
-smalltalk.HLMoveMethodToClassCommand);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "execute",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._model())._moveMethodToClass_(self._input());
-return self}, function($ctx1) {$ctx1.fill(self,"execute",{},smalltalk.HLMoveMethodToClassCommand)})},
-messageSends: ["moveMethodToClass:", "input", "model"]}),
-smalltalk.HLMoveMethodToClassCommand);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "inputCompletion",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._model())._availableClassNames();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"inputCompletion",{},smalltalk.HLMoveMethodToClassCommand)})},
-messageSends: ["availableClassNames", "model"]}),
-smalltalk.HLMoveMethodToClassCommand);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "inputLabel",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Move method to class:";
-}, function($ctx1) {$ctx1.fill(self,"inputLabel",{},smalltalk.HLMoveMethodToClassCommand)})},
-messageSends: []}),
-smalltalk.HLMoveMethodToClassCommand);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isInputRequired",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"isInputRequired",{},smalltalk.HLMoveMethodToClassCommand)})},
-messageSends: []}),
-smalltalk.HLMoveMethodToClassCommand);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "key",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "c";
-}, function($ctx1) {$ctx1.fill(self,"key",{},smalltalk.HLMoveMethodToClassCommand.klass)})},
-messageSends: []}),
-smalltalk.HLMoveMethodToClassCommand.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "label",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "to class";
-}, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.HLMoveMethodToClassCommand.klass)})},
-messageSends: []}),
-smalltalk.HLMoveMethodToClassCommand.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "menuLabel",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Move to class...";
-}, function($ctx1) {$ctx1.fill(self,"menuLabel",{},smalltalk.HLMoveMethodToClassCommand.klass)})},
-messageSends: []}),
-smalltalk.HLMoveMethodToClassCommand.klass);
-
-
-smalltalk.addClass('HLMoveMethodToProtocolCommand', smalltalk.HLMoveMethodToCommand, [], 'Helios-Commands-Tools');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "displayLabel",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "select a protocol";
-}, function($ctx1) {$ctx1.fill(self,"displayLabel",{},smalltalk.HLMoveMethodToProtocolCommand)})},
-messageSends: []}),
-smalltalk.HLMoveMethodToProtocolCommand);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "execute",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._model())._moveMethodToProtocol_(self._input());
-return self}, function($ctx1) {$ctx1.fill(self,"execute",{},smalltalk.HLMoveMethodToProtocolCommand)})},
-messageSends: ["moveMethodToProtocol:", "input", "model"]}),
-smalltalk.HLMoveMethodToProtocolCommand);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "inputCompletion",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._model())._availableProtocols();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"inputCompletion",{},smalltalk.HLMoveMethodToProtocolCommand)})},
-messageSends: ["availableProtocols", "model"]}),
-smalltalk.HLMoveMethodToProtocolCommand);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "inputLabel",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Move method to a protocol:";
-}, function($ctx1) {$ctx1.fill(self,"inputLabel",{},smalltalk.HLMoveMethodToProtocolCommand)})},
-messageSends: []}),
-smalltalk.HLMoveMethodToProtocolCommand);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isInputRequired",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"isInputRequired",{},smalltalk.HLMoveMethodToProtocolCommand)})},
-messageSends: []}),
-smalltalk.HLMoveMethodToProtocolCommand);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "key",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "t";
-}, function($ctx1) {$ctx1.fill(self,"key",{},smalltalk.HLMoveMethodToProtocolCommand.klass)})},
-messageSends: []}),
-smalltalk.HLMoveMethodToProtocolCommand.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "label",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "to protocol";
-}, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.HLMoveMethodToProtocolCommand.klass)})},
-messageSends: []}),
-smalltalk.HLMoveMethodToProtocolCommand.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "menuLabel",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Move to protocol...";
-}, function($ctx1) {$ctx1.fill(self,"menuLabel",{},smalltalk.HLMoveMethodToProtocolCommand.klass)})},
-messageSends: []}),
-smalltalk.HLMoveMethodToProtocolCommand.klass);
-
-
-smalltalk.addClass('HLRemoveCommand', smalltalk.HLToolCommand, [], 'Helios-Commands-Tools');
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "key",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "x";
-}, function($ctx1) {$ctx1.fill(self,"key",{},smalltalk.HLRemoveCommand.klass)})},
-messageSends: []}),
-smalltalk.HLRemoveCommand.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "label",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Remove";
-}, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.HLRemoveCommand.klass)})},
-messageSends: []}),
-smalltalk.HLRemoveCommand.klass);
-
-
-smalltalk.addClass('HLRemoveClassCommand', smalltalk.HLRemoveCommand, [], 'Helios-Commands-Tools');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "category",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Classes";
-}, function($ctx1) {$ctx1.fill(self,"category",{},smalltalk.HLRemoveClassCommand)})},
-messageSends: []}),
-smalltalk.HLRemoveClassCommand);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "execute",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._model())._removeClass();
-return self}, function($ctx1) {$ctx1.fill(self,"execute",{},smalltalk.HLRemoveClassCommand)})},
-messageSends: ["removeClass", "model"]}),
-smalltalk.HLRemoveClassCommand);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isActive",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(self._model())._selectedClass())._notNil();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"isActive",{},smalltalk.HLRemoveClassCommand)})},
-messageSends: ["notNil", "selectedClass", "model"]}),
-smalltalk.HLRemoveClassCommand);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "key",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "c";
-}, function($ctx1) {$ctx1.fill(self,"key",{},smalltalk.HLRemoveClassCommand.klass)})},
-messageSends: []}),
-smalltalk.HLRemoveClassCommand.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "label",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Class";
-}, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.HLRemoveClassCommand.klass)})},
-messageSends: []}),
-smalltalk.HLRemoveClassCommand.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "menuLabel",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Remove class";
-}, function($ctx1) {$ctx1.fill(self,"menuLabel",{},smalltalk.HLRemoveClassCommand.klass)})},
-messageSends: []}),
-smalltalk.HLRemoveClassCommand.klass);
-
-
-smalltalk.addClass('HLRemoveMethodCommand', smalltalk.HLRemoveCommand, [], 'Helios-Commands-Tools');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "category",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Methods";
-}, function($ctx1) {$ctx1.fill(self,"category",{},smalltalk.HLRemoveMethodCommand)})},
-messageSends: []}),
-smalltalk.HLRemoveMethodCommand);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "execute",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._model())._removeMethod();
-return self}, function($ctx1) {$ctx1.fill(self,"execute",{},smalltalk.HLRemoveMethodCommand)})},
-messageSends: ["removeMethod", "model"]}),
-smalltalk.HLRemoveMethodCommand);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isActive",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(self._model())._selectedMethod())._notNil();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"isActive",{},smalltalk.HLRemoveMethodCommand)})},
-messageSends: ["notNil", "selectedMethod", "model"]}),
-smalltalk.HLRemoveMethodCommand);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "key",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "m";
-}, function($ctx1) {$ctx1.fill(self,"key",{},smalltalk.HLRemoveMethodCommand.klass)})},
-messageSends: []}),
-smalltalk.HLRemoveMethodCommand.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "label",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Method";
-}, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.HLRemoveMethodCommand.klass)})},
-messageSends: []}),
-smalltalk.HLRemoveMethodCommand.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "menuLabel",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Remove method";
-}, function($ctx1) {$ctx1.fill(self,"menuLabel",{},smalltalk.HLRemoveMethodCommand.klass)})},
-messageSends: []}),
-smalltalk.HLRemoveMethodCommand.klass);
-
-
-smalltalk.addClass('HLRemoveProtocolCommand', smalltalk.HLRemoveCommand, [], 'Helios-Commands-Tools');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "category",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Protocols";
-}, function($ctx1) {$ctx1.fill(self,"category",{},smalltalk.HLRemoveProtocolCommand)})},
-messageSends: []}),
-smalltalk.HLRemoveProtocolCommand);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "execute",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._model())._removeProtocol();
-return self}, function($ctx1) {$ctx1.fill(self,"execute",{},smalltalk.HLRemoveProtocolCommand)})},
-messageSends: ["removeProtocol", "model"]}),
-smalltalk.HLRemoveProtocolCommand);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isActive",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(self._model())._selectedProtocol())._notNil();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"isActive",{},smalltalk.HLRemoveProtocolCommand)})},
-messageSends: ["notNil", "selectedProtocol", "model"]}),
-smalltalk.HLRemoveProtocolCommand);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "key",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "t";
-}, function($ctx1) {$ctx1.fill(self,"key",{},smalltalk.HLRemoveProtocolCommand.klass)})},
-messageSends: []}),
-smalltalk.HLRemoveProtocolCommand.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "label",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Protocol";
-}, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.HLRemoveProtocolCommand.klass)})},
-messageSends: []}),
-smalltalk.HLRemoveProtocolCommand.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "menuLabel",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Remove protocol";
-}, function($ctx1) {$ctx1.fill(self,"menuLabel",{},smalltalk.HLRemoveProtocolCommand.klass)})},
-messageSends: []}),
-smalltalk.HLRemoveProtocolCommand.klass);
-
-
-smalltalk.addClass('HLRenameCommand', smalltalk.HLToolCommand, [], 'Helios-Commands-Tools');
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "key",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "r";
-}, function($ctx1) {$ctx1.fill(self,"key",{},smalltalk.HLRenameCommand.klass)})},
-messageSends: []}),
-smalltalk.HLRenameCommand.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "label",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Rename";
-}, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.HLRenameCommand.klass)})},
-messageSends: []}),
-smalltalk.HLRenameCommand.klass);
-
-
-smalltalk.addClass('HLRenameClassCommand', smalltalk.HLRenameCommand, [], 'Helios-Commands-Tools');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "category",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Classes";
-}, function($ctx1) {$ctx1.fill(self,"category",{},smalltalk.HLRenameClassCommand)})},
-messageSends: []}),
-smalltalk.HLRenameClassCommand);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "defaultInput",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(self._model())._selectedClass())._name();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"defaultInput",{},smalltalk.HLRenameClassCommand)})},
-messageSends: ["name", "selectedClass", "model"]}),
-smalltalk.HLRenameClassCommand);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "displayLabel",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Rename class to:";
-}, function($ctx1) {$ctx1.fill(self,"displayLabel",{},smalltalk.HLRenameClassCommand)})},
-messageSends: []}),
-smalltalk.HLRenameClassCommand);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "execute",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._model())._renameClassTo_(self._input());
-return self}, function($ctx1) {$ctx1.fill(self,"execute",{},smalltalk.HLRenameClassCommand)})},
-messageSends: ["renameClassTo:", "input", "model"]}),
-smalltalk.HLRenameClassCommand);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isActive",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(self._model())._selectedClass())._notNil();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"isActive",{},smalltalk.HLRenameClassCommand)})},
-messageSends: ["notNil", "selectedClass", "model"]}),
-smalltalk.HLRenameClassCommand);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isInputRequired",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"isInputRequired",{},smalltalk.HLRenameClassCommand)})},
-messageSends: []}),
-smalltalk.HLRenameClassCommand);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "key",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "c";
-}, function($ctx1) {$ctx1.fill(self,"key",{},smalltalk.HLRenameClassCommand.klass)})},
-messageSends: []}),
-smalltalk.HLRenameClassCommand.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "label",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Class";
-}, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.HLRenameClassCommand.klass)})},
-messageSends: []}),
-smalltalk.HLRenameClassCommand.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "menuLabel",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Rename class...";
-}, function($ctx1) {$ctx1.fill(self,"menuLabel",{},smalltalk.HLRenameClassCommand.klass)})},
-messageSends: []}),
-smalltalk.HLRenameClassCommand.klass);
-
-
-smalltalk.addClass('HLRenameProtocolCommand', smalltalk.HLRenameCommand, [], 'Helios-Commands-Tools');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "category",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Protocols";
-}, function($ctx1) {$ctx1.fill(self,"category",{},smalltalk.HLRenameProtocolCommand)})},
-messageSends: []}),
-smalltalk.HLRenameProtocolCommand);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "defaultInput",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._model())._selectedProtocol();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"defaultInput",{},smalltalk.HLRenameProtocolCommand)})},
-messageSends: ["selectedProtocol", "model"]}),
-smalltalk.HLRenameProtocolCommand);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "displayLabel",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Rename protocol to:";
-}, function($ctx1) {$ctx1.fill(self,"displayLabel",{},smalltalk.HLRenameProtocolCommand)})},
-messageSends: []}),
-smalltalk.HLRenameProtocolCommand);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "execute",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._model())._renameProtocolTo_(self._input());
-return self}, function($ctx1) {$ctx1.fill(self,"execute",{},smalltalk.HLRenameProtocolCommand)})},
-messageSends: ["renameProtocolTo:", "input", "model"]}),
-smalltalk.HLRenameProtocolCommand);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isActive",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(self._model())._selectedProtocol())._notNil();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"isActive",{},smalltalk.HLRenameProtocolCommand)})},
-messageSends: ["notNil", "selectedProtocol", "model"]}),
-smalltalk.HLRenameProtocolCommand);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isInputRequired",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"isInputRequired",{},smalltalk.HLRenameProtocolCommand)})},
-messageSends: []}),
-smalltalk.HLRenameProtocolCommand);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "key",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "t";
-}, function($ctx1) {$ctx1.fill(self,"key",{},smalltalk.HLRenameProtocolCommand.klass)})},
-messageSends: []}),
-smalltalk.HLRenameProtocolCommand.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "label",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Protocol";
-}, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.HLRenameProtocolCommand.klass)})},
-messageSends: []}),
-smalltalk.HLRenameProtocolCommand.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "menuLabel",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Rename protocol...";
-}, function($ctx1) {$ctx1.fill(self,"menuLabel",{},smalltalk.HLRenameProtocolCommand.klass)})},
-messageSends: []}),
-smalltalk.HLRenameProtocolCommand.klass);
-
-});

+ 0 - 4056
js/Helios-Core.deploy.js

@@ -1,4056 +0,0 @@
-define("amber/Helios-Core", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/Kernel-Objects", "amber/Kernel-Infrastructure", "amber/Canvas"], function(smalltalk,nil,_st){
-smalltalk.addPackage('Helios-Core');
-smalltalk.packages["Helios-Core"].transport = {"type":"amd","amdNamespace":"amber"};
-
-smalltalk.addClass('HLModel', smalltalk.Object, ['announcer', 'environment'], 'Helios-Core');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "announcer",
-fn: function (){
-var self=this;
-function $Announcer(){return smalltalk.Announcer||(typeof Announcer=="undefined"?nil:Announcer)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@announcer"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@announcer"]=_st($Announcer())._new();
-$1=self["@announcer"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"announcer",{},smalltalk.HLModel)})},
-messageSends: ["ifNil:", "new"]}),
-smalltalk.HLModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "environment",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@environment"];
-if(($receiver = $2) == nil || $receiver == undefined){
-$1=_st(self._manager())._environment();
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"environment",{},smalltalk.HLModel)})},
-messageSends: ["ifNil:", "environment", "manager"]}),
-smalltalk.HLModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "environment:",
-fn: function (anEnvironment){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@environment"]=anEnvironment;
-return self}, function($ctx1) {$ctx1.fill(self,"environment:",{anEnvironment:anEnvironment},smalltalk.HLModel)})},
-messageSends: []}),
-smalltalk.HLModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isBrowserModel",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return false;
-}, function($ctx1) {$ctx1.fill(self,"isBrowserModel",{},smalltalk.HLModel)})},
-messageSends: []}),
-smalltalk.HLModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isReferencesModel",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return false;
-}, function($ctx1) {$ctx1.fill(self,"isReferencesModel",{},smalltalk.HLModel)})},
-messageSends: []}),
-smalltalk.HLModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isToolModel",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return false;
-}, function($ctx1) {$ctx1.fill(self,"isToolModel",{},smalltalk.HLModel)})},
-messageSends: []}),
-smalltalk.HLModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "manager",
-fn: function (){
-var self=this;
-function $HLManager(){return smalltalk.HLManager||(typeof HLManager=="undefined"?nil:HLManager)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st($HLManager())._current();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"manager",{},smalltalk.HLModel)})},
-messageSends: ["current"]}),
-smalltalk.HLModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "systemAnnouncer",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._environment())._systemAnnouncer();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"systemAnnouncer",{},smalltalk.HLModel)})},
-messageSends: ["systemAnnouncer", "environment"]}),
-smalltalk.HLModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "withChangesDo:",
-fn: function (aBlock){
-var self=this;
-function $HLChangeForbidden(){return smalltalk.HLChangeForbidden||(typeof HLChangeForbidden=="undefined"?nil:HLChangeForbidden)}
-function $HLAboutToChange(){return smalltalk.HLAboutToChange||(typeof HLAboutToChange=="undefined"?nil:HLAboutToChange)}
-return smalltalk.withContext(function($ctx1) { 
-_st((function(){
-return smalltalk.withContext(function($ctx2) {
-_st(self._announcer())._announce_(_st(_st($HLAboutToChange())._new())._actionBlock_(aBlock));
-return _st(aBlock)._value();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._on_do_($HLChangeForbidden(),(function(ex){
-return smalltalk.withContext(function($ctx2) {
-}, function($ctx2) {$ctx2.fillBlock({ex:ex},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"withChangesDo:",{aBlock:aBlock},smalltalk.HLModel)})},
-messageSends: ["on:do:", "announce:", "actionBlock:", "new", "announcer", "value"]}),
-smalltalk.HLModel);
-
-
-
-smalltalk.addClass('HLToolModel', smalltalk.HLModel, ['selectedClass', 'selectedPackage', 'selectedProtocol', 'selectedSelector'], 'Helios-Core');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "addInstVarNamed:",
-fn: function (aString){
-var self=this;
-function $HLInstVarAdded(){return smalltalk.HLInstVarAdded||(typeof HLInstVarAdded=="undefined"?nil:HLInstVarAdded)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-_st(self._environment())._addInstVarNamed_to_(aString,self._selectedClass());
-$1=_st($HLInstVarAdded())._new();
-_st($1)._theClass_(self._selectedClass());
-_st($1)._variableName_(aString);
-$2=_st($1)._yourself();
-_st(self._announcer())._announce_($2);
-return self}, function($ctx1) {$ctx1.fill(self,"addInstVarNamed:",{aString:aString},smalltalk.HLToolModel)})},
-messageSends: ["addInstVarNamed:to:", "selectedClass", "environment", "announce:", "theClass:", "new", "variableName:", "yourself", "announcer"]}),
-smalltalk.HLToolModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "allProtocol",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "-- all --";
-}, function($ctx1) {$ctx1.fill(self,"allProtocol",{},smalltalk.HLToolModel)})},
-messageSends: []}),
-smalltalk.HLToolModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "allSelectors",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._environment())._allSelectors();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"allSelectors",{},smalltalk.HLToolModel)})},
-messageSends: ["allSelectors", "environment"]}),
-smalltalk.HLToolModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "availableClassNames",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._environment())._availableClassNames();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"availableClassNames",{},smalltalk.HLToolModel)})},
-messageSends: ["availableClassNames", "environment"]}),
-smalltalk.HLToolModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "availablePackageNames",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._environment())._availablePackageNames();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"availablePackageNames",{},smalltalk.HLToolModel)})},
-messageSends: ["availablePackageNames", "environment"]}),
-smalltalk.HLToolModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "availablePackages",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._environment())._availablePackageNames();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"availablePackages",{},smalltalk.HLToolModel)})},
-messageSends: ["availablePackageNames", "environment"]}),
-smalltalk.HLToolModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "availableProtocols",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._environment())._availableProtocolsFor_(self._selectedClass());
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"availableProtocols",{},smalltalk.HLToolModel)})},
-messageSends: ["availableProtocolsFor:", "selectedClass", "environment"]}),
-smalltalk.HLToolModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "commitPackage",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._environment())._commitPackage_(self._selectedPackage());
-return self}, function($ctx1) {$ctx1.fill(self,"commitPackage",{},smalltalk.HLToolModel)})},
-messageSends: ["commitPackage:", "selectedPackage", "environment"]}),
-smalltalk.HLToolModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "compilationProtocol",
-fn: function (){
-var self=this;
-var currentProtocol;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$4,$3;
-currentProtocol=self._selectedProtocol();
-$1=currentProtocol;
-if(($receiver = $1) == nil || $receiver == undefined){
-currentProtocol=self._unclassifiedProtocol();
-currentProtocol;
-} else {
-$1;
-};
-$2=self._selectedMethod();
-if(($receiver = $2) == nil || $receiver == undefined){
-$2;
-} else {
-currentProtocol=_st(self._selectedMethod())._protocol();
-currentProtocol;
-};
-$4=_st(currentProtocol).__eq(self._allProtocol());
-if(smalltalk.assert($4)){
-$3=self._unclassifiedProtocol();
-} else {
-$3=currentProtocol;
-};
-return $3;
-}, function($ctx1) {$ctx1.fill(self,"compilationProtocol",{currentProtocol:currentProtocol},smalltalk.HLToolModel)})},
-messageSends: ["selectedProtocol", "ifNil:", "unclassifiedProtocol", "ifNotNil:", "protocol", "selectedMethod", "ifTrue:ifFalse:", "=", "allProtocol"]}),
-smalltalk.HLToolModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "compileClassComment:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._environment())._compileClassComment_for_(aString,self._selectedClass());
-return self}, function($ctx1) {$ctx1.fill(self,"compileClassComment:",{aString:aString},smalltalk.HLToolModel)})},
-messageSends: ["compileClassComment:for:", "selectedClass", "environment"]}),
-smalltalk.HLToolModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "compileClassDefinition:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._environment())._compileClassDefinition_(aString);
-return self}, function($ctx1) {$ctx1.fill(self,"compileClassDefinition:",{aString:aString},smalltalk.HLToolModel)})},
-messageSends: ["compileClassDefinition:", "environment"]}),
-smalltalk.HLToolModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "compileMethod:",
-fn: function (aString){
-var self=this;
-var method;
-return smalltalk.withContext(function($ctx1) { 
-self._withCompileErrorHandling_((function(){
-return smalltalk.withContext(function($ctx2) {
-method=_st(self._environment())._compileMethod_for_protocol_(aString,self._selectedClass(),self._compilationProtocol());
-method;
-return self._selectedMethod_(method);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"compileMethod:",{aString:aString,method:method},smalltalk.HLToolModel)})},
-messageSends: ["withCompileErrorHandling:", "compileMethod:for:protocol:", "selectedClass", "compilationProtocol", "environment", "selectedMethod:"]}),
-smalltalk.HLToolModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "copyClassTo:",
-fn: function (aClassName){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._withChangesDo_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(self._environment())._copyClass_to_(_st(self._selectedClass())._theNonMetaClass(),aClassName);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"copyClassTo:",{aClassName:aClassName},smalltalk.HLToolModel)})},
-messageSends: ["withChangesDo:", "copyClass:to:", "theNonMetaClass", "selectedClass", "environment"]}),
-smalltalk.HLToolModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "handleCompileError:",
-fn: function (anError){
-var self=this;
-function $HLCompileErrorRaised(){return smalltalk.HLCompileErrorRaised||(typeof HLCompileErrorRaised=="undefined"?nil:HLCompileErrorRaised)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st($HLCompileErrorRaised())._new();
-_st($1)._error_(anError);
-$2=_st($1)._yourself();
-_st(self._announcer())._announce_($2);
-return self}, function($ctx1) {$ctx1.fill(self,"handleCompileError:",{anError:anError},smalltalk.HLToolModel)})},
-messageSends: ["announce:", "error:", "new", "yourself", "announcer"]}),
-smalltalk.HLToolModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "handleParseError:",
-fn: function (anError){
-var self=this;
-var split,line,column,messageToInsert;
-function $HLParseErrorRaised(){return smalltalk.HLParseErrorRaised||(typeof HLParseErrorRaised=="undefined"?nil:HLParseErrorRaised)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-split=_st(_st(anError)._messageText())._tokenize_(" : ");
-messageToInsert=_st(split)._second();
-split=_st(_st(split)._first())._copyFrom_to_((21),_st(_st(split)._first())._size());
-split=_st(split)._tokenize_(" column ");
-line=_st(split)._first();
-column=_st(split)._second();
-$1=_st($HLParseErrorRaised())._new();
-_st($1)._line_(_st(line)._asNumber());
-_st($1)._column_(_st(column)._asNumber());
-_st($1)._message_(messageToInsert);
-_st($1)._error_(anError);
-$2=_st($1)._yourself();
-_st(self._announcer())._announce_($2);
-return self}, function($ctx1) {$ctx1.fill(self,"handleParseError:",{anError:anError,split:split,line:line,column:column,messageToInsert:messageToInsert},smalltalk.HLToolModel)})},
-messageSends: ["tokenize:", "messageText", "second", "copyFrom:to:", "size", "first", "announce:", "line:", "asNumber", "new", "column:", "message:", "error:", "yourself", "announcer"]}),
-smalltalk.HLToolModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "handleUnkownVariableError:",
-fn: function (anError){
-var self=this;
-function $HLUnknownVariableErrorRaised(){return smalltalk.HLUnknownVariableErrorRaised||(typeof HLUnknownVariableErrorRaised=="undefined"?nil:HLUnknownVariableErrorRaised)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st($HLUnknownVariableErrorRaised())._new();
-_st($1)._error_(anError);
-$2=_st($1)._yourself();
-_st(self._announcer())._announce_($2);
-return self}, function($ctx1) {$ctx1.fill(self,"handleUnkownVariableError:",{anError:anError},smalltalk.HLToolModel)})},
-messageSends: ["announce:", "error:", "new", "yourself", "announcer"]}),
-smalltalk.HLToolModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isToolModel",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"isToolModel",{},smalltalk.HLToolModel)})},
-messageSends: []}),
-smalltalk.HLToolModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "moveClassToPackage:",
-fn: function (aPackageName){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._withChangesDo_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(self._environment())._moveClass_toPackage_(_st(self._selectedClass())._theNonMetaClass(),aPackageName);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"moveClassToPackage:",{aPackageName:aPackageName},smalltalk.HLToolModel)})},
-messageSends: ["withChangesDo:", "moveClass:toPackage:", "theNonMetaClass", "selectedClass", "environment"]}),
-smalltalk.HLToolModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "moveMethodToClass:",
-fn: function (aClassName){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._withChangesDo_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(self._environment())._moveMethod_toClass_(self._selectedMethod(),aClassName);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"moveMethodToClass:",{aClassName:aClassName},smalltalk.HLToolModel)})},
-messageSends: ["withChangesDo:", "moveMethod:toClass:", "selectedMethod", "environment"]}),
-smalltalk.HLToolModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "moveMethodToProtocol:",
-fn: function (aProtocol){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._withChangesDo_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(self._environment())._moveMethod_toProtocol_(self._selectedMethod(),aProtocol);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"moveMethodToProtocol:",{aProtocol:aProtocol},smalltalk.HLToolModel)})},
-messageSends: ["withChangesDo:", "moveMethod:toProtocol:", "selectedMethod", "environment"]}),
-smalltalk.HLToolModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "openClassNamed:",
-fn: function (aString){
-var self=this;
-var class_;
-return smalltalk.withContext(function($ctx1) { 
-self._withChangesDo_((function(){
-return smalltalk.withContext(function($ctx2) {
-class_=_st(self._environment())._classNamed_(aString);
-class_;
-self._selectedPackage_(_st(class_)._package());
-return self._selectedClass_(class_);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"openClassNamed:",{aString:aString,class_:class_},smalltalk.HLToolModel)})},
-messageSends: ["withChangesDo:", "classNamed:", "environment", "selectedPackage:", "package", "selectedClass:"]}),
-smalltalk.HLToolModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "packages",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._environment())._packages();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"packages",{},smalltalk.HLToolModel)})},
-messageSends: ["packages", "environment"]}),
-smalltalk.HLToolModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "removeClass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._withChangesDo_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(self._manager())._confirm_ifTrue_("Do you REALLY want to remove class ".__comma(_st(self._selectedClass())._name()),(function(){
-return smalltalk.withContext(function($ctx3) {
-return _st(self._environment())._removeClass_(self._selectedClass());
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"removeClass",{},smalltalk.HLToolModel)})},
-messageSends: ["withChangesDo:", "confirm:ifTrue:", ",", "name", "selectedClass", "removeClass:", "environment", "manager"]}),
-smalltalk.HLToolModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "removeMethod",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._withChangesDo_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(self._manager())._confirm_ifTrue_(_st(_st("Do you REALLY want to remove method ".__comma(_st(_st(self._selectedMethod())._methodClass())._name())).__comma(" >> #")).__comma(_st(self._selectedMethod())._selector()),(function(){
-return smalltalk.withContext(function($ctx3) {
-return _st(self._environment())._removeMethod_(self._selectedMethod());
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"removeMethod",{},smalltalk.HLToolModel)})},
-messageSends: ["withChangesDo:", "confirm:ifTrue:", ",", "selector", "selectedMethod", "name", "methodClass", "removeMethod:", "environment", "manager"]}),
-smalltalk.HLToolModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "removeProtocol",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._withChangesDo_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(self._manager())._confirm_ifTrue_("Do you REALLY want to remove protocol ".__comma(self._selectedProtocol()),(function(){
-return smalltalk.withContext(function($ctx3) {
-return _st(self._environment())._removeProtocol_from_(self._selectedProtocol(),self._selectedClass());
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"removeProtocol",{},smalltalk.HLToolModel)})},
-messageSends: ["withChangesDo:", "confirm:ifTrue:", ",", "selectedProtocol", "removeProtocol:from:", "selectedClass", "environment", "manager"]}),
-smalltalk.HLToolModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renameClassTo:",
-fn: function (aClassName){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._withChangesDo_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(self._environment())._renameClass_to_(_st(self._selectedClass())._theNonMetaClass(),aClassName);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"renameClassTo:",{aClassName:aClassName},smalltalk.HLToolModel)})},
-messageSends: ["withChangesDo:", "renameClass:to:", "theNonMetaClass", "selectedClass", "environment"]}),
-smalltalk.HLToolModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renameProtocolTo:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._withChangesDo_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(self._environment())._renameProtocol_to_in_(self._selectedProtocol(),aString,self._selectedClass());
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"renameProtocolTo:",{aString:aString},smalltalk.HLToolModel)})},
-messageSends: ["withChangesDo:", "renameProtocol:to:in:", "selectedProtocol", "selectedClass", "environment"]}),
-smalltalk.HLToolModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "save:",
-fn: function (aString){
-var self=this;
-function $HLSourceCodeSaved(){return smalltalk.HLSourceCodeSaved||(typeof HLSourceCodeSaved=="undefined"?nil:HLSourceCodeSaved)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-_st(self._announcer())._announce_(_st($HLSourceCodeSaved())._new());
-$1=self._shouldCompileClassDefinition_(aString);
-if(smalltalk.assert($1)){
-self._compileClassDefinition_(aString);
-} else {
-self._compileMethod_(aString);
-};
-return self}, function($ctx1) {$ctx1.fill(self,"save:",{aString:aString},smalltalk.HLToolModel)})},
-messageSends: ["announce:", "new", "announcer", "ifTrue:ifFalse:", "compileClassDefinition:", "compileMethod:", "shouldCompileClassDefinition:"]}),
-smalltalk.HLToolModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "saveSourceCode",
-fn: function (){
-var self=this;
-function $HLSaveSourceCode(){return smalltalk.HLSaveSourceCode||(typeof HLSaveSourceCode=="undefined"?nil:HLSaveSourceCode)}
-return smalltalk.withContext(function($ctx1) { 
-_st(self._announcer())._announce_(_st($HLSaveSourceCode())._new());
-return self}, function($ctx1) {$ctx1.fill(self,"saveSourceCode",{},smalltalk.HLToolModel)})},
-messageSends: ["announce:", "new", "announcer"]}),
-smalltalk.HLToolModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selectedClass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@selectedClass"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"selectedClass",{},smalltalk.HLToolModel)})},
-messageSends: []}),
-smalltalk.HLToolModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selectedClass:",
-fn: function (aClass){
-var self=this;
-function $HLClassSelected(){return smalltalk.HLClassSelected||(typeof HLClassSelected=="undefined"?nil:HLClassSelected)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4,$5;
-$1=_st(_st(self._selectedClass()).__eq(aClass))._and_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(aClass)._isNil();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-if(smalltalk.assert($1)){
-$2=self;
-return $2;
-};
-self._withChangesDo_((function(){
-return smalltalk.withContext(function($ctx2) {
-$3=_st(self["@selectedClass"]).__eq(aClass);
-if(smalltalk.assert($3)){
-self._selectedProtocol_(nil);
-};
-$4=aClass;
-if(($receiver = $4) == nil || $receiver == undefined){
-self["@selectedClass"]=nil;
-self["@selectedClass"];
-} else {
-self._selectedPackage_(_st(_st(aClass)._theNonMetaClass())._package());
-$5=self._showInstance();
-if(smalltalk.assert($5)){
-self["@selectedClass"]=_st(aClass)._theNonMetaClass();
-self["@selectedClass"];
-} else {
-self["@selectedClass"]=_st(aClass)._theMetaClass();
-self["@selectedClass"];
-};
-};
-self._selectedProtocol_(nil);
-return _st(self._announcer())._announce_(_st($HLClassSelected())._on_(self._selectedClass()));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"selectedClass:",{aClass:aClass},smalltalk.HLToolModel)})},
-messageSends: ["ifTrue:", "and:", "isNil", "=", "selectedClass", "withChangesDo:", "selectedProtocol:", "ifNil:ifNotNil:", "selectedPackage:", "package", "theNonMetaClass", "ifTrue:ifFalse:", "theMetaClass", "showInstance", "announce:", "on:", "announcer"]}),
-smalltalk.HLToolModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selectedMethod",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self._selectedClass();
-if(($receiver = $2) == nil || $receiver == undefined){
-$1=$2;
-} else {
-$1=_st(_st(self._selectedClass())._methodDictionary())._at_ifAbsent_(self["@selectedSelector"],(function(){
-return smalltalk.withContext(function($ctx2) {
-return nil;
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"selectedMethod",{},smalltalk.HLToolModel)})},
-messageSends: ["ifNotNil:", "at:ifAbsent:", "methodDictionary", "selectedClass"]}),
-smalltalk.HLToolModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selectedMethod:",
-fn: function (aCompiledMethod){
-var self=this;
-function $HLMethodSelected(){return smalltalk.HLMethodSelected||(typeof HLMethodSelected=="undefined"?nil:HLMethodSelected)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3;
-$1=_st(self["@selectedSelector"]).__eq(aCompiledMethod);
-if(smalltalk.assert($1)){
-$2=self;
-return $2;
-};
-self._withChangesDo_((function(){
-return smalltalk.withContext(function($ctx2) {
-$3=aCompiledMethod;
-if(($receiver = $3) == nil || $receiver == undefined){
-self["@selectedSelector"]=nil;
-self["@selectedSelector"];
-} else {
-self["@selectedClass"]=_st(aCompiledMethod)._methodClass();
-self["@selectedClass"];
-self["@selectedPackage"]=_st(_st(self["@selectedClass"])._theNonMetaClass())._package();
-self["@selectedPackage"];
-self["@selectedSelector"]=_st(aCompiledMethod)._selector();
-self["@selectedSelector"];
-};
-return _st(self._announcer())._announce_(_st($HLMethodSelected())._on_(aCompiledMethod));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"selectedMethod:",{aCompiledMethod:aCompiledMethod},smalltalk.HLToolModel)})},
-messageSends: ["ifTrue:", "=", "withChangesDo:", "ifNil:ifNotNil:", "methodClass", "package", "theNonMetaClass", "selector", "announce:", "on:", "announcer"]}),
-smalltalk.HLToolModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selectedPackage",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@selectedPackage"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"selectedPackage",{},smalltalk.HLToolModel)})},
-messageSends: []}),
-smalltalk.HLToolModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selectedPackage:",
-fn: function (aPackage){
-var self=this;
-function $HLPackageSelected(){return smalltalk.HLPackageSelected||(typeof HLPackageSelected=="undefined"?nil:HLPackageSelected)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st(self["@selectedPackage"]).__eq(aPackage);
-if(smalltalk.assert($1)){
-$2=self;
-return $2;
-};
-self._withChangesDo_((function(){
-return smalltalk.withContext(function($ctx2) {
-self["@selectedPackage"]=aPackage;
-self["@selectedPackage"];
-self._selectedClass_(nil);
-return _st(self._announcer())._announce_(_st($HLPackageSelected())._on_(aPackage));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"selectedPackage:",{aPackage:aPackage},smalltalk.HLToolModel)})},
-messageSends: ["ifTrue:", "=", "withChangesDo:", "selectedClass:", "announce:", "on:", "announcer"]}),
-smalltalk.HLToolModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selectedProtocol",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@selectedProtocol"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"selectedProtocol",{},smalltalk.HLToolModel)})},
-messageSends: []}),
-smalltalk.HLToolModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selectedProtocol:",
-fn: function (aString){
-var self=this;
-function $HLProtocolSelected(){return smalltalk.HLProtocolSelected||(typeof HLProtocolSelected=="undefined"?nil:HLProtocolSelected)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st(self["@selectedProtocol"]).__eq(aString);
-if(smalltalk.assert($1)){
-$2=self;
-return $2;
-};
-self._withChangesDo_((function(){
-return smalltalk.withContext(function($ctx2) {
-self["@selectedProtocol"]=aString;
-self["@selectedProtocol"];
-self._selectedMethod_(nil);
-return _st(self._announcer())._announce_(_st($HLProtocolSelected())._on_(aString));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"selectedProtocol:",{aString:aString},smalltalk.HLToolModel)})},
-messageSends: ["ifTrue:", "=", "withChangesDo:", "selectedMethod:", "announce:", "on:", "announcer"]}),
-smalltalk.HLToolModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "shouldCompileClassDefinition:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(self._selectedClass())._isNil())._or_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(aString)._match_("^[A-Z]");
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"shouldCompileClassDefinition:",{aString:aString},smalltalk.HLToolModel)})},
-messageSends: ["or:", "match:", "isNil", "selectedClass"]}),
-smalltalk.HLToolModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "unclassifiedProtocol",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "as yet unclassified";
-}, function($ctx1) {$ctx1.fill(self,"unclassifiedProtocol",{},smalltalk.HLToolModel)})},
-messageSends: []}),
-smalltalk.HLToolModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "withCompileErrorHandling:",
-fn: function (aBlock){
-var self=this;
-function $ParseError(){return smalltalk.ParseError||(typeof ParseError=="undefined"?nil:ParseError)}
-function $UnknownVariableError(){return smalltalk.UnknownVariableError||(typeof UnknownVariableError=="undefined"?nil:UnknownVariableError)}
-function $CompilerError(){return smalltalk.CompilerError||(typeof CompilerError=="undefined"?nil:CompilerError)}
-return smalltalk.withContext(function($ctx1) { 
-_st(self._environment())._evaluate_on_do_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(self._environment())._evaluate_on_do_((function(){
-return smalltalk.withContext(function($ctx3) {
-return _st(self._environment())._evaluate_on_do_(aBlock,$ParseError(),(function(ex){
-return smalltalk.withContext(function($ctx4) {
-return self._handleParseError_(ex);
-}, function($ctx4) {$ctx4.fillBlock({ex:ex},$ctx3)})}));
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}),$UnknownVariableError(),(function(ex){
-return smalltalk.withContext(function($ctx3) {
-return self._handleUnkownVariableError_(ex);
-}, function($ctx3) {$ctx3.fillBlock({ex:ex},$ctx2)})}));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$CompilerError(),(function(ex){
-return smalltalk.withContext(function($ctx2) {
-return self._handleCompileError_(ex);
-}, function($ctx2) {$ctx2.fillBlock({ex:ex},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"withCompileErrorHandling:",{aBlock:aBlock},smalltalk.HLToolModel)})},
-messageSends: ["evaluate:on:do:", "handleParseError:", "environment", "handleUnkownVariableError:", "handleCompileError:"]}),
-smalltalk.HLToolModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "withHelperLabelled:do:",
-fn: function (aString,aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-_st("#helper"._asJQuery())._remove();
-_st((function(html){
-return smalltalk.withContext(function($ctx2) {
-$1=_st(html)._div();
-_st($1)._id_("helper");
-$2=_st($1)._with_(aString);
-return $2;
-}, function($ctx2) {$ctx2.fillBlock({html:html},$ctx1)})}))._appendToJQuery_("body"._asJQuery());
-_st((function(){
-return smalltalk.withContext(function($ctx2) {
-_st(aBlock)._value();
-return _st("#helper"._asJQuery())._remove();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._valueWithTimeout_((10));
-return self}, function($ctx1) {$ctx1.fill(self,"withHelperLabelled:do:",{aString:aString,aBlock:aBlock},smalltalk.HLToolModel)})},
-messageSends: ["remove", "asJQuery", "appendToJQuery:", "id:", "div", "with:", "valueWithTimeout:", "value"]}),
-smalltalk.HLToolModel);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "on:",
-fn: function (anEnvironment){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=self._new();
-_st($2)._environment_(anEnvironment);
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"on:",{anEnvironment:anEnvironment},smalltalk.HLToolModel.klass)})},
-messageSends: ["environment:", "new", "yourself"]}),
-smalltalk.HLToolModel.klass);
-
-
-smalltalk.addClass('HLProgressHandler', smalltalk.ProgressHandler, [], 'Helios-Core');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "do:on:displaying:",
-fn: function (aBlock,aCollection,aString){
-var self=this;
-function $HLProgressWidget(){return smalltalk.HLProgressWidget||(typeof HLProgressWidget=="undefined"?nil:HLProgressWidget)}
-return smalltalk.withContext(function($ctx1) { 
-_st(_st($HLProgressWidget())._default())._do_on_displaying_(aBlock,aCollection,aString);
-return self}, function($ctx1) {$ctx1.fill(self,"do:on:displaying:",{aBlock:aBlock,aCollection:aCollection,aString:aString},smalltalk.HLProgressHandler)})},
-messageSends: ["do:on:displaying:", "default"]}),
-smalltalk.HLProgressHandler);
-
-
-
-smalltalk.addClass('HLTabWidget', smalltalk.Widget, ['widget', 'label', 'root'], 'Helios-Core');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "activate",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._manager())._activate_(self);
-return self}, function($ctx1) {$ctx1.fill(self,"activate",{},smalltalk.HLTabWidget)})},
-messageSends: ["activate:", "manager"]}),
-smalltalk.HLTabWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "add",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._manager())._addTab_(self);
-return self}, function($ctx1) {$ctx1.fill(self,"add",{},smalltalk.HLTabWidget)})},
-messageSends: ["addTab:", "manager"]}),
-smalltalk.HLTabWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "cssClass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._widget())._tabClass();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"cssClass",{},smalltalk.HLTabWidget)})},
-messageSends: ["tabClass", "widget"]}),
-smalltalk.HLTabWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "displayLabel",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=_st(_st(self._label())._size()).__gt((20));
-if(smalltalk.assert($2)){
-$1=_st(_st(self._label())._first_((20))).__comma("...");
-} else {
-$1=self._label();
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"displayLabel",{},smalltalk.HLTabWidget)})},
-messageSends: ["ifTrue:ifFalse:", ",", "first:", "label", ">", "size"]}),
-smalltalk.HLTabWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "focus",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._widget())._canHaveFocus();
-if(smalltalk.assert($1)){
-_st(self._widget())._focus();
-};
-return self}, function($ctx1) {$ctx1.fill(self,"focus",{},smalltalk.HLTabWidget)})},
-messageSends: ["ifTrue:", "focus", "widget", "canHaveFocus"]}),
-smalltalk.HLTabWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "hide",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@root"];
-if(($receiver = $1) == nil || $receiver == undefined){
-$1;
-} else {
-_st(_st(self["@root"])._asJQuery())._css_put_("visibility","hidden");
-};
-return self}, function($ctx1) {$ctx1.fill(self,"hide",{},smalltalk.HLTabWidget)})},
-messageSends: ["ifNotNil:", "css:put:", "asJQuery"]}),
-smalltalk.HLTabWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isActive",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(self._manager())._activeTab()).__eq(self);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"isActive",{},smalltalk.HLTabWidget)})},
-messageSends: ["=", "activeTab", "manager"]}),
-smalltalk.HLTabWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "label",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@label"];
-if(($receiver = $2) == nil || $receiver == undefined){
-$1="";
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.HLTabWidget)})},
-messageSends: ["ifNil:"]}),
-smalltalk.HLTabWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "label:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@label"]=aString;
-return self}, function($ctx1) {$ctx1.fill(self,"label:",{aString:aString},smalltalk.HLTabWidget)})},
-messageSends: []}),
-smalltalk.HLTabWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "manager",
-fn: function (){
-var self=this;
-function $HLManager(){return smalltalk.HLManager||(typeof HLManager=="undefined"?nil:HLManager)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st($HLManager())._current();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"manager",{},smalltalk.HLTabWidget)})},
-messageSends: ["current"]}),
-smalltalk.HLTabWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "registerBindings",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._widget())._registerBindings();
-return self}, function($ctx1) {$ctx1.fill(self,"registerBindings",{},smalltalk.HLTabWidget)})},
-messageSends: ["registerBindings", "widget"]}),
-smalltalk.HLTabWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "remove",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-_st(self._widget())._unregister();
-$1=self["@root"];
-if(($receiver = $1) == nil || $receiver == undefined){
-$1;
-} else {
-_st(_st(self["@root"])._asJQuery())._remove();
-};
-return self}, function($ctx1) {$ctx1.fill(self,"remove",{},smalltalk.HLTabWidget)})},
-messageSends: ["unregister", "widget", "ifNotNil:", "remove", "asJQuery"]}),
-smalltalk.HLTabWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st(html)._div();
-_st($1)._class_("tab");
-$2=_st($1)._yourself();
-self["@root"]=$2;
-self._renderTab();
-return self}, function($ctx1) {$ctx1.fill(self,"renderOn:",{html:html},smalltalk.HLTabWidget)})},
-messageSends: ["class:", "div", "yourself", "renderTab"]}),
-smalltalk.HLTabWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderTab",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-_st(self["@root"])._contents_((function(html){
-return smalltalk.withContext(function($ctx2) {
-$1=_st(html)._div();
-_st($1)._class_("amber_box");
-$2=_st($1)._with_((function(){
-return smalltalk.withContext(function($ctx3) {
-return _st(self._widget())._renderOn_(html);
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-return $2;
-}, function($ctx2) {$ctx2.fillBlock({html:html},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"renderTab",{},smalltalk.HLTabWidget)})},
-messageSends: ["contents:", "class:", "div", "with:", "renderOn:", "widget"]}),
-smalltalk.HLTabWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "show",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@root"];
-if(($receiver = $1) == nil || $receiver == undefined){
-self._appendToJQuery_("body"._asJQuery());
-} else {
-_st(_st(self["@root"])._asJQuery())._css_put_("visibility","visible");
-};
-return self}, function($ctx1) {$ctx1.fill(self,"show",{},smalltalk.HLTabWidget)})},
-messageSends: ["ifNil:ifNotNil:", "appendToJQuery:", "asJQuery", "css:put:"]}),
-smalltalk.HLTabWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "widget",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@widget"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"widget",{},smalltalk.HLTabWidget)})},
-messageSends: []}),
-smalltalk.HLTabWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "widget:",
-fn: function (aWidget){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@widget"]=aWidget;
-return self}, function($ctx1) {$ctx1.fill(self,"widget:",{aWidget:aWidget},smalltalk.HLTabWidget)})},
-messageSends: []}),
-smalltalk.HLTabWidget);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "on:labelled:",
-fn: function (aWidget,aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=self._new();
-_st($2)._widget_(aWidget);
-_st($2)._label_(aString);
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"on:labelled:",{aWidget:aWidget,aString:aString},smalltalk.HLTabWidget.klass)})},
-messageSends: ["widget:", "new", "label:", "yourself"]}),
-smalltalk.HLTabWidget.klass);
-
-
-smalltalk.addClass('HLWidget', smalltalk.Widget, ['wrapper'], 'Helios-Core');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "bindKeyDown:keyUp:",
-fn: function (keyDownBlock,keyUpBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st(self._wrapper())._asJQuery();
-_st($1)._keydown_(keyDownBlock);
-$2=_st($1)._keyup_(keyUpBlock);
-return self}, function($ctx1) {$ctx1.fill(self,"bindKeyDown:keyUp:",{keyDownBlock:keyDownBlock,keyUpBlock:keyUpBlock},smalltalk.HLWidget)})},
-messageSends: ["keydown:", "asJQuery", "wrapper", "keyup:"]}),
-smalltalk.HLWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "canHaveFocus",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return false;
-}, function($ctx1) {$ctx1.fill(self,"canHaveFocus",{},smalltalk.HLWidget)})},
-messageSends: []}),
-smalltalk.HLWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "confirm:ifTrue:",
-fn: function (aString,aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._manager())._confirm_ifTrue_(aString,aBlock);
-return self}, function($ctx1) {$ctx1.fill(self,"confirm:ifTrue:",{aString:aString,aBlock:aBlock},smalltalk.HLWidget)})},
-messageSends: ["confirm:ifTrue:", "manager"]}),
-smalltalk.HLWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "execute:",
-fn: function (aCommand){
-var self=this;
-function $HLManager(){return smalltalk.HLManager||(typeof HLManager=="undefined"?nil:HLManager)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st(_st($HLManager())._current())._keyBinder();
-_st($1)._activate();
-$2=_st($1)._applyBinding_(_st(aCommand)._asBinding());
-return self}, function($ctx1) {$ctx1.fill(self,"execute:",{aCommand:aCommand},smalltalk.HLWidget)})},
-messageSends: ["activate", "keyBinder", "current", "applyBinding:", "asBinding"]}),
-smalltalk.HLWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "manager",
-fn: function (){
-var self=this;
-function $HLManager(){return smalltalk.HLManager||(typeof HLManager=="undefined"?nil:HLManager)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st($HLManager())._current();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"manager",{},smalltalk.HLWidget)})},
-messageSends: ["current"]}),
-smalltalk.HLWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "openAsTab",
-fn: function (){
-var self=this;
-function $HLTabWidget(){return smalltalk.HLTabWidget||(typeof HLTabWidget=="undefined"?nil:HLTabWidget)}
-function $HLManager(){return smalltalk.HLManager||(typeof HLManager=="undefined"?nil:HLManager)}
-return smalltalk.withContext(function($ctx1) { 
-_st(_st($HLManager())._current())._addTab_(_st($HLTabWidget())._on_labelled_(self,_st(self._class())._tabLabel()));
-return self}, function($ctx1) {$ctx1.fill(self,"openAsTab",{},smalltalk.HLWidget)})},
-messageSends: ["addTab:", "on:labelled:", "tabLabel", "class", "current"]}),
-smalltalk.HLWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "refresh",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=self._wrapper();
-if(($receiver = $1) == nil || $receiver == undefined){
-$2=self;
-return $2;
-} else {
-$1;
-};
-_st(_st(self._wrapper())._asJQuery())._empty();
-_st((function(html){
-return smalltalk.withContext(function($ctx2) {
-return self._renderContentOn_(html);
-}, function($ctx2) {$ctx2.fillBlock({html:html},$ctx1)})}))._appendToJQuery_(_st(self._wrapper())._asJQuery());
-return self}, function($ctx1) {$ctx1.fill(self,"refresh",{},smalltalk.HLWidget)})},
-messageSends: ["ifNil:", "wrapper", "empty", "asJQuery", "appendToJQuery:", "renderContentOn:"]}),
-smalltalk.HLWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "registerBindings",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._registerBindingsOn_(_st(_st(self._manager())._keyBinder())._bindings());
-return self}, function($ctx1) {$ctx1.fill(self,"registerBindings",{},smalltalk.HLWidget)})},
-messageSends: ["registerBindingsOn:", "bindings", "keyBinder", "manager"]}),
-smalltalk.HLWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "registerBindingsOn:",
-fn: function (aBindingGroup){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self}, function($ctx1) {$ctx1.fill(self,"registerBindingsOn:",{aBindingGroup:aBindingGroup},smalltalk.HLWidget)})},
-messageSends: []}),
-smalltalk.HLWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderContentOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self}, function($ctx1) {$ctx1.fill(self,"renderContentOn:",{html:html},smalltalk.HLWidget)})},
-messageSends: []}),
-smalltalk.HLWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@wrapper"]=_st(html)._div();
-_st((function(renderer){
-return smalltalk.withContext(function($ctx2) {
-return self._renderContentOn_(renderer);
-}, function($ctx2) {$ctx2.fillBlock({renderer:renderer},$ctx1)})}))._appendToJQuery_(_st(self["@wrapper"])._asJQuery());
-return self}, function($ctx1) {$ctx1.fill(self,"renderOn:",{html:html},smalltalk.HLWidget)})},
-messageSends: ["div", "appendToJQuery:", "asJQuery", "renderContentOn:"]}),
-smalltalk.HLWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "request:do:",
-fn: function (aString,aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._manager())._request_do_(aString,aBlock);
-return self}, function($ctx1) {$ctx1.fill(self,"request:do:",{aString:aString,aBlock:aBlock},smalltalk.HLWidget)})},
-messageSends: ["request:do:", "manager"]}),
-smalltalk.HLWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "request:value:do:",
-fn: function (aString,valueString,aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._manager())._request_value_do_(aString,valueString,aBlock);
-return self}, function($ctx1) {$ctx1.fill(self,"request:value:do:",{aString:aString,valueString:valueString,aBlock:aBlock},smalltalk.HLWidget)})},
-messageSends: ["request:value:do:", "manager"]}),
-smalltalk.HLWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "tabClass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._class())._tabClass();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"tabClass",{},smalltalk.HLWidget)})},
-messageSends: ["tabClass", "class"]}),
-smalltalk.HLWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "unbindKeyDownKeyUp",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st(self._wrapper())._asJQuery();
-_st($1)._unbind_("keydown");
-$2=_st($1)._unbind_("keyup");
-return self}, function($ctx1) {$ctx1.fill(self,"unbindKeyDownKeyUp",{},smalltalk.HLWidget)})},
-messageSends: ["unbind:", "asJQuery", "wrapper"]}),
-smalltalk.HLWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "unregister",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self}, function($ctx1) {$ctx1.fill(self,"unregister",{},smalltalk.HLWidget)})},
-messageSends: []}),
-smalltalk.HLWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "wrapper",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@wrapper"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"wrapper",{},smalltalk.HLWidget)})},
-messageSends: []}),
-smalltalk.HLWidget);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "canBeOpenAsTab",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return false;
-}, function($ctx1) {$ctx1.fill(self,"canBeOpenAsTab",{},smalltalk.HLWidget.klass)})},
-messageSends: []}),
-smalltalk.HLWidget.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "openAsTab",
-fn: function (){
-var self=this;
-function $HLTabWidget(){return smalltalk.HLTabWidget||(typeof HLTabWidget=="undefined"?nil:HLTabWidget)}
-function $HLManager(){return smalltalk.HLManager||(typeof HLManager=="undefined"?nil:HLManager)}
-return smalltalk.withContext(function($ctx1) { 
-_st(_st($HLManager())._current())._addTab_(_st($HLTabWidget())._on_labelled_(self._new(),self._tabLabel()));
-return self}, function($ctx1) {$ctx1.fill(self,"openAsTab",{},smalltalk.HLWidget.klass)})},
-messageSends: ["addTab:", "on:labelled:", "new", "tabLabel", "current"]}),
-smalltalk.HLWidget.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "tabClass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "";
-}, function($ctx1) {$ctx1.fill(self,"tabClass",{},smalltalk.HLWidget.klass)})},
-messageSends: []}),
-smalltalk.HLWidget.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "tabLabel",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Tab";
-}, function($ctx1) {$ctx1.fill(self,"tabLabel",{},smalltalk.HLWidget.klass)})},
-messageSends: []}),
-smalltalk.HLWidget.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "tabPriority",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return (500);
-}, function($ctx1) {$ctx1.fill(self,"tabPriority",{},smalltalk.HLWidget.klass)})},
-messageSends: []}),
-smalltalk.HLWidget.klass);
-
-
-smalltalk.addClass('HLFocusableWidget', smalltalk.HLWidget, [], 'Helios-Core');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "blur",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(_st(self._wrapper())._asJQuery())._blur();
-return self}, function($ctx1) {$ctx1.fill(self,"blur",{},smalltalk.HLFocusableWidget)})},
-messageSends: ["blur", "asJQuery", "wrapper"]}),
-smalltalk.HLFocusableWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "canHaveFocus",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"canHaveFocus",{},smalltalk.HLFocusableWidget)})},
-messageSends: []}),
-smalltalk.HLFocusableWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "focus",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(_st(self._wrapper())._asJQuery())._focus();
-return self}, function($ctx1) {$ctx1.fill(self,"focus",{},smalltalk.HLFocusableWidget)})},
-messageSends: ["focus", "asJQuery", "wrapper"]}),
-smalltalk.HLFocusableWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "focusClass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "focused";
-}, function($ctx1) {$ctx1.fill(self,"focusClass",{},smalltalk.HLFocusableWidget)})},
-messageSends: []}),
-smalltalk.HLFocusableWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "hasFocus",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(self._wrapper())._notNil())._and_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(self._wrapper())._asJQuery())._hasClass_(self._focusClass());
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"hasFocus",{},smalltalk.HLFocusableWidget)})},
-messageSends: ["and:", "hasClass:", "focusClass", "asJQuery", "wrapper", "notNil"]}),
-smalltalk.HLFocusableWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderContentOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self}, function($ctx1) {$ctx1.fill(self,"renderContentOn:",{html:html},smalltalk.HLFocusableWidget)})},
-messageSends: []}),
-smalltalk.HLFocusableWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4;
-$1=_st(html)._div();
-_st($1)._class_("hl_widget");
-$2=_st($1)._yourself();
-self["@wrapper"]=$2;
-_st(self["@wrapper"])._with_((function(){
-return smalltalk.withContext(function($ctx2) {
-return self._renderContentOn_(html);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-$3=self["@wrapper"];
-_st($3)._at_put_("tabindex","0");
-_st($3)._onBlur_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(self._wrapper())._asJQuery())._removeClass_(self._focusClass());
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-$4=_st($3)._onFocus_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(self._wrapper())._asJQuery())._addClass_(self._focusClass());
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"renderOn:",{html:html},smalltalk.HLFocusableWidget)})},
-messageSends: ["class:", "div", "yourself", "with:", "renderContentOn:", "at:put:", "onBlur:", "removeClass:", "focusClass", "asJQuery", "wrapper", "onFocus:", "addClass:"]}),
-smalltalk.HLFocusableWidget);
-
-
-
-smalltalk.addClass('HLListWidget', smalltalk.HLFocusableWidget, ['items', 'selectedItem', 'mapping'], 'Helios-Core');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "activateFirstListItem",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._activateListItem_(_st(_st(_st(self["@wrapper"])._asJQuery())._find_("li.inactive"))._eq_((0)));
-return self}, function($ctx1) {$ctx1.fill(self,"activateFirstListItem",{},smalltalk.HLListWidget)})},
-messageSends: ["activateListItem:", "eq:", "find:", "asJQuery"]}),
-smalltalk.HLListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "activateItem:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-var $early={};
-try {
-self._activateListItem_(_st(_st(self["@mapping"])._at_ifAbsent_(anObject,(function(){
-return smalltalk.withContext(function($ctx2) {
-$1=self;
-throw $early=[$1];
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})})))._asJQuery());
-return self}
-catch(e) {if(e===$early)return e[0]; throw e}
-}, function($ctx1) {$ctx1.fill(self,"activateItem:",{anObject:anObject},smalltalk.HLListWidget)})},
-messageSends: ["activateListItem:", "asJQuery", "at:ifAbsent:"]}),
-smalltalk.HLListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "activateListItem:",
-fn: function (aListItem){
-var self=this;
-var item;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3;
-$1=_st(aListItem)._get_((0));
-if(($receiver = $1) == nil || $receiver == undefined){
-$2=self;
-return $2;
-} else {
-$1;
-};
-_st(_st(_st(aListItem)._parent())._children())._removeClass_("active");
-_st(aListItem)._addClass_("active");
-self._ensureVisible_(aListItem);
-item=_st(self._items())._at_(_st(_st(aListItem)._attr_("list-data"))._asNumber());
-$3=_st(self._selectedItem()).__eq_eq(item);
-if(! smalltalk.assert($3)){
-self._selectItem_(item);
-};
-return self}, function($ctx1) {$ctx1.fill(self,"activateListItem:",{aListItem:aListItem,item:item},smalltalk.HLListWidget)})},
-messageSends: ["ifNil:", "get:", "removeClass:", "children", "parent", "addClass:", "ensureVisible:", "at:", "asNumber", "attr:", "items", "ifFalse:", "selectItem:", "==", "selectedItem"]}),
-smalltalk.HLListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "activateNextListItem",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._activateListItem_(_st(_st(_st(self._wrapper())._asJQuery())._find_("li.active"))._next());
-_st(_st(_st(_st(self._wrapper())._asJQuery())._find_(" .active"))._get())._ifEmpty_((function(){
-return smalltalk.withContext(function($ctx2) {
-return self._activateFirstListItem();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"activateNextListItem",{},smalltalk.HLListWidget)})},
-messageSends: ["activateListItem:", "next", "find:", "asJQuery", "wrapper", "ifEmpty:", "activateFirstListItem", "get"]}),
-smalltalk.HLListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "activatePreviousListItem",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._activateListItem_(_st(_st(_st(self._wrapper())._asJQuery())._find_("li.active"))._prev());
-return self}, function($ctx1) {$ctx1.fill(self,"activatePreviousListItem",{},smalltalk.HLListWidget)})},
-messageSends: ["activateListItem:", "prev", "find:", "asJQuery", "wrapper"]}),
-smalltalk.HLListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "cssClassForItem:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "";
-}, function($ctx1) {$ctx1.fill(self,"cssClassForItem:",{anObject:anObject},smalltalk.HLListWidget)})},
-messageSends: []}),
-smalltalk.HLListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "defaultItems",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=[];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"defaultItems",{},smalltalk.HLListWidget)})},
-messageSends: []}),
-smalltalk.HLListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "ensureVisible:",
-fn: function (aListItem){
-var self=this;
-var parent,position;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-position=self._positionOf_(aListItem);
-parent=_st(aListItem)._parent();
-$1=_st(_st(_st(aListItem)._position())._top()).__lt((0));
-if(smalltalk.assert($1)){
-_st(_st(parent)._get_((0)))._scrollTop_(_st(_st(_st(_st(parent)._get_((0)))._scrollTop()).__plus(_st(_st(aListItem)._position())._top())).__minus((10)));
-};
-$2=_st(_st(_st(_st(aListItem)._position())._top()).__plus(_st(aListItem)._height())).__gt(_st(parent)._height());
-if(smalltalk.assert($2)){
-_st(_st(parent)._get_((0)))._scrollTop_(_st(_st(_st(_st(_st(parent)._get_((0)))._scrollTop()).__plus(_st(aListItem)._height())).__minus(_st(_st(parent)._height()).__minus(_st(_st(aListItem)._position())._top()))).__plus((10)));
-};
-return self}, function($ctx1) {$ctx1.fill(self,"ensureVisible:",{aListItem:aListItem,parent:parent,position:position},smalltalk.HLListWidget)})},
-messageSends: ["positionOf:", "parent", "ifTrue:", "scrollTop:", "-", "+", "top", "position", "scrollTop", "get:", "<", "height", ">"]}),
-smalltalk.HLListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "focus",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-smalltalk.HLListWidget.superclass.fn.prototype._focus.apply(_st(self), []);
-$1=_st(self._items())._isEmpty();
-if(! smalltalk.assert($1)){
-$2=self._selectedItem();
-if(($receiver = $2) == nil || $receiver == undefined){
-self._activateFirstListItem();
-} else {
-$2;
-};
-};
-return self}, function($ctx1) {$ctx1.fill(self,"focus",{},smalltalk.HLListWidget)})},
-messageSends: ["focus", "ifFalse:", "ifNil:", "activateFirstListItem", "selectedItem", "isEmpty", "items"]}),
-smalltalk.HLListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "initialize",
-fn: function (){
-var self=this;
-function $Dictionary(){return smalltalk.Dictionary||(typeof Dictionary=="undefined"?nil:Dictionary)}
-return smalltalk.withContext(function($ctx1) { 
-smalltalk.HLListWidget.superclass.fn.prototype._initialize.apply(_st(self), []);
-self["@mapping"]=_st($Dictionary())._new();
-return self}, function($ctx1) {$ctx1.fill(self,"initialize",{},smalltalk.HLListWidget)})},
-messageSends: ["initialize", "new"]}),
-smalltalk.HLListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "items",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@items"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@items"]=self._defaultItems();
-$1=self["@items"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"items",{},smalltalk.HLListWidget)})},
-messageSends: ["ifNil:", "defaultItems"]}),
-smalltalk.HLListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "items:",
-fn: function (aCollection){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@items"]=aCollection;
-return self}, function($ctx1) {$ctx1.fill(self,"items:",{aCollection:aCollection},smalltalk.HLListWidget)})},
-messageSends: []}),
-smalltalk.HLListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "listCssClassForItem:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=_st(self._selectedItem()).__eq(anObject);
-if(smalltalk.assert($2)){
-$1="active";
-} else {
-$1="inactive";
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"listCssClassForItem:",{anObject:anObject},smalltalk.HLListWidget)})},
-messageSends: ["ifTrue:ifFalse:", "=", "selectedItem"]}),
-smalltalk.HLListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "positionOf:",
-fn: function (aListItem){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-
-    	return aListItem.parent().children().get().indexOf(aListItem.get(0)) + 1
-	;
-return self}, function($ctx1) {$ctx1.fill(self,"positionOf:",{aListItem:aListItem},smalltalk.HLListWidget)})},
-messageSends: []}),
-smalltalk.HLListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "refresh",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-var $early={};
-try {
-smalltalk.HLListWidget.superclass.fn.prototype._refresh.apply(_st(self), []);
-self._ensureVisible_(_st(_st(self["@mapping"])._at_ifAbsent_(self._selectedItem(),(function(){
-return smalltalk.withContext(function($ctx2) {
-$1=self;
-throw $early=[$1];
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})})))._asJQuery());
-return self}
-catch(e) {if(e===$early)return e[0]; throw e}
-}, function($ctx1) {$ctx1.fill(self,"refresh",{},smalltalk.HLListWidget)})},
-messageSends: ["refresh", "ensureVisible:", "asJQuery", "at:ifAbsent:", "selectedItem"]}),
-smalltalk.HLListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "registerMappingFrom:to:",
-fn: function (anObject,aTag){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self["@mapping"])._at_put_(anObject,aTag);
-return self}, function($ctx1) {$ctx1.fill(self,"registerMappingFrom:to:",{anObject:anObject,aTag:aTag},smalltalk.HLListWidget)})},
-messageSends: ["at:put:"]}),
-smalltalk.HLListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderButtonsOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self}, function($ctx1) {$ctx1.fill(self,"renderButtonsOn:",{html:html},smalltalk.HLListWidget)})},
-messageSends: []}),
-smalltalk.HLListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderContentOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4;
-$1=_st(html)._ul();
-_st($1)._class_("nav nav-pills nav-stacked");
-$2=_st($1)._with_((function(){
-return smalltalk.withContext(function($ctx2) {
-return self._renderListOn_(html);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-$3=_st(html)._div();
-_st($3)._class_("pane_actions form-actions");
-$4=_st($3)._with_((function(){
-return smalltalk.withContext(function($ctx2) {
-return self._renderButtonsOn_(html);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-self._setupKeyBindings();
-return self}, function($ctx1) {$ctx1.fill(self,"renderContentOn:",{html:html},smalltalk.HLListWidget)})},
-messageSends: ["class:", "ul", "with:", "renderListOn:", "div", "renderButtonsOn:", "setupKeyBindings"]}),
-smalltalk.HLListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderItem:on:",
-fn: function (anObject,html){
-var self=this;
-var li;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$3,$4,$2;
-li=_st(html)._li();
-self._registerMappingFrom_to_(anObject,li);
-$1=li;
-_st($1)._at_put_("list-data",_st(_st(self._items())._indexOf_(anObject))._asString());
-_st($1)._class_(self._listCssClassForItem_(anObject));
-$2=_st($1)._with_((function(){
-return smalltalk.withContext(function($ctx2) {
-$3=_st(html)._a();
-_st($3)._with_((function(){
-return smalltalk.withContext(function($ctx3) {
-_st(_st(html)._tag_("i"))._class_(self._cssClassForItem_(anObject));
-return self._renderItemLabel_on_(anObject,html);
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-$4=_st($3)._onClick_((function(){
-return smalltalk.withContext(function($ctx3) {
-return self._activateListItem_(_st(li)._asJQuery());
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-return $4;
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"renderItem:on:",{anObject:anObject,html:html,li:li},smalltalk.HLListWidget)})},
-messageSends: ["li", "registerMappingFrom:to:", "at:put:", "asString", "indexOf:", "items", "class:", "listCssClassForItem:", "with:", "cssClassForItem:", "tag:", "renderItemLabel:on:", "a", "onClick:", "activateListItem:", "asJQuery"]}),
-smalltalk.HLListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderItemLabel:on:",
-fn: function (anObject,html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(html)._with_(_st(anObject)._asString());
-return self}, function($ctx1) {$ctx1.fill(self,"renderItemLabel:on:",{anObject:anObject,html:html},smalltalk.HLListWidget)})},
-messageSends: ["with:", "asString"]}),
-smalltalk.HLListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderListOn:",
-fn: function (html){
-var self=this;
-function $Dictionary(){return smalltalk.Dictionary||(typeof Dictionary=="undefined"?nil:Dictionary)}
-return smalltalk.withContext(function($ctx1) { 
-self["@mapping"]=_st($Dictionary())._new();
-_st(self._items())._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return self._renderItem_on_(each,html);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"renderListOn:",{html:html},smalltalk.HLListWidget)})},
-messageSends: ["new", "do:", "renderItem:on:", "items"]}),
-smalltalk.HLListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selectItem:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._selectedItem_(anObject);
-return self}, function($ctx1) {$ctx1.fill(self,"selectItem:",{anObject:anObject},smalltalk.HLListWidget)})},
-messageSends: ["selectedItem:"]}),
-smalltalk.HLListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selectedItem",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@selectedItem"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"selectedItem",{},smalltalk.HLListWidget)})},
-messageSends: []}),
-smalltalk.HLListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selectedItem:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@selectedItem"]=anObject;
-return self}, function($ctx1) {$ctx1.fill(self,"selectedItem:",{anObject:anObject},smalltalk.HLListWidget)})},
-messageSends: []}),
-smalltalk.HLListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "setupKeyBindings",
-fn: function (){
-var self=this;
-function $HLRepeatedKeyDownHandler(){return smalltalk.HLRepeatedKeyDownHandler||(typeof HLRepeatedKeyDownHandler=="undefined"?nil:HLRepeatedKeyDownHandler)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st($HLRepeatedKeyDownHandler())._on_(self);
-_st($1)._whileKeyDown_do_((38),(function(){
-return smalltalk.withContext(function($ctx2) {
-return self._activatePreviousListItem();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-_st($1)._whileKeyDown_do_((40),(function(){
-return smalltalk.withContext(function($ctx2) {
-return self._activateNextListItem();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-$2=_st($1)._rebindKeys();
-return self}, function($ctx1) {$ctx1.fill(self,"setupKeyBindings",{},smalltalk.HLListWidget)})},
-messageSends: ["whileKeyDown:do:", "activatePreviousListItem", "on:", "activateNextListItem", "rebindKeys"]}),
-smalltalk.HLListWidget);
-
-
-
-smalltalk.addClass('HLNavigationListWidget', smalltalk.HLListWidget, ['previous', 'next'], 'Helios-Core');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "next",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@next"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"next",{},smalltalk.HLNavigationListWidget)})},
-messageSends: []}),
-smalltalk.HLNavigationListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "next:",
-fn: function (aWidget){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-self["@next"]=aWidget;
-$1=_st(_st(aWidget)._previous()).__eq(self);
-if(! smalltalk.assert($1)){
-_st(aWidget)._previous_(self);
-};
-return self}, function($ctx1) {$ctx1.fill(self,"next:",{aWidget:aWidget},smalltalk.HLNavigationListWidget)})},
-messageSends: ["ifFalse:", "previous:", "=", "previous"]}),
-smalltalk.HLNavigationListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "nextFocus",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._next();
-if(($receiver = $1) == nil || $receiver == undefined){
-$1;
-} else {
-_st(self._next())._focus();
-};
-return self}, function($ctx1) {$ctx1.fill(self,"nextFocus",{},smalltalk.HLNavigationListWidget)})},
-messageSends: ["ifNotNil:", "focus", "next"]}),
-smalltalk.HLNavigationListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "previous",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@previous"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"previous",{},smalltalk.HLNavigationListWidget)})},
-messageSends: []}),
-smalltalk.HLNavigationListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "previous:",
-fn: function (aWidget){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-self["@previous"]=aWidget;
-$1=_st(_st(aWidget)._next()).__eq(self);
-if(! smalltalk.assert($1)){
-_st(aWidget)._next_(self);
-};
-return self}, function($ctx1) {$ctx1.fill(self,"previous:",{aWidget:aWidget},smalltalk.HLNavigationListWidget)})},
-messageSends: ["ifFalse:", "next:", "=", "next"]}),
-smalltalk.HLNavigationListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "previousFocus",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._previous();
-if(($receiver = $1) == nil || $receiver == undefined){
-$1;
-} else {
-_st(self._previous())._focus();
-};
-return self}, function($ctx1) {$ctx1.fill(self,"previousFocus",{},smalltalk.HLNavigationListWidget)})},
-messageSends: ["ifNotNil:", "focus", "previous"]}),
-smalltalk.HLNavigationListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "setupKeyBindings",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-smalltalk.HLNavigationListWidget.superclass.fn.prototype._setupKeyBindings.apply(_st(self), []);
-_st(_st(self._wrapper())._asJQuery())._keydown_((function(e){
-return smalltalk.withContext(function($ctx2) {
-$1=_st(_st(e)._which()).__eq((39));
-if(smalltalk.assert($1)){
-self._nextFocus();
-};
-$2=_st(_st(e)._which()).__eq((37));
-if(smalltalk.assert($2)){
-return self._previousFocus();
-};
-}, function($ctx2) {$ctx2.fillBlock({e:e},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"setupKeyBindings",{},smalltalk.HLNavigationListWidget)})},
-messageSends: ["setupKeyBindings", "keydown:", "ifTrue:", "nextFocus", "=", "which", "previousFocus", "asJQuery", "wrapper"]}),
-smalltalk.HLNavigationListWidget);
-
-
-
-smalltalk.addClass('HLToolListWidget', smalltalk.HLNavigationListWidget, ['model'], 'Helios-Core');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "activateListItem:",
-fn: function (anItem){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._model())._withChangesDo_((function(){
-return smalltalk.withContext(function($ctx2) {
-return smalltalk.HLToolListWidget.superclass.fn.prototype._activateListItem_.apply(_st(self), [anItem]);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"activateListItem:",{anItem:anItem},smalltalk.HLToolListWidget)})},
-messageSends: ["withChangesDo:", "activateListItem:", "model"]}),
-smalltalk.HLToolListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "activateNextListItem",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._model())._withChangesDo_((function(){
-return smalltalk.withContext(function($ctx2) {
-return smalltalk.HLToolListWidget.superclass.fn.prototype._activateNextListItem.apply(_st(self), []);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"activateNextListItem",{},smalltalk.HLToolListWidget)})},
-messageSends: ["withChangesDo:", "activateNextListItem", "model"]}),
-smalltalk.HLToolListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "activatePreviousListItem",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._model())._withChangesDo_((function(){
-return smalltalk.withContext(function($ctx2) {
-return smalltalk.HLToolListWidget.superclass.fn.prototype._activatePreviousListItem.apply(_st(self), []);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"activatePreviousListItem",{},smalltalk.HLToolListWidget)})},
-messageSends: ["withChangesDo:", "activatePreviousListItem", "model"]}),
-smalltalk.HLToolListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "commandCategory",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._label();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"commandCategory",{},smalltalk.HLToolListWidget)})},
-messageSends: ["label"]}),
-smalltalk.HLToolListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "label",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "List";
-}, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.HLToolListWidget)})},
-messageSends: []}),
-smalltalk.HLToolListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "menuCommands",
-fn: function (){
-var self=this;
-function $HLToolCommand(){return smalltalk.HLToolCommand||(typeof HLToolCommand=="undefined"?nil:HLToolCommand)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(_st(_st($HLToolCommand())._concreteClasses())._select_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(each)._isValidFor_(self._model());
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})})))._collect_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(each)._for_(self._model());
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})})))._select_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(_st(each)._category()).__eq(self._commandCategory()))._and_((function(){
-return smalltalk.withContext(function($ctx3) {
-return _st(_st(each)._isAction())._and_((function(){
-return smalltalk.withContext(function($ctx4) {
-return _st(each)._isActive();
-}, function($ctx4) {$ctx4.fillBlock({},$ctx3)})}));
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"menuCommands",{},smalltalk.HLToolListWidget)})},
-messageSends: ["select:", "and:", "isActive", "isAction", "=", "commandCategory", "category", "collect:", "for:", "model", "isValidFor:", "concreteClasses"]}),
-smalltalk.HLToolListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "model",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@model"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"model",{},smalltalk.HLToolListWidget)})},
-messageSends: []}),
-smalltalk.HLToolListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "model:",
-fn: function (aBrowserModel){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-self["@model"]=aBrowserModel;
-$1=self;
-_st($1)._observeSystem();
-$2=_st($1)._observeModel();
-return self}, function($ctx1) {$ctx1.fill(self,"model:",{aBrowserModel:aBrowserModel},smalltalk.HLToolListWidget)})},
-messageSends: ["observeSystem", "observeModel"]}),
-smalltalk.HLToolListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "observeModel",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self}, function($ctx1) {$ctx1.fill(self,"observeModel",{},smalltalk.HLToolListWidget)})},
-messageSends: []}),
-smalltalk.HLToolListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "observeSystem",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self}, function($ctx1) {$ctx1.fill(self,"observeSystem",{},smalltalk.HLToolListWidget)})},
-messageSends: []}),
-smalltalk.HLToolListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderContentOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._renderHeadOn_(html);
-smalltalk.HLToolListWidget.superclass.fn.prototype._renderContentOn_.apply(_st(self), [html]);
-return self}, function($ctx1) {$ctx1.fill(self,"renderContentOn:",{html:html},smalltalk.HLToolListWidget)})},
-messageSends: ["renderHeadOn:", "renderContentOn:"]}),
-smalltalk.HLToolListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderHeadOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st(html)._div();
-_st($1)._class_("list-label");
-$2=_st($1)._with_((function(){
-return smalltalk.withContext(function($ctx2) {
-_st(html)._with_(self._label());
-return self._renderMenuOn_(html);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"renderHeadOn:",{html:html},smalltalk.HLToolListWidget)})},
-messageSends: ["class:", "div", "with:", "label", "renderMenuOn:"]}),
-smalltalk.HLToolListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderMenuOn:",
-fn: function (html){
-var self=this;
-var commands;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$5,$6,$7,$9,$10,$8,$4;
-commands=self._menuCommands();
-$1=_st(commands)._isEmpty();
-if(smalltalk.assert($1)){
-$2=self;
-return $2;
-};
-$3=_st(html)._div();
-_st($3)._class_("btn-group cog");
-$4=_st($3)._with_((function(){
-return smalltalk.withContext(function($ctx2) {
-$5=_st(html)._a();
-_st($5)._class_("btn dropdown-toggle");
-_st($5)._at_put_("data-toggle","dropdown");
-$6=_st($5)._with_((function(){
-return smalltalk.withContext(function($ctx3) {
-return _st(_st(html)._tag_("i"))._class_("icon-cog");
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-$6;
-$7=_st(html)._ul();
-_st($7)._class_("dropdown-menu pull-right");
-$8=_st($7)._with_((function(){
-return smalltalk.withContext(function($ctx3) {
-return _st(self._menuCommands())._do_((function(each){
-return smalltalk.withContext(function($ctx4) {
-return _st(_st(html)._li())._with_((function(){
-return smalltalk.withContext(function($ctx5) {
-$9=_st(html)._a();
-_st($9)._with_(_st(each)._menuLabel());
-$10=_st($9)._onClick_((function(){
-return smalltalk.withContext(function($ctx6) {
-return self._execute_(each);
-}, function($ctx6) {$ctx6.fillBlock({},$ctx5)})}));
-return $10;
-}, function($ctx5) {$ctx5.fillBlock({},$ctx4)})}));
-}, function($ctx4) {$ctx4.fillBlock({each:each},$ctx3)})}));
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-return $8;
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"renderMenuOn:",{html:html,commands:commands},smalltalk.HLToolListWidget)})},
-messageSends: ["menuCommands", "ifTrue:", "isEmpty", "class:", "div", "with:", "a", "at:put:", "tag:", "ul", "do:", "menuLabel", "onClick:", "execute:", "li"]}),
-smalltalk.HLToolListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selectedItem:",
-fn: function (anItem){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-smalltalk.HLToolListWidget.superclass.fn.prototype._selectedItem_.apply(_st(self), [anItem]);
-self._updateMenu();
-return self}, function($ctx1) {$ctx1.fill(self,"selectedItem:",{anItem:anItem},smalltalk.HLToolListWidget)})},
-messageSends: ["selectedItem:", "updateMenu"]}),
-smalltalk.HLToolListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "unregister",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-smalltalk.HLToolListWidget.superclass.fn.prototype._unregister.apply(_st(self), []);
-_st(_st(self._model())._announcer())._unsubscribe_(self);
-_st(_st(self._model())._systemAnnouncer())._unsubscribe_(self);
-return self}, function($ctx1) {$ctx1.fill(self,"unregister",{},smalltalk.HLToolListWidget)})},
-messageSends: ["unregister", "unsubscribe:", "announcer", "model", "systemAnnouncer"]}),
-smalltalk.HLToolListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "updateMenu",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(_st(_st(self._wrapper())._asJQuery())._find_(".cog"))._remove();
-_st((function(html){
-return smalltalk.withContext(function($ctx2) {
-return self._renderMenuOn_(html);
-}, function($ctx2) {$ctx2.fillBlock({html:html},$ctx1)})}))._appendToJQuery_(_st(_st(self._wrapper())._asJQuery())._find_(".list-label"));
-return self}, function($ctx1) {$ctx1.fill(self,"updateMenu",{},smalltalk.HLToolListWidget)})},
-messageSends: ["remove", "find:", "asJQuery", "wrapper", "appendToJQuery:", "renderMenuOn:"]}),
-smalltalk.HLToolListWidget);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "on:",
-fn: function (aModel){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=self._new();
-_st($2)._model_(aModel);
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"on:",{aModel:aModel},smalltalk.HLToolListWidget.klass)})},
-messageSends: ["model:", "new", "yourself"]}),
-smalltalk.HLToolListWidget.klass);
-
-
-smalltalk.addClass('HLTabListWidget', smalltalk.HLListWidget, ['callback'], 'Helios-Core');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "callback",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@callback"];
-if(($receiver = $2) == nil || $receiver == undefined){
-$1=(function(){
-return smalltalk.withContext(function($ctx2) {
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})});
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"callback",{},smalltalk.HLTabListWidget)})},
-messageSends: ["ifNil:"]}),
-smalltalk.HLTabListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "callback:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@callback"]=aBlock;
-return self}, function($ctx1) {$ctx1.fill(self,"callback:",{aBlock:aBlock},smalltalk.HLTabListWidget)})},
-messageSends: []}),
-smalltalk.HLTabListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderItemLabel:on:",
-fn: function (aTab,html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st(html)._span();
-_st($1)._class_(_st(aTab)._cssClass());
-$2=_st($1)._with_(_st(aTab)._label());
-return self}, function($ctx1) {$ctx1.fill(self,"renderItemLabel:on:",{aTab:aTab,html:html},smalltalk.HLTabListWidget)})},
-messageSends: ["class:", "cssClass", "span", "with:", "label"]}),
-smalltalk.HLTabListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selectItem:",
-fn: function (aTab){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-smalltalk.HLTabListWidget.superclass.fn.prototype._selectItem_.apply(_st(self), [aTab]);
-_st(self._callback())._value_(aTab);
-return self}, function($ctx1) {$ctx1.fill(self,"selectItem:",{aTab:aTab},smalltalk.HLTabListWidget)})},
-messageSends: ["selectItem:", "value:", "callback"]}),
-smalltalk.HLTabListWidget);
-
-
-
-smalltalk.addClass('HLManager', smalltalk.HLWidget, ['tabs', 'activeTab', 'environment', 'history'], 'Helios-Core');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "activate:",
-fn: function (aTab){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-_st(self._keyBinder())._flushBindings();
-_st(aTab)._registerBindings();
-self["@activeTab"]=aTab;
-$1=self;
-_st($1)._refresh();
-_st($1)._addToHistory_(aTab);
-$2=_st($1)._show_(aTab);
-return self}, function($ctx1) {$ctx1.fill(self,"activate:",{aTab:aTab},smalltalk.HLManager)})},
-messageSends: ["flushBindings", "keyBinder", "registerBindings", "refresh", "addToHistory:", "show:"]}),
-smalltalk.HLManager);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "activeTab",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@activeTab"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"activeTab",{},smalltalk.HLManager)})},
-messageSends: []}),
-smalltalk.HLManager);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "addTab:",
-fn: function (aTab){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._tabs())._add_(aTab);
-self._activate_(aTab);
-return self}, function($ctx1) {$ctx1.fill(self,"addTab:",{aTab:aTab},smalltalk.HLManager)})},
-messageSends: ["add:", "tabs", "activate:"]}),
-smalltalk.HLManager);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "addToHistory:",
-fn: function (aTab){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._removeFromHistory_(aTab);
-_st(self._history())._add_(aTab);
-return self}, function($ctx1) {$ctx1.fill(self,"addToHistory:",{aTab:aTab},smalltalk.HLManager)})},
-messageSends: ["removeFromHistory:", "add:", "history"]}),
-smalltalk.HLManager);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "confirm:ifFalse:",
-fn: function (aString,aBlock){
-var self=this;
-function $HLConfirmationWidget(){return smalltalk.HLConfirmationWidget||(typeof HLConfirmationWidget=="undefined"?nil:HLConfirmationWidget)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st($HLConfirmationWidget())._new();
-_st($1)._confirmationString_(aString);
-_st($1)._cancelBlock_(aBlock);
-$2=_st($1)._show();
-return self}, function($ctx1) {$ctx1.fill(self,"confirm:ifFalse:",{aString:aString,aBlock:aBlock},smalltalk.HLManager)})},
-messageSends: ["confirmationString:", "new", "cancelBlock:", "show"]}),
-smalltalk.HLManager);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "confirm:ifTrue:",
-fn: function (aString,aBlock){
-var self=this;
-function $HLConfirmationWidget(){return smalltalk.HLConfirmationWidget||(typeof HLConfirmationWidget=="undefined"?nil:HLConfirmationWidget)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st($HLConfirmationWidget())._new();
-_st($1)._confirmationString_(aString);
-_st($1)._actionBlock_(aBlock);
-$2=_st($1)._show();
-return self}, function($ctx1) {$ctx1.fill(self,"confirm:ifTrue:",{aString:aString,aBlock:aBlock},smalltalk.HLManager)})},
-messageSends: ["confirmationString:", "new", "actionBlock:", "show"]}),
-smalltalk.HLManager);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "defaultEnvironment",
-fn: function (){
-var self=this;
-var parent;
-function $Environment(){return smalltalk.Environment||(typeof Environment=="undefined"?nil:Environment)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4;
-$1=_st(window)._opener();
-if(($receiver = $1) == nil || $receiver == undefined){
-parent=_st(window)._parent();
-} else {
-parent=$1;
-};
-$2=parent;
-if(($receiver = $2) == nil || $receiver == undefined){
-$3=_st($Environment())._new();
-return $3;
-} else {
-$2;
-};
-$4=_st(_st(_st(_st(parent)._at_("requirejs"))._value_("amber_vm/smalltalk"))._at_("Environment"))._new();
-return $4;
-}, function($ctx1) {$ctx1.fill(self,"defaultEnvironment",{parent:parent},smalltalk.HLManager)})},
-messageSends: ["ifNil:", "parent", "opener", "new", "at:", "value:"]}),
-smalltalk.HLManager);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "environment",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@environment"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@environment"]=self._defaultEnvironment();
-$1=self["@environment"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"environment",{},smalltalk.HLManager)})},
-messageSends: ["ifNil:", "defaultEnvironment"]}),
-smalltalk.HLManager);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "environment:",
-fn: function (anEnvironment){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@environment"]=anEnvironment;
-return self}, function($ctx1) {$ctx1.fill(self,"environment:",{anEnvironment:anEnvironment},smalltalk.HLManager)})},
-messageSends: []}),
-smalltalk.HLManager);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "history",
-fn: function (){
-var self=this;
-function $OrderedCollection(){return smalltalk.OrderedCollection||(typeof OrderedCollection=="undefined"?nil:OrderedCollection)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@history"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@history"]=_st($OrderedCollection())._new();
-$1=self["@history"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"history",{},smalltalk.HLManager)})},
-messageSends: ["ifNil:", "new"]}),
-smalltalk.HLManager);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "history:",
-fn: function (aCollection){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@history"]=aCollection;
-return self}, function($ctx1) {$ctx1.fill(self,"history:",{aCollection:aCollection},smalltalk.HLManager)})},
-messageSends: []}),
-smalltalk.HLManager);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "initialize",
-fn: function (){
-var self=this;
-function $HLErrorHandler(){return smalltalk.HLErrorHandler||(typeof HLErrorHandler=="undefined"?nil:HLErrorHandler)}
-function $HLProgressHandler(){return smalltalk.HLProgressHandler||(typeof HLProgressHandler=="undefined"?nil:HLProgressHandler)}
-function $HLInspector(){return smalltalk.HLInspector||(typeof HLInspector=="undefined"?nil:HLInspector)}
-function $ErrorHandler(){return smalltalk.ErrorHandler||(typeof ErrorHandler=="undefined"?nil:ErrorHandler)}
-function $ProgressHandler(){return smalltalk.ProgressHandler||(typeof ProgressHandler=="undefined"?nil:ProgressHandler)}
-return smalltalk.withContext(function($ctx1) { 
-smalltalk.HLManager.superclass.fn.prototype._initialize.apply(_st(self), []);
-_st($HLErrorHandler())._register();
-_st($HLProgressHandler())._register();
-self._registerInspector_($HLInspector());
-self._registerErrorHandler_(_st($ErrorHandler())._current());
-self._registerProgressHandler_(_st($ProgressHandler())._current());
-_st(self._keyBinder())._setupEvents();
-return self}, function($ctx1) {$ctx1.fill(self,"initialize",{},smalltalk.HLManager)})},
-messageSends: ["initialize", "register", "registerInspector:", "registerErrorHandler:", "current", "registerProgressHandler:", "setupEvents", "keyBinder"]}),
-smalltalk.HLManager);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "keyBinder",
-fn: function (){
-var self=this;
-function $HLKeyBinder(){return smalltalk.HLKeyBinder||(typeof HLKeyBinder=="undefined"?nil:HLKeyBinder)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st($HLKeyBinder())._current();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"keyBinder",{},smalltalk.HLManager)})},
-messageSends: ["current"]}),
-smalltalk.HLManager);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "refresh",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(".navbar"._asJQuery())._remove();
-self._appendToJQuery_("body"._asJQuery());
-return self}, function($ctx1) {$ctx1.fill(self,"refresh",{},smalltalk.HLManager)})},
-messageSends: ["remove", "asJQuery", "appendToJQuery:"]}),
-smalltalk.HLManager);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "registerErrorHandler:",
-fn: function (anErrorHandler){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._environment())._registerErrorHandler_(anErrorHandler);
-return self}, function($ctx1) {$ctx1.fill(self,"registerErrorHandler:",{anErrorHandler:anErrorHandler},smalltalk.HLManager)})},
-messageSends: ["registerErrorHandler:", "environment"]}),
-smalltalk.HLManager);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "registerInspector:",
-fn: function (anInspector){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._environment())._registerInspector_(anInspector);
-return self}, function($ctx1) {$ctx1.fill(self,"registerInspector:",{anInspector:anInspector},smalltalk.HLManager)})},
-messageSends: ["registerInspector:", "environment"]}),
-smalltalk.HLManager);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "registerProgressHandler:",
-fn: function (aProgressHandler){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._environment())._registerProgressHandler_(aProgressHandler);
-return self}, function($ctx1) {$ctx1.fill(self,"registerProgressHandler:",{aProgressHandler:aProgressHandler},smalltalk.HLManager)})},
-messageSends: ["registerProgressHandler:", "environment"]}),
-smalltalk.HLManager);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "removeActiveTab",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._removeTab_(self._activeTab());
-return self}, function($ctx1) {$ctx1.fill(self,"removeActiveTab",{},smalltalk.HLManager)})},
-messageSends: ["removeTab:", "activeTab"]}),
-smalltalk.HLManager);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "removeFromHistory:",
-fn: function (aTab){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._history_(_st(self._history())._reject_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(each).__eq_eq(aTab);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})})));
-return self}, function($ctx1) {$ctx1.fill(self,"removeFromHistory:",{aTab:aTab},smalltalk.HLManager)})},
-messageSends: ["history:", "reject:", "==", "history"]}),
-smalltalk.HLManager);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "removeTab:",
-fn: function (aTab){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st(self._tabs())._includes_(aTab);
-if(! smalltalk.assert($1)){
-$2=self;
-return $2;
-};
-self._removeFromHistory_(aTab);
-_st(self._tabs())._remove_(aTab);
-_st(self._keyBinder())._flushBindings();
-_st(aTab)._remove();
-self._refresh();
-_st(self._history())._ifNotEmpty_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(self._history())._last())._activate();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"removeTab:",{aTab:aTab},smalltalk.HLManager)})},
-messageSends: ["ifFalse:", "includes:", "tabs", "removeFromHistory:", "remove:", "flushBindings", "keyBinder", "remove", "refresh", "ifNotEmpty:", "activate", "last", "history"]}),
-smalltalk.HLManager);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderAddOn:",
-fn: function (html){
-var self=this;
-function $HLWidget(){return smalltalk.HLWidget||(typeof HLWidget=="undefined"?nil:HLWidget)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$3,$4,$5,$7,$8,$6,$2;
-$1=_st(html)._li();
-_st($1)._class_("dropdown");
-$2=_st($1)._with_((function(){
-return smalltalk.withContext(function($ctx2) {
-$3=_st(html)._a();
-_st($3)._class_("dropdown-toggle");
-_st($3)._at_put_("data-toggle","dropdown");
-$4=_st($3)._with_((function(){
-return smalltalk.withContext(function($ctx3) {
-_st(html)._with_("Open...");
-return _st(_st(html)._tag_("b"))._class_("caret");
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-$4;
-$5=_st(html)._ul();
-_st($5)._class_("dropdown-menu");
-$6=_st($5)._with_((function(){
-return smalltalk.withContext(function($ctx3) {
-return _st(_st(_st(_st($HLWidget())._withAllSubclasses())._select_((function(each){
-return smalltalk.withContext(function($ctx4) {
-return _st(each)._canBeOpenAsTab();
-}, function($ctx4) {$ctx4.fillBlock({each:each},$ctx3)})})))._sorted_((function(a,b){
-return smalltalk.withContext(function($ctx4) {
-return _st(_st(a)._tabPriority()).__lt(_st(b)._tabPriority());
-}, function($ctx4) {$ctx4.fillBlock({a:a,b:b},$ctx3)})})))._do_((function(each){
-return smalltalk.withContext(function($ctx4) {
-return _st(_st(html)._li())._with_((function(){
-return smalltalk.withContext(function($ctx5) {
-$7=_st(html)._a();
-_st($7)._with_(_st(each)._tabLabel());
-$8=_st($7)._onClick_((function(){
-return smalltalk.withContext(function($ctx6) {
-return _st(each)._openAsTab();
-}, function($ctx6) {$ctx6.fillBlock({},$ctx5)})}));
-return $8;
-}, function($ctx5) {$ctx5.fillBlock({},$ctx4)})}));
-}, function($ctx4) {$ctx4.fillBlock({each:each},$ctx3)})}));
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-return $6;
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"renderAddOn:",{html:html},smalltalk.HLManager)})},
-messageSends: ["class:", "li", "with:", "a", "at:put:", "tag:", "ul", "do:", "tabLabel", "onClick:", "openAsTab", "sorted:", "<", "tabPriority", "select:", "canBeOpenAsTab", "withAllSubclasses"]}),
-smalltalk.HLManager);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderContentOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$3,$4,$2;
-$1=_st(html)._div();
-_st($1)._class_("navbar navbar-fixed-top");
-$2=_st($1)._with_((function(){
-return smalltalk.withContext(function($ctx2) {
-$3=_st(html)._div();
-_st($3)._class_("navbar-inner");
-$4=_st($3)._with_((function(){
-return smalltalk.withContext(function($ctx3) {
-return self._renderTabsOn_(html);
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-return $4;
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"renderContentOn:",{html:html},smalltalk.HLManager)})},
-messageSends: ["class:", "div", "with:", "renderTabsOn:"]}),
-smalltalk.HLManager);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderTabsOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$3,$4,$6,$5,$8,$9,$10,$11,$7,$2;
-$1=_st(html)._ul();
-_st($1)._class_("nav");
-$2=_st($1)._with_((function(){
-return smalltalk.withContext(function($ctx2) {
-_st(self._tabs())._do_((function(each){
-return smalltalk.withContext(function($ctx3) {
-$3=_st(html)._li();
-$4=$3;
-$6=_st(each)._isActive();
-if(smalltalk.assert($6)){
-$5="active";
-} else {
-$5="inactive";
-};
-_st($4)._class_($5);
-$7=_st($3)._with_((function(){
-return smalltalk.withContext(function($ctx4) {
-$8=_st(html)._a();
-_st($8)._with_((function(){
-return smalltalk.withContext(function($ctx5) {
-_st(_st(_st(html)._tag_("i"))._class_("close"))._onClick_((function(){
-return smalltalk.withContext(function($ctx6) {
-return self._removeTab_(each);
-}, function($ctx6) {$ctx6.fillBlock({},$ctx5)})}));
-$9=_st(html)._span();
-_st($9)._class_(_st(each)._cssClass());
-$10=_st($9)._with_(_st(each)._displayLabel());
-return $10;
-}, function($ctx5) {$ctx5.fillBlock({},$ctx4)})}));
-$11=_st($8)._onClick_((function(){
-return smalltalk.withContext(function($ctx5) {
-return _st(each)._activate();
-}, function($ctx5) {$ctx5.fillBlock({},$ctx4)})}));
-return $11;
-}, function($ctx4) {$ctx4.fillBlock({},$ctx3)})}));
-return $7;
-}, function($ctx3) {$ctx3.fillBlock({each:each},$ctx2)})}));
-return self._renderAddOn_(html);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"renderTabsOn:",{html:html},smalltalk.HLManager)})},
-messageSends: ["class:", "ul", "with:", "do:", "ifTrue:ifFalse:", "isActive", "li", "onClick:", "removeTab:", "tag:", "cssClass", "span", "displayLabel", "a", "activate", "tabs", "renderAddOn:"]}),
-smalltalk.HLManager);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "request:do:",
-fn: function (aString,aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._request_value_do_(aString,"",aBlock);
-return self}, function($ctx1) {$ctx1.fill(self,"request:do:",{aString:aString,aBlock:aBlock},smalltalk.HLManager)})},
-messageSends: ["request:value:do:"]}),
-smalltalk.HLManager);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "request:value:do:",
-fn: function (aString,valueString,aBlock){
-var self=this;
-function $HLRequestWidget(){return smalltalk.HLRequestWidget||(typeof HLRequestWidget=="undefined"?nil:HLRequestWidget)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st($HLRequestWidget())._new();
-_st($1)._confirmationString_(aString);
-_st($1)._actionBlock_(aBlock);
-_st($1)._value_(valueString);
-$2=_st($1)._show();
-return self}, function($ctx1) {$ctx1.fill(self,"request:value:do:",{aString:aString,valueString:valueString,aBlock:aBlock},smalltalk.HLManager)})},
-messageSends: ["confirmationString:", "new", "actionBlock:", "value:", "show"]}),
-smalltalk.HLManager);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "show:",
-fn: function (aTab){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-_st(self._tabs())._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(each)._hide();
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-$1=aTab;
-_st($1)._show();
-$2=_st($1)._focus();
-return self}, function($ctx1) {$ctx1.fill(self,"show:",{aTab:aTab},smalltalk.HLManager)})},
-messageSends: ["do:", "hide", "tabs", "show", "focus"]}),
-smalltalk.HLManager);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "tabs",
-fn: function (){
-var self=this;
-function $OrderedCollection(){return smalltalk.OrderedCollection||(typeof OrderedCollection=="undefined"?nil:OrderedCollection)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@tabs"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@tabs"]=_st($OrderedCollection())._new();
-$1=self["@tabs"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"tabs",{},smalltalk.HLManager)})},
-messageSends: ["ifNil:", "new"]}),
-smalltalk.HLManager);
-
-
-smalltalk.HLManager.klass.iVarNames = ['current'];
-smalltalk.addMethod(
-smalltalk.method({
-selector: "clearKeydownEvent",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-_st("body"._asJQuery())._keydown_((function(e){
-return smalltalk.withContext(function($ctx2) {
-$1=_st(_st(_st(e)._keyCode()).__gt_eq((37)))._and_((function(){
-return smalltalk.withContext(function($ctx3) {
-return _st(_st(e)._keyCode()).__lt_eq((40));
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-if(smalltalk.assert($1)){
-return false;
-};
-}, function($ctx2) {$ctx2.fillBlock({e:e},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"clearKeydownEvent",{},smalltalk.HLManager.klass)})},
-messageSends: ["keydown:", "ifTrue:", "and:", "<=", "keyCode", ">=", "asJQuery"]}),
-smalltalk.HLManager.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "current",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@current"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@current"]=_st(self._basicNew())._initialize();
-$1=self["@current"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"current",{},smalltalk.HLManager.klass)})},
-messageSends: ["ifNil:", "initialize", "basicNew"]}),
-smalltalk.HLManager.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "initialize",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._current())._appendToJQuery_("body"._asJQuery());
-self._clearKeydownEvent();
-return self}, function($ctx1) {$ctx1.fill(self,"initialize",{},smalltalk.HLManager.klass)})},
-messageSends: ["appendToJQuery:", "asJQuery", "current", "clearKeydownEvent"]}),
-smalltalk.HLManager.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "new",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._shouldNotImplement();
-return self}, function($ctx1) {$ctx1.fill(self,"new",{},smalltalk.HLManager.klass)})},
-messageSends: ["shouldNotImplement"]}),
-smalltalk.HLManager.klass);
-
-
-smalltalk.addClass('HLModalWidget', smalltalk.HLWidget, [], 'Helios-Core');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "cancel",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._remove();
-return self}, function($ctx1) {$ctx1.fill(self,"cancel",{},smalltalk.HLModalWidget)})},
-messageSends: ["remove"]}),
-smalltalk.HLModalWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "confirm",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._remove();
-return self}, function($ctx1) {$ctx1.fill(self,"confirm",{},smalltalk.HLModalWidget)})},
-messageSends: ["remove"]}),
-smalltalk.HLModalWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "cssClass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "";
-}, function($ctx1) {$ctx1.fill(self,"cssClass",{},smalltalk.HLModalWidget)})},
-messageSends: []}),
-smalltalk.HLModalWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "hasButtons",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"hasButtons",{},smalltalk.HLModalWidget)})},
-messageSends: []}),
-smalltalk.HLModalWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "remove",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(".dialog"._asJQuery())._removeClass_("active");
-_st((function(){
-return smalltalk.withContext(function($ctx2) {
-_st("#overlay"._asJQuery())._remove();
-return _st(".dialog"._asJQuery())._remove();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._valueWithTimeout_((300));
-return self}, function($ctx1) {$ctx1.fill(self,"remove",{},smalltalk.HLModalWidget)})},
-messageSends: ["removeClass:", "asJQuery", "valueWithTimeout:", "remove"]}),
-smalltalk.HLModalWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderButtonsOn:",
-fn: function (html){
-var self=this;
-var confirmButton;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$3,$4,$5,$6,$2;
-$1=_st(html)._div();
-_st($1)._class_("buttons");
-$2=_st($1)._with_((function(){
-return smalltalk.withContext(function($ctx2) {
-$3=_st(html)._button();
-_st($3)._class_("button");
-_st($3)._with_("Cancel");
-$4=_st($3)._onClick_((function(){
-return smalltalk.withContext(function($ctx3) {
-return self._cancel();
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-$4;
-$5=_st(html)._button();
-_st($5)._class_("button default");
-_st($5)._with_("Confirm");
-$6=_st($5)._onClick_((function(){
-return smalltalk.withContext(function($ctx3) {
-return self._confirm();
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-confirmButton=$6;
-return confirmButton;
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-_st(_st(confirmButton)._asJQuery())._focus();
-return self}, function($ctx1) {$ctx1.fill(self,"renderButtonsOn:",{html:html,confirmButton:confirmButton},smalltalk.HLModalWidget)})},
-messageSends: ["class:", "div", "with:", "button", "onClick:", "cancel", "confirm", "focus", "asJQuery"]}),
-smalltalk.HLModalWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderContentOn:",
-fn: function (html){
-var self=this;
-var confirmButton;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$3,$2;
-_st(_st(html)._div())._id_("overlay");
-$1=_st(html)._div();
-_st($1)._class_("dialog ".__comma(self._cssClass()));
-$2=_st($1)._with_((function(){
-return smalltalk.withContext(function($ctx2) {
-self._renderMainOn_(html);
-$3=self._hasButtons();
-if(smalltalk.assert($3)){
-return self._renderButtonsOn_(html);
-};
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-_st(".dialog"._asJQuery())._addClass_("active");
-self._setupKeyBindings();
-return self}, function($ctx1) {$ctx1.fill(self,"renderContentOn:",{html:html,confirmButton:confirmButton},smalltalk.HLModalWidget)})},
-messageSends: ["id:", "div", "class:", ",", "cssClass", "with:", "renderMainOn:", "ifTrue:", "renderButtonsOn:", "hasButtons", "addClass:", "asJQuery", "setupKeyBindings"]}),
-smalltalk.HLModalWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderMainOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self}, function($ctx1) {$ctx1.fill(self,"renderMainOn:",{html:html},smalltalk.HLModalWidget)})},
-messageSends: []}),
-smalltalk.HLModalWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "setupKeyBindings",
-fn: function (){
-var self=this;
-function $String(){return smalltalk.String||(typeof String=="undefined"?nil:String)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-_st(".dialog"._asJQuery())._keyup_((function(e){
-return smalltalk.withContext(function($ctx2) {
-$1=_st(_st(e)._keyCode()).__eq(_st(_st($String())._esc())._asciiValue());
-if(smalltalk.assert($1)){
-return self._cancel();
-};
-}, function($ctx2) {$ctx2.fillBlock({e:e},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"setupKeyBindings",{},smalltalk.HLModalWidget)})},
-messageSends: ["keyup:", "ifTrue:", "cancel", "=", "asciiValue", "esc", "keyCode", "asJQuery"]}),
-smalltalk.HLModalWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "show",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._appendToJQuery_("body"._asJQuery());
-return self}, function($ctx1) {$ctx1.fill(self,"show",{},smalltalk.HLModalWidget)})},
-messageSends: ["appendToJQuery:", "asJQuery"]}),
-smalltalk.HLModalWidget);
-
-
-
-smalltalk.addClass('HLConfirmationWidget', smalltalk.HLModalWidget, ['confirmationString', 'actionBlock', 'cancelBlock'], 'Helios-Core');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "actionBlock",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@actionBlock"];
-if(($receiver = $2) == nil || $receiver == undefined){
-$1=(function(){
-return smalltalk.withContext(function($ctx2) {
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})});
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"actionBlock",{},smalltalk.HLConfirmationWidget)})},
-messageSends: ["ifNil:"]}),
-smalltalk.HLConfirmationWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "actionBlock:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@actionBlock"]=aBlock;
-return self}, function($ctx1) {$ctx1.fill(self,"actionBlock:",{aBlock:aBlock},smalltalk.HLConfirmationWidget)})},
-messageSends: []}),
-smalltalk.HLConfirmationWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "cancel",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._cancelBlock())._value();
-smalltalk.HLConfirmationWidget.superclass.fn.prototype._cancel.apply(_st(self), []);
-return self}, function($ctx1) {$ctx1.fill(self,"cancel",{},smalltalk.HLConfirmationWidget)})},
-messageSends: ["value", "cancelBlock", "cancel"]}),
-smalltalk.HLConfirmationWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "cancelBlock",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@cancelBlock"];
-if(($receiver = $2) == nil || $receiver == undefined){
-$1=(function(){
-return smalltalk.withContext(function($ctx2) {
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})});
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"cancelBlock",{},smalltalk.HLConfirmationWidget)})},
-messageSends: ["ifNil:"]}),
-smalltalk.HLConfirmationWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "cancelBlock:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@cancelBlock"]=aBlock;
-return self}, function($ctx1) {$ctx1.fill(self,"cancelBlock:",{aBlock:aBlock},smalltalk.HLConfirmationWidget)})},
-messageSends: []}),
-smalltalk.HLConfirmationWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "confirm",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-smalltalk.HLConfirmationWidget.superclass.fn.prototype._confirm.apply(_st(self), []);
-_st(self._actionBlock())._value();
-return self}, function($ctx1) {$ctx1.fill(self,"confirm",{},smalltalk.HLConfirmationWidget)})},
-messageSends: ["confirm", "value", "actionBlock"]}),
-smalltalk.HLConfirmationWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "confirmationString",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@confirmationString"];
-if(($receiver = $2) == nil || $receiver == undefined){
-$1="Confirm";
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"confirmationString",{},smalltalk.HLConfirmationWidget)})},
-messageSends: ["ifNil:"]}),
-smalltalk.HLConfirmationWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "confirmationString:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@confirmationString"]=aString;
-return self}, function($ctx1) {$ctx1.fill(self,"confirmationString:",{aString:aString},smalltalk.HLConfirmationWidget)})},
-messageSends: []}),
-smalltalk.HLConfirmationWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderMainOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(_st(html)._span())._with_(self._confirmationString());
-return self}, function($ctx1) {$ctx1.fill(self,"renderMainOn:",{html:html},smalltalk.HLConfirmationWidget)})},
-messageSends: ["with:", "confirmationString", "span"]}),
-smalltalk.HLConfirmationWidget);
-
-
-
-smalltalk.addClass('HLRequestWidget', smalltalk.HLConfirmationWidget, ['input', 'value'], 'Helios-Core');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "confirm",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-smalltalk.HLRequestWidget.superclass.fn.prototype._confirm.apply(_st(self), []);
-_st(self._actionBlock())._value_(_st(_st(self["@input"])._asJQuery())._val());
-return self}, function($ctx1) {$ctx1.fill(self,"confirm",{},smalltalk.HLRequestWidget)})},
-messageSends: ["confirm", "value:", "val", "asJQuery", "actionBlock"]}),
-smalltalk.HLRequestWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "cssClass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "large";
-}, function($ctx1) {$ctx1.fill(self,"cssClass",{},smalltalk.HLRequestWidget)})},
-messageSends: []}),
-smalltalk.HLRequestWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderMainOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-smalltalk.HLRequestWidget.superclass.fn.prototype._renderMainOn_.apply(_st(self), [html]);
-self["@input"]=_st(html)._textarea();
-_st(_st(self["@input"])._asJQuery())._val_(self._value());
-return self}, function($ctx1) {$ctx1.fill(self,"renderMainOn:",{html:html},smalltalk.HLRequestWidget)})},
-messageSends: ["renderMainOn:", "textarea", "val:", "value", "asJQuery"]}),
-smalltalk.HLRequestWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "value",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@value"];
-if(($receiver = $2) == nil || $receiver == undefined){
-$1="";
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"value",{},smalltalk.HLRequestWidget)})},
-messageSends: ["ifNil:"]}),
-smalltalk.HLRequestWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "value:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@value"]=aString;
-return self}, function($ctx1) {$ctx1.fill(self,"value:",{aString:aString},smalltalk.HLRequestWidget)})},
-messageSends: []}),
-smalltalk.HLRequestWidget);
-
-
-
-smalltalk.addClass('HLProgressWidget', smalltalk.HLModalWidget, ['progressBars', 'visible'], 'Helios-Core');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "addProgressBar:",
-fn: function (aProgressBar){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._show();
-_st(self._progressBars())._add_(aProgressBar);
-_st(aProgressBar)._appendToJQuery_(_st(_st(self._wrapper())._asJQuery())._find_(".dialog"));
-return self}, function($ctx1) {$ctx1.fill(self,"addProgressBar:",{aProgressBar:aProgressBar},smalltalk.HLProgressWidget)})},
-messageSends: ["show", "add:", "progressBars", "appendToJQuery:", "find:", "asJQuery", "wrapper"]}),
-smalltalk.HLProgressWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "do:on:displaying:",
-fn: function (aBlock,aCollection,aString){
-var self=this;
-var progressBar;
-function $HLProgressBarWidget(){return smalltalk.HLProgressBarWidget||(typeof HLProgressBarWidget=="undefined"?nil:HLProgressBarWidget)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st($HLProgressBarWidget())._new();
-_st($1)._parent_(self);
-_st($1)._label_(aString);
-_st($1)._workBlock_(aBlock);
-_st($1)._collection_(aCollection);
-$2=_st($1)._yourself();
-progressBar=$2;
-self._addProgressBar_(progressBar);
-_st(progressBar)._start();
-return self}, function($ctx1) {$ctx1.fill(self,"do:on:displaying:",{aBlock:aBlock,aCollection:aCollection,aString:aString,progressBar:progressBar},smalltalk.HLProgressWidget)})},
-messageSends: ["parent:", "new", "label:", "workBlock:", "collection:", "yourself", "addProgressBar:", "start"]}),
-smalltalk.HLProgressWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "flush",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._progressBars())._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return self._removeProgressBar_(each);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"flush",{},smalltalk.HLProgressWidget)})},
-messageSends: ["do:", "removeProgressBar:", "progressBars"]}),
-smalltalk.HLProgressWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "hasButtons",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return false;
-}, function($ctx1) {$ctx1.fill(self,"hasButtons",{},smalltalk.HLProgressWidget)})},
-messageSends: []}),
-smalltalk.HLProgressWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isVisible",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@visible"];
-if(($receiver = $2) == nil || $receiver == undefined){
-$1=false;
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"isVisible",{},smalltalk.HLProgressWidget)})},
-messageSends: ["ifNil:"]}),
-smalltalk.HLProgressWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "progressBars",
-fn: function (){
-var self=this;
-function $OrderedCollection(){return smalltalk.OrderedCollection||(typeof OrderedCollection=="undefined"?nil:OrderedCollection)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@progressBars"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@progressBars"]=_st($OrderedCollection())._new();
-$1=self["@progressBars"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"progressBars",{},smalltalk.HLProgressWidget)})},
-messageSends: ["ifNil:", "new"]}),
-smalltalk.HLProgressWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "remove",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._isVisible();
-if(smalltalk.assert($1)){
-self["@visible"]=false;
-self["@visible"];
-smalltalk.HLProgressWidget.superclass.fn.prototype._remove.apply(_st(self), []);
-};
-return self}, function($ctx1) {$ctx1.fill(self,"remove",{},smalltalk.HLProgressWidget)})},
-messageSends: ["ifTrue:", "remove", "isVisible"]}),
-smalltalk.HLProgressWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "removeProgressBar:",
-fn: function (aProgressBar){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._progressBars())._remove_ifAbsent_(aProgressBar,(function(){
-return smalltalk.withContext(function($ctx2) {
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-_st(_st(_st(aProgressBar)._wrapper())._asJQuery())._remove();
-_st(self._progressBars())._ifEmpty_((function(){
-return smalltalk.withContext(function($ctx2) {
-return self._remove();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"removeProgressBar:",{aProgressBar:aProgressBar},smalltalk.HLProgressWidget)})},
-messageSends: ["remove:ifAbsent:", "progressBars", "remove", "asJQuery", "wrapper", "ifEmpty:"]}),
-smalltalk.HLProgressWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderMainOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._progressBars())._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(html)._with_(each);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"renderMainOn:",{html:html},smalltalk.HLProgressWidget)})},
-messageSends: ["do:", "with:", "progressBars"]}),
-smalltalk.HLProgressWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "show",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._isVisible();
-if(! smalltalk.assert($1)){
-self["@visible"]=true;
-self["@visible"];
-smalltalk.HLProgressWidget.superclass.fn.prototype._show.apply(_st(self), []);
-};
-return self}, function($ctx1) {$ctx1.fill(self,"show",{},smalltalk.HLProgressWidget)})},
-messageSends: ["ifFalse:", "show", "isVisible"]}),
-smalltalk.HLProgressWidget);
-
-
-smalltalk.HLProgressWidget.klass.iVarNames = ['default'];
-smalltalk.addMethod(
-smalltalk.method({
-selector: "default",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@default"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@default"]=self._new();
-$1=self["@default"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"default",{},smalltalk.HLProgressWidget.klass)})},
-messageSends: ["ifNil:", "new"]}),
-smalltalk.HLProgressWidget.klass);
-
-
-smalltalk.addClass('HLTabSelectionWidget', smalltalk.HLModalWidget, ['tabs', 'tabList', 'selectedTab', 'selectCallback', 'cancelCallback', 'confirmCallback'], 'Helios-Core');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "cancel",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-smalltalk.HLTabSelectionWidget.superclass.fn.prototype._cancel.apply(_st(self), []);
-_st(self._cancelCallback())._value();
-return self}, function($ctx1) {$ctx1.fill(self,"cancel",{},smalltalk.HLTabSelectionWidget)})},
-messageSends: ["cancel", "value", "cancelCallback"]}),
-smalltalk.HLTabSelectionWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "cancelCallback",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@cancelCallback"];
-if(($receiver = $2) == nil || $receiver == undefined){
-$1=(function(){
-return smalltalk.withContext(function($ctx2) {
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})});
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"cancelCallback",{},smalltalk.HLTabSelectionWidget)})},
-messageSends: ["ifNil:"]}),
-smalltalk.HLTabSelectionWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "cancelCallback:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@cancelCallback"]=aBlock;
-return self}, function($ctx1) {$ctx1.fill(self,"cancelCallback:",{aBlock:aBlock},smalltalk.HLTabSelectionWidget)})},
-messageSends: []}),
-smalltalk.HLTabSelectionWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "confirm",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-smalltalk.HLTabSelectionWidget.superclass.fn.prototype._confirm.apply(_st(self), []);
-_st(self._confirmCallback())._value_(self._selectedTab());
-return self}, function($ctx1) {$ctx1.fill(self,"confirm",{},smalltalk.HLTabSelectionWidget)})},
-messageSends: ["confirm", "value:", "selectedTab", "confirmCallback"]}),
-smalltalk.HLTabSelectionWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "confirmCallback",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@confirmCallback"];
-if(($receiver = $2) == nil || $receiver == undefined){
-$1=(function(){
-return smalltalk.withContext(function($ctx2) {
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})});
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"confirmCallback",{},smalltalk.HLTabSelectionWidget)})},
-messageSends: ["ifNil:"]}),
-smalltalk.HLTabSelectionWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "confirmCallback:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@confirmCallback"]=aBlock;
-return self}, function($ctx1) {$ctx1.fill(self,"confirmCallback:",{aBlock:aBlock},smalltalk.HLTabSelectionWidget)})},
-messageSends: []}),
-smalltalk.HLTabSelectionWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderContentOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-smalltalk.HLTabSelectionWidget.superclass.fn.prototype._renderContentOn_.apply(_st(self), [html]);
-_st(self._tabList())._focus();
-return self}, function($ctx1) {$ctx1.fill(self,"renderContentOn:",{html:html},smalltalk.HLTabSelectionWidget)})},
-messageSends: ["renderContentOn:", "focus", "tabList"]}),
-smalltalk.HLTabSelectionWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderMainOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st(html)._div();
-_st($1)._class_("title");
-$2=_st($1)._with_("Tab selection");
-_st(html)._with_(self._tabList());
-return self}, function($ctx1) {$ctx1.fill(self,"renderMainOn:",{html:html},smalltalk.HLTabSelectionWidget)})},
-messageSends: ["class:", "div", "with:", "tabList"]}),
-smalltalk.HLTabSelectionWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderTab:on:",
-fn: function (aTab,html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st(html)._span();
-_st($1)._class_(_st(aTab)._cssClass());
-$2=_st($1)._with_(_st(aTab)._label());
-return self}, function($ctx1) {$ctx1.fill(self,"renderTab:on:",{aTab:aTab,html:html},smalltalk.HLTabSelectionWidget)})},
-messageSends: ["class:", "cssClass", "span", "with:", "label"]}),
-smalltalk.HLTabSelectionWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderTabsOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-_st(self._tabs())._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(html)._li())._with_((function(){
-return smalltalk.withContext(function($ctx3) {
-$1=_st(html)._a();
-_st($1)._with_((function(){
-return smalltalk.withContext(function($ctx4) {
-return self._renderTab_on_(each,html);
-}, function($ctx4) {$ctx4.fillBlock({},$ctx3)})}));
-$2=_st($1)._onClick_((function(){
-return smalltalk.withContext(function($ctx4) {
-return self._selectTab_(each);
-}, function($ctx4) {$ctx4.fillBlock({},$ctx3)})}));
-return $2;
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"renderTabsOn:",{html:html},smalltalk.HLTabSelectionWidget)})},
-messageSends: ["do:", "with:", "renderTab:on:", "a", "onClick:", "selectTab:", "li", "tabs"]}),
-smalltalk.HLTabSelectionWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selectCallback",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@selectCallback"];
-if(($receiver = $2) == nil || $receiver == undefined){
-$1=(function(){
-return smalltalk.withContext(function($ctx2) {
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})});
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"selectCallback",{},smalltalk.HLTabSelectionWidget)})},
-messageSends: ["ifNil:"]}),
-smalltalk.HLTabSelectionWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selectCallback:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@selectCallback"]=aBlock;
-return self}, function($ctx1) {$ctx1.fill(self,"selectCallback:",{aBlock:aBlock},smalltalk.HLTabSelectionWidget)})},
-messageSends: []}),
-smalltalk.HLTabSelectionWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selectTab:",
-fn: function (aTab){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._selectedTab_(aTab);
-_st(self._selectCallback())._value_(aTab);
-return self}, function($ctx1) {$ctx1.fill(self,"selectTab:",{aTab:aTab},smalltalk.HLTabSelectionWidget)})},
-messageSends: ["selectedTab:", "value:", "selectCallback"]}),
-smalltalk.HLTabSelectionWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selectedTab",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@selectedTab"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"selectedTab",{},smalltalk.HLTabSelectionWidget)})},
-messageSends: []}),
-smalltalk.HLTabSelectionWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selectedTab:",
-fn: function (aTab){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@selectedTab"]=aTab;
-return self}, function($ctx1) {$ctx1.fill(self,"selectedTab:",{aTab:aTab},smalltalk.HLTabSelectionWidget)})},
-messageSends: []}),
-smalltalk.HLTabSelectionWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "setupKeyBindings",
-fn: function (){
-var self=this;
-function $String(){return smalltalk.String||(typeof String=="undefined"?nil:String)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-smalltalk.HLTabSelectionWidget.superclass.fn.prototype._setupKeyBindings.apply(_st(self), []);
-_st(".dialog"._asJQuery())._keyup_((function(e){
-return smalltalk.withContext(function($ctx2) {
-$1=_st(_st(e)._keyCode()).__eq(_st(_st($String())._cr())._asciiValue());
-if(smalltalk.assert($1)){
-return self._confirm();
-};
-}, function($ctx2) {$ctx2.fillBlock({e:e},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"setupKeyBindings",{},smalltalk.HLTabSelectionWidget)})},
-messageSends: ["setupKeyBindings", "keyup:", "ifTrue:", "confirm", "=", "asciiValue", "cr", "keyCode", "asJQuery"]}),
-smalltalk.HLTabSelectionWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "tabList",
-fn: function (){
-var self=this;
-function $HLTabListWidget(){return smalltalk.HLTabListWidget||(typeof HLTabListWidget=="undefined"?nil:HLTabListWidget)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4;
-$1=self["@tabList"];
-if(($receiver = $1) == nil || $receiver == undefined){
-self["@tabList"]=_st($HLTabListWidget())._new();
-self["@tabList"];
-$2=self["@tabList"];
-_st($2)._callback_((function(tab){
-return smalltalk.withContext(function($ctx2) {
-self._selectTab_(tab);
-return _st(self["@tabList"])._focus();
-}, function($ctx2) {$ctx2.fillBlock({tab:tab},$ctx1)})}));
-_st($2)._selectedItem_(self._selectedTab());
-$3=_st($2)._items_(self._tabs());
-$3;
-} else {
-$1;
-};
-$4=self["@tabList"];
-return $4;
-}, function($ctx1) {$ctx1.fill(self,"tabList",{},smalltalk.HLTabSelectionWidget)})},
-messageSends: ["ifNil:", "new", "callback:", "selectTab:", "focus", "selectedItem:", "selectedTab", "items:", "tabs"]}),
-smalltalk.HLTabSelectionWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "tabs",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@tabs"];
-if(($receiver = $2) == nil || $receiver == undefined){
-$1=[];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"tabs",{},smalltalk.HLTabSelectionWidget)})},
-messageSends: ["ifNil:"]}),
-smalltalk.HLTabSelectionWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "tabs:",
-fn: function (aCollection){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@tabs"]=aCollection;
-return self}, function($ctx1) {$ctx1.fill(self,"tabs:",{aCollection:aCollection},smalltalk.HLTabSelectionWidget)})},
-messageSends: []}),
-smalltalk.HLTabSelectionWidget);
-
-
-
-smalltalk.addClass('HLProgressBarWidget', smalltalk.HLWidget, ['label', 'parent', 'workBlock', 'collection', 'bar'], 'Helios-Core');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "collection",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@collection"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"collection",{},smalltalk.HLProgressBarWidget)})},
-messageSends: []}),
-smalltalk.HLProgressBarWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "collection:",
-fn: function (aCollection){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@collection"]=aCollection;
-return self}, function($ctx1) {$ctx1.fill(self,"collection:",{aCollection:aCollection},smalltalk.HLProgressBarWidget)})},
-messageSends: []}),
-smalltalk.HLProgressBarWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "evaluateAt:",
-fn: function (anInteger){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-self._updateProgress_(_st(_st(anInteger).__slash(_st(self._collection())._size())).__star((100)));
-$1=_st(anInteger).__lt_eq(_st(self._collection())._size());
-if(smalltalk.assert($1)){
-_st((function(){
-return smalltalk.withContext(function($ctx2) {
-_st(self._workBlock())._value_(_st(self._collection())._at_(anInteger));
-return self._evaluateAt_(_st(anInteger).__plus((1)));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._valueWithTimeout_((10));
-} else {
-_st((function(){
-return smalltalk.withContext(function($ctx2) {
-return self._remove();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._valueWithTimeout_((500));
-};
-return self}, function($ctx1) {$ctx1.fill(self,"evaluateAt:",{anInteger:anInteger},smalltalk.HLProgressBarWidget)})},
-messageSends: ["updateProgress:", "*", "/", "size", "collection", "ifTrue:ifFalse:", "valueWithTimeout:", "value:", "at:", "workBlock", "evaluateAt:", "+", "remove", "<="]}),
-smalltalk.HLProgressBarWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "label",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@label"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.HLProgressBarWidget)})},
-messageSends: []}),
-smalltalk.HLProgressBarWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "label:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@label"]=aString;
-return self}, function($ctx1) {$ctx1.fill(self,"label:",{aString:aString},smalltalk.HLProgressBarWidget)})},
-messageSends: []}),
-smalltalk.HLProgressBarWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "parent",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@parent"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"parent",{},smalltalk.HLProgressBarWidget)})},
-messageSends: []}),
-smalltalk.HLProgressBarWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "parent:",
-fn: function (aProgress){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@parent"]=aProgress;
-return self}, function($ctx1) {$ctx1.fill(self,"parent:",{aProgress:aProgress},smalltalk.HLProgressBarWidget)})},
-messageSends: []}),
-smalltalk.HLProgressBarWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "remove",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._parent())._removeProgressBar_(self);
-return self}, function($ctx1) {$ctx1.fill(self,"remove",{},smalltalk.HLProgressBarWidget)})},
-messageSends: ["removeProgressBar:", "parent"]}),
-smalltalk.HLProgressBarWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderContentOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$3,$4,$2;
-_st(_st(html)._span())._with_(self._label());
-$1=_st(html)._div();
-_st($1)._class_("progress");
-$2=_st($1)._with_((function(){
-return smalltalk.withContext(function($ctx2) {
-$3=_st(html)._div();
-_st($3)._class_("bar");
-$4=_st($3)._style_("width: 0%");
-self["@bar"]=$4;
-return self["@bar"];
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"renderContentOn:",{html:html},smalltalk.HLProgressBarWidget)})},
-messageSends: ["with:", "label", "span", "class:", "div", "style:"]}),
-smalltalk.HLProgressBarWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "start",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._evaluateAt_((1));
-return self}, function($ctx1) {$ctx1.fill(self,"start",{},smalltalk.HLProgressBarWidget)})},
-messageSends: ["evaluateAt:"]}),
-smalltalk.HLProgressBarWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "updateProgress:",
-fn: function (anInteger){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(_st(self["@bar"])._asJQuery())._css_put_("width",_st(_st(anInteger)._asString()).__comma("%"));
-return self}, function($ctx1) {$ctx1.fill(self,"updateProgress:",{anInteger:anInteger},smalltalk.HLProgressBarWidget)})},
-messageSends: ["css:put:", ",", "asString", "asJQuery"]}),
-smalltalk.HLProgressBarWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "workBlock",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@workBlock"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"workBlock",{},smalltalk.HLProgressBarWidget)})},
-messageSends: []}),
-smalltalk.HLProgressBarWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "workBlock:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@workBlock"]=aBlock;
-return self}, function($ctx1) {$ctx1.fill(self,"workBlock:",{aBlock:aBlock},smalltalk.HLProgressBarWidget)})},
-messageSends: []}),
-smalltalk.HLProgressBarWidget);
-
-
-smalltalk.HLProgressBarWidget.klass.iVarNames = ['default'];
-smalltalk.addMethod(
-smalltalk.method({
-selector: "default",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@default"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@default"]=self._new();
-$1=self["@default"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"default",{},smalltalk.HLProgressBarWidget.klass)})},
-messageSends: ["ifNil:", "new"]}),
-smalltalk.HLProgressBarWidget.klass);
-
-
-smalltalk.addClass('HLSUnit', smalltalk.HLWidget, [], 'Helios-Core');
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "canBeOpenAsTab",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"canBeOpenAsTab",{},smalltalk.HLSUnit.klass)})},
-messageSends: []}),
-smalltalk.HLSUnit.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "tabClass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "sunit";
-}, function($ctx1) {$ctx1.fill(self,"tabClass",{},smalltalk.HLSUnit.klass)})},
-messageSends: []}),
-smalltalk.HLSUnit.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "tabLabel",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "SUnit";
-}, function($ctx1) {$ctx1.fill(self,"tabLabel",{},smalltalk.HLSUnit.klass)})},
-messageSends: []}),
-smalltalk.HLSUnit.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "tabPriority",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return (1000);
-}, function($ctx1) {$ctx1.fill(self,"tabPriority",{},smalltalk.HLSUnit.klass)})},
-messageSends: []}),
-smalltalk.HLSUnit.klass);
-
-});

+ 0 - 703
js/Helios-Debugger.deploy.js

@@ -1,703 +0,0 @@
-define("amber/Helios-Debugger", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/Kernel-Objects", "amber/Helios-Core", "amber/Helios-Workspace", "amber/Kernel-Exceptions"], function(smalltalk,nil,_st){
-smalltalk.addPackage('Helios-Debugger');
-smalltalk.packages["Helios-Debugger"].transport = {"type":"amd","amdNamespace":"amber"};
-
-smalltalk.addClass('HLContextInspectorDecorator', smalltalk.Object, ['context'], 'Helios-Debugger');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "context",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@context"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"context",{},smalltalk.HLContextInspectorDecorator)})},
-messageSends: []}),
-smalltalk.HLContextInspectorDecorator);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "initializeFromContext:",
-fn: function (aContext){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@context"]=aContext;
-return self}, function($ctx1) {$ctx1.fill(self,"initializeFromContext:",{aContext:aContext},smalltalk.HLContextInspectorDecorator)})},
-messageSends: []}),
-smalltalk.HLContextInspectorDecorator);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "inspectOn:",
-fn: function (anInspector){
-var self=this;
-var variables,inspectedContext;
-function $Dictionary(){return smalltalk.Dictionary||(typeof Dictionary=="undefined"?nil:Dictionary)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3;
-variables=_st($Dictionary())._new();
-inspectedContext=self._context();
-_st(variables)._addAll_(_st(inspectedContext)._locals());
-_st((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(inspectedContext)._notNil())._and_((function(){
-return smalltalk.withContext(function($ctx3) {
-return _st(inspectedContext)._isBlockContext();
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._whileTrue_((function(){
-return smalltalk.withContext(function($ctx2) {
-inspectedContext=_st(inspectedContext)._outerContext();
-inspectedContext;
-$1=inspectedContext;
-if(($receiver = $1) == nil || $receiver == undefined){
-return $1;
-} else {
-return _st(variables)._addAll_(_st(inspectedContext)._locals());
-};
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-$2=anInspector;
-_st($2)._setLabel_("Context");
-$3=_st($2)._setVariables_(variables);
-return self}, function($ctx1) {$ctx1.fill(self,"inspectOn:",{anInspector:anInspector,variables:variables,inspectedContext:inspectedContext},smalltalk.HLContextInspectorDecorator)})},
-messageSends: ["new", "context", "addAll:", "locals", "whileTrue:", "outerContext", "ifNotNil:", "and:", "isBlockContext", "notNil", "setLabel:", "setVariables:"]}),
-smalltalk.HLContextInspectorDecorator);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "on:",
-fn: function (aContext){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=self._new();
-_st($2)._initializeFromContext_(aContext);
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"on:",{aContext:aContext},smalltalk.HLContextInspectorDecorator.klass)})},
-messageSends: ["initializeFromContext:", "new", "yourself"]}),
-smalltalk.HLContextInspectorDecorator.klass);
-
-
-smalltalk.addClass('HLDebugger', smalltalk.HLFocusableWidget, ['model', 'stackListWidget', 'codeWidget', 'inspectorWidget'], 'Helios-Debugger');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "codeWidget",
-fn: function (){
-var self=this;
-function $HLDebuggerCodeWidget(){return smalltalk.HLDebuggerCodeWidget||(typeof HLDebuggerCodeWidget=="undefined"?nil:HLDebuggerCodeWidget)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$4,$1;
-$2=self["@codeWidget"];
-if(($receiver = $2) == nil || $receiver == undefined){
-$3=_st($HLDebuggerCodeWidget())._new();
-_st($3)._browserModel_(self._model());
-$4=_st($3)._yourself();
-self["@codeWidget"]=$4;
-$1=self["@codeWidget"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"codeWidget",{},smalltalk.HLDebugger)})},
-messageSends: ["ifNil:", "browserModel:", "model", "new", "yourself"]}),
-smalltalk.HLDebugger);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "focus",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._stackListWidget())._focus();
-return self}, function($ctx1) {$ctx1.fill(self,"focus",{},smalltalk.HLDebugger)})},
-messageSends: ["focus", "stackListWidget"]}),
-smalltalk.HLDebugger);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "initializeFromMethodContext:",
-fn: function (aMethodContext){
-var self=this;
-function $HLDebuggerModel(){return smalltalk.HLDebuggerModel||(typeof HLDebuggerModel=="undefined"?nil:HLDebuggerModel)}
-return smalltalk.withContext(function($ctx1) { 
-self["@model"]=_st($HLDebuggerModel())._on_(aMethodContext);
-self._observeModel();
-return self}, function($ctx1) {$ctx1.fill(self,"initializeFromMethodContext:",{aMethodContext:aMethodContext},smalltalk.HLDebugger)})},
-messageSends: ["on:", "observeModel"]}),
-smalltalk.HLDebugger);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "inspectorWidget",
-fn: function (){
-var self=this;
-function $HLInspectorWidget(){return smalltalk.HLInspectorWidget||(typeof HLInspectorWidget=="undefined"?nil:HLInspectorWidget)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@inspectorWidget"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@inspectorWidget"]=_st($HLInspectorWidget())._new();
-$1=self["@inspectorWidget"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"inspectorWidget",{},smalltalk.HLDebugger)})},
-messageSends: ["ifNil:", "new"]}),
-smalltalk.HLDebugger);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "model",
-fn: function (){
-var self=this;
-function $HLDebuggerModel(){return smalltalk.HLDebuggerModel||(typeof HLDebuggerModel=="undefined"?nil:HLDebuggerModel)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@model"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@model"]=_st($HLDebuggerModel())._new();
-$1=self["@model"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"model",{},smalltalk.HLDebugger)})},
-messageSends: ["ifNil:", "new"]}),
-smalltalk.HLDebugger);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "observeModel",
-fn: function (){
-var self=this;
-function $HLDebuggerContextSelected(){return smalltalk.HLDebuggerContextSelected||(typeof HLDebuggerContextSelected=="undefined"?nil:HLDebuggerContextSelected)}
-return smalltalk.withContext(function($ctx1) { 
-_st(_st(self._model())._announcer())._on_send_to_($HLDebuggerContextSelected(),"onContextSelected:",self);
-return self}, function($ctx1) {$ctx1.fill(self,"observeModel",{},smalltalk.HLDebugger)})},
-messageSends: ["on:send:to:", "announcer", "model"]}),
-smalltalk.HLDebugger);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onContextSelected:",
-fn: function (anAnnouncement){
-var self=this;
-function $HLContextInspectorDecorator(){return smalltalk.HLContextInspectorDecorator||(typeof HLContextInspectorDecorator=="undefined"?nil:HLContextInspectorDecorator)}
-return smalltalk.withContext(function($ctx1) { 
-_st(self._inspectorWidget())._inspect_(_st($HLContextInspectorDecorator())._on_(_st(anAnnouncement)._context()));
-return self}, function($ctx1) {$ctx1.fill(self,"onContextSelected:",{anAnnouncement:anAnnouncement},smalltalk.HLDebugger)})},
-messageSends: ["inspect:", "on:", "context", "inspectorWidget"]}),
-smalltalk.HLDebugger);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "registerBindingsOn:",
-fn: function (aBindingGroup){
-var self=this;
-function $HLToolCommand(){return smalltalk.HLToolCommand||(typeof HLToolCommand=="undefined"?nil:HLToolCommand)}
-return smalltalk.withContext(function($ctx1) { 
-_st($HLToolCommand())._registerConcreteClassesOn_for_(aBindingGroup,self._model());
-return self}, function($ctx1) {$ctx1.fill(self,"registerBindingsOn:",{aBindingGroup:aBindingGroup},smalltalk.HLDebugger)})},
-messageSends: ["registerConcreteClassesOn:for:", "model"]}),
-smalltalk.HLDebugger);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderContentOn:",
-fn: function (html){
-var self=this;
-function $HLVerticalSplitter(){return smalltalk.HLVerticalSplitter||(typeof HLVerticalSplitter=="undefined"?nil:HLVerticalSplitter)}
-function $HLHorizontalSplitter(){return smalltalk.HLHorizontalSplitter||(typeof HLHorizontalSplitter=="undefined"?nil:HLHorizontalSplitter)}
-function $HLContainer(){return smalltalk.HLContainer||(typeof HLContainer=="undefined"?nil:HLContainer)}
-return smalltalk.withContext(function($ctx1) { 
-_st(html)._with_(_st($HLContainer())._with_(_st($HLHorizontalSplitter())._with_with_(self._stackListWidget(),_st($HLVerticalSplitter())._with_with_(self._codeWidget(),self._inspectorWidget()))));
-return self}, function($ctx1) {$ctx1.fill(self,"renderContentOn:",{html:html},smalltalk.HLDebugger)})},
-messageSends: ["with:", "with:with:", "stackListWidget", "codeWidget", "inspectorWidget"]}),
-smalltalk.HLDebugger);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "stackListWidget",
-fn: function (){
-var self=this;
-function $HLStackListWidget(){return smalltalk.HLStackListWidget||(typeof HLStackListWidget=="undefined"?nil:HLStackListWidget)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$4,$1;
-$2=self["@stackListWidget"];
-if(($receiver = $2) == nil || $receiver == undefined){
-$3=_st($HLStackListWidget())._on_(self._model());
-_st($3)._next_(self._codeWidget());
-$4=_st($3)._yourself();
-self["@stackListWidget"]=$4;
-$1=self["@stackListWidget"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"stackListWidget",{},smalltalk.HLDebugger)})},
-messageSends: ["ifNil:", "next:", "codeWidget", "on:", "model", "yourself"]}),
-smalltalk.HLDebugger);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "unregister",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-smalltalk.HLDebugger.superclass.fn.prototype._unregister.apply(_st(self), []);
-_st(self._inspectorWidget())._unregister();
-return self}, function($ctx1) {$ctx1.fill(self,"unregister",{},smalltalk.HLDebugger)})},
-messageSends: ["unregister", "inspectorWidget"]}),
-smalltalk.HLDebugger);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "on:",
-fn: function (aMethodContext){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=self._new();
-_st($2)._initializeFromMethodContext_(aMethodContext);
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"on:",{aMethodContext:aMethodContext},smalltalk.HLDebugger.klass)})},
-messageSends: ["initializeFromMethodContext:", "new", "yourself"]}),
-smalltalk.HLDebugger.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "tabClass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "debugger";
-}, function($ctx1) {$ctx1.fill(self,"tabClass",{},smalltalk.HLDebugger.klass)})},
-messageSends: []}),
-smalltalk.HLDebugger.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "tabLabel",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Debugger";
-}, function($ctx1) {$ctx1.fill(self,"tabLabel",{},smalltalk.HLDebugger.klass)})},
-messageSends: []}),
-smalltalk.HLDebugger.klass);
-
-
-smalltalk.addClass('HLDebuggerCodeWidget', smalltalk.HLBrowserCodeWidget, ['highlightedNode'], 'Helios-Debugger');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "addStopAt:",
-fn: function (anInteger){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self["@editor"])._setGutterMarker_gutter_value_(anInteger,"stops",_st(_st("<div class=\x22stop\x22></stop>"._asJQuery())._toArray())._first());
-return self}, function($ctx1) {$ctx1.fill(self,"addStopAt:",{anInteger:anInteger},smalltalk.HLDebuggerCodeWidget)})},
-messageSends: ["setGutterMarker:gutter:value:", "first", "toArray", "asJQuery"]}),
-smalltalk.HLDebuggerCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "clearHighlight",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-_st(self["@editor"])._clearGutter_("stops");
-$1=self._highlightedNode();
-if(($receiver = $1) == nil || $receiver == undefined){
-$1;
-} else {
-var node;
-node=$receiver;
-_st(self["@editor"])._removeLineClass_where_class_(_st(_st(_st(node)._position())._x()).__minus((1)),"background","highlighted");
-};
-return self}, function($ctx1) {$ctx1.fill(self,"clearHighlight",{},smalltalk.HLDebuggerCodeWidget)})},
-messageSends: ["clearGutter:", "ifNotNil:", "removeLineClass:where:class:", "-", "x", "position", "highlightedNode"]}),
-smalltalk.HLDebuggerCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "contents:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._clearHighlight();
-smalltalk.HLDebuggerCodeWidget.superclass.fn.prototype._contents_.apply(_st(self), [aString]);
-return self}, function($ctx1) {$ctx1.fill(self,"contents:",{aString:aString},smalltalk.HLDebuggerCodeWidget)})},
-messageSends: ["clearHighlight", "contents:"]}),
-smalltalk.HLDebuggerCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "editorOptions",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=smalltalk.HLDebuggerCodeWidget.superclass.fn.prototype._editorOptions.apply(_st(self), []);
-_st($2)._at_put_("gutters",["CodeMirror-linenumbers", "stops"]);
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"editorOptions",{},smalltalk.HLDebuggerCodeWidget)})},
-messageSends: ["at:put:", "editorOptions", "yourself"]}),
-smalltalk.HLDebuggerCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "highlight",
-fn: function (){
-var self=this;
-var anchor,head,selection;
-return smalltalk.withContext(function($ctx1) { 
-head=smalltalk.HashedCollection._from_(["line".__minus_gt(_st(_st(_st(self._highlightedNode())._position())._x()).__minus((1))),"ch".__minus_gt(_st(_st(_st(self._highlightedNode())._position())._y()).__minus((1)))]);
-anchor=smalltalk.HashedCollection._from_(["line".__minus_gt(_st(_st(_st(self._highlightedNode())._extent())._x()).__minus((1))),"ch".__minus_gt(_st(_st(_st(self._highlightedNode())._extent())._y()).__minus((1)))]);
-_st(self["@editor"])._setSelection_to_(head,anchor);
-return self}, function($ctx1) {$ctx1.fill(self,"highlight",{anchor:anchor,head:head,selection:selection},smalltalk.HLDebuggerCodeWidget)})},
-messageSends: ["->", "-", "x", "position", "highlightedNode", "y", "extent", "setSelection:to:"]}),
-smalltalk.HLDebuggerCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "highlightLine:",
-fn: function (anInteger){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self["@editor"])._addLineClass_where_class_(anInteger,"background","highlighted");
-return self}, function($ctx1) {$ctx1.fill(self,"highlightLine:",{anInteger:anInteger},smalltalk.HLDebuggerCodeWidget)})},
-messageSends: ["addLineClass:where:class:"]}),
-smalltalk.HLDebuggerCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "highlightNode:",
-fn: function (aNode){
-var self=this;
-var line;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3;
-$1=aNode;
-if(($receiver = $1) == nil || $receiver == undefined){
-$1;
-} else {
-line=_st(_st(_st(aNode)._position())._x()).__minus((1));
-line;
-$2=self;
-_st($2)._clearHighlight();
-_st($2)._addStopAt_(line);
-_st($2)._highlightLine_(line);
-$3=_st($2)._highlightedNode_(aNode);
-$3;
-};
-return self}, function($ctx1) {$ctx1.fill(self,"highlightNode:",{aNode:aNode,line:line},smalltalk.HLDebuggerCodeWidget)})},
-messageSends: ["ifNotNil:", "-", "x", "position", "clearHighlight", "addStopAt:", "highlightLine:", "highlightedNode:"]}),
-smalltalk.HLDebuggerCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "highlightedNode",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@highlightedNode"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"highlightedNode",{},smalltalk.HLDebuggerCodeWidget)})},
-messageSends: []}),
-smalltalk.HLDebuggerCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "highlightedNode:",
-fn: function (aNode){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@highlightedNode"]=aNode;
-return self}, function($ctx1) {$ctx1.fill(self,"highlightedNode:",{aNode:aNode},smalltalk.HLDebuggerCodeWidget)})},
-messageSends: []}),
-smalltalk.HLDebuggerCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "observeBrowserModel",
-fn: function (){
-var self=this;
-function $HLDebuggerContextSelected(){return smalltalk.HLDebuggerContextSelected||(typeof HLDebuggerContextSelected=="undefined"?nil:HLDebuggerContextSelected)}
-return smalltalk.withContext(function($ctx1) { 
-smalltalk.HLDebuggerCodeWidget.superclass.fn.prototype._observeBrowserModel.apply(_st(self), []);
-_st(_st(self._browserModel())._announcer())._on_send_to_($HLDebuggerContextSelected(),"onContextSelected",self);
-return self}, function($ctx1) {$ctx1.fill(self,"observeBrowserModel",{},smalltalk.HLDebuggerCodeWidget)})},
-messageSends: ["observeBrowserModel", "on:send:to:", "announcer", "browserModel"]}),
-smalltalk.HLDebuggerCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onContextSelected",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._highlightNode_(_st(self._browserModel())._nextNode());
-return self}, function($ctx1) {$ctx1.fill(self,"onContextSelected",{},smalltalk.HLDebuggerCodeWidget)})},
-messageSends: ["highlightNode:", "nextNode", "browserModel"]}),
-smalltalk.HLDebuggerCodeWidget);
-
-
-
-smalltalk.addClass('HLDebuggerModel', smalltalk.HLToolModel, ['rootContext', 'currentContext', 'contexts', 'interpreter'], 'Helios-Debugger');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "contexts",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@contexts"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"contexts",{},smalltalk.HLDebuggerModel)})},
-messageSends: []}),
-smalltalk.HLDebuggerModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "currentContext",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=self["@currentContext"];
-if(($receiver = $1) == nil || $receiver == undefined){
-self._currentContext_(self._rootContext());
-} else {
-$1;
-};
-$2=self["@currentContext"];
-return $2;
-}, function($ctx1) {$ctx1.fill(self,"currentContext",{},smalltalk.HLDebuggerModel)})},
-messageSends: ["ifNil:", "currentContext:", "rootContext"]}),
-smalltalk.HLDebuggerModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "currentContext:",
-fn: function (aContext){
-var self=this;
-function $ASTDebugger(){return smalltalk.ASTDebugger||(typeof ASTDebugger=="undefined"?nil:ASTDebugger)}
-function $HLDebuggerContextSelected(){return smalltalk.HLDebuggerContextSelected||(typeof HLDebuggerContextSelected=="undefined"?nil:HLDebuggerContextSelected)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-self._withChangesDo_((function(){
-return smalltalk.withContext(function($ctx2) {
-self._selectedMethod_(_st(aContext)._method());
-self["@currentContext"]=aContext;
-self["@currentContext"];
-self["@interpreter"]=_st($ASTDebugger())._context_(aContext);
-self["@interpreter"];
-$1=_st($HLDebuggerContextSelected())._new();
-_st($1)._context_(aContext);
-$2=_st($1)._yourself();
-return _st(self._announcer())._announce_($2);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"currentContext:",{aContext:aContext},smalltalk.HLDebuggerModel)})},
-messageSends: ["withChangesDo:", "selectedMethod:", "method", "context:", "announce:", "new", "yourself", "announcer"]}),
-smalltalk.HLDebuggerModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "initializeContexts",
-fn: function (){
-var self=this;
-var context;
-function $OrderedCollection(){return smalltalk.OrderedCollection||(typeof OrderedCollection=="undefined"?nil:OrderedCollection)}
-return smalltalk.withContext(function($ctx1) { 
-self["@contexts"]=_st($OrderedCollection())._new();
-context=self._rootContext();
-_st((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(context)._notNil();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._whileTrue_((function(){
-return smalltalk.withContext(function($ctx2) {
-_st(self["@contexts"])._add_(context);
-context=_st(context)._outerContext();
-return context;
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"initializeContexts",{context:context},smalltalk.HLDebuggerModel)})},
-messageSends: ["new", "rootContext", "whileTrue:", "add:", "outerContext", "notNil"]}),
-smalltalk.HLDebuggerModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "initializeFromContext:",
-fn: function (aMethodContext){
-var self=this;
-function $AIContext(){return smalltalk.AIContext||(typeof AIContext=="undefined"?nil:AIContext)}
-return smalltalk.withContext(function($ctx1) { 
-self["@rootContext"]=_st($AIContext())._fromMethodContext_(aMethodContext);
-self._initializeContexts();
-return self}, function($ctx1) {$ctx1.fill(self,"initializeFromContext:",{aMethodContext:aMethodContext},smalltalk.HLDebuggerModel)})},
-messageSends: ["fromMethodContext:", "initializeContexts"]}),
-smalltalk.HLDebuggerModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "interpreter",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@interpreter"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"interpreter",{},smalltalk.HLDebuggerModel)})},
-messageSends: []}),
-smalltalk.HLDebuggerModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "nextNode",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._interpreter())._nextNode();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"nextNode",{},smalltalk.HLDebuggerModel)})},
-messageSends: ["nextNode", "interpreter"]}),
-smalltalk.HLDebuggerModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "rootContext",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@rootContext"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"rootContext",{},smalltalk.HLDebuggerModel)})},
-messageSends: []}),
-smalltalk.HLDebuggerModel);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "on:",
-fn: function (aMethodContext){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=self._new();
-_st($2)._initializeFromContext_(aMethodContext);
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"on:",{aMethodContext:aMethodContext},smalltalk.HLDebuggerModel.klass)})},
-messageSends: ["initializeFromContext:", "new", "yourself"]}),
-smalltalk.HLDebuggerModel.klass);
-
-
-smalltalk.addClass('HLErrorHandler', smalltalk.ErrorHandler, [], 'Helios-Debugger');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "handleError:",
-fn: function (anError){
-var self=this;
-function $Error(){return smalltalk.Error||(typeof Error=="undefined"?nil:Error)}
-function $ErrorHandler(){return smalltalk.ErrorHandler||(typeof ErrorHandler=="undefined"?nil:ErrorHandler)}
-function $HLDebugger(){return smalltalk.HLDebugger||(typeof HLDebugger=="undefined"?nil:HLDebugger)}
-return smalltalk.withContext(function($ctx1) { 
-self._onErrorHandled();
-_st((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st($HLDebugger())._on_(_st(anError)._context()))._openAsTab();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._on_do_($Error(),(function(error){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st($ErrorHandler())._new())._handleError_(error);
-}, function($ctx2) {$ctx2.fillBlock({error:error},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"handleError:",{anError:anError},smalltalk.HLErrorHandler)})},
-messageSends: ["onErrorHandled", "on:do:", "handleError:", "new", "openAsTab", "on:", "context"]}),
-smalltalk.HLErrorHandler);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onErrorHandled",
-fn: function (){
-var self=this;
-function $HLProgressWidget(){return smalltalk.HLProgressWidget||(typeof HLProgressWidget=="undefined"?nil:HLProgressWidget)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st($HLProgressWidget())._default();
-_st($1)._flush();
-$2=_st($1)._remove();
-return self}, function($ctx1) {$ctx1.fill(self,"onErrorHandled",{},smalltalk.HLErrorHandler)})},
-messageSends: ["flush", "default", "remove"]}),
-smalltalk.HLErrorHandler);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "handleError:",
-fn: function (anError){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._new())._handleError_(anError);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"handleError:",{anError:anError},smalltalk.HLErrorHandler.klass)})},
-messageSends: ["handleError:", "new"]}),
-smalltalk.HLErrorHandler.klass);
-
-
-smalltalk.addClass('HLStackListWidget', smalltalk.HLToolListWidget, [], 'Helios-Debugger');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "items",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@items"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@items"]=_st(self._model())._contexts();
-$1=self["@items"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"items",{},smalltalk.HLStackListWidget)})},
-messageSends: ["ifNil:", "contexts", "model"]}),
-smalltalk.HLStackListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "label",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Call stack";
-}, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.HLStackListWidget)})},
-messageSends: []}),
-smalltalk.HLStackListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selectItem:",
-fn: function (aContext){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._model())._currentContext_(aContext);
-return self}, function($ctx1) {$ctx1.fill(self,"selectItem:",{aContext:aContext},smalltalk.HLStackListWidget)})},
-messageSends: ["currentContext:", "model"]}),
-smalltalk.HLStackListWidget);
-
-
-});

+ 0 - 10
js/Helios-Exceptions.deploy.js

@@ -1,10 +0,0 @@
-define("amber/Helios-Exceptions", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/Kernel-Exceptions"], function(smalltalk,nil,_st){
-smalltalk.addPackage('Helios-Exceptions');
-smalltalk.packages["Helios-Exceptions"].transport = {"type":"amd","amdNamespace":"amber"};
-
-smalltalk.addClass('HLError', smalltalk.Error, [], 'Helios-Exceptions');
-
-
-smalltalk.addClass('HLChangeForbidden', smalltalk.HLError, [], 'Helios-Exceptions');
-
-});

+ 0 - 1063
js/Helios-Inspector.deploy.js

@@ -1,1063 +0,0 @@
-define("amber/Helios-Inspector", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/Helios-Core", "amber/Kernel-Objects"], function(smalltalk,nil,_st){
-smalltalk.addPackage('Helios-Inspector');
-smalltalk.packages["Helios-Inspector"].transport = {"type":"amd","amdNamespace":"amber"};
-
-smalltalk.addClass('HLInspectorDisplayWidget', smalltalk.HLNavigationListWidget, ['model'], 'Helios-Inspector');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "model",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@model"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"model",{},smalltalk.HLInspectorDisplayWidget)})},
-messageSends: []}),
-smalltalk.HLInspectorDisplayWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "model:",
-fn: function (aModel){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@model"]=aModel;
-return self}, function($ctx1) {$ctx1.fill(self,"model:",{aModel:aModel},smalltalk.HLInspectorDisplayWidget)})},
-messageSends: []}),
-smalltalk.HLInspectorDisplayWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderContentOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(_st(html)._div())._with_(self._selectionDisplayString());
-return self}, function($ctx1) {$ctx1.fill(self,"renderContentOn:",{html:html},smalltalk.HLInspectorDisplayWidget)})},
-messageSends: ["with:", "selectionDisplayString", "div"]}),
-smalltalk.HLInspectorDisplayWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selectionDisplayString",
-fn: function (){
-var self=this;
-var selection;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-selection=_st(self["@model"])._selection();
-$2=_st(_st(_st(self["@model"])._variables())._keys())._includes_(selection);
-if(smalltalk.assert($2)){
-$1=_st(_st(self["@model"])._instVarObjectAt_(selection))._printString();
-} else {
-$1="";
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"selectionDisplayString",{selection:selection},smalltalk.HLInspectorDisplayWidget)})},
-messageSends: ["selection", "ifTrue:ifFalse:", "printString", "instVarObjectAt:", "includes:", "keys", "variables"]}),
-smalltalk.HLInspectorDisplayWidget);
-
-
-
-smalltalk.addClass('HLInspectorModel', smalltalk.Object, ['announcer', 'environment', 'inspectee', 'code', 'variables', 'label', 'selection'], 'Helios-Inspector');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "announcer",
-fn: function (){
-var self=this;
-function $Announcer(){return smalltalk.Announcer||(typeof Announcer=="undefined"?nil:Announcer)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@announcer"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@announcer"]=_st($Announcer())._new();
-$1=self["@announcer"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"announcer",{},smalltalk.HLInspectorModel)})},
-messageSends: ["ifNil:", "new"]}),
-smalltalk.HLInspectorModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "code",
-fn: function (){
-var self=this;
-function $HLCodeModel(){return smalltalk.HLCodeModel||(typeof HLCodeModel=="undefined"?nil:HLCodeModel)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@code"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@code"]=_st($HLCodeModel())._on_(self._environment());
-$1=self["@code"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"code",{},smalltalk.HLInspectorModel)})},
-messageSends: ["ifNil:", "on:", "environment"]}),
-smalltalk.HLInspectorModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "environment",
-fn: function (){
-var self=this;
-function $HLManager(){return smalltalk.HLManager||(typeof HLManager=="undefined"?nil:HLManager)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@environment"];
-if(($receiver = $2) == nil || $receiver == undefined){
-$1=_st(_st($HLManager())._current())._environment();
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"environment",{},smalltalk.HLInspectorModel)})},
-messageSends: ["ifNil:", "environment", "current"]}),
-smalltalk.HLInspectorModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "environment:",
-fn: function (anEnvironment){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@environment"]=anEnvironment;
-return self}, function($ctx1) {$ctx1.fill(self,"environment:",{anEnvironment:anEnvironment},smalltalk.HLInspectorModel)})},
-messageSends: []}),
-smalltalk.HLInspectorModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "inspect:on:",
-fn: function (anObject,anInspector){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@inspectee"]=anObject;
-self["@variables"]=[];
-_st(self["@inspectee"])._inspectOn_(anInspector);
-return self}, function($ctx1) {$ctx1.fill(self,"inspect:on:",{anObject:anObject,anInspector:anInspector},smalltalk.HLInspectorModel)})},
-messageSends: ["inspectOn:"]}),
-smalltalk.HLInspectorModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "inspectee",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@inspectee"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"inspectee",{},smalltalk.HLInspectorModel)})},
-messageSends: []}),
-smalltalk.HLInspectorModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "inspectee:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@inspectee"]=anObject;
-return self}, function($ctx1) {$ctx1.fill(self,"inspectee:",{anObject:anObject},smalltalk.HLInspectorModel)})},
-messageSends: []}),
-smalltalk.HLInspectorModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "instVarObjectAt:",
-fn: function (anInstVarName){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._variables())._at_(anInstVarName);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"instVarObjectAt:",{anInstVarName:anInstVarName},smalltalk.HLInspectorModel)})},
-messageSends: ["at:", "variables"]}),
-smalltalk.HLInspectorModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "label",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@label"];
-if(($receiver = $2) == nil || $receiver == undefined){
-$1=_st(self._inspectee())._printString();
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.HLInspectorModel)})},
-messageSends: ["ifNil:", "printString", "inspectee"]}),
-smalltalk.HLInspectorModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "label:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@label"]=aString;
-return self}, function($ctx1) {$ctx1.fill(self,"label:",{aString:aString},smalltalk.HLInspectorModel)})},
-messageSends: []}),
-smalltalk.HLInspectorModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onKeyDown:",
-fn: function (anEvent){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-if(anEvent.ctrlKey) {
-		if(anEvent.keyCode === 80) { //ctrl+p
-			self._printIt();
-			anEvent.preventDefault();
-			return false;
-		}
-		if(anEvent.keyCode === 68) { //ctrl+d
-			self._doIt();
-			anEvent.preventDefault();
-			return false;
-		}
-		if(anEvent.keyCode === 73) { //ctrl+i
-			self._inspectIt();
-			anEvent.preventDefault();
-			return false;
-		}
-	};
-return self}, function($ctx1) {$ctx1.fill(self,"onKeyDown:",{anEvent:anEvent},smalltalk.HLInspectorModel)})},
-messageSends: []}),
-smalltalk.HLInspectorModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selectedInstVar:",
-fn: function (anInstVarName){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._selection_(anInstVarName);
-return self}, function($ctx1) {$ctx1.fill(self,"selectedInstVar:",{anInstVarName:anInstVarName},smalltalk.HLInspectorModel)})},
-messageSends: ["selection:"]}),
-smalltalk.HLInspectorModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selectedInstVarObject",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._instVarObjectAt_(self._selection());
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"selectedInstVarObject",{},smalltalk.HLInspectorModel)})},
-messageSends: ["instVarObjectAt:", "selection"]}),
-smalltalk.HLInspectorModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selection",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@selection"];
-if(($receiver = $2) == nil || $receiver == undefined){
-$1="";
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"selection",{},smalltalk.HLInspectorModel)})},
-messageSends: ["ifNil:"]}),
-smalltalk.HLInspectorModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selection:",
-fn: function (anObject){
-var self=this;
-function $HLInstanceVariableSelected(){return smalltalk.HLInstanceVariableSelected||(typeof HLInstanceVariableSelected=="undefined"?nil:HLInstanceVariableSelected)}
-return smalltalk.withContext(function($ctx1) { 
-self["@selection"]=anObject;
-_st(self._announcer())._announce_(_st($HLInstanceVariableSelected())._on_(self["@selection"]));
-return self}, function($ctx1) {$ctx1.fill(self,"selection:",{anObject:anObject},smalltalk.HLInspectorModel)})},
-messageSends: ["announce:", "on:", "announcer"]}),
-smalltalk.HLInspectorModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "subscribe:",
-fn: function (aWidget){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(aWidget)._subscribeTo_(self._announcer());
-return self}, function($ctx1) {$ctx1.fill(self,"subscribe:",{aWidget:aWidget},smalltalk.HLInspectorModel)})},
-messageSends: ["subscribeTo:", "announcer"]}),
-smalltalk.HLInspectorModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "variables",
-fn: function (){
-var self=this;
-function $Dictionary(){return smalltalk.Dictionary||(typeof Dictionary=="undefined"?nil:Dictionary)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@variables"];
-if(($receiver = $2) == nil || $receiver == undefined){
-$1=_st($Dictionary())._new();
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"variables",{},smalltalk.HLInspectorModel)})},
-messageSends: ["ifNil:", "new"]}),
-smalltalk.HLInspectorModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "variables:",
-fn: function (aCollection){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@variables"]=aCollection;
-return self}, function($ctx1) {$ctx1.fill(self,"variables:",{aCollection:aCollection},smalltalk.HLInspectorModel)})},
-messageSends: []}),
-smalltalk.HLInspectorModel);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "on:",
-fn: function (anEnvironment){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=self._new();
-_st($2)._environment_(anEnvironment);
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"on:",{anEnvironment:anEnvironment},smalltalk.HLInspectorModel.klass)})},
-messageSends: ["environment:", "new", "yourself"]}),
-smalltalk.HLInspectorModel.klass);
-
-
-smalltalk.addClass('HLInspectorVariablesWidget', smalltalk.HLNavigationListWidget, ['announcer', 'model', 'list', 'diveButton'], 'Helios-Inspector');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "announcer",
-fn: function (){
-var self=this;
-function $Announcer(){return smalltalk.Announcer||(typeof Announcer=="undefined"?nil:Announcer)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@announcer"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@announcer"]=_st($Announcer())._new();
-$1=self["@announcer"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"announcer",{},smalltalk.HLInspectorVariablesWidget)})},
-messageSends: ["ifNil:", "new"]}),
-smalltalk.HLInspectorVariablesWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "defaultItems",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._variables();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"defaultItems",{},smalltalk.HLInspectorVariablesWidget)})},
-messageSends: ["variables"]}),
-smalltalk.HLInspectorVariablesWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "label",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._model())._label();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.HLInspectorVariablesWidget)})},
-messageSends: ["label", "model"]}),
-smalltalk.HLInspectorVariablesWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "model",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@model"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"model",{},smalltalk.HLInspectorVariablesWidget)})},
-messageSends: []}),
-smalltalk.HLInspectorVariablesWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "model:",
-fn: function (aModel){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@model"]=aModel;
-return self}, function($ctx1) {$ctx1.fill(self,"model:",{aModel:aModel},smalltalk.HLInspectorVariablesWidget)})},
-messageSends: []}),
-smalltalk.HLInspectorVariablesWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "refresh",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._variables()).__eq(self._items());
-if(! smalltalk.assert($1)){
-self._resetItems();
-smalltalk.HLInspectorVariablesWidget.superclass.fn.prototype._refresh.apply(_st(self), []);
-};
-return self}, function($ctx1) {$ctx1.fill(self,"refresh",{},smalltalk.HLInspectorVariablesWidget)})},
-messageSends: ["ifFalse:", "resetItems", "refresh", "=", "items", "variables"]}),
-smalltalk.HLInspectorVariablesWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderButtonsOn:",
-fn: function (html){
-var self=this;
-function $HLDiveRequested(){return smalltalk.HLDiveRequested||(typeof HLDiveRequested=="undefined"?nil:HLDiveRequested)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st(html)._button();
-_st($1)._class_("btn");
-_st($1)._with_("Dive");
-$2=_st($1)._onClick_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(self._announcer())._announce_(_st($HLDiveRequested())._new());
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-self["@diveButton"]=$2;
-return self}, function($ctx1) {$ctx1.fill(self,"renderButtonsOn:",{html:html},smalltalk.HLInspectorVariablesWidget)})},
-messageSends: ["class:", "button", "with:", "onClick:", "announce:", "new", "announcer"]}),
-smalltalk.HLInspectorVariablesWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderContentOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._renderHeadOn_(html);
-smalltalk.HLInspectorVariablesWidget.superclass.fn.prototype._renderContentOn_.apply(_st(self), [html]);
-return self}, function($ctx1) {$ctx1.fill(self,"renderContentOn:",{html:html},smalltalk.HLInspectorVariablesWidget)})},
-messageSends: ["renderHeadOn:", "renderContentOn:"]}),
-smalltalk.HLInspectorVariablesWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderHeadOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st(html)._div();
-_st($1)._class_("list-label");
-$2=_st($1)._with_(self._label());
-return self}, function($ctx1) {$ctx1.fill(self,"renderHeadOn:",{html:html},smalltalk.HLInspectorVariablesWidget)})},
-messageSends: ["class:", "div", "with:", "label"]}),
-smalltalk.HLInspectorVariablesWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "resetItems",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@items"]=nil;
-return self}, function($ctx1) {$ctx1.fill(self,"resetItems",{},smalltalk.HLInspectorVariablesWidget)})},
-messageSends: []}),
-smalltalk.HLInspectorVariablesWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selectItem:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-smalltalk.HLInspectorVariablesWidget.superclass.fn.prototype._selectItem_.apply(_st(self), [anObject]);
-_st(self._model())._selectedInstVar_(anObject);
-return self}, function($ctx1) {$ctx1.fill(self,"selectItem:",{anObject:anObject},smalltalk.HLInspectorVariablesWidget)})},
-messageSends: ["selectItem:", "selectedInstVar:", "model"]}),
-smalltalk.HLInspectorVariablesWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selection",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self["@model"])._selection();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"selection",{},smalltalk.HLInspectorVariablesWidget)})},
-messageSends: ["selection"]}),
-smalltalk.HLInspectorVariablesWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "variables",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(self._model())._variables())._keys();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"variables",{},smalltalk.HLInspectorVariablesWidget)})},
-messageSends: ["keys", "variables", "model"]}),
-smalltalk.HLInspectorVariablesWidget);
-
-
-
-smalltalk.addClass('HLInspectorWidget', smalltalk.HLWidget, ['model', 'variablesWidget', 'displayWidget', 'codeWidget'], 'Helios-Inspector');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "codeWidget",
-fn: function (){
-var self=this;
-function $HLCodeWidget(){return smalltalk.HLCodeWidget||(typeof HLCodeWidget=="undefined"?nil:HLCodeWidget)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$4,$1;
-$2=self["@codeWidget"];
-if(($receiver = $2) == nil || $receiver == undefined){
-$3=_st($HLCodeWidget())._new();
-_st($3)._model_(_st(self["@model"])._code());
-_st($3)._receiver_(_st(self["@model"])._inspectee());
-$4=_st($3)._yourself();
-self["@codeWidget"]=$4;
-$1=self["@codeWidget"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"codeWidget",{},smalltalk.HLInspectorWidget)})},
-messageSends: ["ifNil:", "model:", "code", "new", "receiver:", "inspectee", "yourself"]}),
-smalltalk.HLInspectorWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "displayWidget",
-fn: function (){
-var self=this;
-function $HLInspectorDisplayWidget(){return smalltalk.HLInspectorDisplayWidget||(typeof HLInspectorDisplayWidget=="undefined"?nil:HLInspectorDisplayWidget)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$4,$1;
-$2=self["@displayWidget"];
-if(($receiver = $2) == nil || $receiver == undefined){
-$3=_st($HLInspectorDisplayWidget())._new();
-_st($3)._model_(self._model());
-$4=_st($3)._yourself();
-self["@displayWidget"]=$4;
-$1=self["@displayWidget"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"displayWidget",{},smalltalk.HLInspectorWidget)})},
-messageSends: ["ifNil:", "model:", "model", "new", "yourself"]}),
-smalltalk.HLInspectorWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "initialize",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-smalltalk.HLInspectorWidget.superclass.fn.prototype._initialize.apply(_st(self), []);
-self._register();
-return self}, function($ctx1) {$ctx1.fill(self,"initialize",{},smalltalk.HLInspectorWidget)})},
-messageSends: ["initialize", "register"]}),
-smalltalk.HLInspectorWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "inspect:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-_st(self._model())._inspect_on_(anObject,self);
-$1=self;
-_st($1)._refreshVariablesWidget();
-$2=_st($1)._refreshDisplayWidget();
-return self}, function($ctx1) {$ctx1.fill(self,"inspect:",{anObject:anObject},smalltalk.HLInspectorWidget)})},
-messageSends: ["inspect:on:", "model", "refreshVariablesWidget", "refreshDisplayWidget"]}),
-smalltalk.HLInspectorWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "inspectee",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._model())._inspectee();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"inspectee",{},smalltalk.HLInspectorWidget)})},
-messageSends: ["inspectee", "model"]}),
-smalltalk.HLInspectorWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "inspectee:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._model())._inspectee_(anObject);
-return self}, function($ctx1) {$ctx1.fill(self,"inspectee:",{anObject:anObject},smalltalk.HLInspectorWidget)})},
-messageSends: ["inspectee:", "model"]}),
-smalltalk.HLInspectorWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "label",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._model())._label();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.HLInspectorWidget)})},
-messageSends: ["label", "model"]}),
-smalltalk.HLInspectorWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "model",
-fn: function (){
-var self=this;
-function $HLInspectorModel(){return smalltalk.HLInspectorModel||(typeof HLInspectorModel=="undefined"?nil:HLInspectorModel)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@model"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self._model_(_st($HLInspectorModel())._new());
-$1=self["@model"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"model",{},smalltalk.HLInspectorWidget)})},
-messageSends: ["ifNil:", "model:", "new"]}),
-smalltalk.HLInspectorWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "model:",
-fn: function (aModel){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-self["@model"]=aModel;
-_st(self._codeWidget())._model_(_st(aModel)._code());
-$1=self;
-_st($1)._observeCodeWidget();
-_st($1)._observeVariablesWidget();
-$2=_st($1)._observeModel();
-return self}, function($ctx1) {$ctx1.fill(self,"model:",{aModel:aModel},smalltalk.HLInspectorWidget)})},
-messageSends: ["model:", "code", "codeWidget", "observeCodeWidget", "observeVariablesWidget", "observeModel"]}),
-smalltalk.HLInspectorWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "observeCodeWidget",
-fn: function (){
-var self=this;
-function $HLDoItExecuted(){return smalltalk.HLDoItExecuted||(typeof HLDoItExecuted=="undefined"?nil:HLDoItExecuted)}
-return smalltalk.withContext(function($ctx1) { 
-_st(_st(self._codeWidget())._announcer())._on_do_($HLDoItExecuted(),(function(){
-return smalltalk.withContext(function($ctx2) {
-return self._onDoneIt();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"observeCodeWidget",{},smalltalk.HLInspectorWidget)})},
-messageSends: ["on:do:", "onDoneIt", "announcer", "codeWidget"]}),
-smalltalk.HLInspectorWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "observeModel",
-fn: function (){
-var self=this;
-function $HLInstanceVariableSelected(){return smalltalk.HLInstanceVariableSelected||(typeof HLInstanceVariableSelected=="undefined"?nil:HLInstanceVariableSelected)}
-return smalltalk.withContext(function($ctx1) { 
-_st(_st(self._model())._announcer())._on_send_to_($HLInstanceVariableSelected(),"onInstanceVariableSelected",self);
-return self}, function($ctx1) {$ctx1.fill(self,"observeModel",{},smalltalk.HLInspectorWidget)})},
-messageSends: ["on:send:to:", "announcer", "model"]}),
-smalltalk.HLInspectorWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "observeVariablesWidget",
-fn: function (){
-var self=this;
-function $HLDiveRequested(){return smalltalk.HLDiveRequested||(typeof HLDiveRequested=="undefined"?nil:HLDiveRequested)}
-return smalltalk.withContext(function($ctx1) { 
-_st(_st(self._variablesWidget())._announcer())._on_do_($HLDiveRequested(),(function(){
-return smalltalk.withContext(function($ctx2) {
-return self._onDive();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"observeVariablesWidget",{},smalltalk.HLInspectorWidget)})},
-messageSends: ["on:do:", "onDive", "announcer", "variablesWidget"]}),
-smalltalk.HLInspectorWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onDive",
-fn: function (){
-var self=this;
-function $HLInspector(){return smalltalk.HLInspector||(typeof HLInspector=="undefined"?nil:HLInspector)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st($HLInspector())._new();
-_st($1)._inspect_(_st(self._model())._selectedInstVarObject());
-$2=_st($1)._openAsTab();
-return self}, function($ctx1) {$ctx1.fill(self,"onDive",{},smalltalk.HLInspectorWidget)})},
-messageSends: ["inspect:", "selectedInstVarObject", "model", "new", "openAsTab"]}),
-smalltalk.HLInspectorWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onDoneIt",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._refresh();
-return self}, function($ctx1) {$ctx1.fill(self,"onDoneIt",{},smalltalk.HLInspectorWidget)})},
-messageSends: ["refresh"]}),
-smalltalk.HLInspectorWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onInspectIt",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self}, function($ctx1) {$ctx1.fill(self,"onInspectIt",{},smalltalk.HLInspectorWidget)})},
-messageSends: []}),
-smalltalk.HLInspectorWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onInstanceVariableSelected",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._codeWidget())._receiver_(_st(self._model())._selectedInstVarObject());
-self._refreshDisplayWidget();
-return self}, function($ctx1) {$ctx1.fill(self,"onInstanceVariableSelected",{},smalltalk.HLInspectorWidget)})},
-messageSends: ["receiver:", "selectedInstVarObject", "model", "codeWidget", "refreshDisplayWidget"]}),
-smalltalk.HLInspectorWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onPrintIt",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self}, function($ctx1) {$ctx1.fill(self,"onPrintIt",{},smalltalk.HLInspectorWidget)})},
-messageSends: []}),
-smalltalk.HLInspectorWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "refresh",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._inspect_(self._inspectee());
-return self}, function($ctx1) {$ctx1.fill(self,"refresh",{},smalltalk.HLInspectorWidget)})},
-messageSends: ["inspect:", "inspectee"]}),
-smalltalk.HLInspectorWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "refreshDisplayWidget",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._displayWidget())._refresh();
-return self}, function($ctx1) {$ctx1.fill(self,"refreshDisplayWidget",{},smalltalk.HLInspectorWidget)})},
-messageSends: ["refresh", "displayWidget"]}),
-smalltalk.HLInspectorWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "refreshVariablesWidget",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._variablesWidget())._refresh();
-return self}, function($ctx1) {$ctx1.fill(self,"refreshVariablesWidget",{},smalltalk.HLInspectorWidget)})},
-messageSends: ["refresh", "variablesWidget"]}),
-smalltalk.HLInspectorWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "register",
-fn: function (){
-var self=this;
-function $HLInspector(){return smalltalk.HLInspector||(typeof HLInspector=="undefined"?nil:HLInspector)}
-return smalltalk.withContext(function($ctx1) { 
-_st($HLInspector())._register_(self);
-return self}, function($ctx1) {$ctx1.fill(self,"register",{},smalltalk.HLInspectorWidget)})},
-messageSends: ["register:"]}),
-smalltalk.HLInspectorWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderContentOn:",
-fn: function (html){
-var self=this;
-function $HLVerticalSplitter(){return smalltalk.HLVerticalSplitter||(typeof HLVerticalSplitter=="undefined"?nil:HLVerticalSplitter)}
-function $HLHorizontalSplitter(){return smalltalk.HLHorizontalSplitter||(typeof HLHorizontalSplitter=="undefined"?nil:HLHorizontalSplitter)}
-return smalltalk.withContext(function($ctx1) { 
-_st(html)._with_(_st($HLHorizontalSplitter())._with_with_(_st($HLVerticalSplitter())._with_with_(self._variablesWidget(),self._displayWidget()),self._codeWidget()));
-return self}, function($ctx1) {$ctx1.fill(self,"renderContentOn:",{html:html},smalltalk.HLInspectorWidget)})},
-messageSends: ["with:", "with:with:", "variablesWidget", "displayWidget", "codeWidget"]}),
-smalltalk.HLInspectorWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "setLabel:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._model())._label_(aString);
-return self}, function($ctx1) {$ctx1.fill(self,"setLabel:",{aString:aString},smalltalk.HLInspectorWidget)})},
-messageSends: ["label:", "model"]}),
-smalltalk.HLInspectorWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "setVariables:",
-fn: function (aDictionary){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._model())._variables_(aDictionary);
-return self}, function($ctx1) {$ctx1.fill(self,"setVariables:",{aDictionary:aDictionary},smalltalk.HLInspectorWidget)})},
-messageSends: ["variables:", "model"]}),
-smalltalk.HLInspectorWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "tabLabel",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Inspector";
-}, function($ctx1) {$ctx1.fill(self,"tabLabel",{},smalltalk.HLInspectorWidget)})},
-messageSends: []}),
-smalltalk.HLInspectorWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "unregister",
-fn: function (){
-var self=this;
-function $HLInspector(){return smalltalk.HLInspector||(typeof HLInspector=="undefined"?nil:HLInspector)}
-return smalltalk.withContext(function($ctx1) { 
-smalltalk.HLInspectorWidget.superclass.fn.prototype._unregister.apply(_st(self), []);
-_st($HLInspector())._unregister_(self);
-return self}, function($ctx1) {$ctx1.fill(self,"unregister",{},smalltalk.HLInspectorWidget)})},
-messageSends: ["unregister", "unregister:"]}),
-smalltalk.HLInspectorWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "variablesWidget",
-fn: function (){
-var self=this;
-function $HLInspectorVariablesWidget(){return smalltalk.HLInspectorVariablesWidget||(typeof HLInspectorVariablesWidget=="undefined"?nil:HLInspectorVariablesWidget)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$4,$1;
-$2=self["@variablesWidget"];
-if(($receiver = $2) == nil || $receiver == undefined){
-$3=_st($HLInspectorVariablesWidget())._new();
-_st($3)._model_(self._model());
-$4=_st($3)._yourself();
-self["@variablesWidget"]=$4;
-$1=self["@variablesWidget"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"variablesWidget",{},smalltalk.HLInspectorWidget)})},
-messageSends: ["ifNil:", "model:", "model", "new", "yourself"]}),
-smalltalk.HLInspectorWidget);
-
-
-
-smalltalk.addClass('HLInspector', smalltalk.HLInspectorWidget, [], 'Helios-Inspector');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderContentOn:",
-fn: function (html){
-var self=this;
-function $HLVerticalSplitter(){return smalltalk.HLVerticalSplitter||(typeof HLVerticalSplitter=="undefined"?nil:HLVerticalSplitter)}
-function $HLHorizontalSplitter(){return smalltalk.HLHorizontalSplitter||(typeof HLHorizontalSplitter=="undefined"?nil:HLHorizontalSplitter)}
-function $HLContainer(){return smalltalk.HLContainer||(typeof HLContainer=="undefined"?nil:HLContainer)}
-return smalltalk.withContext(function($ctx1) { 
-_st(html)._with_(_st($HLContainer())._with_(_st($HLHorizontalSplitter())._with_with_(_st($HLVerticalSplitter())._with_with_(self._variablesWidget(),self._displayWidget()),self._codeWidget())));
-_st(self._variablesWidget())._focus();
-return self}, function($ctx1) {$ctx1.fill(self,"renderContentOn:",{html:html},smalltalk.HLInspector)})},
-messageSends: ["with:", "with:with:", "variablesWidget", "displayWidget", "codeWidget", "focus"]}),
-smalltalk.HLInspector);
-
-
-smalltalk.HLInspector.klass.iVarNames = ['inspectors'];
-smalltalk.addMethod(
-smalltalk.method({
-selector: "canBeOpenAsTab",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return false;
-}, function($ctx1) {$ctx1.fill(self,"canBeOpenAsTab",{},smalltalk.HLInspector.klass)})},
-messageSends: []}),
-smalltalk.HLInspector.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "initialize",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-smalltalk.HLInspector.klass.superclass.fn.prototype._initialize.apply(_st(self), []);
-self._watchChanges();
-return self}, function($ctx1) {$ctx1.fill(self,"initialize",{},smalltalk.HLInspector.klass)})},
-messageSends: ["initialize", "watchChanges"]}),
-smalltalk.HLInspector.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "inspect:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=self._new();
-_st($1)._inspect_(anObject);
-$2=_st($1)._openAsTab();
-return self}, function($ctx1) {$ctx1.fill(self,"inspect:",{anObject:anObject},smalltalk.HLInspector.klass)})},
-messageSends: ["inspect:", "new", "openAsTab"]}),
-smalltalk.HLInspector.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "inspectors",
-fn: function (){
-var self=this;
-function $OrderedCollection(){return smalltalk.OrderedCollection||(typeof OrderedCollection=="undefined"?nil:OrderedCollection)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@inspectors"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@inspectors"]=_st($OrderedCollection())._new();
-$1=self["@inspectors"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"inspectors",{},smalltalk.HLInspector.klass)})},
-messageSends: ["ifNil:", "new"]}),
-smalltalk.HLInspector.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "register:",
-fn: function (anInspector){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._inspectors())._add_(anInspector);
-return self}, function($ctx1) {$ctx1.fill(self,"register:",{anInspector:anInspector},smalltalk.HLInspector.klass)})},
-messageSends: ["add:", "inspectors"]}),
-smalltalk.HLInspector.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "tabClass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "inspector";
-}, function($ctx1) {$ctx1.fill(self,"tabClass",{},smalltalk.HLInspector.klass)})},
-messageSends: []}),
-smalltalk.HLInspector.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "tabLabel",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Inspector";
-}, function($ctx1) {$ctx1.fill(self,"tabLabel",{},smalltalk.HLInspector.klass)})},
-messageSends: []}),
-smalltalk.HLInspector.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "tabPriority",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return (10);
-}, function($ctx1) {$ctx1.fill(self,"tabPriority",{},smalltalk.HLInspector.klass)})},
-messageSends: []}),
-smalltalk.HLInspector.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "unregister:",
-fn: function (anInspector){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._inspectors())._remove_(anInspector);
-return self}, function($ctx1) {$ctx1.fill(self,"unregister:",{anInspector:anInspector},smalltalk.HLInspector.klass)})},
-messageSends: ["remove:", "inspectors"]}),
-smalltalk.HLInspector.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "watchChanges",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(self._inspectors())._do_((function(each){
-return smalltalk.withContext(function($ctx3) {
-return _st(each)._refresh();
-}, function($ctx3) {$ctx3.fillBlock({each:each},$ctx2)})}));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._valueWithInterval_((500));
-return self}, function($ctx1) {$ctx1.fill(self,"watchChanges",{},smalltalk.HLInspector.klass)})},
-messageSends: ["valueWithInterval:", "do:", "refresh", "inspectors"]}),
-smalltalk.HLInspector.klass);
-
-});

+ 0 - 1729
js/Helios-KeyBindings.deploy.js

@@ -1,1729 +0,0 @@
-define("amber/Helios-KeyBindings", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/Kernel-Objects", "amber/Helios-Core"], function(smalltalk,nil,_st){
-smalltalk.addPackage('Helios-KeyBindings');
-smalltalk.packages["Helios-KeyBindings"].transport = {"type":"amd","amdNamespace":"amber"};
-
-smalltalk.addClass('HLBinding', smalltalk.Object, ['key', 'label'], 'Helios-KeyBindings');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "apply",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self}, function($ctx1) {$ctx1.fill(self,"apply",{},smalltalk.HLBinding)})},
-messageSends: []}),
-smalltalk.HLBinding);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "atKey:",
-fn: function (aKey){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return nil;
-}, function($ctx1) {$ctx1.fill(self,"atKey:",{aKey:aKey},smalltalk.HLBinding)})},
-messageSends: []}),
-smalltalk.HLBinding);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "displayLabel",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._label();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"displayLabel",{},smalltalk.HLBinding)})},
-messageSends: ["label"]}),
-smalltalk.HLBinding);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isActive",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._subclassResponsibility();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"isActive",{},smalltalk.HLBinding)})},
-messageSends: ["subclassResponsibility"]}),
-smalltalk.HLBinding);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "key",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@key"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"key",{},smalltalk.HLBinding)})},
-messageSends: []}),
-smalltalk.HLBinding);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "key:",
-fn: function (anInteger){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@key"]=anInteger;
-return self}, function($ctx1) {$ctx1.fill(self,"key:",{anInteger:anInteger},smalltalk.HLBinding)})},
-messageSends: []}),
-smalltalk.HLBinding);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "label",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@label"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.HLBinding)})},
-messageSends: []}),
-smalltalk.HLBinding);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "label:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@label"]=aString;
-return self}, function($ctx1) {$ctx1.fill(self,"label:",{aString:aString},smalltalk.HLBinding)})},
-messageSends: []}),
-smalltalk.HLBinding);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "release",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self}, function($ctx1) {$ctx1.fill(self,"release",{},smalltalk.HLBinding)})},
-messageSends: []}),
-smalltalk.HLBinding);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderOn:html:",
-fn: function (aBindingHelper,html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self}, function($ctx1) {$ctx1.fill(self,"renderOn:html:",{aBindingHelper:aBindingHelper,html:html},smalltalk.HLBinding)})},
-messageSends: []}),
-smalltalk.HLBinding);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "shortcut",
-fn: function (){
-var self=this;
-function $String(){return smalltalk.String||(typeof String=="undefined"?nil:String)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st($String())._fromCharCode_(self._key());
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"shortcut",{},smalltalk.HLBinding)})},
-messageSends: ["fromCharCode:", "key"]}),
-smalltalk.HLBinding);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "on:labelled:",
-fn: function (anInteger,aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=self._new();
-_st($2)._key_(anInteger);
-_st($2)._label_(aString);
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"on:labelled:",{anInteger:anInteger,aString:aString},smalltalk.HLBinding.klass)})},
-messageSends: ["key:", "new", "label:", "yourself"]}),
-smalltalk.HLBinding.klass);
-
-
-smalltalk.addClass('HLBindingAction', smalltalk.HLBinding, ['command'], 'Helios-KeyBindings');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "apply",
-fn: function (){
-var self=this;
-function $HLKeyBinder(){return smalltalk.HLKeyBinder||(typeof HLKeyBinder=="undefined"?nil:HLKeyBinder)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._command())._isInputRequired();
-if(smalltalk.assert($1)){
-_st(_st(_st($HLKeyBinder())._current())._helper())._showWidget_(self._inputWidget());
-} else {
-self._executeCommand();
-};
-return self}, function($ctx1) {$ctx1.fill(self,"apply",{},smalltalk.HLBindingAction)})},
-messageSends: ["ifTrue:ifFalse:", "showWidget:", "inputWidget", "helper", "current", "executeCommand", "isInputRequired", "command"]}),
-smalltalk.HLBindingAction);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "command",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@command"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"command",{},smalltalk.HLBindingAction)})},
-messageSends: []}),
-smalltalk.HLBindingAction);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "command:",
-fn: function (aCommand){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@command"]=aCommand;
-return self}, function($ctx1) {$ctx1.fill(self,"command:",{aCommand:aCommand},smalltalk.HLBindingAction)})},
-messageSends: []}),
-smalltalk.HLBindingAction);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "executeCommand",
-fn: function (){
-var self=this;
-function $HLKeyBinder(){return smalltalk.HLKeyBinder||(typeof HLKeyBinder=="undefined"?nil:HLKeyBinder)}
-return smalltalk.withContext(function($ctx1) { 
-_st(self._command())._execute();
-_st(_st($HLKeyBinder())._current())._deactivate();
-return self}, function($ctx1) {$ctx1.fill(self,"executeCommand",{},smalltalk.HLBindingAction)})},
-messageSends: ["execute", "command", "deactivate", "current"]}),
-smalltalk.HLBindingAction);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "input:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._command())._input_(aString);
-return self}, function($ctx1) {$ctx1.fill(self,"input:",{aString:aString},smalltalk.HLBindingAction)})},
-messageSends: ["input:", "command"]}),
-smalltalk.HLBindingAction);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "inputBinding",
-fn: function (){
-var self=this;
-function $HLBindingInput(){return smalltalk.HLBindingInput||(typeof HLBindingInput=="undefined"?nil:HLBindingInput)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$4,$5,$1;
-$2=_st($HLBindingInput())._new();
-_st($2)._label_(_st(self._command())._inputLabel());
-_st($2)._ghostText_(_st(self._command())._displayLabel());
-_st($2)._defaultValue_(_st(self._command())._defaultInput());
-_st($2)._inputCompletion_(_st(self._command())._inputCompletion());
-_st($2)._callback_((function(val){
-return smalltalk.withContext(function($ctx2) {
-$3=self._command();
-_st($3)._input_(val);
-$4=_st($3)._execute();
-return $4;
-}, function($ctx2) {$ctx2.fillBlock({val:val},$ctx1)})}));
-$5=_st($2)._yourself();
-$1=$5;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"inputBinding",{},smalltalk.HLBindingAction)})},
-messageSends: ["label:", "inputLabel", "command", "new", "ghostText:", "displayLabel", "defaultValue:", "defaultInput", "inputCompletion:", "inputCompletion", "callback:", "input:", "execute", "yourself"]}),
-smalltalk.HLBindingAction);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "inputWidget",
-fn: function (){
-var self=this;
-function $HLBindingActionInputWidget(){return smalltalk.HLBindingActionInputWidget||(typeof HLBindingActionInputWidget=="undefined"?nil:HLBindingActionInputWidget)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$4,$5,$1;
-$2=_st($HLBindingActionInputWidget())._new();
-_st($2)._ghostText_(_st(self._command())._displayLabel());
-_st($2)._defaultValue_(_st(self._command())._defaultInput());
-_st($2)._inputCompletion_(_st(self._command())._inputCompletion());
-_st($2)._callback_((function(value){
-return smalltalk.withContext(function($ctx2) {
-$3=self;
-_st($3)._input_(value);
-$4=_st($3)._executeCommand();
-return $4;
-}, function($ctx2) {$ctx2.fillBlock({value:value},$ctx1)})}));
-$5=_st($2)._yourself();
-$1=$5;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"inputWidget",{},smalltalk.HLBindingAction)})},
-messageSends: ["ghostText:", "displayLabel", "command", "new", "defaultValue:", "defaultInput", "inputCompletion:", "inputCompletion", "callback:", "input:", "executeCommand", "yourself"]}),
-smalltalk.HLBindingAction);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isActive",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._command())._isActive();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"isActive",{},smalltalk.HLBindingAction)})},
-messageSends: ["isActive", "command"]}),
-smalltalk.HLBindingAction);
-
-
-
-smalltalk.addClass('HLBindingGroup', smalltalk.HLBinding, ['bindings'], 'Helios-KeyBindings');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "activeBindings",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._bindings())._select_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(each)._isActive();
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"activeBindings",{},smalltalk.HLBindingGroup)})},
-messageSends: ["select:", "isActive", "bindings"]}),
-smalltalk.HLBindingGroup);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "add:",
-fn: function (aBinding){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._bindings())._add_(aBinding);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"add:",{aBinding:aBinding},smalltalk.HLBindingGroup)})},
-messageSends: ["add:", "bindings"]}),
-smalltalk.HLBindingGroup);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "addActionKey:labelled:callback:",
-fn: function (anInteger,aString,aBlock){
-var self=this;
-function $HLBindingAction(){return smalltalk.HLBindingAction||(typeof HLBindingAction=="undefined"?nil:HLBindingAction)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st($HLBindingAction())._on_labelled_(anInteger,aString);
-_st($1)._callback_(aBlock);
-$2=_st($1)._yourself();
-self._add_($2);
-return self}, function($ctx1) {$ctx1.fill(self,"addActionKey:labelled:callback:",{anInteger:anInteger,aString:aString,aBlock:aBlock},smalltalk.HLBindingGroup)})},
-messageSends: ["add:", "callback:", "on:labelled:", "yourself"]}),
-smalltalk.HLBindingGroup);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "addGroupKey:labelled:",
-fn: function (anInteger,aString){
-var self=this;
-function $HLBindingGroup(){return smalltalk.HLBindingGroup||(typeof HLBindingGroup=="undefined"?nil:HLBindingGroup)}
-return smalltalk.withContext(function($ctx1) { 
-self._add_(_st($HLBindingGroup())._on_labelled_(anInteger,aString));
-return self}, function($ctx1) {$ctx1.fill(self,"addGroupKey:labelled:",{anInteger:anInteger,aString:aString},smalltalk.HLBindingGroup)})},
-messageSends: ["add:", "on:labelled:"]}),
-smalltalk.HLBindingGroup);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "at:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._bindings())._detect_ifNone_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(each)._label()).__eq(aString);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}),(function(){
-return smalltalk.withContext(function($ctx2) {
-return nil;
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"at:",{aString:aString},smalltalk.HLBindingGroup)})},
-messageSends: ["detect:ifNone:", "=", "label", "bindings"]}),
-smalltalk.HLBindingGroup);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "at:add:",
-fn: function (aString,aBinding){
-var self=this;
-var binding;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-binding=self._at_(aString);
-$1=binding;
-if(($receiver = $1) == nil || $receiver == undefined){
-$2=self;
-return $2;
-} else {
-$1;
-};
-_st(binding)._add_(aBinding);
-return self}, function($ctx1) {$ctx1.fill(self,"at:add:",{aString:aString,aBinding:aBinding,binding:binding},smalltalk.HLBindingGroup)})},
-messageSends: ["at:", "ifNil:", "add:"]}),
-smalltalk.HLBindingGroup);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "atKey:",
-fn: function (anInteger){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._bindings())._detect_ifNone_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(each)._key()).__eq(anInteger);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}),(function(){
-return smalltalk.withContext(function($ctx2) {
-return nil;
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"atKey:",{anInteger:anInteger},smalltalk.HLBindingGroup)})},
-messageSends: ["detect:ifNone:", "=", "key", "bindings"]}),
-smalltalk.HLBindingGroup);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "bindings",
-fn: function (){
-var self=this;
-function $OrderedCollection(){return smalltalk.OrderedCollection||(typeof OrderedCollection=="undefined"?nil:OrderedCollection)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@bindings"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@bindings"]=_st($OrderedCollection())._new();
-$1=self["@bindings"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"bindings",{},smalltalk.HLBindingGroup)})},
-messageSends: ["ifNil:", "new"]}),
-smalltalk.HLBindingGroup);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "displayLabel",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(smalltalk.HLBindingGroup.superclass.fn.prototype._displayLabel.apply(_st(self), [])).__comma("...");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"displayLabel",{},smalltalk.HLBindingGroup)})},
-messageSends: [",", "displayLabel"]}),
-smalltalk.HLBindingGroup);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isActive",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._activeBindings())._notEmpty();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"isActive",{},smalltalk.HLBindingGroup)})},
-messageSends: ["notEmpty", "activeBindings"]}),
-smalltalk.HLBindingGroup);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "release",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._bindings())._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(each)._release();
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"release",{},smalltalk.HLBindingGroup)})},
-messageSends: ["do:", "release", "bindings"]}),
-smalltalk.HLBindingGroup);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderOn:html:",
-fn: function (aBindingHelper,html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._isActive();
-if(smalltalk.assert($1)){
-_st(aBindingHelper)._renderBindingGroup_on_(self,html);
-};
-return self}, function($ctx1) {$ctx1.fill(self,"renderOn:html:",{aBindingHelper:aBindingHelper,html:html},smalltalk.HLBindingGroup)})},
-messageSends: ["ifTrue:", "renderBindingGroup:on:", "isActive"]}),
-smalltalk.HLBindingGroup);
-
-
-
-smalltalk.addClass('HLBindingActionInputWidget', smalltalk.HLWidget, ['input', 'callback', 'status', 'wrapper', 'ghostText', 'message', 'inputCompletion', 'defaultValue', 'messageTag'], 'Helios-KeyBindings');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "callback",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@callback"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@callback"]=(function(value){
-return smalltalk.withContext(function($ctx2) {
-}, function($ctx2) {$ctx2.fillBlock({value:value},$ctx1)})});
-$1=self["@callback"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"callback",{},smalltalk.HLBindingActionInputWidget)})},
-messageSends: ["ifNil:"]}),
-smalltalk.HLBindingActionInputWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "callback:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@callback"]=aBlock;
-return self}, function($ctx1) {$ctx1.fill(self,"callback:",{aBlock:aBlock},smalltalk.HLBindingActionInputWidget)})},
-messageSends: []}),
-smalltalk.HLBindingActionInputWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "clearStatus",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._status_("info");
-self._message_("");
-self._refresh();
-return self}, function($ctx1) {$ctx1.fill(self,"clearStatus",{},smalltalk.HLBindingActionInputWidget)})},
-messageSends: ["status:", "message:", "refresh"]}),
-smalltalk.HLBindingActionInputWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "defaultValue",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@defaultValue"];
-if(($receiver = $2) == nil || $receiver == undefined){
-$1="";
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"defaultValue",{},smalltalk.HLBindingActionInputWidget)})},
-messageSends: ["ifNil:"]}),
-smalltalk.HLBindingActionInputWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "defaultValue:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@defaultValue"]=aString;
-return self}, function($ctx1) {$ctx1.fill(self,"defaultValue:",{aString:aString},smalltalk.HLBindingActionInputWidget)})},
-messageSends: []}),
-smalltalk.HLBindingActionInputWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "errorStatus",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._status_("error");
-self._refresh();
-return self}, function($ctx1) {$ctx1.fill(self,"errorStatus",{},smalltalk.HLBindingActionInputWidget)})},
-messageSends: ["status:", "refresh"]}),
-smalltalk.HLBindingActionInputWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "evaluate:",
-fn: function (aString){
-var self=this;
-function $Error(){return smalltalk.Error||(typeof Error=="undefined"?nil:Error)}
-return smalltalk.withContext(function($ctx1) { 
-_st((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(self._callback())._value_(aString);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._on_do_($Error(),(function(ex){
-return smalltalk.withContext(function($ctx2) {
-_st(_st(self._input())._asJQuery())._one_do_("keydown",(function(){
-return smalltalk.withContext(function($ctx3) {
-return self._clearStatus();
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-self._message_(_st(ex)._messageText());
-return self._errorStatus();
-}, function($ctx2) {$ctx2.fillBlock({ex:ex},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"evaluate:",{aString:aString},smalltalk.HLBindingActionInputWidget)})},
-messageSends: ["on:do:", "one:do:", "clearStatus", "asJQuery", "input", "message:", "messageText", "errorStatus", "value:", "callback"]}),
-smalltalk.HLBindingActionInputWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "ghostText",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@ghostText"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"ghostText",{},smalltalk.HLBindingActionInputWidget)})},
-messageSends: []}),
-smalltalk.HLBindingActionInputWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "ghostText:",
-fn: function (aText){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@ghostText"]=aText;
-return self}, function($ctx1) {$ctx1.fill(self,"ghostText:",{aText:aText},smalltalk.HLBindingActionInputWidget)})},
-messageSends: []}),
-smalltalk.HLBindingActionInputWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "input",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@input"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"input",{},smalltalk.HLBindingActionInputWidget)})},
-messageSends: []}),
-smalltalk.HLBindingActionInputWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "inputCompletion",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@inputCompletion"];
-if(($receiver = $2) == nil || $receiver == undefined){
-$1=[];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"inputCompletion",{},smalltalk.HLBindingActionInputWidget)})},
-messageSends: ["ifNil:"]}),
-smalltalk.HLBindingActionInputWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "inputCompletion:",
-fn: function (aCollection){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@inputCompletion"]=aCollection;
-return self}, function($ctx1) {$ctx1.fill(self,"inputCompletion:",{aCollection:aCollection},smalltalk.HLBindingActionInputWidget)})},
-messageSends: []}),
-smalltalk.HLBindingActionInputWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "message",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@message"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@message"]="";
-$1=self["@message"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"message",{},smalltalk.HLBindingActionInputWidget)})},
-messageSends: ["ifNil:"]}),
-smalltalk.HLBindingActionInputWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "message:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@message"]=aString;
-return self}, function($ctx1) {$ctx1.fill(self,"message:",{aString:aString},smalltalk.HLBindingActionInputWidget)})},
-messageSends: []}),
-smalltalk.HLBindingActionInputWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "refresh",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=self["@wrapper"];
-if(($receiver = $1) == nil || $receiver == undefined){
-$2=self;
-return $2;
-} else {
-$1;
-};
-_st(self["@wrapper"])._class_(self._status());
-_st(self["@messageTag"])._contents_(self._message());
-return self}, function($ctx1) {$ctx1.fill(self,"refresh",{},smalltalk.HLBindingActionInputWidget)})},
-messageSends: ["ifNil:", "class:", "status", "contents:", "message"]}),
-smalltalk.HLBindingActionInputWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$4,$6,$5,$7,$8,$3;
-$1=self["@wrapper"];
-if(($receiver = $1) == nil || $receiver == undefined){
-self["@wrapper"]=_st(html)._span();
-self["@wrapper"];
-} else {
-$1;
-};
-$2=self["@wrapper"];
-_st($2)._class_(self._status());
-$3=_st($2)._with_((function(){
-return smalltalk.withContext(function($ctx2) {
-$4=_st(html)._input();
-_st($4)._placeholder_(self._ghostText());
-_st($4)._value_(self._defaultValue());
-$5=_st($4)._onKeyDown_(_st((function(event){
-return smalltalk.withContext(function($ctx3) {
-$6=_st(_st(event)._which()).__eq((13));
-if(smalltalk.assert($6)){
-return self._evaluate_(_st(_st(self["@input"])._asJQuery())._val());
-};
-}, function($ctx3) {$ctx3.fillBlock({event:event},$ctx2)})}))._yourself());
-self["@input"]=$5;
-self["@input"];
-_st(_st(self["@input"])._asJQuery())._typeahead_(smalltalk.HashedCollection._from_(["source".__minus_gt(self._inputCompletion())]));
-$7=_st(html)._span();
-_st($7)._class_("help-inline");
-_st($7)._with_(self._message());
-$8=_st($7)._yourself();
-self["@messageTag"]=$8;
-return self["@messageTag"];
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-_st((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(self["@input"])._asJQuery())._focus();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._valueWithTimeout_((10));
-return self}, function($ctx1) {$ctx1.fill(self,"renderOn:",{html:html},smalltalk.HLBindingActionInputWidget)})},
-messageSends: ["ifNil:", "span", "class:", "status", "with:", "placeholder:", "ghostText", "input", "value:", "defaultValue", "onKeyDown:", "yourself", "ifTrue:", "evaluate:", "val", "asJQuery", "=", "which", "typeahead:", "->", "inputCompletion", "message", "valueWithTimeout:", "focus"]}),
-smalltalk.HLBindingActionInputWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "status",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@status"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@status"]="info";
-$1=self["@status"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"status",{},smalltalk.HLBindingActionInputWidget)})},
-messageSends: ["ifNil:"]}),
-smalltalk.HLBindingActionInputWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "status:",
-fn: function (aStatus){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@status"]=aStatus;
-return self}, function($ctx1) {$ctx1.fill(self,"status:",{aStatus:aStatus},smalltalk.HLBindingActionInputWidget)})},
-messageSends: []}),
-smalltalk.HLBindingActionInputWidget);
-
-
-
-smalltalk.addClass('HLKeyBinder', smalltalk.Object, ['modifierKey', 'helper', 'bindings', 'selectedBinding'], 'Helios-KeyBindings');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "activate",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._helper())._show();
-return self}, function($ctx1) {$ctx1.fill(self,"activate",{},smalltalk.HLKeyBinder)})},
-messageSends: ["show", "helper"]}),
-smalltalk.HLKeyBinder);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "activationKey",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return (32);
-}, function($ctx1) {$ctx1.fill(self,"activationKey",{},smalltalk.HLKeyBinder)})},
-messageSends: []}),
-smalltalk.HLKeyBinder);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "activationKeyLabel",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "ctrl + space";
-}, function($ctx1) {$ctx1.fill(self,"activationKeyLabel",{},smalltalk.HLKeyBinder)})},
-messageSends: []}),
-smalltalk.HLKeyBinder);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "applyBinding:",
-fn: function (aBinding){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st(aBinding)._isActive();
-if(! smalltalk.assert($1)){
-$2=self;
-return $2;
-};
-self._selectBinding_(aBinding);
-_st(aBinding)._apply();
-return self}, function($ctx1) {$ctx1.fill(self,"applyBinding:",{aBinding:aBinding},smalltalk.HLKeyBinder)})},
-messageSends: ["ifFalse:", "isActive", "selectBinding:", "apply"]}),
-smalltalk.HLKeyBinder);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "bindings",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@bindings"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@bindings"]=self._defaultBindings();
-$1=self["@bindings"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"bindings",{},smalltalk.HLKeyBinder)})},
-messageSends: ["ifNil:", "defaultBindings"]}),
-smalltalk.HLKeyBinder);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "deactivate",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@selectedBinding"];
-if(($receiver = $1) == nil || $receiver == undefined){
-$1;
-} else {
-_st(self["@selectedBinding"])._release();
-};
-self["@selectedBinding"]=nil;
-_st(self._helper())._hide();
-return self}, function($ctx1) {$ctx1.fill(self,"deactivate",{},smalltalk.HLKeyBinder)})},
-messageSends: ["ifNotNil:", "release", "hide", "helper"]}),
-smalltalk.HLKeyBinder);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "defaultBindings",
-fn: function (){
-var self=this;
-var group;
-function $HLCloseTabCommand(){return smalltalk.HLCloseTabCommand||(typeof HLCloseTabCommand=="undefined"?nil:HLCloseTabCommand)}
-function $HLBindingGroup(){return smalltalk.HLBindingGroup||(typeof HLBindingGroup=="undefined"?nil:HLBindingGroup)}
-function $HLSwitchTabCommand(){return smalltalk.HLSwitchTabCommand||(typeof HLSwitchTabCommand=="undefined"?nil:HLSwitchTabCommand)}
-function $HLOpenCommand(){return smalltalk.HLOpenCommand||(typeof HLOpenCommand=="undefined"?nil:HLOpenCommand)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3;
-$1=_st($HLBindingGroup())._new();
-_st($1)._add_(_st(_st($HLCloseTabCommand())._new())._asBinding());
-_st($1)._add_(_st(_st($HLSwitchTabCommand())._new())._asBinding());
-$2=_st($1)._yourself();
-group=$2;
-_st($HLOpenCommand())._registerConcreteClassesOn_(group);
-$3=group;
-return $3;
-}, function($ctx1) {$ctx1.fill(self,"defaultBindings",{group:group},smalltalk.HLKeyBinder)})},
-messageSends: ["add:", "asBinding", "new", "yourself", "registerConcreteClassesOn:"]}),
-smalltalk.HLKeyBinder);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "escapeKey",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return (27);
-}, function($ctx1) {$ctx1.fill(self,"escapeKey",{},smalltalk.HLKeyBinder)})},
-messageSends: []}),
-smalltalk.HLKeyBinder);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "flushBindings",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@bindings"]=nil;
-return self}, function($ctx1) {$ctx1.fill(self,"flushBindings",{},smalltalk.HLKeyBinder)})},
-messageSends: []}),
-smalltalk.HLKeyBinder);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "handleActiveKeyDown:",
-fn: function (event){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st(_st(_st(event)._which()).__eq(self._escapeKey()))._or_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(_st(event)._which()).__eq((71)))._and_((function(){
-return smalltalk.withContext(function($ctx3) {
-return _st(event)._ctrlKey();
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-if(smalltalk.assert($1)){
-self._deactivate();
-_st(event)._preventDefault();
-return false;
-};
-$2=self._handleBindingFor_(event);
-return $2;
-}, function($ctx1) {$ctx1.fill(self,"handleActiveKeyDown:",{event:event},smalltalk.HLKeyBinder)})},
-messageSends: ["ifTrue:", "deactivate", "preventDefault", "or:", "and:", "ctrlKey", "=", "which", "escapeKey", "handleBindingFor:"]}),
-smalltalk.HLKeyBinder);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "handleBindingFor:",
-fn: function (anEvent){
-var self=this;
-var binding;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-binding=_st(self._selectedBinding())._atKey_(_st(anEvent)._which());
-$1=binding;
-if(($receiver = $1) == nil || $receiver == undefined){
-$1;
-} else {
-self._applyBinding_(binding);
-_st(anEvent)._preventDefault();
-return false;
-};
-return self}, function($ctx1) {$ctx1.fill(self,"handleBindingFor:",{anEvent:anEvent,binding:binding},smalltalk.HLKeyBinder)})},
-messageSends: ["atKey:", "which", "selectedBinding", "ifNotNil:", "applyBinding:", "preventDefault"]}),
-smalltalk.HLKeyBinder);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "handleInactiveKeyDown:",
-fn: function (event){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st(_st(event)._which()).__eq(self._activationKey());
-if(smalltalk.assert($1)){
-$2=_st(event)._ctrlKey();
-if(smalltalk.assert($2)){
-self._activate();
-_st(event)._preventDefault();
-return false;
-};
-};
-return self}, function($ctx1) {$ctx1.fill(self,"handleInactiveKeyDown:",{event:event},smalltalk.HLKeyBinder)})},
-messageSends: ["ifTrue:", "activate", "preventDefault", "ctrlKey", "=", "activationKey", "which"]}),
-smalltalk.HLKeyBinder);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "handleKeyDown:",
-fn: function (event){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self._isActive();
-if(smalltalk.assert($2)){
-$1=self._handleActiveKeyDown_(event);
-} else {
-$1=self._handleInactiveKeyDown_(event);
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"handleKeyDown:",{event:event},smalltalk.HLKeyBinder)})},
-messageSends: ["ifTrue:ifFalse:", "handleActiveKeyDown:", "handleInactiveKeyDown:", "isActive"]}),
-smalltalk.HLKeyBinder);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "helper",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@helper"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"helper",{},smalltalk.HLKeyBinder)})},
-messageSends: []}),
-smalltalk.HLKeyBinder);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "initialize",
-fn: function (){
-var self=this;
-function $HLKeyBinderHelperWidget(){return smalltalk.HLKeyBinderHelperWidget||(typeof HLKeyBinderHelperWidget=="undefined"?nil:HLKeyBinderHelperWidget)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-smalltalk.HLKeyBinder.superclass.fn.prototype._initialize.apply(_st(self), []);
-self["@helper"]=_st($HLKeyBinderHelperWidget())._on_(self);
-$1=self["@helper"];
-_st($1)._renderStart();
-$2=_st($1)._renderCog();
-return self}, function($ctx1) {$ctx1.fill(self,"initialize",{},smalltalk.HLKeyBinder)})},
-messageSends: ["initialize", "on:", "renderStart", "renderCog"]}),
-smalltalk.HLKeyBinder);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isActive",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(".".__comma(_st(self._helper())._cssClass()))._asJQuery())._is_(":visible");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"isActive",{},smalltalk.HLKeyBinder)})},
-messageSends: ["is:", "asJQuery", ",", "cssClass", "helper"]}),
-smalltalk.HLKeyBinder);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selectBinding:",
-fn: function (aBinding){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st(aBinding).__eq(self["@selectedBinding"]);
-if(smalltalk.assert($1)){
-$2=self;
-return $2;
-};
-self["@selectedBinding"]=aBinding;
-_st(self._helper())._refresh();
-return self}, function($ctx1) {$ctx1.fill(self,"selectBinding:",{aBinding:aBinding},smalltalk.HLKeyBinder)})},
-messageSends: ["ifTrue:", "=", "refresh", "helper"]}),
-smalltalk.HLKeyBinder);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selectedBinding",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@selectedBinding"];
-if(($receiver = $2) == nil || $receiver == undefined){
-$1=self._bindings();
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"selectedBinding",{},smalltalk.HLKeyBinder)})},
-messageSends: ["ifNil:", "bindings"]}),
-smalltalk.HLKeyBinder);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "setupEvents",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st("body"._asJQuery())._keydown_((function(event){
-return smalltalk.withContext(function($ctx2) {
-return self._handleKeyDown_(event);
-}, function($ctx2) {$ctx2.fillBlock({event:event},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"setupEvents",{},smalltalk.HLKeyBinder)})},
-messageSends: ["keydown:", "handleKeyDown:", "asJQuery"]}),
-smalltalk.HLKeyBinder);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "systemIsMac",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(navigator)._platform())._match_("Mac");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"systemIsMac",{},smalltalk.HLKeyBinder)})},
-messageSends: ["match:", "platform"]}),
-smalltalk.HLKeyBinder);
-
-
-smalltalk.HLKeyBinder.klass.iVarNames = ['current'];
-smalltalk.addMethod(
-smalltalk.method({
-selector: "current",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@current"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@current"]=smalltalk.HLKeyBinder.klass.superclass.fn.prototype._new.apply(_st(self), []);
-$1=self["@current"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"current",{},smalltalk.HLKeyBinder.klass)})},
-messageSends: ["ifNil:", "new"]}),
-smalltalk.HLKeyBinder.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "new",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._shouldNotImplement();
-return self}, function($ctx1) {$ctx1.fill(self,"new",{},smalltalk.HLKeyBinder.klass)})},
-messageSends: ["shouldNotImplement"]}),
-smalltalk.HLKeyBinder.klass);
-
-
-smalltalk.addClass('HLKeyBinderHelperWidget', smalltalk.HLWidget, ['keyBinder'], 'Helios-KeyBindings');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "cssClass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "key_helper";
-}, function($ctx1) {$ctx1.fill(self,"cssClass",{},smalltalk.HLKeyBinderHelperWidget)})},
-messageSends: []}),
-smalltalk.HLKeyBinderHelperWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "hide",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(_st(".".__comma(self._cssClass()))._asJQuery())._remove();
-self._showCog();
-return self}, function($ctx1) {$ctx1.fill(self,"hide",{},smalltalk.HLKeyBinderHelperWidget)})},
-messageSends: ["remove", "asJQuery", ",", "cssClass", "showCog"]}),
-smalltalk.HLKeyBinderHelperWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "hideCog",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st("#cog-helper"._asJQuery())._hide();
-return self}, function($ctx1) {$ctx1.fill(self,"hideCog",{},smalltalk.HLKeyBinderHelperWidget)})},
-messageSends: ["hide", "asJQuery"]}),
-smalltalk.HLKeyBinderHelperWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "keyBinder",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@keyBinder"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"keyBinder",{},smalltalk.HLKeyBinderHelperWidget)})},
-messageSends: []}),
-smalltalk.HLKeyBinderHelperWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "keyBinder:",
-fn: function (aKeyBinder){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@keyBinder"]=aKeyBinder;
-return self}, function($ctx1) {$ctx1.fill(self,"keyBinder:",{aKeyBinder:aKeyBinder},smalltalk.HLKeyBinderHelperWidget)})},
-messageSends: []}),
-smalltalk.HLKeyBinderHelperWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "mainId",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "binding-helper-main";
-}, function($ctx1) {$ctx1.fill(self,"mainId",{},smalltalk.HLKeyBinderHelperWidget)})},
-messageSends: []}),
-smalltalk.HLKeyBinderHelperWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderBindingActionFor:on:",
-fn: function (aBinding,html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$3,$4,$5,$6,$2;
-$1=_st(html)._span();
-_st($1)._class_("command");
-$2=_st($1)._with_((function(){
-return smalltalk.withContext(function($ctx2) {
-$3=_st(html)._span();
-_st($3)._class_("label");
-$4=_st($3)._with_(_st(_st(aBinding)._shortcut())._asLowercase());
-$4;
-$5=_st(html)._a();
-_st($5)._class_("action");
-_st($5)._with_(_st(aBinding)._displayLabel());
-$6=_st($5)._onClick_((function(){
-return smalltalk.withContext(function($ctx3) {
-return _st(self._keyBinder())._applyBinding_(aBinding);
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-return $6;
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"renderBindingActionFor:on:",{aBinding:aBinding,html:html},smalltalk.HLKeyBinderHelperWidget)})},
-messageSends: ["class:", "span", "with:", "asLowercase", "shortcut", "a", "displayLabel", "onClick:", "applyBinding:", "keyBinder"]}),
-smalltalk.HLKeyBinderHelperWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderBindingGroup:on:",
-fn: function (aBindingGroup,html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(_st(_st(aBindingGroup)._activeBindings())._sorted_((function(a,b){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(a)._key()).__lt(_st(b)._key());
-}, function($ctx2) {$ctx2.fillBlock({a:a,b:b},$ctx1)})})))._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return self._renderBindingActionFor_on_(each,html);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"renderBindingGroup:on:",{aBindingGroup:aBindingGroup,html:html},smalltalk.HLKeyBinderHelperWidget)})},
-messageSends: ["do:", "renderBindingActionFor:on:", "sorted:", "<", "key", "activeBindings"]}),
-smalltalk.HLKeyBinderHelperWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderCloseOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st(html)._a();
-_st($1)._class_("close");
-_st($1)._with_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(html)._tag_("i"))._class_("icon-remove");
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-$2=_st($1)._onClick_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(self._keyBinder())._deactivate();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"renderCloseOn:",{html:html},smalltalk.HLKeyBinderHelperWidget)})},
-messageSends: ["class:", "a", "with:", "tag:", "onClick:", "deactivate", "keyBinder"]}),
-smalltalk.HLKeyBinderHelperWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderCog",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$3,$4,$2;
-_st((function(html){
-return smalltalk.withContext(function($ctx2) {
-$1=_st(html)._div();
-_st($1)._id_("cog-helper");
-$2=_st($1)._with_((function(){
-return smalltalk.withContext(function($ctx3) {
-$3=_st(html)._a();
-_st($3)._with_((function(){
-return smalltalk.withContext(function($ctx4) {
-return _st(_st(html)._tag_("i"))._class_("icon-cog");
-}, function($ctx4) {$ctx4.fillBlock({},$ctx3)})}));
-$4=_st($3)._onClick_((function(){
-return smalltalk.withContext(function($ctx4) {
-return _st(self._keyBinder())._activate();
-}, function($ctx4) {$ctx4.fillBlock({},$ctx3)})}));
-return $4;
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-return $2;
-}, function($ctx2) {$ctx2.fillBlock({html:html},$ctx1)})}))._appendToJQuery_("body"._asJQuery());
-return self}, function($ctx1) {$ctx1.fill(self,"renderCog",{},smalltalk.HLKeyBinderHelperWidget)})},
-messageSends: ["appendToJQuery:", "asJQuery", "id:", "div", "with:", "class:", "tag:", "a", "onClick:", "activate", "keyBinder"]}),
-smalltalk.HLKeyBinderHelperWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderContentOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$3,$4,$2;
-$1=_st(html)._div();
-_st($1)._class_(self._cssClass());
-$2=_st($1)._with_((function(){
-return smalltalk.withContext(function($ctx2) {
-self._renderLabelOn_(html);
-$3=_st(html)._div();
-_st($3)._id_(self._mainId());
-$4=_st($3)._with_((function(){
-return smalltalk.withContext(function($ctx3) {
-return self._renderSelectedBindingOn_(html);
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-$4;
-return self._renderCloseOn_(html);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"renderContentOn:",{html:html},smalltalk.HLKeyBinderHelperWidget)})},
-messageSends: ["class:", "cssClass", "div", "with:", "renderLabelOn:", "id:", "mainId", "renderSelectedBindingOn:", "renderCloseOn:"]}),
-smalltalk.HLKeyBinderHelperWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderLabelOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$3,$5,$4,$2;
-$1=_st(html)._span();
-_st($1)._class_("selected");
-$3=$1;
-$5=_st(self._selectedBinding())._label();
-if(($receiver = $5) == nil || $receiver == undefined){
-$4="Action";
-} else {
-$4=$5;
-};
-$2=_st($3)._with_($4);
-return self}, function($ctx1) {$ctx1.fill(self,"renderLabelOn:",{html:html},smalltalk.HLKeyBinderHelperWidget)})},
-messageSends: ["class:", "span", "with:", "ifNil:", "label", "selectedBinding"]}),
-smalltalk.HLKeyBinderHelperWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderSelectedBindingOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._selectedBinding())._renderOn_html_(self,html);
-return self}, function($ctx1) {$ctx1.fill(self,"renderSelectedBindingOn:",{html:html},smalltalk.HLKeyBinderHelperWidget)})},
-messageSends: ["renderOn:html:", "selectedBinding"]}),
-smalltalk.HLKeyBinderHelperWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderStart",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-_st("#helper"._asJQuery())._remove();
-_st((function(html){
-return smalltalk.withContext(function($ctx2) {
-$1=_st(html)._div();
-_st($1)._id_("helper");
-$2=_st($1)._with_(_st("Press ".__comma(_st(self._keyBinder())._activationKeyLabel())).__comma(" to start"));
-return $2;
-}, function($ctx2) {$ctx2.fillBlock({html:html},$ctx1)})}))._appendToJQuery_("body"._asJQuery());
-_st((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st("#helper"._asJQuery())._fadeOut_((1000));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._valueWithTimeout_((2000));
-return self}, function($ctx1) {$ctx1.fill(self,"renderStart",{},smalltalk.HLKeyBinderHelperWidget)})},
-messageSends: ["remove", "asJQuery", "appendToJQuery:", "id:", "div", "with:", ",", "activationKeyLabel", "keyBinder", "valueWithTimeout:", "fadeOut:"]}),
-smalltalk.HLKeyBinderHelperWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selectedBinding",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._keyBinder())._selectedBinding();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"selectedBinding",{},smalltalk.HLKeyBinderHelperWidget)})},
-messageSends: ["selectedBinding", "keyBinder"]}),
-smalltalk.HLKeyBinderHelperWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "show",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._hideCog();
-self._appendToJQuery_("body"._asJQuery());
-return self}, function($ctx1) {$ctx1.fill(self,"show",{},smalltalk.HLKeyBinderHelperWidget)})},
-messageSends: ["hideCog", "appendToJQuery:", "asJQuery"]}),
-smalltalk.HLKeyBinderHelperWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "showCog",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st("#cog-helper"._asJQuery())._show();
-return self}, function($ctx1) {$ctx1.fill(self,"showCog",{},smalltalk.HLKeyBinderHelperWidget)})},
-messageSends: ["show", "asJQuery"]}),
-smalltalk.HLKeyBinderHelperWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "showWidget:",
-fn: function (aWidget){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(_st("#".__comma(self._mainId()))._asJQuery())._empty();
-_st(aWidget)._appendToJQuery_(_st("#".__comma(self._mainId()))._asJQuery());
-return self}, function($ctx1) {$ctx1.fill(self,"showWidget:",{aWidget:aWidget},smalltalk.HLKeyBinderHelperWidget)})},
-messageSends: ["empty", "asJQuery", ",", "mainId", "appendToJQuery:"]}),
-smalltalk.HLKeyBinderHelperWidget);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "on:",
-fn: function (aKeyBinder){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=self._new();
-_st($2)._keyBinder_(aKeyBinder);
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"on:",{aKeyBinder:aKeyBinder},smalltalk.HLKeyBinderHelperWidget.klass)})},
-messageSends: ["keyBinder:", "new", "yourself"]}),
-smalltalk.HLKeyBinderHelperWidget.klass);
-
-
-smalltalk.addClass('HLRepeatedKeyDownHandler', smalltalk.Object, ['repeatInterval', 'delay', 'interval', 'keyBindings', 'widget', 'keyDown'], 'Helios-KeyBindings');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "bindKeys",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._widget())._bindKeyDown_keyUp_((function(e){
-return smalltalk.withContext(function($ctx2) {
-return self._handleKeyDown_(e);
-}, function($ctx2) {$ctx2.fillBlock({e:e},$ctx1)})}),(function(e){
-return smalltalk.withContext(function($ctx2) {
-return self._handleKeyUp();
-}, function($ctx2) {$ctx2.fillBlock({e:e},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"bindKeys",{},smalltalk.HLRepeatedKeyDownHandler)})},
-messageSends: ["bindKeyDown:keyUp:", "handleKeyDown:", "handleKeyUp", "widget"]}),
-smalltalk.HLRepeatedKeyDownHandler);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "defaultRepeatInterval",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return (70);
-}, function($ctx1) {$ctx1.fill(self,"defaultRepeatInterval",{},smalltalk.HLRepeatedKeyDownHandler)})},
-messageSends: []}),
-smalltalk.HLRepeatedKeyDownHandler);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "handleEvent:forKey:action:",
-fn: function (anEvent,anInteger,aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(_st(anEvent)._which()).__eq(anInteger))._and_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(self._isKeyDown())._not();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-if(smalltalk.assert($1)){
-self._whileKeyDownDo_(aBlock);
-};
-return self}, function($ctx1) {$ctx1.fill(self,"handleEvent:forKey:action:",{anEvent:anEvent,anInteger:anInteger,aBlock:aBlock},smalltalk.HLRepeatedKeyDownHandler)})},
-messageSends: ["ifTrue:", "whileKeyDownDo:", "and:", "not", "isKeyDown", "=", "which"]}),
-smalltalk.HLRepeatedKeyDownHandler);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "handleKeyDown:",
-fn: function (anEvent){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._keyBindings())._keysAndValuesDo_((function(key,action){
-return smalltalk.withContext(function($ctx2) {
-return self._handleEvent_forKey_action_(anEvent,key,action);
-}, function($ctx2) {$ctx2.fillBlock({key:key,action:action},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"handleKeyDown:",{anEvent:anEvent},smalltalk.HLRepeatedKeyDownHandler)})},
-messageSends: ["keysAndValuesDo:", "handleEvent:forKey:action:", "keyBindings"]}),
-smalltalk.HLRepeatedKeyDownHandler);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "handleKeyUp",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3;
-$1=self._isKeyDown();
-if(smalltalk.assert($1)){
-self["@keyDown"]=false;
-self["@keyDown"];
-$2=self["@interval"];
-if(($receiver = $2) == nil || $receiver == undefined){
-$2;
-} else {
-_st(self["@interval"])._clearInterval();
-};
-$3=self["@delay"];
-if(($receiver = $3) == nil || $receiver == undefined){
-$3;
-} else {
-_st(self["@delay"])._clearTimeout();
-};
-};
-return self}, function($ctx1) {$ctx1.fill(self,"handleKeyUp",{},smalltalk.HLRepeatedKeyDownHandler)})},
-messageSends: ["ifTrue:", "ifNotNil:", "clearInterval", "clearTimeout", "isKeyDown"]}),
-smalltalk.HLRepeatedKeyDownHandler);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isKeyDown",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@keyDown"];
-if(($receiver = $2) == nil || $receiver == undefined){
-$1=false;
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"isKeyDown",{},smalltalk.HLRepeatedKeyDownHandler)})},
-messageSends: ["ifNil:"]}),
-smalltalk.HLRepeatedKeyDownHandler);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "keyBindings",
-fn: function (){
-var self=this;
-function $Dictionary(){return smalltalk.Dictionary||(typeof Dictionary=="undefined"?nil:Dictionary)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@keyBindings"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@keyBindings"]=_st($Dictionary())._new();
-$1=self["@keyBindings"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"keyBindings",{},smalltalk.HLRepeatedKeyDownHandler)})},
-messageSends: ["ifNil:", "new"]}),
-smalltalk.HLRepeatedKeyDownHandler);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "rebindKeys",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=self;
-_st($1)._unbindKeys();
-$2=_st($1)._bindKeys();
-return self}, function($ctx1) {$ctx1.fill(self,"rebindKeys",{},smalltalk.HLRepeatedKeyDownHandler)})},
-messageSends: ["unbindKeys", "bindKeys"]}),
-smalltalk.HLRepeatedKeyDownHandler);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "repeatInterval",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@repeatInterval"];
-if(($receiver = $2) == nil || $receiver == undefined){
-$1=self._defaultRepeatInterval();
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"repeatInterval",{},smalltalk.HLRepeatedKeyDownHandler)})},
-messageSends: ["ifNil:", "defaultRepeatInterval"]}),
-smalltalk.HLRepeatedKeyDownHandler);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "repeatInterval:",
-fn: function (anInteger){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@repeatInterval"]=anInteger;
-return self}, function($ctx1) {$ctx1.fill(self,"repeatInterval:",{anInteger:anInteger},smalltalk.HLRepeatedKeyDownHandler)})},
-messageSends: []}),
-smalltalk.HLRepeatedKeyDownHandler);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "startRepeatingAction:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$1=_st((function(){
-return smalltalk.withContext(function($ctx2) {
-$2=_st(self._widget())._hasFocus();
-if(smalltalk.assert($2)){
-return _st(aBlock)._value();
-} else {
-return self._handleKeyUp();
-};
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._valueWithInterval_(self._repeatInterval());
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"startRepeatingAction:",{aBlock:aBlock},smalltalk.HLRepeatedKeyDownHandler)})},
-messageSends: ["valueWithInterval:", "repeatInterval", "ifTrue:ifFalse:", "value", "handleKeyUp", "hasFocus", "widget"]}),
-smalltalk.HLRepeatedKeyDownHandler);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "unbindKeys",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._widget())._unbindKeyDownKeyUp();
-return self}, function($ctx1) {$ctx1.fill(self,"unbindKeys",{},smalltalk.HLRepeatedKeyDownHandler)})},
-messageSends: ["unbindKeyDownKeyUp", "widget"]}),
-smalltalk.HLRepeatedKeyDownHandler);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "whileKeyDown:do:",
-fn: function (aKey,aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._keyBindings())._at_put_(aKey,aBlock);
-return self}, function($ctx1) {$ctx1.fill(self,"whileKeyDown:do:",{aKey:aKey,aBlock:aBlock},smalltalk.HLRepeatedKeyDownHandler)})},
-messageSends: ["at:put:", "keyBindings"]}),
-smalltalk.HLRepeatedKeyDownHandler);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "whileKeyDownDo:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@keyDown"]=true;
-_st(aBlock)._value();
-self["@delay"]=_st((function(){
-return smalltalk.withContext(function($ctx2) {
-self["@interval"]=self._startRepeatingAction_(aBlock);
-return self["@interval"];
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._valueWithTimeout_((300));
-return self}, function($ctx1) {$ctx1.fill(self,"whileKeyDownDo:",{aBlock:aBlock},smalltalk.HLRepeatedKeyDownHandler)})},
-messageSends: ["value", "valueWithTimeout:", "startRepeatingAction:"]}),
-smalltalk.HLRepeatedKeyDownHandler);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "widget",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@widget"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"widget",{},smalltalk.HLRepeatedKeyDownHandler)})},
-messageSends: []}),
-smalltalk.HLRepeatedKeyDownHandler);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "widget:",
-fn: function (aWidget){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@widget"]=aWidget;
-return self}, function($ctx1) {$ctx1.fill(self,"widget:",{aWidget:aWidget},smalltalk.HLRepeatedKeyDownHandler)})},
-messageSends: []}),
-smalltalk.HLRepeatedKeyDownHandler);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "on:",
-fn: function (aWidget){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=self._new();
-_st($2)._widget_(aWidget);
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"on:",{aWidget:aWidget},smalltalk.HLRepeatedKeyDownHandler.klass)})},
-messageSends: ["widget:", "new", "yourself"]}),
-smalltalk.HLRepeatedKeyDownHandler.klass);
-
-});

+ 0 - 396
js/Helios-Layout.deploy.js

@@ -1,396 +0,0 @@
-define("amber/Helios-Layout", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/Helios-Core", "amber/Canvas", "amber/Kernel-Objects"], function(smalltalk,nil,_st){
-smalltalk.addPackage('Helios-Layout');
-smalltalk.packages["Helios-Layout"].transport = {"type":"amd","amdNamespace":"amber"};
-
-smalltalk.addClass('HLContainer', smalltalk.HLWidget, ['splitter'], 'Helios-Layout');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st(html)._div();
-_st($1)._class_("tool_container");
-$2=_st($1)._with_(self._splitter());
-return self}, function($ctx1) {$ctx1.fill(self,"renderOn:",{html:html},smalltalk.HLContainer)})},
-messageSends: ["class:", "div", "with:", "splitter"]}),
-smalltalk.HLContainer);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "splitter",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@splitter"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"splitter",{},smalltalk.HLContainer)})},
-messageSends: []}),
-smalltalk.HLContainer);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "splitter:",
-fn: function (aSplitter){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@splitter"]=aSplitter;
-return self}, function($ctx1) {$ctx1.fill(self,"splitter:",{aSplitter:aSplitter},smalltalk.HLContainer)})},
-messageSends: []}),
-smalltalk.HLContainer);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "with:",
-fn: function (aSplitter){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=self._new();
-_st($2)._splitter_(aSplitter);
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"with:",{aSplitter:aSplitter},smalltalk.HLContainer.klass)})},
-messageSends: ["splitter:", "new", "yourself"]}),
-smalltalk.HLContainer.klass);
-
-
-smalltalk.addClass('HLSplitter', smalltalk.Widget, ['firstWidget', 'secondWidget', 'firstPane', 'secondPane', 'splitter'], 'Helios-Layout');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "cssClass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "splitter";
-}, function($ctx1) {$ctx1.fill(self,"cssClass",{},smalltalk.HLSplitter)})},
-messageSends: []}),
-smalltalk.HLSplitter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "firstWidget",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@firstWidget"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"firstWidget",{},smalltalk.HLSplitter)})},
-messageSends: []}),
-smalltalk.HLSplitter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "firstWidget:",
-fn: function (aWidget){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@firstWidget"]=aWidget;
-return self}, function($ctx1) {$ctx1.fill(self,"firstWidget:",{aWidget:aWidget},smalltalk.HLSplitter)})},
-messageSends: []}),
-smalltalk.HLSplitter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isHeliosSplitter",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"isHeliosSplitter",{},smalltalk.HLSplitter)})},
-messageSends: []}),
-smalltalk.HLSplitter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "panesCssClass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "panes";
-}, function($ctx1) {$ctx1.fill(self,"panesCssClass",{},smalltalk.HLSplitter)})},
-messageSends: []}),
-smalltalk.HLSplitter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$3,$4,$5,$6,$2;
-$1=_st(html)._div();
-_st($1)._class_(self._panesCssClass());
-$2=_st($1)._with_((function(){
-return smalltalk.withContext(function($ctx2) {
-$3=_st(html)._div();
-_st($3)._class_("pane");
-$4=_st($3)._with_(self._firstWidget());
-self["@firstPane"]=$4;
-self["@firstPane"];
-self["@splitter"]=_st(_st(html)._div())._class_(self._cssClass());
-self["@splitter"];
-$5=_st(html)._div();
-_st($5)._class_("pane");
-$6=_st($5)._with_(self._secondWidget());
-self["@secondPane"]=$6;
-return self["@secondPane"];
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-self._setupSplitter();
-return self}, function($ctx1) {$ctx1.fill(self,"renderOn:",{html:html},smalltalk.HLSplitter)})},
-messageSends: ["class:", "panesCssClass", "div", "with:", "firstWidget", "cssClass", "secondWidget", "setupSplitter"]}),
-smalltalk.HLSplitter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "resize",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self}, function($ctx1) {$ctx1.fill(self,"resize",{},smalltalk.HLSplitter)})},
-messageSends: []}),
-smalltalk.HLSplitter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "secondWidget",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@secondWidget"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"secondWidget",{},smalltalk.HLSplitter)})},
-messageSends: []}),
-smalltalk.HLSplitter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "secondWidget:",
-fn: function (aWidget){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@secondWidget"]=aWidget;
-return self}, function($ctx1) {$ctx1.fill(self,"secondWidget:",{aWidget:aWidget},smalltalk.HLSplitter)})},
-messageSends: []}),
-smalltalk.HLSplitter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "setupSplitter",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self}, function($ctx1) {$ctx1.fill(self,"setupSplitter",{},smalltalk.HLSplitter)})},
-messageSends: []}),
-smalltalk.HLSplitter);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "with:with:",
-fn: function (aWidget,anotherWidget){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=self._new();
-_st($2)._firstWidget_(aWidget);
-_st($2)._secondWidget_(anotherWidget);
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"with:with:",{aWidget:aWidget,anotherWidget:anotherWidget},smalltalk.HLSplitter.klass)})},
-messageSends: ["firstWidget:", "new", "secondWidget:", "yourself"]}),
-smalltalk.HLSplitter.klass);
-
-
-smalltalk.addClass('HLHorizontalSplitter', smalltalk.HLSplitter, [], 'Helios-Layout');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "cssClass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(smalltalk.HLHorizontalSplitter.superclass.fn.prototype._cssClass.apply(_st(self), [])).__comma(" horizontal");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"cssClass",{},smalltalk.HLHorizontalSplitter)})},
-messageSends: [",", "cssClass"]}),
-smalltalk.HLHorizontalSplitter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "panesCssClass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(smalltalk.HLHorizontalSplitter.superclass.fn.prototype._panesCssClass.apply(_st(self), [])).__comma(" horizontal");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"panesCssClass",{},smalltalk.HLHorizontalSplitter)})},
-messageSends: [",", "panesCssClass"]}),
-smalltalk.HLHorizontalSplitter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "resize",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._resize_(_st(_st(self["@splitter"])._asJQuery())._css_("top"));
-return self}, function($ctx1) {$ctx1.fill(self,"resize",{},smalltalk.HLHorizontalSplitter)})},
-messageSends: ["resize:", "css:", "asJQuery"]}),
-smalltalk.HLHorizontalSplitter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "resize:",
-fn: function (anInteger){
-var self=this;
-var container,size,offset,percentage;
-return smalltalk.withContext(function($ctx1) { 
-container=_st(_st(self["@firstPane"])._asJQuery())._parent();
-offset=_st(_st(_st(self["@firstPane"])._asJQuery())._offset())._top();
-size=_st(container)._height();
-percentage=_st(_st(_st(size).__minus(_st(anInteger).__minus(offset))).__slash(size)).__star((100));
-percentage=(80)._min_(_st(percentage)._max_((20)));
-_st(_st(self["@firstPane"])._asJQuery())._css_put_("bottom",_st(_st(percentage)._asString()).__comma("%"));
-_st(_st(self["@splitter"])._asJQuery())._css_put_("top",_st(_st((100).__minus(percentage))._asString()).__comma("%"));
-_st(_st(self["@secondPane"])._asJQuery())._css_put_("top",_st(_st((100).__minus(percentage))._asString()).__comma("%"));
-return self}, function($ctx1) {$ctx1.fill(self,"resize:",{anInteger:anInteger,container:container,size:size,offset:offset,percentage:percentage},smalltalk.HLHorizontalSplitter)})},
-messageSends: ["parent", "asJQuery", "top", "offset", "height", "*", "/", "-", "min:", "max:", "css:put:", ",", "asString"]}),
-smalltalk.HLHorizontalSplitter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "setupSplitter",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(_st(self["@splitter"])._asJQuery())._draggable_(smalltalk.HashedCollection._from_(["axis".__minus_gt("y"),"containment".__minus_gt(_st(_st(self["@splitter"])._asJQuery())._parent()),"helper".__minus_gt("clone"),"start".__minus_gt((function(e,ui){
-return smalltalk.withContext(function($ctx2) {
-return self._startResizing_(_st(ui)._helper());
-}, function($ctx2) {$ctx2.fillBlock({e:e,ui:ui},$ctx1)})})),"drag".__minus_gt((function(e,ui){
-return smalltalk.withContext(function($ctx2) {
-return self._resize_(_st(_st(ui)._offset())._top());
-}, function($ctx2) {$ctx2.fillBlock({e:e,ui:ui},$ctx1)})}))]));
-return self}, function($ctx1) {$ctx1.fill(self,"setupSplitter",{},smalltalk.HLHorizontalSplitter)})},
-messageSends: ["draggable:", "->", "parent", "asJQuery", "startResizing:", "helper", "resize:", "top", "offset"]}),
-smalltalk.HLHorizontalSplitter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "startResizing:",
-fn: function (aSplitter){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(aSplitter)._width_(_st(_st(self["@splitter"])._asJQuery())._width());
-return self}, function($ctx1) {$ctx1.fill(self,"startResizing:",{aSplitter:aSplitter},smalltalk.HLHorizontalSplitter)})},
-messageSends: ["width:", "width", "asJQuery"]}),
-smalltalk.HLHorizontalSplitter);
-
-
-
-smalltalk.addClass('HLVerticalSplitter', smalltalk.HLSplitter, [], 'Helios-Layout');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "cssClass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(smalltalk.HLVerticalSplitter.superclass.fn.prototype._cssClass.apply(_st(self), [])).__comma(" vertical");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"cssClass",{},smalltalk.HLVerticalSplitter)})},
-messageSends: [",", "cssClass"]}),
-smalltalk.HLVerticalSplitter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "panesCssClass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(smalltalk.HLVerticalSplitter.superclass.fn.prototype._panesCssClass.apply(_st(self), [])).__comma(" vertical");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"panesCssClass",{},smalltalk.HLVerticalSplitter)})},
-messageSends: [",", "panesCssClass"]}),
-smalltalk.HLVerticalSplitter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "resize",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._resize_(_st(_st(self["@splitter"])._asJQuery())._css_("left"));
-return self}, function($ctx1) {$ctx1.fill(self,"resize",{},smalltalk.HLVerticalSplitter)})},
-messageSends: ["resize:", "css:", "asJQuery"]}),
-smalltalk.HLVerticalSplitter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "resize:",
-fn: function (anInteger){
-var self=this;
-var container,size,offset,percentage;
-return smalltalk.withContext(function($ctx1) { 
-container=_st(_st(self["@firstPane"])._asJQuery())._parent();
-offset=_st(_st(_st(self["@firstPane"])._asJQuery())._offset())._left();
-size=_st(container)._width();
-percentage=_st(_st(_st(size).__minus(_st(anInteger).__minus(offset))).__slash(size)).__star((100));
-percentage=(80)._min_(_st(percentage)._max_((20)));
-_st(_st(self["@firstPane"])._asJQuery())._css_put_("right",_st(_st(percentage)._asString()).__comma("%"));
-_st(_st(self["@splitter"])._asJQuery())._css_put_("left",_st(_st((100).__minus(percentage))._asString()).__comma("%"));
-_st(_st(self["@secondPane"])._asJQuery())._css_put_("left",_st(_st((100).__minus(percentage))._asString()).__comma("%"));
-return self}, function($ctx1) {$ctx1.fill(self,"resize:",{anInteger:anInteger,container:container,size:size,offset:offset,percentage:percentage},smalltalk.HLVerticalSplitter)})},
-messageSends: ["parent", "asJQuery", "left", "offset", "width", "*", "/", "-", "min:", "max:", "css:put:", ",", "asString"]}),
-smalltalk.HLVerticalSplitter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "setupSplitter",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(_st(self["@splitter"])._asJQuery())._draggable_(smalltalk.HashedCollection._from_(["axis".__minus_gt("x"),"containment".__minus_gt(_st(_st(self["@splitter"])._asJQuery())._parent()),"helper".__minus_gt("clone"),"start".__minus_gt((function(e,ui){
-return smalltalk.withContext(function($ctx2) {
-return self._startResizing_(_st(ui)._helper());
-}, function($ctx2) {$ctx2.fillBlock({e:e,ui:ui},$ctx1)})})),"drag".__minus_gt((function(e,ui){
-return smalltalk.withContext(function($ctx2) {
-return self._resize_(_st(_st(ui)._offset())._left());
-}, function($ctx2) {$ctx2.fillBlock({e:e,ui:ui},$ctx1)})}))]));
-return self}, function($ctx1) {$ctx1.fill(self,"setupSplitter",{},smalltalk.HLVerticalSplitter)})},
-messageSends: ["draggable:", "->", "parent", "asJQuery", "startResizing:", "helper", "resize:", "left", "offset"]}),
-smalltalk.HLVerticalSplitter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "startResizing:",
-fn: function (aSplitter){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(aSplitter)._height_(_st(_st(self["@splitter"])._asJQuery())._height());
-return self}, function($ctx1) {$ctx1.fill(self,"startResizing:",{aSplitter:aSplitter},smalltalk.HLVerticalSplitter)})},
-messageSends: ["height:", "height", "asJQuery"]}),
-smalltalk.HLVerticalSplitter);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isHeliosSplitter",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return false;
-}, function($ctx1) {$ctx1.fill(self,"isHeliosSplitter",{},smalltalk.Object)})},
-messageSends: []}),
-smalltalk.Object);
-
-});

+ 0 - 845
js/Helios-References.deploy.js

@@ -1,845 +0,0 @@
-define("amber/Helios-References", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/Kernel-Objects", "amber/Helios-Core"], function(smalltalk,nil,_st){
-smalltalk.addPackage('Helios-References');
-smalltalk.packages["Helios-References"].transport = {"type":"amd","amdNamespace":"amber"};
-
-smalltalk.addClass('HLMethodReference', smalltalk.Object, ['selector', 'methodClass'], 'Helios-References');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "initializeFromMethod:",
-fn: function (aCompiledMethod){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=self;
-_st($1)._selector_(_st(aCompiledMethod)._selector());
-$2=_st($1)._methodClass_(_st(aCompiledMethod)._methodClass());
-return self}, function($ctx1) {$ctx1.fill(self,"initializeFromMethod:",{aCompiledMethod:aCompiledMethod},smalltalk.HLMethodReference)})},
-messageSends: ["selector:", "selector", "methodClass:", "methodClass"]}),
-smalltalk.HLMethodReference);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "method",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._methodClass())._methodAt_(self._selector());
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"method",{},smalltalk.HLMethodReference)})},
-messageSends: ["methodAt:", "selector", "methodClass"]}),
-smalltalk.HLMethodReference);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "methodClass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@methodClass"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"methodClass",{},smalltalk.HLMethodReference)})},
-messageSends: []}),
-smalltalk.HLMethodReference);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "methodClass:",
-fn: function (aClass){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@methodClass"]=aClass;
-return self}, function($ctx1) {$ctx1.fill(self,"methodClass:",{aClass:aClass},smalltalk.HLMethodReference)})},
-messageSends: []}),
-smalltalk.HLMethodReference);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selector",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@selector"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"selector",{},smalltalk.HLMethodReference)})},
-messageSends: []}),
-smalltalk.HLMethodReference);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selector:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@selector"]=aString;
-return self}, function($ctx1) {$ctx1.fill(self,"selector:",{aString:aString},smalltalk.HLMethodReference)})},
-messageSends: []}),
-smalltalk.HLMethodReference);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "source",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._method())._source();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"source",{},smalltalk.HLMethodReference)})},
-messageSends: ["source", "method"]}),
-smalltalk.HLMethodReference);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "on:",
-fn: function (aCompiledMethod){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=self._new();
-_st($2)._initializeFromMethod_(aCompiledMethod);
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"on:",{aCompiledMethod:aCompiledMethod},smalltalk.HLMethodReference.klass)})},
-messageSends: ["initializeFromMethod:", "new", "yourself"]}),
-smalltalk.HLMethodReference.klass);
-
-
-smalltalk.addClass('HLReferences', smalltalk.HLWidget, ['model', 'sendersListWidget', 'implementorsListWidget', 'classReferencesListWidget', 'regexpListWidget', 'sourceCodeWidget'], 'Helios-References');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "classReferencesListWidget",
-fn: function (){
-var self=this;
-function $HLClassReferencesListWidget(){return smalltalk.HLClassReferencesListWidget||(typeof HLClassReferencesListWidget=="undefined"?nil:HLClassReferencesListWidget)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@classReferencesListWidget"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@classReferencesListWidget"]=_st($HLClassReferencesListWidget())._on_(self._model());
-self["@classReferencesListWidget"];
-$1=_st(self["@classReferencesListWidget"])._next_(self._regexpListWidget());
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"classReferencesListWidget",{},smalltalk.HLReferences)})},
-messageSends: ["ifNil:", "on:", "model", "next:", "regexpListWidget"]}),
-smalltalk.HLReferences);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "implementorsListWidget",
-fn: function (){
-var self=this;
-function $HLImplementorsListWidget(){return smalltalk.HLImplementorsListWidget||(typeof HLImplementorsListWidget=="undefined"?nil:HLImplementorsListWidget)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@implementorsListWidget"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@implementorsListWidget"]=_st($HLImplementorsListWidget())._on_(self._model());
-self["@implementorsListWidget"];
-$1=_st(self["@implementorsListWidget"])._next_(self._classReferencesListWidget());
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"implementorsListWidget",{},smalltalk.HLReferences)})},
-messageSends: ["ifNil:", "on:", "model", "next:", "classReferencesListWidget"]}),
-smalltalk.HLReferences);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "model",
-fn: function (){
-var self=this;
-function $HLReferencesModel(){return smalltalk.HLReferencesModel||(typeof HLReferencesModel=="undefined"?nil:HLReferencesModel)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$4,$1;
-$2=self["@model"];
-if(($receiver = $2) == nil || $receiver == undefined){
-$3=_st($HLReferencesModel())._new();
-_st($3)._environment_(_st(self._manager())._environment());
-$4=_st($3)._yourself();
-self["@model"]=$4;
-$1=self["@model"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"model",{},smalltalk.HLReferences)})},
-messageSends: ["ifNil:", "environment:", "environment", "manager", "new", "yourself"]}),
-smalltalk.HLReferences);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "model:",
-fn: function (aModel){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@model"]=aModel;
-return self}, function($ctx1) {$ctx1.fill(self,"model:",{aModel:aModel},smalltalk.HLReferences)})},
-messageSends: []}),
-smalltalk.HLReferences);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "regexpListWidget",
-fn: function (){
-var self=this;
-function $HLRegexpListWidget(){return smalltalk.HLRegexpListWidget||(typeof HLRegexpListWidget=="undefined"?nil:HLRegexpListWidget)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@regexpListWidget"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@regexpListWidget"]=_st($HLRegexpListWidget())._on_(self._model());
-self["@regexpListWidget"];
-$1=_st(self["@regexpListWidget"])._next_(self._sourceCodeWidget());
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"regexpListWidget",{},smalltalk.HLReferences)})},
-messageSends: ["ifNil:", "on:", "model", "next:", "sourceCodeWidget"]}),
-smalltalk.HLReferences);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "registerBindingsOn:",
-fn: function (aBindingGroup){
-var self=this;
-function $HLToolCommand(){return smalltalk.HLToolCommand||(typeof HLToolCommand=="undefined"?nil:HLToolCommand)}
-return smalltalk.withContext(function($ctx1) { 
-_st($HLToolCommand())._registerConcreteClassesOn_for_(aBindingGroup,self._model());
-return self}, function($ctx1) {$ctx1.fill(self,"registerBindingsOn:",{aBindingGroup:aBindingGroup},smalltalk.HLReferences)})},
-messageSends: ["registerConcreteClassesOn:for:", "model"]}),
-smalltalk.HLReferences);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderContentOn:",
-fn: function (html){
-var self=this;
-function $HLVerticalSplitter(){return smalltalk.HLVerticalSplitter||(typeof HLVerticalSplitter=="undefined"?nil:HLVerticalSplitter)}
-function $HLHorizontalSplitter(){return smalltalk.HLHorizontalSplitter||(typeof HLHorizontalSplitter=="undefined"?nil:HLHorizontalSplitter)}
-function $HLContainer(){return smalltalk.HLContainer||(typeof HLContainer=="undefined"?nil:HLContainer)}
-return smalltalk.withContext(function($ctx1) { 
-_st(html)._with_(_st($HLContainer())._with_(_st($HLHorizontalSplitter())._with_with_(_st($HLVerticalSplitter())._with_with_(_st($HLVerticalSplitter())._with_with_(self._sendersListWidget(),self._implementorsListWidget()),_st($HLVerticalSplitter())._with_with_(self._classReferencesListWidget(),self._regexpListWidget())),self._sourceCodeWidget())));
-_st(self._sendersListWidget())._focus();
-return self}, function($ctx1) {$ctx1.fill(self,"renderContentOn:",{html:html},smalltalk.HLReferences)})},
-messageSends: ["with:", "with:with:", "sendersListWidget", "implementorsListWidget", "classReferencesListWidget", "regexpListWidget", "sourceCodeWidget", "focus"]}),
-smalltalk.HLReferences);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "search:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._model())._search_(aString);
-return self}, function($ctx1) {$ctx1.fill(self,"search:",{aString:aString},smalltalk.HLReferences)})},
-messageSends: ["search:", "model"]}),
-smalltalk.HLReferences);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "sendersListWidget",
-fn: function (){
-var self=this;
-function $HLSendersListWidget(){return smalltalk.HLSendersListWidget||(typeof HLSendersListWidget=="undefined"?nil:HLSendersListWidget)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@sendersListWidget"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@sendersListWidget"]=_st($HLSendersListWidget())._on_(self._model());
-self["@sendersListWidget"];
-$1=_st(self["@sendersListWidget"])._next_(self._implementorsListWidget());
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"sendersListWidget",{},smalltalk.HLReferences)})},
-messageSends: ["ifNil:", "on:", "model", "next:", "implementorsListWidget"]}),
-smalltalk.HLReferences);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "sourceCodeWidget",
-fn: function (){
-var self=this;
-function $HLBrowserCodeWidget(){return smalltalk.HLBrowserCodeWidget||(typeof HLBrowserCodeWidget=="undefined"?nil:HLBrowserCodeWidget)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$4,$1;
-$2=self["@sourceCodeWidget"];
-if(($receiver = $2) == nil || $receiver == undefined){
-$3=_st($HLBrowserCodeWidget())._new();
-_st($3)._browserModel_(self._model());
-$4=_st($3)._yourself();
-self["@sourceCodeWidget"]=$4;
-$1=self["@sourceCodeWidget"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"sourceCodeWidget",{},smalltalk.HLReferences)})},
-messageSends: ["ifNil:", "browserModel:", "model", "new", "yourself"]}),
-smalltalk.HLReferences);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "canBeOpenAsTab",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return false;
-}, function($ctx1) {$ctx1.fill(self,"canBeOpenAsTab",{},smalltalk.HLReferences.klass)})},
-messageSends: []}),
-smalltalk.HLReferences.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "tabClass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "references";
-}, function($ctx1) {$ctx1.fill(self,"tabClass",{},smalltalk.HLReferences.klass)})},
-messageSends: []}),
-smalltalk.HLReferences.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "tabLabel",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "References";
-}, function($ctx1) {$ctx1.fill(self,"tabLabel",{},smalltalk.HLReferences.klass)})},
-messageSends: []}),
-smalltalk.HLReferences.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "tabPriority",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return (100);
-}, function($ctx1) {$ctx1.fill(self,"tabPriority",{},smalltalk.HLReferences.klass)})},
-messageSends: []}),
-smalltalk.HLReferences.klass);
-
-
-smalltalk.addClass('HLReferencesListWidget', smalltalk.HLToolListWidget, [], 'Helios-References');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "activateListItem:",
-fn: function (anItem){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._model())._withChangesDo_((function(){
-return smalltalk.withContext(function($ctx2) {
-return smalltalk.HLReferencesListWidget.superclass.fn.prototype._activateListItem_.apply(_st(self), [anItem]);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"activateListItem:",{anItem:anItem},smalltalk.HLReferencesListWidget)})},
-messageSends: ["withChangesDo:", "activateListItem:", "model"]}),
-smalltalk.HLReferencesListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "commandCategory",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Methods";
-}, function($ctx1) {$ctx1.fill(self,"commandCategory",{},smalltalk.HLReferencesListWidget)})},
-messageSends: []}),
-smalltalk.HLReferencesListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "label",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "List";
-}, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.HLReferencesListWidget)})},
-messageSends: []}),
-smalltalk.HLReferencesListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "observeModel",
-fn: function (){
-var self=this;
-function $HLSearchReferences(){return smalltalk.HLSearchReferences||(typeof HLSearchReferences=="undefined"?nil:HLSearchReferences)}
-function $HLMethodSelected(){return smalltalk.HLMethodSelected||(typeof HLMethodSelected=="undefined"?nil:HLMethodSelected)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st(self._model())._announcer();
-_st($1)._on_do_($HLSearchReferences(),(function(ann){
-return smalltalk.withContext(function($ctx2) {
-return self._onSearchReferences_(_st(ann)._searchString());
-}, function($ctx2) {$ctx2.fillBlock({ann:ann},$ctx1)})}));
-$2=_st($1)._on_do_($HLMethodSelected(),(function(ann){
-return smalltalk.withContext(function($ctx2) {
-return self._onMethodSelected_(_st(ann)._item());
-}, function($ctx2) {$ctx2.fillBlock({ann:ann},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"observeModel",{},smalltalk.HLReferencesListWidget)})},
-messageSends: ["on:do:", "onSearchReferences:", "searchString", "announcer", "model", "onMethodSelected:", "item"]}),
-smalltalk.HLReferencesListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onMethodSelected:",
-fn: function (aMethod){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4,$5;
-var $early={};
-try {
-$1=aMethod;
-if(($receiver = $1) == nil || $receiver == undefined){
-$2=self;
-return $2;
-} else {
-$1;
-};
-_st(self._items())._detect_ifNone_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(each).__eq(_st(aMethod)._selector());
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}),(function(){
-return smalltalk.withContext(function($ctx2) {
-$3=self;
-throw $early=[$3];
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-$4=self;
-_st($4)._selectedItem_(_st(aMethod)._selector());
-$5=_st($4)._activateItem_(_st(aMethod)._selector());
-return self}
-catch(e) {if(e===$early)return e[0]; throw e}
-}, function($ctx1) {$ctx1.fill(self,"onMethodSelected:",{aMethod:aMethod},smalltalk.HLReferencesListWidget)})},
-messageSends: ["ifNil:", "detect:ifNone:", "=", "selector", "items", "selectedItem:", "activateItem:"]}),
-smalltalk.HLReferencesListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onSearchReferences:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._subclassResponsibility();
-return self}, function($ctx1) {$ctx1.fill(self,"onSearchReferences:",{aString:aString},smalltalk.HLReferencesListWidget)})},
-messageSends: ["subclassResponsibility"]}),
-smalltalk.HLReferencesListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderItemLabel:on:",
-fn: function (aMethod,html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(html)._with_(_st(_st(_st(_st(aMethod)._methodClass())._name()).__comma(" >> #")).__comma(_st(aMethod)._selector()));
-return self}, function($ctx1) {$ctx1.fill(self,"renderItemLabel:on:",{aMethod:aMethod,html:html},smalltalk.HLReferencesListWidget)})},
-messageSends: ["with:", ",", "selector", "name", "methodClass"]}),
-smalltalk.HLReferencesListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selectItem:",
-fn: function (aMethod){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._model())._selectedMethod_(aMethod);
-return self}, function($ctx1) {$ctx1.fill(self,"selectItem:",{aMethod:aMethod},smalltalk.HLReferencesListWidget)})},
-messageSends: ["selectedMethod:", "model"]}),
-smalltalk.HLReferencesListWidget);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "on:",
-fn: function (aModel){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=self._new();
-_st($2)._model_(aModel);
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"on:",{aModel:aModel},smalltalk.HLReferencesListWidget.klass)})},
-messageSends: ["model:", "new", "yourself"]}),
-smalltalk.HLReferencesListWidget.klass);
-
-
-smalltalk.addClass('HLClassReferencesListWidget', smalltalk.HLReferencesListWidget, [], 'Helios-References');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "label",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Class references";
-}, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.HLClassReferencesListWidget)})},
-messageSends: []}),
-smalltalk.HLClassReferencesListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onSearchReferences:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._selectItem_(nil);
-self._items_(_st(self._model())._classReferencesOf_(aString));
-self._refresh();
-return self}, function($ctx1) {$ctx1.fill(self,"onSearchReferences:",{aString:aString},smalltalk.HLClassReferencesListWidget)})},
-messageSends: ["selectItem:", "items:", "classReferencesOf:", "model", "refresh"]}),
-smalltalk.HLClassReferencesListWidget);
-
-
-
-smalltalk.addClass('HLImplementorsListWidget', smalltalk.HLReferencesListWidget, [], 'Helios-References');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "label",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Implementors";
-}, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.HLImplementorsListWidget)})},
-messageSends: []}),
-smalltalk.HLImplementorsListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onSearchReferences:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._selectItem_(nil);
-self._items_(_st(self._model())._implementorsOf_(aString));
-self._refresh();
-return self}, function($ctx1) {$ctx1.fill(self,"onSearchReferences:",{aString:aString},smalltalk.HLImplementorsListWidget)})},
-messageSends: ["selectItem:", "items:", "implementorsOf:", "model", "refresh"]}),
-smalltalk.HLImplementorsListWidget);
-
-
-
-smalltalk.addClass('HLRegexpListWidget', smalltalk.HLReferencesListWidget, [], 'Helios-References');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "label",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Source search";
-}, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.HLRegexpListWidget)})},
-messageSends: []}),
-smalltalk.HLRegexpListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onSearchReferences:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._selectItem_(nil);
-self._items_(_st(self._model())._regexpReferencesOf_(aString));
-self._refresh();
-return self}, function($ctx1) {$ctx1.fill(self,"onSearchReferences:",{aString:aString},smalltalk.HLRegexpListWidget)})},
-messageSends: ["selectItem:", "items:", "regexpReferencesOf:", "model", "refresh"]}),
-smalltalk.HLRegexpListWidget);
-
-
-
-smalltalk.addClass('HLSendersListWidget', smalltalk.HLReferencesListWidget, [], 'Helios-References');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "label",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Senders";
-}, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.HLSendersListWidget)})},
-messageSends: []}),
-smalltalk.HLSendersListWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onSearchReferences:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._selectItem_(nil);
-self._items_(_st(self._model())._sendersOf_(aString));
-self._refresh();
-return self}, function($ctx1) {$ctx1.fill(self,"onSearchReferences:",{aString:aString},smalltalk.HLSendersListWidget)})},
-messageSends: ["selectItem:", "items:", "sendersOf:", "model", "refresh"]}),
-smalltalk.HLSendersListWidget);
-
-
-
-smalltalk.addClass('HLReferencesModel', smalltalk.HLToolModel, ['methodsCache', 'classesAndMetaclassesCache'], 'Helios-References');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "allMethods",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._methodsCache();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"allMethods",{},smalltalk.HLReferencesModel)})},
-messageSends: ["methodsCache"]}),
-smalltalk.HLReferencesModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "allSelectors",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(self._allMethods())._collect_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(each)._selector();
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})})))._asSet();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"allSelectors",{},smalltalk.HLReferencesModel)})},
-messageSends: ["asSet", "collect:", "selector", "allMethods"]}),
-smalltalk.HLReferencesModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "classReferencesOf:",
-fn: function (aString){
-var self=this;
-var references;
-function $OrderedCollection(){return smalltalk.OrderedCollection||(typeof OrderedCollection=="undefined"?nil:OrderedCollection)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-references=_st($OrderedCollection())._new();
-_st(self._classesAndMetaclasses())._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(_st(each)._methodDictionary())._values())._do_((function(method){
-return smalltalk.withContext(function($ctx3) {
-$1=_st(_st(method)._referencedClasses())._includes_(aString);
-if(smalltalk.assert($1)){
-return _st(references)._add_(method);
-};
-}, function($ctx3) {$ctx3.fillBlock({method:method},$ctx2)})}));
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-$2=references;
-return $2;
-}, function($ctx1) {$ctx1.fill(self,"classReferencesOf:",{aString:aString,references:references},smalltalk.HLReferencesModel)})},
-messageSends: ["new", "do:", "ifTrue:", "add:", "includes:", "referencedClasses", "values", "methodDictionary", "classesAndMetaclasses"]}),
-smalltalk.HLReferencesModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "classesAndMetaclasses",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._classesAndMetaclassesCache();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"classesAndMetaclasses",{},smalltalk.HLReferencesModel)})},
-messageSends: ["classesAndMetaclassesCache"]}),
-smalltalk.HLReferencesModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "classesAndMetaclassesCache",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=self["@classesAndMetaclassesCache"];
-if(($receiver = $1) == nil || $receiver == undefined){
-self._updateClassesAndMetaclassesCache();
-} else {
-$1;
-};
-$2=self["@classesAndMetaclassesCache"];
-return $2;
-}, function($ctx1) {$ctx1.fill(self,"classesAndMetaclassesCache",{},smalltalk.HLReferencesModel)})},
-messageSends: ["ifNil:", "updateClassesAndMetaclassesCache"]}),
-smalltalk.HLReferencesModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "implementorsOf:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(self._allMethods())._select_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(each)._selector()).__eq(aString);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})})))._collect_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return self._methodReferenceOn_(each);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"implementorsOf:",{aString:aString},smalltalk.HLReferencesModel)})},
-messageSends: ["collect:", "methodReferenceOn:", "select:", "=", "selector", "allMethods"]}),
-smalltalk.HLReferencesModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isReferencesModel",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"isReferencesModel",{},smalltalk.HLReferencesModel)})},
-messageSends: []}),
-smalltalk.HLReferencesModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "methodReferenceOn:",
-fn: function (aCompiledMethod){
-var self=this;
-function $HLMethodReference(){return smalltalk.HLMethodReference||(typeof HLMethodReference=="undefined"?nil:HLMethodReference)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st($HLMethodReference())._on_(aCompiledMethod);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"methodReferenceOn:",{aCompiledMethod:aCompiledMethod},smalltalk.HLReferencesModel)})},
-messageSends: ["on:"]}),
-smalltalk.HLReferencesModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "methodsCache",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=self["@methodsCache"];
-if(($receiver = $1) == nil || $receiver == undefined){
-self._updateMethodsCache();
-} else {
-$1;
-};
-$2=self["@methodsCache"];
-return $2;
-}, function($ctx1) {$ctx1.fill(self,"methodsCache",{},smalltalk.HLReferencesModel)})},
-messageSends: ["ifNil:", "updateMethodsCache"]}),
-smalltalk.HLReferencesModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "regexpReferencesOf:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(self._allMethods())._select_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(each)._source())._match_(aString);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})})))._collect_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return self._methodReferenceOn_(each);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"regexpReferencesOf:",{aString:aString},smalltalk.HLReferencesModel)})},
-messageSends: ["collect:", "methodReferenceOn:", "select:", "match:", "source", "allMethods"]}),
-smalltalk.HLReferencesModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "search:",
-fn: function (aString){
-var self=this;
-function $HLSearchReferences(){return smalltalk.HLSearchReferences||(typeof HLSearchReferences=="undefined"?nil:HLSearchReferences)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-self._updateCaches();
-$1=_st($HLSearchReferences())._new();
-_st($1)._searchString_(aString);
-$2=_st($1)._yourself();
-_st(self._announcer())._announce_($2);
-return self}, function($ctx1) {$ctx1.fill(self,"search:",{aString:aString},smalltalk.HLReferencesModel)})},
-messageSends: ["updateCaches", "announce:", "searchString:", "new", "yourself", "announcer"]}),
-smalltalk.HLReferencesModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "sendersOf:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(self._allMethods())._select_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(each)._messageSends())._includes_(aString);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})})))._collect_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return self._methodReferenceOn_(each);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"sendersOf:",{aString:aString},smalltalk.HLReferencesModel)})},
-messageSends: ["collect:", "methodReferenceOn:", "select:", "includes:", "messageSends", "allMethods"]}),
-smalltalk.HLReferencesModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "updateCaches",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=self;
-_st($1)._updateClassesAndMetaclassesCache();
-$2=_st($1)._updateMethodsCache();
-return self}, function($ctx1) {$ctx1.fill(self,"updateCaches",{},smalltalk.HLReferencesModel)})},
-messageSends: ["updateClassesAndMetaclassesCache", "updateMethodsCache"]}),
-smalltalk.HLReferencesModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "updateClassesAndMetaclassesCache",
-fn: function (){
-var self=this;
-function $OrderedCollection(){return smalltalk.OrderedCollection||(typeof OrderedCollection=="undefined"?nil:OrderedCollection)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-self["@classesAndMetaclassesCache"]=_st(_st(self._environment())._classes())._inject_into_(_st($OrderedCollection())._new(),(function(acc,each){
-return smalltalk.withContext(function($ctx2) {
-$1=acc;
-_st($1)._add_(each);
-_st($1)._add_(_st(each)._class());
-$2=_st($1)._yourself();
-return $2;
-}, function($ctx2) {$ctx2.fillBlock({acc:acc,each:each},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"updateClassesAndMetaclassesCache",{},smalltalk.HLReferencesModel)})},
-messageSends: ["inject:into:", "new", "add:", "class", "yourself", "classes", "environment"]}),
-smalltalk.HLReferencesModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "updateMethodsCache",
-fn: function (){
-var self=this;
-function $OrderedCollection(){return smalltalk.OrderedCollection||(typeof OrderedCollection=="undefined"?nil:OrderedCollection)}
-return smalltalk.withContext(function($ctx1) { 
-self["@methodsCache"]=_st(self._classesAndMetaclasses())._inject_into_(_st($OrderedCollection())._new(),(function(acc,each){
-return smalltalk.withContext(function($ctx2) {
-return _st(acc).__comma(_st(each)._methods());
-}, function($ctx2) {$ctx2.fillBlock({acc:acc,each:each},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"updateMethodsCache",{},smalltalk.HLReferencesModel)})},
-messageSends: ["inject:into:", "new", ",", "methods", "classesAndMetaclasses"]}),
-smalltalk.HLReferencesModel);
-
-
-});

+ 0 - 176
js/Helios-Transcript.deploy.js

@@ -1,176 +0,0 @@
-define("amber/Helios-Transcript", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/Helios-Core", "amber/Kernel-Objects"], function(smalltalk,nil,_st){
-smalltalk.addPackage('Helios-Transcript');
-smalltalk.packages["Helios-Transcript"].transport = {"type":"amd","amdNamespace":"amber"};
-
-smalltalk.addClass('HLTranscript', smalltalk.HLWidget, ['textarea'], 'Helios-Transcript');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "clear",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(_st(self["@textarea"])._asJQuery())._text_("");
-return self}, function($ctx1) {$ctx1.fill(self,"clear",{},smalltalk.HLTranscript)})},
-messageSends: ["text:", "asJQuery"]}),
-smalltalk.HLTranscript);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "initialize",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-smalltalk.HLTranscript.superclass.fn.prototype._initialize.apply(_st(self), []);
-self._register();
-return self}, function($ctx1) {$ctx1.fill(self,"initialize",{},smalltalk.HLTranscript)})},
-messageSends: ["initialize", "register"]}),
-smalltalk.HLTranscript);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "register",
-fn: function (){
-var self=this;
-function $HLTranscriptHandler(){return smalltalk.HLTranscriptHandler||(typeof HLTranscriptHandler=="undefined"?nil:HLTranscriptHandler)}
-return smalltalk.withContext(function($ctx1) { 
-_st($HLTranscriptHandler())._register_(self);
-return self}, function($ctx1) {$ctx1.fill(self,"register",{},smalltalk.HLTranscript)})},
-messageSends: ["register:"]}),
-smalltalk.HLTranscript);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st(html)._div();
-_st($1)._class_("transcript");
-$2=_st($1)._with_((function(){
-return smalltalk.withContext(function($ctx2) {
-self["@textarea"]=_st(html)._textarea();
-return self["@textarea"];
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"renderOn:",{html:html},smalltalk.HLTranscript)})},
-messageSends: ["class:", "div", "with:", "textarea"]}),
-smalltalk.HLTranscript);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "show:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@textarea"];
-if(($receiver = $1) == nil || $receiver == undefined){
-$1;
-} else {
-_st(_st(self["@textarea"])._asJQuery())._append_(_st(aString)._asString());
-};
-return self}, function($ctx1) {$ctx1.fill(self,"show:",{aString:aString},smalltalk.HLTranscript)})},
-messageSends: ["ifNotNil:", "append:", "asString", "asJQuery"]}),
-smalltalk.HLTranscript);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "unregister",
-fn: function (){
-var self=this;
-function $HLTranscriptHandler(){return smalltalk.HLTranscriptHandler||(typeof HLTranscriptHandler=="undefined"?nil:HLTranscriptHandler)}
-return smalltalk.withContext(function($ctx1) { 
-smalltalk.HLTranscript.superclass.fn.prototype._unregister.apply(_st(self), []);
-_st($HLTranscriptHandler())._unregister_(self);
-return self}, function($ctx1) {$ctx1.fill(self,"unregister",{},smalltalk.HLTranscript)})},
-messageSends: ["unregister", "unregister:"]}),
-smalltalk.HLTranscript);
-
-
-
-smalltalk.addClass('HLTranscriptHandler', smalltalk.Object, [], 'Helios-Transcript');
-
-smalltalk.HLTranscriptHandler.klass.iVarNames = ['transcripts'];
-smalltalk.addMethod(
-smalltalk.method({
-selector: "clear",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._transcripts())._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(each)._clear();
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"clear",{},smalltalk.HLTranscriptHandler.klass)})},
-messageSends: ["do:", "clear", "transcripts"]}),
-smalltalk.HLTranscriptHandler.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "initialize",
-fn: function (){
-var self=this;
-function $Transcript(){return smalltalk.Transcript||(typeof Transcript=="undefined"?nil:Transcript)}
-return smalltalk.withContext(function($ctx1) { 
-_st($Transcript())._register_(self);
-return self}, function($ctx1) {$ctx1.fill(self,"initialize",{},smalltalk.HLTranscriptHandler.klass)})},
-messageSends: ["register:"]}),
-smalltalk.HLTranscriptHandler.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "register:",
-fn: function (aTranscript){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._transcripts())._add_(aTranscript);
-return self}, function($ctx1) {$ctx1.fill(self,"register:",{aTranscript:aTranscript},smalltalk.HLTranscriptHandler.klass)})},
-messageSends: ["add:", "transcripts"]}),
-smalltalk.HLTranscriptHandler.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "show:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._transcripts())._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(each)._show_(aString);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"show:",{aString:aString},smalltalk.HLTranscriptHandler.klass)})},
-messageSends: ["do:", "show:", "transcripts"]}),
-smalltalk.HLTranscriptHandler.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "transcripts",
-fn: function (){
-var self=this;
-function $OrderedCollection(){return smalltalk.OrderedCollection||(typeof OrderedCollection=="undefined"?nil:OrderedCollection)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@transcripts"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@transcripts"]=_st($OrderedCollection())._new();
-$1=self["@transcripts"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"transcripts",{},smalltalk.HLTranscriptHandler.klass)})},
-messageSends: ["ifNil:", "new"]}),
-smalltalk.HLTranscriptHandler.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "unregister:",
-fn: function (aTranscript){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._transcripts())._remove_(aTranscript);
-return self}, function($ctx1) {$ctx1.fill(self,"unregister:",{aTranscript:aTranscript},smalltalk.HLTranscriptHandler.klass)})},
-messageSends: ["remove:", "transcripts"]}),
-smalltalk.HLTranscriptHandler.klass);
-
-});

+ 0 - 21
js/Helios-Workspace-Tests.deploy.js

@@ -1,21 +0,0 @@
-define("amber/Helios-Workspace-Tests", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/SUnit"], function(smalltalk,nil,_st){
-smalltalk.addPackage('Helios-Workspace-Tests');
-smalltalk.packages["Helios-Workspace-Tests"].transport = {"type":"amd","amdNamespace":"amber"};
-
-smalltalk.addClass('HLCodeWidgetTest', smalltalk.TestCase, [], 'Helios-Workspace-Tests');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testKeyMap",
-fn: function (){
-var self=this;
-function $HashedCollection(){return smalltalk.HashedCollection||(typeof HashedCollection=="undefined"?nil:HashedCollection)}
-function $HLCodeWidget(){return smalltalk.HLCodeWidget||(typeof HLCodeWidget=="undefined"?nil:HLCodeWidget)}
-return smalltalk.withContext(function($ctx1) { 
-self._assert_(_st(_st($HLCodeWidget())._pcKeyMap())._isKindOf_($HashedCollection()));
-self._assert_(_st(_st($HLCodeWidget())._macKeyMap())._isKindOf_($HashedCollection()));
-return self}, function($ctx1) {$ctx1.fill(self,"testKeyMap",{},smalltalk.HLCodeWidgetTest)})},
-messageSends: ["assert:", "isKindOf:", "pcKeyMap", "macKeyMap"]}),
-smalltalk.HLCodeWidgetTest);
-
-
-});

+ 0 - 1580
js/Helios-Workspace.deploy.js

@@ -1,1580 +0,0 @@
-define("amber/Helios-Workspace", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/Kernel-Objects", "amber/Helios-Core"], function(smalltalk,nil,_st){
-smalltalk.addPackage('Helios-Workspace');
-smalltalk.packages["Helios-Workspace"].transport = {"type":"amd","amdNamespace":"amber"};
-
-smalltalk.addClass('HLCodeModel', smalltalk.Object, ['announcer', 'environment', 'receiver'], 'Helios-Workspace');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "announcer",
-fn: function (){
-var self=this;
-function $Announcer(){return smalltalk.Announcer||(typeof Announcer=="undefined"?nil:Announcer)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@announcer"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@announcer"]=_st($Announcer())._new();
-$1=self["@announcer"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"announcer",{},smalltalk.HLCodeModel)})},
-messageSends: ["ifNil:", "new"]}),
-smalltalk.HLCodeModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "defaultReceiver",
-fn: function (){
-var self=this;
-function $DoIt(){return smalltalk.DoIt||(typeof DoIt=="undefined"?nil:DoIt)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st($DoIt())._new();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"defaultReceiver",{},smalltalk.HLCodeModel)})},
-messageSends: ["new"]}),
-smalltalk.HLCodeModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "doIt:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._environment())._eval_on_(aString,self._receiver());
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"doIt:",{aString:aString},smalltalk.HLCodeModel)})},
-messageSends: ["eval:on:", "receiver", "environment"]}),
-smalltalk.HLCodeModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "environment",
-fn: function (){
-var self=this;
-function $HLManager(){return smalltalk.HLManager||(typeof HLManager=="undefined"?nil:HLManager)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@environment"];
-if(($receiver = $2) == nil || $receiver == undefined){
-$1=_st(_st($HLManager())._current())._environment();
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"environment",{},smalltalk.HLCodeModel)})},
-messageSends: ["ifNil:", "environment", "current"]}),
-smalltalk.HLCodeModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "environment:",
-fn: function (anEnvironment){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@environment"]=anEnvironment;
-return self}, function($ctx1) {$ctx1.fill(self,"environment:",{anEnvironment:anEnvironment},smalltalk.HLCodeModel)})},
-messageSends: []}),
-smalltalk.HLCodeModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "inspect:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._environment())._inspect_(anObject);
-return self}, function($ctx1) {$ctx1.fill(self,"inspect:",{anObject:anObject},smalltalk.HLCodeModel)})},
-messageSends: ["inspect:", "environment"]}),
-smalltalk.HLCodeModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "receiver",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@receiver"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@receiver"]=self._defaultReceiver();
-$1=self["@receiver"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"receiver",{},smalltalk.HLCodeModel)})},
-messageSends: ["ifNil:", "defaultReceiver"]}),
-smalltalk.HLCodeModel);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "receiver:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@receiver"]=anObject;
-return self}, function($ctx1) {$ctx1.fill(self,"receiver:",{anObject:anObject},smalltalk.HLCodeModel)})},
-messageSends: []}),
-smalltalk.HLCodeModel);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "on:",
-fn: function (anEnvironment){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=self._new();
-_st($2)._environment_(anEnvironment);
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"on:",{anEnvironment:anEnvironment},smalltalk.HLCodeModel.klass)})},
-messageSends: ["environment:", "new", "yourself"]}),
-smalltalk.HLCodeModel.klass);
-
-
-smalltalk.addClass('HLCodeWidget', smalltalk.HLWidget, ['model', 'wrapper', 'code', 'editor', 'state'], 'Helios-Workspace');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "announcer",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._model())._announcer();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"announcer",{},smalltalk.HLCodeWidget)})},
-messageSends: ["announcer", "model"]}),
-smalltalk.HLCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "canHaveFocus",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"canHaveFocus",{},smalltalk.HLCodeWidget)})},
-messageSends: []}),
-smalltalk.HLCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "clear",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._contents_("");
-return self}, function($ctx1) {$ctx1.fill(self,"clear",{},smalltalk.HLCodeWidget)})},
-messageSends: ["contents:"]}),
-smalltalk.HLCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "configureEditor",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._editor())._at_put_("amberCodeWidget",self);
-_st(self._editor())._on_do_("change",(function(){
-return smalltalk.withContext(function($ctx2) {
-return self._onChange();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"configureEditor",{},smalltalk.HLCodeWidget)})},
-messageSends: ["at:put:", "editor", "on:do:", "onChange"]}),
-smalltalk.HLCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "contents",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self["@editor"])._getValue();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"contents",{},smalltalk.HLCodeWidget)})},
-messageSends: ["getValue"]}),
-smalltalk.HLCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "contents:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-_st(self["@editor"])._setValue_(aString);
-$1=self["@state"];
-if(($receiver = $1) == nil || $receiver == undefined){
-$1;
-} else {
-self._updateState();
-};
-return self}, function($ctx1) {$ctx1.fill(self,"contents:",{aString:aString},smalltalk.HLCodeWidget)})},
-messageSends: ["setValue:", "ifNotNil:", "updateState"]}),
-smalltalk.HLCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "currentLine",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self["@editor"])._getLine_(_st(_st(self["@editor"])._getCursor())._line());
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"currentLine",{},smalltalk.HLCodeWidget)})},
-messageSends: ["getLine:", "line", "getCursor"]}),
-smalltalk.HLCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "currentLineOrSelection",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=_st(self["@editor"])._somethingSelected();
-if(smalltalk.assert($2)){
-$1=self._selection();
-} else {
-$1=self._currentLine();
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"currentLineOrSelection",{},smalltalk.HLCodeWidget)})},
-messageSends: ["ifFalse:ifTrue:", "currentLine", "selection", "somethingSelected"]}),
-smalltalk.HLCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "doIt",
-fn: function (){
-var self=this;
-var result;
-function $HLDoItRequested(){return smalltalk.HLDoItRequested||(typeof HLDoItRequested=="undefined"?nil:HLDoItRequested)}
-function $HLDoItExecuted(){return smalltalk.HLDoItExecuted||(typeof HLDoItExecuted=="undefined"?nil:HLDoItExecuted)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-_st(_st(self._model())._announcer())._announce_(_st($HLDoItRequested())._on_(self["@model"]));
-result=_st(self["@model"])._doIt_(self._currentLineOrSelection());
-_st(_st(self._model())._announcer())._announce_(_st($HLDoItExecuted())._on_(self["@model"]));
-$1=result;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"doIt",{result:result},smalltalk.HLCodeWidget)})},
-messageSends: ["announce:", "on:", "announcer", "model", "doIt:", "currentLineOrSelection"]}),
-smalltalk.HLCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "editor",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@editor"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"editor",{},smalltalk.HLCodeWidget)})},
-messageSends: []}),
-smalltalk.HLCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "editorOptions",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=smalltalk.HashedCollection._from_(["theme".__minus_gt("amber"),"lineNumbers".__minus_gt(true),"enterMode".__minus_gt("flat"),"indentWithTabs".__minus_gt(true),"indentUnit".__minus_gt((4)),"matchBrackets".__minus_gt(true),"electricChars".__minus_gt(false),"keyMap".__minus_gt("Amber"),"extraKeys".__minus_gt(smalltalk.HashedCollection._from_(["Shift-Space".__minus_gt("autocomplete")]))]);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"editorOptions",{},smalltalk.HLCodeWidget)})},
-messageSends: ["->"]}),
-smalltalk.HLCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "focus",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self["@editor"])._focus();
-return self}, function($ctx1) {$ctx1.fill(self,"focus",{},smalltalk.HLCodeWidget)})},
-messageSends: ["focus"]}),
-smalltalk.HLCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "hasFocus",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(self["@code"])._asJQuery())._is_(":active");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"hasFocus",{},smalltalk.HLCodeWidget)})},
-messageSends: ["is:", "asJQuery"]}),
-smalltalk.HLCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "hasModification",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return false;
-}, function($ctx1) {$ctx1.fill(self,"hasModification",{},smalltalk.HLCodeWidget)})},
-messageSends: []}),
-smalltalk.HLCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "inspectIt",
-fn: function (){
-var self=this;
-var newInspector;
-function $HLInspectItRequested(){return smalltalk.HLInspectItRequested||(typeof HLInspectItRequested=="undefined"?nil:HLInspectItRequested)}
-return smalltalk.withContext(function($ctx1) { 
-_st(_st(self._model())._announcer())._announce_(_st($HLInspectItRequested())._on_(self["@model"]));
-_st(self._model())._inspect_(self._doIt());
-return self}, function($ctx1) {$ctx1.fill(self,"inspectIt",{newInspector:newInspector},smalltalk.HLCodeWidget)})},
-messageSends: ["announce:", "on:", "announcer", "model", "inspect:", "doIt"]}),
-smalltalk.HLCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "messageHintFor:token:",
-fn: function (anEditor,aToken){
-var self=this;
-function $Smalltalk(){return smalltalk.Smalltalk||(typeof Smalltalk=="undefined"?nil:Smalltalk)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(_st(_st(_st(_st(_st($Smalltalk())._current())._at_("allSelectors"))._value())._asSet())._asArray())._select_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(each)._includesSubString_(_st(aToken)._string());
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})})))._reject_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(each).__eq(_st(aToken)._string());
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"messageHintFor:token:",{anEditor:anEditor,aToken:aToken},smalltalk.HLCodeWidget)})},
-messageSends: ["reject:", "=", "string", "select:", "includesSubString:", "asArray", "asSet", "value", "at:", "current"]}),
-smalltalk.HLCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "model",
-fn: function (){
-var self=this;
-function $HLCodeModel(){return smalltalk.HLCodeModel||(typeof HLCodeModel=="undefined"?nil:HLCodeModel)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@model"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@model"]=_st($HLCodeModel())._new();
-$1=self["@model"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"model",{},smalltalk.HLCodeWidget)})},
-messageSends: ["ifNil:", "new"]}),
-smalltalk.HLCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "model:",
-fn: function (aModel){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@model"]=aModel;
-return self}, function($ctx1) {$ctx1.fill(self,"model:",{aModel:aModel},smalltalk.HLCodeWidget)})},
-messageSends: []}),
-smalltalk.HLCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onChange",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._updateState();
-return self}, function($ctx1) {$ctx1.fill(self,"onChange",{},smalltalk.HLCodeWidget)})},
-messageSends: ["updateState"]}),
-smalltalk.HLCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onDoIt",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._doIt();
-return self}, function($ctx1) {$ctx1.fill(self,"onDoIt",{},smalltalk.HLCodeWidget)})},
-messageSends: ["doIt"]}),
-smalltalk.HLCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onInspectIt",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._inspectIt();
-return self}, function($ctx1) {$ctx1.fill(self,"onInspectIt",{},smalltalk.HLCodeWidget)})},
-messageSends: ["inspectIt"]}),
-smalltalk.HLCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onPrintIt",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._printIt();
-return self}, function($ctx1) {$ctx1.fill(self,"onPrintIt",{},smalltalk.HLCodeWidget)})},
-messageSends: ["printIt"]}),
-smalltalk.HLCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onSaveIt",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self}, function($ctx1) {$ctx1.fill(self,"onSaveIt",{},smalltalk.HLCodeWidget)})},
-messageSends: []}),
-smalltalk.HLCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "print:",
-fn: function (aString){
-var self=this;
-var start,stop,currentLine;
-function $HashedCollection(){return smalltalk.HashedCollection||(typeof HashedCollection=="undefined"?nil:HashedCollection)}
-return smalltalk.withContext(function($ctx1) { 
-currentLine=_st(_st(self["@editor"])._getCursor_(false))._line();
-start=_st($HashedCollection())._new();
-_st(start)._at_put_("line",currentLine);
-_st(start)._at_put_("ch",_st(_st(self["@editor"])._getCursor_(false))._ch());
-_st(_st(self["@editor"])._getSelection())._ifEmpty_((function(){
-return smalltalk.withContext(function($ctx2) {
-_st(start)._at_put_("ch",_st(_st(self["@editor"])._getLine_(currentLine))._size());
-return _st(self["@editor"])._setSelection_end_(smalltalk.HashedCollection._from_(["line".__minus_gt(currentLine),"ch".__minus_gt((0))]),start);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-stop=_st($HashedCollection())._new();
-_st(stop)._at_put_("line",currentLine);
-_st(stop)._at_put_("ch",_st(_st(_st(start)._at_("ch")).__plus(_st(aString)._size())).__plus((2)));
-_st(self["@editor"])._replaceSelection_(_st(_st(_st(_st(self["@editor"])._getSelection()).__comma(" ")).__comma(aString)).__comma(" "));
-_st(self["@editor"])._setCursor_(_st(self["@editor"])._getCursor_(true));
-_st(self["@editor"])._setSelection_end_(stop,start);
-return self}, function($ctx1) {$ctx1.fill(self,"print:",{aString:aString,start:start,stop:stop,currentLine:currentLine},smalltalk.HLCodeWidget)})},
-messageSends: ["line", "getCursor:", "new", "at:put:", "ch", "ifEmpty:", "size", "getLine:", "setSelection:end:", "->", "getSelection", "+", "at:", "replaceSelection:", ",", "setCursor:"]}),
-smalltalk.HLCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "printIt",
-fn: function (){
-var self=this;
-var result;
-function $HLPrintItRequested(){return smalltalk.HLPrintItRequested||(typeof HLPrintItRequested=="undefined"?nil:HLPrintItRequested)}
-return smalltalk.withContext(function($ctx1) { 
-result=self._doIt();
-_st(_st(self._model())._announcer())._announce_(_st($HLPrintItRequested())._on_(self["@model"]));
-self._print_(_st(result)._printString());
-self._focus();
-return self}, function($ctx1) {$ctx1.fill(self,"printIt",{result:result},smalltalk.HLCodeWidget)})},
-messageSends: ["doIt", "announce:", "on:", "announcer", "model", "print:", "printString", "focus"]}),
-smalltalk.HLCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "receiver",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._model())._receiver();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"receiver",{},smalltalk.HLCodeWidget)})},
-messageSends: ["receiver", "model"]}),
-smalltalk.HLCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "receiver:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._model())._receiver_(anObject);
-return self}, function($ctx1) {$ctx1.fill(self,"receiver:",{anObject:anObject},smalltalk.HLCodeWidget)})},
-messageSends: ["receiver:", "model"]}),
-smalltalk.HLCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderButtonsOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4,$5,$6;
-$1=_st(html)._button();
-_st($1)._class_("button");
-_st($1)._with_("DoIt");
-$2=_st($1)._onClick_((function(){
-return smalltalk.withContext(function($ctx2) {
-return self._doIt();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-$3=_st(html)._button();
-_st($3)._class_("button");
-_st($3)._with_("PrintIt");
-$4=_st($3)._onClick_((function(){
-return smalltalk.withContext(function($ctx2) {
-return self._printIt();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-$5=_st(html)._button();
-_st($5)._class_("button");
-_st($5)._with_("InspectIt");
-$6=_st($5)._onClick_((function(){
-return smalltalk.withContext(function($ctx2) {
-return self._inspectIt();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"renderButtonsOn:",{html:html},smalltalk.HLCodeWidget)})},
-messageSends: ["class:", "button", "with:", "onClick:", "doIt", "printIt", "inspectIt"]}),
-smalltalk.HLCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderContentOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4,$5,$6;
-$1=_st(html)._div();
-_st($1)._class_("editor");
-$2=_st($1)._with_((function(){
-return smalltalk.withContext(function($ctx2) {
-self["@code"]=_st(html)._textarea();
-return self["@code"];
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-self["@state"]=_st(_st(html)._div())._class_("state");
-$3=_st(html)._div();
-_st($3)._class_("buttons_bar");
-$4=_st($3)._with_((function(){
-return smalltalk.withContext(function($ctx2) {
-return self._renderButtonsOn_(html);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-$5=self;
-_st($5)._setEditorOn_(_st(self["@code"])._element());
-_st($5)._configureEditor();
-$6=_st($5)._updateState();
-return self}, function($ctx1) {$ctx1.fill(self,"renderContentOn:",{html:html},smalltalk.HLCodeWidget)})},
-messageSends: ["class:", "div", "with:", "textarea", "renderButtonsOn:", "setEditorOn:", "element", "configureEditor", "updateState"]}),
-smalltalk.HLCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "saveIt",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self}, function($ctx1) {$ctx1.fill(self,"saveIt",{},smalltalk.HLCodeWidget)})},
-messageSends: []}),
-smalltalk.HLCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selection",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self["@editor"])._getSelection();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"selection",{},smalltalk.HLCodeWidget)})},
-messageSends: ["getSelection"]}),
-smalltalk.HLCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selectionEnd",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(self["@code"])._element())._selectionEnd();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"selectionEnd",{},smalltalk.HLCodeWidget)})},
-messageSends: ["selectionEnd", "element"]}),
-smalltalk.HLCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selectionEnd:",
-fn: function (anInteger){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(_st(self["@code"])._element())._selectionEnd_(anInteger);
-return self}, function($ctx1) {$ctx1.fill(self,"selectionEnd:",{anInteger:anInteger},smalltalk.HLCodeWidget)})},
-messageSends: ["selectionEnd:", "element"]}),
-smalltalk.HLCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selectionStart",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(self["@code"])._element())._selectionStart();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"selectionStart",{},smalltalk.HLCodeWidget)})},
-messageSends: ["selectionStart", "element"]}),
-smalltalk.HLCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selectionStart:",
-fn: function (anInteger){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(_st(self["@code"])._element())._selectionStart_(anInteger);
-return self}, function($ctx1) {$ctx1.fill(self,"selectionStart:",{anInteger:anInteger},smalltalk.HLCodeWidget)})},
-messageSends: ["selectionStart:", "element"]}),
-smalltalk.HLCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "setEditorOn:",
-fn: function (aTextarea){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self['@editor'] = CodeMirror.fromTextArea(aTextarea, self._editorOptions());
-return self}, function($ctx1) {$ctx1.fill(self,"setEditorOn:",{aTextarea:aTextarea},smalltalk.HLCodeWidget)})},
-messageSends: []}),
-smalltalk.HLCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "updateState",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._hasModification();
-if(smalltalk.assert($1)){
-_st(_st(self["@state"])._asJQuery())._addClass_("modified");
-} else {
-_st(_st(self["@state"])._asJQuery())._removeClass_("modified");
-};
-return self}, function($ctx1) {$ctx1.fill(self,"updateState",{},smalltalk.HLCodeWidget)})},
-messageSends: ["ifTrue:ifFalse:", "addClass:", "asJQuery", "removeClass:", "hasModification"]}),
-smalltalk.HLCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "variableHintFor:token:",
-fn: function (anEditor,aToken){
-var self=this;
-var variables,classNames,pseudoVariables;
-function $Smalltalk(){return smalltalk.Smalltalk||(typeof Smalltalk=="undefined"?nil:Smalltalk)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-variables=_st(_st(_st(_st(_st(_st(anEditor)._display())._wrapper())._asJQuery())._find_("span.cm-variable"))._get())._collect_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(each)._asJQuery())._html();
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-classNames=_st(_st(_st($Smalltalk())._current())._classes())._collect_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(each)._name();
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-pseudoVariables=_st(_st($Smalltalk())._current())._pseudoVariableNames();
-$1=_st(_st(_st(_st(_st(_st(variables).__comma(classNames)).__comma(pseudoVariables))._asSet())._asArray())._select_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(each)._includesSubString_(_st(aToken)._string());
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})})))._reject_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(each).__eq(_st(aToken)._string());
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"variableHintFor:token:",{anEditor:anEditor,aToken:aToken,variables:variables,classNames:classNames,pseudoVariables:pseudoVariables},smalltalk.HLCodeWidget)})},
-messageSends: ["collect:", "html", "asJQuery", "get", "find:", "wrapper", "display", "name", "classes", "current", "pseudoVariableNames", "reject:", "=", "string", "select:", "includesSubString:", "asArray", "asSet", ","]}),
-smalltalk.HLCodeWidget);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "hintFor:options:",
-fn: function (anEditor,options){
-var self=this;
-var cursor,token,completions;
-function $CodeMirror(){return smalltalk.CodeMirror||(typeof CodeMirror=="undefined"?nil:CodeMirror)}
-function $HLCodeWidget(){return smalltalk.HLCodeWidget||(typeof HLCodeWidget=="undefined"?nil:HLCodeWidget)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-cursor=_st(anEditor)._getCursor();
-token=_st(anEditor)._getTokenAt_(cursor);
-_st(token)._at_put_("state",_st(_st(_st($CodeMirror())._basicAt_("innerMode"))._value_value_(_st(anEditor)._getMode(),_st(token)._at_("state")))._state());
-$1=_st(_st(token)._type()).__eq("variable");
-if(smalltalk.assert($1)){
-completions=_st($HLCodeWidget())._variableHintFor_token_(anEditor,token);
-} else {
-completions=_st($HLCodeWidget())._messageHintFor_token_(anEditor,token);
-};
-$2=smalltalk.HashedCollection._from_(["list".__minus_gt(completions),"from".__minus_gt(_st(_st($CodeMirror())._basicAt_("Pos"))._value_value_(_st(cursor)._line(),_st(token)._end())),"to".__minus_gt(_st(_st($CodeMirror())._basicAt_("Pos"))._value_value_(_st(cursor)._line(),_st(token)._start()))]);
-return $2;
-}, function($ctx1) {$ctx1.fill(self,"hintFor:options:",{anEditor:anEditor,options:options,cursor:cursor,token:token,completions:completions},smalltalk.HLCodeWidget.klass)})},
-messageSends: ["getCursor", "getTokenAt:", "at:put:", "state", "value:value:", "getMode", "at:", "basicAt:", "ifTrue:ifFalse:", "variableHintFor:token:", "messageHintFor:token:", "=", "type", "->", "line", "end", "start"]}),
-smalltalk.HLCodeWidget.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "initialize",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-smalltalk.HLCodeWidget.klass.superclass.fn.prototype._initialize.apply(_st(self), []);
-$1=self;
-_st($1)._setupCodeMirror();
-_st($1)._setupCommands();
-$2=_st($1)._setupKeyMaps();
-return self}, function($ctx1) {$ctx1.fill(self,"initialize",{},smalltalk.HLCodeWidget.klass)})},
-messageSends: ["initialize", "setupCodeMirror", "setupCommands", "setupKeyMaps"]}),
-smalltalk.HLCodeWidget.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "keyMap",
-fn: function (){
-var self=this;
-function $HLManager(){return smalltalk.HLManager||(typeof HLManager=="undefined"?nil:HLManager)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=_st(_st(_st($HLManager())._current())._keyBinder())._systemIsMac();
-if(smalltalk.assert($2)){
-$1=self._macKeyMap();
-} else {
-$1=self._pcKeyMap();
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"keyMap",{},smalltalk.HLCodeWidget.klass)})},
-messageSends: ["ifTrue:ifFalse:", "macKeyMap", "pcKeyMap", "systemIsMac", "keyBinder", "current"]}),
-smalltalk.HLCodeWidget.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "macKeyMap",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=smalltalk.HashedCollection._from_(["Alt-Backspace".__minus_gt("delWordBefore"),"Alt-Delete".__minus_gt("delWordAfter"),"Alt-Left".__minus_gt("goWordBoundaryLeft"),"Alt-Right".__minus_gt("goWordBoundaryRight"),"Cmd-A".__minus_gt("selectAll"),"Cmd-Alt-F".__minus_gt("replace"),"Cmd-D".__minus_gt("doIt"),"Cmd-Down".__minus_gt("goDocEnd"),"Cmd-End".__minus_gt("goDocEnd"),"Cmd-F".__minus_gt("find"),"Cmd-G".__minus_gt("findNext"),"Cmd-I".__minus_gt("inspectIt"),"Cmd-Left".__minus_gt("goLineStart"),"Cmd-P".__minus_gt("printIt"),"Cmd-Right".__minus_gt("goLineEnd"),"Cmd-S".__minus_gt("saveIt"),"Cmd-Up".__minus_gt("goDocStart"),"Cmd-Y".__minus_gt("redo"),"Cmd-Z".__minus_gt("undo"),"Cmd-[".__minus_gt("indentLess"),"Cmd-]".__minus_gt("indentMore"),"Ctrl-Alt-Backspace".__minus_gt("delWordAfter"),"Shift-Cmd-Alt-F".__minus_gt("replaceAll"),"Shift-Cmd-G".__minus_gt("findPrev"),"Shift-Cmd-Z".__minus_gt("redo"),"fallthrough".__minus_gt(["basic","emacsy"])]);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"macKeyMap",{},smalltalk.HLCodeWidget.klass)})},
-messageSends: ["->"]}),
-smalltalk.HLCodeWidget.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "messageHintFor:token:",
-fn: function (anEditor,aToken){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(anEditor)._at_("amberCodeWidget"))._messageHintFor_token_(anEditor,aToken);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"messageHintFor:token:",{anEditor:anEditor,aToken:aToken},smalltalk.HLCodeWidget.klass)})},
-messageSends: ["messageHintFor:token:", "at:"]}),
-smalltalk.HLCodeWidget.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "pcKeyMap",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=smalltalk.HashedCollection._from_(["Alt-Left".__minus_gt("goLineStart"),"Alt-Right".__minus_gt("goLineEnd"),"Alt-Up".__minus_gt("goDocStart"),"Ctrl-A".__minus_gt("selectAll"),"Ctrl-Backspace".__minus_gt("delWordBefore"),"Ctrl-D".__minus_gt("doIt"),"Ctrl-Delete".__minus_gt("delWordAfter"),"Ctrl-Down".__minus_gt("goDocEnd"),"Ctrl-End".__minus_gt("goDocEnd"),"Ctrl-F".__minus_gt("find"),"Ctrl-G".__minus_gt("findNext"),"Ctrl-I".__minus_gt("inspectIt"),"Ctrl-Home".__minus_gt("goDocStart"),"Ctrl-Left".__minus_gt("goWordBoundaryLeft"),"Ctrl-P".__minus_gt("printIt"),"Ctrl-Right".__minus_gt("goWordBoundaryRight"),"Ctrl-S".__minus_gt("saveIt"),"Ctrl-Y".__minus_gt("redo"),"Ctrl-Z".__minus_gt("undo"),"Ctrl-[".__minus_gt("indentLess"),"Ctrl-]".__minus_gt("indentMore"),"Shift-Ctrl-F".__minus_gt("replace"),"Shift-Ctrl-G".__minus_gt("findPrev"),"Shift-Ctrl-R".__minus_gt("replaceAll"),"Shift-Ctrl-Z".__minus_gt("redo"),"fallthrough".__minus_gt(["basic"])]);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"pcKeyMap",{},smalltalk.HLCodeWidget.klass)})},
-messageSends: ["->"]}),
-smalltalk.HLCodeWidget.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "setupCodeMirror",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
- 
-		CodeMirror.keyMap.default.fallthrough = ["basic"];
-		CodeMirror.commands.autocomplete = function(cm) {
-        	CodeMirror.showHint(cm, self._hintFor_options_);
-      	}
-	;
-return self}, function($ctx1) {$ctx1.fill(self,"setupCodeMirror",{},smalltalk.HLCodeWidget.klass)})},
-messageSends: []}),
-smalltalk.HLCodeWidget.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "setupCommands",
-fn: function (){
-var self=this;
-function $CodeMirror(){return smalltalk.CodeMirror||(typeof CodeMirror=="undefined"?nil:CodeMirror)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st($CodeMirror())._basicAt_("commands");
-_st($1)._at_put_("doIt",(function(cm){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(cm)._amberCodeWidget())._doIt();
-}, function($ctx2) {$ctx2.fillBlock({cm:cm},$ctx1)})}));
-_st($1)._at_put_("inspectIt",(function(cm){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(cm)._amberCodeWidget())._inspectIt();
-}, function($ctx2) {$ctx2.fillBlock({cm:cm},$ctx1)})}));
-_st($1)._at_put_("printIt",(function(cm){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(cm)._amberCodeWidget())._printIt();
-}, function($ctx2) {$ctx2.fillBlock({cm:cm},$ctx1)})}));
-$2=_st($1)._at_put_("saveIt",(function(cm){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(cm)._amberCodeWidget())._saveIt();
-}, function($ctx2) {$ctx2.fillBlock({cm:cm},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"setupCommands",{},smalltalk.HLCodeWidget.klass)})},
-messageSends: ["at:put:", "doIt", "amberCodeWidget", "basicAt:", "inspectIt", "printIt", "saveIt"]}),
-smalltalk.HLCodeWidget.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "setupKeyMaps",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-CodeMirror.keyMap['Amber'] = self._keyMap();
-return self}, function($ctx1) {$ctx1.fill(self,"setupKeyMaps",{},smalltalk.HLCodeWidget.klass)})},
-messageSends: []}),
-smalltalk.HLCodeWidget.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "variableHintFor:token:",
-fn: function (anEditor,aToken){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(anEditor)._at_("amberCodeWidget"))._variableHintFor_token_(anEditor,aToken);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"variableHintFor:token:",{anEditor:anEditor,aToken:aToken},smalltalk.HLCodeWidget.klass)})},
-messageSends: ["variableHintFor:token:", "at:"]}),
-smalltalk.HLCodeWidget.klass);
-
-
-smalltalk.addClass('HLNavigationCodeWidget', smalltalk.HLCodeWidget, ['methodContents'], 'Helios-Workspace');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "configureEditor",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-smalltalk.HLNavigationCodeWidget.superclass.fn.prototype._configureEditor.apply(_st(self), []);
-self._contents_(self._methodContents());
-return self}, function($ctx1) {$ctx1.fill(self,"configureEditor",{},smalltalk.HLNavigationCodeWidget)})},
-messageSends: ["configureEditor", "contents:", "methodContents"]}),
-smalltalk.HLNavigationCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "contents:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._methodContents_(aString);
-smalltalk.HLNavigationCodeWidget.superclass.fn.prototype._contents_.apply(_st(self), [aString]);
-return self}, function($ctx1) {$ctx1.fill(self,"contents:",{aString:aString},smalltalk.HLNavigationCodeWidget)})},
-messageSends: ["methodContents:", "contents:"]}),
-smalltalk.HLNavigationCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "hasModification",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(self._methodContents()).__eq(self._contents()))._not();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"hasModification",{},smalltalk.HLNavigationCodeWidget)})},
-messageSends: ["not", "=", "contents", "methodContents"]}),
-smalltalk.HLNavigationCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "methodContents",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@methodContents"];
-if(($receiver = $2) == nil || $receiver == undefined){
-$1="";
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"methodContents",{},smalltalk.HLNavigationCodeWidget)})},
-messageSends: ["ifNil:"]}),
-smalltalk.HLNavigationCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "methodContents:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-self["@methodContents"]=aString;
-$1=self["@methodContents"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"methodContents:",{aString:aString},smalltalk.HLNavigationCodeWidget)})},
-messageSends: []}),
-smalltalk.HLNavigationCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "previous",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self}, function($ctx1) {$ctx1.fill(self,"previous",{},smalltalk.HLNavigationCodeWidget)})},
-messageSends: []}),
-smalltalk.HLNavigationCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "previous:",
-fn: function (aWidget){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self}, function($ctx1) {$ctx1.fill(self,"previous:",{aWidget:aWidget},smalltalk.HLNavigationCodeWidget)})},
-messageSends: []}),
-smalltalk.HLNavigationCodeWidget);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "canBeOpenAsTab",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return false;
-}, function($ctx1) {$ctx1.fill(self,"canBeOpenAsTab",{},smalltalk.HLNavigationCodeWidget.klass)})},
-messageSends: []}),
-smalltalk.HLNavigationCodeWidget.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "on:",
-fn: function (aBrowserModel){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=self._new();
-_st($2)._browserModel_(aBrowserModel);
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"on:",{aBrowserModel:aBrowserModel},smalltalk.HLNavigationCodeWidget.klass)})},
-messageSends: ["browserModel:", "new", "yourself"]}),
-smalltalk.HLNavigationCodeWidget.klass);
-
-
-smalltalk.addClass('HLBrowserCodeWidget', smalltalk.HLNavigationCodeWidget, ['browserModel'], 'Helios-Workspace');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "browserModel",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@browserModel"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"browserModel",{},smalltalk.HLBrowserCodeWidget)})},
-messageSends: []}),
-smalltalk.HLBrowserCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "browserModel:",
-fn: function (aBrowserModel){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-self["@browserModel"]=aBrowserModel;
-$1=self;
-_st($1)._observeSystem();
-$2=_st($1)._observeBrowserModel();
-return self}, function($ctx1) {$ctx1.fill(self,"browserModel:",{aBrowserModel:aBrowserModel},smalltalk.HLBrowserCodeWidget)})},
-messageSends: ["observeSystem", "observeBrowserModel"]}),
-smalltalk.HLBrowserCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "observeBrowserModel",
-fn: function (){
-var self=this;
-function $HLSaveSourceCode(){return smalltalk.HLSaveSourceCode||(typeof HLSaveSourceCode=="undefined"?nil:HLSaveSourceCode)}
-function $HLShowInstanceToggled(){return smalltalk.HLShowInstanceToggled||(typeof HLShowInstanceToggled=="undefined"?nil:HLShowInstanceToggled)}
-function $HLSourceCodeSaved(){return smalltalk.HLSourceCodeSaved||(typeof HLSourceCodeSaved=="undefined"?nil:HLSourceCodeSaved)}
-function $HLAboutToChange(){return smalltalk.HLAboutToChange||(typeof HLAboutToChange=="undefined"?nil:HLAboutToChange)}
-function $HLParseErrorRaised(){return smalltalk.HLParseErrorRaised||(typeof HLParseErrorRaised=="undefined"?nil:HLParseErrorRaised)}
-function $HLCompileErrorRaised(){return smalltalk.HLCompileErrorRaised||(typeof HLCompileErrorRaised=="undefined"?nil:HLCompileErrorRaised)}
-function $HLUnknownVariableErrorRaised(){return smalltalk.HLUnknownVariableErrorRaised||(typeof HLUnknownVariableErrorRaised=="undefined"?nil:HLUnknownVariableErrorRaised)}
-function $HLInstVarAdded(){return smalltalk.HLInstVarAdded||(typeof HLInstVarAdded=="undefined"?nil:HLInstVarAdded)}
-function $HLMethodSelected(){return smalltalk.HLMethodSelected||(typeof HLMethodSelected=="undefined"?nil:HLMethodSelected)}
-function $HLClassSelected(){return smalltalk.HLClassSelected||(typeof HLClassSelected=="undefined"?nil:HLClassSelected)}
-function $HLProtocolSelected(){return smalltalk.HLProtocolSelected||(typeof HLProtocolSelected=="undefined"?nil:HLProtocolSelected)}
-function $HLSourceCodeFocusRequested(){return smalltalk.HLSourceCodeFocusRequested||(typeof HLSourceCodeFocusRequested=="undefined"?nil:HLSourceCodeFocusRequested)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st(self._browserModel())._announcer();
-_st($1)._on_send_to_($HLSaveSourceCode(),"onSaveIt",self);
-_st($1)._on_send_to_($HLShowInstanceToggled(),"onShowInstanceToggled",self);
-_st($1)._on_send_to_($HLSourceCodeSaved(),"onSourceCodeSaved",self);
-_st($1)._on_send_to_($HLAboutToChange(),"onBrowserAboutToChange:",self);
-_st($1)._on_send_to_($HLParseErrorRaised(),"onParseError:",self);
-_st($1)._on_send_to_($HLCompileErrorRaised(),"onCompileError:",self);
-_st($1)._on_send_to_($HLUnknownVariableErrorRaised(),"onUnknownVariableError:",self);
-_st($1)._on_send_to_($HLInstVarAdded(),"onInstVarAdded",self);
-_st($1)._on_send_to_($HLMethodSelected(),"onMethodSelected:",self);
-_st($1)._on_send_to_($HLClassSelected(),"onClassSelected:",self);
-_st($1)._on_send_to_($HLProtocolSelected(),"onProtocolSelected:",self);
-$2=_st($1)._on_send_to_($HLSourceCodeFocusRequested(),"onSourceCodeFocusRequested",self);
-return self}, function($ctx1) {$ctx1.fill(self,"observeBrowserModel",{},smalltalk.HLBrowserCodeWidget)})},
-messageSends: ["on:send:to:", "announcer", "browserModel"]}),
-smalltalk.HLBrowserCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "observeSystem",
-fn: function (){
-var self=this;
-function $MethodModified(){return smalltalk.MethodModified||(typeof MethodModified=="undefined"?nil:MethodModified)}
-return smalltalk.withContext(function($ctx1) { 
-_st(_st(self._browserModel())._systemAnnouncer())._on_send_to_($MethodModified(),"onMethodModified:",self);
-return self}, function($ctx1) {$ctx1.fill(self,"observeSystem",{},smalltalk.HLBrowserCodeWidget)})},
-messageSends: ["on:send:to:", "systemAnnouncer", "browserModel"]}),
-smalltalk.HLBrowserCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onBrowserAboutToChange:",
-fn: function (anAnnouncement){
-var self=this;
-var block;
-function $HLChangeForbidden(){return smalltalk.HLChangeForbidden||(typeof HLChangeForbidden=="undefined"?nil:HLChangeForbidden)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-block=_st(anAnnouncement)._actionBlock();
-$1=self._hasModification();
-if(smalltalk.assert($1)){
-self._confirm_ifTrue_("Changes have not been saved. Do you want to discard these changes?",(function(){
-return smalltalk.withContext(function($ctx2) {
-self._methodContents_(self._contents());
-return _st(block)._value();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-_st($HLChangeForbidden())._signal();
-};
-return self}, function($ctx1) {$ctx1.fill(self,"onBrowserAboutToChange:",{anAnnouncement:anAnnouncement,block:block},smalltalk.HLBrowserCodeWidget)})},
-messageSends: ["actionBlock", "ifTrue:", "confirm:ifTrue:", "methodContents:", "contents", "value", "signal", "hasModification"]}),
-smalltalk.HLBrowserCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onClassSelected:",
-fn: function (anAnnouncement){
-var self=this;
-var class_;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-class_=_st(anAnnouncement)._item();
-$1=class_;
-if(($receiver = $1) == nil || $receiver == undefined){
-$2=self._contents_("");
-return $2;
-} else {
-$1;
-};
-self._contents_(_st(class_)._definition());
-return self}, function($ctx1) {$ctx1.fill(self,"onClassSelected:",{anAnnouncement:anAnnouncement,class_:class_},smalltalk.HLBrowserCodeWidget)})},
-messageSends: ["item", "ifNil:", "contents:", "definition"]}),
-smalltalk.HLBrowserCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onCompileError:",
-fn: function (anAnnouncement){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._alert_(_st(_st(anAnnouncement)._error())._messageText());
-return self}, function($ctx1) {$ctx1.fill(self,"onCompileError:",{anAnnouncement:anAnnouncement},smalltalk.HLBrowserCodeWidget)})},
-messageSends: ["alert:", "messageText", "error"]}),
-smalltalk.HLBrowserCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onInstVarAdded",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._browserModel())._save_(self._contents());
-return self}, function($ctx1) {$ctx1.fill(self,"onInstVarAdded",{},smalltalk.HLBrowserCodeWidget)})},
-messageSends: ["save:", "contents", "browserModel"]}),
-smalltalk.HLBrowserCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onMethodModified:",
-fn: function (anAnnouncement){
-var self=this;
-var method;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4,$5,$6;
-method=_st(anAnnouncement)._method();
-$1=_st(_st(self._browserModel())._selectedClass()).__eq(_st(method)._methodClass());
-if(! smalltalk.assert($1)){
-$2=self;
-return $2;
-};
-$3=_st(self._browserModel())._selectedMethod();
-if(($receiver = $3) == nil || $receiver == undefined){
-$4=self;
-return $4;
-} else {
-$3;
-};
-$5=_st(_st(_st(self._browserModel())._selectedMethod())._selector()).__eq(_st(method)._selector());
-if(! smalltalk.assert($5)){
-$6=self;
-return $6;
-};
-self._refresh();
-return self}, function($ctx1) {$ctx1.fill(self,"onMethodModified:",{anAnnouncement:anAnnouncement,method:method},smalltalk.HLBrowserCodeWidget)})},
-messageSends: ["method", "ifFalse:", "=", "methodClass", "selectedClass", "browserModel", "ifNil:", "selectedMethod", "selector", "refresh"]}),
-smalltalk.HLBrowserCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onMethodSelected:",
-fn: function (anAnnouncement){
-var self=this;
-var method;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-method=_st(anAnnouncement)._item();
-$1=method;
-if(($receiver = $1) == nil || $receiver == undefined){
-$2=self._contents_("");
-return $2;
-} else {
-$1;
-};
-self._contents_(_st(method)._source());
-return self}, function($ctx1) {$ctx1.fill(self,"onMethodSelected:",{anAnnouncement:anAnnouncement,method:method},smalltalk.HLBrowserCodeWidget)})},
-messageSends: ["item", "ifNil:", "contents:", "source"]}),
-smalltalk.HLBrowserCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onParseError:",
-fn: function (anAnnouncement){
-var self=this;
-var lineIndex,newContents;
-function $String(){return smalltalk.String||(typeof String=="undefined"?nil:String)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3;
-lineIndex=(1);
-self._contents_(_st($String())._streamContents_((function(stream){
-return smalltalk.withContext(function($ctx2) {
-return _st(self._contents())._linesDo_((function(each){
-return smalltalk.withContext(function($ctx3) {
-$1=_st(lineIndex).__eq(_st(anAnnouncement)._line());
-if(smalltalk.assert($1)){
-$2=stream;
-_st($2)._nextPutAll_(_st(each)._copyFrom_to_((1),_st(anAnnouncement)._column()));
-_st($2)._nextPutAll_("<- ");
-_st($2)._nextPutAll_(_st(anAnnouncement)._message());
-_st($2)._nextPutAll_(" ");
-$3=_st($2)._nextPutAll_(_st(each)._copyFrom_to_(_st(_st(anAnnouncement)._column()).__plus((1)),_st(each)._size()));
-$3;
-} else {
-_st(stream)._nextPutAll_(each);
-};
-_st(stream)._nextPutAll_(_st($String())._cr());
-lineIndex=_st(lineIndex).__plus((1));
-return lineIndex;
-}, function($ctx3) {$ctx3.fillBlock({each:each},$ctx2)})}));
-}, function($ctx2) {$ctx2.fillBlock({stream:stream},$ctx1)})})));
-return self}, function($ctx1) {$ctx1.fill(self,"onParseError:",{anAnnouncement:anAnnouncement,lineIndex:lineIndex,newContents:newContents},smalltalk.HLBrowserCodeWidget)})},
-messageSends: ["contents:", "streamContents:", "linesDo:", "ifTrue:ifFalse:", "nextPutAll:", "copyFrom:to:", "column", "message", "+", "size", "=", "line", "cr", "contents"]}),
-smalltalk.HLBrowserCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onProtocolSelected:",
-fn: function (anAnnouncement){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st(self._browserModel())._selectedClass();
-if(($receiver = $1) == nil || $receiver == undefined){
-$2=self._contents_("");
-return $2;
-} else {
-$1;
-};
-self._contents_(_st(_st(self._browserModel())._selectedClass())._definition());
-return self}, function($ctx1) {$ctx1.fill(self,"onProtocolSelected:",{anAnnouncement:anAnnouncement},smalltalk.HLBrowserCodeWidget)})},
-messageSends: ["ifNil:", "contents:", "selectedClass", "browserModel", "definition"]}),
-smalltalk.HLBrowserCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onSaveIt",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._browserModel())._save_(self._contents());
-return self}, function($ctx1) {$ctx1.fill(self,"onSaveIt",{},smalltalk.HLBrowserCodeWidget)})},
-messageSends: ["save:", "contents", "browserModel"]}),
-smalltalk.HLBrowserCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onShowInstanceToggled",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st(self._browserModel())._selectedClass();
-if(($receiver = $1) == nil || $receiver == undefined){
-$2=self._contents_("");
-return $2;
-} else {
-$1;
-};
-self._contents_(_st(_st(self._browserModel())._selectedClass())._definition());
-return self}, function($ctx1) {$ctx1.fill(self,"onShowInstanceToggled",{},smalltalk.HLBrowserCodeWidget)})},
-messageSends: ["ifNil:", "contents:", "selectedClass", "browserModel", "definition"]}),
-smalltalk.HLBrowserCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onSourceCodeFocusRequested",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._focus();
-return self}, function($ctx1) {$ctx1.fill(self,"onSourceCodeFocusRequested",{},smalltalk.HLBrowserCodeWidget)})},
-messageSends: ["focus"]}),
-smalltalk.HLBrowserCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onSourceCodeSaved",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._methodContents_(self._contents());
-self._updateState();
-return self}, function($ctx1) {$ctx1.fill(self,"onSourceCodeSaved",{},smalltalk.HLBrowserCodeWidget)})},
-messageSends: ["methodContents:", "contents", "updateState"]}),
-smalltalk.HLBrowserCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onUnknownVariableError:",
-fn: function (anAnnouncement){
-var self=this;
-var error;
-function $String(){return smalltalk.String||(typeof String=="undefined"?nil:String)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-error=_st(anAnnouncement)._error();
-self._confirm_ifTrue_(_st($String())._streamContents_((function(stream){
-return smalltalk.withContext(function($ctx2) {
-$1=stream;
-_st($1)._nextPutAll_(_st(error)._messageText());
-_st($1)._nextPutAll_(_st($String())._cr());
-$2=_st($1)._nextPutAll_("Would you like to define an instance variable?");
-return $2;
-}, function($ctx2) {$ctx2.fillBlock({stream:stream},$ctx1)})})),(function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(self._browserModel())._addInstVarNamed_(_st(error)._variableName());
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"onUnknownVariableError:",{anAnnouncement:anAnnouncement,error:error},smalltalk.HLBrowserCodeWidget)})},
-messageSends: ["error", "confirm:ifTrue:", "streamContents:", "nextPutAll:", "messageText", "cr", "addInstVarNamed:", "variableName", "browserModel"]}),
-smalltalk.HLBrowserCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "refresh",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4;
-$1=self._hasModification();
-if(smalltalk.assert($1)){
-$2=self;
-return $2;
-};
-$3=self._hasFocus();
-if(smalltalk.assert($3)){
-$4=self;
-return $4;
-};
-self._contents_(_st(_st(self._browserModel())._selectedMethod())._source());
-return self}, function($ctx1) {$ctx1.fill(self,"refresh",{},smalltalk.HLBrowserCodeWidget)})},
-messageSends: ["ifTrue:", "hasModification", "hasFocus", "contents:", "source", "selectedMethod", "browserModel"]}),
-smalltalk.HLBrowserCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderButtonsOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st(html)._button();
-_st($1)._class_("button");
-_st($1)._with_("SaveIt");
-$2=_st($1)._onClick_((function(){
-return smalltalk.withContext(function($ctx2) {
-return self._saveIt();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-smalltalk.HLBrowserCodeWidget.superclass.fn.prototype._renderButtonsOn_.apply(_st(self), [html]);
-return self}, function($ctx1) {$ctx1.fill(self,"renderButtonsOn:",{html:html},smalltalk.HLBrowserCodeWidget)})},
-messageSends: ["class:", "button", "with:", "onClick:", "saveIt", "renderButtonsOn:"]}),
-smalltalk.HLBrowserCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "saveIt",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._browserModel())._saveSourceCode();
-return self}, function($ctx1) {$ctx1.fill(self,"saveIt",{},smalltalk.HLBrowserCodeWidget)})},
-messageSends: ["saveSourceCode", "browserModel"]}),
-smalltalk.HLBrowserCodeWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "unregister",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-smalltalk.HLBrowserCodeWidget.superclass.fn.prototype._unregsiter.apply(_st(self), []);
-_st(_st(self._browserModel())._announcer())._unsubscribe_(self);
-_st(_st(self._browserModel())._systemAnnouncer())._unsubscribe_(self);
-return self}, function($ctx1) {$ctx1.fill(self,"unregister",{},smalltalk.HLBrowserCodeWidget)})},
-messageSends: ["unregsiter", "unsubscribe:", "announcer", "browserModel", "systemAnnouncer"]}),
-smalltalk.HLBrowserCodeWidget);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "canBeOpenAsTab",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return false;
-}, function($ctx1) {$ctx1.fill(self,"canBeOpenAsTab",{},smalltalk.HLBrowserCodeWidget.klass)})},
-messageSends: []}),
-smalltalk.HLBrowserCodeWidget.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "on:",
-fn: function (aBrowserModel){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=self._new();
-_st($2)._browserModel_(aBrowserModel);
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"on:",{aBrowserModel:aBrowserModel},smalltalk.HLBrowserCodeWidget.klass)})},
-messageSends: ["browserModel:", "new", "yourself"]}),
-smalltalk.HLBrowserCodeWidget.klass);
-
-
-smalltalk.addClass('HLWorkspace', smalltalk.HLWidget, ['codeWidget', 'transcript'], 'Helios-Workspace');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "canHaveFocus",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"canHaveFocus",{},smalltalk.HLWorkspace)})},
-messageSends: []}),
-smalltalk.HLWorkspace);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "codeWidget",
-fn: function (){
-var self=this;
-function $HLCodeWidget(){return smalltalk.HLCodeWidget||(typeof HLCodeWidget=="undefined"?nil:HLCodeWidget)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@codeWidget"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@codeWidget"]=_st($HLCodeWidget())._new();
-$1=self["@codeWidget"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"codeWidget",{},smalltalk.HLWorkspace)})},
-messageSends: ["ifNil:", "new"]}),
-smalltalk.HLWorkspace);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "focus",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._codeWidget())._focus();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"focus",{},smalltalk.HLWorkspace)})},
-messageSends: ["focus", "codeWidget"]}),
-smalltalk.HLWorkspace);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderContentOn:",
-fn: function (html){
-var self=this;
-function $HLHorizontalSplitter(){return smalltalk.HLHorizontalSplitter||(typeof HLHorizontalSplitter=="undefined"?nil:HLHorizontalSplitter)}
-function $HLContainer(){return smalltalk.HLContainer||(typeof HLContainer=="undefined"?nil:HLContainer)}
-return smalltalk.withContext(function($ctx1) { 
-_st(html)._with_(_st($HLContainer())._with_(_st($HLHorizontalSplitter())._with_with_(self._codeWidget(),(function(canvas){
-return smalltalk.withContext(function($ctx2) {
-return self._renderTranscriptOn_(canvas);
-}, function($ctx2) {$ctx2.fillBlock({canvas:canvas},$ctx1)})}))));
-return self}, function($ctx1) {$ctx1.fill(self,"renderContentOn:",{html:html},smalltalk.HLWorkspace)})},
-messageSends: ["with:", "with:with:", "codeWidget", "renderTranscriptOn:"]}),
-smalltalk.HLWorkspace);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderTranscriptOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$3,$4,$2;
-$1=_st(html)._div();
-_st($1)._class_("transcript-container");
-$2=_st($1)._with_((function(){
-return smalltalk.withContext(function($ctx2) {
-$3=_st(html)._div();
-_st($3)._class_("list-label");
-$4=_st($3)._with_("Transcript");
-$4;
-return _st(self._transcript())._renderOn_(html);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"renderTranscriptOn:",{html:html},smalltalk.HLWorkspace)})},
-messageSends: ["class:", "div", "with:", "renderOn:", "transcript"]}),
-smalltalk.HLWorkspace);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "transcript",
-fn: function (){
-var self=this;
-function $HLTranscript(){return smalltalk.HLTranscript||(typeof HLTranscript=="undefined"?nil:HLTranscript)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@transcript"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@transcript"]=_st($HLTranscript())._new();
-$1=self["@transcript"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"transcript",{},smalltalk.HLWorkspace)})},
-messageSends: ["ifNil:", "new"]}),
-smalltalk.HLWorkspace);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "unregister",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-smalltalk.HLWorkspace.superclass.fn.prototype._unregister.apply(_st(self), []);
-_st(self._transcript())._unregister();
-return self}, function($ctx1) {$ctx1.fill(self,"unregister",{},smalltalk.HLWorkspace)})},
-messageSends: ["unregister", "transcript"]}),
-smalltalk.HLWorkspace);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "canBeOpenAsTab",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"canBeOpenAsTab",{},smalltalk.HLWorkspace.klass)})},
-messageSends: []}),
-smalltalk.HLWorkspace.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "tabClass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "workspace";
-}, function($ctx1) {$ctx1.fill(self,"tabClass",{},smalltalk.HLWorkspace.klass)})},
-messageSends: []}),
-smalltalk.HLWorkspace.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "tabLabel",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Workspace";
-}, function($ctx1) {$ctx1.fill(self,"tabLabel",{},smalltalk.HLWorkspace.klass)})},
-messageSends: []}),
-smalltalk.HLWorkspace.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "tabPriority",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return (10);
-}, function($ctx1) {$ctx1.fill(self,"tabPriority",{},smalltalk.HLWorkspace.klass)})},
-messageSends: []}),
-smalltalk.HLWorkspace.klass);
-
-});

+ 0 - 5541
js/IDE.deploy.js

@@ -1,5541 +0,0 @@
-define("amber/IDE", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/Canvas", "amber/Kernel-Exceptions", "amber/Kernel-Objects", "amber/Kernel-Collections", "amber/Kernel-Methods"], function(smalltalk,nil,_st){
-smalltalk.addPackage('IDE');
-smalltalk.packages["IDE"].transport = {"type":"amd","amdNamespace":"amber"};
-
-smalltalk.addClass('ClassesList', smalltalk.Widget, ['browser', 'ul', 'nodes'], 'IDE');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "browser",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@browser"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"browser",{},smalltalk.ClassesList)})},
-messageSends: []}),
-smalltalk.ClassesList);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "browser:",
-fn: function (aBrowser){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@browser"]=aBrowser;
-return self}, function($ctx1) {$ctx1.fill(self,"browser:",{aBrowser:aBrowser},smalltalk.ClassesList)})},
-messageSends: []}),
-smalltalk.ClassesList);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "category",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._browser())._selectedPackage();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"category",{},smalltalk.ClassesList)})},
-messageSends: ["selectedPackage", "browser"]}),
-smalltalk.ClassesList);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "getNodes",
-fn: function (){
-var self=this;
-var classes,children,others;
-function $ClassesListNode(){return smalltalk.ClassesListNode||(typeof ClassesListNode=="undefined"?nil:ClassesListNode)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-classes=_st(self._browser())._classes();
-children=[];
-others=[];
-_st(classes)._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-$1=_st(classes)._includes_(_st(each)._superclass());
-if(smalltalk.assert($1)){
-return _st(others)._add_(each);
-} else {
-return _st(children)._add_(each);
-};
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-$2=_st(children)._collect_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st($ClassesListNode())._on_browser_classes_level_(each,self._browser(),others,(0));
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return $2;
-}, function($ctx1) {$ctx1.fill(self,"getNodes",{classes:classes,children:children,others:others},smalltalk.ClassesList)})},
-messageSends: ["classes", "browser", "do:", "ifFalse:ifTrue:", "add:", "includes:", "superclass", "collect:", "on:browser:classes:level:"]}),
-smalltalk.ClassesList);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "nodes",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=self["@nodes"];
-if(($receiver = $1) == nil || $receiver == undefined){
-self["@nodes"]=self._getNodes();
-self["@nodes"];
-} else {
-$1;
-};
-$2=self["@nodes"];
-return $2;
-}, function($ctx1) {$ctx1.fill(self,"nodes",{},smalltalk.ClassesList)})},
-messageSends: ["ifNil:", "getNodes"]}),
-smalltalk.ClassesList);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st(html)._ul();
-_st($1)._class_("amber_column browser classes");
-$2=_st($1)._yourself();
-self["@ul"]=$2;
-self._updateNodes();
-return self}, function($ctx1) {$ctx1.fill(self,"renderOn:",{html:html},smalltalk.ClassesList)})},
-messageSends: ["class:", "ul", "yourself", "updateNodes"]}),
-smalltalk.ClassesList);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "resetNodes",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@nodes"]=nil;
-return self}, function($ctx1) {$ctx1.fill(self,"resetNodes",{},smalltalk.ClassesList)})},
-messageSends: []}),
-smalltalk.ClassesList);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "updateNodes",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self["@ul"])._contents_((function(html){
-return smalltalk.withContext(function($ctx2) {
-return _st(self._nodes())._do_((function(each){
-return smalltalk.withContext(function($ctx3) {
-return _st(each)._renderOn_(html);
-}, function($ctx3) {$ctx3.fillBlock({each:each},$ctx2)})}));
-}, function($ctx2) {$ctx2.fillBlock({html:html},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"updateNodes",{},smalltalk.ClassesList)})},
-messageSends: ["contents:", "do:", "renderOn:", "nodes"]}),
-smalltalk.ClassesList);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "on:",
-fn: function (aBrowser){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=self._new();
-_st($2)._browser_(aBrowser);
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"on:",{aBrowser:aBrowser},smalltalk.ClassesList.klass)})},
-messageSends: ["browser:", "new", "yourself"]}),
-smalltalk.ClassesList.klass);
-
-
-smalltalk.addClass('ClassesListNode', smalltalk.Widget, ['browser', 'theClass', 'level', 'nodes'], 'IDE');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "browser",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@browser"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"browser",{},smalltalk.ClassesListNode)})},
-messageSends: []}),
-smalltalk.ClassesListNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "browser:",
-fn: function (aBrowser){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@browser"]=aBrowser;
-return self}, function($ctx1) {$ctx1.fill(self,"browser:",{aBrowser:aBrowser},smalltalk.ClassesListNode)})},
-messageSends: []}),
-smalltalk.ClassesListNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "getNodesFrom:",
-fn: function (aCollection){
-var self=this;
-var children,others;
-function $ClassesListNode(){return smalltalk.ClassesListNode||(typeof ClassesListNode=="undefined"?nil:ClassesListNode)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-children=[];
-others=[];
-_st(aCollection)._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-$1=_st(_st(each)._superclass()).__eq(self._theClass());
-if(smalltalk.assert($1)){
-return _st(children)._add_(each);
-} else {
-return _st(others)._add_(each);
-};
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-self["@nodes"]=_st(children)._collect_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st($ClassesListNode())._on_browser_classes_level_(each,self._browser(),others,_st(self._level()).__plus((1)));
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"getNodesFrom:",{aCollection:aCollection,children:children,others:others},smalltalk.ClassesListNode)})},
-messageSends: ["do:", "ifTrue:ifFalse:", "add:", "=", "theClass", "superclass", "collect:", "on:browser:classes:level:", "browser", "+", "level"]}),
-smalltalk.ClassesListNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "label",
-fn: function (){
-var self=this;
-var str;
-function $String(){return smalltalk.String||(typeof String=="undefined"?nil:String)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-str=_st(_st($String())._new())._writeStream();
-_st(self._level())._timesRepeat_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(str)._nextPutAll_("&nbsp;&nbsp;&nbsp;&nbsp;");
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-_st(str)._nextPutAll_(_st(self._theClass())._name());
-$1=_st(str)._contents();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"label",{str:str},smalltalk.ClassesListNode)})},
-messageSends: ["writeStream", "new", "timesRepeat:", "nextPutAll:", "level", "name", "theClass", "contents"]}),
-smalltalk.ClassesListNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "level",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@level"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"level",{},smalltalk.ClassesListNode)})},
-messageSends: []}),
-smalltalk.ClassesListNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "level:",
-fn: function (anInteger){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@level"]=anInteger;
-return self}, function($ctx1) {$ctx1.fill(self,"level:",{anInteger:anInteger},smalltalk.ClassesListNode)})},
-messageSends: []}),
-smalltalk.ClassesListNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "nodes",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@nodes"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"nodes",{},smalltalk.ClassesListNode)})},
-messageSends: []}),
-smalltalk.ClassesListNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderOn:",
-fn: function (html){
-var self=this;
-var li,cssClass;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-cssClass="";
-li=_st(_st(html)._li())._onClick_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(self._browser())._selectClass_(self._theClass());
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-_st(_st(li)._asJQuery())._html_(self._label());
-$1=_st(_st(self._browser())._selectedClass()).__eq(self._theClass());
-if(smalltalk.assert($1)){
-cssClass=_st(cssClass).__comma(" selected");
-cssClass;
-};
-$2=_st(_st(self._theClass())._comment())._isEmpty();
-if(! smalltalk.assert($2)){
-cssClass=_st(cssClass).__comma(" commented");
-cssClass;
-};
-_st(li)._class_(cssClass);
-_st(self._nodes())._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(each)._renderOn_(html);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"renderOn:",{html:html,li:li,cssClass:cssClass},smalltalk.ClassesListNode)})},
-messageSends: ["onClick:", "selectClass:", "theClass", "browser", "li", "html:", "label", "asJQuery", "ifTrue:", ",", "=", "selectedClass", "ifFalse:", "isEmpty", "comment", "class:", "do:", "renderOn:", "nodes"]}),
-smalltalk.ClassesListNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "theClass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@theClass"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"theClass",{},smalltalk.ClassesListNode)})},
-messageSends: []}),
-smalltalk.ClassesListNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "theClass:",
-fn: function (aClass){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@theClass"]=aClass;
-return self}, function($ctx1) {$ctx1.fill(self,"theClass:",{aClass:aClass},smalltalk.ClassesListNode)})},
-messageSends: []}),
-smalltalk.ClassesListNode);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "on:browser:classes:level:",
-fn: function (aClass,aBrowser,aCollection,anInteger){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=self._new();
-_st($2)._theClass_(aClass);
-_st($2)._browser_(aBrowser);
-_st($2)._level_(anInteger);
-_st($2)._getNodesFrom_(aCollection);
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"on:browser:classes:level:",{aClass:aClass,aBrowser:aBrowser,aCollection:aCollection,anInteger:anInteger},smalltalk.ClassesListNode.klass)})},
-messageSends: ["theClass:", "new", "browser:", "level:", "getNodesFrom:", "yourself"]}),
-smalltalk.ClassesListNode.klass);
-
-
-smalltalk.addClass('DebugErrorHandler', smalltalk.ErrorHandler, [], 'IDE');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "handleError:",
-fn: function (anError){
-var self=this;
-function $Error(){return smalltalk.Error||(typeof Error=="undefined"?nil:Error)}
-function $ErrorHandler(){return smalltalk.ErrorHandler||(typeof ErrorHandler=="undefined"?nil:ErrorHandler)}
-function $Debugger(){return smalltalk.Debugger||(typeof Debugger=="undefined"?nil:Debugger)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-_st((function(){
-return smalltalk.withContext(function($ctx2) {
-$1=_st($Debugger())._new();
-_st($1)._error_(anError);
-$2=_st($1)._open();
-return $2;
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._on_do_($Error(),(function(error){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st($ErrorHandler())._new())._handleError_(error);
-}, function($ctx2) {$ctx2.fillBlock({error:error},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"handleError:",{anError:anError},smalltalk.DebugErrorHandler)})},
-messageSends: ["on:do:", "handleError:", "new", "error:", "open"]}),
-smalltalk.DebugErrorHandler);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "initialize",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._register();
-return self}, function($ctx1) {$ctx1.fill(self,"initialize",{},smalltalk.DebugErrorHandler.klass)})},
-messageSends: ["register"]}),
-smalltalk.DebugErrorHandler.klass);
-
-
-smalltalk.addClass('SourceArea', smalltalk.Widget, ['editor', 'div', 'receiver', 'onDoIt'], 'IDE');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "clear",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._val_("");
-return self}, function($ctx1) {$ctx1.fill(self,"clear",{},smalltalk.SourceArea)})},
-messageSends: ["val:"]}),
-smalltalk.SourceArea);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "currentLine",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self["@editor"])._getLine_(_st(_st(self["@editor"])._getCursor())._line());
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"currentLine",{},smalltalk.SourceArea)})},
-messageSends: ["getLine:", "line", "getCursor"]}),
-smalltalk.SourceArea);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "currentLineOrSelection",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=_st(self["@editor"])._somethingSelected();
-if(smalltalk.assert($2)){
-$1=self._selection();
-} else {
-$1=self._currentLine();
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"currentLineOrSelection",{},smalltalk.SourceArea)})},
-messageSends: ["ifFalse:ifTrue:", "currentLine", "selection", "somethingSelected"]}),
-smalltalk.SourceArea);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "doIt",
-fn: function (){
-var self=this;
-var result;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-result=self._eval_(self._currentLineOrSelection());
-$1=self._onDoIt();
-if(($receiver = $1) == nil || $receiver == undefined){
-$1;
-} else {
-_st(self._onDoIt())._value();
-};
-$2=result;
-return $2;
-}, function($ctx1) {$ctx1.fill(self,"doIt",{result:result},smalltalk.SourceArea)})},
-messageSends: ["eval:", "currentLineOrSelection", "ifNotNil:", "value", "onDoIt"]}),
-smalltalk.SourceArea);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "editor",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@editor"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"editor",{},smalltalk.SourceArea)})},
-messageSends: []}),
-smalltalk.SourceArea);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "eval:",
-fn: function (aString){
-var self=this;
-var compiler;
-function $Compiler(){return smalltalk.Compiler||(typeof Compiler=="undefined"?nil:Compiler)}
-function $Error(){return smalltalk.Error||(typeof Error=="undefined"?nil:Error)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-var $early={};
-try {
-compiler=_st($Compiler())._new();
-_st((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(compiler)._parseExpression_(aString);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._on_do_($Error(),(function(ex){
-return smalltalk.withContext(function($ctx2) {
-$1=self._alert_(_st(ex)._messageText());
-throw $early=[$1];
-}, function($ctx2) {$ctx2.fillBlock({ex:ex},$ctx1)})}));
-$2=_st(compiler)._evaluateExpression_on_(aString,self._receiver());
-return $2;
-}
-catch(e) {if(e===$early)return e[0]; throw e}
-}, function($ctx1) {$ctx1.fill(self,"eval:",{aString:aString,compiler:compiler},smalltalk.SourceArea)})},
-messageSends: ["new", "on:do:", "alert:", "messageText", "parseExpression:", "evaluateExpression:on:", "receiver"]}),
-smalltalk.SourceArea);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "fileIn",
-fn: function (){
-var self=this;
-function $Importer(){return smalltalk.Importer||(typeof Importer=="undefined"?nil:Importer)}
-return smalltalk.withContext(function($ctx1) { 
-_st(_st($Importer())._new())._import_(_st(self._currentLineOrSelection())._readStream());
-return self}, function($ctx1) {$ctx1.fill(self,"fileIn",{},smalltalk.SourceArea)})},
-messageSends: ["import:", "readStream", "currentLineOrSelection", "new"]}),
-smalltalk.SourceArea);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "focus",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._editor())._focus();
-return self}, function($ctx1) {$ctx1.fill(self,"focus",{},smalltalk.SourceArea)})},
-messageSends: ["focus", "editor"]}),
-smalltalk.SourceArea);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "handleKeyDown:",
-fn: function (anEvent){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-if(anEvent.ctrlKey) {
-		if(anEvent.keyCode === 80) { //ctrl+p
-			self._printIt();
-			anEvent.preventDefault();
-			return false;
-		}
-		if(anEvent.keyCode === 68) { //ctrl+d
-			self._doIt();
-			anEvent.preventDefault();
-			return false;
-		}
-		if(anEvent.keyCode === 73) { //ctrl+i
-			self._inspectIt();
-			anEvent.preventDefault();
-			return false;
-		}
-	};
-return self}, function($ctx1) {$ctx1.fill(self,"handleKeyDown:",{anEvent:anEvent},smalltalk.SourceArea)})},
-messageSends: []}),
-smalltalk.SourceArea);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "inspectIt",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._doIt())._inspect();
-return self}, function($ctx1) {$ctx1.fill(self,"inspectIt",{},smalltalk.SourceArea)})},
-messageSends: ["inspect", "doIt"]}),
-smalltalk.SourceArea);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onDoIt",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@onDoIt"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"onDoIt",{},smalltalk.SourceArea)})},
-messageSends: []}),
-smalltalk.SourceArea);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onDoIt:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@onDoIt"]=aBlock;
-return self}, function($ctx1) {$ctx1.fill(self,"onDoIt:",{aBlock:aBlock},smalltalk.SourceArea)})},
-messageSends: []}),
-smalltalk.SourceArea);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onKeyDown:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self["@div"])._onKeyDown_(aBlock);
-return self}, function($ctx1) {$ctx1.fill(self,"onKeyDown:",{aBlock:aBlock},smalltalk.SourceArea)})},
-messageSends: ["onKeyDown:"]}),
-smalltalk.SourceArea);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onKeyUp:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self["@div"])._onKeyUp_(aBlock);
-return self}, function($ctx1) {$ctx1.fill(self,"onKeyUp:",{aBlock:aBlock},smalltalk.SourceArea)})},
-messageSends: ["onKeyUp:"]}),
-smalltalk.SourceArea);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "print:",
-fn: function (aString){
-var self=this;
-var start,stop,currentLine;
-function $HashedCollection(){return smalltalk.HashedCollection||(typeof HashedCollection=="undefined"?nil:HashedCollection)}
-return smalltalk.withContext(function($ctx1) { 
-currentLine=_st(_st(self["@editor"])._getCursor_(false))._line();
-start=_st($HashedCollection())._new();
-_st(start)._at_put_("line",currentLine);
-_st(start)._at_put_("ch",_st(_st(self["@editor"])._getCursor_(false))._ch());
-_st(_st(self["@editor"])._getSelection())._ifEmpty_((function(){
-return smalltalk.withContext(function($ctx2) {
-_st(start)._at_put_("ch",_st(_st(self["@editor"])._getLine_(currentLine))._size());
-return _st(self["@editor"])._setSelection_end_(smalltalk.HashedCollection._from_(["line".__minus_gt(currentLine),"ch".__minus_gt((0))]),start);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-stop=_st($HashedCollection())._new();
-_st(stop)._at_put_("line",currentLine);
-_st(stop)._at_put_("ch",_st(_st(_st(start)._at_("ch")).__plus(_st(aString)._size())).__plus((2)));
-_st(self["@editor"])._replaceSelection_(_st(_st(_st(_st(self["@editor"])._getSelection()).__comma(" ")).__comma(aString)).__comma(" "));
-_st(self["@editor"])._setCursor_(_st(self["@editor"])._getCursor_(true));
-_st(self["@editor"])._setSelection_end_(stop,start);
-return self}, function($ctx1) {$ctx1.fill(self,"print:",{aString:aString,start:start,stop:stop,currentLine:currentLine},smalltalk.SourceArea)})},
-messageSends: ["line", "getCursor:", "new", "at:put:", "ch", "ifEmpty:", "size", "getLine:", "setSelection:end:", "->", "getSelection", "+", "at:", "replaceSelection:", ",", "setCursor:"]}),
-smalltalk.SourceArea);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "printIt",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._print_(_st(self._doIt())._printString());
-self._focus();
-return self}, function($ctx1) {$ctx1.fill(self,"printIt",{},smalltalk.SourceArea)})},
-messageSends: ["print:", "printString", "doIt", "focus"]}),
-smalltalk.SourceArea);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "receiver",
-fn: function (){
-var self=this;
-function $DoIt(){return smalltalk.DoIt||(typeof DoIt=="undefined"?nil:DoIt)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@receiver"];
-if(($receiver = $2) == nil || $receiver == undefined){
-$1=_st($DoIt())._new();
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"receiver",{},smalltalk.SourceArea)})},
-messageSends: ["ifNil:", "new"]}),
-smalltalk.SourceArea);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "receiver:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@receiver"]=anObject;
-return self}, function($ctx1) {$ctx1.fill(self,"receiver:",{anObject:anObject},smalltalk.SourceArea)})},
-messageSends: []}),
-smalltalk.SourceArea);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderOn:",
-fn: function (html){
-var self=this;
-var textarea;
-return smalltalk.withContext(function($ctx1) { 
-self["@div"]=_st(_st(html)._div())._class_("source");
-_st(self["@div"])._with_((function(){
-return smalltalk.withContext(function($ctx2) {
-textarea=_st(html)._textarea();
-return textarea;
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-self._setEditorOn_(_st(textarea)._element());
-_st(self["@div"])._onKeyDown_((function(e){
-return smalltalk.withContext(function($ctx2) {
-return self._handleKeyDown_(e);
-}, function($ctx2) {$ctx2.fillBlock({e:e},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"renderOn:",{html:html,textarea:textarea},smalltalk.SourceArea)})},
-messageSends: ["class:", "div", "with:", "textarea", "setEditorOn:", "element", "onKeyDown:", "handleKeyDown:"]}),
-smalltalk.SourceArea);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selection",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self["@editor"])._getSelection();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"selection",{},smalltalk.SourceArea)})},
-messageSends: ["getSelection"]}),
-smalltalk.SourceArea);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "setEditorOn:",
-fn: function (aTextarea){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self['@editor'] = CodeMirror.fromTextArea(aTextarea, {
-		theme: 'amber',
-				lineNumbers: true,
-				enterMode: 'flat',
-				indentWithTabs: true,
-				indentUnit: 4,
-				matchBrackets: true,
-				electricChars: false
-	});
-return self}, function($ctx1) {$ctx1.fill(self,"setEditorOn:",{aTextarea:aTextarea},smalltalk.SourceArea)})},
-messageSends: []}),
-smalltalk.SourceArea);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "val",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self["@editor"])._getValue();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"val",{},smalltalk.SourceArea)})},
-messageSends: ["getValue"]}),
-smalltalk.SourceArea);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "val:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self["@editor"])._setValue_(aString);
-return self}, function($ctx1) {$ctx1.fill(self,"val:",{aString:aString},smalltalk.SourceArea)})},
-messageSends: ["setValue:"]}),
-smalltalk.SourceArea);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "initialize",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-smalltalk.SourceArea.klass.superclass.fn.prototype._initialize.apply(_st(self), []);
-self._setupCodeMirror();
-return self}, function($ctx1) {$ctx1.fill(self,"initialize",{},smalltalk.SourceArea.klass)})},
-messageSends: ["initialize", "setupCodeMirror"]}),
-smalltalk.SourceArea.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "setupCodeMirror",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
- CodeMirror.keyMap["default"].fallthrough = ["basic"] ;
-return self}, function($ctx1) {$ctx1.fill(self,"setupCodeMirror",{},smalltalk.SourceArea.klass)})},
-messageSends: []}),
-smalltalk.SourceArea.klass);
-
-
-smalltalk.addClass('TabManager', smalltalk.Widget, ['selectedTab', 'tabs', 'opened', 'ul', 'input'], 'IDE');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "addTab:",
-fn: function (aWidget){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._tabs())._add_(aWidget);
-_st(aWidget)._appendToJQuery_("#amber"._asJQuery());
-_st(aWidget)._hide();
-return self}, function($ctx1) {$ctx1.fill(self,"addTab:",{aWidget:aWidget},smalltalk.TabManager)})},
-messageSends: ["add:", "tabs", "appendToJQuery:", "asJQuery", "hide"]}),
-smalltalk.TabManager);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "close",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@opened"];
-if(smalltalk.assert($1)){
-_st("#amber"._asJQuery())._hide();
-_st(_st(self["@ul"])._asJQuery())._hide();
-_st(self["@selectedTab"])._hide();
-self._removeBodyMargin();
-_st("body"._asJQuery())._removeClass_("amberBody");
-self["@opened"]=false;
-self["@opened"];
-};
-return self}, function($ctx1) {$ctx1.fill(self,"close",{},smalltalk.TabManager)})},
-messageSends: ["ifTrue:", "hide", "asJQuery", "removeBodyMargin", "removeClass:"]}),
-smalltalk.TabManager);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "closeTab:",
-fn: function (aWidget){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._removeTab_(aWidget);
-self._selectTab_(_st(self._tabs())._last());
-_st(aWidget)._remove();
-self._update();
-return self}, function($ctx1) {$ctx1.fill(self,"closeTab:",{aWidget:aWidget},smalltalk.TabManager)})},
-messageSends: ["removeTab:", "selectTab:", "last", "tabs", "remove", "update"]}),
-smalltalk.TabManager);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "initialize",
-fn: function (){
-var self=this;
-function $IDETranscript(){return smalltalk.IDETranscript||(typeof IDETranscript=="undefined"?nil:IDETranscript)}
-function $Workspace(){return smalltalk.Workspace||(typeof Workspace=="undefined"?nil:Workspace)}
-function $TestRunner(){return smalltalk.TestRunner||(typeof TestRunner=="undefined"?nil:TestRunner)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4,$5,$6;
-smalltalk.TabManager.superclass.fn.prototype._initialize.apply(_st(self), []);
-self["@opened"]=true;
-_st((function(html){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(html)._div())._id_("amber");
-}, function($ctx2) {$ctx2.fillBlock({html:html},$ctx1)})}))._appendToJQuery_("body"._asJQuery());
-_st("body"._asJQuery())._addClass_("amberBody");
-self._appendToJQuery_("#amber"._asJQuery());
-$1=self;
-_st($1)._addTab_(_st($IDETranscript())._current());
-_st($1)._addTab_(_st($Workspace())._new());
-$2=_st($1)._addTab_(_st($TestRunner())._new());
-self._selectTab_(_st(self._tabs())._last());
-$3=self;
-_st($3)._onResize_((function(){
-return smalltalk.withContext(function($ctx2) {
-$4=self;
-_st($4)._updateBodyMargin();
-$5=_st($4)._updatePosition();
-return $5;
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-$6=_st($3)._onWindowResize_((function(){
-return smalltalk.withContext(function($ctx2) {
-return self._updatePosition();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"initialize",{},smalltalk.TabManager)})},
-messageSends: ["initialize", "appendToJQuery:", "asJQuery", "id:", "div", "addClass:", "addTab:", "current", "new", "selectTab:", "last", "tabs", "onResize:", "updateBodyMargin", "updatePosition", "onWindowResize:"]}),
-smalltalk.TabManager);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "labelFor:",
-fn: function (aWidget){
-var self=this;
-var label,maxSize;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-maxSize=(15);
-label=_st(_st(aWidget)._label())._copyFrom_to_((0),_st(_st(_st(aWidget)._label())._size())._min_(maxSize));
-$1=_st(_st(_st(aWidget)._label())._size()).__gt(maxSize);
-if(smalltalk.assert($1)){
-label=_st(label).__comma("...");
-label;
-};
-$2=label;
-return $2;
-}, function($ctx1) {$ctx1.fill(self,"labelFor:",{aWidget:aWidget,label:label,maxSize:maxSize},smalltalk.TabManager)})},
-messageSends: ["copyFrom:to:", "min:", "size", "label", "ifTrue:", ",", ">"]}),
-smalltalk.TabManager);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "newBrowserTab",
-fn: function (){
-var self=this;
-function $Browser(){return smalltalk.Browser||(typeof Browser=="undefined"?nil:Browser)}
-return smalltalk.withContext(function($ctx1) { 
-_st($Browser())._open();
-return self}, function($ctx1) {$ctx1.fill(self,"newBrowserTab",{},smalltalk.TabManager)})},
-messageSends: ["open"]}),
-smalltalk.TabManager);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onResize:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st("#amber"._asJQuery())._resizable_(smalltalk.HashedCollection._from_(["handles".__minus_gt("n"),"resize".__minus_gt(aBlock),"minHeight".__minus_gt((230))]));
-return self}, function($ctx1) {$ctx1.fill(self,"onResize:",{aBlock:aBlock},smalltalk.TabManager)})},
-messageSends: ["resizable:", "->", "asJQuery"]}),
-smalltalk.TabManager);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "onWindowResize:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(_st(window)._asJQuery())._resize_(aBlock);
-return self}, function($ctx1) {$ctx1.fill(self,"onWindowResize:",{aBlock:aBlock},smalltalk.TabManager)})},
-messageSends: ["resize:", "asJQuery"]}),
-smalltalk.TabManager);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "open",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@opened"];
-if(! smalltalk.assert($1)){
-_st("body"._asJQuery())._addClass_("amberBody");
-_st("#amber"._asJQuery())._show();
-_st(_st(self["@ul"])._asJQuery())._show();
-self._updateBodyMargin();
-_st(self["@selectedTab"])._show();
-self["@opened"]=true;
-self["@opened"];
-};
-return self}, function($ctx1) {$ctx1.fill(self,"open",{},smalltalk.TabManager)})},
-messageSends: ["ifFalse:", "addClass:", "asJQuery", "show", "updateBodyMargin"]}),
-smalltalk.TabManager);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "removeBodyMargin",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._setBodyMargin_((0));
-return self}, function($ctx1) {$ctx1.fill(self,"removeBodyMargin",{},smalltalk.TabManager)})},
-messageSends: ["setBodyMargin:"]}),
-smalltalk.TabManager);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "removeTab:",
-fn: function (aWidget){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._tabs())._remove_(aWidget);
-self._update();
-return self}, function($ctx1) {$ctx1.fill(self,"removeTab:",{aWidget:aWidget},smalltalk.TabManager)})},
-messageSends: ["remove:", "tabs", "update"]}),
-smalltalk.TabManager);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-_st(_st(html)._div())._id_("logo");
-self._renderToolbarOn_(html);
-$1=_st(html)._ul();
-_st($1)._id_("amberTabs");
-$2=_st($1)._yourself();
-self["@ul"]=$2;
-self._renderTabs();
-return self}, function($ctx1) {$ctx1.fill(self,"renderOn:",{html:html},smalltalk.TabManager)})},
-messageSends: ["id:", "div", "renderToolbarOn:", "ul", "yourself", "renderTabs"]}),
-smalltalk.TabManager);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderTabFor:on:",
-fn: function (aWidget,html){
-var self=this;
-var li;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$5,$6,$7,$4,$8;
-li=_st(html)._li();
-$1=_st(self["@selectedTab"]).__eq(aWidget);
-if(smalltalk.assert($1)){
-_st(li)._class_("selected");
-};
-$2=li;
-_st($2)._with_((function(){
-return smalltalk.withContext(function($ctx2) {
-_st(_st(html)._span())._class_("ltab");
-$3=_st(html)._span();
-_st($3)._class_("mtab");
-$4=_st($3)._with_((function(){
-return smalltalk.withContext(function($ctx3) {
-$5=_st(aWidget)._canBeClosed();
-if(smalltalk.assert($5)){
-$6=_st(html)._span();
-_st($6)._class_("close");
-_st($6)._with_("x");
-$7=_st($6)._onClick_((function(){
-return smalltalk.withContext(function($ctx4) {
-return self._closeTab_(aWidget);
-}, function($ctx4) {$ctx4.fillBlock({},$ctx3)})}));
-$7;
-};
-return _st(_st(html)._span())._with_(self._labelFor_(aWidget));
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-$4;
-return _st(_st(html)._span())._class_("rtab");
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-$8=_st($2)._onClick_((function(){
-return smalltalk.withContext(function($ctx2) {
-return self._selectTab_(aWidget);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"renderTabFor:on:",{aWidget:aWidget,html:html,li:li},smalltalk.TabManager)})},
-messageSends: ["li", "ifTrue:", "class:", "=", "with:", "span", "onClick:", "closeTab:", "canBeClosed", "labelFor:", "selectTab:"]}),
-smalltalk.TabManager);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderTabs",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4;
-_st(self["@ul"])._contents_((function(html){
-return smalltalk.withContext(function($ctx2) {
-_st(self._tabs())._do_((function(each){
-return smalltalk.withContext(function($ctx3) {
-return self._renderTabFor_on_(each,html);
-}, function($ctx3) {$ctx3.fillBlock({each:each},$ctx2)})}));
-$1=_st(html)._li();
-_st($1)._class_("newtab");
-_st($1)._with_((function(){
-return smalltalk.withContext(function($ctx3) {
-_st(_st(html)._span())._class_("ltab");
-$2=_st(html)._span();
-_st($2)._class_("mtab");
-$3=_st($2)._with_(" + ");
-$3;
-return _st(_st(html)._span())._class_("rtab");
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-$4=_st($1)._onClick_((function(){
-return smalltalk.withContext(function($ctx3) {
-return self._newBrowserTab();
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-return $4;
-}, function($ctx2) {$ctx2.fillBlock({html:html},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"renderTabs",{},smalltalk.TabManager)})},
-messageSends: ["contents:", "do:", "renderTabFor:on:", "tabs", "class:", "li", "with:", "span", "onClick:", "newBrowserTab"]}),
-smalltalk.TabManager);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderToolbarOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$3,$4,$5,$6,$7,$2;
-$1=_st(html)._div();
-_st($1)._id_("amber_toolbar");
-$2=_st($1)._with_((function(){
-return smalltalk.withContext(function($ctx2) {
-$3=_st(html)._input();
-_st($3)._class_("implementors");
-$4=_st($3)._yourself();
-self["@input"]=$4;
-self["@input"];
-_st(self["@input"])._onKeyPress_((function(event){
-return smalltalk.withContext(function($ctx3) {
-$5=_st(_st(event)._keyCode()).__eq((13));
-if(smalltalk.assert($5)){
-return self._search_(_st(_st(self["@input"])._asJQuery())._val());
-};
-}, function($ctx3) {$ctx3.fillBlock({event:event},$ctx2)})}));
-$6=_st(html)._div();
-_st($6)._id_("amber_close");
-$7=_st($6)._onClick_((function(){
-return smalltalk.withContext(function($ctx3) {
-return self._close();
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-return $7;
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"renderToolbarOn:",{html:html},smalltalk.TabManager)})},
-messageSends: ["id:", "div", "with:", "class:", "input", "yourself", "onKeyPress:", "ifTrue:", "search:", "val", "asJQuery", "=", "keyCode", "onClick:", "close"]}),
-smalltalk.TabManager);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "search:",
-fn: function (aString){
-var self=this;
-var searchedClass;
-function $Smalltalk(){return smalltalk.Smalltalk||(typeof Smalltalk=="undefined"?nil:Smalltalk)}
-function $Browser(){return smalltalk.Browser||(typeof Browser=="undefined"?nil:Browser)}
-function $ReferencesBrowser(){return smalltalk.ReferencesBrowser||(typeof ReferencesBrowser=="undefined"?nil:ReferencesBrowser)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-searchedClass=_st(_st($Smalltalk())._current())._at_(aString);
-$1=_st(searchedClass)._isClass();
-if(smalltalk.assert($1)){
-_st($Browser())._openOn_(searchedClass);
-} else {
-_st($ReferencesBrowser())._search_(aString);
-};
-return self}, function($ctx1) {$ctx1.fill(self,"search:",{aString:aString,searchedClass:searchedClass},smalltalk.TabManager)})},
-messageSends: ["at:", "current", "ifTrue:ifFalse:", "openOn:", "search:", "isClass"]}),
-smalltalk.TabManager);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selectTab:",
-fn: function (aWidget){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._open();
-self["@selectedTab"]=aWidget;
-_st(self._tabs())._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(each)._hide();
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-_st(aWidget)._show();
-self._update();
-return self}, function($ctx1) {$ctx1.fill(self,"selectTab:",{aWidget:aWidget},smalltalk.TabManager)})},
-messageSends: ["open", "do:", "hide", "tabs", "show", "update"]}),
-smalltalk.TabManager);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "setBodyMargin:",
-fn: function (anInteger){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(".amberBody"._asJQuery())._css_put_("margin-bottom",_st(_st(anInteger)._asString()).__comma("px"));
-return self}, function($ctx1) {$ctx1.fill(self,"setBodyMargin:",{anInteger:anInteger},smalltalk.TabManager)})},
-messageSends: ["css:put:", ",", "asString", "asJQuery"]}),
-smalltalk.TabManager);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "tabs",
-fn: function (){
-var self=this;
-function $Array(){return smalltalk.Array||(typeof Array=="undefined"?nil:Array)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@tabs"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@tabs"]=_st($Array())._new();
-$1=self["@tabs"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"tabs",{},smalltalk.TabManager)})},
-messageSends: ["ifNil:", "new"]}),
-smalltalk.TabManager);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "update",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._renderTabs();
-return self}, function($ctx1) {$ctx1.fill(self,"update",{},smalltalk.TabManager)})},
-messageSends: ["renderTabs"]}),
-smalltalk.TabManager);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "updateBodyMargin",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._setBodyMargin_(_st("#amber"._asJQuery())._height());
-return self}, function($ctx1) {$ctx1.fill(self,"updateBodyMargin",{},smalltalk.TabManager)})},
-messageSends: ["setBodyMargin:", "height", "asJQuery"]}),
-smalltalk.TabManager);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "updatePosition",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1="#amber"._asJQuery();
-_st($1)._css_put_("top","");
-$2=_st($1)._css_put_("bottom","0px");
-return self}, function($ctx1) {$ctx1.fill(self,"updatePosition",{},smalltalk.TabManager)})},
-messageSends: ["css:put:", "asJQuery"]}),
-smalltalk.TabManager);
-
-
-smalltalk.TabManager.klass.iVarNames = ['current'];
-smalltalk.addMethod(
-smalltalk.method({
-selector: "current",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@current"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@current"]=smalltalk.TabManager.klass.superclass.fn.prototype._new.apply(_st(self), []);
-$1=self["@current"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"current",{},smalltalk.TabManager.klass)})},
-messageSends: ["ifNil:", "new"]}),
-smalltalk.TabManager.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "new",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._shouldNotImplement();
-return self}, function($ctx1) {$ctx1.fill(self,"new",{},smalltalk.TabManager.klass)})},
-messageSends: ["shouldNotImplement"]}),
-smalltalk.TabManager.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "toggleAmberIDE",
-fn: function (){
-var self=this;
-function $Browser(){return smalltalk.Browser||(typeof Browser=="undefined"?nil:Browser)}
-function $TabManager(){return smalltalk.TabManager||(typeof TabManager=="undefined"?nil:TabManager)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st(_st("#amber"._asJQuery())._length()).__eq((0));
-if(smalltalk.assert($1)){
-_st($Browser())._open();
-} else {
-$2=_st("#amber"._asJQuery())._is_(":visible");
-if(smalltalk.assert($2)){
-_st(_st($TabManager())._current())._close();
-} else {
-_st(_st($TabManager())._current())._open();
-};
-};
-return self}, function($ctx1) {$ctx1.fill(self,"toggleAmberIDE",{},smalltalk.TabManager.klass)})},
-messageSends: ["ifTrue:ifFalse:", "open", "close", "current", "is:", "asJQuery", "=", "length"]}),
-smalltalk.TabManager.klass);
-
-
-smalltalk.addClass('TabWidget', smalltalk.Widget, ['div'], 'IDE');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "canBeClosed",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return false;
-}, function($ctx1) {$ctx1.fill(self,"canBeClosed",{},smalltalk.TabWidget)})},
-messageSends: []}),
-smalltalk.TabWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "close",
-fn: function (){
-var self=this;
-function $TabManager(){return smalltalk.TabManager||(typeof TabManager=="undefined"?nil:TabManager)}
-return smalltalk.withContext(function($ctx1) { 
-_st(_st($TabManager())._current())._closeTab_(self);
-return self}, function($ctx1) {$ctx1.fill(self,"close",{},smalltalk.TabWidget)})},
-messageSends: ["closeTab:", "current"]}),
-smalltalk.TabWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "hide",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(_st(self["@div"])._asJQuery())._hide();
-return self}, function($ctx1) {$ctx1.fill(self,"hide",{},smalltalk.TabWidget)})},
-messageSends: ["hide", "asJQuery"]}),
-smalltalk.TabWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "label",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._subclassResponsibility();
-return self}, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.TabWidget)})},
-messageSends: ["subclassResponsibility"]}),
-smalltalk.TabWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "open",
-fn: function (){
-var self=this;
-function $TabManager(){return smalltalk.TabManager||(typeof TabManager=="undefined"?nil:TabManager)}
-return smalltalk.withContext(function($ctx1) { 
-_st(_st($TabManager())._current())._addTab_(self);
-_st(_st($TabManager())._current())._selectTab_(self);
-return self}, function($ctx1) {$ctx1.fill(self,"open",{},smalltalk.TabWidget)})},
-messageSends: ["addTab:", "current", "selectTab:"]}),
-smalltalk.TabWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "remove",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(_st(self["@div"])._asJQuery())._remove();
-return self}, function($ctx1) {$ctx1.fill(self,"remove",{},smalltalk.TabWidget)})},
-messageSends: ["remove", "asJQuery"]}),
-smalltalk.TabWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderBoxOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self}, function($ctx1) {$ctx1.fill(self,"renderBoxOn:",{html:html},smalltalk.TabWidget)})},
-messageSends: []}),
-smalltalk.TabWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderButtonsOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self}, function($ctx1) {$ctx1.fill(self,"renderButtonsOn:",{html:html},smalltalk.TabWidget)})},
-messageSends: []}),
-smalltalk.TabWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st(html)._div();
-_st($1)._class_("amberTool");
-$2=_st($1)._yourself();
-self["@div"]=$2;
-self._renderTab();
-return self}, function($ctx1) {$ctx1.fill(self,"renderOn:",{html:html},smalltalk.TabWidget)})},
-messageSends: ["class:", "div", "yourself", "renderTab"]}),
-smalltalk.TabWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderTab",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4;
-_st(self["@div"])._contents_((function(html){
-return smalltalk.withContext(function($ctx2) {
-$1=_st(html)._div();
-_st($1)._class_("amber_box");
-$2=_st($1)._with_((function(){
-return smalltalk.withContext(function($ctx3) {
-return self._renderBoxOn_(html);
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-$2;
-$3=_st(html)._div();
-_st($3)._class_("amber_buttons");
-$4=_st($3)._with_((function(){
-return smalltalk.withContext(function($ctx3) {
-return self._renderButtonsOn_(html);
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-return $4;
-}, function($ctx2) {$ctx2.fillBlock({html:html},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"renderTab",{},smalltalk.TabWidget)})},
-messageSends: ["contents:", "class:", "div", "with:", "renderBoxOn:", "renderButtonsOn:"]}),
-smalltalk.TabWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "show",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(_st(self["@div"])._asJQuery())._show();
-return self}, function($ctx1) {$ctx1.fill(self,"show",{},smalltalk.TabWidget)})},
-messageSends: ["show", "asJQuery"]}),
-smalltalk.TabWidget);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "update",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._renderTab();
-return self}, function($ctx1) {$ctx1.fill(self,"update",{},smalltalk.TabWidget)})},
-messageSends: ["renderTab"]}),
-smalltalk.TabWidget);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "open",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._new())._open();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"open",{},smalltalk.TabWidget.klass)})},
-messageSends: ["open", "new"]}),
-smalltalk.TabWidget.klass);
-
-
-smalltalk.addClass('Browser', smalltalk.TabWidget, ['selectedPackage', 'selectedClass', 'selectedProtocol', 'selectedMethod', 'packagesList', 'classesList', 'protocolsList', 'methodsList', 'sourceArea', 'tabsList', 'selectedTab', 'saveButton', 'classButtons', 'methodButtons', 'unsavedChanges'], 'IDE');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "addInstanceVariableNamed:toClass:",
-fn: function (aString,aClass){
-var self=this;
-function $ClassBuilder(){return smalltalk.ClassBuilder||(typeof ClassBuilder=="undefined"?nil:ClassBuilder)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st(_st(aClass)._instanceVariableNames())._copy();
-_st($1)._add_(aString);
-$2=_st($1)._yourself();
-_st(_st($ClassBuilder())._new())._addSubclassOf_named_instanceVariableNames_package_(_st(aClass)._superclass(),_st(aClass)._name(),$2,_st(_st(aClass)._package())._name());
-return self}, function($ctx1) {$ctx1.fill(self,"addInstanceVariableNamed:toClass:",{aString:aString,aClass:aClass},smalltalk.Browser)})},
-messageSends: ["addSubclassOf:named:instanceVariableNames:package:", "superclass", "name", "add:", "copy", "instanceVariableNames", "yourself", "package", "new"]}),
-smalltalk.Browser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "addNewClass",
-fn: function (){
-var self=this;
-var className;
-function $Object(){return smalltalk.Object||(typeof Object=="undefined"?nil:Object)}
-function $Smalltalk(){return smalltalk.Smalltalk||(typeof Smalltalk=="undefined"?nil:Smalltalk)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3;
-className=self._prompt_("New class");
-$1=_st(_st(className)._notNil())._and_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(className)._notEmpty();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-if(smalltalk.assert($1)){
-_st($Object())._subclass_instanceVariableNames_package_(className,"",self._selectedPackage());
-$2=self;
-_st($2)._resetClassesList();
-$3=_st($2)._updateClassesList();
-$3;
-self._selectClass_(_st(_st($Smalltalk())._current())._at_(className));
-};
-return self}, function($ctx1) {$ctx1.fill(self,"addNewClass",{className:className},smalltalk.Browser)})},
-messageSends: ["prompt:", "ifTrue:", "subclass:instanceVariableNames:package:", "selectedPackage", "resetClassesList", "updateClassesList", "selectClass:", "at:", "current", "and:", "notEmpty", "notNil"]}),
-smalltalk.Browser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "addNewProtocol",
-fn: function (){
-var self=this;
-var newProtocol;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-newProtocol=self._prompt_("New method protocol");
-$1=_st(_st(newProtocol)._notNil())._and_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(newProtocol)._notEmpty();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-if(smalltalk.assert($1)){
-_st(self["@selectedMethod"])._category_(newProtocol);
-self._setMethodProtocol_(newProtocol);
-};
-return self}, function($ctx1) {$ctx1.fill(self,"addNewProtocol",{newProtocol:newProtocol},smalltalk.Browser)})},
-messageSends: ["prompt:", "ifTrue:", "category:", "setMethodProtocol:", "and:", "notEmpty", "notNil"]}),
-smalltalk.Browser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "canBeClosed",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"canBeClosed",{},smalltalk.Browser)})},
-messageSends: []}),
-smalltalk.Browser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "cancelChanges",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@unsavedChanges"];
-if(smalltalk.assert($2)){
-$1=self._confirm_("Cancel changes?");
-} else {
-$1=true;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"cancelChanges",{},smalltalk.Browser)})},
-messageSends: ["ifTrue:ifFalse:", "confirm:"]}),
-smalltalk.Browser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "classCommentSource",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self["@selectedClass"])._comment();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"classCommentSource",{},smalltalk.Browser)})},
-messageSends: ["comment"]}),
-smalltalk.Browser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "classDeclarationSource",
-fn: function (){
-var self=this;
-var stream;
-function $String(){return smalltalk.String||(typeof String=="undefined"?nil:String)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4,$5,$6,$7;
-stream=""._writeStream();
-$1=self["@selectedClass"];
-if(($receiver = $1) == nil || $receiver == undefined){
-$2=self._classDeclarationTemplate();
-return $2;
-} else {
-$1;
-};
-$3=stream;
-_st($3)._nextPutAll_(_st(_st(self["@selectedClass"])._superclass())._asString());
-_st($3)._nextPutAll_(" subclass: #");
-_st($3)._nextPutAll_(_st(self["@selectedClass"])._name());
-_st($3)._nextPutAll_(_st(_st($String())._lf()).__comma(_st($String())._tab()));
-$4=_st($3)._nextPutAll_("instanceVariableNames: '");
-_st(_st(self["@selectedClass"])._instanceVariableNames())._do_separatedBy_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(stream)._nextPutAll_(each);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}),(function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(stream)._nextPutAll_(" ");
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-$5=stream;
-_st($5)._nextPutAll_(_st("'".__comma(_st($String())._lf())).__comma(_st($String())._tab()));
-_st($5)._nextPutAll_("package: '");
-_st($5)._nextPutAll_(_st(self["@selectedClass"])._category());
-$6=_st($5)._nextPutAll_("'");
-$7=_st(stream)._contents();
-return $7;
-}, function($ctx1) {$ctx1.fill(self,"classDeclarationSource",{stream:stream},smalltalk.Browser)})},
-messageSends: ["writeStream", "ifNil:", "classDeclarationTemplate", "nextPutAll:", "asString", "superclass", "name", ",", "tab", "lf", "do:separatedBy:", "instanceVariableNames", "category", "contents"]}),
-smalltalk.Browser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "classDeclarationTemplate",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st("Object subclass: #NameOfSubclass\x0a\x09instanceVariableNames: ''\x0a\x09package: '".__comma(self._selectedPackage())).__comma("'");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"classDeclarationTemplate",{},smalltalk.Browser)})},
-messageSends: [",", "selectedPackage"]}),
-smalltalk.Browser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "classes",
-fn: function (){
-var self=this;
-function $Smalltalk(){return smalltalk.Smalltalk||(typeof Smalltalk=="undefined"?nil:Smalltalk)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(_st(_st(_st($Smalltalk())._current())._classes())._select_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(each)._category()).__eq(self["@selectedPackage"]);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})})))._sort_((function(a,b){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(a)._name()).__lt(_st(b)._name());
-}, function($ctx2) {$ctx2.fillBlock({a:a,b:b},$ctx1)})})))._asSet();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"classes",{},smalltalk.Browser)})},
-messageSends: ["asSet", "sort:", "<", "name", "select:", "=", "category", "classes", "current"]}),
-smalltalk.Browser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "commitPackage",
-fn: function (){
-var self=this;
-function $Package(){return smalltalk.Package||(typeof Package=="undefined"?nil:Package)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@selectedPackage"];
-if(($receiver = $1) == nil || $receiver == undefined){
-$1;
-} else {
-_st(_st($Package())._named_(self["@selectedPackage"]))._commit();
-};
-return self}, function($ctx1) {$ctx1.fill(self,"commitPackage",{},smalltalk.Browser)})},
-messageSends: ["ifNotNil:", "commit", "named:"]}),
-smalltalk.Browser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "compile",
-fn: function (){
-var self=this;
-var currentEditLine;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3;
-self._disableSaveButton();
-currentEditLine=_st(_st(self["@sourceArea"])._editor())._getCursor();
-$1=_st(self["@selectedTab"]).__eq("comment");
-if(smalltalk.assert($1)){
-$2=self["@selectedClass"];
-if(($receiver = $2) == nil || $receiver == undefined){
-$2;
-} else {
-self._compileClassComment();
-};
-} else {
-$3=_st(_st(self["@selectedProtocol"])._notNil())._or_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(self["@selectedMethod"])._notNil();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-if(smalltalk.assert($3)){
-self._compileMethodDefinition();
-} else {
-self._compileDefinition();
-};
-};
-_st(_st(self["@sourceArea"])._editor())._setCursor_(currentEditLine);
-return self}, function($ctx1) {$ctx1.fill(self,"compile",{currentEditLine:currentEditLine},smalltalk.Browser)})},
-messageSends: ["disableSaveButton", "getCursor", "editor", "ifTrue:ifFalse:", "ifNotNil:", "compileClassComment", "ifFalse:ifTrue:", "compileDefinition", "compileMethodDefinition", "or:", "notNil", "=", "setCursor:"]}),
-smalltalk.Browser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "compileClassComment",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self["@selectedClass"])._comment_(_st(self["@sourceArea"])._val());
-return self}, function($ctx1) {$ctx1.fill(self,"compileClassComment",{},smalltalk.Browser)})},
-messageSends: ["comment:", "val"]}),
-smalltalk.Browser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "compileDefinition",
-fn: function (){
-var self=this;
-var newClass;
-function $Compiler(){return smalltalk.Compiler||(typeof Compiler=="undefined"?nil:Compiler)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-newClass=_st(_st($Compiler())._new())._evaluateExpression_(_st(self["@sourceArea"])._val());
-$1=self;
-_st($1)._resetClassesList();
-_st($1)._updateCategoriesList();
-$2=_st($1)._updateClassesList();
-self._selectClass_(newClass);
-return self}, function($ctx1) {$ctx1.fill(self,"compileDefinition",{newClass:newClass},smalltalk.Browser)})},
-messageSends: ["evaluateExpression:", "val", "new", "resetClassesList", "updateCategoriesList", "updateClassesList", "selectClass:"]}),
-smalltalk.Browser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "compileMethodDefinition",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self["@selectedTab"]).__eq("instance");
-if(smalltalk.assert($1)){
-self._compileMethodDefinitionFor_(self["@selectedClass"]);
-} else {
-self._compileMethodDefinitionFor_(_st(self["@selectedClass"])._class());
-};
-return self}, function($ctx1) {$ctx1.fill(self,"compileMethodDefinition",{},smalltalk.Browser)})},
-messageSends: ["ifTrue:ifFalse:", "compileMethodDefinitionFor:", "class", "="]}),
-smalltalk.Browser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "compileMethodDefinitionFor:",
-fn: function (aClass){
-var self=this;
-var compiler,method,source,node;
-function $Compiler(){return smalltalk.Compiler||(typeof Compiler=="undefined"?nil:Compiler)}
-function $PlatformInterface(){return smalltalk.PlatformInterface||(typeof PlatformInterface=="undefined"?nil:PlatformInterface)}
-function $ClassBuilder(){return smalltalk.ClassBuilder||(typeof ClassBuilder=="undefined"?nil:ClassBuilder)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4,$5,$6;
-var $early={};
-try {
-source=_st(self["@sourceArea"])._val();
-$1=self["@selectedProtocol"];
-if(($receiver = $1) == nil || $receiver == undefined){
-self["@selectedProtocol"]=_st(self["@selectedMethod"])._category();
-self["@selectedProtocol"];
-} else {
-$1;
-};
-compiler=_st($Compiler())._new();
-_st(compiler)._source_(source);
-node=_st(compiler)._parse_(source);
-$2=_st(node)._isParseFailure();
-if(smalltalk.assert($2)){
-$3=self._alert_(_st(_st("PARSE ERROR: ".__comma(_st(node)._reason())).__comma(", position: ")).__comma(_st(_st(node)._position())._asString()));
-return $3;
-};
-_st(compiler)._currentClass_(aClass);
-method=_st(compiler)._eval_(_st(compiler)._compileNode_(node));
-_st(_st(compiler)._unknownVariables())._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-$4=_st($PlatformInterface())._existsGlobal_(each);
-if(! smalltalk.assert($4)){
-$5=self._confirm_(_st("Declare '".__comma(each)).__comma("' as instance variable?"));
-if(smalltalk.assert($5)){
-self._addInstanceVariableNamed_toClass_(each,aClass);
-$6=self._compileMethodDefinitionFor_(aClass);
-throw $early=[$6];
-};
-};
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-_st(_st($ClassBuilder())._new())._installMethod_forClass_category_(method,aClass,self["@selectedProtocol"]);
-self._updateMethodsList();
-self._selectMethod_(method);
-return self}
-catch(e) {if(e===$early)return e[0]; throw e}
-}, function($ctx1) {$ctx1.fill(self,"compileMethodDefinitionFor:",{aClass:aClass,compiler:compiler,method:method,source:source,node:node},smalltalk.Browser)})},
-messageSends: ["val", "ifNil:", "category", "new", "source:", "parse:", "ifTrue:", "alert:", ",", "asString", "position", "reason", "isParseFailure", "currentClass:", "eval:", "compileNode:", "do:", "ifFalse:", "addInstanceVariableNamed:toClass:", "compileMethodDefinitionFor:", "confirm:", "existsGlobal:", "unknownVariables", "installMethod:forClass:category:", "updateMethodsList", "selectMethod:"]}),
-smalltalk.Browser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "copyClass",
-fn: function (){
-var self=this;
-var className;
-function $ClassBuilder(){return smalltalk.ClassBuilder||(typeof ClassBuilder=="undefined"?nil:ClassBuilder)}
-function $Smalltalk(){return smalltalk.Smalltalk||(typeof Smalltalk=="undefined"?nil:Smalltalk)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3;
-className=self._prompt_("Copy class");
-$1=_st(_st(className)._notNil())._and_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(className)._notEmpty();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-if(smalltalk.assert($1)){
-_st(_st($ClassBuilder())._new())._copyClass_named_(self._selectedClass(),className);
-$2=self;
-_st($2)._resetClassesList();
-$3=_st($2)._updateClassesList();
-$3;
-self._selectClass_(_st(_st($Smalltalk())._current())._at_(className));
-};
-return self}, function($ctx1) {$ctx1.fill(self,"copyClass",{className:className},smalltalk.Browser)})},
-messageSends: ["prompt:", "ifTrue:", "copyClass:named:", "selectedClass", "new", "resetClassesList", "updateClassesList", "selectClass:", "at:", "current", "and:", "notEmpty", "notNil"]}),
-smalltalk.Browser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "declarationSource",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=_st(self["@selectedTab"]).__eq("instance");
-if(smalltalk.assert($2)){
-$1=self._classDeclarationSource();
-} else {
-$1=self._metaclassDeclarationSource();
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"declarationSource",{},smalltalk.Browser)})},
-messageSends: ["ifTrue:ifFalse:", "classDeclarationSource", "metaclassDeclarationSource", "="]}),
-smalltalk.Browser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "disableSaveButton",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@saveButton"];
-if(($receiver = $1) == nil || $receiver == undefined){
-$1;
-} else {
-_st(self["@saveButton"])._at_put_("disabled",true);
-};
-self["@unsavedChanges"]=false;
-return self}, function($ctx1) {$ctx1.fill(self,"disableSaveButton",{},smalltalk.Browser)})},
-messageSends: ["ifNotNil:", "at:put:"]}),
-smalltalk.Browser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "dummyMethodSource",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "messageSelectorAndArgumentNames\x0a\x09\x22comment stating purpose of message\x22\x0a\x0a\x09| temporary variable names |\x0a\x09statements";
-}, function($ctx1) {$ctx1.fill(self,"dummyMethodSource",{},smalltalk.Browser)})},
-messageSends: []}),
-smalltalk.Browser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "handleSourceAreaKeyDown:",
-fn: function (anEvent){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-if(anEvent.ctrlKey) {
-		if(anEvent.keyCode === 83) { //ctrl+s
-			self._compile();
-			anEvent.preventDefault();
-			return false;
-		}
-	}
-	;
-return self}, function($ctx1) {$ctx1.fill(self,"handleSourceAreaKeyDown:",{anEvent:anEvent},smalltalk.Browser)})},
-messageSends: []}),
-smalltalk.Browser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "hideClassButtons",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(_st(self["@classButtons"])._asJQuery())._hide();
-return self}, function($ctx1) {$ctx1.fill(self,"hideClassButtons",{},smalltalk.Browser)})},
-messageSends: ["hide", "asJQuery"]}),
-smalltalk.Browser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "hideMethodButtons",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(_st(self["@methodButtons"])._asJQuery())._hide();
-return self}, function($ctx1) {$ctx1.fill(self,"hideMethodButtons",{},smalltalk.Browser)})},
-messageSends: ["hide", "asJQuery"]}),
-smalltalk.Browser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "initialize",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-smalltalk.Browser.superclass.fn.prototype._initialize.apply(_st(self), []);
-self["@selectedTab"]="instance";
-self["@selectedPackage"]=_st(self._packages())._first();
-self["@unsavedChanges"]=false;
-return self}, function($ctx1) {$ctx1.fill(self,"initialize",{},smalltalk.Browser)})},
-messageSends: ["initialize", "first", "packages"]}),
-smalltalk.Browser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "label",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@selectedClass"];
-if(($receiver = $2) == nil || $receiver == undefined){
-$1="Browser (nil)";
-} else {
-$1="Browser: ".__comma(_st(self["@selectedClass"])._name());
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.Browser)})},
-messageSends: ["ifNil:ifNotNil:", ",", "name"]}),
-smalltalk.Browser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "metaclassDeclarationSource",
-fn: function (){
-var self=this;
-var stream;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4;
-stream=""._writeStream();
-$1=self["@selectedClass"];
-if(($receiver = $1) == nil || $receiver == undefined){
-$1;
-} else {
-$2=stream;
-_st($2)._nextPutAll_(_st(self["@selectedClass"])._asString());
-_st($2)._nextPutAll_(" class ");
-$3=_st($2)._nextPutAll_("instanceVariableNames: '");
-$3;
-_st(_st(_st(self["@selectedClass"])._class())._instanceVariableNames())._do_separatedBy_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(stream)._nextPutAll_(each);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}),(function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(stream)._nextPutAll_(" ");
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-_st(stream)._nextPutAll_("'");
-};
-$4=_st(stream)._contents();
-return $4;
-}, function($ctx1) {$ctx1.fill(self,"metaclassDeclarationSource",{stream:stream},smalltalk.Browser)})},
-messageSends: ["writeStream", "ifNotNil:", "nextPutAll:", "asString", "do:separatedBy:", "instanceVariableNames", "class", "contents"]}),
-smalltalk.Browser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "methodSource",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@selectedMethod"];
-if(($receiver = $2) == nil || $receiver == undefined){
-$1=self._dummyMethodSource();
-} else {
-$1=_st(self["@selectedMethod"])._source();
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"methodSource",{},smalltalk.Browser)})},
-messageSends: ["ifNil:ifNotNil:", "dummyMethodSource", "source"]}),
-smalltalk.Browser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "methods",
-fn: function (){
-var self=this;
-var klass;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4,$7,$8,$6,$5;
-$1=_st(self["@selectedTab"]).__eq("comment");
-if(smalltalk.assert($1)){
-$2=[];
-return $2;
-};
-$3=self["@selectedClass"];
-if(($receiver = $3) == nil || $receiver == undefined){
-$3;
-} else {
-$4=_st(self["@selectedTab"]).__eq("instance");
-if(smalltalk.assert($4)){
-klass=self["@selectedClass"];
-} else {
-klass=_st(self["@selectedClass"])._class();
-};
-klass;
-};
-$7=self["@selectedProtocol"];
-if(($receiver = $7) == nil || $receiver == undefined){
-$8=klass;
-if(($receiver = $8) == nil || $receiver == undefined){
-$6=[];
-} else {
-$6=_st(_st(klass)._methodDictionary())._values();
-};
-} else {
-$6=_st(_st(_st(klass)._methodDictionary())._values())._select_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(each)._category()).__eq(self["@selectedProtocol"]);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-};
-$5=_st($6)._sort_((function(a,b){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(a)._selector()).__lt(_st(b)._selector());
-}, function($ctx2) {$ctx2.fillBlock({a:a,b:b},$ctx1)})}));
-return $5;
-}, function($ctx1) {$ctx1.fill(self,"methods",{klass:klass},smalltalk.Browser)})},
-messageSends: ["ifTrue:", "=", "ifNotNil:", "ifTrue:ifFalse:", "class", "sort:", "<", "selector", "ifNil:ifNotNil:", "values", "methodDictionary", "select:", "category"]}),
-smalltalk.Browser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "packages",
-fn: function (){
-var self=this;
-var packages;
-function $Array(){return smalltalk.Array||(typeof Array=="undefined"?nil:Array)}
-function $Smalltalk(){return smalltalk.Smalltalk||(typeof Smalltalk=="undefined"?nil:Smalltalk)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-packages=_st($Array())._new();
-_st(_st(_st($Smalltalk())._current())._classes())._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-$1=_st(packages)._includes_(_st(each)._category());
-if(! smalltalk.assert($1)){
-return _st(packages)._add_(_st(each)._category());
-};
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-$2=_st(packages)._sort();
-return $2;
-}, function($ctx1) {$ctx1.fill(self,"packages",{packages:packages},smalltalk.Browser)})},
-messageSends: ["new", "do:", "ifFalse:", "add:", "category", "includes:", "classes", "current", "sort"]}),
-smalltalk.Browser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "protocols",
-fn: function (){
-var self=this;
-var klass;
-function $Array(){return smalltalk.Array||(typeof Array=="undefined"?nil:Array)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4,$5,$6,$7,$8;
-$1=self["@selectedClass"];
-if(($receiver = $1) == nil || $receiver == undefined){
-$1;
-} else {
-$2=_st(self["@selectedTab"]).__eq("comment");
-if(smalltalk.assert($2)){
-$3=[];
-return $3;
-};
-$4=_st(self["@selectedTab"]).__eq("instance");
-if(smalltalk.assert($4)){
-klass=self["@selectedClass"];
-} else {
-klass=_st(self["@selectedClass"])._class();
-};
-klass;
-$5=_st(_st(klass)._methodDictionary())._isEmpty();
-if(smalltalk.assert($5)){
-$6=_st($Array())._with_("not yet classified");
-return $6;
-};
-$7=_st(klass)._protocols();
-return $7;
-};
-$8=_st($Array())._new();
-return $8;
-}, function($ctx1) {$ctx1.fill(self,"protocols",{klass:klass},smalltalk.Browser)})},
-messageSends: ["ifNotNil:", "ifTrue:", "=", "ifTrue:ifFalse:", "class", "with:", "isEmpty", "methodDictionary", "protocols", "new"]}),
-smalltalk.Browser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "removeClass",
-fn: function (){
-var self=this;
-function $Smalltalk(){return smalltalk.Smalltalk||(typeof Smalltalk=="undefined"?nil:Smalltalk)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._confirm_(_st("Do you really want to remove ".__comma(_st(self["@selectedClass"])._name())).__comma("?"));
-if(smalltalk.assert($1)){
-_st(_st($Smalltalk())._current())._removeClass_(self["@selectedClass"]);
-self._resetClassesList();
-self._selectClass_(nil);
-};
-return self}, function($ctx1) {$ctx1.fill(self,"removeClass",{},smalltalk.Browser)})},
-messageSends: ["ifTrue:", "removeClass:", "current", "resetClassesList", "selectClass:", "confirm:", ",", "name"]}),
-smalltalk.Browser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "removeMethod",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3;
-$1=self._cancelChanges();
-if(smalltalk.assert($1)){
-$2=self._confirm_(_st("Do you really want to remove #".__comma(_st(self["@selectedMethod"])._selector())).__comma("?"));
-if(smalltalk.assert($2)){
-$3=_st(self["@selectedTab"]).__eq("instance");
-if(smalltalk.assert($3)){
-_st(self["@selectedClass"])._removeCompiledMethod_(self["@selectedMethod"]);
-} else {
-_st(_st(self["@selectedClass"])._class())._removeCompiledMethod_(self["@selectedMethod"]);
-};
-self._selectMethod_(nil);
-};
-};
-return self}, function($ctx1) {$ctx1.fill(self,"removeMethod",{},smalltalk.Browser)})},
-messageSends: ["ifTrue:", "ifTrue:ifFalse:", "removeCompiledMethod:", "class", "=", "selectMethod:", "confirm:", ",", "selector", "cancelChanges"]}),
-smalltalk.Browser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "removePackage",
-fn: function (){
-var self=this;
-function $Smalltalk(){return smalltalk.Smalltalk||(typeof Smalltalk=="undefined"?nil:Smalltalk)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._confirm_(_st("Do you really want to remove the whole package ".__comma(self["@selectedPackage"])).__comma(" with all its classes?"));
-if(smalltalk.assert($1)){
-_st(_st($Smalltalk())._current())._removePackage_(self["@selectedPackage"]);
-self._updateCategoriesList();
-};
-return self}, function($ctx1) {$ctx1.fill(self,"removePackage",{},smalltalk.Browser)})},
-messageSends: ["ifTrue:", "removePackage:", "current", "updateCategoriesList", "confirm:", ","]}),
-smalltalk.Browser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renameClass",
-fn: function (){
-var self=this;
-var newName;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3;
-newName=self._prompt_("Rename class ".__comma(_st(self["@selectedClass"])._name()));
-$1=_st(_st(newName)._notNil())._and_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(newName)._notEmpty();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-if(smalltalk.assert($1)){
-_st(self["@selectedClass"])._rename_(newName);
-$2=self;
-_st($2)._updateClassesList();
-$3=_st($2)._updateSourceAndButtons();
-$3;
-};
-return self}, function($ctx1) {$ctx1.fill(self,"renameClass",{newName:newName},smalltalk.Browser)})},
-messageSends: ["prompt:", ",", "name", "ifTrue:", "rename:", "updateClassesList", "updateSourceAndButtons", "and:", "notEmpty", "notNil"]}),
-smalltalk.Browser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renamePackage",
-fn: function (){
-var self=this;
-var newName;
-function $Smalltalk(){return smalltalk.Smalltalk||(typeof Smalltalk=="undefined"?nil:Smalltalk)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-newName=self._prompt_("Rename package ".__comma(self["@selectedPackage"]));
-$1=newName;
-if(($receiver = $1) == nil || $receiver == undefined){
-$1;
-} else {
-$2=_st(newName)._notEmpty();
-if(smalltalk.assert($2)){
-_st(_st($Smalltalk())._current())._renamePackage_to_(self["@selectedPackage"],newName);
-self._updateCategoriesList();
-};
-};
-return self}, function($ctx1) {$ctx1.fill(self,"renamePackage",{newName:newName},smalltalk.Browser)})},
-messageSends: ["prompt:", ",", "ifNotNil:", "ifTrue:", "renamePackage:to:", "current", "updateCategoriesList", "notEmpty"]}),
-smalltalk.Browser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderBottomPanelOn:",
-fn: function (html){
-var self=this;
-function $SourceArea(){return smalltalk.SourceArea||(typeof SourceArea=="undefined"?nil:SourceArea)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st(html)._div();
-_st($1)._class_("amber_sourceCode");
-$2=_st($1)._with_((function(){
-return smalltalk.withContext(function($ctx2) {
-self["@sourceArea"]=_st($SourceArea())._new();
-self["@sourceArea"];
-_st(self["@sourceArea"])._renderOn_(html);
-_st(self["@sourceArea"])._onKeyDown_((function(e){
-return smalltalk.withContext(function($ctx3) {
-return self._handleSourceAreaKeyDown_(e);
-}, function($ctx3) {$ctx3.fillBlock({e:e},$ctx2)})}));
-return _st(self["@sourceArea"])._onKeyUp_((function(){
-return smalltalk.withContext(function($ctx3) {
-return self._updateStatus();
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"renderBottomPanelOn:",{html:html},smalltalk.Browser)})},
-messageSends: ["class:", "div", "with:", "new", "renderOn:", "onKeyDown:", "handleSourceAreaKeyDown:", "onKeyUp:", "updateStatus"]}),
-smalltalk.Browser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderBoxOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=self;
-_st($1)._renderTopPanelOn_(html);
-_st($1)._renderTabsOn_(html);
-$2=_st($1)._renderBottomPanelOn_(html);
-return self}, function($ctx1) {$ctx1.fill(self,"renderBoxOn:",{html:html},smalltalk.Browser)})},
-messageSends: ["renderTopPanelOn:", "renderTabsOn:", "renderBottomPanelOn:"]}),
-smalltalk.Browser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderButtonsOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$5,$6,$7,$8,$9,$10,$4;
-self["@saveButton"]=_st(html)._button();
-$1=self["@saveButton"];
-_st($1)._with_("Save");
-$2=_st($1)._onClick_((function(){
-return smalltalk.withContext(function($ctx2) {
-return self._compile();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-self["@methodButtons"]=_st(html)._span();
-self["@classButtons"]=_st(html)._span();
-$3=_st(html)._div();
-_st($3)._class_("right");
-$4=_st($3)._with_((function(){
-return smalltalk.withContext(function($ctx2) {
-$5=_st(html)._button();
-_st($5)._with_("DoIt");
-$6=_st($5)._onClick_((function(){
-return smalltalk.withContext(function($ctx3) {
-return _st(self["@sourceArea"])._doIt();
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-$6;
-$7=_st(html)._button();
-_st($7)._with_("PrintIt");
-$8=_st($7)._onClick_((function(){
-return smalltalk.withContext(function($ctx3) {
-return _st(self["@sourceArea"])._printIt();
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-$8;
-$9=_st(html)._button();
-_st($9)._with_("InspectIt");
-$10=_st($9)._onClick_((function(){
-return smalltalk.withContext(function($ctx3) {
-return _st(self["@sourceArea"])._inspectIt();
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-return $10;
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-self._updateSourceAndButtons();
-return self}, function($ctx1) {$ctx1.fill(self,"renderButtonsOn:",{html:html},smalltalk.Browser)})},
-messageSends: ["button", "with:", "onClick:", "compile", "span", "class:", "div", "doIt", "printIt", "inspectIt", "updateSourceAndButtons"]}),
-smalltalk.Browser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderTabsOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@tabsList"]=_st(_st(html)._ul())._class_("amber_tabs amber_browser");
-self._updateTabsList();
-return self}, function($ctx1) {$ctx1.fill(self,"renderTabsOn:",{html:html},smalltalk.Browser)})},
-messageSends: ["class:", "ul", "updateTabsList"]}),
-smalltalk.Browser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderTopPanelOn:",
-fn: function (html){
-var self=this;
-function $ClassesList(){return smalltalk.ClassesList||(typeof ClassesList=="undefined"?nil:ClassesList)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$3,$5,$6,$7,$8,$9,$10,$4,$11,$12,$2;
-$1=_st(html)._div();
-_st($1)._class_("top");
-$2=_st($1)._with_((function(){
-return smalltalk.withContext(function($ctx2) {
-self["@packagesList"]=_st(_st(html)._ul())._class_("amber_column browser packages");
-self["@packagesList"];
-$3=_st(html)._div();
-_st($3)._class_("amber_packagesButtons");
-$4=_st($3)._with_((function(){
-return smalltalk.withContext(function($ctx3) {
-$5=_st(html)._button();
-_st($5)._title_("Commit classes in this package to disk");
-_st($5)._onClick_((function(){
-return smalltalk.withContext(function($ctx4) {
-return self._commitPackage();
-}, function($ctx4) {$ctx4.fillBlock({},$ctx3)})}));
-$6=_st($5)._with_("Commit");
-$6;
-$7=_st(html)._button();
-_st($7)._title_("Rename package");
-_st($7)._onClick_((function(){
-return smalltalk.withContext(function($ctx4) {
-return self._renamePackage();
-}, function($ctx4) {$ctx4.fillBlock({},$ctx3)})}));
-$8=_st($7)._with_("Rename");
-$8;
-$9=_st(html)._button();
-_st($9)._title_("Remove this package from the system");
-_st($9)._onClick_((function(){
-return smalltalk.withContext(function($ctx4) {
-return self._removePackage();
-}, function($ctx4) {$ctx4.fillBlock({},$ctx3)})}));
-$10=_st($9)._with_("Remove");
-return $10;
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-$4;
-self["@classesList"]=_st($ClassesList())._on_(self);
-self["@classesList"];
-_st(self["@classesList"])._renderOn_(html);
-self["@protocolsList"]=_st(_st(html)._ul())._class_("amber_column browser protocols");
-self["@protocolsList"];
-self["@methodsList"]=_st(_st(html)._ul())._class_("amber_column browser methods");
-self["@methodsList"];
-$11=self;
-_st($11)._updateCategoriesList();
-_st($11)._updateClassesList();
-_st($11)._updateProtocolsList();
-$12=_st($11)._updateMethodsList();
-$12;
-return _st(_st(html)._div())._class_("amber_clear");
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"renderTopPanelOn:",{html:html},smalltalk.Browser)})},
-messageSends: ["class:", "div", "with:", "ul", "title:", "button", "onClick:", "commitPackage", "renamePackage", "removePackage", "on:", "renderOn:", "updateCategoriesList", "updateClassesList", "updateProtocolsList", "updateMethodsList"]}),
-smalltalk.Browser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "resetClassesList",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self["@classesList"])._resetNodes();
-return self}, function($ctx1) {$ctx1.fill(self,"resetClassesList",{},smalltalk.Browser)})},
-messageSends: ["resetNodes"]}),
-smalltalk.Browser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "search:",
-fn: function (aString){
-var self=this;
-function $Smalltalk(){return smalltalk.Smalltalk||(typeof Smalltalk=="undefined"?nil:Smalltalk)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=self._cancelChanges();
-if(smalltalk.assert($1)){
-var searchedClass;
-searchedClass=_st(_st($Smalltalk())._current())._at_(aString);
-searchedClass;
-$2=_st(searchedClass)._isClass();
-if(smalltalk.assert($2)){
-_st(self._class())._openOn_(searchedClass);
-} else {
-self._searchReferencesOf_(aString);
-};
-};
-return self}, function($ctx1) {$ctx1.fill(self,"search:",{aString:aString},smalltalk.Browser)})},
-messageSends: ["ifTrue:", "at:", "current", "ifTrue:ifFalse:", "openOn:", "class", "searchReferencesOf:", "isClass", "cancelChanges"]}),
-smalltalk.Browser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "searchClassReferences",
-fn: function (){
-var self=this;
-function $ReferencesBrowser(){return smalltalk.ReferencesBrowser||(typeof ReferencesBrowser=="undefined"?nil:ReferencesBrowser)}
-return smalltalk.withContext(function($ctx1) { 
-_st($ReferencesBrowser())._search_(_st(self["@selectedClass"])._name());
-return self}, function($ctx1) {$ctx1.fill(self,"searchClassReferences",{},smalltalk.Browser)})},
-messageSends: ["search:", "name"]}),
-smalltalk.Browser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "searchReferencesOf:",
-fn: function (aString){
-var self=this;
-function $ReferencesBrowser(){return smalltalk.ReferencesBrowser||(typeof ReferencesBrowser=="undefined"?nil:ReferencesBrowser)}
-return smalltalk.withContext(function($ctx1) { 
-_st($ReferencesBrowser())._search_(aString);
-return self}, function($ctx1) {$ctx1.fill(self,"searchReferencesOf:",{aString:aString},smalltalk.Browser)})},
-messageSends: ["search:"]}),
-smalltalk.Browser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selectCategory:",
-fn: function (aCategory){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3;
-$1=self._cancelChanges();
-if(smalltalk.assert($1)){
-self["@selectedPackage"]=aCategory;
-self["@selectedPackage"];
-self["@selectedMethod"]=nil;
-self["@selectedProtocol"]=self["@selectedMethod"];
-self["@selectedClass"]=self["@selectedProtocol"];
-self["@selectedClass"];
-self._resetClassesList();
-$2=self;
-_st($2)._updateCategoriesList();
-_st($2)._updateClassesList();
-_st($2)._updateProtocolsList();
-_st($2)._updateMethodsList();
-$3=_st($2)._updateSourceAndButtons();
-$3;
-};
-return self}, function($ctx1) {$ctx1.fill(self,"selectCategory:",{aCategory:aCategory},smalltalk.Browser)})},
-messageSends: ["ifTrue:", "resetClassesList", "updateCategoriesList", "updateClassesList", "updateProtocolsList", "updateMethodsList", "updateSourceAndButtons", "cancelChanges"]}),
-smalltalk.Browser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selectClass:",
-fn: function (aClass){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3;
-$1=self._cancelChanges();
-if(smalltalk.assert($1)){
-self["@selectedClass"]=aClass;
-self["@selectedClass"];
-self["@selectedMethod"]=nil;
-self["@selectedProtocol"]=self["@selectedMethod"];
-self["@selectedProtocol"];
-$2=self;
-_st($2)._updateClassesList();
-_st($2)._updateProtocolsList();
-_st($2)._updateMethodsList();
-$3=_st($2)._updateSourceAndButtons();
-$3;
-};
-return self}, function($ctx1) {$ctx1.fill(self,"selectClass:",{aClass:aClass},smalltalk.Browser)})},
-messageSends: ["ifTrue:", "updateClassesList", "updateProtocolsList", "updateMethodsList", "updateSourceAndButtons", "cancelChanges"]}),
-smalltalk.Browser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selectMethod:",
-fn: function (aMethod){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3;
-$1=self._cancelChanges();
-if(smalltalk.assert($1)){
-self["@selectedMethod"]=aMethod;
-self["@selectedMethod"];
-$2=self;
-_st($2)._updateProtocolsList();
-_st($2)._updateMethodsList();
-$3=_st($2)._updateSourceAndButtons();
-$3;
-};
-return self}, function($ctx1) {$ctx1.fill(self,"selectMethod:",{aMethod:aMethod},smalltalk.Browser)})},
-messageSends: ["ifTrue:", "updateProtocolsList", "updateMethodsList", "updateSourceAndButtons", "cancelChanges"]}),
-smalltalk.Browser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selectProtocol:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3;
-$1=self._cancelChanges();
-if(smalltalk.assert($1)){
-self["@selectedProtocol"]=aString;
-self["@selectedProtocol"];
-self["@selectedMethod"]=nil;
-self["@selectedMethod"];
-$2=self;
-_st($2)._updateProtocolsList();
-_st($2)._updateMethodsList();
-$3=_st($2)._updateSourceAndButtons();
-$3;
-};
-return self}, function($ctx1) {$ctx1.fill(self,"selectProtocol:",{aString:aString},smalltalk.Browser)})},
-messageSends: ["ifTrue:", "updateProtocolsList", "updateMethodsList", "updateSourceAndButtons", "cancelChanges"]}),
-smalltalk.Browser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selectTab:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._cancelChanges();
-if(smalltalk.assert($1)){
-self["@selectedTab"]=aString;
-self["@selectedTab"];
-self._selectProtocol_(nil);
-self._updateTabsList();
-};
-return self}, function($ctx1) {$ctx1.fill(self,"selectTab:",{aString:aString},smalltalk.Browser)})},
-messageSends: ["ifTrue:", "selectProtocol:", "updateTabsList", "cancelChanges"]}),
-smalltalk.Browser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selectedClass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@selectedClass"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"selectedClass",{},smalltalk.Browser)})},
-messageSends: []}),
-smalltalk.Browser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selectedPackage",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@selectedPackage"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"selectedPackage",{},smalltalk.Browser)})},
-messageSends: []}),
-smalltalk.Browser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "setMethodProtocol:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4;
-$1=self._cancelChanges();
-if(smalltalk.assert($1)){
-$2=_st(self._protocols())._includes_(aString);
-if(smalltalk.assert($2)){
-_st(self["@selectedMethod"])._category_(aString);
-self["@selectedProtocol"]=aString;
-self["@selectedProtocol"];
-self["@selectedMethod"]=self["@selectedMethod"];
-self["@selectedMethod"];
-$3=self;
-_st($3)._updateProtocolsList();
-_st($3)._updateMethodsList();
-$4=_st($3)._updateSourceAndButtons();
-$4;
-} else {
-self._addNewProtocol();
-};
-};
-return self}, function($ctx1) {$ctx1.fill(self,"setMethodProtocol:",{aString:aString},smalltalk.Browser)})},
-messageSends: ["ifTrue:", "ifFalse:ifTrue:", "addNewProtocol", "category:", "updateProtocolsList", "updateMethodsList", "updateSourceAndButtons", "includes:", "protocols", "cancelChanges"]}),
-smalltalk.Browser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "showClassButtons",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(_st(self["@classButtons"])._asJQuery())._show();
-return self}, function($ctx1) {$ctx1.fill(self,"showClassButtons",{},smalltalk.Browser)})},
-messageSends: ["show", "asJQuery"]}),
-smalltalk.Browser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "showMethodButtons",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(_st(self["@methodButtons"])._asJQuery())._show();
-return self}, function($ctx1) {$ctx1.fill(self,"showMethodButtons",{},smalltalk.Browser)})},
-messageSends: ["show", "asJQuery"]}),
-smalltalk.Browser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "source",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$3,$2,$5,$4;
-$1=_st(self["@selectedTab"]).__eq("comment");
-if(! smalltalk.assert($1)){
-$3=_st(_st(self["@selectedProtocol"])._notNil())._or_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(self["@selectedMethod"])._notNil();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-if(smalltalk.assert($3)){
-$2=self._methodSource();
-} else {
-$2=self._declarationSource();
-};
-return $2;
-};
-$5=self["@selectedClass"];
-if(($receiver = $5) == nil || $receiver == undefined){
-$4="";
-} else {
-$4=self._classCommentSource();
-};
-return $4;
-}, function($ctx1) {$ctx1.fill(self,"source",{},smalltalk.Browser)})},
-messageSends: ["ifFalse:", "ifFalse:ifTrue:", "declarationSource", "methodSource", "or:", "notNil", "=", "ifNil:ifNotNil:", "classCommentSource"]}),
-smalltalk.Browser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "updateCategoriesList",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4;
-_st(self["@packagesList"])._contents_((function(html){
-return smalltalk.withContext(function($ctx2) {
-return _st(self._packages())._do_((function(each){
-var li,label;
-return smalltalk.withContext(function($ctx3) {
-$1=_st(each)._isEmpty();
-if(smalltalk.assert($1)){
-label="Unclassified";
-label;
-} else {
-label=each;
-label;
-};
-li=_st(html)._li();
-li;
-$2=_st(self["@selectedPackage"]).__eq(each);
-if(smalltalk.assert($2)){
-_st(li)._class_("selected");
-};
-$3=li;
-_st($3)._with_(label);
-$4=_st($3)._onClick_((function(){
-return smalltalk.withContext(function($ctx4) {
-return self._selectCategory_(each);
-}, function($ctx4) {$ctx4.fillBlock({},$ctx3)})}));
-return $4;
-}, function($ctx3) {$ctx3.fillBlock({each:each,li:li,label:label},$ctx2)})}));
-}, function($ctx2) {$ctx2.fillBlock({html:html},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"updateCategoriesList",{},smalltalk.Browser)})},
-messageSends: ["contents:", "do:", "ifTrue:ifFalse:", "isEmpty", "li", "ifTrue:", "class:", "=", "with:", "onClick:", "selectCategory:", "packages"]}),
-smalltalk.Browser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "updateClassesList",
-fn: function (){
-var self=this;
-function $TabManager(){return smalltalk.TabManager||(typeof TabManager=="undefined"?nil:TabManager)}
-return smalltalk.withContext(function($ctx1) { 
-_st(_st($TabManager())._current())._update();
-_st(self["@classesList"])._updateNodes();
-return self}, function($ctx1) {$ctx1.fill(self,"updateClassesList",{},smalltalk.Browser)})},
-messageSends: ["update", "current", "updateNodes"]}),
-smalltalk.Browser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "updateMethodsList",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3;
-_st(self["@methodsList"])._contents_((function(html){
-return smalltalk.withContext(function($ctx2) {
-return _st(self._methods())._do_((function(each){
-var li;
-return smalltalk.withContext(function($ctx3) {
-li=_st(html)._li();
-li;
-$1=_st(self["@selectedMethod"]).__eq(each);
-if(smalltalk.assert($1)){
-_st(li)._class_("selected");
-};
-$2=li;
-_st($2)._with_(_st(each)._selector());
-$3=_st($2)._onClick_((function(){
-return smalltalk.withContext(function($ctx4) {
-return self._selectMethod_(each);
-}, function($ctx4) {$ctx4.fillBlock({},$ctx3)})}));
-return $3;
-}, function($ctx3) {$ctx3.fillBlock({each:each,li:li},$ctx2)})}));
-}, function($ctx2) {$ctx2.fillBlock({html:html},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"updateMethodsList",{},smalltalk.Browser)})},
-messageSends: ["contents:", "do:", "li", "ifTrue:", "class:", "=", "with:", "selector", "onClick:", "selectMethod:", "methods"]}),
-smalltalk.Browser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "updateProtocolsList",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3;
-_st(self["@protocolsList"])._contents_((function(html){
-return smalltalk.withContext(function($ctx2) {
-return _st(self._protocols())._do_((function(each){
-var li;
-return smalltalk.withContext(function($ctx3) {
-li=_st(html)._li();
-li;
-$1=_st(self["@selectedProtocol"]).__eq(each);
-if(smalltalk.assert($1)){
-_st(li)._class_("selected");
-};
-$2=li;
-_st($2)._with_(each);
-$3=_st($2)._onClick_((function(){
-return smalltalk.withContext(function($ctx4) {
-return self._selectProtocol_(each);
-}, function($ctx4) {$ctx4.fillBlock({},$ctx3)})}));
-return $3;
-}, function($ctx3) {$ctx3.fillBlock({each:each,li:li},$ctx2)})}));
-}, function($ctx2) {$ctx2.fillBlock({html:html},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"updateProtocolsList",{},smalltalk.Browser)})},
-messageSends: ["contents:", "do:", "li", "ifTrue:", "class:", "=", "with:", "onClick:", "selectProtocol:", "protocols"]}),
-smalltalk.Browser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "updateSourceAndButtons",
-fn: function (){
-var self=this;
-var currentProtocol;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4,$5,$6,$7,$8,$9,$10,$11,$12,$13,$15,$16,$17,$18,$19,$20,$14,$21,$22,$24,$25,$26,$27,$23,$28,$29;
-self._disableSaveButton();
-_st(self["@classButtons"])._contents_((function(html){
-return smalltalk.withContext(function($ctx2) {
-$1=_st(html)._button();
-_st($1)._title_("Create a new class");
-_st($1)._onClick_((function(){
-return smalltalk.withContext(function($ctx3) {
-return self._addNewClass();
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-$2=_st($1)._with_("New class");
-$2;
-$3=_st(html)._button();
-_st($3)._with_("Rename class");
-$4=_st($3)._onClick_((function(){
-return smalltalk.withContext(function($ctx3) {
-return self._renameClass();
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-$4;
-$5=_st(html)._button();
-_st($5)._with_("Copy class");
-$6=_st($5)._onClick_((function(){
-return smalltalk.withContext(function($ctx3) {
-return self._copyClass();
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-$6;
-$7=_st(html)._button();
-_st($7)._with_("Remove class");
-$8=_st($7)._onClick_((function(){
-return smalltalk.withContext(function($ctx3) {
-return self._removeClass();
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-$8;
-$9=_st(html)._button();
-_st($9)._with_("References");
-$10=_st($9)._onClick_((function(){
-return smalltalk.withContext(function($ctx3) {
-return self._searchClassReferences();
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-return $10;
-}, function($ctx2) {$ctx2.fillBlock({html:html},$ctx1)})}));
-_st(self["@methodButtons"])._contents_((function(html){
-var protocolSelect,referencesSelect;
-return smalltalk.withContext(function($ctx2) {
-$11=_st(html)._button();
-_st($11)._with_("Remove method");
-$12=_st($11)._onClick_((function(){
-return smalltalk.withContext(function($ctx3) {
-return self._removeMethod();
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-$12;
-protocolSelect=_st(html)._select();
-protocolSelect;
-$13=protocolSelect;
-_st($13)._onChange_((function(){
-return smalltalk.withContext(function($ctx3) {
-return self._setMethodProtocol_(_st(_st(protocolSelect)._asJQuery())._val());
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-$14=_st($13)._with_((function(){
-return smalltalk.withContext(function($ctx3) {
-$15=_st(html)._option();
-_st($15)._with_("Method protocol");
-$16=_st($15)._at_put_("disabled","disabled");
-$16;
-$17=_st(html)._option();
-_st($17)._class_("important");
-$18=_st($17)._with_("New...");
-$18;
-currentProtocol=self["@selectedProtocol"];
-currentProtocol;
-$19=_st(_st(currentProtocol)._isNil())._and_((function(){
-return smalltalk.withContext(function($ctx4) {
-return _st(self["@selectedMethod"])._notNil();
-}, function($ctx4) {$ctx4.fillBlock({},$ctx3)})}));
-if(smalltalk.assert($19)){
-currentProtocol=_st(self["@selectedMethod"])._category();
-currentProtocol;
-};
-return _st(self._protocols())._do_((function(each){
-var option;
-return smalltalk.withContext(function($ctx4) {
-option=_st(_st(html)._option())._with_(each);
-option;
-$20=_st(currentProtocol).__eq(each);
-if(smalltalk.assert($20)){
-return _st(option)._at_put_("selected","selected");
-};
-}, function($ctx4) {$ctx4.fillBlock({each:each,option:option},$ctx3)})}));
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-$14;
-$21=_st(self["@selectedMethod"])._isNil();
-if(! smalltalk.assert($21)){
-referencesSelect=_st(html)._select();
-referencesSelect;
-$22=referencesSelect;
-_st($22)._onChange_((function(){
-return smalltalk.withContext(function($ctx3) {
-return self._searchReferencesOf_(_st(_st(referencesSelect)._asJQuery())._val());
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-$23=_st($22)._with_((function(){
-var option;
-return smalltalk.withContext(function($ctx3) {
-$24=_st(html)._option();
-_st($24)._with_("References");
-_st($24)._at_put_("disabled","disabled");
-$25=_st($24)._at_put_("selected","selected");
-$25;
-$26=_st(html)._option();
-_st($26)._class_("important");
-$27=_st($26)._with_(_st(self["@selectedMethod"])._selector());
-$27;
-return _st(_st(_st(self["@selectedMethod"])._messageSends())._sorted())._do_((function(each){
-return smalltalk.withContext(function($ctx4) {
-return _st(_st(html)._option())._with_(each);
-}, function($ctx4) {$ctx4.fillBlock({each:each},$ctx3)})}));
-}, function($ctx3) {$ctx3.fillBlock({option:option},$ctx2)})}));
-return $23;
-};
-}, function($ctx2) {$ctx2.fillBlock({html:html,protocolSelect:protocolSelect,referencesSelect:referencesSelect},$ctx1)})}));
-$28=_st(self["@selectedMethod"])._isNil();
-if(smalltalk.assert($28)){
-self._hideMethodButtons();
-$29=_st(_st(self["@selectedClass"])._isNil())._or_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(self["@selectedProtocol"])._notNil();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-if(smalltalk.assert($29)){
-self._hideClassButtons();
-} else {
-self._showClassButtons();
-};
-} else {
-self._hideClassButtons();
-self._showMethodButtons();
-};
-_st(self["@sourceArea"])._val_(self._source());
-return self}, function($ctx1) {$ctx1.fill(self,"updateSourceAndButtons",{currentProtocol:currentProtocol},smalltalk.Browser)})},
-messageSends: ["disableSaveButton", "contents:", "title:", "button", "onClick:", "addNewClass", "with:", "renameClass", "copyClass", "removeClass", "searchClassReferences", "removeMethod", "select", "onChange:", "setMethodProtocol:", "val", "asJQuery", "option", "at:put:", "class:", "ifTrue:", "category", "and:", "notNil", "isNil", "do:", "=", "protocols", "ifFalse:", "searchReferencesOf:", "selector", "sorted", "messageSends", "ifTrue:ifFalse:", "hideMethodButtons", "hideClassButtons", "showClassButtons", "or:", "showMethodButtons", "val:", "source"]}),
-smalltalk.Browser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "updateStatus",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3;
-$1=_st(_st(self["@sourceArea"])._val()).__eq(self._source());
-if(smalltalk.assert($1)){
-$2=self["@saveButton"];
-if(($receiver = $2) == nil || $receiver == undefined){
-$2;
-} else {
-_st(self["@saveButton"])._at_put_("disabled",true);
-};
-self["@unsavedChanges"]=false;
-self["@unsavedChanges"];
-} else {
-$3=self["@saveButton"];
-if(($receiver = $3) == nil || $receiver == undefined){
-$3;
-} else {
-_st(self["@saveButton"])._removeAt_("disabled");
-};
-self["@unsavedChanges"]=true;
-self["@unsavedChanges"];
-};
-return self}, function($ctx1) {$ctx1.fill(self,"updateStatus",{},smalltalk.Browser)})},
-messageSends: ["ifTrue:ifFalse:", "ifNotNil:", "at:put:", "removeAt:", "=", "source", "val"]}),
-smalltalk.Browser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "updateTabsList",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4,$5,$6,$7,$8,$9,$10,$11,$12,$13,$14,$15;
-_st(self["@tabsList"])._contents_((function(html){
-var li;
-return smalltalk.withContext(function($ctx2) {
-li=_st(html)._li();
-li;
-$1=_st(self["@selectedTab"]).__eq("instance");
-if(smalltalk.assert($1)){
-_st(li)._class_("selected");
-};
-$2=li;
-_st($2)._with_((function(){
-return smalltalk.withContext(function($ctx3) {
-_st(_st(html)._span())._class_("ltab");
-$3=_st(html)._span();
-_st($3)._class_("mtab");
-$4=_st($3)._with_("Instance");
-$4;
-return _st(_st(html)._span())._class_("rtab");
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-$5=_st($2)._onClick_((function(){
-return smalltalk.withContext(function($ctx3) {
-return self._selectTab_("instance");
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-$5;
-li=_st(html)._li();
-li;
-$6=_st(self["@selectedTab"]).__eq("class");
-if(smalltalk.assert($6)){
-_st(li)._class_("selected");
-};
-$7=li;
-_st($7)._with_((function(){
-return smalltalk.withContext(function($ctx3) {
-_st(_st(html)._span())._class_("ltab");
-$8=_st(html)._span();
-_st($8)._class_("mtab");
-$9=_st($8)._with_("Class");
-$9;
-return _st(_st(html)._span())._class_("rtab");
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-$10=_st($7)._onClick_((function(){
-return smalltalk.withContext(function($ctx3) {
-return self._selectTab_("class");
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-$10;
-li=_st(html)._li();
-li;
-$11=_st(self["@selectedTab"]).__eq("comment");
-if(smalltalk.assert($11)){
-_st(li)._class_("selected");
-};
-$12=li;
-_st($12)._with_((function(){
-return smalltalk.withContext(function($ctx3) {
-_st(_st(html)._span())._class_("ltab");
-$13=_st(html)._span();
-_st($13)._class_("mtab");
-$14=_st($13)._with_("Comment");
-$14;
-return _st(_st(html)._span())._class_("rtab");
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-$15=_st($12)._onClick_((function(){
-return smalltalk.withContext(function($ctx3) {
-return self._selectTab_("comment");
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-return $15;
-}, function($ctx2) {$ctx2.fillBlock({html:html,li:li},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"updateTabsList",{},smalltalk.Browser)})},
-messageSends: ["contents:", "li", "ifTrue:", "class:", "=", "with:", "span", "onClick:", "selectTab:"]}),
-smalltalk.Browser);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "open",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._new())._open();
-return self}, function($ctx1) {$ctx1.fill(self,"open",{},smalltalk.Browser.klass)})},
-messageSends: ["open", "new"]}),
-smalltalk.Browser.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "openOn:",
-fn: function (aClass){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=self._new();
-_st($2)._open();
-_st($2)._selectCategory_(_st(aClass)._category());
-$3=_st($2)._selectClass_(aClass);
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"openOn:",{aClass:aClass},smalltalk.Browser.klass)})},
-messageSends: ["open", "new", "selectCategory:", "category", "selectClass:"]}),
-smalltalk.Browser.klass);
-
-
-smalltalk.addClass('Debugger', smalltalk.TabWidget, ['error', 'selectedContext', 'sourceArea', 'ul', 'ul2', 'inspector', 'saveButton', 'unsavedChanges', 'selectedVariable', 'selectedVariableName', 'inspectButton'], 'IDE');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "allVariables",
-fn: function (){
-var self=this;
-var all;
-function $Dictionary(){return smalltalk.Dictionary||(typeof Dictionary=="undefined"?nil:Dictionary)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-all=_st($Dictionary())._new();
-_st(_st(_st(self._receiver())._class())._allInstanceVariableNames())._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(all)._at_put_(each,_st(self._receiver())._instVarAt_(each));
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-_st(_st(self["@selectedContext"])._locals())._keysAndValuesDo_((function(key,value){
-return smalltalk.withContext(function($ctx2) {
-return _st(all)._at_put_(key,value);
-}, function($ctx2) {$ctx2.fillBlock({key:key,value:value},$ctx1)})}));
-$1=all;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"allVariables",{all:all},smalltalk.Debugger)})},
-messageSends: ["new", "do:", "at:put:", "instVarAt:", "receiver", "allInstanceVariableNames", "class", "keysAndValuesDo:", "locals"]}),
-smalltalk.Debugger);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "canBeClosed",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"canBeClosed",{},smalltalk.Debugger)})},
-messageSends: []}),
-smalltalk.Debugger);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "error",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@error"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"error",{},smalltalk.Debugger)})},
-messageSends: []}),
-smalltalk.Debugger);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "error:",
-fn: function (anError){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@error"]=anError;
-return self}, function($ctx1) {$ctx1.fill(self,"error:",{anError:anError},smalltalk.Debugger)})},
-messageSends: []}),
-smalltalk.Debugger);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "initialize",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-smalltalk.Debugger.superclass.fn.prototype._initialize.apply(_st(self), []);
-_st(self["@unsavedChanges"]).__eq(false);
-return self}, function($ctx1) {$ctx1.fill(self,"initialize",{},smalltalk.Debugger)})},
-messageSends: ["initialize", "="]}),
-smalltalk.Debugger);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "inspectSelectedVariable",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self["@selectedVariable"])._inspect();
-return self}, function($ctx1) {$ctx1.fill(self,"inspectSelectedVariable",{},smalltalk.Debugger)})},
-messageSends: ["inspect"]}),
-smalltalk.Debugger);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "label",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "[Debugger]";
-}, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.Debugger)})},
-messageSends: []}),
-smalltalk.Debugger);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "method",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self["@selectedContext"])._method();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"method",{},smalltalk.Debugger)})},
-messageSends: ["method"]}),
-smalltalk.Debugger);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "proceed",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._close();
-_st(_st(self["@selectedContext"])._receiver())._perform_withArguments_(_st(self["@selectedContext"])._selector(),_st(self["@selectedContext"])._temps());
-return self}, function($ctx1) {$ctx1.fill(self,"proceed",{},smalltalk.Debugger)})},
-messageSends: ["close", "perform:withArguments:", "selector", "temps", "receiver"]}),
-smalltalk.Debugger);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "receiver",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self["@selectedContext"])._receiver();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"receiver",{},smalltalk.Debugger)})},
-messageSends: ["receiver"]}),
-smalltalk.Debugger);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderBottomPanelOn:",
-fn: function (html){
-var self=this;
-function $SourceArea(){return smalltalk.SourceArea||(typeof SourceArea=="undefined"?nil:SourceArea)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st(html)._div();
-_st($1)._class_("amber_sourceCode debugger");
-$2=_st($1)._with_((function(){
-return smalltalk.withContext(function($ctx2) {
-self["@sourceArea"]=_st($SourceArea())._new();
-self["@sourceArea"];
-return _st(self["@sourceArea"])._renderOn_(html);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-self["@ul2"]=_st(_st(html)._ul())._class_("amber_column debugger variables");
-self["@inspector"]=_st(_st(html)._div())._class_("amber_column debugger inspector");
-_st(self["@sourceArea"])._onKeyUp_((function(){
-return smalltalk.withContext(function($ctx2) {
-return self._updateStatus();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"renderBottomPanelOn:",{html:html},smalltalk.Debugger)})},
-messageSends: ["class:", "div", "with:", "new", "renderOn:", "ul", "onKeyUp:", "updateStatus"]}),
-smalltalk.Debugger);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderBoxOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=self;
-_st($1)._renderTopPanelOn_(html);
-$2=_st($1)._renderBottomPanelOn_(html);
-return self}, function($ctx1) {$ctx1.fill(self,"renderBoxOn:",{html:html},smalltalk.Debugger)})},
-messageSends: ["renderTopPanelOn:", "renderBottomPanelOn:"]}),
-smalltalk.Debugger);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderButtonsOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4,$5,$6,$7,$8,$9,$10,$11,$12,$13,$14,$15,$16;
-$1=_st(html)._button();
-_st($1)._with_("Save");
-$2=_st($1)._onClick_((function(){
-return smalltalk.withContext(function($ctx2) {
-return self._save();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-self["@saveButton"]=$2;
-$3=_st(html)._button();
-_st($3)._with_("DoIt");
-$4=_st($3)._onClick_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(self["@sourceArea"])._doIt();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-$5=_st(html)._button();
-_st($5)._with_("PrintIt");
-$6=_st($5)._onClick_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(self["@sourceArea"])._printIt();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-$7=_st(html)._button();
-_st($7)._with_("InspectIt");
-$8=_st($7)._onClick_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(self["@sourceArea"])._inspectIt();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-$9=_st(html)._button();
-_st($9)._with_("Proceed");
-$10=_st($9)._onClick_((function(){
-return smalltalk.withContext(function($ctx2) {
-return self._proceed();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-$11=_st(html)._button();
-_st($11)._with_("Abandon");
-$12=_st($11)._onClick_((function(){
-return smalltalk.withContext(function($ctx2) {
-return self._close();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-$13=_st(html)._button();
-_st($13)._class_("amber_button debugger inspect");
-_st($13)._with_("Inspect");
-$14=_st($13)._onClick_((function(){
-return smalltalk.withContext(function($ctx2) {
-return self._inspectSelectedVariable();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-self["@inspectButton"]=$14;
-$15=self;
-_st($15)._updateSourceArea();
-_st($15)._updateStatus();
-_st($15)._updateVariablesList();
-$16=_st($15)._updateInspector();
-return self}, function($ctx1) {$ctx1.fill(self,"renderButtonsOn:",{html:html},smalltalk.Debugger)})},
-messageSends: ["with:", "button", "onClick:", "save", "doIt", "printIt", "inspectIt", "proceed", "close", "class:", "inspectSelectedVariable", "updateSourceArea", "updateStatus", "updateVariablesList", "updateInspector"]}),
-smalltalk.Debugger);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderContext:on:",
-fn: function (aContext,html){
-var self=this;
-var li;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4;
-li=_st(html)._li();
-$1=_st(self["@selectedContext"]).__eq(aContext);
-if(smalltalk.assert($1)){
-_st(li)._class_("selected");
-};
-$2=li;
-_st($2)._with_(_st(aContext)._asString());
-$3=_st($2)._onClick_((function(){
-return smalltalk.withContext(function($ctx2) {
-return self._selectContext_(aContext);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-$4=_st(aContext)._outerContext();
-if(($receiver = $4) == nil || $receiver == undefined){
-$4;
-} else {
-self._renderContext_on_(_st(aContext)._outerContext(),html);
-};
-return self}, function($ctx1) {$ctx1.fill(self,"renderContext:on:",{aContext:aContext,html:html,li:li},smalltalk.Debugger)})},
-messageSends: ["li", "ifTrue:", "class:", "=", "with:", "asString", "onClick:", "selectContext:", "ifNotNil:", "renderContext:on:", "outerContext"]}),
-smalltalk.Debugger);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderTopPanelOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$3,$4,$5,$6,$2;
-self["@selectedContext"]=_st(self._error())._context();
-$1=_st(html)._div();
-_st($1)._class_("top");
-$2=_st($1)._with_((function(){
-return smalltalk.withContext(function($ctx2) {
-$3=_st(html)._div();
-_st($3)._class_("label");
-$4=_st($3)._with_(_st(self._error())._messageText());
-$4;
-$5=_st(html)._ul();
-_st($5)._class_("amber_column debugger contexts");
-$6=_st($5)._with_((function(){
-return smalltalk.withContext(function($ctx3) {
-return self._renderContext_on_(_st(self._error())._context(),html);
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-self["@ul"]=$6;
-return self["@ul"];
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"renderTopPanelOn:",{html:html},smalltalk.Debugger)})},
-messageSends: ["context", "error", "class:", "div", "with:", "messageText", "ul", "renderContext:on:"]}),
-smalltalk.Debugger);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "save",
-fn: function (){
-var self=this;
-var protocol;
-return smalltalk.withContext(function($ctx1) { 
-protocol=_st(_st(_st(_st(_st(self["@selectedContext"])._receiver())._class())._methodDictionary())._at_(_st(self["@selectedContext"])._selector()))._category();
-_st(_st(_st(self["@selectedContext"])._receiver())._class())._compile_category_(_st(self["@sourceArea"])._val(),protocol);
-self._updateStatus();
-return self}, function($ctx1) {$ctx1.fill(self,"save",{protocol:protocol},smalltalk.Debugger)})},
-messageSends: ["category", "at:", "selector", "methodDictionary", "class", "receiver", "compile:category:", "val", "updateStatus"]}),
-smalltalk.Debugger);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selectContext:",
-fn: function (aContext){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-self["@selectedContext"]=aContext;
-self["@selectedVariable"]=nil;
-self["@selectedVariableName"]=nil;
-$1=self;
-_st($1)._updateContextsList();
-_st($1)._updateSourceArea();
-_st($1)._updateInspector();
-_st($1)._updateVariablesList();
-$2=_st($1)._updateStatus();
-return self}, function($ctx1) {$ctx1.fill(self,"selectContext:",{aContext:aContext},smalltalk.Debugger)})},
-messageSends: ["updateContextsList", "updateSourceArea", "updateInspector", "updateVariablesList", "updateStatus"]}),
-smalltalk.Debugger);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selectVariable:named:",
-fn: function (anObject,aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@selectedVariable"]=anObject;
-self["@selectedVariableName"]=aString;
-_st(self["@inspector"])._contents_((function(html){
-return smalltalk.withContext(function($ctx2) {
-return _st(html)._with_(_st(anObject)._printString());
-}, function($ctx2) {$ctx2.fillBlock({html:html},$ctx1)})}));
-self._updateVariablesList();
-return self}, function($ctx1) {$ctx1.fill(self,"selectVariable:named:",{anObject:anObject,aString:aString},smalltalk.Debugger)})},
-messageSends: ["contents:", "with:", "printString", "updateVariablesList"]}),
-smalltalk.Debugger);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "source",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self._method();
-if(($receiver = $2) == nil || $receiver == undefined){
-$1="Method doesn't exist!";
-} else {
-$1=_st(self._method())._source();
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"source",{},smalltalk.Debugger)})},
-messageSends: ["ifNil:ifNotNil:", "source", "method"]}),
-smalltalk.Debugger);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "updateContextsList",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self["@ul"])._contents_((function(html){
-return smalltalk.withContext(function($ctx2) {
-return self._renderContext_on_(_st(self._error())._context(),html);
-}, function($ctx2) {$ctx2.fillBlock({html:html},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"updateContextsList",{},smalltalk.Debugger)})},
-messageSends: ["contents:", "renderContext:on:", "context", "error"]}),
-smalltalk.Debugger);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "updateInspector",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self["@inspector"])._contents_((function(html){
-return smalltalk.withContext(function($ctx2) {
-}, function($ctx2) {$ctx2.fillBlock({html:html},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"updateInspector",{},smalltalk.Debugger)})},
-messageSends: ["contents:"]}),
-smalltalk.Debugger);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "updateSourceArea",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self["@sourceArea"])._val_(self._source());
-return self}, function($ctx1) {$ctx1.fill(self,"updateSourceArea",{},smalltalk.Debugger)})},
-messageSends: ["val:", "source"]}),
-smalltalk.Debugger);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "updateStatus",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3;
-$1=_st(_st(self["@sourceArea"])._val()).__eq(self._source());
-if(smalltalk.assert($1)){
-$2=self["@saveButton"];
-if(($receiver = $2) == nil || $receiver == undefined){
-$2;
-} else {
-_st(self["@saveButton"])._at_put_("disabled",true);
-};
-self["@unsavedChanges"]=false;
-self["@unsavedChanges"];
-} else {
-$3=self["@saveButton"];
-if(($receiver = $3) == nil || $receiver == undefined){
-$3;
-} else {
-_st(self["@saveButton"])._removeAt_("disabled");
-};
-self["@unsavedChanges"]=true;
-self["@unsavedChanges"];
-};
-return self}, function($ctx1) {$ctx1.fill(self,"updateStatus",{},smalltalk.Debugger)})},
-messageSends: ["ifTrue:ifFalse:", "ifNotNil:", "at:put:", "removeAt:", "=", "source", "val"]}),
-smalltalk.Debugger);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "updateVariablesList",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4,$5,$6,$7;
-_st(self["@ul2"])._contents_((function(html){
-var li;
-return smalltalk.withContext(function($ctx2) {
-$1=_st(html)._li();
-_st($1)._with_("self");
-$2=_st($1)._onClick_((function(){
-return smalltalk.withContext(function($ctx3) {
-return self._selectVariable_named_(self._receiver(),"self");
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-li=$2;
-li;
-$3=_st(self["@selectedVariableName"]).__eq("self");
-if(smalltalk.assert($3)){
-_st(li)._class_("selected");
-};
-return _st(self._allVariables())._keysAndValuesDo_((function(key,value){
-return smalltalk.withContext(function($ctx3) {
-$4=_st(html)._li();
-_st($4)._with_(key);
-$5=_st($4)._onClick_((function(){
-return smalltalk.withContext(function($ctx4) {
-return self._selectVariable_named_(value,key);
-}, function($ctx4) {$ctx4.fillBlock({},$ctx3)})}));
-li=$5;
-li;
-$6=_st(self["@selectedVariableName"]).__eq(key);
-if(smalltalk.assert($6)){
-return _st(li)._class_("selected");
-};
-}, function($ctx3) {$ctx3.fillBlock({key:key,value:value},$ctx2)})}));
-}, function($ctx2) {$ctx2.fillBlock({html:html,li:li},$ctx1)})}));
-$7=self["@selectedVariable"];
-if(($receiver = $7) == nil || $receiver == undefined){
-_st(self["@inspectButton"])._at_put_("disabled",true);
-} else {
-_st(self["@inspectButton"])._removeAt_("disabled");
-};
-return self}, function($ctx1) {$ctx1.fill(self,"updateVariablesList",{},smalltalk.Debugger)})},
-messageSends: ["contents:", "with:", "li", "onClick:", "selectVariable:named:", "receiver", "ifTrue:", "class:", "=", "keysAndValuesDo:", "allVariables", "ifNil:ifNotNil:", "at:put:", "removeAt:"]}),
-smalltalk.Debugger);
-
-
-
-smalltalk.addClass('IDETranscript', smalltalk.TabWidget, ['textarea'], 'IDE');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "clear",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(_st(self["@textarea"])._asJQuery())._val_("");
-return self}, function($ctx1) {$ctx1.fill(self,"clear",{},smalltalk.IDETranscript)})},
-messageSends: ["val:", "asJQuery"]}),
-smalltalk.IDETranscript);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "cr",
-fn: function (){
-var self=this;
-function $String(){return smalltalk.String||(typeof String=="undefined"?nil:String)}
-return smalltalk.withContext(function($ctx1) { 
-_st(_st(self["@textarea"])._asJQuery())._val_(_st(_st(_st(self["@textarea"])._asJQuery())._val()).__comma(_st($String())._cr()));
-return self}, function($ctx1) {$ctx1.fill(self,"cr",{},smalltalk.IDETranscript)})},
-messageSends: ["val:", ",", "cr", "val", "asJQuery"]}),
-smalltalk.IDETranscript);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "label",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Transcript";
-}, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.IDETranscript)})},
-messageSends: []}),
-smalltalk.IDETranscript);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "open",
-fn: function (){
-var self=this;
-function $TabManager(){return smalltalk.TabManager||(typeof TabManager=="undefined"?nil:TabManager)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st($TabManager())._current();
-_st($1)._open();
-$2=_st($1)._selectTab_(self);
-return self}, function($ctx1) {$ctx1.fill(self,"open",{},smalltalk.IDETranscript)})},
-messageSends: ["open", "current", "selectTab:"]}),
-smalltalk.IDETranscript);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderBoxOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-self["@textarea"]=_st(html)._textarea();
-$1=self["@textarea"];
-_st($1)._class_("amber_transcript");
-$2=_st($1)._at_put_("spellcheck","false");
-return self}, function($ctx1) {$ctx1.fill(self,"renderBoxOn:",{html:html},smalltalk.IDETranscript)})},
-messageSends: ["textarea", "class:", "at:put:"]}),
-smalltalk.IDETranscript);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderButtonsOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st(html)._button();
-_st($1)._with_("Clear transcript");
-$2=_st($1)._onClick_((function(){
-return smalltalk.withContext(function($ctx2) {
-return self._clear();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"renderButtonsOn:",{html:html},smalltalk.IDETranscript)})},
-messageSends: ["with:", "button", "onClick:", "clear"]}),
-smalltalk.IDETranscript);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "show:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@textarea"];
-if(($receiver = $1) == nil || $receiver == undefined){
-self._open();
-} else {
-$1;
-};
-_st(_st(self["@textarea"])._asJQuery())._val_(_st(_st(_st(self["@textarea"])._asJQuery())._val()).__comma(_st(anObject)._asString()));
-return self}, function($ctx1) {$ctx1.fill(self,"show:",{anObject:anObject},smalltalk.IDETranscript)})},
-messageSends: ["ifNil:", "open", "val:", ",", "asString", "val", "asJQuery"]}),
-smalltalk.IDETranscript);
-
-
-smalltalk.IDETranscript.klass.iVarNames = ['current'];
-smalltalk.addMethod(
-smalltalk.method({
-selector: "current",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@current"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@current"]=smalltalk.IDETranscript.klass.superclass.fn.prototype._new.apply(_st(self), []);
-$1=self["@current"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"current",{},smalltalk.IDETranscript.klass)})},
-messageSends: ["ifNil:", "new"]}),
-smalltalk.IDETranscript.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "initialize",
-fn: function (){
-var self=this;
-function $Transcript(){return smalltalk.Transcript||(typeof Transcript=="undefined"?nil:Transcript)}
-return smalltalk.withContext(function($ctx1) { 
-_st($Transcript())._register_(self._current());
-return self}, function($ctx1) {$ctx1.fill(self,"initialize",{},smalltalk.IDETranscript.klass)})},
-messageSends: ["register:", "current"]}),
-smalltalk.IDETranscript.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "new",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._shouldNotImplement();
-return self}, function($ctx1) {$ctx1.fill(self,"new",{},smalltalk.IDETranscript.klass)})},
-messageSends: ["shouldNotImplement"]}),
-smalltalk.IDETranscript.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "open",
-fn: function (){
-var self=this;
-function $TabManager(){return smalltalk.TabManager||(typeof TabManager=="undefined"?nil:TabManager)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st($TabManager())._current();
-_st($1)._open();
-$2=_st($1)._selectTab_(self._current());
-return self}, function($ctx1) {$ctx1.fill(self,"open",{},smalltalk.IDETranscript.klass)})},
-messageSends: ["open", "current", "selectTab:"]}),
-smalltalk.IDETranscript.klass);
-
-
-smalltalk.addClass('Inspector', smalltalk.TabWidget, ['label', 'variables', 'object', 'selectedVariable', 'variablesList', 'valueTextarea', 'diveButton', 'sourceArea'], 'IDE');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "canBeClosed",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"canBeClosed",{},smalltalk.Inspector)})},
-messageSends: []}),
-smalltalk.Inspector);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "dive",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(_st(self._variables())._at_(self._selectedVariable()))._inspect();
-return self}, function($ctx1) {$ctx1.fill(self,"dive",{},smalltalk.Inspector)})},
-messageSends: ["inspect", "at:", "selectedVariable", "variables"]}),
-smalltalk.Inspector);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "inspect:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@object"]=anObject;
-self["@variables"]=[];
-_st(self["@object"])._inspectOn_(self);
-return self}, function($ctx1) {$ctx1.fill(self,"inspect:",{anObject:anObject},smalltalk.Inspector)})},
-messageSends: ["inspectOn:"]}),
-smalltalk.Inspector);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "label",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@label"];
-if(($receiver = $2) == nil || $receiver == undefined){
-$1="Inspector (nil)";
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.Inspector)})},
-messageSends: ["ifNil:"]}),
-smalltalk.Inspector);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "refresh",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=self;
-_st($1)._inspect_(self["@object"]);
-_st($1)._updateVariablesList();
-$2=_st($1)._updateValueTextarea();
-return self}, function($ctx1) {$ctx1.fill(self,"refresh",{},smalltalk.Inspector)})},
-messageSends: ["inspect:", "updateVariablesList", "updateValueTextarea"]}),
-smalltalk.Inspector);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderBottomPanelOn:",
-fn: function (html){
-var self=this;
-function $SourceArea(){return smalltalk.SourceArea||(typeof SourceArea=="undefined"?nil:SourceArea)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$3,$4,$2;
-$1=_st(html)._div();
-_st($1)._class_("amber_sourceCode");
-$2=_st($1)._with_((function(){
-return smalltalk.withContext(function($ctx2) {
-$3=_st($SourceArea())._new();
-_st($3)._receiver_(self["@object"]);
-_st($3)._onDoIt_((function(){
-return smalltalk.withContext(function($ctx3) {
-return self._refresh();
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-$4=_st($3)._yourself();
-self["@sourceArea"]=$4;
-self["@sourceArea"];
-return _st(self["@sourceArea"])._renderOn_(html);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"renderBottomPanelOn:",{html:html},smalltalk.Inspector)})},
-messageSends: ["class:", "div", "with:", "receiver:", "new", "onDoIt:", "refresh", "yourself", "renderOn:"]}),
-smalltalk.Inspector);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderBoxOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=self;
-_st($1)._renderTopPanelOn_(html);
-$2=_st($1)._renderBottomPanelOn_(html);
-return self}, function($ctx1) {$ctx1.fill(self,"renderBoxOn:",{html:html},smalltalk.Inspector)})},
-messageSends: ["renderTopPanelOn:", "renderBottomPanelOn:"]}),
-smalltalk.Inspector);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderButtonsOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4,$5,$6;
-$1=_st(html)._button();
-_st($1)._with_("DoIt");
-$2=_st($1)._onClick_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(self._sourceArea())._doIt();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-$3=_st(html)._button();
-_st($3)._with_("PrintIt");
-$4=_st($3)._onClick_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(self._sourceArea())._printIt();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-$5=_st(html)._button();
-_st($5)._with_("InspectIt");
-$6=_st($5)._onClick_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(self._sourceArea())._inspectIt();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-self._updateButtons();
-return self}, function($ctx1) {$ctx1.fill(self,"renderButtonsOn:",{html:html},smalltalk.Inspector)})},
-messageSends: ["with:", "button", "onClick:", "doIt", "sourceArea", "printIt", "inspectIt", "updateButtons"]}),
-smalltalk.Inspector);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderTopPanelOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$3,$4,$5,$7,$8,$9,$10,$6,$2,$11,$12;
-$1=_st(html)._div();
-_st($1)._class_("top");
-$2=_st($1)._with_((function(){
-return smalltalk.withContext(function($ctx2) {
-self["@variablesList"]=_st(_st(html)._ul())._class_("amber_column variables");
-self["@variablesList"];
-$3=_st(html)._textarea();
-_st($3)._class_("amber_column value");
-$4=_st($3)._at_put_("readonly","readonly");
-self["@valueTextarea"]=$4;
-self["@valueTextarea"];
-$5=_st(html)._div();
-_st($5)._class_("amber_tabs inspector");
-$6=_st($5)._with_((function(){
-return smalltalk.withContext(function($ctx3) {
-$7=_st(html)._button();
-_st($7)._class_("amber_button inspector refresh");
-_st($7)._with_("Refresh");
-$8=_st($7)._onClick_((function(){
-return smalltalk.withContext(function($ctx4) {
-return self._refresh();
-}, function($ctx4) {$ctx4.fillBlock({},$ctx3)})}));
-$8;
-$9=_st(html)._button();
-_st($9)._class_("amber_button inspector dive");
-_st($9)._with_("Dive");
-$10=_st($9)._onClick_((function(){
-return smalltalk.withContext(function($ctx4) {
-return self._dive();
-}, function($ctx4) {$ctx4.fillBlock({},$ctx3)})}));
-self["@diveButton"]=$10;
-return self["@diveButton"];
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-$6;
-return _st(_st(html)._div())._class_("amber_clear");
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-$11=self;
-_st($11)._updateVariablesList();
-$12=_st($11)._updateValueTextarea();
-return self}, function($ctx1) {$ctx1.fill(self,"renderTopPanelOn:",{html:html},smalltalk.Inspector)})},
-messageSends: ["class:", "div", "with:", "ul", "textarea", "at:put:", "button", "onClick:", "refresh", "dive", "updateVariablesList", "updateValueTextarea"]}),
-smalltalk.Inspector);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selectVariable:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-self._selectedVariable_(aString);
-$1=self;
-_st($1)._updateVariablesList();
-_st($1)._updateValueTextarea();
-$2=_st($1)._updateButtons();
-return self}, function($ctx1) {$ctx1.fill(self,"selectVariable:",{aString:aString},smalltalk.Inspector)})},
-messageSends: ["selectedVariable:", "updateVariablesList", "updateValueTextarea", "updateButtons"]}),
-smalltalk.Inspector);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selectedVariable",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@selectedVariable"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"selectedVariable",{},smalltalk.Inspector)})},
-messageSends: []}),
-smalltalk.Inspector);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selectedVariable:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@selectedVariable"]=aString;
-return self}, function($ctx1) {$ctx1.fill(self,"selectedVariable:",{aString:aString},smalltalk.Inspector)})},
-messageSends: []}),
-smalltalk.Inspector);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "setLabel:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@label"]=aString;
-return self}, function($ctx1) {$ctx1.fill(self,"setLabel:",{aString:aString},smalltalk.Inspector)})},
-messageSends: []}),
-smalltalk.Inspector);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "setVariables:",
-fn: function (aCollection){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@variables"]=aCollection;
-return self}, function($ctx1) {$ctx1.fill(self,"setVariables:",{aCollection:aCollection},smalltalk.Inspector)})},
-messageSends: []}),
-smalltalk.Inspector);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "sourceArea",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@sourceArea"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"sourceArea",{},smalltalk.Inspector)})},
-messageSends: []}),
-smalltalk.Inspector);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "updateButtons",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(self._selectedVariable())._notNil())._and_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(self._variables())._at_(self._selectedVariable()))._notNil();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-if(smalltalk.assert($1)){
-_st(self["@diveButton"])._removeAt_("disabled");
-} else {
-_st(self["@diveButton"])._at_put_("disabled",true);
-};
-return self}, function($ctx1) {$ctx1.fill(self,"updateButtons",{},smalltalk.Inspector)})},
-messageSends: ["ifFalse:ifTrue:", "at:put:", "removeAt:", "and:", "notNil", "at:", "selectedVariable", "variables"]}),
-smalltalk.Inspector);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "updateValueTextarea",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$3,$2;
-$1=_st(self["@valueTextarea"])._asJQuery();
-$3=_st(self._selectedVariable())._isNil();
-if(smalltalk.assert($3)){
-$2="";
-} else {
-$2=_st(_st(self._variables())._at_(self._selectedVariable()))._printString();
-};
-_st($1)._val_($2);
-return self}, function($ctx1) {$ctx1.fill(self,"updateValueTextarea",{},smalltalk.Inspector)})},
-messageSends: ["val:", "ifTrue:ifFalse:", "printString", "at:", "selectedVariable", "variables", "isNil", "asJQuery"]}),
-smalltalk.Inspector);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "updateVariablesList",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3;
-_st(self["@variablesList"])._contents_((function(html){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(self._variables())._keys())._do_((function(each){
-var li;
-return smalltalk.withContext(function($ctx3) {
-li=_st(html)._li();
-li;
-$1=li;
-_st($1)._with_(each);
-$2=_st($1)._onClick_((function(){
-return smalltalk.withContext(function($ctx4) {
-return self._selectVariable_(each);
-}, function($ctx4) {$ctx4.fillBlock({},$ctx3)})}));
-$2;
-$3=_st(self._selectedVariable()).__eq(each);
-if(smalltalk.assert($3)){
-return _st(li)._class_("selected");
-};
-}, function($ctx3) {$ctx3.fillBlock({each:each,li:li},$ctx2)})}));
-}, function($ctx2) {$ctx2.fillBlock({html:html},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"updateVariablesList",{},smalltalk.Inspector)})},
-messageSends: ["contents:", "do:", "li", "with:", "onClick:", "selectVariable:", "ifTrue:", "class:", "=", "selectedVariable", "keys", "variables"]}),
-smalltalk.Inspector);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "variables",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@variables"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"variables",{},smalltalk.Inspector)})},
-messageSends: []}),
-smalltalk.Inspector);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "inspect:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=self._new();
-_st($2)._inspect_(anObject);
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"inspect:",{anObject:anObject},smalltalk.Inspector.klass)})},
-messageSends: ["inspect:", "new", "yourself"]}),
-smalltalk.Inspector.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "on:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=self._new();
-_st($2)._inspect_(anObject);
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"on:",{anObject:anObject},smalltalk.Inspector.klass)})},
-messageSends: ["inspect:", "new", "yourself"]}),
-smalltalk.Inspector.klass);
-
-
-smalltalk.addClass('ProgressBar', smalltalk.TabWidget, ['percent', 'progressDiv', 'div'], 'IDE');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "percent",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@percent"];
-if(($receiver = $2) == nil || $receiver == undefined){
-$1=(0);
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"percent",{},smalltalk.ProgressBar)})},
-messageSends: ["ifNil:"]}),
-smalltalk.ProgressBar);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "percent:",
-fn: function (aNumber){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@percent"]=aNumber;
-return self}, function($ctx1) {$ctx1.fill(self,"percent:",{aNumber:aNumber},smalltalk.ProgressBar)})},
-messageSends: []}),
-smalltalk.ProgressBar);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st(html)._div();
-_st($1)._class_("progress_bar");
-$2=_st($1)._yourself();
-self["@div"]=$2;
-self._renderProgressBar();
-return self}, function($ctx1) {$ctx1.fill(self,"renderOn:",{html:html},smalltalk.ProgressBar)})},
-messageSends: ["class:", "div", "yourself", "renderProgressBar"]}),
-smalltalk.ProgressBar);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderProgressBar",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-_st(self["@div"])._contents_((function(html){
-return smalltalk.withContext(function($ctx2) {
-$1=_st(html)._div();
-_st($1)._class_("progress");
-$2=_st($1)._style_(_st("width:".__comma(_st(self._percent())._asString())).__comma("%"));
-return $2;
-}, function($ctx2) {$ctx2.fillBlock({html:html},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"renderProgressBar",{},smalltalk.ProgressBar)})},
-messageSends: ["contents:", "class:", "div", "style:", ",", "asString", "percent"]}),
-smalltalk.ProgressBar);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "updatePercent:",
-fn: function (aNumber){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._percent_(aNumber);
-self._renderProgressBar();
-return self}, function($ctx1) {$ctx1.fill(self,"updatePercent:",{aNumber:aNumber},smalltalk.ProgressBar)})},
-messageSends: ["percent:", "renderProgressBar"]}),
-smalltalk.ProgressBar);
-
-
-
-smalltalk.addClass('ReferencesBrowser', smalltalk.TabWidget, ['implementors', 'senders', 'implementorsList', 'input', 'timer', 'selector', 'sendersList', 'referencedClasses', 'referencedClassesList', 'matches', 'matchesList'], 'IDE');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "canBeClosed",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"canBeClosed",{},smalltalk.ReferencesBrowser)})},
-messageSends: []}),
-smalltalk.ReferencesBrowser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "classesAndMetaclasses",
-fn: function (){
-var self=this;
-function $Smalltalk(){return smalltalk.Smalltalk||(typeof Smalltalk=="undefined"?nil:Smalltalk)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(_st($Smalltalk())._current())._classes()).__comma(_st(_st(_st($Smalltalk())._current())._classes())._collect_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(each)._class();
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})})));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"classesAndMetaclasses",{},smalltalk.ReferencesBrowser)})},
-messageSends: [",", "collect:", "class", "classes", "current"]}),
-smalltalk.ReferencesBrowser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "implementors",
-fn: function (){
-var self=this;
-function $Array(){return smalltalk.Array||(typeof Array=="undefined"?nil:Array)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@implementors"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@implementors"]=_st($Array())._new();
-$1=self["@implementors"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"implementors",{},smalltalk.ReferencesBrowser)})},
-messageSends: ["ifNil:", "new"]}),
-smalltalk.ReferencesBrowser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "initialize",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-smalltalk.ReferencesBrowser.superclass.fn.prototype._initialize.apply(_st(self), []);
-self["@selector"]="";
-return self}, function($ctx1) {$ctx1.fill(self,"initialize",{},smalltalk.ReferencesBrowser)})},
-messageSends: ["initialize"]}),
-smalltalk.ReferencesBrowser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "label",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "[References]";
-}, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.ReferencesBrowser)})},
-messageSends: []}),
-smalltalk.ReferencesBrowser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "matches",
-fn: function (){
-var self=this;
-function $Array(){return smalltalk.Array||(typeof Array=="undefined"?nil:Array)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@matches"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@matches"]=_st($Array())._new();
-$1=self["@matches"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"matches",{},smalltalk.ReferencesBrowser)})},
-messageSends: ["ifNil:", "new"]}),
-smalltalk.ReferencesBrowser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "openBrowserOn:",
-fn: function (aMethod){
-var self=this;
-var browser;
-function $Browser(){return smalltalk.Browser||(typeof Browser=="undefined"?nil:Browser)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$3,$2,$4,$5,$6;
-$1=$Browser();
-$3=_st(_st(aMethod)._methodClass())._isMetaclass();
-if(smalltalk.assert($3)){
-$2=_st(_st(aMethod)._methodClass())._instanceClass();
-} else {
-$2=_st(aMethod)._methodClass();
-};
-browser=_st($1)._openOn_($2);
-$4=_st(_st(aMethod)._methodClass())._isMetaclass();
-if(smalltalk.assert($4)){
-_st(browser)._selectTab_("class");
-};
-$5=browser;
-_st($5)._selectProtocol_(_st(aMethod)._category());
-$6=_st($5)._selectMethod_(aMethod);
-return self}, function($ctx1) {$ctx1.fill(self,"openBrowserOn:",{aMethod:aMethod,browser:browser},smalltalk.ReferencesBrowser)})},
-messageSends: ["openOn:", "ifTrue:ifFalse:", "instanceClass", "methodClass", "isMetaclass", "ifTrue:", "selectTab:", "selectProtocol:", "category", "selectMethod:"]}),
-smalltalk.ReferencesBrowser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "referencedClasses",
-fn: function (){
-var self=this;
-function $Array(){return smalltalk.Array||(typeof Array=="undefined"?nil:Array)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@referencedClasses"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@referencedClasses"]=_st($Array())._new();
-$1=self["@referencedClasses"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"referencedClasses",{},smalltalk.ReferencesBrowser)})},
-messageSends: ["ifNil:", "new"]}),
-smalltalk.ReferencesBrowser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderBoxOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=self;
-_st($1)._renderInputOn_(html);
-_st($1)._renderImplementorsOn_(html);
-_st($1)._renderSendersOn_(html);
-_st($1)._renderReferencedClassesOn_(html);
-$2=_st($1)._renderMatchesOn_(html);
-return self}, function($ctx1) {$ctx1.fill(self,"renderBoxOn:",{html:html},smalltalk.ReferencesBrowser)})},
-messageSends: ["renderInputOn:", "renderImplementorsOn:", "renderSendersOn:", "renderReferencedClassesOn:", "renderMatchesOn:"]}),
-smalltalk.ReferencesBrowser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderImplementorsOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@implementorsList"]=_st(_st(html)._ul())._class_("amber_column implementors");
-self._updateImplementorsList();
-return self}, function($ctx1) {$ctx1.fill(self,"renderImplementorsOn:",{html:html},smalltalk.ReferencesBrowser)})},
-messageSends: ["class:", "ul", "updateImplementorsList"]}),
-smalltalk.ReferencesBrowser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderInputOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st(html)._input();
-_st($1)._class_("implementors");
-$2=_st($1)._yourself();
-self["@input"]=$2;
-_st(_st(self["@input"])._asJQuery())._val_(self["@selector"]);
-self._setInputEvents();
-return self}, function($ctx1) {$ctx1.fill(self,"renderInputOn:",{html:html},smalltalk.ReferencesBrowser)})},
-messageSends: ["class:", "input", "yourself", "val:", "asJQuery", "setInputEvents"]}),
-smalltalk.ReferencesBrowser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderMatchesOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@matchesList"]=_st(_st(html)._ul())._class_("amber_column matches");
-self._updateMatchesList();
-return self}, function($ctx1) {$ctx1.fill(self,"renderMatchesOn:",{html:html},smalltalk.ReferencesBrowser)})},
-messageSends: ["class:", "ul", "updateMatchesList"]}),
-smalltalk.ReferencesBrowser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderReferencedClassesOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@referencedClassesList"]=_st(_st(html)._ul())._class_("amber_column referenced_classes");
-self._updateReferencedClassesList();
-return self}, function($ctx1) {$ctx1.fill(self,"renderReferencedClassesOn:",{html:html},smalltalk.ReferencesBrowser)})},
-messageSends: ["class:", "ul", "updateReferencedClassesList"]}),
-smalltalk.ReferencesBrowser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderSendersOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@sendersList"]=_st(_st(html)._ul())._class_("amber_column senders");
-self._updateSendersList();
-return self}, function($ctx1) {$ctx1.fill(self,"renderSendersOn:",{html:html},smalltalk.ReferencesBrowser)})},
-messageSends: ["class:", "ul", "updateSendersList"]}),
-smalltalk.ReferencesBrowser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "search:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=self;
-_st($1)._searchReferencesFor_(aString);
-_st($1)._updateImplementorsList();
-_st($1)._updateSendersList();
-_st($1)._updateReferencedClassesList();
-$2=_st($1)._updateMatchesList();
-return self}, function($ctx1) {$ctx1.fill(self,"search:",{aString:aString},smalltalk.ReferencesBrowser)})},
-messageSends: ["searchReferencesFor:", "updateImplementorsList", "updateSendersList", "updateReferencedClassesList", "updateMatchesList"]}),
-smalltalk.ReferencesBrowser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "searchMethodSource",
-fn: function (){
-var self=this;
-var regex;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-regex=_st(self["@selector"])._allButFirst();
-_st(self._classesAndMetaclasses())._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(_st(each)._methodDictionary())._values())._do_((function(value){
-return smalltalk.withContext(function($ctx3) {
-$1=_st(_st(value)._source())._match_(regex);
-if(smalltalk.assert($1)){
-return _st(self._matches())._add_(value);
-};
-}, function($ctx3) {$ctx3.fillBlock({value:value},$ctx2)})}));
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"searchMethodSource",{regex:regex},smalltalk.ReferencesBrowser)})},
-messageSends: ["allButFirst", "do:", "ifTrue:", "add:", "matches", "match:", "source", "values", "methodDictionary", "classesAndMetaclasses"]}),
-smalltalk.ReferencesBrowser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "searchReferencedClasses",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-_st(self._classesAndMetaclasses())._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(_st(each)._methodDictionary())._values())._do_((function(value){
-return smalltalk.withContext(function($ctx3) {
-$1=_st(_st(value)._referencedClasses())._includes_(self["@selector"]);
-if(smalltalk.assert($1)){
-return _st(self._referencedClasses())._add_(value);
-};
-}, function($ctx3) {$ctx3.fillBlock({value:value},$ctx2)})}));
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"searchReferencedClasses",{},smalltalk.ReferencesBrowser)})},
-messageSends: ["do:", "ifTrue:", "add:", "referencedClasses", "includes:", "values", "methodDictionary", "classesAndMetaclasses"]}),
-smalltalk.ReferencesBrowser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "searchReferencesFor:",
-fn: function (aString){
-var self=this;
-function $Array(){return smalltalk.Array||(typeof Array=="undefined"?nil:Array)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-self["@selector"]=aString;
-self["@implementors"]=_st($Array())._new();
-self["@senders"]=_st($Array())._new();
-self["@referencedClasses"]=_st($Array())._new();
-self["@matches"]=_st($Array())._new();
-self._searchMethodSource();
-$1=_st(self["@selector"])._match_("^[A-Z]");
-if(smalltalk.assert($1)){
-self._searchReferencedClasses();
-} else {
-self._searchSelectorReferences();
-};
-return self}, function($ctx1) {$ctx1.fill(self,"searchReferencesFor:",{aString:aString},smalltalk.ReferencesBrowser)})},
-messageSends: ["new", "searchMethodSource", "ifFalse:ifTrue:", "searchSelectorReferences", "searchReferencedClasses", "match:"]}),
-smalltalk.ReferencesBrowser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "searchSelectorReferences",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-_st(self._classesAndMetaclasses())._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(each)._methodDictionary())._keysAndValuesDo_((function(key,value){
-return smalltalk.withContext(function($ctx3) {
-$1=_st(key).__eq(self["@selector"]);
-if(smalltalk.assert($1)){
-_st(self._implementors())._add_(value);
-};
-$2=_st(_st(value)._messageSends())._includes_(self["@selector"]);
-if(smalltalk.assert($2)){
-return _st(self._senders())._add_(value);
-};
-}, function($ctx3) {$ctx3.fillBlock({key:key,value:value},$ctx2)})}));
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"searchSelectorReferences",{},smalltalk.ReferencesBrowser)})},
-messageSends: ["do:", "keysAndValuesDo:", "ifTrue:", "add:", "implementors", "=", "senders", "includes:", "messageSends", "methodDictionary", "classesAndMetaclasses"]}),
-smalltalk.ReferencesBrowser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selector",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@selector"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"selector",{},smalltalk.ReferencesBrowser)})},
-messageSends: []}),
-smalltalk.ReferencesBrowser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "senders",
-fn: function (){
-var self=this;
-function $Array(){return smalltalk.Array||(typeof Array=="undefined"?nil:Array)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@senders"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@senders"]=_st($Array())._new();
-$1=self["@senders"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"senders",{},smalltalk.ReferencesBrowser)})},
-messageSends: ["ifNil:", "new"]}),
-smalltalk.ReferencesBrowser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "setInputEvents",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$3,$2;
-$1=self["@input"];
-_st($1)._onKeyUp_((function(){
-return smalltalk.withContext(function($ctx2) {
-self["@timer"]=_st((function(){
-return smalltalk.withContext(function($ctx3) {
-return self._search_(_st(_st(self["@input"])._asJQuery())._val());
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}))._valueWithTimeout_((100));
-return self["@timer"];
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-$2=_st($1)._onKeyDown_((function(){
-return smalltalk.withContext(function($ctx2) {
-$3=self["@timer"];
-if(($receiver = $3) == nil || $receiver == undefined){
-return $3;
-} else {
-return _st(self["@timer"])._clearTimeout();
-};
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"setInputEvents",{},smalltalk.ReferencesBrowser)})},
-messageSends: ["onKeyUp:", "valueWithTimeout:", "search:", "val", "asJQuery", "onKeyDown:", "ifNotNil:", "clearTimeout"]}),
-smalltalk.ReferencesBrowser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "updateImplementorsList",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4;
-_st(self["@implementorsList"])._contents_((function(html){
-return smalltalk.withContext(function($ctx2) {
-$1=_st(html)._li();
-_st($1)._class_("column_label");
-_st($1)._with_(_st("Implementors (".__comma(_st(_st(self._implementors())._size())._asString())).__comma(")"));
-$2=_st($1)._style_("font-weight: bold");
-$2;
-return _st(self._implementors())._do_((function(each){
-var li;
-return smalltalk.withContext(function($ctx3) {
-li=_st(html)._li();
-li;
-$3=li;
-_st($3)._with_(_st(_st(_st(_st(each)._methodClass())._asString()).__comma(" >> ")).__comma(self._selector()));
-$4=_st($3)._onClick_((function(){
-return smalltalk.withContext(function($ctx4) {
-return self._openBrowserOn_(each);
-}, function($ctx4) {$ctx4.fillBlock({},$ctx3)})}));
-return $4;
-}, function($ctx3) {$ctx3.fillBlock({each:each,li:li},$ctx2)})}));
-}, function($ctx2) {$ctx2.fillBlock({html:html},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"updateImplementorsList",{},smalltalk.ReferencesBrowser)})},
-messageSends: ["contents:", "class:", "li", "with:", ",", "asString", "size", "implementors", "style:", "do:", "selector", "methodClass", "onClick:", "openBrowserOn:"]}),
-smalltalk.ReferencesBrowser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "updateMatchesList",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4;
-_st(self["@matchesList"])._contents_((function(html){
-return smalltalk.withContext(function($ctx2) {
-$1=_st(html)._li();
-_st($1)._class_("column_label");
-_st($1)._with_(_st("Regex matches (".__comma(_st(_st(self._matches())._size())._asString())).__comma(")"));
-$2=_st($1)._style_("font-weight: bold");
-$2;
-return _st(self._matches())._do_((function(each){
-var li;
-return smalltalk.withContext(function($ctx3) {
-li=_st(html)._li();
-li;
-$3=li;
-_st($3)._with_(_st(_st(_st(_st(each)._methodClass())._asString()).__comma(" >> ")).__comma(_st(each)._selector()));
-$4=_st($3)._onClick_((function(){
-return smalltalk.withContext(function($ctx4) {
-return self._openBrowserOn_(each);
-}, function($ctx4) {$ctx4.fillBlock({},$ctx3)})}));
-return $4;
-}, function($ctx3) {$ctx3.fillBlock({each:each,li:li},$ctx2)})}));
-}, function($ctx2) {$ctx2.fillBlock({html:html},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"updateMatchesList",{},smalltalk.ReferencesBrowser)})},
-messageSends: ["contents:", "class:", "li", "with:", ",", "asString", "size", "matches", "style:", "do:", "selector", "methodClass", "onClick:", "openBrowserOn:"]}),
-smalltalk.ReferencesBrowser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "updateReferencedClassesList",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4;
-_st(self["@referencedClassesList"])._contents_((function(html){
-return smalltalk.withContext(function($ctx2) {
-$1=_st(html)._li();
-_st($1)._class_("column_label");
-_st($1)._with_(_st("Class references (".__comma(_st(_st(self._referencedClasses())._size())._asString())).__comma(")"));
-$2=_st($1)._style_("font-weight: bold");
-$2;
-return _st(self._referencedClasses())._do_((function(each){
-return smalltalk.withContext(function($ctx3) {
-$3=_st(html)._li();
-_st($3)._with_(_st(_st(_st(_st(each)._methodClass())._asString()).__comma(" >> ")).__comma(_st(each)._selector()));
-$4=_st($3)._onClick_((function(){
-return smalltalk.withContext(function($ctx4) {
-return self._openBrowserOn_(each);
-}, function($ctx4) {$ctx4.fillBlock({},$ctx3)})}));
-return $4;
-}, function($ctx3) {$ctx3.fillBlock({each:each},$ctx2)})}));
-}, function($ctx2) {$ctx2.fillBlock({html:html},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"updateReferencedClassesList",{},smalltalk.ReferencesBrowser)})},
-messageSends: ["contents:", "class:", "li", "with:", ",", "asString", "size", "referencedClasses", "style:", "do:", "selector", "methodClass", "onClick:", "openBrowserOn:"]}),
-smalltalk.ReferencesBrowser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "updateSendersList",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4;
-_st(self["@sendersList"])._contents_((function(html){
-return smalltalk.withContext(function($ctx2) {
-$1=_st(html)._li();
-_st($1)._class_("column_label");
-_st($1)._with_(_st("Senders (".__comma(_st(_st(self._senders())._size())._asString())).__comma(")"));
-$2=_st($1)._style_("font-weight: bold");
-$2;
-return _st(self._senders())._do_((function(each){
-return smalltalk.withContext(function($ctx3) {
-$3=_st(html)._li();
-_st($3)._with_(_st(_st(_st(_st(each)._methodClass())._asString()).__comma(" >> ")).__comma(_st(each)._selector()));
-$4=_st($3)._onClick_((function(){
-return smalltalk.withContext(function($ctx4) {
-return self._openBrowserOn_(each);
-}, function($ctx4) {$ctx4.fillBlock({},$ctx3)})}));
-return $4;
-}, function($ctx3) {$ctx3.fillBlock({each:each},$ctx2)})}));
-}, function($ctx2) {$ctx2.fillBlock({html:html},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"updateSendersList",{},smalltalk.ReferencesBrowser)})},
-messageSends: ["contents:", "class:", "li", "with:", ",", "asString", "size", "senders", "style:", "do:", "selector", "methodClass", "onClick:", "openBrowserOn:"]}),
-smalltalk.ReferencesBrowser);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "search:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=self._new();
-_st($2)._searchReferencesFor_(aString);
-$3=_st($2)._open();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"search:",{aString:aString},smalltalk.ReferencesBrowser.klass)})},
-messageSends: ["searchReferencesFor:", "new", "open"]}),
-smalltalk.ReferencesBrowser.klass);
-
-
-smalltalk.addClass('TestRunner', smalltalk.TabWidget, ['selectedCategories', 'packagesList', 'selectedClasses', 'classesList', 'selectedMethods', 'progressBar', 'methodsList', 'result', 'statusDiv'], 'IDE');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "allClasses",
-fn: function (){
-var self=this;
-function $TestCase(){return smalltalk.TestCase||(typeof TestCase=="undefined"?nil:TestCase)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st($TestCase())._allSubclasses())._select_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(each)._isAbstract())._not();
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"allClasses",{},smalltalk.TestRunner)})},
-messageSends: ["select:", "not", "isAbstract", "allSubclasses"]}),
-smalltalk.TestRunner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "classes",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(self._allClasses())._select_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(self._selectedCategories())._includes_(_st(each)._category());
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})})))._sort_((function(a,b){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(a)._name()).__gt(_st(b)._name());
-}, function($ctx2) {$ctx2.fillBlock({a:a,b:b},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"classes",{},smalltalk.TestRunner)})},
-messageSends: ["sort:", ">", "name", "select:", "includes:", "category", "selectedCategories", "allClasses"]}),
-smalltalk.TestRunner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "initialize",
-fn: function (){
-var self=this;
-function $TestResult(){return smalltalk.TestResult||(typeof TestResult=="undefined"?nil:TestResult)}
-return smalltalk.withContext(function($ctx1) { 
-smalltalk.TestRunner.superclass.fn.prototype._initialize.apply(_st(self), []);
-self["@result"]=_st($TestResult())._new();
-return self}, function($ctx1) {$ctx1.fill(self,"initialize",{},smalltalk.TestRunner)})},
-messageSends: ["initialize", "new"]}),
-smalltalk.TestRunner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isSelectedCategory:",
-fn: function (aCategory){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._selectedCategories())._includes_(aCategory);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"isSelectedCategory:",{aCategory:aCategory},smalltalk.TestRunner)})},
-messageSends: ["includes:", "selectedCategories"]}),
-smalltalk.TestRunner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isSelectedClass:",
-fn: function (aClass){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._selectedClasses())._includes_(aClass);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"isSelectedClass:",{aClass:aClass},smalltalk.TestRunner)})},
-messageSends: ["includes:", "selectedClasses"]}),
-smalltalk.TestRunner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "label",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "SUnit";
-}, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.TestRunner)})},
-messageSends: []}),
-smalltalk.TestRunner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "packages",
-fn: function (){
-var self=this;
-var packages;
-function $Array(){return smalltalk.Array||(typeof Array=="undefined"?nil:Array)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-packages=_st($Array())._new();
-_st(self._allClasses())._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-$1=_st(packages)._includes_(_st(each)._category());
-if(! smalltalk.assert($1)){
-return _st(packages)._add_(_st(each)._category());
-};
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-$2=_st(packages)._sort();
-return $2;
-}, function($ctx1) {$ctx1.fill(self,"packages",{packages:packages},smalltalk.TestRunner)})},
-messageSends: ["new", "do:", "ifFalse:", "add:", "category", "includes:", "allClasses", "sort"]}),
-smalltalk.TestRunner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "performFailure:",
-fn: function (aTestCase){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(aTestCase)._runCase();
-return self}, function($ctx1) {$ctx1.fill(self,"performFailure:",{aTestCase:aTestCase},smalltalk.TestRunner)})},
-messageSends: ["runCase"]}),
-smalltalk.TestRunner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "printErrors",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(_st(_st(self._result())._errors())._size())._asString()).__comma(" errors, ");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"printErrors",{},smalltalk.TestRunner)})},
-messageSends: [",", "asString", "size", "errors", "result"]}),
-smalltalk.TestRunner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "printFailures",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(_st(_st(self._result())._failures())._size())._asString()).__comma(" failures");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"printFailures",{},smalltalk.TestRunner)})},
-messageSends: [",", "asString", "size", "failures", "result"]}),
-smalltalk.TestRunner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "printPasses",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(_st(_st(_st(self._result())._runs()).__minus(_st(_st(self._result())._errors())._size())).__minus(_st(_st(self._result())._failures())._size()))._asString()).__comma(" passes, ");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"printPasses",{},smalltalk.TestRunner)})},
-messageSends: [",", "asString", "-", "size", "failures", "result", "errors", "runs"]}),
-smalltalk.TestRunner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "printTotal",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(_st(self._result())._total())._asString()).__comma(" runs, ");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"printTotal",{},smalltalk.TestRunner)})},
-messageSends: [",", "asString", "total", "result"]}),
-smalltalk.TestRunner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "progressBar",
-fn: function (){
-var self=this;
-function $ProgressBar(){return smalltalk.ProgressBar||(typeof ProgressBar=="undefined"?nil:ProgressBar)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@progressBar"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@progressBar"]=_st($ProgressBar())._new();
-$1=self["@progressBar"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"progressBar",{},smalltalk.TestRunner)})},
-messageSends: ["ifNil:", "new"]}),
-smalltalk.TestRunner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderBoxOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=self;
-_st($1)._renderCategoriesOn_(html);
-_st($1)._renderClassesOn_(html);
-$2=_st($1)._renderResultsOn_(html);
-return self}, function($ctx1) {$ctx1.fill(self,"renderBoxOn:",{html:html},smalltalk.TestRunner)})},
-messageSends: ["renderCategoriesOn:", "renderClassesOn:", "renderResultsOn:"]}),
-smalltalk.TestRunner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderButtonsOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st(html)._button();
-_st($1)._with_("Run selected");
-$2=_st($1)._onClick_((function(){
-return smalltalk.withContext(function($ctx2) {
-return self._run_(self._testCases());
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"renderButtonsOn:",{html:html},smalltalk.TestRunner)})},
-messageSends: ["with:", "button", "onClick:", "run:", "testCases"]}),
-smalltalk.TestRunner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderCategoriesOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@packagesList"]=_st(_st(html)._ul())._class_("amber_column sunit packages");
-self._updateCategoriesList();
-return self}, function($ctx1) {$ctx1.fill(self,"renderCategoriesOn:",{html:html},smalltalk.TestRunner)})},
-messageSends: ["class:", "ul", "updateCategoriesList"]}),
-smalltalk.TestRunner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderClassesOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@classesList"]=_st(_st(html)._ul())._class_("amber_column sunit classes");
-self._updateClassesList();
-return self}, function($ctx1) {$ctx1.fill(self,"renderClassesOn:",{html:html},smalltalk.TestRunner)})},
-messageSends: ["class:", "ul", "updateClassesList"]}),
-smalltalk.TestRunner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderErrorsOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-_st(_st(self._result())._errors())._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-$1=_st(html)._li();
-_st($1)._class_("errors");
-_st($1)._with_(_st(_st(_st(_st(each)._class())._name()).__comma(" >> ")).__comma(_st(each)._selector()));
-$2=_st($1)._onClick_((function(){
-return smalltalk.withContext(function($ctx3) {
-return self._performFailure_(each);
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-return $2;
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"renderErrorsOn:",{html:html},smalltalk.TestRunner)})},
-messageSends: ["do:", "class:", "li", "with:", ",", "selector", "name", "class", "onClick:", "performFailure:", "errors", "result"]}),
-smalltalk.TestRunner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderFailuresOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-_st(_st(self._result())._failures())._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-$1=_st(html)._li();
-_st($1)._class_("failures");
-_st($1)._with_(_st(_st(_st(_st(each)._class())._name()).__comma(" >> ")).__comma(_st(each)._selector()));
-$2=_st($1)._onClick_((function(){
-return smalltalk.withContext(function($ctx3) {
-return self._performFailure_(each);
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-return $2;
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"renderFailuresOn:",{html:html},smalltalk.TestRunner)})},
-messageSends: ["do:", "class:", "li", "with:", ",", "selector", "name", "class", "onClick:", "performFailure:", "failures", "result"]}),
-smalltalk.TestRunner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderResultsOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@statusDiv"]=_st(html)._div();
-_st(html)._with_(self._progressBar());
-self["@methodsList"]=_st(_st(html)._ul())._class_("amber_column sunit results");
-self._updateMethodsList();
-self._updateStatusDiv();
-return self}, function($ctx1) {$ctx1.fill(self,"renderResultsOn:",{html:html},smalltalk.TestRunner)})},
-messageSends: ["div", "with:", "progressBar", "class:", "ul", "updateMethodsList", "updateStatusDiv"]}),
-smalltalk.TestRunner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "result",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@result"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"result",{},smalltalk.TestRunner)})},
-messageSends: []}),
-smalltalk.TestRunner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "run:",
-fn: function (aCollection){
-var self=this;
-var worker;
-function $TestSuiteRunner(){return smalltalk.TestSuiteRunner||(typeof TestSuiteRunner=="undefined"?nil:TestSuiteRunner)}
-function $ResultAnnouncement(){return smalltalk.ResultAnnouncement||(typeof ResultAnnouncement=="undefined"?nil:ResultAnnouncement)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-worker=_st($TestSuiteRunner())._on_(aCollection);
-self["@result"]=_st(worker)._result();
-_st(_st(worker)._announcer())._on_do_($ResultAnnouncement(),(function(ann){
-return smalltalk.withContext(function($ctx2) {
-$1=_st(_st(ann)._result()).__eq_eq(self["@result"]);
-if(smalltalk.assert($1)){
-_st(self._progressBar())._updatePercent_(_st(_st(_st(self["@result"])._runs()).__slash(_st(self["@result"])._total())).__star((100)));
-self._updateStatusDiv();
-return self._updateMethodsList();
-};
-}, function($ctx2) {$ctx2.fillBlock({ann:ann},$ctx1)})}));
-_st(worker)._run();
-return self}, function($ctx1) {$ctx1.fill(self,"run:",{aCollection:aCollection,worker:worker},smalltalk.TestRunner)})},
-messageSends: ["on:", "result", "on:do:", "ifTrue:", "updatePercent:", "*", "/", "total", "runs", "progressBar", "updateStatusDiv", "updateMethodsList", "==", "announcer", "run"]}),
-smalltalk.TestRunner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selectAllCategories",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3;
-_st(self._packages())._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-$1=_st(self["@selectedCategories"])._includes_(each);
-if(! smalltalk.assert($1)){
-return _st(self._selectedCategories())._add_(each);
-};
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-$2=self;
-_st($2)._updateCategoriesList();
-$3=_st($2)._updateClassesList();
-return self}, function($ctx1) {$ctx1.fill(self,"selectAllCategories",{},smalltalk.TestRunner)})},
-messageSends: ["do:", "ifFalse:", "add:", "selectedCategories", "includes:", "packages", "updateCategoriesList", "updateClassesList"]}),
-smalltalk.TestRunner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selectAllClasses",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3;
-_st(self._classes())._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-$1=_st(self["@selectedClasses"])._includes_(each);
-if(! smalltalk.assert($1)){
-return _st(self._selectedClasses())._add_(each);
-};
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-$2=self;
-_st($2)._updateCategoriesList();
-$3=_st($2)._updateClassesList();
-return self}, function($ctx1) {$ctx1.fill(self,"selectAllClasses",{},smalltalk.TestRunner)})},
-messageSends: ["do:", "ifFalse:", "add:", "selectedClasses", "includes:", "classes", "updateCategoriesList", "updateClassesList"]}),
-smalltalk.TestRunner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selectedCategories",
-fn: function (){
-var self=this;
-function $Array(){return smalltalk.Array||(typeof Array=="undefined"?nil:Array)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@selectedCategories"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@selectedCategories"]=_st($Array())._new();
-$1=self["@selectedCategories"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"selectedCategories",{},smalltalk.TestRunner)})},
-messageSends: ["ifNil:", "new"]}),
-smalltalk.TestRunner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selectedClasses",
-fn: function (){
-var self=this;
-function $Array(){return smalltalk.Array||(typeof Array=="undefined"?nil:Array)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@selectedClasses"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@selectedClasses"]=_st($Array())._new();
-$1=self["@selectedClasses"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"selectedClasses",{},smalltalk.TestRunner)})},
-messageSends: ["ifNil:", "new"]}),
-smalltalk.TestRunner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "statusInfo",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(_st(self._printTotal()).__comma(self._printPasses())).__comma(self._printErrors())).__comma(self._printFailures());
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"statusInfo",{},smalltalk.TestRunner)})},
-messageSends: [",", "printFailures", "printErrors", "printPasses", "printTotal"]}),
-smalltalk.TestRunner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testCases",
-fn: function (){
-var self=this;
-var testCases;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-testCases=[];
-_st(_st(self._selectedClasses())._select_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(self._selectedCategories())._includes_(_st(each)._category());
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})})))._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(testCases)._addAll_(_st(each)._buildSuite());
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-$1=testCases;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"testCases",{testCases:testCases},smalltalk.TestRunner)})},
-messageSends: ["do:", "addAll:", "buildSuite", "select:", "includes:", "category", "selectedCategories", "selectedClasses"]}),
-smalltalk.TestRunner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "toggleCategory:",
-fn: function (aCategory){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3;
-$1=self._isSelectedCategory_(aCategory);
-if(smalltalk.assert($1)){
-_st(self["@selectedCategories"])._remove_(aCategory);
-} else {
-_st(self["@selectedCategories"])._add_(aCategory);
-};
-$2=self;
-_st($2)._updateCategoriesList();
-$3=_st($2)._updateClassesList();
-return self}, function($ctx1) {$ctx1.fill(self,"toggleCategory:",{aCategory:aCategory},smalltalk.TestRunner)})},
-messageSends: ["ifFalse:ifTrue:", "add:", "remove:", "isSelectedCategory:", "updateCategoriesList", "updateClassesList"]}),
-smalltalk.TestRunner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "toggleClass:",
-fn: function (aClass){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._isSelectedClass_(aClass);
-if(smalltalk.assert($1)){
-_st(self["@selectedClasses"])._remove_(aClass);
-} else {
-_st(self["@selectedClasses"])._add_(aClass);
-};
-self._updateClassesList();
-return self}, function($ctx1) {$ctx1.fill(self,"toggleClass:",{aClass:aClass},smalltalk.TestRunner)})},
-messageSends: ["ifFalse:ifTrue:", "add:", "remove:", "isSelectedClass:", "updateClassesList"]}),
-smalltalk.TestRunner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "updateCategoriesList",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4,$5;
-_st(self["@packagesList"])._contents_((function(html){
-return smalltalk.withContext(function($ctx2) {
-$1=_st(html)._li();
-_st($1)._class_("all");
-_st($1)._with_("All");
-$2=_st($1)._onClick_((function(){
-return smalltalk.withContext(function($ctx3) {
-return self._selectAllCategories();
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-$2;
-return _st(self._packages())._do_((function(each){
-var li;
-return smalltalk.withContext(function($ctx3) {
-li=_st(html)._li();
-li;
-$3=_st(self._selectedCategories())._includes_(each);
-if(smalltalk.assert($3)){
-_st(li)._class_("selected");
-};
-$4=li;
-_st($4)._with_(each);
-$5=_st($4)._onClick_((function(){
-return smalltalk.withContext(function($ctx4) {
-return self._toggleCategory_(each);
-}, function($ctx4) {$ctx4.fillBlock({},$ctx3)})}));
-return $5;
-}, function($ctx3) {$ctx3.fillBlock({each:each,li:li},$ctx2)})}));
-}, function($ctx2) {$ctx2.fillBlock({html:html},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"updateCategoriesList",{},smalltalk.TestRunner)})},
-messageSends: ["contents:", "class:", "li", "with:", "onClick:", "selectAllCategories", "do:", "ifTrue:", "includes:", "selectedCategories", "toggleCategory:", "packages"]}),
-smalltalk.TestRunner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "updateClassesList",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4,$5,$6;
-_st(self["@classesList"])._contents_((function(html){
-return smalltalk.withContext(function($ctx2) {
-$1=_st(self._selectedCategories())._isEmpty();
-if(! smalltalk.assert($1)){
-$2=_st(html)._li();
-_st($2)._class_("all");
-_st($2)._with_("All");
-$3=_st($2)._onClick_((function(){
-return smalltalk.withContext(function($ctx3) {
-return self._selectAllClasses();
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-$3;
-};
-return _st(self._classes())._do_((function(each){
-var li;
-return smalltalk.withContext(function($ctx3) {
-li=_st(html)._li();
-li;
-$4=_st(self._selectedClasses())._includes_(each);
-if(smalltalk.assert($4)){
-_st(li)._class_("selected");
-};
-$5=li;
-_st($5)._with_(_st(each)._name());
-$6=_st($5)._onClick_((function(){
-return smalltalk.withContext(function($ctx4) {
-return self._toggleClass_(each);
-}, function($ctx4) {$ctx4.fillBlock({},$ctx3)})}));
-return $6;
-}, function($ctx3) {$ctx3.fillBlock({each:each,li:li},$ctx2)})}));
-}, function($ctx2) {$ctx2.fillBlock({html:html},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"updateClassesList",{},smalltalk.TestRunner)})},
-messageSends: ["contents:", "ifFalse:", "class:", "li", "with:", "onClick:", "selectAllClasses", "isEmpty", "selectedCategories", "do:", "ifTrue:", "includes:", "selectedClasses", "name", "toggleClass:", "classes"]}),
-smalltalk.TestRunner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "updateMethodsList",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self["@methodsList"])._contents_((function(html){
-return smalltalk.withContext(function($ctx2) {
-self._renderErrorsOn_(html);
-return self._renderFailuresOn_(html);
-}, function($ctx2) {$ctx2.fillBlock({html:html},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"updateMethodsList",{},smalltalk.TestRunner)})},
-messageSends: ["contents:", "renderErrorsOn:", "renderFailuresOn:"]}),
-smalltalk.TestRunner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "updateStatusDiv",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self["@statusDiv"])._class_("sunit status ".__comma(_st(self["@result"])._status()));
-_st(self["@statusDiv"])._contents_((function(html){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(html)._span())._with_(self._statusInfo());
-}, function($ctx2) {$ctx2.fillBlock({html:html},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"updateStatusDiv",{},smalltalk.TestRunner)})},
-messageSends: ["class:", ",", "status", "contents:", "with:", "statusInfo", "span"]}),
-smalltalk.TestRunner);
-
-
-
-smalltalk.addClass('Workspace', smalltalk.TabWidget, ['sourceArea'], 'IDE');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "clearWorkspace",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self["@sourceArea"])._clear();
-return self}, function($ctx1) {$ctx1.fill(self,"clearWorkspace",{},smalltalk.Workspace)})},
-messageSends: ["clear"]}),
-smalltalk.Workspace);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "doIt",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self["@sourceArea"])._doIt();
-return self}, function($ctx1) {$ctx1.fill(self,"doIt",{},smalltalk.Workspace)})},
-messageSends: ["doIt"]}),
-smalltalk.Workspace);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "fileIn",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self["@sourceArea"])._fileIn();
-return self}, function($ctx1) {$ctx1.fill(self,"fileIn",{},smalltalk.Workspace)})},
-messageSends: ["fileIn"]}),
-smalltalk.Workspace);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "inspectIt",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self["@sourceArea"])._inspectIt();
-return self}, function($ctx1) {$ctx1.fill(self,"inspectIt",{},smalltalk.Workspace)})},
-messageSends: ["inspectIt"]}),
-smalltalk.Workspace);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "label",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "Workspace";
-}, function($ctx1) {$ctx1.fill(self,"label",{},smalltalk.Workspace)})},
-messageSends: []}),
-smalltalk.Workspace);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "printIt",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self["@sourceArea"])._printIt();
-return self}, function($ctx1) {$ctx1.fill(self,"printIt",{},smalltalk.Workspace)})},
-messageSends: ["printIt"]}),
-smalltalk.Workspace);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderBoxOn:",
-fn: function (html){
-var self=this;
-function $SourceArea(){return smalltalk.SourceArea||(typeof SourceArea=="undefined"?nil:SourceArea)}
-return smalltalk.withContext(function($ctx1) { 
-self["@sourceArea"]=_st($SourceArea())._new();
-_st(self["@sourceArea"])._renderOn_(html);
-return self}, function($ctx1) {$ctx1.fill(self,"renderBoxOn:",{html:html},smalltalk.Workspace)})},
-messageSends: ["new", "renderOn:"]}),
-smalltalk.Workspace);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renderButtonsOn:",
-fn: function (html){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4,$5,$6,$7,$8,$9,$10;
-$1=_st(html)._button();
-_st($1)._with_("DoIt");
-_st($1)._title_("ctrl+d");
-$2=_st($1)._onClick_((function(){
-return smalltalk.withContext(function($ctx2) {
-return self._doIt();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-$3=_st(html)._button();
-_st($3)._with_("PrintIt");
-_st($3)._title_("ctrl+p");
-$4=_st($3)._onClick_((function(){
-return smalltalk.withContext(function($ctx2) {
-return self._printIt();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-$5=_st(html)._button();
-_st($5)._with_("InspectIt");
-_st($5)._title_("ctrl+i");
-$6=_st($5)._onClick_((function(){
-return smalltalk.withContext(function($ctx2) {
-return self._inspectIt();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-$7=_st(html)._button();
-_st($7)._with_("FileIn");
-_st($7)._title_("ctrl+f");
-$8=_st($7)._onClick_((function(){
-return smalltalk.withContext(function($ctx2) {
-return self._fileIn();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-$9=_st(html)._button();
-_st($9)._with_("Clear workspace");
-$10=_st($9)._onClick_((function(){
-return smalltalk.withContext(function($ctx2) {
-return self._clearWorkspace();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"renderButtonsOn:",{html:html},smalltalk.Workspace)})},
-messageSends: ["with:", "button", "title:", "onClick:", "doIt", "printIt", "inspectIt", "fileIn", "clearWorkspace"]}),
-smalltalk.Workspace);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "show",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-smalltalk.Workspace.superclass.fn.prototype._show.apply(_st(self), []);
-_st(self["@sourceArea"])._focus();
-return self}, function($ctx1) {$ctx1.fill(self,"show",{},smalltalk.Workspace)})},
-messageSends: ["show", "focus"]}),
-smalltalk.Workspace);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "inspectOn:",
-fn: function (anInspector){
-var self=this;
-var variables;
-function $Dictionary(){return smalltalk.Dictionary||(typeof Dictionary=="undefined"?nil:Dictionary)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-variables=_st($Dictionary())._new();
-_st(variables)._at_put_("#self",self);
-self._withIndexDo_((function(each,i){
-return smalltalk.withContext(function($ctx2) {
-return _st(variables)._at_put_(i,each);
-}, function($ctx2) {$ctx2.fillBlock({each:each,i:i},$ctx1)})}));
-$1=anInspector;
-_st($1)._setLabel_(self._printString());
-$2=_st($1)._setVariables_(variables);
-return self}, function($ctx1) {$ctx1.fill(self,"inspectOn:",{anInspector:anInspector,variables:variables},smalltalk.Collection)})},
-messageSends: ["new", "at:put:", "withIndexDo:", "setLabel:", "printString", "setVariables:"]}),
-smalltalk.Collection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "inspectOn:",
-fn: function (anInspector){
-var self=this;
-var variables;
-function $Dictionary(){return smalltalk.Dictionary||(typeof Dictionary=="undefined"?nil:Dictionary)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-variables=_st($Dictionary())._new();
-_st(variables)._at_put_("#self",self);
-_st(variables)._at_put_("#keys",self._keys());
-self._keysAndValuesDo_((function(key,value){
-return smalltalk.withContext(function($ctx2) {
-return _st(variables)._at_put_(key,value);
-}, function($ctx2) {$ctx2.fillBlock({key:key,value:value},$ctx1)})}));
-$1=anInspector;
-_st($1)._setLabel_(self._printString());
-$2=_st($1)._setVariables_(variables);
-return self}, function($ctx1) {$ctx1.fill(self,"inspectOn:",{anInspector:anInspector,variables:variables},smalltalk.HashedCollection)})},
-messageSends: ["new", "at:put:", "keys", "keysAndValuesDo:", "setLabel:", "printString", "setVariables:"]}),
-smalltalk.HashedCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "inspectOn:",
-fn: function (anInspector){
-var self=this;
-var label;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-smalltalk.String.superclass.fn.prototype._inspectOn_.apply(_st(self), [anInspector]);
-$1=_st(_st(self._printString())._size()).__gt((30));
-if(smalltalk.assert($1)){
-label=_st(_st(self._printString())._copyFrom_to_((1),(30))).__comma("...'");
-label;
-} else {
-label=self._printString();
-label;
-};
-_st(anInspector)._setLabel_(label);
-return self}, function($ctx1) {$ctx1.fill(self,"inspectOn:",{anInspector:anInspector,label:label},smalltalk.String)})},
-messageSends: ["inspectOn:", "ifTrue:ifFalse:", ",", "copyFrom:to:", "printString", ">", "size", "setLabel:"]}),
-smalltalk.String);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "inspectOn:",
-fn: function (anInspector){
-var self=this;
-var variables;
-function $Dictionary(){return smalltalk.Dictionary||(typeof Dictionary=="undefined"?nil:Dictionary)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-variables=_st($Dictionary())._new();
-_st(variables)._at_put_("#self",self);
-_st(self["@elements"])._withIndexDo_((function(each,i){
-return smalltalk.withContext(function($ctx2) {
-return _st(variables)._at_put_(i,each);
-}, function($ctx2) {$ctx2.fillBlock({each:each,i:i},$ctx1)})}));
-$1=anInspector;
-_st($1)._setLabel_(self._printString());
-$2=_st($1)._setVariables_(variables);
-return self}, function($ctx1) {$ctx1.fill(self,"inspectOn:",{anInspector:anInspector,variables:variables},smalltalk.Set)})},
-messageSends: ["new", "at:put:", "withIndexDo:", "setLabel:", "printString", "setVariables:"]}),
-smalltalk.Set);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "inspectOn:",
-fn: function (anInspector){
-var self=this;
-var variables;
-function $Dictionary(){return smalltalk.Dictionary||(typeof Dictionary=="undefined"?nil:Dictionary)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-variables=_st($Dictionary())._new();
-_st(variables)._at_put_("#self",self);
-_st(variables)._at_put_("#year",self._year());
-_st(variables)._at_put_("#month",self._month());
-_st(variables)._at_put_("#day",self._day());
-_st(variables)._at_put_("#hours",self._hours());
-_st(variables)._at_put_("#minutes",self._minutes());
-_st(variables)._at_put_("#seconds",self._seconds());
-_st(variables)._at_put_("#milliseconds",self._milliseconds());
-$1=anInspector;
-_st($1)._setLabel_(self._printString());
-$2=_st($1)._setVariables_(variables);
-return self}, function($ctx1) {$ctx1.fill(self,"inspectOn:",{anInspector:anInspector,variables:variables},smalltalk.Date)})},
-messageSends: ["new", "at:put:", "year", "month", "day", "hours", "minutes", "seconds", "milliseconds", "setLabel:", "printString", "setVariables:"]}),
-smalltalk.Date);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "inspectOn:",
-fn: function (anInspector){
-var self=this;
-var variables;
-function $Dictionary(){return smalltalk.Dictionary||(typeof Dictionary=="undefined"?nil:Dictionary)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-variables=_st($Dictionary())._new();
-_st(variables)._at_put_("#self",self);
-_st(variables)._at_put_("#home",self._home());
-_st(variables)._at_put_("#receiver",self._receiver());
-_st(variables)._at_put_("#selector",self._selector());
-_st(variables)._at_put_("#temps",self._temps());
-_st(_st(self._class())._instanceVariableNames())._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(variables)._at_put_(each,self._instVarAt_(each));
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-$1=anInspector;
-_st($1)._setLabel_(self._printString());
-$2=_st($1)._setVariables_(variables);
-return self}, function($ctx1) {$ctx1.fill(self,"inspectOn:",{anInspector:anInspector,variables:variables},smalltalk.MethodContext)})},
-messageSends: ["new", "at:put:", "home", "receiver", "selector", "temps", "do:", "instVarAt:", "instanceVariableNames", "class", "setLabel:", "printString", "setVariables:"]}),
-smalltalk.MethodContext);
-
-});

+ 0 - 2041
js/Importer-Exporter.deploy.js

@@ -1,2041 +0,0 @@
-define("amber/Importer-Exporter", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/Kernel-Objects", "amber/Kernel-Infrastructure"], function(smalltalk,nil,_st){
-smalltalk.addPackage('Importer-Exporter');
-smalltalk.packages["Importer-Exporter"].transport = {"type":"amd","amdNamespace":"amber"};
-
-smalltalk.addClass('AbstractExporter', smalltalk.Object, [], 'Importer-Exporter');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "chunkEscape:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(aString)._replace_with_("!","!!"))._trimBoth();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"chunkEscape:",{aString:aString},smalltalk.AbstractExporter)})},
-messageSends: ["trimBoth", "replace:with:"]}),
-smalltalk.AbstractExporter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "classNameFor:",
-fn: function (aClass){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=_st(aClass)._isMetaclass();
-if(smalltalk.assert($2)){
-$1=_st(_st(_st(aClass)._instanceClass())._name()).__comma(" class");
-} else {
-$3=_st(aClass)._isNil();
-if(smalltalk.assert($3)){
-$1="nil";
-} else {
-$1=_st(aClass)._name();
-};
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"classNameFor:",{aClass:aClass},smalltalk.AbstractExporter)})},
-messageSends: ["ifTrue:ifFalse:", ",", "name", "instanceClass", "isNil", "isMetaclass"]}),
-smalltalk.AbstractExporter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "exportPackage:on:",
-fn: function (aPackage,aStream){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._subclassResponsibility();
-return self}, function($ctx1) {$ctx1.fill(self,"exportPackage:on:",{aPackage:aPackage,aStream:aStream},smalltalk.AbstractExporter)})},
-messageSends: ["subclassResponsibility"]}),
-smalltalk.AbstractExporter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "extensionMethodsOfPackage:",
-fn: function (aPackage){
-var self=this;
-var result;
-function $OrderedCollection(){return smalltalk.OrderedCollection||(typeof OrderedCollection=="undefined"?nil:OrderedCollection)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-result=_st($OrderedCollection())._new();
-_st(self._extensionProtocolsOfPackage_(aPackage))._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(result)._addAll_(_st(each)._methods());
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-$1=result;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"extensionMethodsOfPackage:",{aPackage:aPackage,result:result},smalltalk.AbstractExporter)})},
-messageSends: ["new", "do:", "addAll:", "methods", "extensionProtocolsOfPackage:"]}),
-smalltalk.AbstractExporter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "extensionProtocolsOfPackage:",
-fn: function (aPackage){
-var self=this;
-var extensionName,result;
-function $OrderedCollection(){return smalltalk.OrderedCollection||(typeof OrderedCollection=="undefined"?nil:OrderedCollection)}
-function $ExportMethodProtocol(){return smalltalk.ExportMethodProtocol||(typeof ExportMethodProtocol=="undefined"?nil:ExportMethodProtocol)}
-function $Smalltalk(){return smalltalk.Smalltalk||(typeof Smalltalk=="undefined"?nil:Smalltalk)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-extensionName="*".__comma(_st(aPackage)._name());
-result=_st($OrderedCollection())._new();
-_st(_st(_st($Smalltalk())._current())._classes())._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st([each,_st(each)._class()])._do_((function(behavior){
-return smalltalk.withContext(function($ctx3) {
-$1=_st(_st(behavior)._protocols())._includes_(extensionName);
-if(smalltalk.assert($1)){
-return _st(result)._add_(_st($ExportMethodProtocol())._name_theClass_(extensionName,behavior));
-};
-}, function($ctx3) {$ctx3.fillBlock({behavior:behavior},$ctx2)})}));
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-$2=result;
-return $2;
-}, function($ctx1) {$ctx1.fill(self,"extensionProtocolsOfPackage:",{aPackage:aPackage,extensionName:extensionName,result:result},smalltalk.AbstractExporter)})},
-messageSends: [",", "name", "new", "do:", "ifTrue:", "add:", "name:theClass:", "includes:", "protocols", "class", "classes", "current"]}),
-smalltalk.AbstractExporter);
-
-
-smalltalk.AbstractExporter.klass.iVarNames = ['default'];
-smalltalk.addMethod(
-smalltalk.method({
-selector: "default",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@default"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@default"]=self._new();
-$1=self["@default"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"default",{},smalltalk.AbstractExporter.klass)})},
-messageSends: ["ifNil:", "new"]}),
-smalltalk.AbstractExporter.klass);
-
-
-smalltalk.addClass('ChunkExporter', smalltalk.AbstractExporter, [], 'Importer-Exporter');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "exportCategoryEpilogueOf:on:",
-fn: function (aCategory,aStream){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=aStream;
-_st($1)._nextPutAll_(" !");
-_st($1)._lf();
-$2=_st($1)._lf();
-return self}, function($ctx1) {$ctx1.fill(self,"exportCategoryEpilogueOf:on:",{aCategory:aCategory,aStream:aStream},smalltalk.ChunkExporter)})},
-messageSends: ["nextPutAll:", "lf"]}),
-smalltalk.ChunkExporter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "exportCategoryPrologueOf:on:",
-fn: function (aCategory,aStream){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=aStream;
-_st($1)._nextPutAll_("!".__comma(self._classNameFor_(_st(aCategory)._theClass())));
-$2=_st($1)._nextPutAll_(_st(" methodsFor: '".__comma(_st(aCategory)._name())).__comma("'!"));
-return self}, function($ctx1) {$ctx1.fill(self,"exportCategoryPrologueOf:on:",{aCategory:aCategory,aStream:aStream},smalltalk.ChunkExporter)})},
-messageSends: ["nextPutAll:", ",", "classNameFor:", "theClass", "name"]}),
-smalltalk.ChunkExporter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "exportDefinitionOf:on:",
-fn: function (aClass,aStream){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4,$5,$6,$7;
-$1=aStream;
-_st($1)._nextPutAll_(self._classNameFor_(_st(aClass)._superclass()));
-_st($1)._nextPutAll_(" subclass: #".__comma(self._classNameFor_(aClass)));
-_st($1)._lf();
-_st($1)._tab();
-$2=_st($1)._nextPutAll_("instanceVariableNames: '");
-_st(_st(aClass)._instanceVariableNames())._do_separatedBy_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(aStream)._nextPutAll_(each);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}),(function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(aStream)._nextPutAll_(" ");
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-$3=aStream;
-_st($3)._nextPutAll_("'");
-_st($3)._lf();
-_st($3)._tab();
-_st($3)._nextPutAll_(_st("package: '".__comma(_st(aClass)._category())).__comma("'!"));
-$4=_st($3)._lf();
-$5=_st(_st(aClass)._comment())._notEmpty();
-if(smalltalk.assert($5)){
-$6=aStream;
-_st($6)._nextPutAll_(_st("!".__comma(self._classNameFor_(aClass))).__comma(" commentStamp!"));
-_st($6)._lf();
-_st($6)._nextPutAll_(_st(self._chunkEscape_(_st(aClass)._comment())).__comma("!"));
-$7=_st($6)._lf();
-$7;
-};
-_st(aStream)._lf();
-return self}, function($ctx1) {$ctx1.fill(self,"exportDefinitionOf:on:",{aClass:aClass,aStream:aStream},smalltalk.ChunkExporter)})},
-messageSends: ["nextPutAll:", "classNameFor:", "superclass", ",", "lf", "tab", "do:separatedBy:", "instanceVariableNames", "category", "ifTrue:", "chunkEscape:", "comment", "notEmpty"]}),
-smalltalk.ChunkExporter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "exportMetaDefinitionOf:on:",
-fn: function (aClass,aStream){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4,$5;
-$1=_st(_st(_st(aClass)._class())._instanceVariableNames())._isEmpty();
-if(! smalltalk.assert($1)){
-$2=aStream;
-_st($2)._nextPutAll_(self._classNameFor_(_st(aClass)._class()));
-$3=_st($2)._nextPutAll_(" instanceVariableNames: '");
-$3;
-_st(_st(_st(aClass)._class())._instanceVariableNames())._do_separatedBy_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(aStream)._nextPutAll_(each);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}),(function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(aStream)._nextPutAll_(" ");
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-$4=aStream;
-_st($4)._nextPutAll_("'!");
-_st($4)._lf();
-$5=_st($4)._lf();
-$5;
-};
-return self}, function($ctx1) {$ctx1.fill(self,"exportMetaDefinitionOf:on:",{aClass:aClass,aStream:aStream},smalltalk.ChunkExporter)})},
-messageSends: ["ifFalse:", "nextPutAll:", "classNameFor:", "class", "do:separatedBy:", "instanceVariableNames", "lf", "isEmpty"]}),
-smalltalk.ChunkExporter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "exportMethod:on:",
-fn: function (aMethod,aStream){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=aStream;
-_st($1)._lf();
-_st($1)._lf();
-_st($1)._nextPutAll_(self._chunkEscape_(_st(aMethod)._source()));
-_st($1)._lf();
-$2=_st($1)._nextPutAll_("!");
-return self}, function($ctx1) {$ctx1.fill(self,"exportMethod:on:",{aMethod:aMethod,aStream:aStream},smalltalk.ChunkExporter)})},
-messageSends: ["lf", "nextPutAll:", "chunkEscape:", "source"]}),
-smalltalk.ChunkExporter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "exportPackage:on:",
-fn: function (aPackage,aStream){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._exportPackageDefinitionOf_on_(aPackage,aStream);
-_st(_st(aPackage)._sortedClasses())._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-self._exportDefinitionOf_on_(each,aStream);
-self._exportProtocols_on_(self._ownMethodProtocolsOfClass_(each),aStream);
-self._exportMetaDefinitionOf_on_(each,aStream);
-return self._exportProtocols_on_(self._ownMethodProtocolsOfClass_(_st(each)._class()),aStream);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-self._exportProtocols_on_(self._extensionProtocolsOfPackage_(aPackage),aStream);
-return self}, function($ctx1) {$ctx1.fill(self,"exportPackage:on:",{aPackage:aPackage,aStream:aStream},smalltalk.ChunkExporter)})},
-messageSends: ["exportPackageDefinitionOf:on:", "do:", "exportDefinitionOf:on:", "exportProtocols:on:", "ownMethodProtocolsOfClass:", "exportMetaDefinitionOf:on:", "class", "sortedClasses", "extensionProtocolsOfPackage:"]}),
-smalltalk.ChunkExporter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "exportPackageDefinitionOf:on:",
-fn: function (aPackage,aStream){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=aStream;
-_st($1)._nextPutAll_(_st("Smalltalk current createPackage: '".__comma(_st(aPackage)._name())).__comma("'!"));
-$2=_st($1)._lf();
-return self}, function($ctx1) {$ctx1.fill(self,"exportPackageDefinitionOf:on:",{aPackage:aPackage,aStream:aStream},smalltalk.ChunkExporter)})},
-messageSends: ["nextPutAll:", ",", "name", "lf"]}),
-smalltalk.ChunkExporter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "exportProtocol:on:",
-fn: function (aProtocol,aStream){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._exportProtocolPrologueOf_on_(aProtocol,aStream);
-_st(_st(aProtocol)._methods())._do_((function(method){
-return smalltalk.withContext(function($ctx2) {
-return self._exportMethod_on_(method,aStream);
-}, function($ctx2) {$ctx2.fillBlock({method:method},$ctx1)})}));
-self._exportProtocolEpilogueOf_on_(aProtocol,aStream);
-return self}, function($ctx1) {$ctx1.fill(self,"exportProtocol:on:",{aProtocol:aProtocol,aStream:aStream},smalltalk.ChunkExporter)})},
-messageSends: ["exportProtocolPrologueOf:on:", "do:", "exportMethod:on:", "methods", "exportProtocolEpilogueOf:on:"]}),
-smalltalk.ChunkExporter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "exportProtocolEpilogueOf:on:",
-fn: function (aProtocol,aStream){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=aStream;
-_st($1)._nextPutAll_(" !");
-_st($1)._lf();
-$2=_st($1)._lf();
-return self}, function($ctx1) {$ctx1.fill(self,"exportProtocolEpilogueOf:on:",{aProtocol:aProtocol,aStream:aStream},smalltalk.ChunkExporter)})},
-messageSends: ["nextPutAll:", "lf"]}),
-smalltalk.ChunkExporter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "exportProtocolPrologueOf:on:",
-fn: function (aProtocol,aStream){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=aStream;
-_st($1)._nextPutAll_("!".__comma(self._classNameFor_(_st(aProtocol)._theClass())));
-$2=_st($1)._nextPutAll_(_st(" methodsFor: '".__comma(_st(aProtocol)._name())).__comma("'!"));
-return self}, function($ctx1) {$ctx1.fill(self,"exportProtocolPrologueOf:on:",{aProtocol:aProtocol,aStream:aStream},smalltalk.ChunkExporter)})},
-messageSends: ["nextPutAll:", ",", "classNameFor:", "theClass", "name"]}),
-smalltalk.ChunkExporter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "exportProtocols:on:",
-fn: function (aCollection,aStream){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(aCollection)._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return self._exportProtocol_on_(each,aStream);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"exportProtocols:on:",{aCollection:aCollection,aStream:aStream},smalltalk.ChunkExporter)})},
-messageSends: ["do:", "exportProtocol:on:"]}),
-smalltalk.ChunkExporter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "extensionCategoriesOfPackage:",
-fn: function (aPackage){
-var self=this;
-var name,map,result;
-function $OrderedCollection(){return smalltalk.OrderedCollection||(typeof OrderedCollection=="undefined"?nil:OrderedCollection)}
-function $Dictionary(){return smalltalk.Dictionary||(typeof Dictionary=="undefined"?nil:Dictionary)}
-function $MethodCategory(){return smalltalk.MethodCategory||(typeof MethodCategory=="undefined"?nil:MethodCategory)}
-function $Smalltalk(){return smalltalk.Smalltalk||(typeof Smalltalk=="undefined"?nil:Smalltalk)}
-function $Package(){return smalltalk.Package||(typeof Package=="undefined"?nil:Package)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-name=_st(aPackage)._name();
-result=_st($OrderedCollection())._new();
-_st(_st($Package())._sortedClasses_(_st(_st($Smalltalk())._current())._classes()))._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st([each,_st(each)._class()])._do_((function(aClass){
-return smalltalk.withContext(function($ctx3) {
-map=_st($Dictionary())._new();
-map;
-_st(aClass)._protocolsDo_((function(category,methods){
-return smalltalk.withContext(function($ctx4) {
-$1=_st(category).__eq("*".__comma(name));
-if(smalltalk.assert($1)){
-return _st(map)._at_put_(category,methods);
-};
-}, function($ctx4) {$ctx4.fillBlock({category:category,methods:methods},$ctx3)})}));
-return _st(result)._addAll_(_st(_st(_st(map)._keys())._sorted_((function(a,b){
-return smalltalk.withContext(function($ctx4) {
-return _st(a).__lt_eq(b);
-}, function($ctx4) {$ctx4.fillBlock({a:a,b:b},$ctx3)})})))._collect_((function(category){
-return smalltalk.withContext(function($ctx4) {
-return _st($MethodCategory())._name_theClass_methods_(category,aClass,_st(map)._at_(category));
-}, function($ctx4) {$ctx4.fillBlock({category:category},$ctx3)})})));
-}, function($ctx3) {$ctx3.fillBlock({aClass:aClass},$ctx2)})}));
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-$2=result;
-return $2;
-}, function($ctx1) {$ctx1.fill(self,"extensionCategoriesOfPackage:",{aPackage:aPackage,name:name,map:map,result:result},smalltalk.ChunkExporter)})},
-messageSends: ["name", "new", "do:", "protocolsDo:", "ifTrue:", "at:put:", "=", ",", "addAll:", "collect:", "name:theClass:methods:", "at:", "sorted:", "<=", "keys", "class", "sortedClasses:", "classes", "current"]}),
-smalltalk.ChunkExporter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "methodsOfCategory:",
-fn: function (aCategory){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(aCategory)._methods())._sorted_((function(a,b){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(a)._selector()).__lt_eq(_st(b)._selector());
-}, function($ctx2) {$ctx2.fillBlock({a:a,b:b},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"methodsOfCategory:",{aCategory:aCategory},smalltalk.ChunkExporter)})},
-messageSends: ["sorted:", "<=", "selector", "methods"]}),
-smalltalk.ChunkExporter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "ownCategoriesOfClass:",
-fn: function (aClass){
-var self=this;
-var map;
-function $Dictionary(){return smalltalk.Dictionary||(typeof Dictionary=="undefined"?nil:Dictionary)}
-function $MethodCategory(){return smalltalk.MethodCategory||(typeof MethodCategory=="undefined"?nil:MethodCategory)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-map=_st($Dictionary())._new();
-_st(aClass)._protocolsDo_((function(each,methods){
-return smalltalk.withContext(function($ctx2) {
-$1=_st(each)._match_("^\x5c*");
-if(! smalltalk.assert($1)){
-return _st(map)._at_put_(each,methods);
-};
-}, function($ctx2) {$ctx2.fillBlock({each:each,methods:methods},$ctx1)})}));
-$2=_st(_st(_st(map)._keys())._sorted_((function(a,b){
-return smalltalk.withContext(function($ctx2) {
-return _st(a).__lt_eq(b);
-}, function($ctx2) {$ctx2.fillBlock({a:a,b:b},$ctx1)})})))._collect_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st($MethodCategory())._name_theClass_methods_(each,aClass,_st(map)._at_(each));
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return $2;
-}, function($ctx1) {$ctx1.fill(self,"ownCategoriesOfClass:",{aClass:aClass,map:map},smalltalk.ChunkExporter)})},
-messageSends: ["new", "protocolsDo:", "ifFalse:", "at:put:", "match:", "collect:", "name:theClass:methods:", "at:", "sorted:", "<=", "keys"]}),
-smalltalk.ChunkExporter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "ownCategoriesOfMetaClass:",
-fn: function (aClass){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._ownCategoriesOfClass_(_st(aClass)._class());
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"ownCategoriesOfMetaClass:",{aClass:aClass},smalltalk.ChunkExporter)})},
-messageSends: ["ownCategoriesOfClass:", "class"]}),
-smalltalk.ChunkExporter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "ownMethodProtocolsOfClass:",
-fn: function (aClass){
-var self=this;
-function $ExportMethodProtocol(){return smalltalk.ExportMethodProtocol||(typeof ExportMethodProtocol=="undefined"?nil:ExportMethodProtocol)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(aClass)._ownProtocols())._collect_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st($ExportMethodProtocol())._name_theClass_(each,aClass);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"ownMethodProtocolsOfClass:",{aClass:aClass},smalltalk.ChunkExporter)})},
-messageSends: ["collect:", "name:theClass:", "ownProtocols"]}),
-smalltalk.ChunkExporter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "recipe",
-fn: function (){
-var self=this;
-var exportCategoryRecipe;
-function $PluggableExporter(){return smalltalk.PluggableExporter||(typeof PluggableExporter=="undefined"?nil:PluggableExporter)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-exportCategoryRecipe=[self.__minus_gt("exportCategoryPrologueOf:on:"),[self.__minus_gt("methodsOfCategory:"),self.__minus_gt("exportMethod:on:")],self.__minus_gt("exportCategoryEpilogueOf:on:")];
-$1=[self.__minus_gt("exportPackageDefinitionOf:on:"),[_st($PluggableExporter()).__minus_gt("ownClassesOfPackage:"),self.__minus_gt("exportDefinitionOf:on:"),_st([self.__minus_gt("ownCategoriesOfClass:")]).__comma(exportCategoryRecipe),self.__minus_gt("exportMetaDefinitionOf:on:"),_st([self.__minus_gt("ownCategoriesOfMetaClass:")]).__comma(exportCategoryRecipe)],_st([self.__minus_gt("extensionCategoriesOfPackage:")]).__comma(exportCategoryRecipe)];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"recipe",{exportCategoryRecipe:exportCategoryRecipe},smalltalk.ChunkExporter)})},
-messageSends: ["->", ","]}),
-smalltalk.ChunkExporter);
-
-
-
-smalltalk.addClass('Exporter', smalltalk.AbstractExporter, [], 'Importer-Exporter');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "amdRecipe",
-fn: function (){
-var self=this;
-var result;
-function $AmdExporter(){return smalltalk.AmdExporter||(typeof AmdExporter=="undefined"?nil:AmdExporter)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-result=self._recipe();
-_st(_st(result)._first())._key_($AmdExporter());
-_st(_st(result)._last())._key_($AmdExporter());
-$1=result;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"amdRecipe",{result:result},smalltalk.Exporter)})},
-messageSends: ["recipe", "key:", "first", "last"]}),
-smalltalk.Exporter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "classNameFor:",
-fn: function (aClass){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=_st(aClass)._isMetaclass();
-if(smalltalk.assert($2)){
-$1=_st(_st(_st(aClass)._instanceClass())._name()).__comma(".klass");
-} else {
-$3=_st(aClass)._isNil();
-if(smalltalk.assert($3)){
-$1="nil";
-} else {
-$1=_st(aClass)._name();
-};
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"classNameFor:",{aClass:aClass},smalltalk.Exporter)})},
-messageSends: ["ifTrue:ifFalse:", ",", "name", "instanceClass", "isNil", "isMetaclass"]}),
-smalltalk.Exporter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "exportDefinitionOf:on:",
-fn: function (aClass,aStream){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4,$5,$6,$7;
-$1=aStream;
-_st($1)._lf();
-_st($1)._nextPutAll_("smalltalk.addClass(");
-_st($1)._nextPutAll_(_st("'".__comma(self._classNameFor_(aClass))).__comma("', "));
-_st($1)._nextPutAll_("smalltalk.".__comma(self._classNameFor_(_st(aClass)._superclass())));
-$2=_st($1)._nextPutAll_(", [");
-_st(_st(aClass)._instanceVariableNames())._do_separatedBy_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(aStream)._nextPutAll_(_st("'".__comma(each)).__comma("'"));
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}),(function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(aStream)._nextPutAll_(", ");
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-$3=aStream;
-_st($3)._nextPutAll_("], '");
-_st($3)._nextPutAll_(_st(_st(aClass)._category()).__comma("'"));
-$4=_st($3)._nextPutAll_(");");
-$5=_st(_st(aClass)._comment())._notEmpty();
-if(smalltalk.assert($5)){
-$6=aStream;
-_st($6)._lf();
-_st($6)._nextPutAll_("smalltalk.");
-_st($6)._nextPutAll_(self._classNameFor_(aClass));
-_st($6)._nextPutAll_(".comment=");
-_st($6)._nextPutAll_(_st(_st(aClass)._comment())._asJavascript());
-$7=_st($6)._nextPutAll_(";");
-$7;
-};
-_st(aStream)._lf();
-return self}, function($ctx1) {$ctx1.fill(self,"exportDefinitionOf:on:",{aClass:aClass,aStream:aStream},smalltalk.Exporter)})},
-messageSends: ["lf", "nextPutAll:", ",", "classNameFor:", "superclass", "do:separatedBy:", "instanceVariableNames", "category", "ifTrue:", "asJavascript", "comment", "notEmpty"]}),
-smalltalk.Exporter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "exportMetaDefinitionOf:on:",
-fn: function (aClass,aStream){
-var self=this;
-function $String(){return smalltalk.String||(typeof String=="undefined"?nil:String)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3;
-_st(aStream)._lf();
-$1=_st(_st(_st(aClass)._class())._instanceVariableNames())._isEmpty();
-if(! smalltalk.assert($1)){
-$2=aStream;
-_st($2)._nextPutAll_("smalltalk.".__comma(self._classNameFor_(_st(aClass)._class())));
-$3=_st($2)._nextPutAll_(".iVarNames = [");
-$3;
-_st(_st(_st(aClass)._class())._instanceVariableNames())._do_separatedBy_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(aStream)._nextPutAll_(_st("'".__comma(each)).__comma("'"));
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}),(function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(aStream)._nextPutAll_(",");
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-_st(aStream)._nextPutAll_("];".__comma(_st($String())._lf()));
-};
-return self}, function($ctx1) {$ctx1.fill(self,"exportMetaDefinitionOf:on:",{aClass:aClass,aStream:aStream},smalltalk.Exporter)})},
-messageSends: ["lf", "ifFalse:", "nextPutAll:", ",", "classNameFor:", "class", "do:separatedBy:", "instanceVariableNames", "isEmpty"]}),
-smalltalk.Exporter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "exportMethod:on:",
-fn: function (aMethod,aStream){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4;
-$1=aStream;
-_st($1)._nextPutAll_("smalltalk.addMethod(");
-_st($1)._lf();
-_st($1)._nextPutAll_("smalltalk.method({");
-_st($1)._lf();
-_st($1)._nextPutAll_(_st("selector: ".__comma(_st(_st(aMethod)._selector())._asJavascript())).__comma(","));
-_st($1)._lf();
-_st($1)._nextPutAll_(_st("category: '".__comma(_st(aMethod)._category())).__comma("',"));
-_st($1)._lf();
-_st($1)._nextPutAll_(_st("fn: ".__comma(_st(_st(aMethod)._fn())._compiledSource())).__comma(","));
-_st($1)._lf();
-_st($1)._nextPutAll_(_st("args: ".__comma(_st(_st(aMethod)._arguments())._asJavascript())).__comma(","));
-_st($1)._lf();
-_st($1)._nextPutAll_(_st("source: ".__comma(_st(_st(aMethod)._source())._asJavascript())).__comma(","));
-_st($1)._lf();
-_st($1)._nextPutAll_(_st("messageSends: ".__comma(_st(_st(aMethod)._messageSends())._asJavascript())).__comma(","));
-_st($1)._lf();
-$2=_st($1)._nextPutAll_("referencedClasses: ".__comma(_st(_st(aMethod)._referencedClasses())._asJavascript()));
-$3=aStream;
-_st($3)._lf();
-_st($3)._nextPutAll_("}),");
-_st($3)._lf();
-_st($3)._nextPutAll_("smalltalk.".__comma(self._classNameFor_(_st(aMethod)._methodClass())));
-_st($3)._nextPutAll_(");");
-_st($3)._lf();
-$4=_st($3)._lf();
-return self}, function($ctx1) {$ctx1.fill(self,"exportMethod:on:",{aMethod:aMethod,aStream:aStream},smalltalk.Exporter)})},
-messageSends: ["nextPutAll:", "lf", ",", "asJavascript", "selector", "category", "compiledSource", "fn", "arguments", "source", "messageSends", "referencedClasses", "classNameFor:", "methodClass"]}),
-smalltalk.Exporter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "exportPackage:on:",
-fn: function (aPackage,aStream){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=self;
-_st($1)._exportPackagePrologueOf_on_(aPackage,aStream);
-_st($1)._exportPackageDefinitionOf_on_(aPackage,aStream);
-$2=_st($1)._exportPackageTransportOf_on_(aPackage,aStream);
-_st(_st(aPackage)._sortedClasses())._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-self._exportDefinitionOf_on_(each,aStream);
-_st(_st(each)._ownMethods())._do_((function(method){
-return smalltalk.withContext(function($ctx3) {
-return self._exportMethod_on_(method,aStream);
-}, function($ctx3) {$ctx3.fillBlock({method:method},$ctx2)})}));
-self._exportMetaDefinitionOf_on_(each,aStream);
-return _st(_st(_st(each)._class())._ownMethods())._do_((function(method){
-return smalltalk.withContext(function($ctx3) {
-return self._exportMethod_on_(method,aStream);
-}, function($ctx3) {$ctx3.fillBlock({method:method},$ctx2)})}));
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-_st(self._extensionMethodsOfPackage_(aPackage))._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return self._exportMethod_on_(each,aStream);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-self._exportPackageEpilogueOf_on_(aPackage,aStream);
-return self}, function($ctx1) {$ctx1.fill(self,"exportPackage:on:",{aPackage:aPackage,aStream:aStream},smalltalk.Exporter)})},
-messageSends: ["exportPackagePrologueOf:on:", "exportPackageDefinitionOf:on:", "exportPackageTransportOf:on:", "do:", "exportDefinitionOf:on:", "exportMethod:on:", "ownMethods", "exportMetaDefinitionOf:on:", "class", "sortedClasses", "extensionMethodsOfPackage:", "exportPackageEpilogueOf:on:"]}),
-smalltalk.Exporter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "exportPackageDefinitionOf:on:",
-fn: function (aPackage,aStream){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=aStream;
-_st($1)._nextPutAll_("smalltalk.addPackage(");
-_st($1)._nextPutAll_(_st("'".__comma(_st(aPackage)._name())).__comma("');"));
-$2=_st($1)._lf();
-return self}, function($ctx1) {$ctx1.fill(self,"exportPackageDefinitionOf:on:",{aPackage:aPackage,aStream:aStream},smalltalk.Exporter)})},
-messageSends: ["nextPutAll:", ",", "name", "lf"]}),
-smalltalk.Exporter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "exportPackageEpilogueOf:on:",
-fn: function (aPackage,aStream){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=aStream;
-_st($1)._nextPutAll_("})(global_smalltalk,global_nil,global__st);");
-$2=_st($1)._lf();
-return self}, function($ctx1) {$ctx1.fill(self,"exportPackageEpilogueOf:on:",{aPackage:aPackage,aStream:aStream},smalltalk.Exporter)})},
-messageSends: ["nextPutAll:", "lf"]}),
-smalltalk.Exporter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "exportPackagePrologueOf:on:",
-fn: function (aPackage,aStream){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=aStream;
-_st($1)._nextPutAll_("(function(smalltalk,nil,_st){");
-$2=_st($1)._lf();
-return self}, function($ctx1) {$ctx1.fill(self,"exportPackagePrologueOf:on:",{aPackage:aPackage,aStream:aStream},smalltalk.Exporter)})},
-messageSends: ["nextPutAll:", "lf"]}),
-smalltalk.Exporter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "exportPackageTransportOf:on:",
-fn: function (aPackage,aStream){
-var self=this;
-var json;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3;
-json=_st(aPackage)._transportJson();
-$1=_st(json).__eq("null");
-if(! smalltalk.assert($1)){
-$2=aStream;
-_st($2)._nextPutAll_("smalltalk.packages[");
-_st($2)._nextPutAll_(_st(_st(aPackage)._name())._asJavascript());
-_st($2)._nextPutAll_("].transport = ");
-_st($2)._nextPutAll_(json);
-_st($2)._nextPutAll_(";");
-$3=_st($2)._lf();
-$3;
-};
-return self}, function($ctx1) {$ctx1.fill(self,"exportPackageTransportOf:on:",{aPackage:aPackage,aStream:aStream,json:json},smalltalk.Exporter)})},
-messageSends: ["transportJson", "ifFalse:", "nextPutAll:", "asJavascript", "name", "lf", "="]}),
-smalltalk.Exporter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "ownMethodsOfClass:",
-fn: function (aClass){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(_st(_st(aClass)._methodDictionary())._values())._sorted_((function(a,b){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(a)._selector()).__lt_eq(_st(b)._selector());
-}, function($ctx2) {$ctx2.fillBlock({a:a,b:b},$ctx1)})})))._reject_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(each)._category())._match_("^\x5c*");
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"ownMethodsOfClass:",{aClass:aClass},smalltalk.Exporter)})},
-messageSends: ["reject:", "match:", "category", "sorted:", "<=", "selector", "values", "methodDictionary"]}),
-smalltalk.Exporter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "ownMethodsOfMetaClass:",
-fn: function (aClass){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._ownMethodsOfClass_(_st(aClass)._class());
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"ownMethodsOfMetaClass:",{aClass:aClass},smalltalk.Exporter)})},
-messageSends: ["ownMethodsOfClass:", "class"]}),
-smalltalk.Exporter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "recipe",
-fn: function (){
-var self=this;
-function $PluggableExporter(){return smalltalk.PluggableExporter||(typeof PluggableExporter=="undefined"?nil:PluggableExporter)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=[self.__minus_gt("exportPackagePrologueOf:on:"),self.__minus_gt("exportPackageDefinitionOf:on:"),self.__minus_gt("exportPackageTransportOf:on:"),[_st($PluggableExporter()).__minus_gt("ownClassesOfPackage:"),self.__minus_gt("exportDefinitionOf:on:"),[self.__minus_gt("ownMethodsOfClass:"),self.__minus_gt("exportMethod:on:")],self.__minus_gt("exportMetaDefinitionOf:on:"),[self.__minus_gt("ownMethodsOfMetaClass:"),self.__minus_gt("exportMethod:on:")]],[self.__minus_gt("extensionMethodsOfPackage:"),self.__minus_gt("exportMethod:on:")],self.__minus_gt("exportPackageEpilogueOf:on:")];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"recipe",{},smalltalk.Exporter)})},
-messageSends: ["->"]}),
-smalltalk.Exporter);
-
-
-
-smalltalk.addClass('AmdExporter', smalltalk.Exporter, [], 'Importer-Exporter');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "amdNamesOfPackages:",
-fn: function (anArray){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(anArray)._select_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(each)._amdNamespace())._notNil();
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})})))._collect_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(_st(each)._amdNamespace()).__comma("/")).__comma(_st(each)._name());
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"amdNamesOfPackages:",{anArray:anArray},smalltalk.AmdExporter)})},
-messageSends: ["collect:", ",", "name", "amdNamespace", "select:", "notNil"]}),
-smalltalk.AmdExporter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "exportPackageEpilogueOf:on:",
-fn: function (aPackage,aStream){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=aStream;
-_st($1)._nextPutAll_("});");
-$2=_st($1)._lf();
-return self}, function($ctx1) {$ctx1.fill(self,"exportPackageEpilogueOf:on:",{aPackage:aPackage,aStream:aStream},smalltalk.AmdExporter)})},
-messageSends: ["nextPutAll:", "lf"]}),
-smalltalk.AmdExporter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "exportPackagePrologueOf:on:",
-fn: function (aPackage,aStream){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$4,$3,$5;
-$1=aStream;
-_st($1)._nextPutAll_("define(\x22");
-$2=$1;
-$4=_st(aPackage)._amdNamespace();
-if(($receiver = $4) == nil || $receiver == undefined){
-$3="amber";
-} else {
-$3=$4;
-};
-_st($2)._nextPutAll_($3);
-_st($1)._nextPutAll_("/");
-_st($1)._nextPutAll_(_st(aPackage)._name());
-_st($1)._nextPutAll_("\x22, ");
-_st($1)._nextPutAll_(_st(["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st"].__comma(self._amdNamesOfPackages_(_st(aPackage)._loadDependencies())))._asJavascript());
-_st($1)._nextPutAll_(", function(smalltalk,nil,_st){");
-$5=_st($1)._lf();
-return self}, function($ctx1) {$ctx1.fill(self,"exportPackagePrologueOf:on:",{aPackage:aPackage,aStream:aStream},smalltalk.AmdExporter)})},
-messageSends: ["nextPutAll:", "ifNil:", "amdNamespace", "name", "asJavascript", ",", "amdNamesOfPackages:", "loadDependencies", "lf"]}),
-smalltalk.AmdExporter);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "amdNamesOfPackages:",
-fn: function (anArray){
-var self=this;
-var deps,depNames;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(anArray)._select_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(each)._amdNamespace())._notNil();
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})})))._collect_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(_st(each)._amdNamespace()).__comma("/")).__comma(_st(each)._name());
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"amdNamesOfPackages:",{anArray:anArray,deps:deps,depNames:depNames},smalltalk.AmdExporter.klass)})},
-messageSends: ["collect:", ",", "name", "amdNamespace", "select:", "notNil"]}),
-smalltalk.AmdExporter.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "exportPackageEpilogueOf:on:",
-fn: function (aPackage,aStream){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=aStream;
-_st($1)._nextPutAll_("});");
-$2=_st($1)._lf();
-return self}, function($ctx1) {$ctx1.fill(self,"exportPackageEpilogueOf:on:",{aPackage:aPackage,aStream:aStream},smalltalk.AmdExporter.klass)})},
-messageSends: ["nextPutAll:", "lf"]}),
-smalltalk.AmdExporter.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "exportPackagePrologueOf:on:",
-fn: function (aPackage,aStream){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$4,$3,$5;
-$1=aStream;
-_st($1)._nextPutAll_("define(\x22");
-$2=$1;
-$4=_st(aPackage)._amdNamespace();
-if(($receiver = $4) == nil || $receiver == undefined){
-$3="amber";
-} else {
-$3=$4;
-};
-_st($2)._nextPutAll_($3);
-_st($1)._nextPutAll_("/");
-_st($1)._nextPutAll_(_st(aPackage)._name());
-_st($1)._nextPutAll_("\x22, ");
-_st($1)._nextPutAll_(_st(["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st"].__comma(self._amdNamesOfPackages_(_st(aPackage)._loadDependencies())))._asJavascript());
-_st($1)._nextPutAll_(", function(smalltalk,nil,_st){");
-$5=_st($1)._lf();
-return self}, function($ctx1) {$ctx1.fill(self,"exportPackagePrologueOf:on:",{aPackage:aPackage,aStream:aStream},smalltalk.AmdExporter.klass)})},
-messageSends: ["nextPutAll:", "ifNil:", "amdNamespace", "name", "asJavascript", ",", "amdNamesOfPackages:", "loadDependencies", "lf"]}),
-smalltalk.AmdExporter.klass);
-
-
-smalltalk.addClass('StrippedExporter', smalltalk.Exporter, [], 'Importer-Exporter');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "exportDefinitionOf:on:",
-fn: function (aClass,aStream){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4;
-$1=aStream;
-_st($1)._lf();
-_st($1)._nextPutAll_("smalltalk.addClass(");
-_st($1)._nextPutAll_(_st("'".__comma(self._classNameFor_(aClass))).__comma("', "));
-_st($1)._nextPutAll_("smalltalk.".__comma(self._classNameFor_(_st(aClass)._superclass())));
-$2=_st($1)._nextPutAll_(", [");
-_st(_st(aClass)._instanceVariableNames())._do_separatedBy_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(aStream)._nextPutAll_(_st("'".__comma(each)).__comma("'"));
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}),(function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(aStream)._nextPutAll_(", ");
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-$3=aStream;
-_st($3)._nextPutAll_("], '");
-_st($3)._nextPutAll_(_st(_st(aClass)._category()).__comma("'"));
-$4=_st($3)._nextPutAll_(");");
-_st(aStream)._lf();
-return self}, function($ctx1) {$ctx1.fill(self,"exportDefinitionOf:on:",{aClass:aClass,aStream:aStream},smalltalk.StrippedExporter)})},
-messageSends: ["lf", "nextPutAll:", ",", "classNameFor:", "superclass", "do:separatedBy:", "instanceVariableNames", "category"]}),
-smalltalk.StrippedExporter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "exportMethod:on:",
-fn: function (aMethod,aStream){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=aStream;
-_st($1)._nextPutAll_("smalltalk.addMethod(");
-_st($1)._lf();
-_st($1)._nextPutAll_("smalltalk.method({");
-_st($1)._lf();
-_st($1)._nextPutAll_(_st("selector: ".__comma(_st(_st(aMethod)._selector())._asJavascript())).__comma(","));
-_st($1)._lf();
-_st($1)._nextPutAll_(_st("fn: ".__comma(_st(_st(aMethod)._fn())._compiledSource())).__comma(","));
-_st($1)._lf();
-_st($1)._nextPutAll_("messageSends: ".__comma(_st(_st(aMethod)._messageSends())._asJavascript()));
-_st($1)._nextPutAll_("}),");
-_st($1)._lf();
-_st($1)._nextPutAll_("smalltalk.".__comma(self._classNameFor_(_st(aMethod)._methodClass())));
-_st($1)._nextPutAll_(");");
-_st($1)._lf();
-$2=_st($1)._lf();
-return self}, function($ctx1) {$ctx1.fill(self,"exportMethod:on:",{aMethod:aMethod,aStream:aStream},smalltalk.StrippedExporter)})},
-messageSends: ["nextPutAll:", "lf", ",", "asJavascript", "selector", "compiledSource", "fn", "messageSends", "classNameFor:", "methodClass"]}),
-smalltalk.StrippedExporter);
-
-
-
-smalltalk.addClass('ChunkParser', smalltalk.Object, ['stream'], 'Importer-Exporter');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "nextChunk",
-fn: function (){
-var self=this;
-var char,result,chunk;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3;
-var $early={};
-try {
-result=""._writeStream();
-_st((function(){
-return smalltalk.withContext(function($ctx2) {
-char=_st(self["@stream"])._next();
-char;
-return _st(char)._notNil();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._whileTrue_((function(){
-return smalltalk.withContext(function($ctx2) {
-$1=_st(char).__eq("!");
-if(smalltalk.assert($1)){
-$2=_st(_st(self["@stream"])._peek()).__eq("!");
-if(smalltalk.assert($2)){
-_st(self["@stream"])._next();
-} else {
-$3=_st(_st(result)._contents())._trimBoth();
-throw $early=[$3];
-};
-};
-return _st(result)._nextPut_(char);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return nil;
-}
-catch(e) {if(e===$early)return e[0]; throw e}
-}, function($ctx1) {$ctx1.fill(self,"nextChunk",{char:char,result:result,chunk:chunk},smalltalk.ChunkParser)})},
-messageSends: ["writeStream", "whileTrue:", "ifTrue:", "ifTrue:ifFalse:", "next", "trimBoth", "contents", "=", "peek", "nextPut:", "notNil"]}),
-smalltalk.ChunkParser);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "stream:",
-fn: function (aStream){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@stream"]=aStream;
-return self}, function($ctx1) {$ctx1.fill(self,"stream:",{aStream:aStream},smalltalk.ChunkParser)})},
-messageSends: []}),
-smalltalk.ChunkParser);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "on:",
-fn: function (aStream){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._new())._stream_(aStream);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"on:",{aStream:aStream},smalltalk.ChunkParser.klass)})},
-messageSends: ["stream:", "new"]}),
-smalltalk.ChunkParser.klass);
-
-
-smalltalk.addClass('ExportMethodProtocol', smalltalk.Object, ['name', 'theClass'], 'Importer-Exporter');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "methods",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._theClass())._methodsInProtocol_(self._name());
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"methods",{},smalltalk.ExportMethodProtocol)})},
-messageSends: ["methodsInProtocol:", "name", "theClass"]}),
-smalltalk.ExportMethodProtocol);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "name",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@name"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"name",{},smalltalk.ExportMethodProtocol)})},
-messageSends: []}),
-smalltalk.ExportMethodProtocol);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "name:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@name"]=aString;
-return self}, function($ctx1) {$ctx1.fill(self,"name:",{aString:aString},smalltalk.ExportMethodProtocol)})},
-messageSends: []}),
-smalltalk.ExportMethodProtocol);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "sortedMethods",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._methods())._sorted_((function(a,b){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(a)._selector()).__lt_eq(_st(b)._selector());
-}, function($ctx2) {$ctx2.fillBlock({a:a,b:b},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"sortedMethods",{},smalltalk.ExportMethodProtocol)})},
-messageSends: ["sorted:", "<=", "selector", "methods"]}),
-smalltalk.ExportMethodProtocol);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "theClass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@theClass"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"theClass",{},smalltalk.ExportMethodProtocol)})},
-messageSends: []}),
-smalltalk.ExportMethodProtocol);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "theClass:",
-fn: function (aClass){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@theClass"]=aClass;
-return self}, function($ctx1) {$ctx1.fill(self,"theClass:",{aClass:aClass},smalltalk.ExportMethodProtocol)})},
-messageSends: []}),
-smalltalk.ExportMethodProtocol);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "name:theClass:",
-fn: function (aString,aClass){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=self._new();
-_st($2)._name_(aString);
-_st($2)._theClass_(aClass);
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"name:theClass:",{aString:aString,aClass:aClass},smalltalk.ExportMethodProtocol.klass)})},
-messageSends: ["name:", "new", "theClass:", "yourself"]}),
-smalltalk.ExportMethodProtocol.klass);
-
-
-smalltalk.addClass('ExportRecipeInterpreter', smalltalk.Object, [], 'Importer-Exporter');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "interpret:for:on:",
-fn: function (aRecipe,anObject,aStream){
-var self=this;
-var recipeStream;
-return smalltalk.withContext(function($ctx1) { 
-recipeStream=_st(aRecipe)._readStream();
-_st((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(recipeStream)._atEnd();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._whileFalse_((function(){
-return smalltalk.withContext(function($ctx2) {
-return self._interpretStep_for_on_(_st(recipeStream)._next(),anObject,aStream);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"interpret:for:on:",{aRecipe:aRecipe,anObject:anObject,aStream:aStream,recipeStream:recipeStream},smalltalk.ExportRecipeInterpreter)})},
-messageSends: ["readStream", "whileFalse:", "interpretStep:for:on:", "next", "atEnd"]}),
-smalltalk.ExportRecipeInterpreter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "interpretStep:for:on:",
-fn: function (aRecipeStep,anObject,aStream){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st(_st(aRecipeStep)._value()).__eq_eq(aRecipeStep);
-if(smalltalk.assert($1)){
-$2=self._interpretSubRecipe_for_on_(aRecipeStep,anObject,aStream);
-return $2;
-};
-_st(_st(aRecipeStep)._key())._perform_withArguments_(_st(aRecipeStep)._value(),[anObject,aStream]);
-return self}, function($ctx1) {$ctx1.fill(self,"interpretStep:for:on:",{aRecipeStep:aRecipeStep,anObject:anObject,aStream:aStream},smalltalk.ExportRecipeInterpreter)})},
-messageSends: ["ifTrue:", "interpretSubRecipe:for:on:", "==", "value", "perform:withArguments:", "key"]}),
-smalltalk.ExportRecipeInterpreter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "interpretSubRecipe:for:on:",
-fn: function (aRecipe,anObject,aStream){
-var self=this;
-var selection;
-return smalltalk.withContext(function($ctx1) { 
-selection=_st(_st(_st(aRecipe)._first())._key())._perform_withArguments_(_st(_st(aRecipe)._first())._value(),[anObject]);
-_st(selection)._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return self._interpret_for_on_(_st(aRecipe)._allButFirst(),each,aStream);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"interpretSubRecipe:for:on:",{aRecipe:aRecipe,anObject:anObject,aStream:aStream,selection:selection},smalltalk.ExportRecipeInterpreter)})},
-messageSends: ["perform:withArguments:", "value", "first", "key", "do:", "interpret:for:on:", "allButFirst"]}),
-smalltalk.ExportRecipeInterpreter);
-
-
-
-smalltalk.addClass('Importer', smalltalk.Object, [], 'Importer-Exporter');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "import:",
-fn: function (aStream){
-var self=this;
-var chunk,result,parser,lastEmpty;
-function $ChunkParser(){return smalltalk.ChunkParser||(typeof ChunkParser=="undefined"?nil:ChunkParser)}
-function $Compiler(){return smalltalk.Compiler||(typeof Compiler=="undefined"?nil:Compiler)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-parser=_st($ChunkParser())._on_(aStream);
-lastEmpty=false;
-_st((function(){
-return smalltalk.withContext(function($ctx2) {
-chunk=_st(parser)._nextChunk();
-chunk;
-return _st(chunk)._isNil();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._whileFalse_((function(){
-return smalltalk.withContext(function($ctx2) {
-$1=_st(chunk)._isEmpty();
-if(smalltalk.assert($1)){
-lastEmpty=true;
-return lastEmpty;
-} else {
-result=_st(_st($Compiler())._new())._evaluateExpression_(chunk);
-result;
-$2=lastEmpty;
-if(smalltalk.assert($2)){
-lastEmpty=false;
-lastEmpty;
-return _st(result)._scanFrom_(parser);
-};
-};
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"import:",{aStream:aStream,chunk:chunk,result:result,parser:parser,lastEmpty:lastEmpty},smalltalk.Importer)})},
-messageSends: ["on:", "whileFalse:", "ifTrue:ifFalse:", "evaluateExpression:", "new", "ifTrue:", "scanFrom:", "isEmpty", "nextChunk", "isNil"]}),
-smalltalk.Importer);
-
-
-
-smalltalk.addClass('MethodCategory', smalltalk.Object, ['methods', 'name', 'theClass'], 'Importer-Exporter');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "methods",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@methods"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"methods",{},smalltalk.MethodCategory)})},
-messageSends: []}),
-smalltalk.MethodCategory);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "methods:",
-fn: function (aCollection){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@methods"]=aCollection;
-return self}, function($ctx1) {$ctx1.fill(self,"methods:",{aCollection:aCollection},smalltalk.MethodCategory)})},
-messageSends: []}),
-smalltalk.MethodCategory);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "name",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@name"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"name",{},smalltalk.MethodCategory)})},
-messageSends: []}),
-smalltalk.MethodCategory);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "name:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@name"]=aString;
-return self}, function($ctx1) {$ctx1.fill(self,"name:",{aString:aString},smalltalk.MethodCategory)})},
-messageSends: []}),
-smalltalk.MethodCategory);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "theClass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@theClass"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"theClass",{},smalltalk.MethodCategory)})},
-messageSends: []}),
-smalltalk.MethodCategory);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "theClass:",
-fn: function (aClass){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@theClass"]=aClass;
-return self}, function($ctx1) {$ctx1.fill(self,"theClass:",{aClass:aClass},smalltalk.MethodCategory)})},
-messageSends: []}),
-smalltalk.MethodCategory);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "name:theClass:methods:",
-fn: function (aString,aClass,anArray){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=self._new();
-_st($2)._name_(aString);
-_st($2)._theClass_(aClass);
-_st($2)._methods_(anArray);
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"name:theClass:methods:",{aString:aString,aClass:aClass,anArray:anArray},smalltalk.MethodCategory.klass)})},
-messageSends: ["name:", "new", "theClass:", "methods:", "yourself"]}),
-smalltalk.MethodCategory.klass);
-
-
-smalltalk.addClass('PackageHandler', smalltalk.InterfacingObject, [], 'Importer-Exporter');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "ajaxPutAt:data:",
-fn: function (aURL,aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._ajax_(smalltalk.HashedCollection._from_(["url".__minus_gt(aURL),"type".__minus_gt("PUT"),"data".__minus_gt(aString),"contentType".__minus_gt("text/plain;charset=UTF-8"),"error".__minus_gt((function(xhr){
-return smalltalk.withContext(function($ctx2) {
-return self._error_(_st(_st(_st("Commiting ".__comma(aURL)).__comma(" failed with reason: \x22")).__comma(_st(xhr)._responseText())).__comma("\x22"));
-}, function($ctx2) {$ctx2.fillBlock({xhr:xhr},$ctx1)})}))]));
-return self}, function($ctx1) {$ctx1.fill(self,"ajaxPutAt:data:",{aURL:aURL,aString:aString},smalltalk.PackageHandler)})},
-messageSends: ["ajax:", "->", "error:", ",", "responseText"]}),
-smalltalk.PackageHandler);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "commit:",
-fn: function (aPackage){
-var self=this;
-function $PluggableExporter(){return smalltalk.PluggableExporter||(typeof PluggableExporter=="undefined"?nil:PluggableExporter)}
-function $String(){return smalltalk.String||(typeof String=="undefined"?nil:String)}
-return smalltalk.withContext(function($ctx1) { 
-_st(self._commitChannels())._do_displayingProgress_((function(commitStrategyFactory){
-var fileContents,commitStrategy;
-return smalltalk.withContext(function($ctx2) {
-commitStrategy=_st(commitStrategyFactory)._value_(aPackage);
-commitStrategy;
-fileContents=_st($String())._streamContents_((function(stream){
-return smalltalk.withContext(function($ctx3) {
-return _st(_st($PluggableExporter())._forRecipe_(_st(commitStrategy)._key()))._exportPackage_on_(aPackage,stream);
-}, function($ctx3) {$ctx3.fillBlock({stream:stream},$ctx2)})}));
-fileContents;
-return self._ajaxPutAt_data_(_st(commitStrategy)._value(),fileContents);
-}, function($ctx2) {$ctx2.fillBlock({commitStrategyFactory:commitStrategyFactory,fileContents:fileContents,commitStrategy:commitStrategy},$ctx1)})}),"Committing package ".__comma(_st(aPackage)._name()));
-return self}, function($ctx1) {$ctx1.fill(self,"commit:",{aPackage:aPackage},smalltalk.PackageHandler)})},
-messageSends: ["do:displayingProgress:", "value:", "streamContents:", "exportPackage:on:", "forRecipe:", "key", "ajaxPutAt:data:", "value", ",", "name", "commitChannels"]}),
-smalltalk.PackageHandler);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "commitChannels",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._subclassResponsibility();
-return self}, function($ctx1) {$ctx1.fill(self,"commitChannels",{},smalltalk.PackageHandler)})},
-messageSends: ["subclassResponsibility"]}),
-smalltalk.PackageHandler);
-
-
-smalltalk.PackageHandler.klass.iVarNames = ['registry'];
-smalltalk.addMethod(
-smalltalk.method({
-selector: "classRegisteredFor:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self["@registry"])._at_(aString);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"classRegisteredFor:",{aString:aString},smalltalk.PackageHandler.klass)})},
-messageSends: ["at:"]}),
-smalltalk.PackageHandler.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "for:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._classRegisteredFor_(aString))._new();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"for:",{aString:aString},smalltalk.PackageHandler.klass)})},
-messageSends: ["new", "classRegisteredFor:"]}),
-smalltalk.PackageHandler.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "initialize",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-smalltalk.PackageHandler.klass.superclass.fn.prototype._initialize.apply(_st(self), []);
-self["@registry"]=smalltalk.HashedCollection._from_([]);
-return self}, function($ctx1) {$ctx1.fill(self,"initialize",{},smalltalk.PackageHandler.klass)})},
-messageSends: ["initialize"]}),
-smalltalk.PackageHandler.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "register:for:",
-fn: function (aClass,aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self["@registry"])._at_put_(aString,aClass);
-return self}, function($ctx1) {$ctx1.fill(self,"register:for:",{aClass:aClass,aString:aString},smalltalk.PackageHandler.klass)})},
-messageSends: ["at:put:"]}),
-smalltalk.PackageHandler.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "registerFor:",
-fn: function (aString){
-var self=this;
-function $PackageHandler(){return smalltalk.PackageHandler||(typeof PackageHandler=="undefined"?nil:PackageHandler)}
-return smalltalk.withContext(function($ctx1) { 
-_st($PackageHandler())._register_for_(self,aString);
-return self}, function($ctx1) {$ctx1.fill(self,"registerFor:",{aString:aString},smalltalk.PackageHandler.klass)})},
-messageSends: ["register:for:"]}),
-smalltalk.PackageHandler.klass);
-
-
-smalltalk.addClass('AmdPackageHandler', smalltalk.PackageHandler, [], 'Importer-Exporter');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "commitChannels",
-fn: function (){
-var self=this;
-function $Exporter(){return smalltalk.Exporter||(typeof Exporter=="undefined"?nil:Exporter)}
-function $StrippedExporter(){return smalltalk.StrippedExporter||(typeof StrippedExporter=="undefined"?nil:StrippedExporter)}
-function $ChunkExporter(){return smalltalk.ChunkExporter||(typeof ChunkExporter=="undefined"?nil:ChunkExporter)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=[(function(pkg){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(_st($Exporter())._default())._amdRecipe()).__minus_gt(_st(_st(_st(_st(pkg)._commitPathJs()).__comma("/")).__comma(_st(pkg)._name())).__comma(".js"));
-}, function($ctx2) {$ctx2.fillBlock({pkg:pkg},$ctx1)})}),(function(pkg){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(_st($StrippedExporter())._default())._amdRecipe()).__minus_gt(_st(_st(_st(_st(pkg)._commitPathJs()).__comma("/")).__comma(_st(pkg)._name())).__comma(".deploy.js"));
-}, function($ctx2) {$ctx2.fillBlock({pkg:pkg},$ctx1)})}),(function(pkg){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(_st($ChunkExporter())._default())._recipe()).__minus_gt(_st(_st(_st(_st(pkg)._commitPathSt()).__comma("/")).__comma(_st(pkg)._name())).__comma(".st"));
-}, function($ctx2) {$ctx2.fillBlock({pkg:pkg},$ctx1)})})];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"commitChannels",{},smalltalk.AmdPackageHandler)})},
-messageSends: ["->", ",", "name", "commitPathJs", "amdRecipe", "default", "commitPathSt", "recipe"]}),
-smalltalk.AmdPackageHandler);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "commitPathJsFor:",
-fn: function (aPackage){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._toUrl_(self._namespaceFor_(aPackage));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"commitPathJsFor:",{aPackage:aPackage},smalltalk.AmdPackageHandler)})},
-messageSends: ["toUrl:", "namespaceFor:"]}),
-smalltalk.AmdPackageHandler);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "commitPathStFor:",
-fn: function (aPackage){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._toUrl_(_st(self._namespaceFor_(aPackage)).__comma("/_source"));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"commitPathStFor:",{aPackage:aPackage},smalltalk.AmdPackageHandler)})},
-messageSends: ["toUrl:", ",", "namespaceFor:"]}),
-smalltalk.AmdPackageHandler);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "namespaceFor:",
-fn: function (aPackage){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$4,$1;
-$2=_st(aPackage)._amdNamespace();
-if(($receiver = $2) == nil || $receiver == undefined){
-$3=aPackage;
-_st($3)._amdNamespace_(_st(self._class())._defaultNamespace());
-$4=_st($3)._amdNamespace();
-$1=$4;
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"namespaceFor:",{aPackage:aPackage},smalltalk.AmdPackageHandler)})},
-messageSends: ["ifNil:", "amdNamespace:", "defaultNamespace", "class", "amdNamespace"]}),
-smalltalk.AmdPackageHandler);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "toUrl:",
-fn: function (aString){
-var self=this;
-function $Smalltalk(){return smalltalk.Smalltalk||(typeof Smalltalk=="undefined"?nil:Smalltalk)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=_st(_st($Smalltalk())._current())._amdRequire();
-if(($receiver = $2) == nil || $receiver == undefined){
-$1=self._error_("AMD loader not present");
-} else {
-var require;
-require=$receiver;
-$1=_st(_st(require)._basicAt_("toUrl"))._value_(aString);
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"toUrl:",{aString:aString},smalltalk.AmdPackageHandler)})},
-messageSends: ["ifNil:ifNotNil:", "error:", "value:", "basicAt:", "amdRequire", "current"]}),
-smalltalk.AmdPackageHandler);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "defaultNamespace",
-fn: function (){
-var self=this;
-function $Smalltalk(){return smalltalk.Smalltalk||(typeof Smalltalk=="undefined"?nil:Smalltalk)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st($Smalltalk())._current())._defaultAMDNamespace();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"defaultNamespace",{},smalltalk.AmdPackageHandler.klass)})},
-messageSends: ["defaultAMDNamespace", "current"]}),
-smalltalk.AmdPackageHandler.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "defaultNamespace:",
-fn: function (aString){
-var self=this;
-function $Smalltalk(){return smalltalk.Smalltalk||(typeof Smalltalk=="undefined"?nil:Smalltalk)}
-return smalltalk.withContext(function($ctx1) { 
-_st(_st($Smalltalk())._current())._defaultAMDNamespace_(aString);
-return self}, function($ctx1) {$ctx1.fill(self,"defaultNamespace:",{aString:aString},smalltalk.AmdPackageHandler.klass)})},
-messageSends: ["defaultAMDNamespace:", "current"]}),
-smalltalk.AmdPackageHandler.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "initialize",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-smalltalk.AmdPackageHandler.klass.superclass.fn.prototype._initialize.apply(_st(self), []);
-self._registerFor_("amd");
-return self}, function($ctx1) {$ctx1.fill(self,"initialize",{},smalltalk.AmdPackageHandler.klass)})},
-messageSends: ["initialize", "registerFor:"]}),
-smalltalk.AmdPackageHandler.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "resetCommitPaths",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@defaultNamespace"]=nil;
-return self}, function($ctx1) {$ctx1.fill(self,"resetCommitPaths",{},smalltalk.AmdPackageHandler.klass)})},
-messageSends: []}),
-smalltalk.AmdPackageHandler.klass);
-
-
-smalltalk.addClass('LegacyPackageHandler', smalltalk.PackageHandler, [], 'Importer-Exporter');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "commitChannels",
-fn: function (){
-var self=this;
-function $Exporter(){return smalltalk.Exporter||(typeof Exporter=="undefined"?nil:Exporter)}
-function $StrippedExporter(){return smalltalk.StrippedExporter||(typeof StrippedExporter=="undefined"?nil:StrippedExporter)}
-function $ChunkExporter(){return smalltalk.ChunkExporter||(typeof ChunkExporter=="undefined"?nil:ChunkExporter)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=[(function(pkg){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(_st($Exporter())._default())._recipe()).__minus_gt(_st(_st(_st(_st(pkg)._commitPathJs()).__comma("/")).__comma(_st(pkg)._name())).__comma(".js"));
-}, function($ctx2) {$ctx2.fillBlock({pkg:pkg},$ctx1)})}),(function(pkg){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(_st($StrippedExporter())._default())._recipe()).__minus_gt(_st(_st(_st(_st(pkg)._commitPathJs()).__comma("/")).__comma(_st(pkg)._name())).__comma(".deploy.js"));
-}, function($ctx2) {$ctx2.fillBlock({pkg:pkg},$ctx1)})}),(function(pkg){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(_st($ChunkExporter())._default())._recipe()).__minus_gt(_st(_st(_st(_st(pkg)._commitPathSt()).__comma("/")).__comma(_st(pkg)._name())).__comma(".st"));
-}, function($ctx2) {$ctx2.fillBlock({pkg:pkg},$ctx1)})})];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"commitChannels",{},smalltalk.LegacyPackageHandler)})},
-messageSends: ["->", ",", "name", "commitPathJs", "recipe", "default", "commitPathSt"]}),
-smalltalk.LegacyPackageHandler);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "commitPathJsFor:",
-fn: function (aPackage){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._class())._defaultCommitPathJs();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"commitPathJsFor:",{aPackage:aPackage},smalltalk.LegacyPackageHandler)})},
-messageSends: ["defaultCommitPathJs", "class"]}),
-smalltalk.LegacyPackageHandler);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "commitPathStFor:",
-fn: function (aPackage){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._class())._defaultCommitPathSt();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"commitPathStFor:",{aPackage:aPackage},smalltalk.LegacyPackageHandler)})},
-messageSends: ["defaultCommitPathSt", "class"]}),
-smalltalk.LegacyPackageHandler);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "loadPackage:prefix:",
-fn: function (packageName,aString){
-var self=this;
-var url;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-url=_st(_st(_st("/".__comma(aString)).__comma("/js/")).__comma(packageName)).__comma(".js");
-self._ajax_(smalltalk.HashedCollection._from_(["url".__minus_gt(url),"type".__minus_gt("GET"),"dataType".__minus_gt("script"),"complete".__minus_gt((function(jqXHR,textStatus){
-return smalltalk.withContext(function($ctx2) {
-$1=_st(_st(jqXHR)._readyState()).__eq((4));
-if(smalltalk.assert($1)){
-return self._setupPackageNamed_prefix_(packageName,aString);
-};
-}, function($ctx2) {$ctx2.fillBlock({jqXHR:jqXHR,textStatus:textStatus},$ctx1)})})),"error".__minus_gt((function(){
-return smalltalk.withContext(function($ctx2) {
-return self._alert_("Could not load package at: ".__comma(url));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))]));
-return self}, function($ctx1) {$ctx1.fill(self,"loadPackage:prefix:",{packageName:packageName,aString:aString,url:url},smalltalk.LegacyPackageHandler)})},
-messageSends: [",", "ajax:", "->", "ifTrue:", "setupPackageNamed:prefix:", "=", "readyState", "alert:"]}),
-smalltalk.LegacyPackageHandler);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "loadPackages:prefix:",
-fn: function (aCollection,aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(aCollection)._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return self._loadPackage_prefix_(each,aString);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"loadPackages:prefix:",{aCollection:aCollection,aString:aString},smalltalk.LegacyPackageHandler)})},
-messageSends: ["do:", "loadPackage:prefix:"]}),
-smalltalk.LegacyPackageHandler);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "setupPackageNamed:prefix:",
-fn: function (packageName,aString){
-var self=this;
-function $Package(){return smalltalk.Package||(typeof Package=="undefined"?nil:Package)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st($Package())._named_(packageName);
-_st($1)._setupClasses();
-_st($1)._commitPathJs_(_st("/".__comma(aString)).__comma("/js"));
-$2=_st($1)._commitPathSt_(_st("/".__comma(aString)).__comma("/st"));
-return self}, function($ctx1) {$ctx1.fill(self,"setupPackageNamed:prefix:",{packageName:packageName,aString:aString},smalltalk.LegacyPackageHandler)})},
-messageSends: ["setupClasses", "named:", "commitPathJs:", ",", "commitPathSt:"]}),
-smalltalk.LegacyPackageHandler);
-
-
-smalltalk.LegacyPackageHandler.klass.iVarNames = ['defaultCommitPathJs','defaultCommitPathSt'];
-smalltalk.addMethod(
-smalltalk.method({
-selector: "commitPathsFromLoader",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-
-		var commitPath = typeof amber !== 'undefined' && amber.commitPath;
-		if (!commitPath) return;
-		if (commitPath.js) self._defaultCommitPathJs_(commitPath.js);
-		if (commitPath.st) self._defaultCommitPathSt_(commitPath.st);
-	;
-return self}, function($ctx1) {$ctx1.fill(self,"commitPathsFromLoader",{},smalltalk.LegacyPackageHandler.klass)})},
-messageSends: []}),
-smalltalk.LegacyPackageHandler.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "defaultCommitPathJs",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@defaultCommitPathJs"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@defaultCommitPathJs"]="js";
-$1=self["@defaultCommitPathJs"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"defaultCommitPathJs",{},smalltalk.LegacyPackageHandler.klass)})},
-messageSends: ["ifNil:"]}),
-smalltalk.LegacyPackageHandler.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "defaultCommitPathJs:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@defaultCommitPathJs"]=aString;
-return self}, function($ctx1) {$ctx1.fill(self,"defaultCommitPathJs:",{aString:aString},smalltalk.LegacyPackageHandler.klass)})},
-messageSends: []}),
-smalltalk.LegacyPackageHandler.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "defaultCommitPathSt",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@defaultCommitPathSt"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@defaultCommitPathSt"]="st";
-$1=self["@defaultCommitPathSt"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"defaultCommitPathSt",{},smalltalk.LegacyPackageHandler.klass)})},
-messageSends: ["ifNil:"]}),
-smalltalk.LegacyPackageHandler.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "defaultCommitPathSt:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@defaultCommitPathSt"]=aString;
-return self}, function($ctx1) {$ctx1.fill(self,"defaultCommitPathSt:",{aString:aString},smalltalk.LegacyPackageHandler.klass)})},
-messageSends: []}),
-smalltalk.LegacyPackageHandler.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "initialize",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-smalltalk.LegacyPackageHandler.klass.superclass.fn.prototype._initialize.apply(_st(self), []);
-self._registerFor_("unknown");
-self._commitPathsFromLoader();
-return self}, function($ctx1) {$ctx1.fill(self,"initialize",{},smalltalk.LegacyPackageHandler.klass)})},
-messageSends: ["initialize", "registerFor:", "commitPathsFromLoader"]}),
-smalltalk.LegacyPackageHandler.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "loadPackages:prefix:",
-fn: function (aCollection,aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._new())._loadPackages_prefix_(aCollection,aString);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"loadPackages:prefix:",{aCollection:aCollection,aString:aString},smalltalk.LegacyPackageHandler.klass)})},
-messageSends: ["loadPackages:prefix:", "new"]}),
-smalltalk.LegacyPackageHandler.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "resetCommitPaths",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@defaultCommitPathJs"]=nil;
-self["@defaultCommitPathSt"]=nil;
-return self}, function($ctx1) {$ctx1.fill(self,"resetCommitPaths",{},smalltalk.LegacyPackageHandler.klass)})},
-messageSends: []}),
-smalltalk.LegacyPackageHandler.klass);
-
-
-smalltalk.addClass('PluggableExporter', smalltalk.Object, ['recipe'], 'Importer-Exporter');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "exportAllPackages",
-fn: function (){
-var self=this;
-function $Smalltalk(){return smalltalk.Smalltalk||(typeof Smalltalk=="undefined"?nil:Smalltalk)}
-function $String(){return smalltalk.String||(typeof String=="undefined"?nil:String)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st($String())._streamContents_((function(stream){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(_st($Smalltalk())._current())._packages())._do_((function(pkg){
-return smalltalk.withContext(function($ctx3) {
-return self._exportPackage_on_(pkg,stream);
-}, function($ctx3) {$ctx3.fillBlock({pkg:pkg},$ctx2)})}));
-}, function($ctx2) {$ctx2.fillBlock({stream:stream},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"exportAllPackages",{},smalltalk.PluggableExporter)})},
-messageSends: ["streamContents:", "do:", "exportPackage:on:", "packages", "current"]}),
-smalltalk.PluggableExporter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "exportPackage:on:",
-fn: function (aPackage,aStream){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._interpreter())._interpret_for_on_(self._recipe(),aPackage,aStream);
-return self}, function($ctx1) {$ctx1.fill(self,"exportPackage:on:",{aPackage:aPackage,aStream:aStream},smalltalk.PluggableExporter)})},
-messageSends: ["interpret:for:on:", "recipe", "interpreter"]}),
-smalltalk.PluggableExporter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "interpreter",
-fn: function (){
-var self=this;
-function $ExportRecipeInterpreter(){return smalltalk.ExportRecipeInterpreter||(typeof ExportRecipeInterpreter=="undefined"?nil:ExportRecipeInterpreter)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st($ExportRecipeInterpreter())._new();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"interpreter",{},smalltalk.PluggableExporter)})},
-messageSends: ["new"]}),
-smalltalk.PluggableExporter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "recipe",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@recipe"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"recipe",{},smalltalk.PluggableExporter)})},
-messageSends: []}),
-smalltalk.PluggableExporter);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "recipe:",
-fn: function (anArray){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@recipe"]=anArray;
-return self}, function($ctx1) {$ctx1.fill(self,"recipe:",{anArray:anArray},smalltalk.PluggableExporter)})},
-messageSends: []}),
-smalltalk.PluggableExporter);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "forRecipe:",
-fn: function (aRecipe){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=self._new();
-_st($2)._recipe_(aRecipe);
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"forRecipe:",{aRecipe:aRecipe},smalltalk.PluggableExporter.klass)})},
-messageSends: ["recipe:", "new", "yourself"]}),
-smalltalk.PluggableExporter.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "ownClassesOfPackage:",
-fn: function (package_){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(package_)._sortedClasses())._asSet();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"ownClassesOfPackage:",{package_:package_},smalltalk.PluggableExporter.klass)})},
-messageSends: ["asSet", "sortedClasses"]}),
-smalltalk.PluggableExporter.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "amdNamespace",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return (self.transport && self.transport.amdNamespace) || nil;
-return self}, function($ctx1) {$ctx1.fill(self,"amdNamespace",{},smalltalk.Package)})},
-messageSends: []}),
-smalltalk.Package);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "amdNamespace:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-
-		if (!self.transport) { self.transport = { type: 'amd' }; }
-		if (self.transport.type !== 'amd') { throw new Error('Package '+self._name()+' has transport type '+self.transport.type+', not "amd".'); }
-		self.transport.amdNamespace = aString;
-	;
-return self}, function($ctx1) {$ctx1.fill(self,"amdNamespace:",{aString:aString},smalltalk.Package)})},
-messageSends: []}),
-smalltalk.Package);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "commit",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._handler())._commit_(self);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"commit",{},smalltalk.Package)})},
-messageSends: ["commit:", "handler"]}),
-smalltalk.Package);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "commitPathJs",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $3,$2,$1;
-$3=self["@extension"];
-if(($receiver = $3) == nil || $receiver == undefined){
-self["@extension"]=smalltalk.HashedCollection._from_([]);
-$2=self["@extension"];
-} else {
-$2=$3;
-};
-$1=_st($2)._at_ifAbsent_("commitPathJs",(function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(self._handler())._commitPathJsFor_(self);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"commitPathJs",{},smalltalk.Package)})},
-messageSends: ["at:ifAbsent:", "commitPathJsFor:", "handler", "ifNil:"]}),
-smalltalk.Package);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "commitPathJs:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $3,$2,$1;
-$3=self["@extension"];
-if(($receiver = $3) == nil || $receiver == undefined){
-self["@extension"]=smalltalk.HashedCollection._from_([]);
-$2=self["@extension"];
-} else {
-$2=$3;
-};
-$1=_st($2)._at_put_("commitPathJs",aString);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"commitPathJs:",{aString:aString},smalltalk.Package)})},
-messageSends: ["at:put:", "ifNil:"]}),
-smalltalk.Package);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "commitPathSt",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $3,$2,$1;
-$3=self["@extension"];
-if(($receiver = $3) == nil || $receiver == undefined){
-self["@extension"]=smalltalk.HashedCollection._from_([]);
-$2=self["@extension"];
-} else {
-$2=$3;
-};
-$1=_st($2)._at_ifAbsent_("commitPathSt",(function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(self._handler())._commitPathStFor_(self);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"commitPathSt",{},smalltalk.Package)})},
-messageSends: ["at:ifAbsent:", "commitPathStFor:", "handler", "ifNil:"]}),
-smalltalk.Package);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "commitPathSt:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $3,$2,$1;
-$3=self["@extension"];
-if(($receiver = $3) == nil || $receiver == undefined){
-self["@extension"]=smalltalk.HashedCollection._from_([]);
-$2=self["@extension"];
-} else {
-$2=$3;
-};
-$1=_st($2)._at_put_("commitPathSt",aString);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"commitPathSt:",{aString:aString},smalltalk.Package)})},
-messageSends: ["at:put:", "ifNil:"]}),
-smalltalk.Package);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "handler",
-fn: function (){
-var self=this;
-function $PackageHandler(){return smalltalk.PackageHandler||(typeof PackageHandler=="undefined"?nil:PackageHandler)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st($PackageHandler())._for_(self._transportType());
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"handler",{},smalltalk.Package)})},
-messageSends: ["for:", "transportType"]}),
-smalltalk.Package);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "transportJson",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return JSON.stringify(self.transport || null);;
-return self}, function($ctx1) {$ctx1.fill(self,"transportJson",{},smalltalk.Package)})},
-messageSends: []}),
-smalltalk.Package);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "transportType",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return (self.transport && self.transport.type) || 'unknown';;
-return self}, function($ctx1) {$ctx1.fill(self,"transportType",{},smalltalk.Package)})},
-messageSends: []}),
-smalltalk.Package);
-
-});

+ 0 - 558
js/Kernel-Announcements.deploy.js

@@ -1,558 +0,0 @@
-define("amber/Kernel-Announcements", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/Kernel-Objects"], function(smalltalk,nil,_st){
-smalltalk.addPackage('Kernel-Announcements');
-smalltalk.packages["Kernel-Announcements"].transport = {"type":"amd","amdNamespace":"amber"};
-
-smalltalk.addClass('AnnouncementSubscription', smalltalk.Object, ['valuable', 'announcementClass'], 'Kernel-Announcements');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "announcementClass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@announcementClass"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"announcementClass",{},smalltalk.AnnouncementSubscription)})},
-messageSends: []}),
-smalltalk.AnnouncementSubscription);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "announcementClass:",
-fn: function (aClass){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@announcementClass"]=aClass;
-return self}, function($ctx1) {$ctx1.fill(self,"announcementClass:",{aClass:aClass},smalltalk.AnnouncementSubscription)})},
-messageSends: []}),
-smalltalk.AnnouncementSubscription);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "block",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-self._deprecatedAPI();
-$1=self._valuable();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"block",{},smalltalk.AnnouncementSubscription)})},
-messageSends: ["deprecatedAPI", "valuable"]}),
-smalltalk.AnnouncementSubscription);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "block:",
-fn: function (aValuable){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._deprecatedAPI();
-self._valuable_(aValuable);
-return self}, function($ctx1) {$ctx1.fill(self,"block:",{aValuable:aValuable},smalltalk.AnnouncementSubscription)})},
-messageSends: ["deprecatedAPI", "valuable:"]}),
-smalltalk.AnnouncementSubscription);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "deliver:",
-fn: function (anAnnouncement){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._handlesAnnouncement_(anAnnouncement);
-if(smalltalk.assert($1)){
-_st(self._valuable())._value_(anAnnouncement);
-};
-return self}, function($ctx1) {$ctx1.fill(self,"deliver:",{anAnnouncement:anAnnouncement},smalltalk.AnnouncementSubscription)})},
-messageSends: ["ifTrue:", "value:", "valuable", "handlesAnnouncement:"]}),
-smalltalk.AnnouncementSubscription);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "handlesAnnouncement:",
-fn: function (anAnnouncement){
-var self=this;
-function $Smalltalk(){return smalltalk.Smalltalk||(typeof Smalltalk=="undefined"?nil:Smalltalk)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=_st(_st($Smalltalk())._current())._at_(_st(self._announcementClass())._name());
-if(($receiver = $2) == nil || $receiver == undefined){
-return false;
-} else {
-var class_;
-class_=$receiver;
-$1=_st(class_)._includesBehavior_(_st(_st($Smalltalk())._current())._at_(_st(_st(_st(anAnnouncement)._class())._theNonMetaClass())._name()));
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"handlesAnnouncement:",{anAnnouncement:anAnnouncement},smalltalk.AnnouncementSubscription)})},
-messageSends: ["ifNil:ifNotNil:", "includesBehavior:", "at:", "name", "theNonMetaClass", "class", "current", "announcementClass"]}),
-smalltalk.AnnouncementSubscription);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "receiver",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._valuable())._receiver();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"receiver",{},smalltalk.AnnouncementSubscription)})},
-messageSends: ["receiver", "valuable"]}),
-smalltalk.AnnouncementSubscription);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "valuable",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@valuable"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"valuable",{},smalltalk.AnnouncementSubscription)})},
-messageSends: []}),
-smalltalk.AnnouncementSubscription);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "valuable:",
-fn: function (aValuable){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@valuable"]=aValuable;
-return self}, function($ctx1) {$ctx1.fill(self,"valuable:",{aValuable:aValuable},smalltalk.AnnouncementSubscription)})},
-messageSends: []}),
-smalltalk.AnnouncementSubscription);
-
-
-
-smalltalk.addClass('Announcer', smalltalk.Object, ['registry', 'subscriptions'], 'Kernel-Announcements');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "announce:",
-fn: function (anAnnouncement){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self["@subscriptions"])._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(each)._deliver_(anAnnouncement);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"announce:",{anAnnouncement:anAnnouncement},smalltalk.Announcer)})},
-messageSends: ["do:", "deliver:"]}),
-smalltalk.Announcer);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "initialize",
-fn: function (){
-var self=this;
-function $OrderedCollection(){return smalltalk.OrderedCollection||(typeof OrderedCollection=="undefined"?nil:OrderedCollection)}
-return smalltalk.withContext(function($ctx1) { 
-smalltalk.Announcer.superclass.fn.prototype._initialize.apply(_st(self), []);
-self["@subscriptions"]=_st($OrderedCollection())._new();
-return self}, function($ctx1) {$ctx1.fill(self,"initialize",{},smalltalk.Announcer)})},
-messageSends: ["initialize", "new"]}),
-smalltalk.Announcer);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "on:do:",
-fn: function (aClass,aBlock){
-var self=this;
-function $AnnouncementSubscription(){return smalltalk.AnnouncementSubscription||(typeof AnnouncementSubscription=="undefined"?nil:AnnouncementSubscription)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st($AnnouncementSubscription())._new();
-_st($1)._valuable_(aBlock);
-_st($1)._announcementClass_(aClass);
-$2=_st($1)._yourself();
-_st(self["@subscriptions"])._add_($2);
-return self}, function($ctx1) {$ctx1.fill(self,"on:do:",{aClass:aClass,aBlock:aBlock},smalltalk.Announcer)})},
-messageSends: ["add:", "valuable:", "new", "announcementClass:", "yourself"]}),
-smalltalk.Announcer);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "on:send:to:",
-fn: function (aClass,aSelector,anObject){
-var self=this;
-function $MessageSend(){return smalltalk.MessageSend||(typeof MessageSend=="undefined"?nil:MessageSend)}
-function $AnnouncementSubscription(){return smalltalk.AnnouncementSubscription||(typeof AnnouncementSubscription=="undefined"?nil:AnnouncementSubscription)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4;
-$1=_st($AnnouncementSubscription())._new();
-$2=_st($MessageSend())._new();
-_st($2)._receiver_(anObject);
-_st($2)._selector_(aSelector);
-$3=_st($2)._yourself();
-_st($1)._valuable_($3);
-_st($1)._announcementClass_(aClass);
-$4=_st($1)._yourself();
-_st(self["@subscriptions"])._add_($4);
-return self}, function($ctx1) {$ctx1.fill(self,"on:send:to:",{aClass:aClass,aSelector:aSelector,anObject:anObject},smalltalk.Announcer)})},
-messageSends: ["add:", "valuable:", "receiver:", "new", "selector:", "yourself", "announcementClass:"]}),
-smalltalk.Announcer);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "unsubscribe:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@subscriptions"]=_st(self["@subscriptions"])._reject_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(each)._receiver()).__eq(anObject);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"unsubscribe:",{anObject:anObject},smalltalk.Announcer)})},
-messageSends: ["reject:", "=", "receiver"]}),
-smalltalk.Announcer);
-
-
-
-smalltalk.addClass('SystemAnnouncer', smalltalk.Announcer, [], 'Kernel-Announcements');
-
-smalltalk.SystemAnnouncer.klass.iVarNames = ['current'];
-smalltalk.addMethod(
-smalltalk.method({
-selector: "current",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@current"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@current"]=smalltalk.SystemAnnouncer.klass.superclass.fn.prototype._new.apply(_st(self), []);
-$1=self["@current"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"current",{},smalltalk.SystemAnnouncer.klass)})},
-messageSends: ["ifNil:", "new"]}),
-smalltalk.SystemAnnouncer.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "new",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._shouldNotImplement();
-return self}, function($ctx1) {$ctx1.fill(self,"new",{},smalltalk.SystemAnnouncer.klass)})},
-messageSends: ["shouldNotImplement"]}),
-smalltalk.SystemAnnouncer.klass);
-
-
-smalltalk.addClass('SystemAnnouncement', smalltalk.Object, ['theClass'], 'Kernel-Announcements');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "theClass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@theClass"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"theClass",{},smalltalk.SystemAnnouncement)})},
-messageSends: []}),
-smalltalk.SystemAnnouncement);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "theClass:",
-fn: function (aClass){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@theClass"]=aClass;
-return self}, function($ctx1) {$ctx1.fill(self,"theClass:",{aClass:aClass},smalltalk.SystemAnnouncement)})},
-messageSends: []}),
-smalltalk.SystemAnnouncement);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "heliosClass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "announcement";
-}, function($ctx1) {$ctx1.fill(self,"heliosClass",{},smalltalk.SystemAnnouncement.klass)})},
-messageSends: []}),
-smalltalk.SystemAnnouncement.klass);
-
-
-smalltalk.addClass('ClassAnnouncement', smalltalk.SystemAnnouncement, ['theClass'], 'Kernel-Announcements');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "theClass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@theClass"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"theClass",{},smalltalk.ClassAnnouncement)})},
-messageSends: []}),
-smalltalk.ClassAnnouncement);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "theClass:",
-fn: function (aClass){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@theClass"]=aClass;
-return self}, function($ctx1) {$ctx1.fill(self,"theClass:",{aClass:aClass},smalltalk.ClassAnnouncement)})},
-messageSends: []}),
-smalltalk.ClassAnnouncement);
-
-
-
-smalltalk.addClass('ClassAdded', smalltalk.ClassAnnouncement, [], 'Kernel-Announcements');
-
-
-smalltalk.addClass('ClassCommentChanged', smalltalk.ClassAnnouncement, [], 'Kernel-Announcements');
-
-
-smalltalk.addClass('ClassDefinitionChanged', smalltalk.ClassAnnouncement, [], 'Kernel-Announcements');
-
-
-smalltalk.addClass('ClassMigrated', smalltalk.ClassAnnouncement, ['oldClass'], 'Kernel-Announcements');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "oldClass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@oldClass"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"oldClass",{},smalltalk.ClassMigrated)})},
-messageSends: []}),
-smalltalk.ClassMigrated);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "oldClass:",
-fn: function (aClass){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@oldClass"]=aClass;
-return self}, function($ctx1) {$ctx1.fill(self,"oldClass:",{aClass:aClass},smalltalk.ClassMigrated)})},
-messageSends: []}),
-smalltalk.ClassMigrated);
-
-
-
-smalltalk.addClass('ClassMoved', smalltalk.ClassAnnouncement, ['oldPackage'], 'Kernel-Announcements');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "oldPackage",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@oldPackage"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"oldPackage",{},smalltalk.ClassMoved)})},
-messageSends: []}),
-smalltalk.ClassMoved);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "oldPackage:",
-fn: function (aPackage){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@oldPackage"]=aPackage;
-return self}, function($ctx1) {$ctx1.fill(self,"oldPackage:",{aPackage:aPackage},smalltalk.ClassMoved)})},
-messageSends: []}),
-smalltalk.ClassMoved);
-
-
-
-smalltalk.addClass('ClassRemoved', smalltalk.ClassAnnouncement, [], 'Kernel-Announcements');
-
-
-smalltalk.addClass('ClassRenamed', smalltalk.ClassAnnouncement, [], 'Kernel-Announcements');
-
-
-smalltalk.addClass('MethodAnnouncement', smalltalk.SystemAnnouncement, ['method'], 'Kernel-Announcements');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "method",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@method"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"method",{},smalltalk.MethodAnnouncement)})},
-messageSends: []}),
-smalltalk.MethodAnnouncement);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "method:",
-fn: function (aCompiledMethod){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@method"]=aCompiledMethod;
-return self}, function($ctx1) {$ctx1.fill(self,"method:",{aCompiledMethod:aCompiledMethod},smalltalk.MethodAnnouncement)})},
-messageSends: []}),
-smalltalk.MethodAnnouncement);
-
-
-
-smalltalk.addClass('MethodAdded', smalltalk.MethodAnnouncement, [], 'Kernel-Announcements');
-
-
-smalltalk.addClass('MethodModified', smalltalk.MethodAnnouncement, ['oldMethod'], 'Kernel-Announcements');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "oldMethod",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@oldMethod"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"oldMethod",{},smalltalk.MethodModified)})},
-messageSends: []}),
-smalltalk.MethodModified);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "oldMethod:",
-fn: function (aMethod){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@oldMethod"]=aMethod;
-return self}, function($ctx1) {$ctx1.fill(self,"oldMethod:",{aMethod:aMethod},smalltalk.MethodModified)})},
-messageSends: []}),
-smalltalk.MethodModified);
-
-
-
-smalltalk.addClass('MethodMoved', smalltalk.MethodAnnouncement, ['oldProtocol'], 'Kernel-Announcements');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "oldProtocol",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@oldProtocol"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"oldProtocol",{},smalltalk.MethodMoved)})},
-messageSends: []}),
-smalltalk.MethodMoved);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "oldProtocol:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@oldProtocol"]=aString;
-return self}, function($ctx1) {$ctx1.fill(self,"oldProtocol:",{aString:aString},smalltalk.MethodMoved)})},
-messageSends: []}),
-smalltalk.MethodMoved);
-
-
-
-smalltalk.addClass('MethodRemoved', smalltalk.MethodAnnouncement, [], 'Kernel-Announcements');
-
-
-smalltalk.addClass('PackageAnnouncement', smalltalk.SystemAnnouncement, ['package'], 'Kernel-Announcements');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "package",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@package"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"package",{},smalltalk.PackageAnnouncement)})},
-messageSends: []}),
-smalltalk.PackageAnnouncement);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "package:",
-fn: function (aPackage){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@package"]=aPackage;
-return self}, function($ctx1) {$ctx1.fill(self,"package:",{aPackage:aPackage},smalltalk.PackageAnnouncement)})},
-messageSends: []}),
-smalltalk.PackageAnnouncement);
-
-
-
-smalltalk.addClass('PackageAdded', smalltalk.PackageAnnouncement, [], 'Kernel-Announcements');
-
-
-smalltalk.addClass('PackageRemoved', smalltalk.PackageAnnouncement, [], 'Kernel-Announcements');
-
-
-smalltalk.addClass('ProtocolAnnouncement', smalltalk.SystemAnnouncement, ['theClass', 'protocol'], 'Kernel-Announcements');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "protocol",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@protocol"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"protocol",{},smalltalk.ProtocolAnnouncement)})},
-messageSends: []}),
-smalltalk.ProtocolAnnouncement);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "protocol:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@protocol"]=aString;
-return self}, function($ctx1) {$ctx1.fill(self,"protocol:",{aString:aString},smalltalk.ProtocolAnnouncement)})},
-messageSends: []}),
-smalltalk.ProtocolAnnouncement);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "theClass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@theClass"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"theClass",{},smalltalk.ProtocolAnnouncement)})},
-messageSends: []}),
-smalltalk.ProtocolAnnouncement);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "theClass:",
-fn: function (aClass){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@theClass"]=aClass;
-return self}, function($ctx1) {$ctx1.fill(self,"theClass:",{aClass:aClass},smalltalk.ProtocolAnnouncement)})},
-messageSends: []}),
-smalltalk.ProtocolAnnouncement);
-
-
-
-smalltalk.addClass('ProtocolAdded', smalltalk.ProtocolAnnouncement, [], 'Kernel-Announcements');
-
-
-smalltalk.addClass('ProtocolRemoved', smalltalk.ProtocolAnnouncement, [], 'Kernel-Announcements');
-
-});

+ 0 - 1719
js/Kernel-Classes.deploy.js

@@ -1,1719 +0,0 @@
-define("amber/Kernel-Classes", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/Kernel-Objects"], function(smalltalk,nil,_st){
-smalltalk.addPackage('Kernel-Classes');
-smalltalk.packages["Kernel-Classes"].transport = {"type":"amd","amdNamespace":"amber"};
-
-smalltalk.addClass('Behavior', smalltalk.Object, [], 'Kernel-Classes');
-smalltalk.addMethod(
-smalltalk.method({
-selector: ">>",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._methodAt_(aString);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,">>",{aString:aString},smalltalk.Behavior)})},
-messageSends: ["methodAt:"]}),
-smalltalk.Behavior);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "addCompiledMethod:",
-fn: function (aMethod){
-var self=this;
-var oldMethod,announcement;
-function $MethodAdded(){return smalltalk.MethodAdded||(typeof MethodAdded=="undefined"?nil:MethodAdded)}
-function $MethodModified(){return smalltalk.MethodModified||(typeof MethodModified=="undefined"?nil:MethodModified)}
-function $SystemAnnouncer(){return smalltalk.SystemAnnouncer||(typeof SystemAnnouncer=="undefined"?nil:SystemAnnouncer)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4,$5,$6;
-oldMethod=_st(self._methodDictionary())._at_ifAbsent_(_st(aMethod)._selector(),(function(){
-return smalltalk.withContext(function($ctx2) {
-return nil;
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-$1=_st(self._protocols())._includes_(_st(aMethod)._protocol());
-if(! smalltalk.assert($1)){
-_st(self._organization())._addElement_(_st(aMethod)._protocol());
-};
-self._basicAddCompiledMethod_(aMethod);
-$2=oldMethod;
-if(($receiver = $2) == nil || $receiver == undefined){
-$3=_st($MethodAdded())._new();
-_st($3)._method_(aMethod);
-$4=_st($3)._yourself();
-announcement=$4;
-} else {
-$5=_st($MethodModified())._new();
-_st($5)._oldMethod_(oldMethod);
-_st($5)._method_(aMethod);
-$6=_st($5)._yourself();
-announcement=$6;
-};
-_st(_st($SystemAnnouncer())._current())._announce_(announcement);
-return self}, function($ctx1) {$ctx1.fill(self,"addCompiledMethod:",{aMethod:aMethod,oldMethod:oldMethod,announcement:announcement},smalltalk.Behavior)})},
-messageSends: ["at:ifAbsent:", "selector", "methodDictionary", "ifFalse:", "addElement:", "protocol", "organization", "includes:", "protocols", "basicAddCompiledMethod:", "ifNil:ifNotNil:", "method:", "new", "yourself", "oldMethod:", "announce:", "current"]}),
-smalltalk.Behavior);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "allInstanceVariableNames",
-fn: function (){
-var self=this;
-var result;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-result=_st(self._instanceVariableNames())._copy();
-$1=self._superclass();
-if(($receiver = $1) == nil || $receiver == undefined){
-$1;
-} else {
-_st(result)._addAll_(_st(self._superclass())._allInstanceVariableNames());
-};
-$2=result;
-return $2;
-}, function($ctx1) {$ctx1.fill(self,"allInstanceVariableNames",{result:result},smalltalk.Behavior)})},
-messageSends: ["copy", "instanceVariableNames", "ifNotNil:", "addAll:", "allInstanceVariableNames", "superclass"]}),
-smalltalk.Behavior);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "allSelectors",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$1=_st(self._allSuperclasses())._inject_into_(self._selectors(),(function(acc,each){
-return smalltalk.withContext(function($ctx2) {
-$2=acc;
-_st($2)._addAll_(_st(each)._selectors());
-$3=_st($2)._yourself();
-return $3;
-}, function($ctx2) {$ctx2.fillBlock({acc:acc,each:each},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"allSelectors",{},smalltalk.Behavior)})},
-messageSends: ["inject:into:", "selectors", "addAll:", "yourself", "allSuperclasses"]}),
-smalltalk.Behavior);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "allSubclasses",
-fn: function (){
-var self=this;
-var subclasses,index;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-subclasses=self._subclasses();
-index=(1);
-_st((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(index).__gt(_st(subclasses)._size());
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._whileFalse_((function(){
-return smalltalk.withContext(function($ctx2) {
-_st(subclasses)._addAll_(_st(_st(subclasses)._at_(index))._subclasses());
-index=_st(index).__plus((1));
-return index;
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-$1=subclasses;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"allSubclasses",{subclasses:subclasses,index:index},smalltalk.Behavior)})},
-messageSends: ["subclasses", "whileFalse:", "addAll:", "at:", "+", ">", "size"]}),
-smalltalk.Behavior);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "allSubclassesDo:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._allSubclasses())._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(aBlock)._value_(each);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"allSubclassesDo:",{aBlock:aBlock},smalltalk.Behavior)})},
-messageSends: ["do:", "value:", "allSubclasses"]}),
-smalltalk.Behavior);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "allSuperclasses",
-fn: function (){
-var self=this;
-function $OrderedCollection(){return smalltalk.OrderedCollection||(typeof OrderedCollection=="undefined"?nil:OrderedCollection)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$4,$5,$3;
-$1=self._superclass();
-if(($receiver = $1) == nil || $receiver == undefined){
-$2=[];
-return $2;
-} else {
-$1;
-};
-$4=_st($OrderedCollection())._with_(self._superclass());
-_st($4)._addAll_(_st(self._superclass())._allSuperclasses());
-$5=_st($4)._yourself();
-$3=$5;
-return $3;
-}, function($ctx1) {$ctx1.fill(self,"allSuperclasses",{},smalltalk.Behavior)})},
-messageSends: ["ifNil:", "superclass", "addAll:", "allSuperclasses", "with:", "yourself"]}),
-smalltalk.Behavior);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "basicAddCompiledMethod:",
-fn: function (aMethod){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-smalltalk.addMethod(aMethod, self);
-return self}, function($ctx1) {$ctx1.fill(self,"basicAddCompiledMethod:",{aMethod:aMethod},smalltalk.Behavior)})},
-messageSends: []}),
-smalltalk.Behavior);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "basicNew",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return new self.fn();
-return self}, function($ctx1) {$ctx1.fill(self,"basicNew",{},smalltalk.Behavior)})},
-messageSends: []}),
-smalltalk.Behavior);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "basicRemoveCompiledMethod:",
-fn: function (aMethod){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-smalltalk.removeMethod(aMethod,self);
-return self}, function($ctx1) {$ctx1.fill(self,"basicRemoveCompiledMethod:",{aMethod:aMethod},smalltalk.Behavior)})},
-messageSends: []}),
-smalltalk.Behavior);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "canUnderstand:",
-fn: function (aSelector){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(_st(self._methodDictionary())._keys())._includes_(_st(aSelector)._asString()))._or_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(self._superclass())._notNil())._and_((function(){
-return smalltalk.withContext(function($ctx3) {
-return _st(self._superclass())._canUnderstand_(aSelector);
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"canUnderstand:",{aSelector:aSelector},smalltalk.Behavior)})},
-messageSends: ["or:", "and:", "canUnderstand:", "superclass", "notNil", "includes:", "asString", "keys", "methodDictionary"]}),
-smalltalk.Behavior);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "comment",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self._basicAt_("comment");
-if(($receiver = $2) == nil || $receiver == undefined){
-$1="";
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"comment",{},smalltalk.Behavior)})},
-messageSends: ["ifNil:", "basicAt:"]}),
-smalltalk.Behavior);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "comment:",
-fn: function (aString){
-var self=this;
-function $ClassCommentChanged(){return smalltalk.ClassCommentChanged||(typeof ClassCommentChanged=="undefined"?nil:ClassCommentChanged)}
-function $SystemAnnouncer(){return smalltalk.SystemAnnouncer||(typeof SystemAnnouncer=="undefined"?nil:SystemAnnouncer)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-self._basicAt_put_("comment",aString);
-$1=_st($ClassCommentChanged())._new();
-_st($1)._theClass_(self);
-$2=_st($1)._yourself();
-_st(_st($SystemAnnouncer())._current())._announce_($2);
-return self}, function($ctx1) {$ctx1.fill(self,"comment:",{aString:aString},smalltalk.Behavior)})},
-messageSends: ["basicAt:put:", "announce:", "theClass:", "new", "yourself", "current"]}),
-smalltalk.Behavior);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "commentStamp",
-fn: function (){
-var self=this;
-function $ClassCommentReader(){return smalltalk.ClassCommentReader||(typeof ClassCommentReader=="undefined"?nil:ClassCommentReader)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=_st($ClassCommentReader())._new();
-_st($2)._class_(self);
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"commentStamp",{},smalltalk.Behavior)})},
-messageSends: ["class:", "new", "yourself"]}),
-smalltalk.Behavior);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "commentStamp:prior:",
-fn: function (aStamp,prior){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._commentStamp();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"commentStamp:prior:",{aStamp:aStamp,prior:prior},smalltalk.Behavior)})},
-messageSends: ["commentStamp"]}),
-smalltalk.Behavior);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "compile:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._compile_category_(aString,"");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"compile:",{aString:aString},smalltalk.Behavior)})},
-messageSends: ["compile:category:"]}),
-smalltalk.Behavior);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "compile:category:",
-fn: function (aString,anotherString){
-var self=this;
-function $Compiler(){return smalltalk.Compiler||(typeof Compiler=="undefined"?nil:Compiler)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st($Compiler())._new())._install_forClass_category_(aString,self,anotherString);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"compile:category:",{aString:aString,anotherString:anotherString},smalltalk.Behavior)})},
-messageSends: ["install:forClass:category:", "new"]}),
-smalltalk.Behavior);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "constructor",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self.fn;
-return self}, function($ctx1) {$ctx1.fill(self,"constructor",{},smalltalk.Behavior)})},
-messageSends: []}),
-smalltalk.Behavior);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "definition",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "";
-}, function($ctx1) {$ctx1.fill(self,"definition",{},smalltalk.Behavior)})},
-messageSends: []}),
-smalltalk.Behavior);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "includesBehavior:",
-fn: function (aClass){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self.__eq_eq(aClass))._or_((function(){
-return smalltalk.withContext(function($ctx2) {
-return self._inheritsFrom_(aClass);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"includesBehavior:",{aClass:aClass},smalltalk.Behavior)})},
-messageSends: ["or:", "inheritsFrom:", "=="]}),
-smalltalk.Behavior);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "includesSelector:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._methodDictionary())._includesKey_(aString);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"includesSelector:",{aString:aString},smalltalk.Behavior)})},
-messageSends: ["includesKey:", "methodDictionary"]}),
-smalltalk.Behavior);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "inheritsFrom:",
-fn: function (aClass){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=self._superclass();
-if(($receiver = $1) == nil || $receiver == undefined){
-return false;
-} else {
-$1;
-};
-$2=_st(_st(aClass).__eq_eq(self._superclass()))._or_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(self._superclass())._inheritsFrom_(aClass);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return $2;
-}, function($ctx1) {$ctx1.fill(self,"inheritsFrom:",{aClass:aClass},smalltalk.Behavior)})},
-messageSends: ["ifNil:", "superclass", "or:", "inheritsFrom:", "=="]}),
-smalltalk.Behavior);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "instanceVariableNames",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self.iVarNames;
-return self}, function($ctx1) {$ctx1.fill(self,"instanceVariableNames",{},smalltalk.Behavior)})},
-messageSends: []}),
-smalltalk.Behavior);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isBehavior",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"isBehavior",{},smalltalk.Behavior)})},
-messageSends: []}),
-smalltalk.Behavior);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "lookupSelector:",
-fn: function (selector){
-var self=this;
-var lookupClass;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-var $early={};
-try {
-lookupClass=self;
-_st((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(lookupClass).__eq(nil);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._whileFalse_((function(){
-return smalltalk.withContext(function($ctx2) {
-$1=_st(lookupClass)._includesSelector_(selector);
-if(smalltalk.assert($1)){
-$2=_st(lookupClass)._methodAt_(selector);
-throw $early=[$2];
-};
-lookupClass=_st(lookupClass)._superclass();
-return lookupClass;
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return nil;
-}
-catch(e) {if(e===$early)return e[0]; throw e}
-}, function($ctx1) {$ctx1.fill(self,"lookupSelector:",{selector:selector,lookupClass:lookupClass},smalltalk.Behavior)})},
-messageSends: ["whileFalse:", "ifTrue:", "methodAt:", "includesSelector:", "superclass", "="]}),
-smalltalk.Behavior);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "methodAt:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._methodDictionary())._at_(aString);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"methodAt:",{aString:aString},smalltalk.Behavior)})},
-messageSends: ["at:", "methodDictionary"]}),
-smalltalk.Behavior);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "methodDictionary",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var dict = smalltalk.HashedCollection._new();
-	var methods = self.methods;
-	for(var i in methods) {
-		if(methods[i].selector) {
-			dict._at_put_(methods[i].selector, methods[i]);
-		}
-	};
-	return dict;
-return self}, function($ctx1) {$ctx1.fill(self,"methodDictionary",{},smalltalk.Behavior)})},
-messageSends: []}),
-smalltalk.Behavior);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "methods",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._methodDictionary())._values();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"methods",{},smalltalk.Behavior)})},
-messageSends: ["values", "methodDictionary"]}),
-smalltalk.Behavior);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "methodsFor:",
-fn: function (aString){
-var self=this;
-function $ClassCategoryReader(){return smalltalk.ClassCategoryReader||(typeof ClassCategoryReader=="undefined"?nil:ClassCategoryReader)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=_st($ClassCategoryReader())._new();
-_st($2)._class_category_(self,aString);
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"methodsFor:",{aString:aString},smalltalk.Behavior)})},
-messageSends: ["class:category:", "new", "yourself"]}),
-smalltalk.Behavior);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "methodsFor:stamp:",
-fn: function (aString,aStamp){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._methodsFor_(aString);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"methodsFor:stamp:",{aString:aString,aStamp:aStamp},smalltalk.Behavior)})},
-messageSends: ["methodsFor:"]}),
-smalltalk.Behavior);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "methodsInProtocol:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(self._methodDictionary())._values())._select_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(each)._protocol()).__eq(aString);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"methodsInProtocol:",{aString:aString},smalltalk.Behavior)})},
-messageSends: ["select:", "=", "protocol", "values", "methodDictionary"]}),
-smalltalk.Behavior);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "name",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self.className || nil;
-return self}, function($ctx1) {$ctx1.fill(self,"name",{},smalltalk.Behavior)})},
-messageSends: []}),
-smalltalk.Behavior);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "new",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._basicNew())._initialize();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"new",{},smalltalk.Behavior)})},
-messageSends: ["initialize", "basicNew"]}),
-smalltalk.Behavior);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "organization",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._basicAt_("organization");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"organization",{},smalltalk.Behavior)})},
-messageSends: ["basicAt:"]}),
-smalltalk.Behavior);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "ownMethods",
-fn: function (){
-var self=this;
-function $OrderedCollection(){return smalltalk.OrderedCollection||(typeof OrderedCollection=="undefined"?nil:OrderedCollection)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._ownProtocols())._inject_into_(_st($OrderedCollection())._new(),(function(acc,each){
-return smalltalk.withContext(function($ctx2) {
-return _st(acc).__comma(self._methodsInProtocol_(each));
-}, function($ctx2) {$ctx2.fillBlock({acc:acc,each:each},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"ownMethods",{},smalltalk.Behavior)})},
-messageSends: ["inject:into:", "new", ",", "methodsInProtocol:", "ownProtocols"]}),
-smalltalk.Behavior);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "ownProtocols",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._protocols())._reject_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(each)._match_("^\x5c*");
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"ownProtocols",{},smalltalk.Behavior)})},
-messageSends: ["reject:", "match:", "protocols"]}),
-smalltalk.Behavior);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "protocols",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(self._organization())._elements())._sorted();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"protocols",{},smalltalk.Behavior)})},
-messageSends: ["sorted", "elements", "organization"]}),
-smalltalk.Behavior);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "protocolsDo:",
-fn: function (aBlock){
-var self=this;
-var methodsByCategory;
-function $HashedCollection(){return smalltalk.HashedCollection||(typeof HashedCollection=="undefined"?nil:HashedCollection)}
-function $Array(){return smalltalk.Array||(typeof Array=="undefined"?nil:Array)}
-return smalltalk.withContext(function($ctx1) { 
-methodsByCategory=_st($HashedCollection())._new();
-_st(_st(self._methodDictionary())._values())._do_((function(m){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(methodsByCategory)._at_ifAbsentPut_(_st(m)._category(),(function(){
-return smalltalk.withContext(function($ctx3) {
-return _st($Array())._new();
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})})))._add_(m);
-}, function($ctx2) {$ctx2.fillBlock({m:m},$ctx1)})}));
-_st(self._protocols())._do_((function(category){
-return smalltalk.withContext(function($ctx2) {
-return _st(aBlock)._value_value_(category,_st(methodsByCategory)._at_(category));
-}, function($ctx2) {$ctx2.fillBlock({category:category},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"protocolsDo:",{aBlock:aBlock,methodsByCategory:methodsByCategory},smalltalk.Behavior)})},
-messageSends: ["new", "do:", "add:", "at:ifAbsentPut:", "category", "values", "methodDictionary", "value:value:", "at:", "protocols"]}),
-smalltalk.Behavior);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "prototype",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self.fn.prototype;
-return self}, function($ctx1) {$ctx1.fill(self,"prototype",{},smalltalk.Behavior)})},
-messageSends: []}),
-smalltalk.Behavior);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "recompile",
-fn: function (){
-var self=this;
-function $Compiler(){return smalltalk.Compiler||(typeof Compiler=="undefined"?nil:Compiler)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st($Compiler())._new())._recompile_(self);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"recompile",{},smalltalk.Behavior)})},
-messageSends: ["recompile:", "new"]}),
-smalltalk.Behavior);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "removeCompiledMethod:",
-fn: function (aMethod){
-var self=this;
-function $MethodRemoved(){return smalltalk.MethodRemoved||(typeof MethodRemoved=="undefined"?nil:MethodRemoved)}
-function $SystemAnnouncer(){return smalltalk.SystemAnnouncer||(typeof SystemAnnouncer=="undefined"?nil:SystemAnnouncer)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-self._basicRemoveCompiledMethod_(aMethod);
-_st(self._methods())._detect_ifNone_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(each)._protocol()).__eq(_st(aMethod)._protocol());
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}),(function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(self._organization())._removeElement_(_st(aMethod)._protocol());
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-$1=_st($MethodRemoved())._new();
-_st($1)._method_(aMethod);
-$2=_st($1)._yourself();
-_st(_st($SystemAnnouncer())._current())._announce_($2);
-return self}, function($ctx1) {$ctx1.fill(self,"removeCompiledMethod:",{aMethod:aMethod},smalltalk.Behavior)})},
-messageSends: ["basicRemoveCompiledMethod:", "detect:ifNone:", "=", "protocol", "removeElement:", "organization", "methods", "announce:", "method:", "new", "yourself", "current"]}),
-smalltalk.Behavior);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selectors",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._methodDictionary())._keys();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"selectors",{},smalltalk.Behavior)})},
-messageSends: ["keys", "methodDictionary"]}),
-smalltalk.Behavior);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "subclasses",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._subclassResponsibility();
-return self}, function($ctx1) {$ctx1.fill(self,"subclasses",{},smalltalk.Behavior)})},
-messageSends: ["subclassResponsibility"]}),
-smalltalk.Behavior);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "superclass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self.superclass || nil;
-return self}, function($ctx1) {$ctx1.fill(self,"superclass",{},smalltalk.Behavior)})},
-messageSends: []}),
-smalltalk.Behavior);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "theMetaClass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._class();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"theMetaClass",{},smalltalk.Behavior)})},
-messageSends: ["class"]}),
-smalltalk.Behavior);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "theNonMetaClass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"theNonMetaClass",{},smalltalk.Behavior)})},
-messageSends: []}),
-smalltalk.Behavior);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "withAllSubclasses",
-fn: function (){
-var self=this;
-function $Array(){return smalltalk.Array||(typeof Array=="undefined"?nil:Array)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=_st($Array())._with_(self);
-_st($2)._addAll_(self._allSubclasses());
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"withAllSubclasses",{},smalltalk.Behavior)})},
-messageSends: ["addAll:", "allSubclasses", "with:", "yourself"]}),
-smalltalk.Behavior);
-
-
-
-smalltalk.addClass('Class', smalltalk.Behavior, [], 'Kernel-Classes');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "asJavascript",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1="smalltalk.".__comma(self._name());
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"asJavascript",{},smalltalk.Class)})},
-messageSends: [",", "name"]}),
-smalltalk.Class);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "category",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self._package();
-if(($receiver = $2) == nil || $receiver == undefined){
-$1="Unclassified";
-} else {
-$1=_st(self._package())._name();
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"category",{},smalltalk.Class)})},
-messageSends: ["ifNil:ifNotNil:", "name", "package"]}),
-smalltalk.Class);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "definition",
-fn: function (){
-var self=this;
-function $String(){return smalltalk.String||(typeof String=="undefined"?nil:String)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$4,$5,$1;
-$1=_st($String())._streamContents_((function(stream){
-return smalltalk.withContext(function($ctx2) {
-$2=stream;
-_st($2)._nextPutAll_(_st(self._superclass())._asString());
-_st($2)._nextPutAll_(" subclass: #");
-_st($2)._nextPutAll_(self._name());
-_st($2)._nextPutAll_(_st(_st($String())._lf()).__comma(_st($String())._tab()));
-$3=_st($2)._nextPutAll_("instanceVariableNames: '");
-$3;
-_st(self._instanceVariableNames())._do_separatedBy_((function(each){
-return smalltalk.withContext(function($ctx3) {
-return _st(stream)._nextPutAll_(each);
-}, function($ctx3) {$ctx3.fillBlock({each:each},$ctx2)})}),(function(){
-return smalltalk.withContext(function($ctx3) {
-return _st(stream)._nextPutAll_(" ");
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-$4=stream;
-_st($4)._nextPutAll_(_st("'".__comma(_st($String())._lf())).__comma(_st($String())._tab()));
-_st($4)._nextPutAll_("package: '");
-_st($4)._nextPutAll_(self._category());
-$5=_st($4)._nextPutAll_("'");
-return $5;
-}, function($ctx2) {$ctx2.fillBlock({stream:stream},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"definition",{},smalltalk.Class)})},
-messageSends: ["streamContents:", "nextPutAll:", "asString", "superclass", "name", ",", "tab", "lf", "do:separatedBy:", "instanceVariableNames", "category"]}),
-smalltalk.Class);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isClass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"isClass",{},smalltalk.Class)})},
-messageSends: []}),
-smalltalk.Class);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "package",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._basicAt_("pkg");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"package",{},smalltalk.Class)})},
-messageSends: ["basicAt:"]}),
-smalltalk.Class);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "package:",
-fn: function (aPackage){
-var self=this;
-var oldPackage;
-function $ClassMoved(){return smalltalk.ClassMoved||(typeof ClassMoved=="undefined"?nil:ClassMoved)}
-function $SystemAnnouncer(){return smalltalk.SystemAnnouncer||(typeof SystemAnnouncer=="undefined"?nil:SystemAnnouncer)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4;
-$1=_st(self._package()).__eq(aPackage);
-if(smalltalk.assert($1)){
-$2=self;
-return $2;
-};
-oldPackage=self._package();
-self._basicAt_put_("pkg",aPackage);
-_st(_st(oldPackage)._organization())._removeElement_(self);
-_st(_st(aPackage)._organization())._addElement_(self);
-$3=_st($ClassMoved())._new();
-_st($3)._theClass_(self);
-_st($3)._oldPackage_(oldPackage);
-$4=_st($3)._yourself();
-_st(_st($SystemAnnouncer())._current())._announce_($4);
-return self}, function($ctx1) {$ctx1.fill(self,"package:",{aPackage:aPackage,oldPackage:oldPackage},smalltalk.Class)})},
-messageSends: ["ifTrue:", "=", "package", "basicAt:put:", "removeElement:", "organization", "addElement:", "announce:", "theClass:", "new", "oldPackage:", "yourself", "current"]}),
-smalltalk.Class);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "printOn:",
-fn: function (aStream){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(aStream)._nextPutAll_(self._name());
-return self}, function($ctx1) {$ctx1.fill(self,"printOn:",{aStream:aStream},smalltalk.Class)})},
-messageSends: ["nextPutAll:", "name"]}),
-smalltalk.Class);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "rename:",
-fn: function (aString){
-var self=this;
-function $ClassBuilder(){return smalltalk.ClassBuilder||(typeof ClassBuilder=="undefined"?nil:ClassBuilder)}
-return smalltalk.withContext(function($ctx1) { 
-_st(_st($ClassBuilder())._new())._renameClass_to_(self,aString);
-return self}, function($ctx1) {$ctx1.fill(self,"rename:",{aString:aString},smalltalk.Class)})},
-messageSends: ["renameClass:to:", "new"]}),
-smalltalk.Class);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "subclass:instanceVariableNames:",
-fn: function (aString,anotherString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._subclass_instanceVariableNames_package_(aString,anotherString,nil);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"subclass:instanceVariableNames:",{aString:aString,anotherString:anotherString},smalltalk.Class)})},
-messageSends: ["subclass:instanceVariableNames:package:"]}),
-smalltalk.Class);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "subclass:instanceVariableNames:category:",
-fn: function (aString,aString2,aString3){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-self._deprecatedAPI();
-$1=self._subclass_instanceVariableNames_package_(aString,aString2,aString3);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"subclass:instanceVariableNames:category:",{aString:aString,aString2:aString2,aString3:aString3},smalltalk.Class)})},
-messageSends: ["deprecatedAPI", "subclass:instanceVariableNames:package:"]}),
-smalltalk.Class);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "subclass:instanceVariableNames:classVariableNames:poolDictionaries:category:",
-fn: function (aString,aString2,classVars,pools,aString3){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._subclass_instanceVariableNames_package_(aString,aString2,aString3);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"subclass:instanceVariableNames:classVariableNames:poolDictionaries:category:",{aString:aString,aString2:aString2,classVars:classVars,pools:pools,aString3:aString3},smalltalk.Class)})},
-messageSends: ["subclass:instanceVariableNames:package:"]}),
-smalltalk.Class);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "subclass:instanceVariableNames:package:",
-fn: function (aString,aString2,aString3){
-var self=this;
-function $ClassBuilder(){return smalltalk.ClassBuilder||(typeof ClassBuilder=="undefined"?nil:ClassBuilder)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st($ClassBuilder())._new())._superclass_subclass_instanceVariableNames_package_(self,_st(aString)._asString(),aString2,aString3);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"subclass:instanceVariableNames:package:",{aString:aString,aString2:aString2,aString3:aString3},smalltalk.Class)})},
-messageSends: ["superclass:subclass:instanceVariableNames:package:", "asString", "new"]}),
-smalltalk.Class);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "subclasses",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self.subclasses._copy();
-return self}, function($ctx1) {$ctx1.fill(self,"subclasses",{},smalltalk.Class)})},
-messageSends: []}),
-smalltalk.Class);
-
-
-
-smalltalk.addClass('Metaclass', smalltalk.Behavior, [], 'Kernel-Classes');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "asJavascript",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st("smalltalk.".__comma(_st(self._instanceClass())._name())).__comma(".klass");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"asJavascript",{},smalltalk.Metaclass)})},
-messageSends: [",", "name", "instanceClass"]}),
-smalltalk.Metaclass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "definition",
-fn: function (){
-var self=this;
-function $String(){return smalltalk.String||(typeof String=="undefined"?nil:String)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$1=_st($String())._streamContents_((function(stream){
-return smalltalk.withContext(function($ctx2) {
-$2=stream;
-_st($2)._nextPutAll_(self._asString());
-$3=_st($2)._nextPutAll_(" instanceVariableNames: '");
-$3;
-_st(self._instanceVariableNames())._do_separatedBy_((function(each){
-return smalltalk.withContext(function($ctx3) {
-return _st(stream)._nextPutAll_(each);
-}, function($ctx3) {$ctx3.fillBlock({each:each},$ctx2)})}),(function(){
-return smalltalk.withContext(function($ctx3) {
-return _st(stream)._nextPutAll_(" ");
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-return _st(stream)._nextPutAll_("'");
-}, function($ctx2) {$ctx2.fillBlock({stream:stream},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"definition",{},smalltalk.Metaclass)})},
-messageSends: ["streamContents:", "nextPutAll:", "asString", "do:separatedBy:", "instanceVariableNames"]}),
-smalltalk.Metaclass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "instanceClass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self.instanceClass;
-return self}, function($ctx1) {$ctx1.fill(self,"instanceClass",{},smalltalk.Metaclass)})},
-messageSends: []}),
-smalltalk.Metaclass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "instanceVariableNames:",
-fn: function (aCollection){
-var self=this;
-function $ClassBuilder(){return smalltalk.ClassBuilder||(typeof ClassBuilder=="undefined"?nil:ClassBuilder)}
-return smalltalk.withContext(function($ctx1) { 
-_st(_st($ClassBuilder())._new())._class_instanceVariableNames_(self,aCollection);
-return self}, function($ctx1) {$ctx1.fill(self,"instanceVariableNames:",{aCollection:aCollection},smalltalk.Metaclass)})},
-messageSends: ["class:instanceVariableNames:", "new"]}),
-smalltalk.Metaclass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isMetaclass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"isMetaclass",{},smalltalk.Metaclass)})},
-messageSends: []}),
-smalltalk.Metaclass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "printOn:",
-fn: function (aStream){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=aStream;
-_st($1)._nextPutAll_(_st(self._instanceClass())._name());
-$2=_st($1)._nextPutAll_(" class");
-return self}, function($ctx1) {$ctx1.fill(self,"printOn:",{aStream:aStream},smalltalk.Metaclass)})},
-messageSends: ["nextPutAll:", "name", "instanceClass"]}),
-smalltalk.Metaclass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "subclasses",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(_st(self._instanceClass())._subclasses())._select_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(each)._isMetaclass())._not();
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})})))._collect_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(each)._theMetaClass();
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"subclasses",{},smalltalk.Metaclass)})},
-messageSends: ["collect:", "theMetaClass", "select:", "not", "isMetaclass", "subclasses", "instanceClass"]}),
-smalltalk.Metaclass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "theMetaClass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"theMetaClass",{},smalltalk.Metaclass)})},
-messageSends: []}),
-smalltalk.Metaclass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "theNonMetaClass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._instanceClass();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"theNonMetaClass",{},smalltalk.Metaclass)})},
-messageSends: ["instanceClass"]}),
-smalltalk.Metaclass);
-
-
-
-smalltalk.addClass('ClassBuilder', smalltalk.Object, [], 'Kernel-Classes');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "addSubclassOf:named:instanceVariableNames:package:",
-fn: function (aClass,className,aCollection,packageName){
-var self=this;
-var theClass,thePackage;
-function $Smalltalk(){return smalltalk.Smalltalk||(typeof Smalltalk=="undefined"?nil:Smalltalk)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4;
-theClass=_st(_st($Smalltalk())._current())._at_(className);
-thePackage=self._createPackageNamed_(packageName);
-$1=theClass;
-if(($receiver = $1) == nil || $receiver == undefined){
-$1;
-} else {
-_st(theClass)._package_(thePackage);
-$2=_st(_st(theClass)._superclass()).__eq_eq(aClass);
-if(! smalltalk.assert($2)){
-$3=self._migrateClassNamed_superclass_instanceVariableNames_package_(className,aClass,aCollection,packageName);
-return $3;
-};
-};
-$4=self._basicAddSubclassOf_named_instanceVariableNames_package_(aClass,className,aCollection,packageName);
-return $4;
-}, function($ctx1) {$ctx1.fill(self,"addSubclassOf:named:instanceVariableNames:package:",{aClass:aClass,className:className,aCollection:aCollection,packageName:packageName,theClass:theClass,thePackage:thePackage},smalltalk.ClassBuilder)})},
-messageSends: ["at:", "current", "createPackageNamed:", "ifNotNil:", "package:", "ifFalse:", "migrateClassNamed:superclass:instanceVariableNames:package:", "==", "superclass", "basicAddSubclassOf:named:instanceVariableNames:package:"]}),
-smalltalk.ClassBuilder);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "basicAddSubclassOf:named:instanceVariableNames:package:",
-fn: function (aClass,aString,aCollection,packageName){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-
-		smalltalk.addClass(aString, aClass, aCollection, packageName);
-		return smalltalk[aString]
-	;
-return self}, function($ctx1) {$ctx1.fill(self,"basicAddSubclassOf:named:instanceVariableNames:package:",{aClass:aClass,aString:aString,aCollection:aCollection,packageName:packageName},smalltalk.ClassBuilder)})},
-messageSends: []}),
-smalltalk.ClassBuilder);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "basicClass:instanceVariableNames:",
-fn: function (aClass,aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._basicClass_instanceVariables_(aClass,self._instanceVariableNamesFor_(aString));
-return self}, function($ctx1) {$ctx1.fill(self,"basicClass:instanceVariableNames:",{aClass:aClass,aString:aString},smalltalk.ClassBuilder)})},
-messageSends: ["basicClass:instanceVariables:", "instanceVariableNamesFor:"]}),
-smalltalk.ClassBuilder);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "basicClass:instanceVariables:",
-fn: function (aClass,aCollection){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(aClass)._isMetaclass();
-if(! smalltalk.assert($1)){
-self._error_(_st(_st(aClass)._name()).__comma(" is not a metaclass"));
-};
-_st(aClass)._basicAt_put_("iVarNames",aCollection);
-return self}, function($ctx1) {$ctx1.fill(self,"basicClass:instanceVariables:",{aClass:aClass,aCollection:aCollection},smalltalk.ClassBuilder)})},
-messageSends: ["ifFalse:", "error:", ",", "name", "isMetaclass", "basicAt:put:"]}),
-smalltalk.ClassBuilder);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "basicRemoveClass:",
-fn: function (aClass){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-smalltalk.removeClass(aClass);
-return self}, function($ctx1) {$ctx1.fill(self,"basicRemoveClass:",{aClass:aClass},smalltalk.ClassBuilder)})},
-messageSends: []}),
-smalltalk.ClassBuilder);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "basicRenameClass:to:",
-fn: function (aClass,aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-
-		smalltalk[aString] = aClass;
-		delete smalltalk[aClass.className];
-		aClass.className = aString;
-	;
-return self}, function($ctx1) {$ctx1.fill(self,"basicRenameClass:to:",{aClass:aClass,aString:aString},smalltalk.ClassBuilder)})},
-messageSends: []}),
-smalltalk.ClassBuilder);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "basicSwapClassNames:with:",
-fn: function (aClass,anotherClass){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-
-		var tmp = aClass.className;
-		aClass.className = anotherClass.className;
-		anotherClass.className = tmp;
-	;
-return self}, function($ctx1) {$ctx1.fill(self,"basicSwapClassNames:with:",{aClass:aClass,anotherClass:anotherClass},smalltalk.ClassBuilder)})},
-messageSends: []}),
-smalltalk.ClassBuilder);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "class:instanceVariableNames:",
-fn: function (aClass,ivarNames){
-var self=this;
-function $ClassDefinitionChanged(){return smalltalk.ClassDefinitionChanged||(typeof ClassDefinitionChanged=="undefined"?nil:ClassDefinitionChanged)}
-function $SystemAnnouncer(){return smalltalk.SystemAnnouncer||(typeof SystemAnnouncer=="undefined"?nil:SystemAnnouncer)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-self._basicClass_instanceVariableNames_(aClass,ivarNames);
-self._setupClass_(aClass);
-$1=_st($ClassDefinitionChanged())._new();
-_st($1)._theClass_(aClass);
-$2=_st($1)._yourself();
-_st(_st($SystemAnnouncer())._current())._announce_($2);
-return self}, function($ctx1) {$ctx1.fill(self,"class:instanceVariableNames:",{aClass:aClass,ivarNames:ivarNames},smalltalk.ClassBuilder)})},
-messageSends: ["basicClass:instanceVariableNames:", "setupClass:", "announce:", "theClass:", "new", "yourself", "current"]}),
-smalltalk.ClassBuilder);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "copyClass:named:",
-fn: function (aClass,className){
-var self=this;
-var newClass;
-function $ClassAdded(){return smalltalk.ClassAdded||(typeof ClassAdded=="undefined"?nil:ClassAdded)}
-function $SystemAnnouncer(){return smalltalk.SystemAnnouncer||(typeof SystemAnnouncer=="undefined"?nil:SystemAnnouncer)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3;
-newClass=self._addSubclassOf_named_instanceVariableNames_package_(_st(aClass)._superclass(),className,_st(aClass)._instanceVariableNames(),_st(_st(aClass)._package())._name());
-self._copyClass_to_(aClass,newClass);
-$1=_st($ClassAdded())._new();
-_st($1)._theClass_(newClass);
-$2=_st($1)._yourself();
-_st(_st($SystemAnnouncer())._current())._announce_($2);
-$3=newClass;
-return $3;
-}, function($ctx1) {$ctx1.fill(self,"copyClass:named:",{aClass:aClass,className:className,newClass:newClass},smalltalk.ClassBuilder)})},
-messageSends: ["addSubclassOf:named:instanceVariableNames:package:", "superclass", "instanceVariableNames", "name", "package", "copyClass:to:", "announce:", "theClass:", "new", "yourself", "current"]}),
-smalltalk.ClassBuilder);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "copyClass:to:",
-fn: function (aClass,anotherClass){
-var self=this;
-function $Compiler(){return smalltalk.Compiler||(typeof Compiler=="undefined"?nil:Compiler)}
-return smalltalk.withContext(function($ctx1) { 
-_st(anotherClass)._comment_(_st(aClass)._comment());
-_st(_st(_st(aClass)._methodDictionary())._values())._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st($Compiler())._new())._install_forClass_category_(_st(each)._source(),anotherClass,_st(each)._category());
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-self._basicClass_instanceVariables_(_st(anotherClass)._class(),_st(_st(aClass)._class())._instanceVariableNames());
-_st(_st(_st(_st(aClass)._class())._methodDictionary())._values())._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st($Compiler())._new())._install_forClass_category_(_st(each)._source(),_st(anotherClass)._class(),_st(each)._category());
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-self._setupClass_(anotherClass);
-return self}, function($ctx1) {$ctx1.fill(self,"copyClass:to:",{aClass:aClass,anotherClass:anotherClass},smalltalk.ClassBuilder)})},
-messageSends: ["comment:", "comment", "do:", "install:forClass:category:", "source", "category", "new", "values", "methodDictionary", "basicClass:instanceVariables:", "class", "instanceVariableNames", "setupClass:"]}),
-smalltalk.ClassBuilder);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "createPackageNamed:",
-fn: function (aString){
-var self=this;
-function $Smalltalk(){return smalltalk.Smalltalk||(typeof Smalltalk=="undefined"?nil:Smalltalk)}
-function $Package(){return smalltalk.Package||(typeof Package=="undefined"?nil:Package)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st($Package())._named_ifAbsent_(aString,(function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st($Smalltalk())._current())._createDefaultPackage_(aString);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"createPackageNamed:",{aString:aString},smalltalk.ClassBuilder)})},
-messageSends: ["named:ifAbsent:", "createDefaultPackage:", "current"]}),
-smalltalk.ClassBuilder);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "installMethod:forClass:category:",
-fn: function (aCompiledMethod,aBehavior,aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-_st(aCompiledMethod)._category_(aString);
-_st(aBehavior)._addCompiledMethod_(aCompiledMethod);
-self._setupClass_(aBehavior);
-$1=aCompiledMethod;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"installMethod:forClass:category:",{aCompiledMethod:aCompiledMethod,aBehavior:aBehavior,aString:aString},smalltalk.ClassBuilder)})},
-messageSends: ["category:", "addCompiledMethod:", "setupClass:"]}),
-smalltalk.ClassBuilder);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "instanceVariableNamesFor:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(aString)._tokenize_(" "))._reject_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(each)._isEmpty();
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"instanceVariableNamesFor:",{aString:aString},smalltalk.ClassBuilder)})},
-messageSends: ["reject:", "isEmpty", "tokenize:"]}),
-smalltalk.ClassBuilder);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "migrateClass:superclass:",
-fn: function (aClass,anotherClass){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._migrateClassNamed_superclass_instanceVariableNames_package_(_st(aClass)._name(),anotherClass,_st(aClass)._instanceVariableNames(),_st(_st(aClass)._package())._name());
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"migrateClass:superclass:",{aClass:aClass,anotherClass:anotherClass},smalltalk.ClassBuilder)})},
-messageSends: ["migrateClassNamed:superclass:instanceVariableNames:package:", "name", "instanceVariableNames", "package"]}),
-smalltalk.ClassBuilder);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "migrateClassNamed:superclass:instanceVariableNames:package:",
-fn: function (className,aClass,aCollection,packageName){
-var self=this;
-var oldClass,newClass,tmp;
-function $Smalltalk(){return smalltalk.Smalltalk||(typeof Smalltalk=="undefined"?nil:Smalltalk)}
-function $Error(){return smalltalk.Error||(typeof Error=="undefined"?nil:Error)}
-function $ClassMigrated(){return smalltalk.ClassMigrated||(typeof ClassMigrated=="undefined"?nil:ClassMigrated)}
-function $SystemAnnouncer(){return smalltalk.SystemAnnouncer||(typeof SystemAnnouncer=="undefined"?nil:SystemAnnouncer)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4,$5,$6,$7;
-tmp="new*".__comma(className);
-oldClass=_st(_st($Smalltalk())._current())._at_(className);
-newClass=self._addSubclassOf_named_instanceVariableNames_package_(aClass,tmp,aCollection,packageName);
-self._basicSwapClassNames_with_(oldClass,newClass);
-_st((function(){
-return smalltalk.withContext(function($ctx2) {
-return self._copyClass_to_(oldClass,newClass);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._on_do_($Error(),(function(exception){
-return smalltalk.withContext(function($ctx2) {
-$1=self;
-_st($1)._basicSwapClassNames_with_(oldClass,newClass);
-$2=_st($1)._basicRemoveClass_(newClass);
-$2;
-return _st(exception)._signal();
-}, function($ctx2) {$ctx2.fillBlock({exception:exception},$ctx1)})}));
-$3=self;
-_st($3)._rawRenameClass_to_(oldClass,tmp);
-$4=_st($3)._rawRenameClass_to_(newClass,className);
-_st(_st(oldClass)._subclasses())._do_displayingProgress_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return self._migrateClass_superclass_(each,newClass);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}),_st("Recompiling ".__comma(_st(newClass)._name())).__comma("..."));
-self._basicRemoveClass_(oldClass);
-$5=_st($ClassMigrated())._new();
-_st($5)._theClass_(newClass);
-_st($5)._oldClass_(oldClass);
-$6=_st($5)._yourself();
-_st(_st($SystemAnnouncer())._current())._announce_($6);
-$7=newClass;
-return $7;
-}, function($ctx1) {$ctx1.fill(self,"migrateClassNamed:superclass:instanceVariableNames:package:",{className:className,aClass:aClass,aCollection:aCollection,packageName:packageName,oldClass:oldClass,newClass:newClass,tmp:tmp},smalltalk.ClassBuilder)})},
-messageSends: [",", "at:", "current", "addSubclassOf:named:instanceVariableNames:package:", "basicSwapClassNames:with:", "on:do:", "basicRemoveClass:", "signal", "copyClass:to:", "rawRenameClass:to:", "do:displayingProgress:", "migrateClass:superclass:", "name", "subclasses", "announce:", "theClass:", "new", "oldClass:", "yourself"]}),
-smalltalk.ClassBuilder);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "rawRenameClass:to:",
-fn: function (aClass,aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-
-		smalltalk[aString] = aClass;
-	;
-return self}, function($ctx1) {$ctx1.fill(self,"rawRenameClass:to:",{aClass:aClass,aString:aString},smalltalk.ClassBuilder)})},
-messageSends: []}),
-smalltalk.ClassBuilder);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renameClass:to:",
-fn: function (aClass,className){
-var self=this;
-function $ClassRenamed(){return smalltalk.ClassRenamed||(typeof ClassRenamed=="undefined"?nil:ClassRenamed)}
-function $SystemAnnouncer(){return smalltalk.SystemAnnouncer||(typeof SystemAnnouncer=="undefined"?nil:SystemAnnouncer)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-self._basicRenameClass_to_(aClass,className);
-_st(aClass)._recompile();
-$1=_st($ClassRenamed())._new();
-_st($1)._theClass_(aClass);
-$2=_st($1)._yourself();
-_st(_st($SystemAnnouncer())._current())._announce_($2);
-return self}, function($ctx1) {$ctx1.fill(self,"renameClass:to:",{aClass:aClass,className:className},smalltalk.ClassBuilder)})},
-messageSends: ["basicRenameClass:to:", "recompile", "announce:", "theClass:", "new", "yourself", "current"]}),
-smalltalk.ClassBuilder);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "setupClass:",
-fn: function (aClass){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-smalltalk.init(aClass);;
-return self}, function($ctx1) {$ctx1.fill(self,"setupClass:",{aClass:aClass},smalltalk.ClassBuilder)})},
-messageSends: []}),
-smalltalk.ClassBuilder);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "superclass:subclass:",
-fn: function (aClass,className){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._superclass_subclass_instanceVariableNames_package_(aClass,className,"",nil);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"superclass:subclass:",{aClass:aClass,className:className},smalltalk.ClassBuilder)})},
-messageSends: ["superclass:subclass:instanceVariableNames:package:"]}),
-smalltalk.ClassBuilder);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "superclass:subclass:instanceVariableNames:package:",
-fn: function (aClass,className,ivarNames,packageName){
-var self=this;
-var newClass;
-function $ClassAdded(){return smalltalk.ClassAdded||(typeof ClassAdded=="undefined"?nil:ClassAdded)}
-function $SystemAnnouncer(){return smalltalk.SystemAnnouncer||(typeof SystemAnnouncer=="undefined"?nil:SystemAnnouncer)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4,$6,$5,$7,$8,$9;
-$1=self;
-$2=aClass;
-$3=className;
-$4=self._instanceVariableNamesFor_(ivarNames);
-$6=packageName;
-if(($receiver = $6) == nil || $receiver == undefined){
-$5="unclassified";
-} else {
-$5=$6;
-};
-newClass=_st($1)._addSubclassOf_named_instanceVariableNames_package_($2,$3,$4,$5);
-self._setupClass_(newClass);
-$7=_st($ClassAdded())._new();
-_st($7)._theClass_(newClass);
-$8=_st($7)._yourself();
-_st(_st($SystemAnnouncer())._current())._announce_($8);
-$9=newClass;
-return $9;
-}, function($ctx1) {$ctx1.fill(self,"superclass:subclass:instanceVariableNames:package:",{aClass:aClass,className:className,ivarNames:ivarNames,packageName:packageName,newClass:newClass},smalltalk.ClassBuilder)})},
-messageSends: ["addSubclassOf:named:instanceVariableNames:package:", "instanceVariableNamesFor:", "ifNil:", "setupClass:", "announce:", "theClass:", "new", "yourself", "current"]}),
-smalltalk.ClassBuilder);
-
-
-
-smalltalk.addClass('ClassCategoryReader', smalltalk.Object, ['class', 'category'], 'Kernel-Classes');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "class:category:",
-fn: function (aClass,aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@class"]=aClass;
-self["@category"]=aString;
-return self}, function($ctx1) {$ctx1.fill(self,"class:category:",{aClass:aClass,aString:aString},smalltalk.ClassCategoryReader)})},
-messageSends: []}),
-smalltalk.ClassCategoryReader);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "compileMethod:",
-fn: function (aString){
-var self=this;
-function $Compiler(){return smalltalk.Compiler||(typeof Compiler=="undefined"?nil:Compiler)}
-return smalltalk.withContext(function($ctx1) { 
-_st(_st($Compiler())._new())._install_forClass_category_(aString,self["@class"],self["@category"]);
-return self}, function($ctx1) {$ctx1.fill(self,"compileMethod:",{aString:aString},smalltalk.ClassCategoryReader)})},
-messageSends: ["install:forClass:category:", "new"]}),
-smalltalk.ClassCategoryReader);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "initialize",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-smalltalk.ClassCategoryReader.superclass.fn.prototype._initialize.apply(_st(self), []);
-return self}, function($ctx1) {$ctx1.fill(self,"initialize",{},smalltalk.ClassCategoryReader)})},
-messageSends: ["initialize"]}),
-smalltalk.ClassCategoryReader);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "scanFrom:",
-fn: function (aChunkParser){
-var self=this;
-var chunk;
-function $ClassBuilder(){return smalltalk.ClassBuilder||(typeof ClassBuilder=="undefined"?nil:ClassBuilder)}
-return smalltalk.withContext(function($ctx1) { 
-_st((function(){
-return smalltalk.withContext(function($ctx2) {
-chunk=_st(aChunkParser)._nextChunk();
-chunk;
-return _st(chunk)._isEmpty();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._whileFalse_((function(){
-return smalltalk.withContext(function($ctx2) {
-return self._compileMethod_(chunk);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-_st(_st($ClassBuilder())._new())._setupClass_(self["@class"]);
-return self}, function($ctx1) {$ctx1.fill(self,"scanFrom:",{aChunkParser:aChunkParser,chunk:chunk},smalltalk.ClassCategoryReader)})},
-messageSends: ["whileFalse:", "compileMethod:", "nextChunk", "isEmpty", "setupClass:", "new"]}),
-smalltalk.ClassCategoryReader);
-
-
-
-smalltalk.addClass('ClassCommentReader', smalltalk.Object, ['class'], 'Kernel-Classes');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "class:",
-fn: function (aClass){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@class"]=aClass;
-return self}, function($ctx1) {$ctx1.fill(self,"class:",{aClass:aClass},smalltalk.ClassCommentReader)})},
-messageSends: []}),
-smalltalk.ClassCommentReader);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "initialize",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-smalltalk.ClassCommentReader.superclass.fn.prototype._initialize.apply(_st(self), []);
-return self}, function($ctx1) {$ctx1.fill(self,"initialize",{},smalltalk.ClassCommentReader)})},
-messageSends: ["initialize"]}),
-smalltalk.ClassCommentReader);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "scanFrom:",
-fn: function (aChunkParser){
-var self=this;
-var chunk;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-chunk=_st(aChunkParser)._nextChunk();
-$1=_st(chunk)._isEmpty();
-if(! smalltalk.assert($1)){
-self._setComment_(chunk);
-};
-return self}, function($ctx1) {$ctx1.fill(self,"scanFrom:",{aChunkParser:aChunkParser,chunk:chunk},smalltalk.ClassCommentReader)})},
-messageSends: ["nextChunk", "ifFalse:", "setComment:", "isEmpty"]}),
-smalltalk.ClassCommentReader);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "setComment:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self["@class"])._comment_(aString);
-return self}, function($ctx1) {$ctx1.fill(self,"setComment:",{aString:aString},smalltalk.ClassCommentReader)})},
-messageSends: ["comment:"]}),
-smalltalk.ClassCommentReader);
-
-
-
-smalltalk.addClass('ClassSorterNode', smalltalk.Object, ['theClass', 'level', 'nodes'], 'Kernel-Classes');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "getNodesFrom:",
-fn: function (aCollection){
-var self=this;
-var children,others;
-function $ClassSorterNode(){return smalltalk.ClassSorterNode||(typeof ClassSorterNode=="undefined"?nil:ClassSorterNode)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-children=[];
-others=[];
-_st(aCollection)._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-$1=_st(_st(each)._superclass()).__eq(self._theClass());
-if(smalltalk.assert($1)){
-return _st(children)._add_(each);
-} else {
-return _st(others)._add_(each);
-};
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-self["@nodes"]=_st(children)._collect_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st($ClassSorterNode())._on_classes_level_(each,others,_st(self._level()).__plus((1)));
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"getNodesFrom:",{aCollection:aCollection,children:children,others:others},smalltalk.ClassSorterNode)})},
-messageSends: ["do:", "ifTrue:ifFalse:", "add:", "=", "theClass", "superclass", "collect:", "on:classes:level:", "+", "level"]}),
-smalltalk.ClassSorterNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "level",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@level"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"level",{},smalltalk.ClassSorterNode)})},
-messageSends: []}),
-smalltalk.ClassSorterNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "level:",
-fn: function (anInteger){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@level"]=anInteger;
-return self}, function($ctx1) {$ctx1.fill(self,"level:",{anInteger:anInteger},smalltalk.ClassSorterNode)})},
-messageSends: []}),
-smalltalk.ClassSorterNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "nodes",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@nodes"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"nodes",{},smalltalk.ClassSorterNode)})},
-messageSends: []}),
-smalltalk.ClassSorterNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "theClass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@theClass"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"theClass",{},smalltalk.ClassSorterNode)})},
-messageSends: []}),
-smalltalk.ClassSorterNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "theClass:",
-fn: function (aClass){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@theClass"]=aClass;
-return self}, function($ctx1) {$ctx1.fill(self,"theClass:",{aClass:aClass},smalltalk.ClassSorterNode)})},
-messageSends: []}),
-smalltalk.ClassSorterNode);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "traverseClassesWith:",
-fn: function (aCollection){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(aCollection)._add_(self._theClass());
-_st(_st(self._nodes())._sorted_((function(a,b){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(_st(a)._theClass())._name()).__lt_eq(_st(_st(b)._theClass())._name());
-}, function($ctx2) {$ctx2.fillBlock({a:a,b:b},$ctx1)})})))._do_((function(aNode){
-return smalltalk.withContext(function($ctx2) {
-return _st(aNode)._traverseClassesWith_(aCollection);
-}, function($ctx2) {$ctx2.fillBlock({aNode:aNode},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"traverseClassesWith:",{aCollection:aCollection},smalltalk.ClassSorterNode)})},
-messageSends: ["add:", "theClass", "do:", "traverseClassesWith:", "sorted:", "<=", "name", "nodes"]}),
-smalltalk.ClassSorterNode);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "on:classes:level:",
-fn: function (aClass,aCollection,anInteger){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=self._new();
-_st($2)._theClass_(aClass);
-_st($2)._level_(anInteger);
-_st($2)._getNodesFrom_(aCollection);
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"on:classes:level:",{aClass:aClass,aCollection:aCollection,anInteger:anInteger},smalltalk.ClassSorterNode.klass)})},
-messageSends: ["theClass:", "new", "level:", "getNodesFrom:", "yourself"]}),
-smalltalk.ClassSorterNode.klass);
-
-});

+ 0 - 4337
js/Kernel-Collections.deploy.js

@@ -1,4337 +0,0 @@
-define("amber/Kernel-Collections", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/Kernel-Objects"], function(smalltalk,nil,_st){
-smalltalk.addPackage('Kernel-Collections');
-smalltalk.packages["Kernel-Collections"].transport = {"type":"amd","amdNamespace":"amber"};
-
-smalltalk.addClass('Association', smalltalk.Object, ['key', 'value'], 'Kernel-Collections');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "=",
-fn: function (anAssociation){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(self._class()).__eq(_st(anAssociation)._class()))._and_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(self._key()).__eq(_st(anAssociation)._key()))._and_((function(){
-return smalltalk.withContext(function($ctx3) {
-return _st(self._value()).__eq(_st(anAssociation)._value());
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"=",{anAssociation:anAssociation},smalltalk.Association)})},
-messageSends: ["and:", "=", "value", "key", "class"]}),
-smalltalk.Association);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "key",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@key"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"key",{},smalltalk.Association)})},
-messageSends: []}),
-smalltalk.Association);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "key:",
-fn: function (aKey){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@key"]=aKey;
-return self}, function($ctx1) {$ctx1.fill(self,"key:",{aKey:aKey},smalltalk.Association)})},
-messageSends: []}),
-smalltalk.Association);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "printOn:",
-fn: function (aStream){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._key())._printOn_(aStream);
-_st(aStream)._nextPutAll_(" -> ");
-_st(self._value())._printOn_(aStream);
-return self}, function($ctx1) {$ctx1.fill(self,"printOn:",{aStream:aStream},smalltalk.Association)})},
-messageSends: ["printOn:", "key", "nextPutAll:", "value"]}),
-smalltalk.Association);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "value",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@value"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"value",{},smalltalk.Association)})},
-messageSends: []}),
-smalltalk.Association);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "value:",
-fn: function (aValue){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@value"]=aValue;
-return self}, function($ctx1) {$ctx1.fill(self,"value:",{aValue:aValue},smalltalk.Association)})},
-messageSends: []}),
-smalltalk.Association);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "key:value:",
-fn: function (aKey,aValue){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=self._new();
-_st($2)._key_(aKey);
-_st($2)._value_(aValue);
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"key:value:",{aKey:aKey,aValue:aValue},smalltalk.Association.klass)})},
-messageSends: ["key:", "new", "value:", "yourself"]}),
-smalltalk.Association.klass);
-
-
-smalltalk.addClass('Collection', smalltalk.Object, [], 'Kernel-Collections');
-smalltalk.addMethod(
-smalltalk.method({
-selector: ",",
-fn: function (aCollection){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=self._copy();
-_st($2)._addAll_(aCollection);
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,",",{aCollection:aCollection},smalltalk.Collection)})},
-messageSends: ["addAll:", "copy", "yourself"]}),
-smalltalk.Collection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "add:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._subclassResponsibility();
-return self}, function($ctx1) {$ctx1.fill(self,"add:",{anObject:anObject},smalltalk.Collection)})},
-messageSends: ["subclassResponsibility"]}),
-smalltalk.Collection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "addAll:",
-fn: function (aCollection){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-_st(aCollection)._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return self._add_(each);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-$1=aCollection;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"addAll:",{aCollection:aCollection},smalltalk.Collection)})},
-messageSends: ["do:", "add:"]}),
-smalltalk.Collection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "asArray",
-fn: function (){
-var self=this;
-function $Array(){return smalltalk.Array||(typeof Array=="undefined"?nil:Array)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st($Array())._withAll_(self);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"asArray",{},smalltalk.Collection)})},
-messageSends: ["withAll:"]}),
-smalltalk.Collection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "asJSON",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._asArray())._collect_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(each)._asJSON();
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"asJSON",{},smalltalk.Collection)})},
-messageSends: ["collect:", "asJSON", "asArray"]}),
-smalltalk.Collection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "asOrderedCollection",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._asArray();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"asOrderedCollection",{},smalltalk.Collection)})},
-messageSends: ["asArray"]}),
-smalltalk.Collection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "asSet",
-fn: function (){
-var self=this;
-function $Set(){return smalltalk.Set||(typeof Set=="undefined"?nil:Set)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st($Set())._withAll_(self);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"asSet",{},smalltalk.Collection)})},
-messageSends: ["withAll:"]}),
-smalltalk.Collection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "collect:",
-fn: function (aBlock){
-var self=this;
-var stream;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-stream=_st(_st(self._class())._new())._writeStream();
-self._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(stream)._nextPut_(_st(aBlock)._value_(each));
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-$1=_st(stream)._contents();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"collect:",{aBlock:aBlock,stream:stream},smalltalk.Collection)})},
-messageSends: ["writeStream", "new", "class", "do:", "nextPut:", "value:", "contents"]}),
-smalltalk.Collection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "contains:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-var $early={};
-try {
-self._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-$1=_st(aBlock)._value_(each);
-if(smalltalk.assert($1)){
-throw $early=[true];
-};
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return false;
-}
-catch(e) {if(e===$early)return e[0]; throw e}
-}, function($ctx1) {$ctx1.fill(self,"contains:",{aBlock:aBlock},smalltalk.Collection)})},
-messageSends: ["do:", "ifTrue:", "value:"]}),
-smalltalk.Collection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "copyWith:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=self._copy();
-_st($2)._add_(anObject);
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"copyWith:",{anObject:anObject},smalltalk.Collection)})},
-messageSends: ["add:", "copy", "yourself"]}),
-smalltalk.Collection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "copyWithAll:",
-fn: function (aCollection){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=self._copy();
-_st($2)._addAll_(aCollection);
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"copyWithAll:",{aCollection:aCollection},smalltalk.Collection)})},
-messageSends: ["addAll:", "copy", "yourself"]}),
-smalltalk.Collection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "copyWithoutAll:",
-fn: function (aCollection){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._reject_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(aCollection)._includes_(each);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"copyWithoutAll:",{aCollection:aCollection},smalltalk.Collection)})},
-messageSends: ["reject:", "includes:"]}),
-smalltalk.Collection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "detect:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._detect_ifNone_(aBlock,(function(){
-return smalltalk.withContext(function($ctx2) {
-return self._errorNotFound();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"detect:",{aBlock:aBlock},smalltalk.Collection)})},
-messageSends: ["detect:ifNone:", "errorNotFound"]}),
-smalltalk.Collection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "detect:ifNone:",
-fn: function (aBlock,anotherBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._subclassResponsibility();
-return self}, function($ctx1) {$ctx1.fill(self,"detect:ifNone:",{aBlock:aBlock,anotherBlock:anotherBlock},smalltalk.Collection)})},
-messageSends: ["subclassResponsibility"]}),
-smalltalk.Collection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "do:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._subclassResponsibility();
-return self}, function($ctx1) {$ctx1.fill(self,"do:",{aBlock:aBlock},smalltalk.Collection)})},
-messageSends: ["subclassResponsibility"]}),
-smalltalk.Collection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "do:separatedBy:",
-fn: function (aBlock,anotherBlock){
-var self=this;
-var actionBeforeElement;
-return smalltalk.withContext(function($ctx1) { 
-actionBeforeElement=(function(){
-return smalltalk.withContext(function($ctx2) {
-actionBeforeElement=anotherBlock;
-return actionBeforeElement;
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})});
-self._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-_st(actionBeforeElement)._value();
-return _st(aBlock)._value_(each);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"do:separatedBy:",{aBlock:aBlock,anotherBlock:anotherBlock,actionBeforeElement:actionBeforeElement},smalltalk.Collection)})},
-messageSends: ["do:", "value", "value:"]}),
-smalltalk.Collection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "errorNotFound",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._error_("Object is not in the collection");
-return self}, function($ctx1) {$ctx1.fill(self,"errorNotFound",{},smalltalk.Collection)})},
-messageSends: ["error:"]}),
-smalltalk.Collection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "ifEmpty:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self._isEmpty();
-if(smalltalk.assert($2)){
-$1=_st(aBlock)._value();
-} else {
-$1=self;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"ifEmpty:",{aBlock:aBlock},smalltalk.Collection)})},
-messageSends: ["ifTrue:ifFalse:", "value", "isEmpty"]}),
-smalltalk.Collection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "ifNotEmpty:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._notEmpty();
-_st($1)._ifTrue_(aBlock);
-return self}, function($ctx1) {$ctx1.fill(self,"ifNotEmpty:",{aBlock:aBlock},smalltalk.Collection)})},
-messageSends: ["ifTrue:", "notEmpty"]}),
-smalltalk.Collection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "includes:",
-fn: function (anObject){
-var self=this;
-var sentinel;
-function $Object(){return smalltalk.Object||(typeof Object=="undefined"?nil:Object)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-sentinel=_st($Object())._new();
-$1=_st(self._detect_ifNone_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(each).__eq(anObject);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}),(function(){
-return smalltalk.withContext(function($ctx2) {
-return sentinel;
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))).__tild_eq(sentinel);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"includes:",{anObject:anObject,sentinel:sentinel},smalltalk.Collection)})},
-messageSends: ["new", "~=", "detect:ifNone:", "="]}),
-smalltalk.Collection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "inject:into:",
-fn: function (anObject,aBlock){
-var self=this;
-var result;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-result=anObject;
-self._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-result=_st(aBlock)._value_value_(result,each);
-return result;
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-$1=result;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"inject:into:",{anObject:anObject,aBlock:aBlock,result:result},smalltalk.Collection)})},
-messageSends: ["do:", "value:value:"]}),
-smalltalk.Collection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "intersection:",
-fn: function (aCollection){
-var self=this;
-var set,outputSet;
-function $Set(){return smalltalk.Set||(typeof Set=="undefined"?nil:Set)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-set=self._asSet();
-outputSet=_st($Set())._new();
-_st(aCollection)._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-$1=_st(_st(set)._includes_(each))._and_((function(){
-return smalltalk.withContext(function($ctx3) {
-return _st(_st(outputSet)._includes_(each))._not();
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-if(smalltalk.assert($1)){
-return _st(outputSet)._add_(each);
-};
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-$2=_st(self._class())._withAll_(_st(outputSet)._asArray());
-return $2;
-}, function($ctx1) {$ctx1.fill(self,"intersection:",{aCollection:aCollection,set:set,outputSet:outputSet},smalltalk.Collection)})},
-messageSends: ["asSet", "new", "do:", "ifTrue:", "add:", "and:", "not", "includes:", "withAll:", "asArray", "class"]}),
-smalltalk.Collection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isEmpty",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._size()).__eq((0));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"isEmpty",{},smalltalk.Collection)})},
-messageSends: ["=", "size"]}),
-smalltalk.Collection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "notEmpty",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._isEmpty())._not();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"notEmpty",{},smalltalk.Collection)})},
-messageSends: ["not", "isEmpty"]}),
-smalltalk.Collection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "occurrencesOf:",
-fn: function (anObject){
-var self=this;
-var tally;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-tally=(0);
-self._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-$1=_st(anObject).__eq(each);
-if(smalltalk.assert($1)){
-tally=_st(tally).__plus((1));
-return tally;
-};
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-$2=tally;
-return $2;
-}, function($ctx1) {$ctx1.fill(self,"occurrencesOf:",{anObject:anObject,tally:tally},smalltalk.Collection)})},
-messageSends: ["do:", "ifTrue:", "+", "="]}),
-smalltalk.Collection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "putOn:",
-fn: function (aStream){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(each)._putOn_(aStream);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"putOn:",{aStream:aStream},smalltalk.Collection)})},
-messageSends: ["do:", "putOn:"]}),
-smalltalk.Collection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "reject:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._select_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(aBlock)._value_(each)).__eq(false);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"reject:",{aBlock:aBlock},smalltalk.Collection)})},
-messageSends: ["select:", "=", "value:"]}),
-smalltalk.Collection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "remove:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._remove_ifAbsent_(anObject,(function(){
-return smalltalk.withContext(function($ctx2) {
-return self._errorNotFound();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"remove:",{anObject:anObject},smalltalk.Collection)})},
-messageSends: ["remove:ifAbsent:", "errorNotFound"]}),
-smalltalk.Collection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "remove:ifAbsent:",
-fn: function (anObject,aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._subclassResponsibility();
-return self}, function($ctx1) {$ctx1.fill(self,"remove:ifAbsent:",{anObject:anObject,aBlock:aBlock},smalltalk.Collection)})},
-messageSends: ["subclassResponsibility"]}),
-smalltalk.Collection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "select:",
-fn: function (aBlock){
-var self=this;
-var stream;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-stream=_st(_st(self._class())._new())._writeStream();
-self._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-$1=_st(aBlock)._value_(each);
-if(smalltalk.assert($1)){
-return _st(stream)._nextPut_(each);
-};
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-$2=_st(stream)._contents();
-return $2;
-}, function($ctx1) {$ctx1.fill(self,"select:",{aBlock:aBlock,stream:stream},smalltalk.Collection)})},
-messageSends: ["writeStream", "new", "class", "do:", "ifTrue:", "nextPut:", "value:", "contents"]}),
-smalltalk.Collection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "select:thenCollect:",
-fn: function (selectBlock,collectBlock){
-var self=this;
-var stream;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-stream=_st(_st(self._class())._new())._writeStream();
-self._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-$1=_st(selectBlock)._value_(each);
-if(smalltalk.assert($1)){
-return _st(stream)._nextPut_(_st(collectBlock)._value_(each));
-};
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-$2=_st(stream)._contents();
-return $2;
-}, function($ctx1) {$ctx1.fill(self,"select:thenCollect:",{selectBlock:selectBlock,collectBlock:collectBlock,stream:stream},smalltalk.Collection)})},
-messageSends: ["writeStream", "new", "class", "do:", "ifTrue:", "nextPut:", "value:", "contents"]}),
-smalltalk.Collection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "size",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._subclassResponsibility();
-return self}, function($ctx1) {$ctx1.fill(self,"size",{},smalltalk.Collection)})},
-messageSends: ["subclassResponsibility"]}),
-smalltalk.Collection);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "heliosClass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "collection";
-}, function($ctx1) {$ctx1.fill(self,"heliosClass",{},smalltalk.Collection.klass)})},
-messageSends: []}),
-smalltalk.Collection.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "new:",
-fn: function (anInteger){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._new();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"new:",{anInteger:anInteger},smalltalk.Collection.klass)})},
-messageSends: ["new"]}),
-smalltalk.Collection.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "with:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=self._new();
-_st($2)._add_(anObject);
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"with:",{anObject:anObject},smalltalk.Collection.klass)})},
-messageSends: ["add:", "new", "yourself"]}),
-smalltalk.Collection.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "with:with:",
-fn: function (anObject,anotherObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=self._new();
-_st($2)._add_(anObject);
-_st($2)._add_(anotherObject);
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"with:with:",{anObject:anObject,anotherObject:anotherObject},smalltalk.Collection.klass)})},
-messageSends: ["add:", "new", "yourself"]}),
-smalltalk.Collection.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "with:with:with:",
-fn: function (firstObject,secondObject,thirdObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=self._new();
-_st($2)._add_(firstObject);
-_st($2)._add_(secondObject);
-_st($2)._add_(thirdObject);
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"with:with:with:",{firstObject:firstObject,secondObject:secondObject,thirdObject:thirdObject},smalltalk.Collection.klass)})},
-messageSends: ["add:", "new", "yourself"]}),
-smalltalk.Collection.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "withAll:",
-fn: function (aCollection){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=self._new();
-_st($2)._addAll_(aCollection);
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"withAll:",{aCollection:aCollection},smalltalk.Collection.klass)})},
-messageSends: ["addAll:", "new", "yourself"]}),
-smalltalk.Collection.klass);
-
-
-smalltalk.addClass('IndexableCollection', smalltalk.Collection, [], 'Kernel-Collections');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "at:",
-fn: function (anIndex){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._at_ifAbsent_(anIndex,(function(){
-return smalltalk.withContext(function($ctx2) {
-return self._errorNotFound();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"at:",{anIndex:anIndex},smalltalk.IndexableCollection)})},
-messageSends: ["at:ifAbsent:", "errorNotFound"]}),
-smalltalk.IndexableCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "at:ifAbsent:",
-fn: function (anIndex,aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._subclassReponsibility();
-return self}, function($ctx1) {$ctx1.fill(self,"at:ifAbsent:",{anIndex:anIndex,aBlock:aBlock},smalltalk.IndexableCollection)})},
-messageSends: ["subclassReponsibility"]}),
-smalltalk.IndexableCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "at:ifPresent:",
-fn: function (anIndex,aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._at_ifPresent_ifAbsent_(anIndex,aBlock,(function(){
-return smalltalk.withContext(function($ctx2) {
-return nil;
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"at:ifPresent:",{anIndex:anIndex,aBlock:aBlock},smalltalk.IndexableCollection)})},
-messageSends: ["at:ifPresent:ifAbsent:"]}),
-smalltalk.IndexableCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "at:ifPresent:ifAbsent:",
-fn: function (anIndex,aBlock,anotherBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._subclassResponsibility();
-return self}, function($ctx1) {$ctx1.fill(self,"at:ifPresent:ifAbsent:",{anIndex:anIndex,aBlock:aBlock,anotherBlock:anotherBlock},smalltalk.IndexableCollection)})},
-messageSends: ["subclassResponsibility"]}),
-smalltalk.IndexableCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "at:put:",
-fn: function (anIndex,anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._subclassReponsibility();
-return self}, function($ctx1) {$ctx1.fill(self,"at:put:",{anIndex:anIndex,anObject:anObject},smalltalk.IndexableCollection)})},
-messageSends: ["subclassReponsibility"]}),
-smalltalk.IndexableCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "indexOf:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._indexOf_ifAbsent_(anObject,(function(){
-return smalltalk.withContext(function($ctx2) {
-return self._errorNotFound();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"indexOf:",{anObject:anObject},smalltalk.IndexableCollection)})},
-messageSends: ["indexOf:ifAbsent:", "errorNotFound"]}),
-smalltalk.IndexableCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "indexOf:ifAbsent:",
-fn: function (anObject,aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._subclassResponsibility();
-return self}, function($ctx1) {$ctx1.fill(self,"indexOf:ifAbsent:",{anObject:anObject,aBlock:aBlock},smalltalk.IndexableCollection)})},
-messageSends: ["subclassResponsibility"]}),
-smalltalk.IndexableCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "with:do:",
-fn: function (anotherCollection,aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._withIndexDo_((function(each,index){
-return smalltalk.withContext(function($ctx2) {
-return _st(aBlock)._value_value_(each,_st(anotherCollection)._at_(index));
-}, function($ctx2) {$ctx2.fillBlock({each:each,index:index},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"with:do:",{anotherCollection:anotherCollection,aBlock:aBlock},smalltalk.IndexableCollection)})},
-messageSends: ["withIndexDo:", "value:value:", "at:"]}),
-smalltalk.IndexableCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "withIndexDo:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._subclassReponsibility();
-return self}, function($ctx1) {$ctx1.fill(self,"withIndexDo:",{aBlock:aBlock},smalltalk.IndexableCollection)})},
-messageSends: ["subclassReponsibility"]}),
-smalltalk.IndexableCollection);
-
-
-
-smalltalk.addClass('HashedCollection', smalltalk.IndexableCollection, [], 'Kernel-Collections');
-smalltalk.addMethod(
-smalltalk.method({
-selector: ",",
-fn: function (aCollection){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._shouldNotImplement();
-return self}, function($ctx1) {$ctx1.fill(self,",",{aCollection:aCollection},smalltalk.HashedCollection)})},
-messageSends: ["shouldNotImplement"]}),
-smalltalk.HashedCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "=",
-fn: function (aHashedCollection){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3;
-$1=_st(self._class()).__eq(_st(aHashedCollection)._class());
-if(! smalltalk.assert($1)){
-return false;
-};
-$2=_st(self._size()).__eq(_st(aHashedCollection)._size());
-if(! smalltalk.assert($2)){
-return false;
-};
-$3=_st(self._associations()).__eq(_st(aHashedCollection)._associations());
-return $3;
-}, function($ctx1) {$ctx1.fill(self,"=",{aHashedCollection:aHashedCollection},smalltalk.HashedCollection)})},
-messageSends: ["ifFalse:", "=", "class", "size", "associations"]}),
-smalltalk.HashedCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "add:",
-fn: function (anAssociation){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._at_put_(_st(anAssociation)._key(),_st(anAssociation)._value());
-return self}, function($ctx1) {$ctx1.fill(self,"add:",{anAssociation:anAssociation},smalltalk.HashedCollection)})},
-messageSends: ["at:put:", "key", "value"]}),
-smalltalk.HashedCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "addAll:",
-fn: function (aHashedCollection){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-smalltalk.HashedCollection.superclass.fn.prototype._addAll_.apply(_st(self), [_st(aHashedCollection)._associations()]);
-$1=aHashedCollection;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"addAll:",{aHashedCollection:aHashedCollection},smalltalk.HashedCollection)})},
-messageSends: ["addAll:", "associations"]}),
-smalltalk.HashedCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "asDictionary",
-fn: function (){
-var self=this;
-function $Dictionary(){return smalltalk.Dictionary||(typeof Dictionary=="undefined"?nil:Dictionary)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st($Dictionary())._from_(self._associations());
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"asDictionary",{},smalltalk.HashedCollection)})},
-messageSends: ["from:", "associations"]}),
-smalltalk.HashedCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "asJSON",
-fn: function (){
-var self=this;
-var c;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-c=_st(self._class())._new();
-self._keysAndValuesDo_((function(key,value){
-return smalltalk.withContext(function($ctx2) {
-return _st(c)._at_put_(key,_st(value)._asJSON());
-}, function($ctx2) {$ctx2.fillBlock({key:key,value:value},$ctx1)})}));
-$1=c;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"asJSON",{c:c},smalltalk.HashedCollection)})},
-messageSends: ["new", "class", "keysAndValuesDo:", "at:put:", "asJSON"]}),
-smalltalk.HashedCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "associations",
-fn: function (){
-var self=this;
-var associations;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-associations=[];
-self._associationsDo_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(associations)._add_(each);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-$1=associations;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"associations",{associations:associations},smalltalk.HashedCollection)})},
-messageSends: ["associationsDo:", "add:"]}),
-smalltalk.HashedCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "associationsDo:",
-fn: function (aBlock){
-var self=this;
-function $Association(){return smalltalk.Association||(typeof Association=="undefined"?nil:Association)}
-return smalltalk.withContext(function($ctx1) { 
-self._keysAndValuesDo_((function(key,value){
-return smalltalk.withContext(function($ctx2) {
-return _st(aBlock)._value_(_st($Association())._key_value_(key,value));
-}, function($ctx2) {$ctx2.fillBlock({key:key,value:value},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"associationsDo:",{aBlock:aBlock},smalltalk.HashedCollection)})},
-messageSends: ["keysAndValuesDo:", "value:", "key:value:"]}),
-smalltalk.HashedCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "at:ifAbsent:",
-fn: function (aKey,aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self._includesKey_(aKey);
-$1=_st($2)._ifTrue_ifFalse_((function(){
-return smalltalk.withContext(function($ctx2) {
-return self._basicAt_(aKey);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),aBlock);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"at:ifAbsent:",{aKey:aKey,aBlock:aBlock},smalltalk.HashedCollection)})},
-messageSends: ["ifTrue:ifFalse:", "basicAt:", "includesKey:"]}),
-smalltalk.HashedCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "at:ifAbsentPut:",
-fn: function (aKey,aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._at_ifAbsent_(aKey,(function(){
-return smalltalk.withContext(function($ctx2) {
-return self._at_put_(aKey,_st(aBlock)._value());
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"at:ifAbsentPut:",{aKey:aKey,aBlock:aBlock},smalltalk.HashedCollection)})},
-messageSends: ["at:ifAbsent:", "at:put:", "value"]}),
-smalltalk.HashedCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "at:ifPresent:ifAbsent:",
-fn: function (aKey,aBlock,anotherBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self._includesKey_(aKey);
-$1=_st($2)._ifTrue_ifFalse_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(aBlock)._value_(self._at_(aKey));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),anotherBlock);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"at:ifPresent:ifAbsent:",{aKey:aKey,aBlock:aBlock,anotherBlock:anotherBlock},smalltalk.HashedCollection)})},
-messageSends: ["ifTrue:ifFalse:", "value:", "at:", "includesKey:"]}),
-smalltalk.HashedCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "at:put:",
-fn: function (aKey,aValue){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._basicAt_put_(aKey,aValue);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"at:put:",{aKey:aKey,aValue:aValue},smalltalk.HashedCollection)})},
-messageSends: ["basicAt:put:"]}),
-smalltalk.HashedCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "collect:",
-fn: function (aBlock){
-var self=this;
-var newDict;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-newDict=_st(self._class())._new();
-self._keysAndValuesDo_((function(key,value){
-return smalltalk.withContext(function($ctx2) {
-return _st(newDict)._at_put_(key,_st(aBlock)._value_(value));
-}, function($ctx2) {$ctx2.fillBlock({key:key,value:value},$ctx1)})}));
-$1=newDict;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"collect:",{aBlock:aBlock,newDict:newDict},smalltalk.HashedCollection)})},
-messageSends: ["new", "class", "keysAndValuesDo:", "at:put:", "value:"]}),
-smalltalk.HashedCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "deepCopy",
-fn: function (){
-var self=this;
-var copy;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-copy=_st(self._class())._new();
-self._keysAndValuesDo_((function(key,value){
-return smalltalk.withContext(function($ctx2) {
-return _st(copy)._at_put_(key,_st(value)._deepCopy());
-}, function($ctx2) {$ctx2.fillBlock({key:key,value:value},$ctx1)})}));
-$1=copy;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"deepCopy",{copy:copy},smalltalk.HashedCollection)})},
-messageSends: ["new", "class", "keysAndValuesDo:", "at:put:", "deepCopy"]}),
-smalltalk.HashedCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "detect:ifNone:",
-fn: function (aBlock,anotherBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._values())._detect_ifNone_(aBlock,anotherBlock);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"detect:ifNone:",{aBlock:aBlock,anotherBlock:anotherBlock},smalltalk.HashedCollection)})},
-messageSends: ["detect:ifNone:", "values"]}),
-smalltalk.HashedCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "do:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._valuesDo_(aBlock);
-return self}, function($ctx1) {$ctx1.fill(self,"do:",{aBlock:aBlock},smalltalk.HashedCollection)})},
-messageSends: ["valuesDo:"]}),
-smalltalk.HashedCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "includes:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._values())._includes_(anObject);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"includes:",{anObject:anObject},smalltalk.HashedCollection)})},
-messageSends: ["includes:", "values"]}),
-smalltalk.HashedCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "includesKey:",
-fn: function (aKey){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self.hasOwnProperty(aKey);
-return self}, function($ctx1) {$ctx1.fill(self,"includesKey:",{aKey:aKey},smalltalk.HashedCollection)})},
-messageSends: []}),
-smalltalk.HashedCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "indexOf:ifAbsent:",
-fn: function (anObject,aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._keys())._detect_ifNone_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(self._at_(each)).__eq(anObject);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}),aBlock);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"indexOf:ifAbsent:",{anObject:anObject,aBlock:aBlock},smalltalk.HashedCollection)})},
-messageSends: ["detect:ifNone:", "=", "at:", "keys"]}),
-smalltalk.HashedCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "keyAtValue:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._keyAtValue_ifAbsent_(anObject,(function(){
-return smalltalk.withContext(function($ctx2) {
-return self._errorNotFound();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"keyAtValue:",{anObject:anObject},smalltalk.HashedCollection)})},
-messageSends: ["keyAtValue:ifAbsent:", "errorNotFound"]}),
-smalltalk.HashedCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "keyAtValue:ifAbsent:",
-fn: function (anObject,aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._indexOf_ifAbsent_(anObject,aBlock);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"keyAtValue:ifAbsent:",{anObject:anObject,aBlock:aBlock},smalltalk.HashedCollection)})},
-messageSends: ["indexOf:ifAbsent:"]}),
-smalltalk.HashedCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "keys",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-
-		if ('function'===typeof Object.keys) return Object.keys(self);
-		var keys = [];
-		for(var i in self) {
-			if(self.hasOwnProperty(i)) {
-				keys.push(i);
-			}
-		};
-		return keys;
-	;
-return self}, function($ctx1) {$ctx1.fill(self,"keys",{},smalltalk.HashedCollection)})},
-messageSends: []}),
-smalltalk.HashedCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "keysAndValuesDo:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._keysDo_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(aBlock)._value_value_(each,self._at_(each));
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"keysAndValuesDo:",{aBlock:aBlock},smalltalk.HashedCollection)})},
-messageSends: ["keysDo:", "value:value:", "at:"]}),
-smalltalk.HashedCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "keysDo:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._keys())._do_(aBlock);
-return self}, function($ctx1) {$ctx1.fill(self,"keysDo:",{aBlock:aBlock},smalltalk.HashedCollection)})},
-messageSends: ["do:", "keys"]}),
-smalltalk.HashedCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "printOn:",
-fn: function (aStream){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-smalltalk.HashedCollection.superclass.fn.prototype._printOn_.apply(_st(self), [aStream]);
-_st(aStream)._nextPutAll_(" (");
-_st(self._associations())._do_separatedBy_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(each)._printOn_(aStream);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}),(function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(aStream)._nextPutAll_(" , ");
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-_st(aStream)._nextPutAll_(")");
-return self}, function($ctx1) {$ctx1.fill(self,"printOn:",{aStream:aStream},smalltalk.HashedCollection)})},
-messageSends: ["printOn:", "nextPutAll:", "do:separatedBy:", "associations"]}),
-smalltalk.HashedCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "remove:ifAbsent:",
-fn: function (aKey,aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._removeKey_ifAbsent_(aKey,aBlock);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"remove:ifAbsent:",{aKey:aKey,aBlock:aBlock},smalltalk.HashedCollection)})},
-messageSends: ["removeKey:ifAbsent:"]}),
-smalltalk.HashedCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "removeKey:",
-fn: function (aKey){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._remove_(aKey);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"removeKey:",{aKey:aKey},smalltalk.HashedCollection)})},
-messageSends: ["remove:"]}),
-smalltalk.HashedCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "removeKey:ifAbsent:",
-fn: function (aKey,aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self._includesKey_(aKey);
-if(smalltalk.assert($2)){
-$1=self._basicDelete_(aKey);
-} else {
-$1=_st(aBlock)._value();
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"removeKey:ifAbsent:",{aKey:aKey,aBlock:aBlock},smalltalk.HashedCollection)})},
-messageSends: ["ifFalse:ifTrue:", "value", "basicDelete:", "includesKey:"]}),
-smalltalk.HashedCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "select:",
-fn: function (aBlock){
-var self=this;
-var newDict;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-newDict=_st(self._class())._new();
-self._keysAndValuesDo_((function(key,value){
-return smalltalk.withContext(function($ctx2) {
-$1=_st(aBlock)._value_(value);
-if(smalltalk.assert($1)){
-return _st(newDict)._at_put_(key,value);
-};
-}, function($ctx2) {$ctx2.fillBlock({key:key,value:value},$ctx1)})}));
-$2=newDict;
-return $2;
-}, function($ctx1) {$ctx1.fill(self,"select:",{aBlock:aBlock,newDict:newDict},smalltalk.HashedCollection)})},
-messageSends: ["new", "class", "keysAndValuesDo:", "ifTrue:", "at:put:", "value:"]}),
-smalltalk.HashedCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "shallowCopy",
-fn: function (){
-var self=this;
-var copy;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-copy=_st(self._class())._new();
-self._keysAndValuesDo_((function(key,value){
-return smalltalk.withContext(function($ctx2) {
-return _st(copy)._at_put_(key,value);
-}, function($ctx2) {$ctx2.fillBlock({key:key,value:value},$ctx1)})}));
-$1=copy;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"shallowCopy",{copy:copy},smalltalk.HashedCollection)})},
-messageSends: ["new", "class", "keysAndValuesDo:", "at:put:"]}),
-smalltalk.HashedCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "size",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._keys())._size();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"size",{},smalltalk.HashedCollection)})},
-messageSends: ["size", "keys"]}),
-smalltalk.HashedCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "values",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-
-		return self._keys().map(function(key){
-			return self._at_(key);
-		});
-	;
-return self}, function($ctx1) {$ctx1.fill(self,"values",{},smalltalk.HashedCollection)})},
-messageSends: []}),
-smalltalk.HashedCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "valuesDo:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._values())._do_((function(value){
-return smalltalk.withContext(function($ctx2) {
-return _st(aBlock)._value_(value);
-}, function($ctx2) {$ctx2.fillBlock({value:value},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"valuesDo:",{aBlock:aBlock},smalltalk.HashedCollection)})},
-messageSends: ["do:", "value:", "values"]}),
-smalltalk.HashedCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "withIndexDo:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._keysAndValuesDo_((function(key,value){
-return smalltalk.withContext(function($ctx2) {
-return _st(aBlock)._value_value_(value,key);
-}, function($ctx2) {$ctx2.fillBlock({key:key,value:value},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"withIndexDo:",{aBlock:aBlock},smalltalk.HashedCollection)})},
-messageSends: ["keysAndValuesDo:", "value:value:"]}),
-smalltalk.HashedCollection);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "from:",
-fn: function (aCollection){
-var self=this;
-var newCollection;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-newCollection=self._new();
-_st(aCollection)._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(newCollection)._add_(each);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-$1=newCollection;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"from:",{aCollection:aCollection,newCollection:newCollection},smalltalk.HashedCollection.klass)})},
-messageSends: ["new", "do:", "add:"]}),
-smalltalk.HashedCollection.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "fromPairs:",
-fn: function (aCollection){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._from_(aCollection);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"fromPairs:",{aCollection:aCollection},smalltalk.HashedCollection.klass)})},
-messageSends: ["from:"]}),
-smalltalk.HashedCollection.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "newFromPairs:",
-fn: function (aCollection){
-var self=this;
-var newCollection;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st(_st(aCollection)._size())._even();
-if(! smalltalk.assert($1)){
-self._error_("#newFromPairs only accepts arrays of an even length");
-};
-newCollection=self._new();
-_st((1)._to_by_(_st(aCollection)._size(),(2)))._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(newCollection)._at_put_(_st(aCollection)._at_(each),_st(aCollection)._at_(_st(each).__plus((1))));
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-$2=newCollection;
-return $2;
-}, function($ctx1) {$ctx1.fill(self,"newFromPairs:",{aCollection:aCollection,newCollection:newCollection},smalltalk.HashedCollection.klass)})},
-messageSends: ["ifFalse:", "error:", "even", "size", "new", "do:", "at:put:", "at:", "+", "to:by:"]}),
-smalltalk.HashedCollection.klass);
-
-
-smalltalk.addClass('Dictionary', smalltalk.HashedCollection, ['keys', 'values'], 'Kernel-Collections');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "asHashedCollection",
-fn: function (){
-var self=this;
-function $HashedCollection(){return smalltalk.HashedCollection||(typeof HashedCollection=="undefined"?nil:HashedCollection)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st($HashedCollection())._from_(self._associations());
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"asHashedCollection",{},smalltalk.Dictionary)})},
-messageSends: ["from:", "associations"]}),
-smalltalk.Dictionary);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "asJSON",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._asHashedCollection())._asJSON();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"asJSON",{},smalltalk.Dictionary)})},
-messageSends: ["asJSON", "asHashedCollection"]}),
-smalltalk.Dictionary);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "at:ifAbsent:",
-fn: function (aKey,aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-
-		var index = self._positionOfKey_(aKey);
-		return index >=0 ? self['@values'][index] : aBlock._value();
-	;
-return self}, function($ctx1) {$ctx1.fill(self,"at:ifAbsent:",{aKey:aKey,aBlock:aBlock},smalltalk.Dictionary)})},
-messageSends: []}),
-smalltalk.Dictionary);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "at:put:",
-fn: function (aKey,aValue){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-
-		var index = self._positionOfKey_(aKey);
-		if(index === -1) {
-			var keys = self['@keys'];
-			index = keys.length;
-			keys.push(aKey);
-		}
-
-		return self['@values'][index] = aValue;
-	;
-return self}, function($ctx1) {$ctx1.fill(self,"at:put:",{aKey:aKey,aValue:aValue},smalltalk.Dictionary)})},
-messageSends: []}),
-smalltalk.Dictionary);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "includesKey:",
-fn: function (aKey){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
- return self._positionOfKey_(aKey) >= 0; ;
-return self}, function($ctx1) {$ctx1.fill(self,"includesKey:",{aKey:aKey},smalltalk.Dictionary)})},
-messageSends: []}),
-smalltalk.Dictionary);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "indexOf:ifAbsent:",
-fn: function (anObject,aBlock){
-var self=this;
-var index;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-index=_st(self["@values"])._indexOf_ifAbsent_(anObject,(function(){
-return smalltalk.withContext(function($ctx2) {
-return (0);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-$2=_st(index).__eq((0));
-if(smalltalk.assert($2)){
-$1=_st(aBlock)._value();
-} else {
-$1=_st(self["@keys"])._at_(index);
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"indexOf:ifAbsent:",{anObject:anObject,aBlock:aBlock,index:index},smalltalk.Dictionary)})},
-messageSends: ["indexOf:ifAbsent:", "ifTrue:ifFalse:", "value", "at:", "="]}),
-smalltalk.Dictionary);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "initialize",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-smalltalk.Dictionary.superclass.fn.prototype._initialize.apply(_st(self), []);
-self["@keys"]=[];
-self["@values"]=[];
-return self}, function($ctx1) {$ctx1.fill(self,"initialize",{},smalltalk.Dictionary)})},
-messageSends: ["initialize"]}),
-smalltalk.Dictionary);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "keys",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self["@keys"])._copy();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"keys",{},smalltalk.Dictionary)})},
-messageSends: ["copy"]}),
-smalltalk.Dictionary);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "keysAndValuesDo:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self["@keys"])._with_do_(self["@values"],aBlock);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"keysAndValuesDo:",{aBlock:aBlock},smalltalk.Dictionary)})},
-messageSends: ["with:do:"]}),
-smalltalk.Dictionary);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "keysDo:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self["@keys"])._do_(aBlock);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"keysDo:",{aBlock:aBlock},smalltalk.Dictionary)})},
-messageSends: ["do:"]}),
-smalltalk.Dictionary);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "positionOfKey:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-
-		var keys = self['@keys'];
-		for(var i=0;i<keys.length;i++){
-			if(keys[i].__eq(anObject)) { return i;}
-		}
-		return -1;
-	;
-return self}, function($ctx1) {$ctx1.fill(self,"positionOfKey:",{anObject:anObject},smalltalk.Dictionary)})},
-messageSends: []}),
-smalltalk.Dictionary);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "removeKey:ifAbsent:",
-fn: function (aKey,aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-
-		var index = self._positionOfKey_(aKey);
-		if(index === -1) {
-			return aBlock._value()
-		} else {
-			var keys = self['@keys'], values = self['@values'];
-			var value = values[index], l = keys.length;
-			keys[index] = keys[l-1];
-			keys.pop();
-			values[index] = values[l-1];
-			values.pop();
-			return value;
-		}
-	;
-return self}, function($ctx1) {$ctx1.fill(self,"removeKey:ifAbsent:",{aKey:aKey,aBlock:aBlock},smalltalk.Dictionary)})},
-messageSends: []}),
-smalltalk.Dictionary);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "values",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@values"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"values",{},smalltalk.Dictionary)})},
-messageSends: []}),
-smalltalk.Dictionary);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "valuesDo:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self["@values"])._do_(aBlock);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"valuesDo:",{aBlock:aBlock},smalltalk.Dictionary)})},
-messageSends: ["do:"]}),
-smalltalk.Dictionary);
-
-
-
-smalltalk.addClass('SequenceableCollection', smalltalk.IndexableCollection, [], 'Kernel-Collections');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "=",
-fn: function (aCollection){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-var $early={};
-try {
-$1=_st(_st(self._class()).__eq(_st(aCollection)._class()))._and_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(self._size()).__eq(_st(aCollection)._size());
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-if(! smalltalk.assert($1)){
-return false;
-};
-self._withIndexDo_((function(each,i){
-return smalltalk.withContext(function($ctx2) {
-$2=_st(_st(aCollection)._at_(i)).__eq(each);
-if(! smalltalk.assert($2)){
-throw $early=[false];
-};
-}, function($ctx2) {$ctx2.fillBlock({each:each,i:i},$ctx1)})}));
-return true;
-}
-catch(e) {if(e===$early)return e[0]; throw e}
-}, function($ctx1) {$ctx1.fill(self,"=",{aCollection:aCollection},smalltalk.SequenceableCollection)})},
-messageSends: ["ifFalse:", "and:", "=", "size", "class", "withIndexDo:", "at:"]}),
-smalltalk.SequenceableCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "addLast:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._add_(anObject);
-return self}, function($ctx1) {$ctx1.fill(self,"addLast:",{anObject:anObject},smalltalk.SequenceableCollection)})},
-messageSends: ["add:"]}),
-smalltalk.SequenceableCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "allButFirst",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._copyFrom_to_((2),self._size());
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"allButFirst",{},smalltalk.SequenceableCollection)})},
-messageSends: ["copyFrom:to:", "size"]}),
-smalltalk.SequenceableCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "allButLast",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._copyFrom_to_((1),_st(self._size()).__minus((1)));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"allButLast",{},smalltalk.SequenceableCollection)})},
-messageSends: ["copyFrom:to:", "-", "size"]}),
-smalltalk.SequenceableCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "atRandom",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._at_(_st(self._size())._atRandom());
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"atRandom",{},smalltalk.SequenceableCollection)})},
-messageSends: ["at:", "atRandom", "size"]}),
-smalltalk.SequenceableCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "copyFrom:to:",
-fn: function (anIndex,anotherIndex){
-var self=this;
-var range,newCollection;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-range=_st(anIndex)._to_(anotherIndex);
-newCollection=_st(self._class())._new_(_st(range)._size());
-_st(range)._withIndexDo_((function(each,i){
-return smalltalk.withContext(function($ctx2) {
-return _st(newCollection)._at_put_(i,self._at_(each));
-}, function($ctx2) {$ctx2.fillBlock({each:each,i:i},$ctx1)})}));
-$1=newCollection;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"copyFrom:to:",{anIndex:anIndex,anotherIndex:anotherIndex,range:range,newCollection:newCollection},smalltalk.SequenceableCollection)})},
-messageSends: ["to:", "new:", "size", "class", "withIndexDo:", "at:put:", "at:"]}),
-smalltalk.SequenceableCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "deepCopy",
-fn: function (){
-var self=this;
-var newCollection;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-newCollection=_st(self._class())._new_(self._size());
-self._withIndexDo_((function(each,index){
-return smalltalk.withContext(function($ctx2) {
-return _st(newCollection)._at_put_(index,_st(each)._deepCopy());
-}, function($ctx2) {$ctx2.fillBlock({each:each,index:index},$ctx1)})}));
-$1=newCollection;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"deepCopy",{newCollection:newCollection},smalltalk.SequenceableCollection)})},
-messageSends: ["new:", "size", "class", "withIndexDo:", "at:put:", "deepCopy"]}),
-smalltalk.SequenceableCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "detect:ifNone:",
-fn: function (aBlock,anotherBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-
-		for(var i = 0; i < self.length; i++)
-			if(aBlock._value_(self[i]))
-				return self[i];
-		return anotherBlock._value();
-	;
-return self}, function($ctx1) {$ctx1.fill(self,"detect:ifNone:",{aBlock:aBlock,anotherBlock:anotherBlock},smalltalk.SequenceableCollection)})},
-messageSends: []}),
-smalltalk.SequenceableCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "do:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-for(var i=0;i<self.length;i++){aBlock._value_(self[i]);};
-return self}, function($ctx1) {$ctx1.fill(self,"do:",{aBlock:aBlock},smalltalk.SequenceableCollection)})},
-messageSends: []}),
-smalltalk.SequenceableCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "first",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._at_((1));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"first",{},smalltalk.SequenceableCollection)})},
-messageSends: ["at:"]}),
-smalltalk.SequenceableCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "first:",
-fn: function (n){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._copyFrom_to_((1),n);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"first:",{n:n},smalltalk.SequenceableCollection)})},
-messageSends: ["copyFrom:to:"]}),
-smalltalk.SequenceableCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "fourth",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._at_((4));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"fourth",{},smalltalk.SequenceableCollection)})},
-messageSends: ["at:"]}),
-smalltalk.SequenceableCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "includes:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._indexOf_ifAbsent_(anObject,(function(){
-return smalltalk.withContext(function($ctx2) {
-return nil;
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})})))._notNil();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"includes:",{anObject:anObject},smalltalk.SequenceableCollection)})},
-messageSends: ["notNil", "indexOf:ifAbsent:"]}),
-smalltalk.SequenceableCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "indexOf:ifAbsent:",
-fn: function (anObject,aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-
-		for(var i=0;i<self.length;i++) {
-			if(self[i].__eq(anObject)) {return i+1}
-		};
-		return aBlock._value();
-	;
-return self}, function($ctx1) {$ctx1.fill(self,"indexOf:ifAbsent:",{anObject:anObject,aBlock:aBlock},smalltalk.SequenceableCollection)})},
-messageSends: []}),
-smalltalk.SequenceableCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "indexOf:startingAt:",
-fn: function (anObject,start){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._indexOf_startingAt_ifAbsent_(anObject,start,(function(){
-return smalltalk.withContext(function($ctx2) {
-return (0);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"indexOf:startingAt:",{anObject:anObject,start:start},smalltalk.SequenceableCollection)})},
-messageSends: ["indexOf:startingAt:ifAbsent:"]}),
-smalltalk.SequenceableCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "indexOf:startingAt:ifAbsent:",
-fn: function (anObject,start,aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-
-		for(var i=start-1;i<self.length;i++){
-			if(self[i].__eq(anObject)) {return i+1}
-		}
-		return aBlock._value();
-	;
-return self}, function($ctx1) {$ctx1.fill(self,"indexOf:startingAt:ifAbsent:",{anObject:anObject,start:start,aBlock:aBlock},smalltalk.SequenceableCollection)})},
-messageSends: []}),
-smalltalk.SequenceableCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "last",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._at_(self._size());
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"last",{},smalltalk.SequenceableCollection)})},
-messageSends: ["at:", "size"]}),
-smalltalk.SequenceableCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "newStream",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._streamClass())._on_(self);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"newStream",{},smalltalk.SequenceableCollection)})},
-messageSends: ["on:", "streamClass"]}),
-smalltalk.SequenceableCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "readStream",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._stream();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"readStream",{},smalltalk.SequenceableCollection)})},
-messageSends: ["stream"]}),
-smalltalk.SequenceableCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "removeLast",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._remove_(self._last());
-return self}, function($ctx1) {$ctx1.fill(self,"removeLast",{},smalltalk.SequenceableCollection)})},
-messageSends: ["remove:", "last"]}),
-smalltalk.SequenceableCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "reversed",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._subclassResponsibility();
-return self}, function($ctx1) {$ctx1.fill(self,"reversed",{},smalltalk.SequenceableCollection)})},
-messageSends: ["subclassResponsibility"]}),
-smalltalk.SequenceableCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "second",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._at_((2));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"second",{},smalltalk.SequenceableCollection)})},
-messageSends: ["at:"]}),
-smalltalk.SequenceableCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "shallowCopy",
-fn: function (){
-var self=this;
-var newCollection;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-newCollection=_st(self._class())._new_(self._size());
-self._withIndexDo_((function(each,index){
-return smalltalk.withContext(function($ctx2) {
-return _st(newCollection)._at_put_(index,each);
-}, function($ctx2) {$ctx2.fillBlock({each:each,index:index},$ctx1)})}));
-$1=newCollection;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"shallowCopy",{newCollection:newCollection},smalltalk.SequenceableCollection)})},
-messageSends: ["new:", "size", "class", "withIndexDo:", "at:put:"]}),
-smalltalk.SequenceableCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "stream",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._newStream();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"stream",{},smalltalk.SequenceableCollection)})},
-messageSends: ["newStream"]}),
-smalltalk.SequenceableCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "streamClass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._class())._streamClass();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"streamClass",{},smalltalk.SequenceableCollection)})},
-messageSends: ["streamClass", "class"]}),
-smalltalk.SequenceableCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "third",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._at_((3));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"third",{},smalltalk.SequenceableCollection)})},
-messageSends: ["at:"]}),
-smalltalk.SequenceableCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "with:do:",
-fn: function (anotherCollection,aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-for(var i=0;i<self.length;i++){aBlock._value_value_(self[i], anotherCollection[i]);};
-return self}, function($ctx1) {$ctx1.fill(self,"with:do:",{anotherCollection:anotherCollection,aBlock:aBlock},smalltalk.SequenceableCollection)})},
-messageSends: []}),
-smalltalk.SequenceableCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "withIndexDo:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-for(var i=0;i<self.length;i++){aBlock._value_value_(self[i], i+1);};
-return self}, function($ctx1) {$ctx1.fill(self,"withIndexDo:",{aBlock:aBlock},smalltalk.SequenceableCollection)})},
-messageSends: []}),
-smalltalk.SequenceableCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "writeStream",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._stream();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"writeStream",{},smalltalk.SequenceableCollection)})},
-messageSends: ["stream"]}),
-smalltalk.SequenceableCollection);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "streamClass",
-fn: function (){
-var self=this;
-function $Stream(){return smalltalk.Stream||(typeof Stream=="undefined"?nil:Stream)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=$Stream();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"streamClass",{},smalltalk.SequenceableCollection.klass)})},
-messageSends: []}),
-smalltalk.SequenceableCollection.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "streamContents:",
-fn: function (aBlock){
-var self=this;
-var stream;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-stream=_st(self._streamClass())._on_(self._new());
-_st(aBlock)._value_(stream);
-$1=_st(stream)._contents();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"streamContents:",{aBlock:aBlock,stream:stream},smalltalk.SequenceableCollection.klass)})},
-messageSends: ["on:", "new", "streamClass", "value:", "contents"]}),
-smalltalk.SequenceableCollection.klass);
-
-
-smalltalk.addClass('Array', smalltalk.SequenceableCollection, [], 'Kernel-Collections');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "add:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self.push(anObject); return anObject;;
-return self}, function($ctx1) {$ctx1.fill(self,"add:",{anObject:anObject},smalltalk.Array)})},
-messageSends: []}),
-smalltalk.Array);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "asJavascript",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st("[".__comma(_st(self._collect_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(each)._asJavascript();
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})})))._join_(", "))).__comma("]");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"asJavascript",{},smalltalk.Array)})},
-messageSends: [",", "join:", "collect:", "asJavascript"]}),
-smalltalk.Array);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "at:ifAbsent:",
-fn: function (anIndex,aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-
-		if((anIndex < 1) || (self.length < anIndex)) {return aBlock._value()};
-		return self[anIndex - 1];
-	;
-return self}, function($ctx1) {$ctx1.fill(self,"at:ifAbsent:",{anIndex:anIndex,aBlock:aBlock},smalltalk.Array)})},
-messageSends: []}),
-smalltalk.Array);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "at:ifPresent:ifAbsent:",
-fn: function (anIndex,aBlock,anotherBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return anIndex < 1 || self.length < anIndex ? anotherBlock._value() : aBlock._value_(self[anIndex - 1]);;
-return self}, function($ctx1) {$ctx1.fill(self,"at:ifPresent:ifAbsent:",{anIndex:anIndex,aBlock:aBlock,anotherBlock:anotherBlock},smalltalk.Array)})},
-messageSends: []}),
-smalltalk.Array);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "at:put:",
-fn: function (anIndex,anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self[anIndex - 1] = anObject;
-return self}, function($ctx1) {$ctx1.fill(self,"at:put:",{anIndex:anIndex,anObject:anObject},smalltalk.Array)})},
-messageSends: []}),
-smalltalk.Array);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "collect:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self.map(function(each) {return aBlock._value_(each)});
-return self}, function($ctx1) {$ctx1.fill(self,"collect:",{aBlock:aBlock},smalltalk.Array)})},
-messageSends: []}),
-smalltalk.Array);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "join:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self.join(aString);
-return self}, function($ctx1) {$ctx1.fill(self,"join:",{aString:aString},smalltalk.Array)})},
-messageSends: []}),
-smalltalk.Array);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "printOn:",
-fn: function (aStream){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-smalltalk.Array.superclass.fn.prototype._printOn_.apply(_st(self), [aStream]);
-_st(aStream)._nextPutAll_(" (");
-self._do_separatedBy_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(each)._printOn_(aStream);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}),(function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(aStream)._nextPutAll_(" ");
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-_st(aStream)._nextPutAll_(")");
-return self}, function($ctx1) {$ctx1.fill(self,"printOn:",{aStream:aStream},smalltalk.Array)})},
-messageSends: ["printOn:", "nextPutAll:", "do:separatedBy:"]}),
-smalltalk.Array);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "remove:ifAbsent:",
-fn: function (anObject,aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-
-		for(var i=0;i<self.length;i++) {
-			if(_st(self[i]).__eq(anObject)) {
-				self.splice(i,1);
-				return self;
-			}
-		};
-		aBlock._value();
-	;
-return self}, function($ctx1) {$ctx1.fill(self,"remove:ifAbsent:",{anObject:anObject,aBlock:aBlock},smalltalk.Array)})},
-messageSends: []}),
-smalltalk.Array);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "removeFrom:to:",
-fn: function (aNumber,anotherNumber){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self.splice(aNumber -1, anotherNumber - aNumber + 1);
-return self}, function($ctx1) {$ctx1.fill(self,"removeFrom:to:",{aNumber:aNumber,anotherNumber:anotherNumber},smalltalk.Array)})},
-messageSends: []}),
-smalltalk.Array);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "removeIndex:",
-fn: function (anInteger){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self.splice(anInteger - 1, 1);
-return self}, function($ctx1) {$ctx1.fill(self,"removeIndex:",{anInteger:anInteger},smalltalk.Array)})},
-messageSends: []}),
-smalltalk.Array);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "reversed",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self._copy().reverse();
-return self}, function($ctx1) {$ctx1.fill(self,"reversed",{},smalltalk.Array)})},
-messageSends: []}),
-smalltalk.Array);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "select:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-
-		var result = self.klass._new();
-		for(var i=0; i<self.length; i++) {
-			if(aBlock._value_(self[i])) {
-				result.push(self[i]);
-			}
-		}
-		return result;
-	;
-return self}, function($ctx1) {$ctx1.fill(self,"select:",{aBlock:aBlock},smalltalk.Array)})},
-messageSends: []}),
-smalltalk.Array);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "size",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self.length;
-return self}, function($ctx1) {$ctx1.fill(self,"size",{},smalltalk.Array)})},
-messageSends: []}),
-smalltalk.Array);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "sort",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._basicPerform_("sort");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"sort",{},smalltalk.Array)})},
-messageSends: ["basicPerform:"]}),
-smalltalk.Array);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "sort:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-
-		return self.sort(function(a, b) {
-			if(aBlock._value_value_(a,b)) {return -1} else {return 1}
-		})
-	;
-return self}, function($ctx1) {$ctx1.fill(self,"sort:",{aBlock:aBlock},smalltalk.Array)})},
-messageSends: []}),
-smalltalk.Array);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "sorted",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._copy())._sort();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"sorted",{},smalltalk.Array)})},
-messageSends: ["sort", "copy"]}),
-smalltalk.Array);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "sorted:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._copy())._sort_(aBlock);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"sorted:",{aBlock:aBlock},smalltalk.Array)})},
-messageSends: ["sort:", "copy"]}),
-smalltalk.Array);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "new:",
-fn: function (anInteger){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return new Array(anInteger);
-return self}, function($ctx1) {$ctx1.fill(self,"new:",{anInteger:anInteger},smalltalk.Array.klass)})},
-messageSends: []}),
-smalltalk.Array.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "with:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=self._new_((1));
-_st($2)._at_put_((1),anObject);
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"with:",{anObject:anObject},smalltalk.Array.klass)})},
-messageSends: ["at:put:", "new:", "yourself"]}),
-smalltalk.Array.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "with:with:",
-fn: function (anObject,anObject2){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=self._new_((2));
-_st($2)._at_put_((1),anObject);
-_st($2)._at_put_((2),anObject2);
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"with:with:",{anObject:anObject,anObject2:anObject2},smalltalk.Array.klass)})},
-messageSends: ["at:put:", "new:", "yourself"]}),
-smalltalk.Array.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "with:with:with:",
-fn: function (anObject,anObject2,anObject3){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=self._new_((3));
-_st($2)._at_put_((1),anObject);
-_st($2)._at_put_((2),anObject2);
-_st($2)._at_put_((3),anObject3);
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"with:with:with:",{anObject:anObject,anObject2:anObject2,anObject3:anObject3},smalltalk.Array.klass)})},
-messageSends: ["at:put:", "new:", "yourself"]}),
-smalltalk.Array.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "withAll:",
-fn: function (aCollection){
-var self=this;
-var instance,index;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-index=(1);
-instance=self._new_(_st(aCollection)._size());
-_st(aCollection)._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-_st(instance)._at_put_(index,each);
-index=_st(index).__plus((1));
-return index;
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-$1=instance;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"withAll:",{aCollection:aCollection,instance:instance,index:index},smalltalk.Array.klass)})},
-messageSends: ["new:", "size", "do:", "at:put:", "+"]}),
-smalltalk.Array.klass);
-
-
-smalltalk.addClass('CharacterArray', smalltalk.SequenceableCollection, [], 'Kernel-Collections');
-smalltalk.addMethod(
-smalltalk.method({
-selector: ",",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._asString()).__comma(_st(aString)._asString());
-return $1;
-}, function($ctx1) {$ctx1.fill(self,",",{aString:aString},smalltalk.CharacterArray)})},
-messageSends: [",", "asString"]}),
-smalltalk.CharacterArray);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "add:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._errorReadOnly();
-return self}, function($ctx1) {$ctx1.fill(self,"add:",{anObject:anObject},smalltalk.CharacterArray)})},
-messageSends: ["errorReadOnly"]}),
-smalltalk.CharacterArray);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "asLowercase",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._class())._fromString_(_st(self._asString())._asLowercase());
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"asLowercase",{},smalltalk.CharacterArray)})},
-messageSends: ["fromString:", "asLowercase", "asString", "class"]}),
-smalltalk.CharacterArray);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "asNumber",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._asString())._asNumber();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"asNumber",{},smalltalk.CharacterArray)})},
-messageSends: ["asNumber", "asString"]}),
-smalltalk.CharacterArray);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "asString",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._subclassResponsibility();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"asString",{},smalltalk.CharacterArray)})},
-messageSends: ["subclassResponsibility"]}),
-smalltalk.CharacterArray);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "asSymbol",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._asString();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"asSymbol",{},smalltalk.CharacterArray)})},
-messageSends: ["asString"]}),
-smalltalk.CharacterArray);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "asUppercase",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._class())._fromString_(_st(self._asString())._asUppercase());
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"asUppercase",{},smalltalk.CharacterArray)})},
-messageSends: ["fromString:", "asUppercase", "asString", "class"]}),
-smalltalk.CharacterArray);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "at:put:",
-fn: function (anIndex,anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._errorReadOnly();
-return self}, function($ctx1) {$ctx1.fill(self,"at:put:",{anIndex:anIndex,anObject:anObject},smalltalk.CharacterArray)})},
-messageSends: ["errorReadOnly"]}),
-smalltalk.CharacterArray);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "errorReadOnly",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._error_("Object is read-only");
-return self}, function($ctx1) {$ctx1.fill(self,"errorReadOnly",{},smalltalk.CharacterArray)})},
-messageSends: ["error:"]}),
-smalltalk.CharacterArray);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "printOn:",
-fn: function (aStream){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._asString())._printOn_(aStream);
-return self}, function($ctx1) {$ctx1.fill(self,"printOn:",{aStream:aStream},smalltalk.CharacterArray)})},
-messageSends: ["printOn:", "asString"]}),
-smalltalk.CharacterArray);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "putOn:",
-fn: function (aStream){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(aStream)._nextPutString_(self);
-return self}, function($ctx1) {$ctx1.fill(self,"putOn:",{aStream:aStream},smalltalk.CharacterArray)})},
-messageSends: ["nextPutString:"]}),
-smalltalk.CharacterArray);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "remove:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._errorReadOnly();
-return self}, function($ctx1) {$ctx1.fill(self,"remove:",{anObject:anObject},smalltalk.CharacterArray)})},
-messageSends: ["errorReadOnly"]}),
-smalltalk.CharacterArray);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "fromString:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._subclassResponsibility();
-return self}, function($ctx1) {$ctx1.fill(self,"fromString:",{aString:aString},smalltalk.CharacterArray.klass)})},
-messageSends: ["subclassResponsibility"]}),
-smalltalk.CharacterArray.klass);
-
-
-smalltalk.addClass('String', smalltalk.CharacterArray, [], 'Kernel-Collections');
-smalltalk.addMethod(
-smalltalk.method({
-selector: ",",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self + aString;
-return self}, function($ctx1) {$ctx1.fill(self,",",{aString:aString},smalltalk.String)})},
-messageSends: []}),
-smalltalk.String);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "<",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return String(self) < aString._asString();
-return self}, function($ctx1) {$ctx1.fill(self,"<",{aString:aString},smalltalk.String)})},
-messageSends: []}),
-smalltalk.String);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "<=",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return String(self) <= aString._asString();
-return self}, function($ctx1) {$ctx1.fill(self,"<=",{aString:aString},smalltalk.String)})},
-messageSends: []}),
-smalltalk.String);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "=",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-
-		if(typeof aString === 'undefined') { return false }
-		if(!aString._isString || ! aString._isString()) {
-			return false;
-		}
-		return String(self) === String(aString)
-	;
-return self}, function($ctx1) {$ctx1.fill(self,"=",{aString:aString},smalltalk.String)})},
-messageSends: []}),
-smalltalk.String);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "==",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self.__eq(aString);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"==",{aString:aString},smalltalk.String)})},
-messageSends: ["="]}),
-smalltalk.String);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: ">",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return String(self) > aString._asString();
-return self}, function($ctx1) {$ctx1.fill(self,">",{aString:aString},smalltalk.String)})},
-messageSends: []}),
-smalltalk.String);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: ">=",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return String(self) >= aString._asString();
-return self}, function($ctx1) {$ctx1.fill(self,">=",{aString:aString},smalltalk.String)})},
-messageSends: []}),
-smalltalk.String);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "asJSON",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"asJSON",{},smalltalk.String)})},
-messageSends: []}),
-smalltalk.String);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "asJavascript",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-
-		if(self.search(/^[a-zA-Z0-9_:.$ ]*$/) == -1)
-			return "\"" + self.replace(/[\x00-\x1f"\\\x7f-\x9f]/g, function(ch){var c=ch.charCodeAt(0);return "\\x"+("0"+c.toString(16)).slice(-2)}) + "\"";
-		else
-			return "\"" + self + "\"";
-	;
-return self}, function($ctx1) {$ctx1.fill(self,"asJavascript",{},smalltalk.String)})},
-messageSends: []}),
-smalltalk.String);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "asLowercase",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self.toLowerCase();
-return self}, function($ctx1) {$ctx1.fill(self,"asLowercase",{},smalltalk.String)})},
-messageSends: []}),
-smalltalk.String);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "asMutator",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3;
-$1=_st(self._last()).__eq(":");
-if(! smalltalk.assert($1)){
-$2=self.__comma(":");
-return $2;
-};
-$3=self;
-return $3;
-}, function($ctx1) {$ctx1.fill(self,"asMutator",{},smalltalk.String)})},
-messageSends: ["ifFalse:", ",", "=", "last"]}),
-smalltalk.String);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "asNumber",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return Number(self);
-return self}, function($ctx1) {$ctx1.fill(self,"asNumber",{},smalltalk.String)})},
-messageSends: []}),
-smalltalk.String);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "asRegexp",
-fn: function (){
-var self=this;
-function $RegularExpression(){return smalltalk.RegularExpression||(typeof RegularExpression=="undefined"?nil:RegularExpression)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st($RegularExpression())._fromString_(self);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"asRegexp",{},smalltalk.String)})},
-messageSends: ["fromString:"]}),
-smalltalk.String);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "asSelector",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return smalltalk.selector(self);
-return self}, function($ctx1) {$ctx1.fill(self,"asSelector",{},smalltalk.String)})},
-messageSends: []}),
-smalltalk.String);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "asString",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"asString",{},smalltalk.String)})},
-messageSends: []}),
-smalltalk.String);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "asSymbol",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"asSymbol",{},smalltalk.String)})},
-messageSends: []}),
-smalltalk.String);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "asUppercase",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self.toUpperCase();
-return self}, function($ctx1) {$ctx1.fill(self,"asUppercase",{},smalltalk.String)})},
-messageSends: []}),
-smalltalk.String);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "asciiValue",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self.charCodeAt(0);;
-return self}, function($ctx1) {$ctx1.fill(self,"asciiValue",{},smalltalk.String)})},
-messageSends: []}),
-smalltalk.String);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "at:ifAbsent:",
-fn: function (anIndex,aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return String(self).charAt(anIndex - 1) || aBlock._value();
-return self}, function($ctx1) {$ctx1.fill(self,"at:ifAbsent:",{anIndex:anIndex,aBlock:aBlock},smalltalk.String)})},
-messageSends: []}),
-smalltalk.String);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "at:ifPresent:ifAbsent:",
-fn: function (anIndex,aBlock,anotherBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-
-		var result = String(self).charAt(anIndex - 1);
-		return result ? aBlock._value_(result) : anotherBlock._value();
-	;
-return self}, function($ctx1) {$ctx1.fill(self,"at:ifPresent:ifAbsent:",{anIndex:anIndex,aBlock:aBlock,anotherBlock:anotherBlock},smalltalk.String)})},
-messageSends: []}),
-smalltalk.String);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "charCodeAt:",
-fn: function (anInteger){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
- return self.charCodeAt(anInteger - 1) ;
-return self}, function($ctx1) {$ctx1.fill(self,"charCodeAt:",{anInteger:anInteger},smalltalk.String)})},
-messageSends: []}),
-smalltalk.String);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "copyFrom:to:",
-fn: function (anIndex,anotherIndex){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self.substring(anIndex - 1, anotherIndex);
-return self}, function($ctx1) {$ctx1.fill(self,"copyFrom:to:",{anIndex:anIndex,anotherIndex:anotherIndex},smalltalk.String)})},
-messageSends: []}),
-smalltalk.String);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "crlfSanitized",
-fn: function (){
-var self=this;
-function $String(){return smalltalk.String||(typeof String=="undefined"?nil:String)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._lines())._join_(_st($String())._lf());
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"crlfSanitized",{},smalltalk.String)})},
-messageSends: ["join:", "lf", "lines"]}),
-smalltalk.String);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "deepCopy",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._shallowCopy();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"deepCopy",{},smalltalk.String)})},
-messageSends: ["shallowCopy"]}),
-smalltalk.String);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "do:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-for(var i=0;i<self.length;i++){aBlock._value_(self.charAt(i));};
-return self}, function($ctx1) {$ctx1.fill(self,"do:",{aBlock:aBlock},smalltalk.String)})},
-messageSends: []}),
-smalltalk.String);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "escaped",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return escape(self);
-return self}, function($ctx1) {$ctx1.fill(self,"escaped",{},smalltalk.String)})},
-messageSends: []}),
-smalltalk.String);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "includesSubString:",
-fn: function (subString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
- return self.indexOf(subString) != -1 ;
-return self}, function($ctx1) {$ctx1.fill(self,"includesSubString:",{subString:subString},smalltalk.String)})},
-messageSends: []}),
-smalltalk.String);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isImmutable",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"isImmutable",{},smalltalk.String)})},
-messageSends: []}),
-smalltalk.String);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isString",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"isString",{},smalltalk.String)})},
-messageSends: []}),
-smalltalk.String);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isVowel",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(self._size()).__eq((1)))._and_((function(){
-return smalltalk.withContext(function($ctx2) {
-return "aeiou"._includes_(self._asLowercase());
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"isVowel",{},smalltalk.String)})},
-messageSends: ["and:", "includes:", "asLowercase", "=", "size"]}),
-smalltalk.String);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "join:",
-fn: function (aCollection){
-var self=this;
-function $String(){return smalltalk.String||(typeof String=="undefined"?nil:String)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st($String())._streamContents_((function(stream){
-return smalltalk.withContext(function($ctx2) {
-return _st(aCollection)._do_separatedBy_((function(each){
-return smalltalk.withContext(function($ctx3) {
-return _st(stream)._nextPutAll_(_st(each)._asString());
-}, function($ctx3) {$ctx3.fillBlock({each:each},$ctx2)})}),(function(){
-return smalltalk.withContext(function($ctx3) {
-return _st(stream)._nextPutAll_(self);
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-}, function($ctx2) {$ctx2.fillBlock({stream:stream},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"join:",{aCollection:aCollection},smalltalk.String)})},
-messageSends: ["streamContents:", "do:separatedBy:", "nextPutAll:", "asString"]}),
-smalltalk.String);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "lineIndicesDo:",
-fn: function (aBlock){
-var self=this;
-var cr,lf,start,sz,nextLF,nextCR;
-function $String(){return smalltalk.String||(typeof String=="undefined"?nil:String)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4;
-var $early={};
-try {
-start=(1);
-sz=self._size();
-cr=_st($String())._cr();
-nextCR=self._indexOf_startingAt_(cr,(1));
-lf=_st($String())._lf();
-nextLF=self._indexOf_startingAt_(lf,(1));
-_st((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(start).__lt_eq(sz);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._whileTrue_((function(){
-return smalltalk.withContext(function($ctx2) {
-$1=_st(_st(nextLF).__eq((0)))._and_((function(){
-return smalltalk.withContext(function($ctx3) {
-return _st(nextCR).__eq((0));
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-if(smalltalk.assert($1)){
-_st(aBlock)._value_value_value_(start,sz,sz);
-$2=self;
-throw $early=[$2];
-};
-$3=_st(_st(nextCR).__eq((0)))._or_((function(){
-return smalltalk.withContext(function($ctx3) {
-return _st((0).__lt(nextLF))._and_((function(){
-return smalltalk.withContext(function($ctx4) {
-return _st(nextLF).__lt(nextCR);
-}, function($ctx4) {$ctx4.fillBlock({},$ctx3)})}));
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-if(smalltalk.assert($3)){
-_st(aBlock)._value_value_value_(start,_st(nextLF).__minus((1)),nextLF);
-start=(1).__plus(nextLF);
-start;
-nextLF=self._indexOf_startingAt_(lf,start);
-return nextLF;
-} else {
-$4=_st((1).__plus(nextCR)).__eq(nextLF);
-if(smalltalk.assert($4)){
-_st(aBlock)._value_value_value_(start,_st(nextCR).__minus((1)),nextLF);
-start=(1).__plus(nextLF);
-start;
-nextCR=self._indexOf_startingAt_(cr,start);
-nextCR;
-nextLF=self._indexOf_startingAt_(lf,start);
-return nextLF;
-} else {
-_st(aBlock)._value_value_value_(start,_st(nextCR).__minus((1)),nextCR);
-start=(1).__plus(nextCR);
-start;
-nextCR=self._indexOf_startingAt_(cr,start);
-return nextCR;
-};
-};
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}
-catch(e) {if(e===$early)return e[0]; throw e}
-}, function($ctx1) {$ctx1.fill(self,"lineIndicesDo:",{aBlock:aBlock,cr:cr,lf:lf,start:start,sz:sz,nextLF:nextLF,nextCR:nextCR},smalltalk.String)})},
-messageSends: ["size", "cr", "indexOf:startingAt:", "lf", "whileTrue:", "ifTrue:", "value:value:value:", "and:", "=", "ifTrue:ifFalse:", "-", "+", "or:", "<", "<="]}),
-smalltalk.String);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "lineNumber:",
-fn: function (anIndex){
-var self=this;
-var lineCount;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-var $early={};
-try {
-lineCount=(0);
-self._lineIndicesDo_((function(start,endWithoutDelimiters,end){
-return smalltalk.withContext(function($ctx2) {
-lineCount=_st(lineCount).__plus((1));
-$1=_st(lineCount).__eq(anIndex);
-if(smalltalk.assert($1)){
-$2=self._copyFrom_to_(start,endWithoutDelimiters);
-throw $early=[$2];
-};
-}, function($ctx2) {$ctx2.fillBlock({start:start,endWithoutDelimiters:endWithoutDelimiters,end:end},$ctx1)})}));
-return nil;
-}
-catch(e) {if(e===$early)return e[0]; throw e}
-}, function($ctx1) {$ctx1.fill(self,"lineNumber:",{anIndex:anIndex,lineCount:lineCount},smalltalk.String)})},
-messageSends: ["lineIndicesDo:", "ifTrue:", "copyFrom:to:", "=", "+"]}),
-smalltalk.String);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "lines",
-fn: function (){
-var self=this;
-var lines;
-function $Array(){return smalltalk.Array||(typeof Array=="undefined"?nil:Array)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-lines=_st($Array())._new();
-self._linesDo_((function(aLine){
-return smalltalk.withContext(function($ctx2) {
-return _st(lines)._add_(aLine);
-}, function($ctx2) {$ctx2.fillBlock({aLine:aLine},$ctx1)})}));
-$1=lines;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"lines",{lines:lines},smalltalk.String)})},
-messageSends: ["new", "linesDo:", "add:"]}),
-smalltalk.String);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "linesDo:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._lineIndicesDo_((function(start,endWithoutDelimiters,end){
-return smalltalk.withContext(function($ctx2) {
-return _st(aBlock)._value_(self._copyFrom_to_(start,endWithoutDelimiters));
-}, function($ctx2) {$ctx2.fillBlock({start:start,endWithoutDelimiters:endWithoutDelimiters,end:end},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"linesDo:",{aBlock:aBlock},smalltalk.String)})},
-messageSends: ["lineIndicesDo:", "value:", "copyFrom:to:"]}),
-smalltalk.String);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "match:",
-fn: function (aRegexp){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self.search(aRegexp) != -1;
-return self}, function($ctx1) {$ctx1.fill(self,"match:",{aRegexp:aRegexp},smalltalk.String)})},
-messageSends: []}),
-smalltalk.String);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "matchesOf:",
-fn: function (aRegularExpression){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self.match(aRegularExpression);
-return self}, function($ctx1) {$ctx1.fill(self,"matchesOf:",{aRegularExpression:aRegularExpression},smalltalk.String)})},
-messageSends: []}),
-smalltalk.String);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "printNl",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-console.log(self);
-return self}, function($ctx1) {$ctx1.fill(self,"printNl",{},smalltalk.String)})},
-messageSends: []}),
-smalltalk.String);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "printOn:",
-fn: function (aStream){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=aStream;
-_st($1)._nextPutAll_("'");
-_st($1)._nextPutAll_(self);
-$2=_st($1)._nextPutAll_("'");
-return self}, function($ctx1) {$ctx1.fill(self,"printOn:",{aStream:aStream},smalltalk.String)})},
-messageSends: ["nextPutAll:"]}),
-smalltalk.String);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "replace:with:",
-fn: function (aString,anotherString){
-var self=this;
-function $RegularExpression(){return smalltalk.RegularExpression||(typeof RegularExpression=="undefined"?nil:RegularExpression)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._replaceRegexp_with_(_st($RegularExpression())._fromString_flag_(aString,"g"),anotherString);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"replace:with:",{aString:aString,anotherString:anotherString},smalltalk.String)})},
-messageSends: ["replaceRegexp:with:", "fromString:flag:"]}),
-smalltalk.String);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "replaceRegexp:with:",
-fn: function (aRegexp,aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self.replace(aRegexp, aString);
-return self}, function($ctx1) {$ctx1.fill(self,"replaceRegexp:with:",{aRegexp:aRegexp,aString:aString},smalltalk.String)})},
-messageSends: []}),
-smalltalk.String);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "reversed",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self.split("").reverse().join("");
-return self}, function($ctx1) {$ctx1.fill(self,"reversed",{},smalltalk.String)})},
-messageSends: []}),
-smalltalk.String);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "shallowCopy",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._class())._fromString_(self);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"shallowCopy",{},smalltalk.String)})},
-messageSends: ["fromString:", "class"]}),
-smalltalk.String);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "size",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self.length;
-return self}, function($ctx1) {$ctx1.fill(self,"size",{},smalltalk.String)})},
-messageSends: []}),
-smalltalk.String);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "subStrings:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._tokenize_(aString);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"subStrings:",{aString:aString},smalltalk.String)})},
-messageSends: ["tokenize:"]}),
-smalltalk.String);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "tokenize:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self.split(aString);
-return self}, function($ctx1) {$ctx1.fill(self,"tokenize:",{aString:aString},smalltalk.String)})},
-messageSends: []}),
-smalltalk.String);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "trimBoth",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._trimBoth_("\x5cs");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"trimBoth",{},smalltalk.String)})},
-messageSends: ["trimBoth:"]}),
-smalltalk.String);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "trimBoth:",
-fn: function (separators){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._trimLeft_(separators))._trimRight_(separators);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"trimBoth:",{separators:separators},smalltalk.String)})},
-messageSends: ["trimRight:", "trimLeft:"]}),
-smalltalk.String);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "trimLeft",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._trimLeft_("\x5cs");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"trimLeft",{},smalltalk.String)})},
-messageSends: ["trimLeft:"]}),
-smalltalk.String);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "trimLeft:",
-fn: function (separators){
-var self=this;
-function $RegularExpression(){return smalltalk.RegularExpression||(typeof RegularExpression=="undefined"?nil:RegularExpression)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._replaceRegexp_with_(_st($RegularExpression())._fromString_flag_(_st("^[".__comma(separators)).__comma("]+"),"g"),"");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"trimLeft:",{separators:separators},smalltalk.String)})},
-messageSends: ["replaceRegexp:with:", "fromString:flag:", ","]}),
-smalltalk.String);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "trimRight",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._trimRight_("\x5cs");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"trimRight",{},smalltalk.String)})},
-messageSends: ["trimRight:"]}),
-smalltalk.String);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "trimRight:",
-fn: function (separators){
-var self=this;
-function $RegularExpression(){return smalltalk.RegularExpression||(typeof RegularExpression=="undefined"?nil:RegularExpression)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._replaceRegexp_with_(_st($RegularExpression())._fromString_flag_(_st("[".__comma(separators)).__comma("]+$"),"g"),"");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"trimRight:",{separators:separators},smalltalk.String)})},
-messageSends: ["replaceRegexp:with:", "fromString:flag:", ","]}),
-smalltalk.String);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "unescaped",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return unescape(self);
-return self}, function($ctx1) {$ctx1.fill(self,"unescaped",{},smalltalk.String)})},
-messageSends: []}),
-smalltalk.String);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "withIndexDo:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-for(var i=0;i<self.length;i++){aBlock._value_value_(self.charAt(i), i+1);};
-return self}, function($ctx1) {$ctx1.fill(self,"withIndexDo:",{aBlock:aBlock},smalltalk.String)})},
-messageSends: []}),
-smalltalk.String);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "cr",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return '\r';
-return self}, function($ctx1) {$ctx1.fill(self,"cr",{},smalltalk.String.klass)})},
-messageSends: []}),
-smalltalk.String.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "crlf",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return '\r\n';
-return self}, function($ctx1) {$ctx1.fill(self,"crlf",{},smalltalk.String.klass)})},
-messageSends: []}),
-smalltalk.String.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "esc",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._fromCharCode_((27));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"esc",{},smalltalk.String.klass)})},
-messageSends: ["fromCharCode:"]}),
-smalltalk.String.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "fromCharCode:",
-fn: function (anInteger){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return String.fromCharCode(anInteger);
-return self}, function($ctx1) {$ctx1.fill(self,"fromCharCode:",{anInteger:anInteger},smalltalk.String.klass)})},
-messageSends: []}),
-smalltalk.String.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "fromString:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return String(aString);
-return self}, function($ctx1) {$ctx1.fill(self,"fromString:",{aString:aString},smalltalk.String.klass)})},
-messageSends: []}),
-smalltalk.String.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "lf",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return '\n';
-return self}, function($ctx1) {$ctx1.fill(self,"lf",{},smalltalk.String.klass)})},
-messageSends: []}),
-smalltalk.String.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "random",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return (Math.random()*(22/32)+(10/32)).toString(32).slice(2);;
-return self}, function($ctx1) {$ctx1.fill(self,"random",{},smalltalk.String.klass)})},
-messageSends: []}),
-smalltalk.String.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "randomNotIn:",
-fn: function (aString){
-var self=this;
-var result;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-_st((function(){
-return smalltalk.withContext(function($ctx2) {
-result=self._random();
-result;
-return _st(aString)._includesSubString_(result);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._whileTrue();
-$1=result;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"randomNotIn:",{aString:aString,result:result},smalltalk.String.klass)})},
-messageSends: ["whileTrue", "random", "includesSubString:"]}),
-smalltalk.String.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "space",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return ' ';
-return self}, function($ctx1) {$ctx1.fill(self,"space",{},smalltalk.String.klass)})},
-messageSends: []}),
-smalltalk.String.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "streamClass",
-fn: function (){
-var self=this;
-function $StringStream(){return smalltalk.StringStream||(typeof StringStream=="undefined"?nil:StringStream)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=$StringStream();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"streamClass",{},smalltalk.String.klass)})},
-messageSends: []}),
-smalltalk.String.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "tab",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return '\t';
-return self}, function($ctx1) {$ctx1.fill(self,"tab",{},smalltalk.String.klass)})},
-messageSends: []}),
-smalltalk.String.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "value:",
-fn: function (aUTFCharCode){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return String.fromCharCode(aUTFCharCode);;
-return self}, function($ctx1) {$ctx1.fill(self,"value:",{aUTFCharCode:aUTFCharCode},smalltalk.String.klass)})},
-messageSends: []}),
-smalltalk.String.klass);
-
-
-smalltalk.addClass('Set', smalltalk.Collection, ['elements'], 'Kernel-Collections');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "=",
-fn: function (aCollection){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3;
-var $early={};
-try {
-$1=_st(self._class()).__eq(_st(aCollection)._class());
-if(! smalltalk.assert($1)){
-return false;
-};
-$2=_st(self._size()).__eq(_st(aCollection)._size());
-if(! smalltalk.assert($2)){
-return false;
-};
-self._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-$3=_st(aCollection)._includes_(each);
-if(! smalltalk.assert($3)){
-throw $early=[false];
-};
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return true;
-}
-catch(e) {if(e===$early)return e[0]; throw e}
-}, function($ctx1) {$ctx1.fill(self,"=",{aCollection:aCollection},smalltalk.Set)})},
-messageSends: ["ifFalse:", "=", "class", "size", "do:", "includes:"]}),
-smalltalk.Set);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "add:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-
-		var found;
-		for(var i=0; i < self['@elements'].length; i++) {
-			if(_st(anObject).__eq(self['@elements'][i])) {
-				found = true;
-				break;
-			}
-		}
-		if(!found) {self['@elements'].push(anObject)}
-	;
-return self}, function($ctx1) {$ctx1.fill(self,"add:",{anObject:anObject},smalltalk.Set)})},
-messageSends: []}),
-smalltalk.Set);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "asArray",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self["@elements"])._copy();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"asArray",{},smalltalk.Set)})},
-messageSends: ["copy"]}),
-smalltalk.Set);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "collect:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._class())._withAll_(_st(self["@elements"])._collect_(aBlock));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"collect:",{aBlock:aBlock},smalltalk.Set)})},
-messageSends: ["withAll:", "collect:", "class"]}),
-smalltalk.Set);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "detect:ifNone:",
-fn: function (aBlock,anotherBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self["@elements"])._detect_ifNone_(aBlock,anotherBlock);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"detect:ifNone:",{aBlock:aBlock,anotherBlock:anotherBlock},smalltalk.Set)})},
-messageSends: ["detect:ifNone:"]}),
-smalltalk.Set);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "do:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self["@elements"])._do_(aBlock);
-return self}, function($ctx1) {$ctx1.fill(self,"do:",{aBlock:aBlock},smalltalk.Set)})},
-messageSends: ["do:"]}),
-smalltalk.Set);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "includes:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self["@elements"])._includes_(anObject);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"includes:",{anObject:anObject},smalltalk.Set)})},
-messageSends: ["includes:"]}),
-smalltalk.Set);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "initialize",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-smalltalk.Set.superclass.fn.prototype._initialize.apply(_st(self), []);
-self["@elements"]=[];
-return self}, function($ctx1) {$ctx1.fill(self,"initialize",{},smalltalk.Set)})},
-messageSends: ["initialize"]}),
-smalltalk.Set);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "printOn:",
-fn: function (aStream){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-smalltalk.Set.superclass.fn.prototype._printOn_.apply(_st(self), [aStream]);
-_st(aStream)._nextPutAll_(" (");
-self._do_separatedBy_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(each)._printOn_(aStream);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}),(function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(aStream)._nextPutAll_(" ");
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-_st(aStream)._nextPutAll_(")");
-return self}, function($ctx1) {$ctx1.fill(self,"printOn:",{aStream:aStream},smalltalk.Set)})},
-messageSends: ["printOn:", "nextPutAll:", "do:separatedBy:"]}),
-smalltalk.Set);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "remove:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self["@elements"])._remove_(anObject);
-return self}, function($ctx1) {$ctx1.fill(self,"remove:",{anObject:anObject},smalltalk.Set)})},
-messageSends: ["remove:"]}),
-smalltalk.Set);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "remove:ifAbsent:",
-fn: function (anObject,aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self["@elements"])._remove_ifAbsent_(anObject,aBlock);
-return self}, function($ctx1) {$ctx1.fill(self,"remove:ifAbsent:",{anObject:anObject,aBlock:aBlock},smalltalk.Set)})},
-messageSends: ["remove:ifAbsent:"]}),
-smalltalk.Set);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "select:",
-fn: function (aBlock){
-var self=this;
-var collection;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-collection=_st(self._class())._new();
-self._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-$1=_st(aBlock)._value_(each);
-if(smalltalk.assert($1)){
-return _st(collection)._add_(each);
-};
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-$2=collection;
-return $2;
-}, function($ctx1) {$ctx1.fill(self,"select:",{aBlock:aBlock,collection:collection},smalltalk.Set)})},
-messageSends: ["new", "class", "do:", "ifTrue:", "add:", "value:"]}),
-smalltalk.Set);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "size",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self["@elements"])._size();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"size",{},smalltalk.Set)})},
-messageSends: ["size"]}),
-smalltalk.Set);
-
-
-
-smalltalk.addClass('Queue', smalltalk.Object, ['read', 'readIndex', 'write'], 'Kernel-Collections');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "initialize",
-fn: function (){
-var self=this;
-function $OrderedCollection(){return smalltalk.OrderedCollection||(typeof OrderedCollection=="undefined"?nil:OrderedCollection)}
-return smalltalk.withContext(function($ctx1) { 
-smalltalk.Queue.superclass.fn.prototype._initialize.apply(_st(self), []);
-self["@read"]=_st($OrderedCollection())._new();
-self["@write"]=_st($OrderedCollection())._new();
-self["@readIndex"]=(1);
-return self}, function($ctx1) {$ctx1.fill(self,"initialize",{},smalltalk.Queue)})},
-messageSends: ["initialize", "new"]}),
-smalltalk.Queue);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "next",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._nextIfAbsent_((function(){
-return smalltalk.withContext(function($ctx2) {
-return self._error_("Cannot read from empty Queue.");
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"next",{},smalltalk.Queue)})},
-messageSends: ["nextIfAbsent:", "error:"]}),
-smalltalk.Queue);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "nextIfAbsent:",
-fn: function (aBlock){
-var self=this;
-var result;
-function $OrderedCollection(){return smalltalk.OrderedCollection||(typeof OrderedCollection=="undefined"?nil:OrderedCollection)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4;
-var $early={};
-try {
-result=_st(self["@read"])._at_ifAbsent_(self["@readIndex"],(function(){
-return smalltalk.withContext(function($ctx2) {
-$1=_st(self["@write"])._isEmpty();
-if(smalltalk.assert($1)){
-$2=_st(self["@readIndex"]).__gt((1));
-if(smalltalk.assert($2)){
-self["@read"]=[];
-self["@read"];
-self["@readIndex"]=(1);
-self["@readIndex"];
-};
-$3=_st(aBlock)._value();
-throw $early=[$3];
-};
-self["@read"]=self["@write"];
-self["@read"];
-self["@readIndex"]=(1);
-self["@readIndex"];
-self["@write"]=_st($OrderedCollection())._new();
-self["@write"];
-return _st(self["@read"])._first();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-_st(self["@read"])._at_put_(self["@readIndex"],nil);
-self["@readIndex"]=_st(self["@readIndex"]).__plus((1));
-$4=result;
-return $4;
-}
-catch(e) {if(e===$early)return e[0]; throw e}
-}, function($ctx1) {$ctx1.fill(self,"nextIfAbsent:",{aBlock:aBlock,result:result},smalltalk.Queue)})},
-messageSends: ["at:ifAbsent:", "ifTrue:", ">", "value", "isEmpty", "new", "first", "at:put:", "+"]}),
-smalltalk.Queue);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "nextPut:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self["@write"])._add_(anObject);
-return self}, function($ctx1) {$ctx1.fill(self,"nextPut:",{anObject:anObject},smalltalk.Queue)})},
-messageSends: ["add:"]}),
-smalltalk.Queue);
-
-
-
-smalltalk.addClass('RegularExpression', smalltalk.Object, [], 'Kernel-Collections');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "compile:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self.compile(aString);
-return self}, function($ctx1) {$ctx1.fill(self,"compile:",{aString:aString},smalltalk.RegularExpression)})},
-messageSends: []}),
-smalltalk.RegularExpression);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "exec:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self.exec(aString) || nil;
-return self}, function($ctx1) {$ctx1.fill(self,"exec:",{aString:aString},smalltalk.RegularExpression)})},
-messageSends: []}),
-smalltalk.RegularExpression);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "test:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self.test(aString);
-return self}, function($ctx1) {$ctx1.fill(self,"test:",{aString:aString},smalltalk.RegularExpression)})},
-messageSends: []}),
-smalltalk.RegularExpression);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "fromString:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._fromString_flag_(aString,"");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"fromString:",{aString:aString},smalltalk.RegularExpression.klass)})},
-messageSends: ["fromString:flag:"]}),
-smalltalk.RegularExpression.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "fromString:flag:",
-fn: function (aString,anotherString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return new RegExp(aString, anotherString);
-return self}, function($ctx1) {$ctx1.fill(self,"fromString:flag:",{aString:aString,anotherString:anotherString},smalltalk.RegularExpression.klass)})},
-messageSends: []}),
-smalltalk.RegularExpression.klass);
-
-
-smalltalk.addClass('Stream', smalltalk.Object, ['collection', 'position', 'streamSize'], 'Kernel-Collections');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "<<",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._write_(anObject);
-return self}, function($ctx1) {$ctx1.fill(self,"<<",{anObject:anObject},smalltalk.Stream)})},
-messageSends: ["write:"]}),
-smalltalk.Stream);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "atEnd",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._position()).__eq(self._size());
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"atEnd",{},smalltalk.Stream)})},
-messageSends: ["=", "size", "position"]}),
-smalltalk.Stream);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "atStart",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._position()).__eq((0));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"atStart",{},smalltalk.Stream)})},
-messageSends: ["=", "position"]}),
-smalltalk.Stream);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "close",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self}, function($ctx1) {$ctx1.fill(self,"close",{},smalltalk.Stream)})},
-messageSends: []}),
-smalltalk.Stream);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "collection",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@collection"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"collection",{},smalltalk.Stream)})},
-messageSends: []}),
-smalltalk.Stream);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "contents",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._collection())._copyFrom_to_((1),self._streamSize());
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"contents",{},smalltalk.Stream)})},
-messageSends: ["copyFrom:to:", "streamSize", "collection"]}),
-smalltalk.Stream);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "do:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st((function(){
-return smalltalk.withContext(function($ctx2) {
-return self._atEnd();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._whileFalse_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(aBlock)._value_(self._next());
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"do:",{aBlock:aBlock},smalltalk.Stream)})},
-messageSends: ["whileFalse:", "value:", "next", "atEnd"]}),
-smalltalk.Stream);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "flush",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self}, function($ctx1) {$ctx1.fill(self,"flush",{},smalltalk.Stream)})},
-messageSends: []}),
-smalltalk.Stream);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isEmpty",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._size()).__eq((0));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"isEmpty",{},smalltalk.Stream)})},
-messageSends: ["=", "size"]}),
-smalltalk.Stream);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "next",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self._atEnd();
-if(smalltalk.assert($2)){
-$1=nil;
-} else {
-self._position_(_st(self._position()).__plus((1)));
-$1=_st(self["@collection"])._at_(self._position());
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"next",{},smalltalk.Stream)})},
-messageSends: ["ifTrue:ifFalse:", "position:", "+", "position", "at:", "atEnd"]}),
-smalltalk.Stream);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "next:",
-fn: function (anInteger){
-var self=this;
-var tempCollection;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-tempCollection=_st(_st(self._collection())._class())._new();
-_st(anInteger)._timesRepeat_((function(){
-return smalltalk.withContext(function($ctx2) {
-$1=self._atEnd();
-if(! smalltalk.assert($1)){
-return _st(tempCollection)._add_(self._next());
-};
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-$2=tempCollection;
-return $2;
-}, function($ctx1) {$ctx1.fill(self,"next:",{anInteger:anInteger,tempCollection:tempCollection},smalltalk.Stream)})},
-messageSends: ["new", "class", "collection", "timesRepeat:", "ifFalse:", "add:", "next", "atEnd"]}),
-smalltalk.Stream);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "nextPut:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._position_(_st(self._position()).__plus((1)));
-_st(self._collection())._at_put_(self._position(),anObject);
-self._setStreamSize_(_st(self._streamSize())._max_(self._position()));
-return self}, function($ctx1) {$ctx1.fill(self,"nextPut:",{anObject:anObject},smalltalk.Stream)})},
-messageSends: ["position:", "+", "position", "at:put:", "collection", "setStreamSize:", "max:", "streamSize"]}),
-smalltalk.Stream);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "nextPutAll:",
-fn: function (aCollection){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(aCollection)._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return self._nextPut_(each);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"nextPutAll:",{aCollection:aCollection},smalltalk.Stream)})},
-messageSends: ["do:", "nextPut:"]}),
-smalltalk.Stream);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "nextPutString:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._nextPut_(aString);
-return self}, function($ctx1) {$ctx1.fill(self,"nextPutString:",{aString:aString},smalltalk.Stream)})},
-messageSends: ["nextPut:"]}),
-smalltalk.Stream);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "peek",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self._atEnd();
-if(! smalltalk.assert($2)){
-$1=_st(self._collection())._at_(_st(self._position()).__plus((1)));
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"peek",{},smalltalk.Stream)})},
-messageSends: ["ifFalse:", "at:", "+", "position", "collection", "atEnd"]}),
-smalltalk.Stream);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "position",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@position"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@position"]=(0);
-$1=self["@position"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"position",{},smalltalk.Stream)})},
-messageSends: ["ifNil:"]}),
-smalltalk.Stream);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "position:",
-fn: function (anInteger){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@position"]=anInteger;
-return self}, function($ctx1) {$ctx1.fill(self,"position:",{anInteger:anInteger},smalltalk.Stream)})},
-messageSends: []}),
-smalltalk.Stream);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "reset",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._position_((0));
-return self}, function($ctx1) {$ctx1.fill(self,"reset",{},smalltalk.Stream)})},
-messageSends: ["position:"]}),
-smalltalk.Stream);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "resetContents",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._reset();
-self._setStreamSize_((0));
-return self}, function($ctx1) {$ctx1.fill(self,"resetContents",{},smalltalk.Stream)})},
-messageSends: ["reset", "setStreamSize:"]}),
-smalltalk.Stream);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "setCollection:",
-fn: function (aCollection){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@collection"]=aCollection;
-return self}, function($ctx1) {$ctx1.fill(self,"setCollection:",{aCollection:aCollection},smalltalk.Stream)})},
-messageSends: []}),
-smalltalk.Stream);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "setStreamSize:",
-fn: function (anInteger){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@streamSize"]=anInteger;
-return self}, function($ctx1) {$ctx1.fill(self,"setStreamSize:",{anInteger:anInteger},smalltalk.Stream)})},
-messageSends: []}),
-smalltalk.Stream);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "setToEnd",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._position_(self._size());
-return self}, function($ctx1) {$ctx1.fill(self,"setToEnd",{},smalltalk.Stream)})},
-messageSends: ["position:", "size"]}),
-smalltalk.Stream);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "size",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._streamSize();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"size",{},smalltalk.Stream)})},
-messageSends: ["streamSize"]}),
-smalltalk.Stream);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "skip:",
-fn: function (anInteger){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._position_(_st(_st(self._position()).__plus(anInteger))._min_max_(self._size(),(0)));
-return self}, function($ctx1) {$ctx1.fill(self,"skip:",{anInteger:anInteger},smalltalk.Stream)})},
-messageSends: ["position:", "min:max:", "size", "+", "position"]}),
-smalltalk.Stream);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "streamSize",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@streamSize"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"streamSize",{},smalltalk.Stream)})},
-messageSends: []}),
-smalltalk.Stream);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "write:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(anObject)._putOn_(self);
-return self}, function($ctx1) {$ctx1.fill(self,"write:",{anObject:anObject},smalltalk.Stream)})},
-messageSends: ["putOn:"]}),
-smalltalk.Stream);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "on:",
-fn: function (aCollection){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=self._new();
-_st($2)._setCollection_(aCollection);
-_st($2)._setStreamSize_(_st(aCollection)._size());
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"on:",{aCollection:aCollection},smalltalk.Stream.klass)})},
-messageSends: ["setCollection:", "new", "setStreamSize:", "size", "yourself"]}),
-smalltalk.Stream.klass);
-
-
-smalltalk.addClass('StringStream', smalltalk.Stream, [], 'Kernel-Collections');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "cr",
-fn: function (){
-var self=this;
-function $String(){return smalltalk.String||(typeof String=="undefined"?nil:String)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._nextPutAll_(_st($String())._cr());
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"cr",{},smalltalk.StringStream)})},
-messageSends: ["nextPutAll:", "cr"]}),
-smalltalk.StringStream);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "crlf",
-fn: function (){
-var self=this;
-function $String(){return smalltalk.String||(typeof String=="undefined"?nil:String)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._nextPutAll_(_st($String())._crlf());
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"crlf",{},smalltalk.StringStream)})},
-messageSends: ["nextPutAll:", "crlf"]}),
-smalltalk.StringStream);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "lf",
-fn: function (){
-var self=this;
-function $String(){return smalltalk.String||(typeof String=="undefined"?nil:String)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._nextPutAll_(_st($String())._lf());
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"lf",{},smalltalk.StringStream)})},
-messageSends: ["nextPutAll:", "lf"]}),
-smalltalk.StringStream);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "next:",
-fn: function (anInteger){
-var self=this;
-var tempCollection;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-tempCollection=_st(_st(self._collection())._class())._new();
-_st(anInteger)._timesRepeat_((function(){
-return smalltalk.withContext(function($ctx2) {
-$1=self._atEnd();
-if(! smalltalk.assert($1)){
-tempCollection=_st(tempCollection).__comma(self._next());
-return tempCollection;
-};
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-$2=tempCollection;
-return $2;
-}, function($ctx1) {$ctx1.fill(self,"next:",{anInteger:anInteger,tempCollection:tempCollection},smalltalk.StringStream)})},
-messageSends: ["new", "class", "collection", "timesRepeat:", "ifFalse:", ",", "next", "atEnd"]}),
-smalltalk.StringStream);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "nextPut:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._nextPutAll_(aString);
-return self}, function($ctx1) {$ctx1.fill(self,"nextPut:",{aString:aString},smalltalk.StringStream)})},
-messageSends: ["nextPutAll:"]}),
-smalltalk.StringStream);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "nextPutAll:",
-fn: function (aString){
-var self=this;
-var pre,post;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._atEnd();
-if(smalltalk.assert($1)){
-self._setCollection_(_st(self._collection()).__comma(aString));
-} else {
-pre=_st(self._collection())._copyFrom_to_((1),self._position());
-pre;
-post=_st(self._collection())._copyFrom_to_(_st(_st(self._position()).__plus((1))).__plus(_st(aString)._size()),_st(self._collection())._size());
-post;
-self._setCollection_(_st(_st(pre).__comma(aString)).__comma(post));
-};
-self._position_(_st(self._position()).__plus(_st(aString)._size()));
-self._setStreamSize_(_st(self._streamSize())._max_(self._position()));
-return self}, function($ctx1) {$ctx1.fill(self,"nextPutAll:",{aString:aString,pre:pre,post:post},smalltalk.StringStream)})},
-messageSends: ["ifTrue:ifFalse:", "setCollection:", ",", "collection", "copyFrom:to:", "position", "+", "size", "atEnd", "position:", "setStreamSize:", "max:", "streamSize"]}),
-smalltalk.StringStream);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "nextPutString:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._nextPutAll_(aString);
-return self}, function($ctx1) {$ctx1.fill(self,"nextPutString:",{aString:aString},smalltalk.StringStream)})},
-messageSends: ["nextPutAll:"]}),
-smalltalk.StringStream);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "space",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._nextPut_(" ");
-return self}, function($ctx1) {$ctx1.fill(self,"space",{},smalltalk.StringStream)})},
-messageSends: ["nextPut:"]}),
-smalltalk.StringStream);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "tab",
-fn: function (){
-var self=this;
-function $String(){return smalltalk.String||(typeof String=="undefined"?nil:String)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._nextPutAll_(_st($String())._tab());
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"tab",{},smalltalk.StringStream)})},
-messageSends: ["nextPutAll:", "tab"]}),
-smalltalk.StringStream);
-
-
-});

+ 0 - 456
js/Kernel-Exceptions.deploy.js

@@ -1,456 +0,0 @@
-define("amber/Kernel-Exceptions", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/Kernel-Objects"], function(smalltalk,nil,_st){
-smalltalk.addPackage('Kernel-Exceptions');
-smalltalk.packages["Kernel-Exceptions"].transport = {"type":"amd","amdNamespace":"amber"};
-
-smalltalk.addClass('Error', smalltalk.Object, ['messageText'], 'Kernel-Exceptions');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "context",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self.context;
-return self}, function($ctx1) {$ctx1.fill(self,"context",{},smalltalk.Error)})},
-messageSends: []}),
-smalltalk.Error);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "initialize",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._messageText_("Errorclass: ".__comma(_st(self._class())._name()));
-return self}, function($ctx1) {$ctx1.fill(self,"initialize",{},smalltalk.Error)})},
-messageSends: ["messageText:", ",", "name", "class"]}),
-smalltalk.Error);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isSmalltalkError",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self.smalltalkError === true;
-return self}, function($ctx1) {$ctx1.fill(self,"isSmalltalkError",{},smalltalk.Error)})},
-messageSends: []}),
-smalltalk.Error);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "jsStack",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self.stack;
-return self}, function($ctx1) {$ctx1.fill(self,"jsStack",{},smalltalk.Error)})},
-messageSends: []}),
-smalltalk.Error);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "messageText",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@messageText"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"messageText",{},smalltalk.Error)})},
-messageSends: []}),
-smalltalk.Error);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "messageText:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@messageText"]=aString;
-return self}, function($ctx1) {$ctx1.fill(self,"messageText:",{aString:aString},smalltalk.Error)})},
-messageSends: []}),
-smalltalk.Error);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "resignal",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-throw(self);
-return self}, function($ctx1) {$ctx1.fill(self,"resignal",{},smalltalk.Error)})},
-messageSends: []}),
-smalltalk.Error);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "signal",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self.context = smalltalk.getThisContext(); self.smalltalkError = true; throw(self);
-return self}, function($ctx1) {$ctx1.fill(self,"signal",{},smalltalk.Error)})},
-messageSends: []}),
-smalltalk.Error);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "signal:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._messageText_(aString);
-self._signal();
-return self}, function($ctx1) {$ctx1.fill(self,"signal:",{aString:aString},smalltalk.Error)})},
-messageSends: ["messageText:", "signal"]}),
-smalltalk.Error);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "heliosClass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "exception";
-}, function($ctx1) {$ctx1.fill(self,"heliosClass",{},smalltalk.Error.klass)})},
-messageSends: []}),
-smalltalk.Error.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "signal",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._new())._signal();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"signal",{},smalltalk.Error.klass)})},
-messageSends: ["signal", "new"]}),
-smalltalk.Error.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "signal:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._new())._signal_(aString);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"signal:",{aString:aString},smalltalk.Error.klass)})},
-messageSends: ["signal:", "new"]}),
-smalltalk.Error.klass);
-
-
-smalltalk.addClass('JavaScriptException', smalltalk.Error, ['exception'], 'Kernel-Exceptions');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "context:",
-fn: function (aMethodContext){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self.context = aMethodContext;
-return self}, function($ctx1) {$ctx1.fill(self,"context:",{aMethodContext:aMethodContext},smalltalk.JavaScriptException)})},
-messageSends: []}),
-smalltalk.JavaScriptException);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "exception",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@exception"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"exception",{},smalltalk.JavaScriptException)})},
-messageSends: []}),
-smalltalk.JavaScriptException);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "exception:",
-fn: function (anException){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@exception"]=anException;
-return self}, function($ctx1) {$ctx1.fill(self,"exception:",{anException:anException},smalltalk.JavaScriptException)})},
-messageSends: []}),
-smalltalk.JavaScriptException);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "messageText",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return 'JavaScript exception: ' + self["@exception"].toString();
-return self}, function($ctx1) {$ctx1.fill(self,"messageText",{},smalltalk.JavaScriptException)})},
-messageSends: []}),
-smalltalk.JavaScriptException);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "on:",
-fn: function (anException){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=self._new();
-_st($2)._exception_(anException);
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"on:",{anException:anException},smalltalk.JavaScriptException.klass)})},
-messageSends: ["exception:", "new", "yourself"]}),
-smalltalk.JavaScriptException.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "on:context:",
-fn: function (anException,aMethodContext){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=self._new();
-_st($2)._exception_(anException);
-_st($2)._context_(aMethodContext);
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"on:context:",{anException:anException,aMethodContext:aMethodContext},smalltalk.JavaScriptException.klass)})},
-messageSends: ["exception:", "new", "context:", "yourself"]}),
-smalltalk.JavaScriptException.klass);
-
-
-smalltalk.addClass('MessageNotUnderstood', smalltalk.Error, ['message', 'receiver'], 'Kernel-Exceptions');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "message",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@message"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"message",{},smalltalk.MessageNotUnderstood)})},
-messageSends: []}),
-smalltalk.MessageNotUnderstood);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "message:",
-fn: function (aMessage){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@message"]=aMessage;
-return self}, function($ctx1) {$ctx1.fill(self,"message:",{aMessage:aMessage},smalltalk.MessageNotUnderstood)})},
-messageSends: []}),
-smalltalk.MessageNotUnderstood);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "messageText",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(_st(self._receiver())._asString()).__comma(" does not understand #")).__comma(_st(self._message())._selector());
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"messageText",{},smalltalk.MessageNotUnderstood)})},
-messageSends: [",", "selector", "message", "asString", "receiver"]}),
-smalltalk.MessageNotUnderstood);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "receiver",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@receiver"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"receiver",{},smalltalk.MessageNotUnderstood)})},
-messageSends: []}),
-smalltalk.MessageNotUnderstood);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "receiver:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@receiver"]=anObject;
-return self}, function($ctx1) {$ctx1.fill(self,"receiver:",{anObject:anObject},smalltalk.MessageNotUnderstood)})},
-messageSends: []}),
-smalltalk.MessageNotUnderstood);
-
-
-
-smalltalk.addClass('NonBooleanReceiver', smalltalk.Error, ['object'], 'Kernel-Exceptions');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "object",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@object"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"object",{},smalltalk.NonBooleanReceiver)})},
-messageSends: []}),
-smalltalk.NonBooleanReceiver);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "object:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@object"]=anObject;
-return self}, function($ctx1) {$ctx1.fill(self,"object:",{anObject:anObject},smalltalk.NonBooleanReceiver)})},
-messageSends: []}),
-smalltalk.NonBooleanReceiver);
-
-
-
-smalltalk.addClass('ErrorHandler', smalltalk.Object, [], 'Kernel-Exceptions');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "handleError:",
-fn: function (anError){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(anError)._context();
-if(($receiver = $1) == nil || $receiver == undefined){
-$1;
-} else {
-self._logErrorContext_(_st(anError)._context());
-};
-self._logError_(anError);
-return self}, function($ctx1) {$ctx1.fill(self,"handleError:",{anError:anError},smalltalk.ErrorHandler)})},
-messageSends: ["ifNotNil:", "logErrorContext:", "context", "logError:"]}),
-smalltalk.ErrorHandler);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "log:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(console)._log_(aString);
-return self}, function($ctx1) {$ctx1.fill(self,"log:",{aString:aString},smalltalk.ErrorHandler)})},
-messageSends: ["log:"]}),
-smalltalk.ErrorHandler);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "logContext:",
-fn: function (aContext){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(aContext)._home();
-if(($receiver = $1) == nil || $receiver == undefined){
-$1;
-} else {
-self._logContext_(_st(aContext)._home());
-};
-self._log_(_st(aContext)._asString());
-return self}, function($ctx1) {$ctx1.fill(self,"logContext:",{aContext:aContext},smalltalk.ErrorHandler)})},
-messageSends: ["ifNotNil:", "logContext:", "home", "log:", "asString"]}),
-smalltalk.ErrorHandler);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "logError:",
-fn: function (anError){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._log_(_st(anError)._messageText());
-return self}, function($ctx1) {$ctx1.fill(self,"logError:",{anError:anError},smalltalk.ErrorHandler)})},
-messageSends: ["log:", "messageText"]}),
-smalltalk.ErrorHandler);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "logErrorContext:",
-fn: function (aContext){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=aContext;
-if(($receiver = $1) == nil || $receiver == undefined){
-$1;
-} else {
-$2=_st(aContext)._home();
-if(($receiver = $2) == nil || $receiver == undefined){
-$2;
-} else {
-self._logContext_(_st(aContext)._home());
-};
-};
-return self}, function($ctx1) {$ctx1.fill(self,"logErrorContext:",{aContext:aContext},smalltalk.ErrorHandler)})},
-messageSends: ["ifNotNil:", "logContext:", "home"]}),
-smalltalk.ErrorHandler);
-
-
-smalltalk.ErrorHandler.klass.iVarNames = ['current'];
-smalltalk.addMethod(
-smalltalk.method({
-selector: "current",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@current"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@current"]=self._new();
-$1=self["@current"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"current",{},smalltalk.ErrorHandler.klass)})},
-messageSends: ["ifNil:", "new"]}),
-smalltalk.ErrorHandler.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "initialize",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._register();
-return self}, function($ctx1) {$ctx1.fill(self,"initialize",{},smalltalk.ErrorHandler.klass)})},
-messageSends: ["register"]}),
-smalltalk.ErrorHandler.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "register",
-fn: function (){
-var self=this;
-function $ErrorHandler(){return smalltalk.ErrorHandler||(typeof ErrorHandler=="undefined"?nil:ErrorHandler)}
-return smalltalk.withContext(function($ctx1) { 
-_st($ErrorHandler())._setCurrent_(self._new());
-return self}, function($ctx1) {$ctx1.fill(self,"register",{},smalltalk.ErrorHandler.klass)})},
-messageSends: ["setCurrent:", "new"]}),
-smalltalk.ErrorHandler.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "setCurrent:",
-fn: function (anHandler){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@current"]=anHandler;
-return self}, function($ctx1) {$ctx1.fill(self,"setCurrent:",{anHandler:anHandler},smalltalk.ErrorHandler.klass)})},
-messageSends: []}),
-smalltalk.ErrorHandler.klass);
-
-});

+ 0 - 1810
js/Kernel-Infrastructure.deploy.js

@@ -1,1810 +0,0 @@
-define("amber/Kernel-Infrastructure", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/Kernel-Objects", "amber/Kernel-Collections"], function(smalltalk,nil,_st){
-smalltalk.addPackage('Kernel-Infrastructure');
-smalltalk.packages["Kernel-Infrastructure"].transport = {"type":"amd","amdNamespace":"amber"};
-
-smalltalk.addClass('InspectorHandler', smalltalk.Object, [], 'Kernel-Infrastructure');
-
-smalltalk.InspectorHandler.klass.iVarNames = ['inspector'];
-smalltalk.addMethod(
-smalltalk.method({
-selector: "inspect:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._inspector())._inspect_(anObject);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"inspect:",{anObject:anObject},smalltalk.InspectorHandler.klass)})},
-messageSends: ["inspect:", "inspector"]}),
-smalltalk.InspectorHandler.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "inspector",
-fn: function (){
-var self=this;
-function $Transcript(){return smalltalk.Transcript||(typeof Transcript=="undefined"?nil:Transcript)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@inspector"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@inspector"]=$Transcript();
-$1=self["@inspector"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"inspector",{},smalltalk.InspectorHandler.klass)})},
-messageSends: ["ifNil:"]}),
-smalltalk.InspectorHandler.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "register:",
-fn: function (anInspector){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@inspector"]=anInspector;
-return self}, function($ctx1) {$ctx1.fill(self,"register:",{anInspector:anInspector},smalltalk.InspectorHandler.klass)})},
-messageSends: []}),
-smalltalk.InspectorHandler.klass);
-
-
-smalltalk.addClass('InterfacingObject', smalltalk.Object, [], 'Kernel-Infrastructure');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "ajax:",
-fn: function (anObject){
-var self=this;
-function $PlatformInterface(){return smalltalk.PlatformInterface||(typeof PlatformInterface=="undefined"?nil:PlatformInterface)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st($PlatformInterface())._ajax_(anObject);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"ajax:",{anObject:anObject},smalltalk.InterfacingObject)})},
-messageSends: ["ajax:"]}),
-smalltalk.InterfacingObject);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "alert:",
-fn: function (aString){
-var self=this;
-function $PlatformInterface(){return smalltalk.PlatformInterface||(typeof PlatformInterface=="undefined"?nil:PlatformInterface)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st($PlatformInterface())._alert_(aString);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"alert:",{aString:aString},smalltalk.InterfacingObject)})},
-messageSends: ["alert:"]}),
-smalltalk.InterfacingObject);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "confirm:",
-fn: function (aString){
-var self=this;
-function $PlatformInterface(){return smalltalk.PlatformInterface||(typeof PlatformInterface=="undefined"?nil:PlatformInterface)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st($PlatformInterface())._confirm_(aString);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"confirm:",{aString:aString},smalltalk.InterfacingObject)})},
-messageSends: ["confirm:"]}),
-smalltalk.InterfacingObject);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "prompt:",
-fn: function (aString){
-var self=this;
-function $PlatformInterface(){return smalltalk.PlatformInterface||(typeof PlatformInterface=="undefined"?nil:PlatformInterface)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st($PlatformInterface())._prompt_(aString);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"prompt:",{aString:aString},smalltalk.InterfacingObject)})},
-messageSends: ["prompt:"]}),
-smalltalk.InterfacingObject);
-
-
-
-smalltalk.addClass('Environment', smalltalk.InterfacingObject, [], 'Kernel-Infrastructure');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "addInstVarNamed:to:",
-fn: function (aString,aClass){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st(_st(aClass)._instanceVariableNames())._copy();
-_st($1)._add_(aString);
-$2=_st($1)._yourself();
-_st(self._classBuilder())._addSubclassOf_named_instanceVariableNames_package_(_st(aClass)._superclass(),_st(aClass)._name(),$2,_st(_st(aClass)._package())._name());
-return self}, function($ctx1) {$ctx1.fill(self,"addInstVarNamed:to:",{aString:aString,aClass:aClass},smalltalk.Environment)})},
-messageSends: ["addSubclassOf:named:instanceVariableNames:package:", "superclass", "name", "add:", "copy", "instanceVariableNames", "yourself", "package", "classBuilder"]}),
-smalltalk.Environment);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "allSelectors",
-fn: function (){
-var self=this;
-function $Smalltalk(){return smalltalk.Smalltalk||(typeof Smalltalk=="undefined"?nil:Smalltalk)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(_st($Smalltalk())._current())._at_("allSelectors"))._value();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"allSelectors",{},smalltalk.Environment)})},
-messageSends: ["value", "at:", "current"]}),
-smalltalk.Environment);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "availableClassNames",
-fn: function (){
-var self=this;
-function $Smalltalk(){return smalltalk.Smalltalk||(typeof Smalltalk=="undefined"?nil:Smalltalk)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(_st($Smalltalk())._current())._classes())._collect_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(each)._name();
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"availableClassNames",{},smalltalk.Environment)})},
-messageSends: ["collect:", "name", "classes", "current"]}),
-smalltalk.Environment);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "availablePackageNames",
-fn: function (){
-var self=this;
-function $Smalltalk(){return smalltalk.Smalltalk||(typeof Smalltalk=="undefined"?nil:Smalltalk)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(_st($Smalltalk())._current())._packages())._collect_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(each)._name();
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"availablePackageNames",{},smalltalk.Environment)})},
-messageSends: ["collect:", "name", "packages", "current"]}),
-smalltalk.Environment);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "availableProtocolsFor:",
-fn: function (aClass){
-var self=this;
-var protocols;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-protocols=_st(aClass)._protocols();
-$1=_st(aClass)._superclass();
-if(($receiver = $1) == nil || $receiver == undefined){
-$1;
-} else {
-_st(protocols)._addAll_(self._availableProtocolsFor_(_st(aClass)._superclass()));
-};
-$2=_st(_st(protocols)._asSet())._asArray();
-return $2;
-}, function($ctx1) {$ctx1.fill(self,"availableProtocolsFor:",{aClass:aClass,protocols:protocols},smalltalk.Environment)})},
-messageSends: ["protocols", "ifNotNil:", "addAll:", "availableProtocolsFor:", "superclass", "asArray", "asSet"]}),
-smalltalk.Environment);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "classBuilder",
-fn: function (){
-var self=this;
-function $ClassBuilder(){return smalltalk.ClassBuilder||(typeof ClassBuilder=="undefined"?nil:ClassBuilder)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st($ClassBuilder())._new();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"classBuilder",{},smalltalk.Environment)})},
-messageSends: ["new"]}),
-smalltalk.Environment);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "classNamed:",
-fn: function (aString){
-var self=this;
-function $Smalltalk(){return smalltalk.Smalltalk||(typeof Smalltalk=="undefined"?nil:Smalltalk)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=_st(_st($Smalltalk())._current())._at_(_st(aString)._asSymbol());
-if(($receiver = $2) == nil || $receiver == undefined){
-$1=self._error_("Invalid class name");
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"classNamed:",{aString:aString},smalltalk.Environment)})},
-messageSends: ["ifNil:", "error:", "at:", "asSymbol", "current"]}),
-smalltalk.Environment);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "classes",
-fn: function (){
-var self=this;
-function $Smalltalk(){return smalltalk.Smalltalk||(typeof Smalltalk=="undefined"?nil:Smalltalk)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st($Smalltalk())._current())._classes();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"classes",{},smalltalk.Environment)})},
-messageSends: ["classes", "current"]}),
-smalltalk.Environment);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "commitPackage:",
-fn: function (aPackage){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(aPackage)._commit();
-return self}, function($ctx1) {$ctx1.fill(self,"commitPackage:",{aPackage:aPackage},smalltalk.Environment)})},
-messageSends: ["commit"]}),
-smalltalk.Environment);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "compileClassComment:for:",
-fn: function (aString,aClass){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(aClass)._comment_(aString);
-return self}, function($ctx1) {$ctx1.fill(self,"compileClassComment:for:",{aString:aString,aClass:aClass},smalltalk.Environment)})},
-messageSends: ["comment:"]}),
-smalltalk.Environment);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "compileClassDefinition:",
-fn: function (aString){
-var self=this;
-function $DoIt(){return smalltalk.DoIt||(typeof DoIt=="undefined"?nil:DoIt)}
-return smalltalk.withContext(function($ctx1) { 
-self._eval_on_(aString,_st($DoIt())._new());
-return self}, function($ctx1) {$ctx1.fill(self,"compileClassDefinition:",{aString:aString},smalltalk.Environment)})},
-messageSends: ["eval:on:", "new"]}),
-smalltalk.Environment);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "compileMethod:for:protocol:",
-fn: function (sourceCode,class_,protocol){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(class_)._compile_category_(sourceCode,protocol);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"compileMethod:for:protocol:",{sourceCode:sourceCode,class_:class_,protocol:protocol},smalltalk.Environment)})},
-messageSends: ["compile:category:"]}),
-smalltalk.Environment);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "copyClass:to:",
-fn: function (aClass,aClassName){
-var self=this;
-function $Smalltalk(){return smalltalk.Smalltalk||(typeof Smalltalk=="undefined"?nil:Smalltalk)}
-function $ClassBuilder(){return smalltalk.ClassBuilder||(typeof ClassBuilder=="undefined"?nil:ClassBuilder)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st($Smalltalk())._current())._at_(aClassName);
-if(($receiver = $1) == nil || $receiver == undefined){
-$1;
-} else {
-self._error_(_st("A class named ".__comma(aClassName)).__comma(" already exists"));
-};
-_st(_st($ClassBuilder())._new())._copyClass_named_(aClass,aClassName);
-return self}, function($ctx1) {$ctx1.fill(self,"copyClass:to:",{aClass:aClass,aClassName:aClassName},smalltalk.Environment)})},
-messageSends: ["ifNotNil:", "error:", ",", "at:", "current", "copyClass:named:", "new"]}),
-smalltalk.Environment);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "eval:on:",
-fn: function (aString,aReceiver){
-var self=this;
-var compiler;
-function $Compiler(){return smalltalk.Compiler||(typeof Compiler=="undefined"?nil:Compiler)}
-function $Error(){return smalltalk.Error||(typeof Error=="undefined"?nil:Error)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-var $early={};
-try {
-compiler=_st($Compiler())._new();
-_st((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(compiler)._parseExpression_(aString);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._on_do_($Error(),(function(ex){
-return smalltalk.withContext(function($ctx2) {
-$1=self._alert_(_st(ex)._messageText());
-throw $early=[$1];
-}, function($ctx2) {$ctx2.fillBlock({ex:ex},$ctx1)})}));
-$2=_st(compiler)._evaluateExpression_on_(aString,aReceiver);
-return $2;
-}
-catch(e) {if(e===$early)return e[0]; throw e}
-}, function($ctx1) {$ctx1.fill(self,"eval:on:",{aString:aString,aReceiver:aReceiver,compiler:compiler},smalltalk.Environment)})},
-messageSends: ["new", "on:do:", "alert:", "messageText", "parseExpression:", "evaluateExpression:on:"]}),
-smalltalk.Environment);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "evaluate:on:do:",
-fn: function (aBlock,anErrorClass,exceptionBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-self._try_catch_(aBlock,(function(exception){
-return smalltalk.withContext(function($ctx2) {
-$1=_st(exception)._isKindOf_(self._classNamed_(_st(anErrorClass)._name()));
-if(smalltalk.assert($1)){
-return _st(exceptionBlock)._value_(exception);
-} else {
-return _st(exception)._signal();
-};
-}, function($ctx2) {$ctx2.fillBlock({exception:exception},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"evaluate:on:do:",{aBlock:aBlock,anErrorClass:anErrorClass,exceptionBlock:exceptionBlock},smalltalk.Environment)})},
-messageSends: ["try:catch:", "ifTrue:ifFalse:", "value:", "signal", "isKindOf:", "classNamed:", "name"]}),
-smalltalk.Environment);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "inspect:",
-fn: function (anObject){
-var self=this;
-function $InspectorHandler(){return smalltalk.InspectorHandler||(typeof InspectorHandler=="undefined"?nil:InspectorHandler)}
-return smalltalk.withContext(function($ctx1) { 
-_st(_st($InspectorHandler())._inspector())._inspect_(anObject);
-return self}, function($ctx1) {$ctx1.fill(self,"inspect:",{anObject:anObject},smalltalk.Environment)})},
-messageSends: ["inspect:", "inspector"]}),
-smalltalk.Environment);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "moveClass:toPackage:",
-fn: function (aClass,aPackageName){
-var self=this;
-var package_;
-function $Package(){return smalltalk.Package||(typeof Package=="undefined"?nil:Package)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3;
-package_=_st($Package())._named_(aPackageName);
-$1=package_;
-if(($receiver = $1) == nil || $receiver == undefined){
-self._error_("Invalid package name");
-} else {
-$1;
-};
-$2=_st(package_).__eq_eq(_st(aClass)._package());
-if(smalltalk.assert($2)){
-$3=self;
-return $3;
-};
-_st(aClass)._package_(package_);
-return self}, function($ctx1) {$ctx1.fill(self,"moveClass:toPackage:",{aClass:aClass,aPackageName:aPackageName,package_:package_},smalltalk.Environment)})},
-messageSends: ["named:", "ifNil:", "error:", "ifTrue:", "==", "package", "package:"]}),
-smalltalk.Environment);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "moveMethod:toClass:",
-fn: function (aMethod,aClassName){
-var self=this;
-var destinationClass;
-function $Smalltalk(){return smalltalk.Smalltalk||(typeof Smalltalk=="undefined"?nil:Smalltalk)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3;
-destinationClass=_st(_st($Smalltalk())._current())._at_(_st(aClassName)._asSymbol());
-$1=destinationClass;
-if(($receiver = $1) == nil || $receiver == undefined){
-self._error_("Invalid class name");
-} else {
-$1;
-};
-$2=_st(destinationClass).__eq_eq(_st(aMethod)._methodClass());
-if(smalltalk.assert($2)){
-$3=self;
-return $3;
-};
-_st(destinationClass)._compile_category_(_st(aMethod)._source(),_st(aMethod)._protocol());
-_st(_st(aMethod)._methodClass())._removeCompiledMethod_(aMethod);
-return self}, function($ctx1) {$ctx1.fill(self,"moveMethod:toClass:",{aMethod:aMethod,aClassName:aClassName,destinationClass:destinationClass},smalltalk.Environment)})},
-messageSends: ["at:", "asSymbol", "current", "ifNil:", "error:", "ifTrue:", "==", "methodClass", "compile:category:", "source", "protocol", "removeCompiledMethod:"]}),
-smalltalk.Environment);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "moveMethod:toProtocol:",
-fn: function (aMethod,aProtocol){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(aMethod)._category_(aProtocol);
-return self}, function($ctx1) {$ctx1.fill(self,"moveMethod:toProtocol:",{aMethod:aMethod,aProtocol:aProtocol},smalltalk.Environment)})},
-messageSends: ["category:"]}),
-smalltalk.Environment);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "packages",
-fn: function (){
-var self=this;
-function $Smalltalk(){return smalltalk.Smalltalk||(typeof Smalltalk=="undefined"?nil:Smalltalk)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st($Smalltalk())._current())._packages();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"packages",{},smalltalk.Environment)})},
-messageSends: ["packages", "current"]}),
-smalltalk.Environment);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "registerErrorHandler:",
-fn: function (anErrorHandler){
-var self=this;
-function $ErrorHandler(){return smalltalk.ErrorHandler||(typeof ErrorHandler=="undefined"?nil:ErrorHandler)}
-return smalltalk.withContext(function($ctx1) { 
-_st($ErrorHandler())._setCurrent_(anErrorHandler);
-return self}, function($ctx1) {$ctx1.fill(self,"registerErrorHandler:",{anErrorHandler:anErrorHandler},smalltalk.Environment)})},
-messageSends: ["setCurrent:"]}),
-smalltalk.Environment);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "registerInspector:",
-fn: function (anInspector){
-var self=this;
-function $InspectorHandler(){return smalltalk.InspectorHandler||(typeof InspectorHandler=="undefined"?nil:InspectorHandler)}
-return smalltalk.withContext(function($ctx1) { 
-_st($InspectorHandler())._register_(anInspector);
-return self}, function($ctx1) {$ctx1.fill(self,"registerInspector:",{anInspector:anInspector},smalltalk.Environment)})},
-messageSends: ["register:"]}),
-smalltalk.Environment);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "registerProgressHandler:",
-fn: function (aProgressHandler){
-var self=this;
-function $ProgressHandler(){return smalltalk.ProgressHandler||(typeof ProgressHandler=="undefined"?nil:ProgressHandler)}
-return smalltalk.withContext(function($ctx1) { 
-_st($ProgressHandler())._setCurrent_(aProgressHandler);
-return self}, function($ctx1) {$ctx1.fill(self,"registerProgressHandler:",{aProgressHandler:aProgressHandler},smalltalk.Environment)})},
-messageSends: ["setCurrent:"]}),
-smalltalk.Environment);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "removeClass:",
-fn: function (aClass){
-var self=this;
-function $Smalltalk(){return smalltalk.Smalltalk||(typeof Smalltalk=="undefined"?nil:Smalltalk)}
-return smalltalk.withContext(function($ctx1) { 
-_st(_st($Smalltalk())._current())._removeClass_(aClass);
-return self}, function($ctx1) {$ctx1.fill(self,"removeClass:",{aClass:aClass},smalltalk.Environment)})},
-messageSends: ["removeClass:", "current"]}),
-smalltalk.Environment);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "removeMethod:",
-fn: function (aMethod){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(_st(aMethod)._methodClass())._removeCompiledMethod_(aMethod);
-return self}, function($ctx1) {$ctx1.fill(self,"removeMethod:",{aMethod:aMethod},smalltalk.Environment)})},
-messageSends: ["removeCompiledMethod:", "methodClass"]}),
-smalltalk.Environment);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "removeProtocol:from:",
-fn: function (aString,aClass){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(_st(_st(aClass)._methods())._select_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(each)._protocol()).__eq(aString);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})})))._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(aClass)._removeCompiledMethod_(each);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"removeProtocol:from:",{aString:aString,aClass:aClass},smalltalk.Environment)})},
-messageSends: ["do:", "removeCompiledMethod:", "select:", "=", "protocol", "methods"]}),
-smalltalk.Environment);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renameClass:to:",
-fn: function (aClass,aClassName){
-var self=this;
-function $Smalltalk(){return smalltalk.Smalltalk||(typeof Smalltalk=="undefined"?nil:Smalltalk)}
-function $ClassBuilder(){return smalltalk.ClassBuilder||(typeof ClassBuilder=="undefined"?nil:ClassBuilder)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st($Smalltalk())._current())._at_(aClassName);
-if(($receiver = $1) == nil || $receiver == undefined){
-$1;
-} else {
-self._error_(_st("A class named ".__comma(aClassName)).__comma(" already exists"));
-};
-_st(_st($ClassBuilder())._new())._renameClass_to_(aClass,aClassName);
-return self}, function($ctx1) {$ctx1.fill(self,"renameClass:to:",{aClass:aClass,aClassName:aClassName},smalltalk.Environment)})},
-messageSends: ["ifNotNil:", "error:", ",", "at:", "current", "renameClass:to:", "new"]}),
-smalltalk.Environment);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renameProtocol:to:in:",
-fn: function (aString,anotherString,aClass){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(_st(_st(aClass)._methods())._select_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(each)._protocol()).__eq(aString);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})})))._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(each)._protocol_(anotherString);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"renameProtocol:to:in:",{aString:aString,anotherString:anotherString,aClass:aClass},smalltalk.Environment)})},
-messageSends: ["do:", "protocol:", "select:", "=", "protocol", "methods"]}),
-smalltalk.Environment);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "setClassCommentOf:to:",
-fn: function (aClass,aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(aClass)._comment_(aString);
-return self}, function($ctx1) {$ctx1.fill(self,"setClassCommentOf:to:",{aClass:aClass,aString:aString},smalltalk.Environment)})},
-messageSends: ["comment:"]}),
-smalltalk.Environment);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "systemAnnouncer",
-fn: function (){
-var self=this;
-function $Smalltalk(){return smalltalk.Smalltalk||(typeof Smalltalk=="undefined"?nil:Smalltalk)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(_st($Smalltalk())._current())._at_("SystemAnnouncer"))._current();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"systemAnnouncer",{},smalltalk.Environment)})},
-messageSends: ["current", "at:"]}),
-smalltalk.Environment);
-
-
-
-smalltalk.addClass('JSObjectProxy', smalltalk.Object, ['jsObject'], 'Kernel-Infrastructure');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "addObjectVariablesTo:",
-fn: function (aDictionary){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-
-		for(var i in self['@jsObject']) {
-			aDictionary._at_put_(i, self['@jsObject'][i]);
-		}
-	;
-return self}, function($ctx1) {$ctx1.fill(self,"addObjectVariablesTo:",{aDictionary:aDictionary},smalltalk.JSObjectProxy)})},
-messageSends: []}),
-smalltalk.JSObjectProxy);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "at:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self['@jsObject'][aString];
-return self}, function($ctx1) {$ctx1.fill(self,"at:",{aString:aString},smalltalk.JSObjectProxy)})},
-messageSends: []}),
-smalltalk.JSObjectProxy);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "at:ifAbsent:",
-fn: function (aString,aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-
-		var obj = self['@jsObject'];
-		return aString in obj ? obj[aString] : aBlock._value();
-	;
-return self}, function($ctx1) {$ctx1.fill(self,"at:ifAbsent:",{aString:aString,aBlock:aBlock},smalltalk.JSObjectProxy)})},
-messageSends: []}),
-smalltalk.JSObjectProxy);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "at:ifPresent:",
-fn: function (aString,aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-
-		var obj = self['@jsObject'];
-		return aString in obj ? aBlock._value_(obj[aString]) : nil;
-	;
-return self}, function($ctx1) {$ctx1.fill(self,"at:ifPresent:",{aString:aString,aBlock:aBlock},smalltalk.JSObjectProxy)})},
-messageSends: []}),
-smalltalk.JSObjectProxy);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "at:ifPresent:ifAbsent:",
-fn: function (aString,aBlock,anotherBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-
-		var obj = self['@jsObject'];
-		return aString in obj ? aBlock._value_(obj[aString]) : anotherBlock._value();
-	;
-return self}, function($ctx1) {$ctx1.fill(self,"at:ifPresent:ifAbsent:",{aString:aString,aBlock:aBlock,anotherBlock:anotherBlock},smalltalk.JSObjectProxy)})},
-messageSends: []}),
-smalltalk.JSObjectProxy);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "at:put:",
-fn: function (aString,anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self['@jsObject'][aString] = anObject;
-return self}, function($ctx1) {$ctx1.fill(self,"at:put:",{aString:aString,anObject:anObject},smalltalk.JSObjectProxy)})},
-messageSends: []}),
-smalltalk.JSObjectProxy);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "doesNotUnderstand:",
-fn: function (aMessage){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self._lookupProperty_(_st(_st(aMessage)._selector())._asJavaScriptSelector());
-if(($receiver = $2) == nil || $receiver == undefined){
-$1=smalltalk.JSObjectProxy.superclass.fn.prototype._doesNotUnderstand_.apply(_st(self), [aMessage]);
-} else {
-var jsSelector;
-jsSelector=$receiver;
-$1=self._forwardMessage_withArguments_(jsSelector,_st(aMessage)._arguments());
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"doesNotUnderstand:",{aMessage:aMessage},smalltalk.JSObjectProxy)})},
-messageSends: ["ifNil:ifNotNil:", "doesNotUnderstand:", "forwardMessage:withArguments:", "arguments", "lookupProperty:", "asJavaScriptSelector", "selector"]}),
-smalltalk.JSObjectProxy);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "forwardMessage:withArguments:",
-fn: function (aString,anArray){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-
-		return smalltalk.send(self._jsObject(), aString, anArray);
-	;
-return self}, function($ctx1) {$ctx1.fill(self,"forwardMessage:withArguments:",{aString:aString,anArray:anArray},smalltalk.JSObjectProxy)})},
-messageSends: []}),
-smalltalk.JSObjectProxy);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "inspectOn:",
-fn: function (anInspector){
-var self=this;
-var variables;
-function $Dictionary(){return smalltalk.Dictionary||(typeof Dictionary=="undefined"?nil:Dictionary)}
-return smalltalk.withContext(function($ctx1) { 
-variables=_st($Dictionary())._new();
-_st(variables)._at_put_("#self",self._jsObject());
-_st(anInspector)._setLabel_(self._printString());
-self._addObjectVariablesTo_(variables);
-_st(anInspector)._setVariables_(variables);
-return self}, function($ctx1) {$ctx1.fill(self,"inspectOn:",{anInspector:anInspector,variables:variables},smalltalk.JSObjectProxy)})},
-messageSends: ["new", "at:put:", "jsObject", "setLabel:", "printString", "addObjectVariablesTo:", "setVariables:"]}),
-smalltalk.JSObjectProxy);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "jsObject",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@jsObject"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"jsObject",{},smalltalk.JSObjectProxy)})},
-messageSends: []}),
-smalltalk.JSObjectProxy);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "jsObject:",
-fn: function (aJSObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@jsObject"]=aJSObject;
-return self}, function($ctx1) {$ctx1.fill(self,"jsObject:",{aJSObject:aJSObject},smalltalk.JSObjectProxy)})},
-messageSends: []}),
-smalltalk.JSObjectProxy);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "keysAndValuesDo:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-
-		var o = self['@jsObject'];
-		for(var i in o) {
-			aBlock._value_value_(i, o[i]);
-		}
-	;
-return self}, function($ctx1) {$ctx1.fill(self,"keysAndValuesDo:",{aBlock:aBlock},smalltalk.JSObjectProxy)})},
-messageSends: []}),
-smalltalk.JSObjectProxy);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "lookupProperty:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return aString in self._jsObject() ? aString : nil;
-return self}, function($ctx1) {$ctx1.fill(self,"lookupProperty:",{aString:aString},smalltalk.JSObjectProxy)})},
-messageSends: []}),
-smalltalk.JSObjectProxy);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "printOn:",
-fn: function (aStream){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(aStream)._nextPutAll_(_st(self._jsObject())._toString());
-return self}, function($ctx1) {$ctx1.fill(self,"printOn:",{aStream:aStream},smalltalk.JSObjectProxy)})},
-messageSends: ["nextPutAll:", "toString", "jsObject"]}),
-smalltalk.JSObjectProxy);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "value",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._at_ifAbsent_("value",(function(){
-return smalltalk.withContext(function($ctx2) {
-return smalltalk.JSObjectProxy.superclass.fn.prototype._value.apply(_st(self), []);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"value",{},smalltalk.JSObjectProxy)})},
-messageSends: ["at:ifAbsent:", "value"]}),
-smalltalk.JSObjectProxy);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "on:",
-fn: function (aJSObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=self._new();
-_st($2)._jsObject_(aJSObject);
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"on:",{aJSObject:aJSObject},smalltalk.JSObjectProxy.klass)})},
-messageSends: ["jsObject:", "new", "yourself"]}),
-smalltalk.JSObjectProxy.klass);
-
-
-smalltalk.addClass('Organizer', smalltalk.Object, [], 'Kernel-Infrastructure');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "addElement:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self.elements.addElement(anObject);
-return self}, function($ctx1) {$ctx1.fill(self,"addElement:",{anObject:anObject},smalltalk.Organizer)})},
-messageSends: []}),
-smalltalk.Organizer);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "elements",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._basicAt_("elements"))._copy();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"elements",{},smalltalk.Organizer)})},
-messageSends: ["copy", "basicAt:"]}),
-smalltalk.Organizer);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "removeElement:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self.elements.removeElement(anObject);
-return self}, function($ctx1) {$ctx1.fill(self,"removeElement:",{anObject:anObject},smalltalk.Organizer)})},
-messageSends: []}),
-smalltalk.Organizer);
-
-
-
-smalltalk.addClass('ClassOrganizer', smalltalk.Organizer, [], 'Kernel-Infrastructure');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "addElement:",
-fn: function (aString){
-var self=this;
-function $ProtocolAdded(){return smalltalk.ProtocolAdded||(typeof ProtocolAdded=="undefined"?nil:ProtocolAdded)}
-function $SystemAnnouncer(){return smalltalk.SystemAnnouncer||(typeof SystemAnnouncer=="undefined"?nil:SystemAnnouncer)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-smalltalk.ClassOrganizer.superclass.fn.prototype._addElement_.apply(_st(self), [aString]);
-$1=_st($ProtocolAdded())._new();
-_st($1)._protocol_(aString);
-_st($1)._theClass_(self._theClass());
-$2=_st($1)._yourself();
-_st(_st($SystemAnnouncer())._current())._announce_($2);
-return self}, function($ctx1) {$ctx1.fill(self,"addElement:",{aString:aString},smalltalk.ClassOrganizer)})},
-messageSends: ["addElement:", "announce:", "protocol:", "new", "theClass:", "theClass", "yourself", "current"]}),
-smalltalk.ClassOrganizer);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "removeElement:",
-fn: function (aString){
-var self=this;
-function $ProtocolRemoved(){return smalltalk.ProtocolRemoved||(typeof ProtocolRemoved=="undefined"?nil:ProtocolRemoved)}
-function $SystemAnnouncer(){return smalltalk.SystemAnnouncer||(typeof SystemAnnouncer=="undefined"?nil:SystemAnnouncer)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-smalltalk.ClassOrganizer.superclass.fn.prototype._removeElement_.apply(_st(self), [aString]);
-$1=_st($ProtocolRemoved())._new();
-_st($1)._protocol_(aString);
-_st($1)._theClass_(self._theClass());
-$2=_st($1)._yourself();
-_st(_st($SystemAnnouncer())._current())._announce_($2);
-return self}, function($ctx1) {$ctx1.fill(self,"removeElement:",{aString:aString},smalltalk.ClassOrganizer)})},
-messageSends: ["removeElement:", "announce:", "protocol:", "new", "theClass:", "theClass", "yourself", "current"]}),
-smalltalk.ClassOrganizer);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "theClass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
- return self.theClass ;
-return self}, function($ctx1) {$ctx1.fill(self,"theClass",{},smalltalk.ClassOrganizer)})},
-messageSends: []}),
-smalltalk.ClassOrganizer);
-
-
-
-smalltalk.addClass('PackageOrganizer', smalltalk.Organizer, [], 'Kernel-Infrastructure');
-
-
-smalltalk.addClass('Package', smalltalk.Object, ['extension'], 'Kernel-Infrastructure');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "classes",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(_st(self._organization())._elements())._asSet())._asArray();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"classes",{},smalltalk.Package)})},
-messageSends: ["asArray", "asSet", "elements", "organization"]}),
-smalltalk.Package);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isPackage",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"isPackage",{},smalltalk.Package)})},
-messageSends: []}),
-smalltalk.Package);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "loadDependencies",
-fn: function (){
-var self=this;
-var classes,packages;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-classes=self._loadDependencyClasses();
-$2=_st(_st(classes)._collect_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(each)._package();
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})})))._asSet();
-_st($2)._remove_ifAbsent_(self,(function(){
-return smalltalk.withContext(function($ctx2) {
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"loadDependencies",{classes:classes,packages:packages},smalltalk.Package)})},
-messageSends: ["loadDependencyClasses", "remove:ifAbsent:", "asSet", "collect:", "package", "yourself"]}),
-smalltalk.Package);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "loadDependencyClasses",
-fn: function (){
-var self=this;
-var starCategoryName;
-function $Smalltalk(){return smalltalk.Smalltalk||(typeof Smalltalk=="undefined"?nil:Smalltalk)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-starCategoryName="*".__comma(self._name());
-$2=_st(_st(self._classes())._collect_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(each)._superclass();
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})})))._asSet();
-_st($2)._remove_ifAbsent_(nil,(function(){
-return smalltalk.withContext(function($ctx2) {
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-_st($2)._addAll_(_st(_st(_st($Smalltalk())._current())._classes())._select_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(each)._protocols())._includes_(starCategoryName);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})})));
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"loadDependencyClasses",{starCategoryName:starCategoryName},smalltalk.Package)})},
-messageSends: [",", "name", "remove:ifAbsent:", "asSet", "collect:", "superclass", "classes", "addAll:", "select:", "includes:", "protocols", "current", "yourself"]}),
-smalltalk.Package);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "name",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self.pkgName;
-return self}, function($ctx1) {$ctx1.fill(self,"name",{},smalltalk.Package)})},
-messageSends: []}),
-smalltalk.Package);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "name:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self.pkgName = aString;
-return self}, function($ctx1) {$ctx1.fill(self,"name:",{aString:aString},smalltalk.Package)})},
-messageSends: []}),
-smalltalk.Package);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "organization",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._basicAt_("organization");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"organization",{},smalltalk.Package)})},
-messageSends: ["basicAt:"]}),
-smalltalk.Package);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "printOn:",
-fn: function (aStream){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-smalltalk.Package.superclass.fn.prototype._printOn_.apply(_st(self), [aStream]);
-$1=aStream;
-_st($1)._nextPutAll_(" (");
-_st($1)._nextPutAll_(self._name());
-$2=_st($1)._nextPutAll_(")");
-return self}, function($ctx1) {$ctx1.fill(self,"printOn:",{aStream:aStream},smalltalk.Package)})},
-messageSends: ["printOn:", "nextPutAll:", "name"]}),
-smalltalk.Package);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "setupClasses",
-fn: function (){
-var self=this;
-function $ClassBuilder(){return smalltalk.ClassBuilder||(typeof ClassBuilder=="undefined"?nil:ClassBuilder)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=self._classes();
-_st($1)._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st($ClassBuilder())._new())._setupClass_(each);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-$2=_st($1)._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(each)._initialize();
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"setupClasses",{},smalltalk.Package)})},
-messageSends: ["do:", "setupClass:", "new", "classes", "initialize"]}),
-smalltalk.Package);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "sortedClasses",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._class())._sortedClasses_(self._classes());
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"sortedClasses",{},smalltalk.Package)})},
-messageSends: ["sortedClasses:", "classes", "class"]}),
-smalltalk.Package);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "withDefaultTransport",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self.withDefaultTransport();
-return self}, function($ctx1) {$ctx1.fill(self,"withDefaultTransport",{},smalltalk.Package)})},
-messageSends: []}),
-smalltalk.Package);
-
-
-smalltalk.Package.klass.iVarNames = ['defaultCommitPathJs','defaultCommitPathSt'];
-smalltalk.addMethod(
-smalltalk.method({
-selector: "load:",
-fn: function (aPackageName){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._deprecatedAPI();
-self._load_prefix_(aPackageName,_st(self._defaultCommitPathJs()).__comma("/"));
-return self}, function($ctx1) {$ctx1.fill(self,"load:",{aPackageName:aPackageName},smalltalk.Package.klass)})},
-messageSends: ["deprecatedAPI", "load:prefix:", ",", "defaultCommitPathJs"]}),
-smalltalk.Package.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "load:prefix:",
-fn: function (aPackageName,aPrefix){
-var self=this;
-function $Package(){return smalltalk.Package||(typeof Package=="undefined"?nil:Package)}
-function $PlatformInterface(){return smalltalk.PlatformInterface||(typeof PlatformInterface=="undefined"?nil:PlatformInterface)}
-return smalltalk.withContext(function($ctx1) { 
-self._deprecatedAPI();
-_st($PlatformInterface())._ajax_(smalltalk.HashedCollection._from_(["url".__minus_gt(_st(_st(aPrefix).__comma(aPackageName)).__comma(".js")),"dataType".__minus_gt("script"),"success".__minus_gt((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st($Package())._named_(aPackageName))._setupClasses();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))]));
-return self}, function($ctx1) {$ctx1.fill(self,"load:prefix:",{aPackageName:aPackageName,aPrefix:aPrefix},smalltalk.Package.klass)})},
-messageSends: ["deprecatedAPI", "ajax:", "->", ",", "setupClasses", "named:"]}),
-smalltalk.Package.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "named:",
-fn: function (aPackageName){
-var self=this;
-function $Smalltalk(){return smalltalk.Smalltalk||(typeof Smalltalk=="undefined"?nil:Smalltalk)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st($Smalltalk())._current())._packageAt_(aPackageName);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"named:",{aPackageName:aPackageName},smalltalk.Package.klass)})},
-messageSends: ["packageAt:", "current"]}),
-smalltalk.Package.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "named:ifAbsent:",
-fn: function (aPackageName,aBlock){
-var self=this;
-function $Smalltalk(){return smalltalk.Smalltalk||(typeof Smalltalk=="undefined"?nil:Smalltalk)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st($Smalltalk())._current())._packageAt_ifAbsent_(aPackageName,aBlock);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"named:ifAbsent:",{aPackageName:aPackageName,aBlock:aBlock},smalltalk.Package.klass)})},
-messageSends: ["packageAt:ifAbsent:", "current"]}),
-smalltalk.Package.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "sortedClasses:",
-fn: function (classes){
-var self=this;
-var children,others,nodes,expandedClasses;
-function $ClassSorterNode(){return smalltalk.ClassSorterNode||(typeof ClassSorterNode=="undefined"?nil:ClassSorterNode)}
-function $Array(){return smalltalk.Array||(typeof Array=="undefined"?nil:Array)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-children=[];
-others=[];
-_st(classes)._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-$1=_st(classes)._includes_(_st(each)._superclass());
-if(smalltalk.assert($1)){
-return _st(others)._add_(each);
-} else {
-return _st(children)._add_(each);
-};
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-nodes=_st(children)._collect_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st($ClassSorterNode())._on_classes_level_(each,others,(0));
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-nodes=_st(nodes)._sorted_((function(a,b){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(_st(a)._theClass())._name()).__lt_eq(_st(_st(b)._theClass())._name());
-}, function($ctx2) {$ctx2.fillBlock({a:a,b:b},$ctx1)})}));
-expandedClasses=_st($Array())._new();
-_st(nodes)._do_((function(aNode){
-return smalltalk.withContext(function($ctx2) {
-return _st(aNode)._traverseClassesWith_(expandedClasses);
-}, function($ctx2) {$ctx2.fillBlock({aNode:aNode},$ctx1)})}));
-$2=expandedClasses;
-return $2;
-}, function($ctx1) {$ctx1.fill(self,"sortedClasses:",{classes:classes,children:children,others:others,nodes:nodes,expandedClasses:expandedClasses},smalltalk.Package.klass)})},
-messageSends: ["do:", "ifFalse:ifTrue:", "add:", "includes:", "superclass", "collect:", "on:classes:level:", "sorted:", "<=", "name", "theClass", "new", "traverseClassesWith:"]}),
-smalltalk.Package.klass);
-
-
-smalltalk.addClass('PlatformInterface', smalltalk.Object, [], 'Kernel-Infrastructure');
-
-smalltalk.PlatformInterface.klass.iVarNames = ['worker'];
-smalltalk.addMethod(
-smalltalk.method({
-selector: "ajax:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@worker"];
-if(($receiver = $2) == nil || $receiver == undefined){
-$1=self._error_("ajax: not available");
-} else {
-$1=_st(self["@worker"])._ajax_(anObject);
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"ajax:",{anObject:anObject},smalltalk.PlatformInterface.klass)})},
-messageSends: ["ifNotNil:ifNil:", "ajax:", "error:"]}),
-smalltalk.PlatformInterface.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "alert:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@worker"];
-if(($receiver = $2) == nil || $receiver == undefined){
-$1=self._error_("alert: not available");
-} else {
-$1=_st(self["@worker"])._alert_(aString);
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"alert:",{aString:aString},smalltalk.PlatformInterface.klass)})},
-messageSends: ["ifNotNil:ifNil:", "alert:", "error:"]}),
-smalltalk.PlatformInterface.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "confirm:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@worker"];
-if(($receiver = $2) == nil || $receiver == undefined){
-$1=self._error_("confirm: not available");
-} else {
-$1=_st(self["@worker"])._confirm_(aString);
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"confirm:",{aString:aString},smalltalk.PlatformInterface.klass)})},
-messageSends: ["ifNotNil:ifNil:", "confirm:", "error:"]}),
-smalltalk.PlatformInterface.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "existsGlobal:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-
-	var f = new Function('aString',
-	'if (/^[0-9]/.test(aString) || !/^[\\w_]+$/.test(aString))\n'+
-	'	return false;\n'+
-	'try { eval(aString); return true; } catch (ex) {}\n'+
-	'return false;');
-	return f(aString);;
-return self}, function($ctx1) {$ctx1.fill(self,"existsGlobal:",{aString:aString},smalltalk.PlatformInterface.klass)})},
-messageSends: []}),
-smalltalk.PlatformInterface.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "initialize",
-fn: function (){
-var self=this;
-var candidate;
-function $BrowserInterface(){return smalltalk.BrowserInterface||(typeof BrowserInterface=="undefined"?nil:BrowserInterface)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3;
-smalltalk.PlatformInterface.klass.superclass.fn.prototype._initialize.apply(_st(self), []);
-$1=$BrowserInterface();
-if(($receiver = $1) == nil || $receiver == undefined){
-$1;
-} else {
-candidate=_st($BrowserInterface())._new();
-candidate;
-$2=_st(candidate)._isAvailable();
-if(smalltalk.assert($2)){
-self._setWorker_(candidate);
-$3=self;
-return $3;
-};
-};
-return self}, function($ctx1) {$ctx1.fill(self,"initialize",{candidate:candidate},smalltalk.PlatformInterface.klass)})},
-messageSends: ["initialize", "ifNotNil:", "new", "ifTrue:", "setWorker:", "isAvailable"]}),
-smalltalk.PlatformInterface.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "prompt:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@worker"];
-if(($receiver = $2) == nil || $receiver == undefined){
-$1=self._error_("prompt: not available");
-} else {
-$1=_st(self["@worker"])._prompt_(aString);
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"prompt:",{aString:aString},smalltalk.PlatformInterface.klass)})},
-messageSends: ["ifNotNil:ifNil:", "prompt:", "error:"]}),
-smalltalk.PlatformInterface.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "setWorker:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@worker"]=anObject;
-return self}, function($ctx1) {$ctx1.fill(self,"setWorker:",{anObject:anObject},smalltalk.PlatformInterface.klass)})},
-messageSends: []}),
-smalltalk.PlatformInterface.klass);
-
-
-smalltalk.addClass('ProgressHandler', smalltalk.Object, [], 'Kernel-Infrastructure');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "do:on:displaying:",
-fn: function (aBlock,aCollection,aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(aCollection)._do_(aBlock);
-return self}, function($ctx1) {$ctx1.fill(self,"do:on:displaying:",{aBlock:aBlock,aCollection:aCollection,aString:aString},smalltalk.ProgressHandler)})},
-messageSends: ["do:"]}),
-smalltalk.ProgressHandler);
-
-
-smalltalk.ProgressHandler.klass.iVarNames = ['current'];
-smalltalk.addMethod(
-smalltalk.method({
-selector: "current",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@current"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@current"]=self._new();
-$1=self["@current"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"current",{},smalltalk.ProgressHandler.klass)})},
-messageSends: ["ifNil:", "new"]}),
-smalltalk.ProgressHandler.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "initialize",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._register();
-return self}, function($ctx1) {$ctx1.fill(self,"initialize",{},smalltalk.ProgressHandler.klass)})},
-messageSends: ["register"]}),
-smalltalk.ProgressHandler.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "register",
-fn: function (){
-var self=this;
-function $ProgressHandler(){return smalltalk.ProgressHandler||(typeof ProgressHandler=="undefined"?nil:ProgressHandler)}
-return smalltalk.withContext(function($ctx1) { 
-_st($ProgressHandler())._setCurrent_(self._new());
-return self}, function($ctx1) {$ctx1.fill(self,"register",{},smalltalk.ProgressHandler.klass)})},
-messageSends: ["setCurrent:", "new"]}),
-smalltalk.ProgressHandler.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "setCurrent:",
-fn: function (anHandler){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@current"]=anHandler;
-return self}, function($ctx1) {$ctx1.fill(self,"setCurrent:",{anHandler:anHandler},smalltalk.ProgressHandler.klass)})},
-messageSends: []}),
-smalltalk.ProgressHandler.klass);
-
-
-smalltalk.addClass('Smalltalk', smalltalk.Object, [], 'Kernel-Infrastructure');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "addGlobalJsVariable:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._globalJsVariables())._add_(aString);
-return self}, function($ctx1) {$ctx1.fill(self,"addGlobalJsVariable:",{aString:aString},smalltalk.Smalltalk)})},
-messageSends: ["add:", "globalJsVariables"]}),
-smalltalk.Smalltalk);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "amdRequire",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._basicAt_("amdRequire");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"amdRequire",{},smalltalk.Smalltalk)})},
-messageSends: ["basicAt:"]}),
-smalltalk.Smalltalk);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "asSmalltalkException:",
-fn: function (anObject){
-var self=this;
-function $JavaScriptException(){return smalltalk.JavaScriptException||(typeof JavaScriptException=="undefined"?nil:JavaScriptException)}
-function $Error(){return smalltalk.Error||(typeof Error=="undefined"?nil:Error)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=_st(self._isSmalltalkObject_(anObject))._and_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(anObject)._isKindOf_($Error());
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-if(smalltalk.assert($2)){
-$1=anObject;
-} else {
-$1=_st($JavaScriptException())._on_(anObject);
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"asSmalltalkException:",{anObject:anObject},smalltalk.Smalltalk)})},
-messageSends: ["ifTrue:ifFalse:", "on:", "and:", "isKindOf:", "isSmalltalkObject:"]}),
-smalltalk.Smalltalk);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "at:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self[aString];
-return self}, function($ctx1) {$ctx1.fill(self,"at:",{aString:aString},smalltalk.Smalltalk)})},
-messageSends: []}),
-smalltalk.Smalltalk);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "basicParse:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return smalltalk.parser.parse(aString);
-return self}, function($ctx1) {$ctx1.fill(self,"basicParse:",{aString:aString},smalltalk.Smalltalk)})},
-messageSends: []}),
-smalltalk.Smalltalk);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "classes",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self.classes();
-return self}, function($ctx1) {$ctx1.fill(self,"classes",{},smalltalk.Smalltalk)})},
-messageSends: []}),
-smalltalk.Smalltalk);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "createDefaultPackage:",
-fn: function (packageName){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._createPackage_(packageName))._withDefaultTransport();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"createDefaultPackage:",{packageName:packageName},smalltalk.Smalltalk)})},
-messageSends: ["withDefaultTransport", "createPackage:"]}),
-smalltalk.Smalltalk);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "createPackage:",
-fn: function (packageName){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return smalltalk.addPackage(packageName);
-return self}, function($ctx1) {$ctx1.fill(self,"createPackage:",{packageName:packageName},smalltalk.Smalltalk)})},
-messageSends: []}),
-smalltalk.Smalltalk);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "createPackage:properties:",
-fn: function (packageName,aDict){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-self._deprecatedAPI();
-$1=_st(aDict)._isEmpty();
-if(! smalltalk.assert($1)){
-self._error_("createPackage:properties: called with nonempty properties");
-};
-$2=self._createPackage_(packageName);
-return $2;
-}, function($ctx1) {$ctx1.fill(self,"createPackage:properties:",{packageName:packageName,aDict:aDict},smalltalk.Smalltalk)})},
-messageSends: ["deprecatedAPI", "ifFalse:", "error:", "isEmpty", "createPackage:"]}),
-smalltalk.Smalltalk);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "defaultAMDNamespace",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._basicAt_("defaultAMDNamespace");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"defaultAMDNamespace",{},smalltalk.Smalltalk)})},
-messageSends: ["basicAt:"]}),
-smalltalk.Smalltalk);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "defaultAMDNamespace:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._basicAt_put_("defaultAMDNamespace",aString);
-return self}, function($ctx1) {$ctx1.fill(self,"defaultAMDNamespace:",{aString:aString},smalltalk.Smalltalk)})},
-messageSends: ["basicAt:put:"]}),
-smalltalk.Smalltalk);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "deleteClass:",
-fn: function (aClass){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self.removeClass(aClass);
-return self}, function($ctx1) {$ctx1.fill(self,"deleteClass:",{aClass:aClass},smalltalk.Smalltalk)})},
-messageSends: []}),
-smalltalk.Smalltalk);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "deleteGlobalJsVariable:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._globalJsVariables())._remove_ifAbsent_(aString,(function(){
-return smalltalk.withContext(function($ctx2) {
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"deleteGlobalJsVariable:",{aString:aString},smalltalk.Smalltalk)})},
-messageSends: ["remove:ifAbsent:", "globalJsVariables"]}),
-smalltalk.Smalltalk);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "deletePackage:",
-fn: function (packageName){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-delete smalltalk.packages[packageName];
-return self}, function($ctx1) {$ctx1.fill(self,"deletePackage:",{packageName:packageName},smalltalk.Smalltalk)})},
-messageSends: []}),
-smalltalk.Smalltalk);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "globalJsVariables",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self.globalJsVariables;
-return self}, function($ctx1) {$ctx1.fill(self,"globalJsVariables",{},smalltalk.Smalltalk)})},
-messageSends: []}),
-smalltalk.Smalltalk);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isSmalltalkObject:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return typeof anObject.klass !== 'undefined';
-return self}, function($ctx1) {$ctx1.fill(self,"isSmalltalkObject:",{anObject:anObject},smalltalk.Smalltalk)})},
-messageSends: []}),
-smalltalk.Smalltalk);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "packageAt:",
-fn: function (packageName){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self.packages[packageName];
-return self}, function($ctx1) {$ctx1.fill(self,"packageAt:",{packageName:packageName},smalltalk.Smalltalk)})},
-messageSends: []}),
-smalltalk.Smalltalk);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "packageAt:ifAbsent:",
-fn: function (packageName,aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self._packageAt_(packageName);
-$1=_st($2)._ifNil_(aBlock);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"packageAt:ifAbsent:",{packageName:packageName,aBlock:aBlock},smalltalk.Smalltalk)})},
-messageSends: ["ifNil:", "packageAt:"]}),
-smalltalk.Smalltalk);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "packages",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self.packages.all();
-return self}, function($ctx1) {$ctx1.fill(self,"packages",{},smalltalk.Smalltalk)})},
-messageSends: []}),
-smalltalk.Smalltalk);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "parse:",
-fn: function (aString){
-var self=this;
-var result;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-self._try_catch_((function(){
-return smalltalk.withContext(function($ctx2) {
-result=self._basicParse_(aString);
-return result;
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),(function(ex){
-return smalltalk.withContext(function($ctx2) {
-return _st(self._parseError_parsing_(ex,aString))._signal();
-}, function($ctx2) {$ctx2.fillBlock({ex:ex},$ctx1)})}));
-$2=result;
-_st($2)._source_(aString);
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"parse:",{aString:aString,result:result},smalltalk.Smalltalk)})},
-messageSends: ["try:catch:", "basicParse:", "signal", "parseError:parsing:", "source:", "yourself"]}),
-smalltalk.Smalltalk);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "parseError:parsing:",
-fn: function (anException,aString){
-var self=this;
-function $ParseError(){return smalltalk.ParseError||(typeof ParseError=="undefined"?nil:ParseError)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st($ParseError())._new())._messageText_(_st(_st(_st(_st("Parse error on line ".__comma(_st(anException)._basicAt_("line"))).__comma(" column ")).__comma(_st(anException)._basicAt_("column"))).__comma(" : Unexpected character ")).__comma(_st(anException)._basicAt_("found")));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"parseError:parsing:",{anException:anException,aString:aString},smalltalk.Smalltalk)})},
-messageSends: ["messageText:", ",", "basicAt:", "new"]}),
-smalltalk.Smalltalk);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "pseudoVariableNames",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=["self", "super", "nil", "true", "false", "thisContext"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"pseudoVariableNames",{},smalltalk.Smalltalk)})},
-messageSends: []}),
-smalltalk.Smalltalk);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "readJSObject:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self.readJSObject(anObject);
-return self}, function($ctx1) {$ctx1.fill(self,"readJSObject:",{anObject:anObject},smalltalk.Smalltalk)})},
-messageSends: []}),
-smalltalk.Smalltalk);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "removeClass:",
-fn: function (aClass){
-var self=this;
-function $ClassRemoved(){return smalltalk.ClassRemoved||(typeof ClassRemoved=="undefined"?nil:ClassRemoved)}
-function $SystemAnnouncer(){return smalltalk.SystemAnnouncer||(typeof SystemAnnouncer=="undefined"?nil:SystemAnnouncer)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3;
-$1=_st(aClass)._isMetaclass();
-if(smalltalk.assert($1)){
-self._error_(_st(_st(aClass)._asString()).__comma(" is a Metaclass and cannot be removed!"));
-};
-self._deleteClass_(aClass);
-$2=_st($ClassRemoved())._new();
-_st($2)._theClass_(aClass);
-$3=_st($2)._yourself();
-_st(_st($SystemAnnouncer())._current())._announce_($3);
-return self}, function($ctx1) {$ctx1.fill(self,"removeClass:",{aClass:aClass},smalltalk.Smalltalk)})},
-messageSends: ["ifTrue:", "error:", ",", "asString", "isMetaclass", "deleteClass:", "announce:", "theClass:", "new", "yourself", "current"]}),
-smalltalk.Smalltalk);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "removePackage:",
-fn: function (packageName){
-var self=this;
-var pkg;
-return smalltalk.withContext(function($ctx1) { 
-pkg=self._packageAt_ifAbsent_(packageName,(function(){
-return smalltalk.withContext(function($ctx2) {
-return self._error_("Missing package: ".__comma(packageName));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-_st(_st(pkg)._classes())._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return self._removeClass_(each);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-self._deletePackage_(packageName);
-return self}, function($ctx1) {$ctx1.fill(self,"removePackage:",{packageName:packageName,pkg:pkg},smalltalk.Smalltalk)})},
-messageSends: ["packageAt:ifAbsent:", "error:", ",", "do:", "removeClass:", "classes", "deletePackage:"]}),
-smalltalk.Smalltalk);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "renamePackage:to:",
-fn: function (packageName,newName){
-var self=this;
-var pkg;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-pkg=self._packageAt_ifAbsent_(packageName,(function(){
-return smalltalk.withContext(function($ctx2) {
-return self._error_("Missing package: ".__comma(packageName));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-$1=self._packageAt_(newName);
-if(($receiver = $1) == nil || $receiver == undefined){
-$1;
-} else {
-self._error_("Already exists a package called: ".__comma(newName));
-};
-_st(self._basicAt_("packages"))._at_put_(newName,pkg);
-_st(pkg)._name_(newName);
-self._deletePackage_(packageName);
-return self}, function($ctx1) {$ctx1.fill(self,"renamePackage:to:",{packageName:packageName,newName:newName,pkg:pkg},smalltalk.Smalltalk)})},
-messageSends: ["packageAt:ifAbsent:", "error:", ",", "ifNotNil:", "packageAt:", "at:put:", "basicAt:", "name:", "deletePackage:"]}),
-smalltalk.Smalltalk);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "reservedWords",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self.reservedWords;
-return self}, function($ctx1) {$ctx1.fill(self,"reservedWords",{},smalltalk.Smalltalk)})},
-messageSends: []}),
-smalltalk.Smalltalk);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "version",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "0.11.0";
-}, function($ctx1) {$ctx1.fill(self,"version",{},smalltalk.Smalltalk)})},
-messageSends: []}),
-smalltalk.Smalltalk);
-
-
-smalltalk.Smalltalk.klass.iVarNames = ['current'];
-smalltalk.addMethod(
-smalltalk.method({
-selector: "current",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return smalltalk;
-return self}, function($ctx1) {$ctx1.fill(self,"current",{},smalltalk.Smalltalk.klass)})},
-messageSends: []}),
-smalltalk.Smalltalk.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "do:displayingProgress:",
-fn: function (aBlock,aString){
-var self=this;
-function $ProgressHandler(){return smalltalk.ProgressHandler||(typeof ProgressHandler=="undefined"?nil:ProgressHandler)}
-return smalltalk.withContext(function($ctx1) { 
-_st(_st($ProgressHandler())._current())._do_on_displaying_(aBlock,self,aString);
-return self}, function($ctx1) {$ctx1.fill(self,"do:displayingProgress:",{aBlock:aBlock,aString:aString},smalltalk.SequenceableCollection)})},
-messageSends: ["do:on:displaying:", "current"]}),
-smalltalk.SequenceableCollection);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "asJavaScriptSelector",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._replace_with_("^([a-zA-Z0-9]*).*$","$1");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"asJavaScriptSelector",{},smalltalk.String)})},
-messageSends: ["replace:with:"]}),
-smalltalk.String);
-
-});

+ 0 - 1366
js/Kernel-Methods.deploy.js

@@ -1,1366 +0,0 @@
-define("amber/Kernel-Methods", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/Kernel-Objects"], function(smalltalk,nil,_st){
-smalltalk.addPackage('Kernel-Methods');
-smalltalk.packages["Kernel-Methods"].transport = {"type":"amd","amdNamespace":"amber"};
-
-smalltalk.addClass('BlockClosure', smalltalk.Object, [], 'Kernel-Methods');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "applyTo:arguments:",
-fn: function (anObject,aCollection){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self.apply(anObject, aCollection);
-return self}, function($ctx1) {$ctx1.fill(self,"applyTo:arguments:",{anObject:anObject,aCollection:aCollection},smalltalk.BlockClosure)})},
-messageSends: []}),
-smalltalk.BlockClosure);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "asCompiledMethod:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return smalltalk.method({selector:aString, fn:self});;
-return self}, function($ctx1) {$ctx1.fill(self,"asCompiledMethod:",{aString:aString},smalltalk.BlockClosure)})},
-messageSends: []}),
-smalltalk.BlockClosure);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "compiledSource",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self.toString();
-return self}, function($ctx1) {$ctx1.fill(self,"compiledSource",{},smalltalk.BlockClosure)})},
-messageSends: []}),
-smalltalk.BlockClosure);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "currySelf",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-
-		return function () {
-			var args = [ this ];
-			args.push.apply(args, arguments);
-			return self.apply(null, args);
-		}
-	;
-return self}, function($ctx1) {$ctx1.fill(self,"currySelf",{},smalltalk.BlockClosure)})},
-messageSends: []}),
-smalltalk.BlockClosure);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "ensure:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-try{return self._value()}finally{aBlock._value()};
-return self}, function($ctx1) {$ctx1.fill(self,"ensure:",{aBlock:aBlock},smalltalk.BlockClosure)})},
-messageSends: []}),
-smalltalk.BlockClosure);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "fork",
-fn: function (){
-var self=this;
-function $ForkPool(){return smalltalk.ForkPool||(typeof ForkPool=="undefined"?nil:ForkPool)}
-return smalltalk.withContext(function($ctx1) { 
-_st(_st($ForkPool())._default())._fork_(self);
-return self}, function($ctx1) {$ctx1.fill(self,"fork",{},smalltalk.BlockClosure)})},
-messageSends: ["fork:", "default"]}),
-smalltalk.BlockClosure);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "new",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return new self();
-return self}, function($ctx1) {$ctx1.fill(self,"new",{},smalltalk.BlockClosure)})},
-messageSends: []}),
-smalltalk.BlockClosure);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "newValue:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._newWithValues_([anObject]);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"newValue:",{anObject:anObject},smalltalk.BlockClosure)})},
-messageSends: ["newWithValues:"]}),
-smalltalk.BlockClosure);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "newValue:value:",
-fn: function (anObject,anObject2){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._newWithValues_([anObject,anObject2]);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"newValue:value:",{anObject:anObject,anObject2:anObject2},smalltalk.BlockClosure)})},
-messageSends: ["newWithValues:"]}),
-smalltalk.BlockClosure);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "newValue:value:value:",
-fn: function (anObject,anObject2,anObject3){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._newWithValues_([anObject,anObject2,anObject3]);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"newValue:value:value:",{anObject:anObject,anObject2:anObject2,anObject3:anObject3},smalltalk.BlockClosure)})},
-messageSends: ["newWithValues:"]}),
-smalltalk.BlockClosure);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "newWithValues:",
-fn: function (aCollection){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-
-	var constructor = function() {};
-	constructor.prototype = self.prototype;
-	var object = new constructor;
-	var result = self.apply(object, aCollection);
-	return typeof result === "object" ? result : object;;
-return self}, function($ctx1) {$ctx1.fill(self,"newWithValues:",{aCollection:aCollection},smalltalk.BlockClosure)})},
-messageSends: []}),
-smalltalk.BlockClosure);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "numArgs",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self.length;
-return self}, function($ctx1) {$ctx1.fill(self,"numArgs",{},smalltalk.BlockClosure)})},
-messageSends: []}),
-smalltalk.BlockClosure);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "on:do:",
-fn: function (anErrorClass,aBlock){
-var self=this;
-function $Smalltalk(){return smalltalk.Smalltalk||(typeof Smalltalk=="undefined"?nil:Smalltalk)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$1=self._try_catch_(self,(function(error){
-var smalltalkError;
-return smalltalk.withContext(function($ctx2) {
-smalltalkError=_st(_st($Smalltalk())._current())._asSmalltalkException_(error);
-smalltalkError;
-$2=_st(smalltalkError)._isKindOf_(anErrorClass);
-if(smalltalk.assert($2)){
-return _st(aBlock)._value_(smalltalkError);
-} else {
-return _st(smalltalkError)._resignal();
-};
-}, function($ctx2) {$ctx2.fillBlock({error:error,smalltalkError:smalltalkError},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"on:do:",{anErrorClass:anErrorClass,aBlock:aBlock},smalltalk.BlockClosure)})},
-messageSends: ["try:catch:", "asSmalltalkException:", "current", "ifTrue:ifFalse:", "value:", "resignal", "isKindOf:"]}),
-smalltalk.BlockClosure);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "receiver",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return nil;
-}, function($ctx1) {$ctx1.fill(self,"receiver",{},smalltalk.BlockClosure)})},
-messageSends: []}),
-smalltalk.BlockClosure);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "timeToRun",
-fn: function (){
-var self=this;
-function $Date(){return smalltalk.Date||(typeof Date=="undefined"?nil:Date)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st($Date())._millisecondsToRun_(self);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"timeToRun",{},smalltalk.BlockClosure)})},
-messageSends: ["millisecondsToRun:"]}),
-smalltalk.BlockClosure);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "value",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self();;
-return self}, function($ctx1) {$ctx1.fill(self,"value",{},smalltalk.BlockClosure)})},
-messageSends: []}),
-smalltalk.BlockClosure);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "value:",
-fn: function (anArg){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self(anArg);;
-return self}, function($ctx1) {$ctx1.fill(self,"value:",{anArg:anArg},smalltalk.BlockClosure)})},
-messageSends: []}),
-smalltalk.BlockClosure);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "value:value:",
-fn: function (firstArg,secondArg){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self(firstArg, secondArg);;
-return self}, function($ctx1) {$ctx1.fill(self,"value:value:",{firstArg:firstArg,secondArg:secondArg},smalltalk.BlockClosure)})},
-messageSends: []}),
-smalltalk.BlockClosure);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "value:value:value:",
-fn: function (firstArg,secondArg,thirdArg){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self(firstArg, secondArg, thirdArg);;
-return self}, function($ctx1) {$ctx1.fill(self,"value:value:value:",{firstArg:firstArg,secondArg:secondArg,thirdArg:thirdArg},smalltalk.BlockClosure)})},
-messageSends: []}),
-smalltalk.BlockClosure);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "valueWithInterval:",
-fn: function (aNumber){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-
-		var interval = setInterval(self, aNumber);
-		return smalltalk.Timeout._on_(interval);
-	;
-return self}, function($ctx1) {$ctx1.fill(self,"valueWithInterval:",{aNumber:aNumber},smalltalk.BlockClosure)})},
-messageSends: []}),
-smalltalk.BlockClosure);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "valueWithPossibleArguments:",
-fn: function (aCollection){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self.apply(null, aCollection);;
-return self}, function($ctx1) {$ctx1.fill(self,"valueWithPossibleArguments:",{aCollection:aCollection},smalltalk.BlockClosure)})},
-messageSends: []}),
-smalltalk.BlockClosure);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "valueWithTimeout:",
-fn: function (aNumber){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-
-		var timeout = setTimeout(self, aNumber);
-		return smalltalk.Timeout._on_(timeout);
-	;
-return self}, function($ctx1) {$ctx1.fill(self,"valueWithTimeout:",{aNumber:aNumber},smalltalk.BlockClosure)})},
-messageSends: []}),
-smalltalk.BlockClosure);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "whileFalse",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._whileFalse_((function(){
-return smalltalk.withContext(function($ctx2) {
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"whileFalse",{},smalltalk.BlockClosure)})},
-messageSends: ["whileFalse:"]}),
-smalltalk.BlockClosure);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "whileFalse:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-while(!smalltalk.assert(self._value())) {aBlock._value()};
-return self}, function($ctx1) {$ctx1.fill(self,"whileFalse:",{aBlock:aBlock},smalltalk.BlockClosure)})},
-messageSends: []}),
-smalltalk.BlockClosure);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "whileTrue",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._whileTrue_((function(){
-return smalltalk.withContext(function($ctx2) {
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"whileTrue",{},smalltalk.BlockClosure)})},
-messageSends: ["whileTrue:"]}),
-smalltalk.BlockClosure);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "whileTrue:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-while(smalltalk.assert(self._value())) {aBlock._value()};
-return self}, function($ctx1) {$ctx1.fill(self,"whileTrue:",{aBlock:aBlock},smalltalk.BlockClosure)})},
-messageSends: []}),
-smalltalk.BlockClosure);
-
-
-
-smalltalk.addClass('CompiledMethod', smalltalk.Object, [], 'Kernel-Methods');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "arguments",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self.args || [];
-return self}, function($ctx1) {$ctx1.fill(self,"arguments",{},smalltalk.CompiledMethod)})},
-messageSends: []}),
-smalltalk.CompiledMethod);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "category",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self._basicAt_("category");
-if(($receiver = $2) == nil || $receiver == undefined){
-$1=self._defaultCategory();
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"category",{},smalltalk.CompiledMethod)})},
-messageSends: ["ifNil:", "defaultCategory", "basicAt:"]}),
-smalltalk.CompiledMethod);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "category:",
-fn: function (aString){
-var self=this;
-var oldProtocol;
-function $MethodMoved(){return smalltalk.MethodMoved||(typeof MethodMoved=="undefined"?nil:MethodMoved)}
-function $SystemAnnouncer(){return smalltalk.SystemAnnouncer||(typeof SystemAnnouncer=="undefined"?nil:SystemAnnouncer)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3;
-oldProtocol=self._protocol();
-self._basicAt_put_("category",aString);
-$1=_st($MethodMoved())._new();
-_st($1)._method_(self);
-_st($1)._oldProtocol_(oldProtocol);
-$2=_st($1)._yourself();
-_st(_st($SystemAnnouncer())._current())._announce_($2);
-$3=self._methodClass();
-if(($receiver = $3) == nil || $receiver == undefined){
-$3;
-} else {
-_st(_st(self._methodClass())._organization())._addElement_(aString);
-_st(_st(_st(self._methodClass())._methods())._select_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(each)._protocol()).__eq(oldProtocol);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})})))._ifEmpty_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(self._methodClass())._organization())._removeElement_(oldProtocol);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-};
-return self}, function($ctx1) {$ctx1.fill(self,"category:",{aString:aString,oldProtocol:oldProtocol},smalltalk.CompiledMethod)})},
-messageSends: ["protocol", "basicAt:put:", "announce:", "method:", "new", "oldProtocol:", "yourself", "current", "ifNotNil:", "addElement:", "organization", "methodClass", "ifEmpty:", "removeElement:", "select:", "=", "methods"]}),
-smalltalk.CompiledMethod);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "defaultCategory",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "as yet unclassified";
-}, function($ctx1) {$ctx1.fill(self,"defaultCategory",{},smalltalk.CompiledMethod)})},
-messageSends: []}),
-smalltalk.CompiledMethod);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "fn",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._basicAt_("fn");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"fn",{},smalltalk.CompiledMethod)})},
-messageSends: ["basicAt:"]}),
-smalltalk.CompiledMethod);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "fn:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._basicAt_put_("fn",aBlock);
-return self}, function($ctx1) {$ctx1.fill(self,"fn:",{aBlock:aBlock},smalltalk.CompiledMethod)})},
-messageSends: ["basicAt:put:"]}),
-smalltalk.CompiledMethod);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isCompiledMethod",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"isCompiledMethod",{},smalltalk.CompiledMethod)})},
-messageSends: []}),
-smalltalk.CompiledMethod);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isOverridden",
-fn: function (){
-var self=this;
-var selector;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-var $early={};
-try {
-selector=self._selector();
-_st(self._methodClass())._allSubclassesDo_((function(each){
-return smalltalk.withContext(function($ctx2) {
-$1=_st(each)._includesSelector_(selector);
-if(smalltalk.assert($1)){
-throw $early=[true];
-};
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return false;
-}
-catch(e) {if(e===$early)return e[0]; throw e}
-}, function($ctx1) {$ctx1.fill(self,"isOverridden",{selector:selector},smalltalk.CompiledMethod)})},
-messageSends: ["selector", "allSubclassesDo:", "ifTrue:", "includesSelector:", "methodClass"]}),
-smalltalk.CompiledMethod);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isOverride",
-fn: function (){
-var self=this;
-var superclass;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-superclass=_st(self._methodClass())._superclass();
-$1=superclass;
-if(($receiver = $1) == nil || $receiver == undefined){
-return false;
-} else {
-$1;
-};
-$2=_st(_st(_st(self._methodClass())._superclass())._lookupSelector_(self._selector()))._notNil();
-return $2;
-}, function($ctx1) {$ctx1.fill(self,"isOverride",{superclass:superclass},smalltalk.CompiledMethod)})},
-messageSends: ["superclass", "methodClass", "ifNil:", "notNil", "lookupSelector:", "selector"]}),
-smalltalk.CompiledMethod);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "messageSends",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._basicAt_("messageSends");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"messageSends",{},smalltalk.CompiledMethod)})},
-messageSends: ["basicAt:"]}),
-smalltalk.CompiledMethod);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "methodClass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._basicAt_("methodClass");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"methodClass",{},smalltalk.CompiledMethod)})},
-messageSends: ["basicAt:"]}),
-smalltalk.CompiledMethod);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "protocol",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._category();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"protocol",{},smalltalk.CompiledMethod)})},
-messageSends: ["category"]}),
-smalltalk.CompiledMethod);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "protocol:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._category_(aString);
-return self}, function($ctx1) {$ctx1.fill(self,"protocol:",{aString:aString},smalltalk.CompiledMethod)})},
-messageSends: ["category:"]}),
-smalltalk.CompiledMethod);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "referencedClasses",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._basicAt_("referencedClasses");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"referencedClasses",{},smalltalk.CompiledMethod)})},
-messageSends: ["basicAt:"]}),
-smalltalk.CompiledMethod);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selector",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._basicAt_("selector");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"selector",{},smalltalk.CompiledMethod)})},
-messageSends: ["basicAt:"]}),
-smalltalk.CompiledMethod);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selector:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._basicAt_put_("selector",aString);
-return self}, function($ctx1) {$ctx1.fill(self,"selector:",{aString:aString},smalltalk.CompiledMethod)})},
-messageSends: ["basicAt:put:"]}),
-smalltalk.CompiledMethod);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "source",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self._basicAt_("source");
-if(($receiver = $2) == nil || $receiver == undefined){
-$1="";
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"source",{},smalltalk.CompiledMethod)})},
-messageSends: ["ifNil:", "basicAt:"]}),
-smalltalk.CompiledMethod);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "source:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._basicAt_put_("source",aString);
-return self}, function($ctx1) {$ctx1.fill(self,"source:",{aString:aString},smalltalk.CompiledMethod)})},
-messageSends: ["basicAt:put:"]}),
-smalltalk.CompiledMethod);
-
-
-
-smalltalk.addClass('ForkPool', smalltalk.Object, ['poolSize', 'maxPoolSize', 'queue', 'worker'], 'Kernel-Methods');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "addWorker",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self["@worker"])._valueWithTimeout_((0));
-self["@poolSize"]=_st(self["@poolSize"]).__plus((1));
-return self}, function($ctx1) {$ctx1.fill(self,"addWorker",{},smalltalk.ForkPool)})},
-messageSends: ["valueWithTimeout:", "+"]}),
-smalltalk.ForkPool);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "defaultMaxPoolSize",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._class())._defaultMaxPoolSize();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"defaultMaxPoolSize",{},smalltalk.ForkPool)})},
-messageSends: ["defaultMaxPoolSize", "class"]}),
-smalltalk.ForkPool);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "fork:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self["@poolSize"]).__lt(self._maxPoolSize());
-if(smalltalk.assert($1)){
-self._addWorker();
-};
-_st(self["@queue"])._nextPut_(aBlock);
-return self}, function($ctx1) {$ctx1.fill(self,"fork:",{aBlock:aBlock},smalltalk.ForkPool)})},
-messageSends: ["ifTrue:", "addWorker", "<", "maxPoolSize", "nextPut:"]}),
-smalltalk.ForkPool);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "initialize",
-fn: function (){
-var self=this;
-function $Queue(){return smalltalk.Queue||(typeof Queue=="undefined"?nil:Queue)}
-return smalltalk.withContext(function($ctx1) { 
-smalltalk.ForkPool.superclass.fn.prototype._initialize.apply(_st(self), []);
-self["@poolSize"]=(0);
-self["@queue"]=_st($Queue())._new();
-self["@worker"]=self._makeWorker();
-return self}, function($ctx1) {$ctx1.fill(self,"initialize",{},smalltalk.ForkPool)})},
-messageSends: ["initialize", "new", "makeWorker"]}),
-smalltalk.ForkPool);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "makeWorker",
-fn: function (){
-var self=this;
-var sentinel;
-function $Object(){return smalltalk.Object||(typeof Object=="undefined"?nil:Object)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-sentinel=_st($Object())._new();
-$1=(function(){
-var block;
-return smalltalk.withContext(function($ctx2) {
-self["@poolSize"]=_st(self["@poolSize"]).__minus((1));
-self["@poolSize"];
-block=_st(self["@queue"])._nextIfAbsent_((function(){
-return smalltalk.withContext(function($ctx3) {
-return sentinel;
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-block;
-$2=_st(block).__eq_eq(sentinel);
-if(! smalltalk.assert($2)){
-return _st((function(){
-return smalltalk.withContext(function($ctx3) {
-return _st(block)._value();
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}))._ensure_((function(){
-return smalltalk.withContext(function($ctx3) {
-return self._addWorker();
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-};
-}, function($ctx2) {$ctx2.fillBlock({block:block},$ctx1)})});
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"makeWorker",{sentinel:sentinel},smalltalk.ForkPool)})},
-messageSends: ["new", "-", "nextIfAbsent:", "ifFalse:", "ensure:", "addWorker", "value", "=="]}),
-smalltalk.ForkPool);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "maxPoolSize",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@maxPoolSize"];
-if(($receiver = $2) == nil || $receiver == undefined){
-$1=self._defaultMaxPoolSize();
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"maxPoolSize",{},smalltalk.ForkPool)})},
-messageSends: ["ifNil:", "defaultMaxPoolSize"]}),
-smalltalk.ForkPool);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "maxPoolSize:",
-fn: function (anInteger){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@maxPoolSize"]=anInteger;
-return self}, function($ctx1) {$ctx1.fill(self,"maxPoolSize:",{anInteger:anInteger},smalltalk.ForkPool)})},
-messageSends: []}),
-smalltalk.ForkPool);
-
-
-smalltalk.ForkPool.klass.iVarNames = ['default'];
-smalltalk.addMethod(
-smalltalk.method({
-selector: "default",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self["@default"];
-if(($receiver = $2) == nil || $receiver == undefined){
-self["@default"]=self._new();
-$1=self["@default"];
-} else {
-$1=$2;
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"default",{},smalltalk.ForkPool.klass)})},
-messageSends: ["ifNil:", "new"]}),
-smalltalk.ForkPool.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "defaultMaxPoolSize",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return (100);
-}, function($ctx1) {$ctx1.fill(self,"defaultMaxPoolSize",{},smalltalk.ForkPool.klass)})},
-messageSends: []}),
-smalltalk.ForkPool.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "resetDefault",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@default"]=nil;
-return self}, function($ctx1) {$ctx1.fill(self,"resetDefault",{},smalltalk.ForkPool.klass)})},
-messageSends: []}),
-smalltalk.ForkPool.klass);
-
-
-smalltalk.addClass('Message', smalltalk.Object, ['selector', 'arguments'], 'Kernel-Methods');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "arguments",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@arguments"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"arguments",{},smalltalk.Message)})},
-messageSends: []}),
-smalltalk.Message);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "arguments:",
-fn: function (anArray){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@arguments"]=anArray;
-return self}, function($ctx1) {$ctx1.fill(self,"arguments:",{anArray:anArray},smalltalk.Message)})},
-messageSends: []}),
-smalltalk.Message);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "printOn:",
-fn: function (aStream){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-smalltalk.Message.superclass.fn.prototype._printOn_.apply(_st(self), [aStream]);
-$1=aStream;
-_st($1)._nextPutAll_("(");
-_st($1)._nextPutAll_(self._selector());
-$2=_st($1)._nextPutAll_(")");
-return self}, function($ctx1) {$ctx1.fill(self,"printOn:",{aStream:aStream},smalltalk.Message)})},
-messageSends: ["printOn:", "nextPutAll:", "selector"]}),
-smalltalk.Message);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selector",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@selector"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"selector",{},smalltalk.Message)})},
-messageSends: []}),
-smalltalk.Message);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selector:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@selector"]=aString;
-return self}, function($ctx1) {$ctx1.fill(self,"selector:",{aString:aString},smalltalk.Message)})},
-messageSends: []}),
-smalltalk.Message);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "sendTo:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(anObject)._perform_withArguments_(self._selector(),self._arguments());
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"sendTo:",{anObject:anObject},smalltalk.Message)})},
-messageSends: ["perform:withArguments:", "selector", "arguments"]}),
-smalltalk.Message);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selector:arguments:",
-fn: function (aString,anArray){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=self._new();
-_st($2)._selector_(aString);
-_st($2)._arguments_(anArray);
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"selector:arguments:",{aString:aString,anArray:anArray},smalltalk.Message.klass)})},
-messageSends: ["selector:", "new", "arguments:", "yourself"]}),
-smalltalk.Message.klass);
-
-
-smalltalk.addClass('MessageSend', smalltalk.Object, ['receiver', 'message'], 'Kernel-Methods');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "arguments",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self["@message"])._arguments();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"arguments",{},smalltalk.MessageSend)})},
-messageSends: ["arguments"]}),
-smalltalk.MessageSend);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "arguments:",
-fn: function (aCollection){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self["@message"])._arguments_(aCollection);
-return self}, function($ctx1) {$ctx1.fill(self,"arguments:",{aCollection:aCollection},smalltalk.MessageSend)})},
-messageSends: ["arguments:"]}),
-smalltalk.MessageSend);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "initialize",
-fn: function (){
-var self=this;
-function $Message(){return smalltalk.Message||(typeof Message=="undefined"?nil:Message)}
-return smalltalk.withContext(function($ctx1) { 
-smalltalk.MessageSend.superclass.fn.prototype._initialize.apply(_st(self), []);
-self["@message"]=_st($Message())._new();
-return self}, function($ctx1) {$ctx1.fill(self,"initialize",{},smalltalk.MessageSend)})},
-messageSends: ["initialize", "new"]}),
-smalltalk.MessageSend);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "printOn:",
-fn: function (aStream){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-smalltalk.MessageSend.superclass.fn.prototype._printOn_.apply(_st(self), [aStream]);
-$1=aStream;
-_st($1)._nextPutAll_("(");
-_st($1)._nextPutAll_(self._receiver());
-_st($1)._nextPutAll_(" >> ");
-_st($1)._nextPutAll_(self._selector());
-$2=_st($1)._nextPutAll_(")");
-return self}, function($ctx1) {$ctx1.fill(self,"printOn:",{aStream:aStream},smalltalk.MessageSend)})},
-messageSends: ["printOn:", "nextPutAll:", "receiver", "selector"]}),
-smalltalk.MessageSend);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "receiver",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@receiver"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"receiver",{},smalltalk.MessageSend)})},
-messageSends: []}),
-smalltalk.MessageSend);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "receiver:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@receiver"]=anObject;
-return self}, function($ctx1) {$ctx1.fill(self,"receiver:",{anObject:anObject},smalltalk.MessageSend)})},
-messageSends: []}),
-smalltalk.MessageSend);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selector",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self["@message"])._selector();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"selector",{},smalltalk.MessageSend)})},
-messageSends: ["selector"]}),
-smalltalk.MessageSend);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selector:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self["@message"])._selector_(aString);
-return self}, function($ctx1) {$ctx1.fill(self,"selector:",{aString:aString},smalltalk.MessageSend)})},
-messageSends: ["selector:"]}),
-smalltalk.MessageSend);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "value",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self["@message"])._sendTo_(self._receiver());
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"value",{},smalltalk.MessageSend)})},
-messageSends: ["sendTo:", "receiver"]}),
-smalltalk.MessageSend);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "value:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=self["@message"];
-_st($2)._arguments_([anObject]);
-$3=_st($2)._sendTo_(self._receiver());
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"value:",{anObject:anObject},smalltalk.MessageSend)})},
-messageSends: ["arguments:", "sendTo:", "receiver"]}),
-smalltalk.MessageSend);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "value:value:",
-fn: function (firstArgument,secondArgument){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=self["@message"];
-_st($2)._arguments_([firstArgument,secondArgument]);
-$3=_st($2)._sendTo_(self._receiver());
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"value:value:",{firstArgument:firstArgument,secondArgument:secondArgument},smalltalk.MessageSend)})},
-messageSends: ["arguments:", "sendTo:", "receiver"]}),
-smalltalk.MessageSend);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "value:value:value:",
-fn: function (firstArgument,secondArgument,thirdArgument){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=self["@message"];
-_st($2)._arguments_([firstArgument,secondArgument,thirdArgument]);
-$3=_st($2)._sendTo_(self._receiver());
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"value:value:value:",{firstArgument:firstArgument,secondArgument:secondArgument,thirdArgument:thirdArgument},smalltalk.MessageSend)})},
-messageSends: ["arguments:", "sendTo:", "receiver"]}),
-smalltalk.MessageSend);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "valueWithPossibleArguments:",
-fn: function (aCollection){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-self._arguments_(aCollection);
-$1=self._value();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"valueWithPossibleArguments:",{aCollection:aCollection},smalltalk.MessageSend)})},
-messageSends: ["arguments:", "value"]}),
-smalltalk.MessageSend);
-
-
-
-smalltalk.addClass('MethodContext', smalltalk.Object, [], 'Kernel-Methods');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "asString",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self._isBlockContext();
-if(smalltalk.assert($2)){
-$1=_st("a block (in ".__comma(_st(self._methodContext())._asString())).__comma(")");
-} else {
-$1=_st(_st(_st(_st(self._receiver())._class())._name()).__comma(" >> ")).__comma(self._selector());
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"asString",{},smalltalk.MethodContext)})},
-messageSends: ["ifTrue:ifFalse:", ",", "asString", "methodContext", "selector", "name", "class", "receiver", "isBlockContext"]}),
-smalltalk.MethodContext);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "home",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self.homeContext;
-return self}, function($ctx1) {$ctx1.fill(self,"home",{},smalltalk.MethodContext)})},
-messageSends: []}),
-smalltalk.MethodContext);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isBlockContext",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._selector())._isNil();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"isBlockContext",{},smalltalk.MethodContext)})},
-messageSends: ["isNil", "selector"]}),
-smalltalk.MethodContext);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "locals",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self.locals || {};
-return self}, function($ctx1) {$ctx1.fill(self,"locals",{},smalltalk.MethodContext)})},
-messageSends: []}),
-smalltalk.MethodContext);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "method",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self._methodContext();
-if(($receiver = $2) == nil || $receiver == undefined){
-$1=$2;
-} else {
-$1=_st(_st(_st(self._methodContext())._receiver())._class())._lookupSelector_(_st(self._methodContext())._selector());
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"method",{},smalltalk.MethodContext)})},
-messageSends: ["ifNotNil:", "lookupSelector:", "selector", "methodContext", "class", "receiver"]}),
-smalltalk.MethodContext);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "methodContext",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$4,$3;
-$1=self._isBlockContext();
-if(! smalltalk.assert($1)){
-$2=self;
-return $2;
-};
-$4=self._home();
-if(($receiver = $4) == nil || $receiver == undefined){
-$3=$4;
-} else {
-var home;
-home=$receiver;
-$3=_st(home)._methodContext();
-};
-return $3;
-}, function($ctx1) {$ctx1.fill(self,"methodContext",{},smalltalk.MethodContext)})},
-messageSends: ["ifFalse:", "isBlockContext", "ifNotNil:", "methodContext", "home"]}),
-smalltalk.MethodContext);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "outerContext",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self.outerContext || self.homeContext;
-return self}, function($ctx1) {$ctx1.fill(self,"outerContext",{},smalltalk.MethodContext)})},
-messageSends: []}),
-smalltalk.MethodContext);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "pc",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self.pc;
-return self}, function($ctx1) {$ctx1.fill(self,"pc",{},smalltalk.MethodContext)})},
-messageSends: []}),
-smalltalk.MethodContext);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "printOn:",
-fn: function (aStream){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-smalltalk.MethodContext.superclass.fn.prototype._printOn_.apply(_st(self), [aStream]);
-$1=aStream;
-_st($1)._nextPutAll_("(");
-_st($1)._nextPutAll_(self._asString());
-$2=_st($1)._nextPutAll_(")");
-return self}, function($ctx1) {$ctx1.fill(self,"printOn:",{aStream:aStream},smalltalk.MethodContext)})},
-messageSends: ["printOn:", "nextPutAll:", "asString"]}),
-smalltalk.MethodContext);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "receiver",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self.receiver;
-return self}, function($ctx1) {$ctx1.fill(self,"receiver",{},smalltalk.MethodContext)})},
-messageSends: []}),
-smalltalk.MethodContext);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selector",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-
-		if(self.selector) {
-			return smalltalk.convertSelector(self.selector);
-		} else {
-			return nil;
-		}
-	;
-return self}, function($ctx1) {$ctx1.fill(self,"selector",{},smalltalk.MethodContext)})},
-messageSends: []}),
-smalltalk.MethodContext);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "temps",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-self._deprecatedAPI();
-$1=self._locals();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"temps",{},smalltalk.MethodContext)})},
-messageSends: ["deprecatedAPI", "locals"]}),
-smalltalk.MethodContext);
-
-
-
-smalltalk.addClass('NativeFunction', smalltalk.Object, [], 'Kernel-Methods');
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "constructor:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-
-		var native=eval(aString);
-		return new native();
-	;
-return self}, function($ctx1) {$ctx1.fill(self,"constructor:",{aString:aString},smalltalk.NativeFunction.klass)})},
-messageSends: []}),
-smalltalk.NativeFunction.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "constructor:value:",
-fn: function (aString,anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-
-		var native=eval(aString);
-		return new native(anObject);
-	;
-return self}, function($ctx1) {$ctx1.fill(self,"constructor:value:",{aString:aString,anObject:anObject},smalltalk.NativeFunction.klass)})},
-messageSends: []}),
-smalltalk.NativeFunction.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "constructor:value:value:",
-fn: function (aString,anObject,anObject2){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-
-		var native=eval(aString);
-		return new native(anObject,anObject2);
-	;
-return self}, function($ctx1) {$ctx1.fill(self,"constructor:value:value:",{aString:aString,anObject:anObject,anObject2:anObject2},smalltalk.NativeFunction.klass)})},
-messageSends: []}),
-smalltalk.NativeFunction.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "constructor:value:value:value:",
-fn: function (aString,anObject,anObject2,anObject3){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-
-		var native=eval(aString);
-		return new native(anObject,anObject2, anObject3);
-	;
-return self}, function($ctx1) {$ctx1.fill(self,"constructor:value:value:value:",{aString:aString,anObject:anObject,anObject2:anObject2,anObject3:anObject3},smalltalk.NativeFunction.klass)})},
-messageSends: []}),
-smalltalk.NativeFunction.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "exists:",
-fn: function (aString){
-var self=this;
-function $PlatformInterface(){return smalltalk.PlatformInterface||(typeof PlatformInterface=="undefined"?nil:PlatformInterface)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st($PlatformInterface())._existsGlobal_(aString);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"exists:",{aString:aString},smalltalk.NativeFunction.klass)})},
-messageSends: ["existsGlobal:"]}),
-smalltalk.NativeFunction.klass);
-
-
-smalltalk.addClass('Timeout', smalltalk.Object, ['rawTimeout'], 'Kernel-Methods');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "clearInterval",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-
-		var interval = self["@rawTimeout"];
-		clearInterval(interval);
-	;
-return self}, function($ctx1) {$ctx1.fill(self,"clearInterval",{},smalltalk.Timeout)})},
-messageSends: []}),
-smalltalk.Timeout);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "clearTimeout",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-
-		var timeout = self["@rawTimeout"];
-		clearTimeout(timeout);
-	;
-return self}, function($ctx1) {$ctx1.fill(self,"clearTimeout",{},smalltalk.Timeout)})},
-messageSends: []}),
-smalltalk.Timeout);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "rawTimeout:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@rawTimeout"]=anObject;
-return self}, function($ctx1) {$ctx1.fill(self,"rawTimeout:",{anObject:anObject},smalltalk.Timeout)})},
-messageSends: []}),
-smalltalk.Timeout);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "on:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=self._new();
-_st($2)._rawTimeout_(anObject);
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"on:",{anObject:anObject},smalltalk.Timeout.klass)})},
-messageSends: ["rawTimeout:", "new", "yourself"]}),
-smalltalk.Timeout.klass);
-
-});

+ 0 - 2673
js/Kernel-Objects.deploy.js

@@ -1,2673 +0,0 @@
-define("amber/Kernel-Objects", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st"], function(smalltalk,nil,_st){
-smalltalk.addPackage('Kernel-Objects');
-smalltalk.packages["Kernel-Objects"].transport = {"type":"amd","amdNamespace":"amber"};
-
-smalltalk.addClass('Object', smalltalk.nil, [], 'Kernel-Objects');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "->",
-fn: function (anObject){
-var self=this;
-function $Association(){return smalltalk.Association||(typeof Association=="undefined"?nil:Association)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st($Association())._key_value_(self,anObject);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"->",{anObject:anObject},smalltalk.Object)})},
-messageSends: ["key:value:"]}),
-smalltalk.Object);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "=",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self.__eq_eq(anObject);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"=",{anObject:anObject},smalltalk.Object)})},
-messageSends: ["=="]}),
-smalltalk.Object);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "==",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._identityHash()).__eq(_st(anObject)._identityHash());
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"==",{anObject:anObject},smalltalk.Object)})},
-messageSends: ["=", "identityHash"]}),
-smalltalk.Object);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "asJSON",
-fn: function (){
-var self=this;
-var variables;
-function $HashedCollection(){return smalltalk.HashedCollection||(typeof HashedCollection=="undefined"?nil:HashedCollection)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-variables=_st($HashedCollection())._new();
-_st(_st(self._class())._allInstanceVariableNames())._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(variables)._at_put_(each,_st(self._instVarAt_(each))._asJSON());
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-$1=variables;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"asJSON",{variables:variables},smalltalk.Object)})},
-messageSends: ["new", "do:", "at:put:", "asJSON", "instVarAt:", "allInstanceVariableNames", "class"]}),
-smalltalk.Object);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "asJSONString",
-fn: function (){
-var self=this;
-function $JSON(){return smalltalk.JSON||(typeof JSON=="undefined"?nil:JSON)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st($JSON())._stringify_(self._asJSON());
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"asJSONString",{},smalltalk.Object)})},
-messageSends: ["stringify:", "asJSON"]}),
-smalltalk.Object);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "asJavascript",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._asString();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"asJavascript",{},smalltalk.Object)})},
-messageSends: ["asString"]}),
-smalltalk.Object);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "asString",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._printString();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"asString",{},smalltalk.Object)})},
-messageSends: ["printString"]}),
-smalltalk.Object);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "basicAt:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self[aString];
-return self}, function($ctx1) {$ctx1.fill(self,"basicAt:",{aString:aString},smalltalk.Object)})},
-messageSends: []}),
-smalltalk.Object);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "basicAt:put:",
-fn: function (aString,anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self[aString] = anObject;
-return self}, function($ctx1) {$ctx1.fill(self,"basicAt:put:",{aString:aString,anObject:anObject},smalltalk.Object)})},
-messageSends: []}),
-smalltalk.Object);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "basicDelete:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-delete self[aString]; return aString;
-return self}, function($ctx1) {$ctx1.fill(self,"basicDelete:",{aString:aString},smalltalk.Object)})},
-messageSends: []}),
-smalltalk.Object);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "basicPerform:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._basicPerform_withArguments_(aString,[]);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"basicPerform:",{aString:aString},smalltalk.Object)})},
-messageSends: ["basicPerform:withArguments:"]}),
-smalltalk.Object);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "basicPerform:withArguments:",
-fn: function (aString,aCollection){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self[aString].apply(self, aCollection);;
-return self}, function($ctx1) {$ctx1.fill(self,"basicPerform:withArguments:",{aString:aString,aCollection:aCollection},smalltalk.Object)})},
-messageSends: []}),
-smalltalk.Object);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "class",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self.klass;
-return self}, function($ctx1) {$ctx1.fill(self,"class",{},smalltalk.Object)})},
-messageSends: []}),
-smalltalk.Object);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "copy",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._shallowCopy())._postCopy();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"copy",{},smalltalk.Object)})},
-messageSends: ["postCopy", "shallowCopy"]}),
-smalltalk.Object);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "deepCopy",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-
-		var copy = self.klass._new();
-		for(var i in self) {
-		if(/^@.+/.test(i)) {
-			copy[i] = self[i]._deepCopy();
-		}
-		}
-		return copy;
-	;
-return self}, function($ctx1) {$ctx1.fill(self,"deepCopy",{},smalltalk.Object)})},
-messageSends: []}),
-smalltalk.Object);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "deprecatedAPI",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(console)._warn_(_st(_st(_st(_st(smalltalk.getThisContext()._home())._asString()).__comma(" is deprecated! (in ")).__comma(_st(_st(smalltalk.getThisContext()._home())._home())._asString())).__comma(")"));
-return self}, function($ctx1) {$ctx1.fill(self,"deprecatedAPI",{},smalltalk.Object)})},
-messageSends: ["warn:", ",", "asString", "home"]}),
-smalltalk.Object);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "doesNotUnderstand:",
-fn: function (aMessage){
-var self=this;
-function $MessageNotUnderstood(){return smalltalk.MessageNotUnderstood||(typeof MessageNotUnderstood=="undefined"?nil:MessageNotUnderstood)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st($MessageNotUnderstood())._new();
-_st($1)._receiver_(self);
-_st($1)._message_(aMessage);
-$2=_st($1)._signal();
-return self}, function($ctx1) {$ctx1.fill(self,"doesNotUnderstand:",{aMessage:aMessage},smalltalk.Object)})},
-messageSends: ["receiver:", "new", "message:", "signal"]}),
-smalltalk.Object);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "error:",
-fn: function (aString){
-var self=this;
-function $Error(){return smalltalk.Error||(typeof Error=="undefined"?nil:Error)}
-return smalltalk.withContext(function($ctx1) { 
-_st($Error())._signal_(aString);
-return self}, function($ctx1) {$ctx1.fill(self,"error:",{aString:aString},smalltalk.Object)})},
-messageSends: ["signal:"]}),
-smalltalk.Object);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "halt",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._error_("Halt encountered");
-return self}, function($ctx1) {$ctx1.fill(self,"halt",{},smalltalk.Object)})},
-messageSends: ["error:"]}),
-smalltalk.Object);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "identityHash",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-
-	var hash=self.identityHash;
-	if (hash) return hash;
-	hash=smalltalk.nextId();
-	Object.defineProperty(self, 'identityHash', {value:hash});
-	return hash;
-	;
-return self}, function($ctx1) {$ctx1.fill(self,"identityHash",{},smalltalk.Object)})},
-messageSends: []}),
-smalltalk.Object);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "ifNil:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"ifNil:",{aBlock:aBlock},smalltalk.Object)})},
-messageSends: []}),
-smalltalk.Object);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "ifNil:ifNotNil:",
-fn: function (aBlock,anotherBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(anotherBlock)._value_(self);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"ifNil:ifNotNil:",{aBlock:aBlock,anotherBlock:anotherBlock},smalltalk.Object)})},
-messageSends: ["value:"]}),
-smalltalk.Object);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "ifNotNil:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(aBlock)._value_(self);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"ifNotNil:",{aBlock:aBlock},smalltalk.Object)})},
-messageSends: ["value:"]}),
-smalltalk.Object);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "ifNotNil:ifNil:",
-fn: function (aBlock,anotherBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(aBlock)._value_(self);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"ifNotNil:ifNil:",{aBlock:aBlock,anotherBlock:anotherBlock},smalltalk.Object)})},
-messageSends: ["value:"]}),
-smalltalk.Object);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "initialize",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self}, function($ctx1) {$ctx1.fill(self,"initialize",{},smalltalk.Object)})},
-messageSends: []}),
-smalltalk.Object);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "inspect",
-fn: function (){
-var self=this;
-function $InspectorHandler(){return smalltalk.InspectorHandler||(typeof InspectorHandler=="undefined"?nil:InspectorHandler)}
-return smalltalk.withContext(function($ctx1) { 
-_st($InspectorHandler())._inspect_(self);
-return self}, function($ctx1) {$ctx1.fill(self,"inspect",{},smalltalk.Object)})},
-messageSends: ["inspect:"]}),
-smalltalk.Object);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "inspectOn:",
-fn: function (anInspector){
-var self=this;
-var variables;
-function $Dictionary(){return smalltalk.Dictionary||(typeof Dictionary=="undefined"?nil:Dictionary)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-variables=_st($Dictionary())._new();
-_st(variables)._at_put_("#self",self);
-_st(_st(self._class())._allInstanceVariableNames())._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(variables)._at_put_(each,self._instVarAt_(each));
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-$1=anInspector;
-_st($1)._setLabel_(self._printString());
-$2=_st($1)._setVariables_(variables);
-return self}, function($ctx1) {$ctx1.fill(self,"inspectOn:",{anInspector:anInspector,variables:variables},smalltalk.Object)})},
-messageSends: ["new", "at:put:", "do:", "instVarAt:", "allInstanceVariableNames", "class", "setLabel:", "printString", "setVariables:"]}),
-smalltalk.Object);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "instVarAt:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
- return self['@'+aString] ;
-return self}, function($ctx1) {$ctx1.fill(self,"instVarAt:",{aString:aString},smalltalk.Object)})},
-messageSends: []}),
-smalltalk.Object);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "instVarAt:put:",
-fn: function (aString,anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
- self['@' + aString] = anObject ;
-return self}, function($ctx1) {$ctx1.fill(self,"instVarAt:put:",{aString:aString,anObject:anObject},smalltalk.Object)})},
-messageSends: []}),
-smalltalk.Object);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isBehavior",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return false;
-}, function($ctx1) {$ctx1.fill(self,"isBehavior",{},smalltalk.Object)})},
-messageSends: []}),
-smalltalk.Object);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isBoolean",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return false;
-}, function($ctx1) {$ctx1.fill(self,"isBoolean",{},smalltalk.Object)})},
-messageSends: []}),
-smalltalk.Object);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isClass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return false;
-}, function($ctx1) {$ctx1.fill(self,"isClass",{},smalltalk.Object)})},
-messageSends: []}),
-smalltalk.Object);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isCompiledMethod",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return false;
-}, function($ctx1) {$ctx1.fill(self,"isCompiledMethod",{},smalltalk.Object)})},
-messageSends: []}),
-smalltalk.Object);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isImmutable",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return false;
-}, function($ctx1) {$ctx1.fill(self,"isImmutable",{},smalltalk.Object)})},
-messageSends: []}),
-smalltalk.Object);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isKindOf:",
-fn: function (aClass){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self._isMemberOf_(aClass);
-if(smalltalk.assert($2)){
-$1=true;
-} else {
-$1=_st(self._class())._inheritsFrom_(aClass);
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"isKindOf:",{aClass:aClass},smalltalk.Object)})},
-messageSends: ["ifTrue:ifFalse:", "inheritsFrom:", "class", "isMemberOf:"]}),
-smalltalk.Object);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isMemberOf:",
-fn: function (aClass){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._class()).__eq(aClass);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"isMemberOf:",{aClass:aClass},smalltalk.Object)})},
-messageSends: ["=", "class"]}),
-smalltalk.Object);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isMetaclass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return false;
-}, function($ctx1) {$ctx1.fill(self,"isMetaclass",{},smalltalk.Object)})},
-messageSends: []}),
-smalltalk.Object);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isNil",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return false;
-}, function($ctx1) {$ctx1.fill(self,"isNil",{},smalltalk.Object)})},
-messageSends: []}),
-smalltalk.Object);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isNumber",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return false;
-}, function($ctx1) {$ctx1.fill(self,"isNumber",{},smalltalk.Object)})},
-messageSends: []}),
-smalltalk.Object);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isPackage",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return false;
-}, function($ctx1) {$ctx1.fill(self,"isPackage",{},smalltalk.Object)})},
-messageSends: []}),
-smalltalk.Object);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isParseFailure",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return false;
-}, function($ctx1) {$ctx1.fill(self,"isParseFailure",{},smalltalk.Object)})},
-messageSends: []}),
-smalltalk.Object);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isString",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return false;
-}, function($ctx1) {$ctx1.fill(self,"isString",{},smalltalk.Object)})},
-messageSends: []}),
-smalltalk.Object);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isSymbol",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return false;
-}, function($ctx1) {$ctx1.fill(self,"isSymbol",{},smalltalk.Object)})},
-messageSends: []}),
-smalltalk.Object);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "notNil",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._isNil())._not();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"notNil",{},smalltalk.Object)})},
-messageSends: ["not", "isNil"]}),
-smalltalk.Object);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "perform:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._perform_withArguments_(aString,[]);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"perform:",{aString:aString},smalltalk.Object)})},
-messageSends: ["perform:withArguments:"]}),
-smalltalk.Object);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "perform:withArguments:",
-fn: function (aString,aCollection){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return smalltalk.send(self, aString._asSelector(), aCollection);
-return self}, function($ctx1) {$ctx1.fill(self,"perform:withArguments:",{aString:aString,aCollection:aCollection},smalltalk.Object)})},
-messageSends: []}),
-smalltalk.Object);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "postCopy",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self}, function($ctx1) {$ctx1.fill(self,"postCopy",{},smalltalk.Object)})},
-messageSends: []}),
-smalltalk.Object);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "printOn:",
-fn: function (aStream){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$3,$2;
-$1=aStream;
-$3=_st(_st(_st(self._class())._name())._first())._isVowel();
-if(smalltalk.assert($3)){
-$2="an ";
-} else {
-$2="a ";
-};
-_st($1)._nextPutAll_($2);
-_st(aStream)._nextPutAll_(_st(self._class())._name());
-return self}, function($ctx1) {$ctx1.fill(self,"printOn:",{aStream:aStream},smalltalk.Object)})},
-messageSends: ["nextPutAll:", "ifTrue:ifFalse:", "isVowel", "first", "name", "class"]}),
-smalltalk.Object);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "printString",
-fn: function (){
-var self=this;
-function $String(){return smalltalk.String||(typeof String=="undefined"?nil:String)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st($String())._streamContents_((function(stream){
-return smalltalk.withContext(function($ctx2) {
-return self._printOn_(stream);
-}, function($ctx2) {$ctx2.fillBlock({stream:stream},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"printString",{},smalltalk.Object)})},
-messageSends: ["streamContents:", "printOn:"]}),
-smalltalk.Object);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "putOn:",
-fn: function (aStream){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(aStream)._nextPut_(self);
-return self}, function($ctx1) {$ctx1.fill(self,"putOn:",{aStream:aStream},smalltalk.Object)})},
-messageSends: ["nextPut:"]}),
-smalltalk.Object);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "respondsTo:",
-fn: function (aSelector){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._class())._canUnderstand_(aSelector);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"respondsTo:",{aSelector:aSelector},smalltalk.Object)})},
-messageSends: ["canUnderstand:", "class"]}),
-smalltalk.Object);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "shallowCopy",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-
-		var copy = self.klass._new();
-		for(var i in self) {
-		if(/^@.+/.test(i)) {
-			copy[i] = self[i];
-		}
-		}
-		return copy;
-	;
-return self}, function($ctx1) {$ctx1.fill(self,"shallowCopy",{},smalltalk.Object)})},
-messageSends: []}),
-smalltalk.Object);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "shouldNotImplement",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._error_("This method should not be implemented in ".__comma(_st(self._class())._name()));
-return self}, function($ctx1) {$ctx1.fill(self,"shouldNotImplement",{},smalltalk.Object)})},
-messageSends: ["error:", ",", "name", "class"]}),
-smalltalk.Object);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "size",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._error_("Object not indexable");
-return self}, function($ctx1) {$ctx1.fill(self,"size",{},smalltalk.Object)})},
-messageSends: ["error:"]}),
-smalltalk.Object);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "subclassResponsibility",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._error_("This method is a responsibility of a subclass");
-return self}, function($ctx1) {$ctx1.fill(self,"subclassResponsibility",{},smalltalk.Object)})},
-messageSends: ["error:"]}),
-smalltalk.Object);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "test",
-fn: function (){
-var self=this;
-var a;
-return smalltalk.withContext(function($ctx1) { 
-a=(1);
-self._halt();
-return self}, function($ctx1) {$ctx1.fill(self,"test",{a:a},smalltalk.Object)})},
-messageSends: ["halt"]}),
-smalltalk.Object);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "throw:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
- throw anObject ;
-return self}, function($ctx1) {$ctx1.fill(self,"throw:",{anObject:anObject},smalltalk.Object)})},
-messageSends: []}),
-smalltalk.Object);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "try:catch:",
-fn: function (aBlock,anotherBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-try{return aBlock._value()} catch(e) {return anotherBlock._value_(e)};
-return self}, function($ctx1) {$ctx1.fill(self,"try:catch:",{aBlock:aBlock,anotherBlock:anotherBlock},smalltalk.Object)})},
-messageSends: []}),
-smalltalk.Object);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "value",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self.valueOf();
-return self}, function($ctx1) {$ctx1.fill(self,"value",{},smalltalk.Object)})},
-messageSends: []}),
-smalltalk.Object);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "yourself",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"yourself",{},smalltalk.Object)})},
-messageSends: []}),
-smalltalk.Object);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "~=",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self.__eq(anObject)).__eq(false);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"~=",{anObject:anObject},smalltalk.Object)})},
-messageSends: ["="]}),
-smalltalk.Object);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "~~",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self.__eq_eq(anObject)).__eq(false);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"~~",{anObject:anObject},smalltalk.Object)})},
-messageSends: ["=", "=="]}),
-smalltalk.Object);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "heliosClass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "class";
-}, function($ctx1) {$ctx1.fill(self,"heliosClass",{},smalltalk.Object.klass)})},
-messageSends: []}),
-smalltalk.Object.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "initialize",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self}, function($ctx1) {$ctx1.fill(self,"initialize",{},smalltalk.Object.klass)})},
-messageSends: []}),
-smalltalk.Object.klass);
-
-
-smalltalk.addClass('Boolean', smalltalk.Object, [], 'Kernel-Objects');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "&",
-fn: function (aBoolean){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-
-		if(self == true) {
-		return aBoolean;
-		} else {
-		return false;
-		}
-	;
-return self}, function($ctx1) {$ctx1.fill(self,"&",{aBoolean:aBoolean},smalltalk.Boolean)})},
-messageSends: []}),
-smalltalk.Boolean);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "=",
-fn: function (aBoolean){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-
-		if(! aBoolean._isBoolean || ! aBoolean._isBoolean()) {
-			return false;
-		}
-		return Boolean(self == true) == aBoolean
-	;
-return self}, function($ctx1) {$ctx1.fill(self,"=",{aBoolean:aBoolean},smalltalk.Boolean)})},
-messageSends: []}),
-smalltalk.Boolean);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "==",
-fn: function (aBoolean){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self.__eq(aBoolean);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"==",{aBoolean:aBoolean},smalltalk.Boolean)})},
-messageSends: ["="]}),
-smalltalk.Boolean);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "and:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self.__eq(true);
-$1=_st($2)._ifTrue_ifFalse_(aBlock,(function(){
-return smalltalk.withContext(function($ctx2) {
-return false;
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"and:",{aBlock:aBlock},smalltalk.Boolean)})},
-messageSends: ["ifTrue:ifFalse:", "="]}),
-smalltalk.Boolean);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "asBit",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self;
-if(smalltalk.assert($2)){
-$1=(1);
-} else {
-$1=(0);
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"asBit",{},smalltalk.Boolean)})},
-messageSends: ["ifTrue:ifFalse:"]}),
-smalltalk.Boolean);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "asJSON",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"asJSON",{},smalltalk.Boolean)})},
-messageSends: []}),
-smalltalk.Boolean);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "asString",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
- return self.toString() ;
-return self}, function($ctx1) {$ctx1.fill(self,"asString",{},smalltalk.Boolean)})},
-messageSends: []}),
-smalltalk.Boolean);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "deepCopy",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"deepCopy",{},smalltalk.Boolean)})},
-messageSends: []}),
-smalltalk.Boolean);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "ifFalse:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self;
-$1=_st($2)._ifTrue_ifFalse_((function(){
-return smalltalk.withContext(function($ctx2) {
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),aBlock);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"ifFalse:",{aBlock:aBlock},smalltalk.Boolean)})},
-messageSends: ["ifTrue:ifFalse:"]}),
-smalltalk.Boolean);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "ifFalse:ifTrue:",
-fn: function (aBlock,anotherBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self;
-$1=_st($2)._ifTrue_ifFalse_(anotherBlock,aBlock);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"ifFalse:ifTrue:",{aBlock:aBlock,anotherBlock:anotherBlock},smalltalk.Boolean)})},
-messageSends: ["ifTrue:ifFalse:"]}),
-smalltalk.Boolean);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "ifTrue:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self;
-$1=_st($2)._ifTrue_ifFalse_(aBlock,(function(){
-return smalltalk.withContext(function($ctx2) {
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"ifTrue:",{aBlock:aBlock},smalltalk.Boolean)})},
-messageSends: ["ifTrue:ifFalse:"]}),
-smalltalk.Boolean);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "ifTrue:ifFalse:",
-fn: function (aBlock,anotherBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-
-		if(self == true) {
-		return aBlock._value();
-		} else {
-		return anotherBlock._value();
-		}
-	;
-return self}, function($ctx1) {$ctx1.fill(self,"ifTrue:ifFalse:",{aBlock:aBlock,anotherBlock:anotherBlock},smalltalk.Boolean)})},
-messageSends: []}),
-smalltalk.Boolean);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isBoolean",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"isBoolean",{},smalltalk.Boolean)})},
-messageSends: []}),
-smalltalk.Boolean);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isImmutable",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"isImmutable",{},smalltalk.Boolean)})},
-messageSends: []}),
-smalltalk.Boolean);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "not",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self.__eq(false);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"not",{},smalltalk.Boolean)})},
-messageSends: ["="]}),
-smalltalk.Boolean);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "or:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self.__eq(true);
-$1=_st($2)._ifTrue_ifFalse_((function(){
-return smalltalk.withContext(function($ctx2) {
-return true;
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),aBlock);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"or:",{aBlock:aBlock},smalltalk.Boolean)})},
-messageSends: ["ifTrue:ifFalse:", "="]}),
-smalltalk.Boolean);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "printOn:",
-fn: function (aStream){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(aStream)._nextPutAll_(self._asString());
-return self}, function($ctx1) {$ctx1.fill(self,"printOn:",{aStream:aStream},smalltalk.Boolean)})},
-messageSends: ["nextPutAll:", "asString"]}),
-smalltalk.Boolean);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "shallowCopy",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"shallowCopy",{},smalltalk.Boolean)})},
-messageSends: []}),
-smalltalk.Boolean);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "|",
-fn: function (aBoolean){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-
-		if(self == true) {
-		return true;
-		} else {
-		return aBoolean;
-		}
-	;
-return self}, function($ctx1) {$ctx1.fill(self,"|",{aBoolean:aBoolean},smalltalk.Boolean)})},
-messageSends: []}),
-smalltalk.Boolean);
-
-
-
-smalltalk.addClass('Date', smalltalk.Object, [], 'Kernel-Objects');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "+",
-fn: function (aDate){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self + aDate;
-return self}, function($ctx1) {$ctx1.fill(self,"+",{aDate:aDate},smalltalk.Date)})},
-messageSends: []}),
-smalltalk.Date);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "-",
-fn: function (aDate){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self - aDate;
-return self}, function($ctx1) {$ctx1.fill(self,"-",{aDate:aDate},smalltalk.Date)})},
-messageSends: []}),
-smalltalk.Date);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "<",
-fn: function (aDate){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self < aDate;
-return self}, function($ctx1) {$ctx1.fill(self,"<",{aDate:aDate},smalltalk.Date)})},
-messageSends: []}),
-smalltalk.Date);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "<=",
-fn: function (aDate){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self <= aDate;
-return self}, function($ctx1) {$ctx1.fill(self,"<=",{aDate:aDate},smalltalk.Date)})},
-messageSends: []}),
-smalltalk.Date);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: ">",
-fn: function (aDate){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self > aDate;
-return self}, function($ctx1) {$ctx1.fill(self,">",{aDate:aDate},smalltalk.Date)})},
-messageSends: []}),
-smalltalk.Date);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: ">=",
-fn: function (aDate){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self >= aDate;
-return self}, function($ctx1) {$ctx1.fill(self,">=",{aDate:aDate},smalltalk.Date)})},
-messageSends: []}),
-smalltalk.Date);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "asDateString",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self.toDateString();
-return self}, function($ctx1) {$ctx1.fill(self,"asDateString",{},smalltalk.Date)})},
-messageSends: []}),
-smalltalk.Date);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "asLocaleString",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self.toLocaleString();
-return self}, function($ctx1) {$ctx1.fill(self,"asLocaleString",{},smalltalk.Date)})},
-messageSends: []}),
-smalltalk.Date);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "asMilliseconds",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._time();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"asMilliseconds",{},smalltalk.Date)})},
-messageSends: ["time"]}),
-smalltalk.Date);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "asNumber",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._asMilliseconds();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"asNumber",{},smalltalk.Date)})},
-messageSends: ["asMilliseconds"]}),
-smalltalk.Date);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "asString",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self.toString();
-return self}, function($ctx1) {$ctx1.fill(self,"asString",{},smalltalk.Date)})},
-messageSends: []}),
-smalltalk.Date);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "asTimeString",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self.toTimeString();
-return self}, function($ctx1) {$ctx1.fill(self,"asTimeString",{},smalltalk.Date)})},
-messageSends: []}),
-smalltalk.Date);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "day",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._dayOfWeek();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"day",{},smalltalk.Date)})},
-messageSends: ["dayOfWeek"]}),
-smalltalk.Date);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "day:",
-fn: function (aNumber){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._dayOfWeek_(aNumber);
-return self}, function($ctx1) {$ctx1.fill(self,"day:",{aNumber:aNumber},smalltalk.Date)})},
-messageSends: ["dayOfWeek:"]}),
-smalltalk.Date);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "dayOfMonth",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self.getDate();
-return self}, function($ctx1) {$ctx1.fill(self,"dayOfMonth",{},smalltalk.Date)})},
-messageSends: []}),
-smalltalk.Date);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "dayOfMonth:",
-fn: function (aNumber){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self.setDate(aNumber);
-return self}, function($ctx1) {$ctx1.fill(self,"dayOfMonth:",{aNumber:aNumber},smalltalk.Date)})},
-messageSends: []}),
-smalltalk.Date);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "dayOfWeek",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self.getDay() + 1;
-return self}, function($ctx1) {$ctx1.fill(self,"dayOfWeek",{},smalltalk.Date)})},
-messageSends: []}),
-smalltalk.Date);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "dayOfWeek:",
-fn: function (aNumber){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self.setDay(aNumber - 1);
-return self}, function($ctx1) {$ctx1.fill(self,"dayOfWeek:",{aNumber:aNumber},smalltalk.Date)})},
-messageSends: []}),
-smalltalk.Date);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "hours",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self.getHours();
-return self}, function($ctx1) {$ctx1.fill(self,"hours",{},smalltalk.Date)})},
-messageSends: []}),
-smalltalk.Date);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "hours:",
-fn: function (aNumber){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self.setHours(aNumber);
-return self}, function($ctx1) {$ctx1.fill(self,"hours:",{aNumber:aNumber},smalltalk.Date)})},
-messageSends: []}),
-smalltalk.Date);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "milliseconds",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self.getMilliseconds();
-return self}, function($ctx1) {$ctx1.fill(self,"milliseconds",{},smalltalk.Date)})},
-messageSends: []}),
-smalltalk.Date);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "milliseconds:",
-fn: function (aNumber){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self.setMilliseconds(aNumber);
-return self}, function($ctx1) {$ctx1.fill(self,"milliseconds:",{aNumber:aNumber},smalltalk.Date)})},
-messageSends: []}),
-smalltalk.Date);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "minutes",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self.getMinutes();
-return self}, function($ctx1) {$ctx1.fill(self,"minutes",{},smalltalk.Date)})},
-messageSends: []}),
-smalltalk.Date);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "minutes:",
-fn: function (aNumber){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self.setMinutes(aNumber);
-return self}, function($ctx1) {$ctx1.fill(self,"minutes:",{aNumber:aNumber},smalltalk.Date)})},
-messageSends: []}),
-smalltalk.Date);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "month",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self.getMonth() + 1;
-return self}, function($ctx1) {$ctx1.fill(self,"month",{},smalltalk.Date)})},
-messageSends: []}),
-smalltalk.Date);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "month:",
-fn: function (aNumber){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self.setMonth(aNumber - 1);
-return self}, function($ctx1) {$ctx1.fill(self,"month:",{aNumber:aNumber},smalltalk.Date)})},
-messageSends: []}),
-smalltalk.Date);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "printOn:",
-fn: function (aStream){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(aStream)._nextPutAll_(self._asString());
-return self}, function($ctx1) {$ctx1.fill(self,"printOn:",{aStream:aStream},smalltalk.Date)})},
-messageSends: ["nextPutAll:", "asString"]}),
-smalltalk.Date);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "seconds",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self.getSeconds();
-return self}, function($ctx1) {$ctx1.fill(self,"seconds",{},smalltalk.Date)})},
-messageSends: []}),
-smalltalk.Date);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "seconds:",
-fn: function (aNumber){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self.setSeconds(aNumber);
-return self}, function($ctx1) {$ctx1.fill(self,"seconds:",{aNumber:aNumber},smalltalk.Date)})},
-messageSends: []}),
-smalltalk.Date);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "time",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self.getTime();
-return self}, function($ctx1) {$ctx1.fill(self,"time",{},smalltalk.Date)})},
-messageSends: []}),
-smalltalk.Date);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "time:",
-fn: function (aNumber){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self.setTime(aNumber);
-return self}, function($ctx1) {$ctx1.fill(self,"time:",{aNumber:aNumber},smalltalk.Date)})},
-messageSends: []}),
-smalltalk.Date);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "year",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self.getFullYear();
-return self}, function($ctx1) {$ctx1.fill(self,"year",{},smalltalk.Date)})},
-messageSends: []}),
-smalltalk.Date);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "year:",
-fn: function (aNumber){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self.setFullYear(aNumber);
-return self}, function($ctx1) {$ctx1.fill(self,"year:",{aNumber:aNumber},smalltalk.Date)})},
-messageSends: []}),
-smalltalk.Date);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "fromMilliseconds:",
-fn: function (aNumber){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._new_(aNumber);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"fromMilliseconds:",{aNumber:aNumber},smalltalk.Date.klass)})},
-messageSends: ["new:"]}),
-smalltalk.Date.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "fromSeconds:",
-fn: function (aNumber){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._fromMilliseconds_(_st(aNumber).__star((1000)));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"fromSeconds:",{aNumber:aNumber},smalltalk.Date.klass)})},
-messageSends: ["fromMilliseconds:", "*"]}),
-smalltalk.Date.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "fromString:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._new_(aString);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"fromString:",{aString:aString},smalltalk.Date.klass)})},
-messageSends: ["new:"]}),
-smalltalk.Date.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "heliosClass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "magnitude";
-}, function($ctx1) {$ctx1.fill(self,"heliosClass",{},smalltalk.Date.klass)})},
-messageSends: []}),
-smalltalk.Date.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "millisecondsToRun:",
-fn: function (aBlock){
-var self=this;
-var t;
-function $Date(){return smalltalk.Date||(typeof Date=="undefined"?nil:Date)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-t=_st($Date())._now();
-_st(aBlock)._value();
-$1=_st(_st($Date())._now()).__minus(t);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"millisecondsToRun:",{aBlock:aBlock,t:t},smalltalk.Date.klass)})},
-messageSends: ["now", "value", "-"]}),
-smalltalk.Date.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "new:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return new Date(anObject);
-return self}, function($ctx1) {$ctx1.fill(self,"new:",{anObject:anObject},smalltalk.Date.klass)})},
-messageSends: []}),
-smalltalk.Date.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "now",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._today();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"now",{},smalltalk.Date.klass)})},
-messageSends: ["today"]}),
-smalltalk.Date.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "today",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._new();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"today",{},smalltalk.Date.klass)})},
-messageSends: ["new"]}),
-smalltalk.Date.klass);
-
-
-smalltalk.addClass('Number', smalltalk.Object, [], 'Kernel-Objects');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "&",
-fn: function (aNumber){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self & aNumber;
-return self}, function($ctx1) {$ctx1.fill(self,"&",{aNumber:aNumber},smalltalk.Number)})},
-messageSends: []}),
-smalltalk.Number);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "*",
-fn: function (aNumber){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self * aNumber;
-return self}, function($ctx1) {$ctx1.fill(self,"*",{aNumber:aNumber},smalltalk.Number)})},
-messageSends: []}),
-smalltalk.Number);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "+",
-fn: function (aNumber){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self + aNumber;
-return self}, function($ctx1) {$ctx1.fill(self,"+",{aNumber:aNumber},smalltalk.Number)})},
-messageSends: []}),
-smalltalk.Number);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "-",
-fn: function (aNumber){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self - aNumber;
-return self}, function($ctx1) {$ctx1.fill(self,"-",{aNumber:aNumber},smalltalk.Number)})},
-messageSends: []}),
-smalltalk.Number);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "/",
-fn: function (aNumber){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self / aNumber;
-return self}, function($ctx1) {$ctx1.fill(self,"/",{aNumber:aNumber},smalltalk.Number)})},
-messageSends: []}),
-smalltalk.Number);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "<",
-fn: function (aNumber){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self < aNumber;
-return self}, function($ctx1) {$ctx1.fill(self,"<",{aNumber:aNumber},smalltalk.Number)})},
-messageSends: []}),
-smalltalk.Number);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "<=",
-fn: function (aNumber){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self <= aNumber;
-return self}, function($ctx1) {$ctx1.fill(self,"<=",{aNumber:aNumber},smalltalk.Number)})},
-messageSends: []}),
-smalltalk.Number);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "=",
-fn: function (aNumber){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-
-		if(! aNumber._isNumber || ! aNumber._isNumber()) {
-			return false;
-		}
-		return Number(self) == aNumber
-	;
-return self}, function($ctx1) {$ctx1.fill(self,"=",{aNumber:aNumber},smalltalk.Number)})},
-messageSends: []}),
-smalltalk.Number);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: ">",
-fn: function (aNumber){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self > aNumber;
-return self}, function($ctx1) {$ctx1.fill(self,">",{aNumber:aNumber},smalltalk.Number)})},
-messageSends: []}),
-smalltalk.Number);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: ">=",
-fn: function (aNumber){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self >= aNumber;
-return self}, function($ctx1) {$ctx1.fill(self,">=",{aNumber:aNumber},smalltalk.Number)})},
-messageSends: []}),
-smalltalk.Number);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "@",
-fn: function (aNumber){
-var self=this;
-function $Point(){return smalltalk.Point||(typeof Point=="undefined"?nil:Point)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st($Point())._x_y_(self,aNumber);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"@",{aNumber:aNumber},smalltalk.Number)})},
-messageSends: ["x:y:"]}),
-smalltalk.Number);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "\x5c\x5c",
-fn: function (aNumber){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self % aNumber;
-return self}, function($ctx1) {$ctx1.fill(self,"\x5c\x5c",{aNumber:aNumber},smalltalk.Number)})},
-messageSends: []}),
-smalltalk.Number);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "abs",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return Math.abs(self);;
-return self}, function($ctx1) {$ctx1.fill(self,"abs",{},smalltalk.Number)})},
-messageSends: []}),
-smalltalk.Number);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "asJSON",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"asJSON",{},smalltalk.Number)})},
-messageSends: []}),
-smalltalk.Number);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "asJavascript",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st("(".__comma(self._printString())).__comma(")");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"asJavascript",{},smalltalk.Number)})},
-messageSends: [",", "printString"]}),
-smalltalk.Number);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "asNumber",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"asNumber",{},smalltalk.Number)})},
-messageSends: []}),
-smalltalk.Number);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "asPoint",
-fn: function (){
-var self=this;
-function $Point(){return smalltalk.Point||(typeof Point=="undefined"?nil:Point)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st($Point())._x_y_(self,self);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"asPoint",{},smalltalk.Number)})},
-messageSends: ["x:y:"]}),
-smalltalk.Number);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "asString",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
- return String(self) ;
-return self}, function($ctx1) {$ctx1.fill(self,"asString",{},smalltalk.Number)})},
-messageSends: []}),
-smalltalk.Number);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "atRandom",
-fn: function (){
-var self=this;
-function $Random(){return smalltalk.Random||(typeof Random=="undefined"?nil:Random)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(_st(_st(_st($Random())._new())._next()).__star(self))._truncated()).__plus((1));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"atRandom",{},smalltalk.Number)})},
-messageSends: ["+", "truncated", "*", "next", "new"]}),
-smalltalk.Number);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "ceiling",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return Math.ceil(self);;
-return self}, function($ctx1) {$ctx1.fill(self,"ceiling",{},smalltalk.Number)})},
-messageSends: []}),
-smalltalk.Number);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "copy",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"copy",{},smalltalk.Number)})},
-messageSends: []}),
-smalltalk.Number);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "deepCopy",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._copy();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"deepCopy",{},smalltalk.Number)})},
-messageSends: ["copy"]}),
-smalltalk.Number);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "even",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=(0).__eq(self.__backslash_backslash((2)));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"even",{},smalltalk.Number)})},
-messageSends: ["=", "\x5c\x5c"]}),
-smalltalk.Number);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "floor",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return Math.floor(self);;
-return self}, function($ctx1) {$ctx1.fill(self,"floor",{},smalltalk.Number)})},
-messageSends: []}),
-smalltalk.Number);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "identityHash",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._asString()).__comma("n");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"identityHash",{},smalltalk.Number)})},
-messageSends: [",", "asString"]}),
-smalltalk.Number);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isImmutable",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"isImmutable",{},smalltalk.Number)})},
-messageSends: []}),
-smalltalk.Number);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isNumber",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"isNumber",{},smalltalk.Number)})},
-messageSends: []}),
-smalltalk.Number);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isZero",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self.__eq((0));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"isZero",{},smalltalk.Number)})},
-messageSends: ["="]}),
-smalltalk.Number);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "max:",
-fn: function (aNumber){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return Math.max(self, aNumber);;
-return self}, function($ctx1) {$ctx1.fill(self,"max:",{aNumber:aNumber},smalltalk.Number)})},
-messageSends: []}),
-smalltalk.Number);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "min:",
-fn: function (aNumber){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return Math.min(self, aNumber);;
-return self}, function($ctx1) {$ctx1.fill(self,"min:",{aNumber:aNumber},smalltalk.Number)})},
-messageSends: []}),
-smalltalk.Number);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "negated",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=(0).__minus(self);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"negated",{},smalltalk.Number)})},
-messageSends: ["-"]}),
-smalltalk.Number);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "negative",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self.__lt((0));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"negative",{},smalltalk.Number)})},
-messageSends: ["<"]}),
-smalltalk.Number);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "odd",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._even())._not();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"odd",{},smalltalk.Number)})},
-messageSends: ["not", "even"]}),
-smalltalk.Number);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "positive",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self.__gt_eq((0));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"positive",{},smalltalk.Number)})},
-messageSends: [">="]}),
-smalltalk.Number);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "printOn:",
-fn: function (aStream){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(aStream)._nextPutAll_(self._asString());
-return self}, function($ctx1) {$ctx1.fill(self,"printOn:",{aStream:aStream},smalltalk.Number)})},
-messageSends: ["nextPutAll:", "asString"]}),
-smalltalk.Number);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "printShowingDecimalPlaces:",
-fn: function (placesDesired){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self.toFixed(placesDesired);
-return self}, function($ctx1) {$ctx1.fill(self,"printShowingDecimalPlaces:",{placesDesired:placesDesired},smalltalk.Number)})},
-messageSends: []}),
-smalltalk.Number);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "rounded",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return Math.round(self);;
-return self}, function($ctx1) {$ctx1.fill(self,"rounded",{},smalltalk.Number)})},
-messageSends: []}),
-smalltalk.Number);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "sqrt",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return Math.sqrt(self);
-return self}, function($ctx1) {$ctx1.fill(self,"sqrt",{},smalltalk.Number)})},
-messageSends: []}),
-smalltalk.Number);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "squared",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self.__star(self);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"squared",{},smalltalk.Number)})},
-messageSends: ["*"]}),
-smalltalk.Number);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "timesRepeat:",
-fn: function (aBlock){
-var self=this;
-var count;
-return smalltalk.withContext(function($ctx1) { 
-count=(1);
-_st((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(count).__gt(self);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._whileFalse_((function(){
-return smalltalk.withContext(function($ctx2) {
-_st(aBlock)._value();
-count=_st(count).__plus((1));
-return count;
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"timesRepeat:",{aBlock:aBlock,count:count},smalltalk.Number)})},
-messageSends: ["whileFalse:", "value", "+", ">"]}),
-smalltalk.Number);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "to:",
-fn: function (aNumber){
-var self=this;
-var array,first,last,count;
-function $Array(){return smalltalk.Array||(typeof Array=="undefined"?nil:Array)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-first=self._truncated();
-last=_st(_st(aNumber)._truncated()).__plus((1));
-count=(1);
-array=_st($Array())._new();
-_st(_st(last).__minus(first))._timesRepeat_((function(){
-return smalltalk.withContext(function($ctx2) {
-_st(array)._at_put_(count,first);
-count=_st(count).__plus((1));
-count;
-first=_st(first).__plus((1));
-return first;
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-$1=array;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"to:",{aNumber:aNumber,array:array,first:first,last:last,count:count},smalltalk.Number)})},
-messageSends: ["truncated", "+", "new", "timesRepeat:", "at:put:", "-"]}),
-smalltalk.Number);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "to:by:",
-fn: function (stop,step){
-var self=this;
-var array,value,pos;
-function $Array(){return smalltalk.Array||(typeof Array=="undefined"?nil:Array)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3;
-value=self;
-array=_st($Array())._new();
-pos=(1);
-$1=_st(step).__eq((0));
-if(smalltalk.assert($1)){
-self._error_("step must be non-zero");
-};
-$2=_st(step).__lt((0));
-if(smalltalk.assert($2)){
-_st((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(value).__gt_eq(stop);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._whileTrue_((function(){
-return smalltalk.withContext(function($ctx2) {
-_st(array)._at_put_(pos,value);
-pos=_st(pos).__plus((1));
-pos;
-value=_st(value).__plus(step);
-return value;
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-} else {
-_st((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(value).__lt_eq(stop);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._whileTrue_((function(){
-return smalltalk.withContext(function($ctx2) {
-_st(array)._at_put_(pos,value);
-pos=_st(pos).__plus((1));
-pos;
-value=_st(value).__plus(step);
-return value;
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-};
-$3=array;
-return $3;
-}, function($ctx1) {$ctx1.fill(self,"to:by:",{stop:stop,step:step,array:array,value:value,pos:pos},smalltalk.Number)})},
-messageSends: ["new", "ifTrue:", "error:", "=", "ifTrue:ifFalse:", "whileTrue:", "at:put:", "+", ">=", "<=", "<"]}),
-smalltalk.Number);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "to:by:do:",
-fn: function (stop,step,aBlock){
-var self=this;
-var value;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-value=self;
-$1=_st(step).__eq((0));
-if(smalltalk.assert($1)){
-self._error_("step must be non-zero");
-};
-$2=_st(step).__lt((0));
-if(smalltalk.assert($2)){
-_st((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(value).__gt_eq(stop);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._whileTrue_((function(){
-return smalltalk.withContext(function($ctx2) {
-_st(aBlock)._value_(value);
-value=_st(value).__plus(step);
-return value;
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-} else {
-_st((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(value).__lt_eq(stop);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._whileTrue_((function(){
-return smalltalk.withContext(function($ctx2) {
-_st(aBlock)._value_(value);
-value=_st(value).__plus(step);
-return value;
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-};
-return self}, function($ctx1) {$ctx1.fill(self,"to:by:do:",{stop:stop,step:step,aBlock:aBlock,value:value},smalltalk.Number)})},
-messageSends: ["ifTrue:", "error:", "=", "ifTrue:ifFalse:", "whileTrue:", "value:", "+", ">=", "<=", "<"]}),
-smalltalk.Number);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "to:do:",
-fn: function (stop,aBlock){
-var self=this;
-var nextValue;
-return smalltalk.withContext(function($ctx1) { 
-nextValue=self;
-_st((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(nextValue).__lt_eq(stop);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._whileTrue_((function(){
-return smalltalk.withContext(function($ctx2) {
-_st(aBlock)._value_(nextValue);
-nextValue=_st(nextValue).__plus((1));
-return nextValue;
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"to:do:",{stop:stop,aBlock:aBlock,nextValue:nextValue},smalltalk.Number)})},
-messageSends: ["whileTrue:", "value:", "+", "<="]}),
-smalltalk.Number);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "truncated",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-
-		if(self >= 0) {
-			return Math.floor(self);
-		} else {
-			return Math.floor(self * (-1)) * (-1);
-		};
-	;
-return self}, function($ctx1) {$ctx1.fill(self,"truncated",{},smalltalk.Number)})},
-messageSends: []}),
-smalltalk.Number);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "|",
-fn: function (aNumber){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self | aNumber;
-return self}, function($ctx1) {$ctx1.fill(self,"|",{aNumber:aNumber},smalltalk.Number)})},
-messageSends: []}),
-smalltalk.Number);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "heliosClass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "magnitude";
-}, function($ctx1) {$ctx1.fill(self,"heliosClass",{},smalltalk.Number.klass)})},
-messageSends: []}),
-smalltalk.Number.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "pi",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return Math.PI;
-return self}, function($ctx1) {$ctx1.fill(self,"pi",{},smalltalk.Number.klass)})},
-messageSends: []}),
-smalltalk.Number.klass);
-
-
-smalltalk.addClass('Point', smalltalk.Object, ['x', 'y'], 'Kernel-Objects');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "*",
-fn: function (aPoint){
-var self=this;
-function $Point(){return smalltalk.Point||(typeof Point=="undefined"?nil:Point)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st($Point())._x_y_(_st(self._x()).__star(_st(_st(aPoint)._asPoint())._x()),_st(self._y()).__star(_st(_st(aPoint)._asPoint())._y()));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"*",{aPoint:aPoint},smalltalk.Point)})},
-messageSends: ["x:y:", "*", "x", "asPoint", "y"]}),
-smalltalk.Point);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "+",
-fn: function (aPoint){
-var self=this;
-function $Point(){return smalltalk.Point||(typeof Point=="undefined"?nil:Point)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st($Point())._x_y_(_st(self._x()).__plus(_st(_st(aPoint)._asPoint())._x()),_st(self._y()).__plus(_st(_st(aPoint)._asPoint())._y()));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"+",{aPoint:aPoint},smalltalk.Point)})},
-messageSends: ["x:y:", "+", "x", "asPoint", "y"]}),
-smalltalk.Point);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "-",
-fn: function (aPoint){
-var self=this;
-function $Point(){return smalltalk.Point||(typeof Point=="undefined"?nil:Point)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st($Point())._x_y_(_st(self._x()).__minus(_st(_st(aPoint)._asPoint())._x()),_st(self._y()).__minus(_st(_st(aPoint)._asPoint())._y()));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"-",{aPoint:aPoint},smalltalk.Point)})},
-messageSends: ["x:y:", "-", "x", "asPoint", "y"]}),
-smalltalk.Point);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "/",
-fn: function (aPoint){
-var self=this;
-function $Point(){return smalltalk.Point||(typeof Point=="undefined"?nil:Point)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st($Point())._x_y_(_st(self._x()).__slash(_st(_st(aPoint)._asPoint())._x()),_st(self._y()).__slash(_st(_st(aPoint)._asPoint())._y()));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"/",{aPoint:aPoint},smalltalk.Point)})},
-messageSends: ["x:y:", "/", "x", "asPoint", "y"]}),
-smalltalk.Point);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "=",
-fn: function (aPoint){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(_st(aPoint)._class()).__eq(self._class()))._and_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st(_st(aPoint)._x()).__eq(self._x())).__and(_st(_st(aPoint)._y()).__eq(self._y()));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"=",{aPoint:aPoint},smalltalk.Point)})},
-messageSends: ["and:", "&", "=", "y", "x", "class"]}),
-smalltalk.Point);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "asPoint",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"asPoint",{},smalltalk.Point)})},
-messageSends: []}),
-smalltalk.Point);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "printOn:",
-fn: function (aStream){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-_st(self["@x"])._printOn_(aStream);
-_st(aStream)._nextPutAll_("@");
-$1=_st(_st(self["@y"])._notNil())._and_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(self["@y"])._negative();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-if(smalltalk.assert($1)){
-_st(aStream)._space();
-};
-_st(self["@y"])._printOn_(aStream);
-return self}, function($ctx1) {$ctx1.fill(self,"printOn:",{aStream:aStream},smalltalk.Point)})},
-messageSends: ["printOn:", "nextPutAll:", "ifTrue:", "space", "and:", "negative", "notNil"]}),
-smalltalk.Point);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "translateBy:",
-fn: function (delta){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(_st(delta)._x()).__plus(self["@x"])).__at(_st(_st(delta)._y()).__plus(self["@y"]));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"translateBy:",{delta:delta},smalltalk.Point)})},
-messageSends: ["@", "+", "y", "x"]}),
-smalltalk.Point);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "x",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@x"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"x",{},smalltalk.Point)})},
-messageSends: []}),
-smalltalk.Point);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "x:",
-fn: function (aNumber){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@x"]=aNumber;
-return self}, function($ctx1) {$ctx1.fill(self,"x:",{aNumber:aNumber},smalltalk.Point)})},
-messageSends: []}),
-smalltalk.Point);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "y",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@y"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"y",{},smalltalk.Point)})},
-messageSends: []}),
-smalltalk.Point);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "y:",
-fn: function (aNumber){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@y"]=aNumber;
-return self}, function($ctx1) {$ctx1.fill(self,"y:",{aNumber:aNumber},smalltalk.Point)})},
-messageSends: []}),
-smalltalk.Point);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "heliosClass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "magnitude";
-}, function($ctx1) {$ctx1.fill(self,"heliosClass",{},smalltalk.Point.klass)})},
-messageSends: []}),
-smalltalk.Point.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "x:y:",
-fn: function (aNumber,anotherNumber){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=self._new();
-_st($2)._x_(aNumber);
-_st($2)._y_(anotherNumber);
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"x:y:",{aNumber:aNumber,anotherNumber:anotherNumber},smalltalk.Point.klass)})},
-messageSends: ["x:", "new", "y:", "yourself"]}),
-smalltalk.Point.klass);
-
-
-smalltalk.addClass('Random', smalltalk.Object, [], 'Kernel-Objects');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "next",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return Math.random();
-return self}, function($ctx1) {$ctx1.fill(self,"next",{},smalltalk.Random)})},
-messageSends: []}),
-smalltalk.Random);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "next:",
-fn: function (anInteger){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st((1)._to_(anInteger))._collect_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return self._next();
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"next:",{anInteger:anInteger},smalltalk.Random)})},
-messageSends: ["collect:", "next", "to:"]}),
-smalltalk.Random);
-
-
-
-smalltalk.addClass('UndefinedObject', smalltalk.Object, [], 'Kernel-Objects');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "asJSON",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=null;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"asJSON",{},smalltalk.UndefinedObject)})},
-messageSends: []}),
-smalltalk.UndefinedObject);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "deepCopy",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"deepCopy",{},smalltalk.UndefinedObject)})},
-messageSends: []}),
-smalltalk.UndefinedObject);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "ifNil:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=self;
-$1=_st($2)._ifNil_ifNotNil_(aBlock,(function(){
-return smalltalk.withContext(function($ctx2) {
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"ifNil:",{aBlock:aBlock},smalltalk.UndefinedObject)})},
-messageSends: ["ifNil:ifNotNil:"]}),
-smalltalk.UndefinedObject);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "ifNil:ifNotNil:",
-fn: function (aBlock,anotherBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(aBlock)._value();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"ifNil:ifNotNil:",{aBlock:aBlock,anotherBlock:anotherBlock},smalltalk.UndefinedObject)})},
-messageSends: ["value"]}),
-smalltalk.UndefinedObject);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "ifNotNil:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"ifNotNil:",{aBlock:aBlock},smalltalk.UndefinedObject)})},
-messageSends: []}),
-smalltalk.UndefinedObject);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "ifNotNil:ifNil:",
-fn: function (aBlock,anotherBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(anotherBlock)._value();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"ifNotNil:ifNil:",{aBlock:aBlock,anotherBlock:anotherBlock},smalltalk.UndefinedObject)})},
-messageSends: ["value"]}),
-smalltalk.UndefinedObject);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isImmutable",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"isImmutable",{},smalltalk.UndefinedObject)})},
-messageSends: []}),
-smalltalk.UndefinedObject);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isNil",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return true;
-}, function($ctx1) {$ctx1.fill(self,"isNil",{},smalltalk.UndefinedObject)})},
-messageSends: []}),
-smalltalk.UndefinedObject);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "notNil",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return false;
-}, function($ctx1) {$ctx1.fill(self,"notNil",{},smalltalk.UndefinedObject)})},
-messageSends: []}),
-smalltalk.UndefinedObject);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "printOn:",
-fn: function (aStream){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(aStream)._nextPutAll_("nil");
-return self}, function($ctx1) {$ctx1.fill(self,"printOn:",{aStream:aStream},smalltalk.UndefinedObject)})},
-messageSends: ["nextPutAll:"]}),
-smalltalk.UndefinedObject);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "shallowCopy",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"shallowCopy",{},smalltalk.UndefinedObject)})},
-messageSends: []}),
-smalltalk.UndefinedObject);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "subclass:instanceVariableNames:",
-fn: function (aString,anotherString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._subclass_instanceVariableNames_package_(aString,anotherString,nil);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"subclass:instanceVariableNames:",{aString:aString,anotherString:anotherString},smalltalk.UndefinedObject)})},
-messageSends: ["subclass:instanceVariableNames:package:"]}),
-smalltalk.UndefinedObject);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "subclass:instanceVariableNames:category:",
-fn: function (aString,aString2,aString3){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-self._deprecatedAPI();
-$1=self._subclass_instanceVariableNames_package_(aString,aString2,aString3);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"subclass:instanceVariableNames:category:",{aString:aString,aString2:aString2,aString3:aString3},smalltalk.UndefinedObject)})},
-messageSends: ["deprecatedAPI", "subclass:instanceVariableNames:package:"]}),
-smalltalk.UndefinedObject);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "subclass:instanceVariableNames:package:",
-fn: function (aString,aString2,aString3){
-var self=this;
-function $ClassBuilder(){return smalltalk.ClassBuilder||(typeof ClassBuilder=="undefined"?nil:ClassBuilder)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st($ClassBuilder())._new())._superclass_subclass_instanceVariableNames_package_(self,_st(aString)._asString(),aString2,aString3);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"subclass:instanceVariableNames:package:",{aString:aString,aString2:aString2,aString3:aString3},smalltalk.UndefinedObject)})},
-messageSends: ["superclass:subclass:instanceVariableNames:package:", "asString", "new"]}),
-smalltalk.UndefinedObject);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "new",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._error_("You cannot create new instances of UndefinedObject. Use nil");
-return self}, function($ctx1) {$ctx1.fill(self,"new",{},smalltalk.UndefinedObject.klass)})},
-messageSends: ["error:"]}),
-smalltalk.UndefinedObject.klass);
-
-});

+ 0 - 4133
js/Kernel-Tests.deploy.js

@@ -1,4133 +0,0 @@
-define("amber/Kernel-Tests", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/SUnit", "amber/Kernel-Objects"], function(smalltalk,nil,_st){
-smalltalk.addPackage('Kernel-Tests');
-smalltalk.packages["Kernel-Tests"].transport = {"type":"amd","amdNamespace":"amber"};
-
-smalltalk.addClass('BlockClosureTest', smalltalk.TestCase, [], 'Kernel-Tests');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testCanClearInterval",
-fn: function (){
-var self=this;
-function $Error(){return smalltalk.Error||(typeof Error=="undefined"?nil:Error)}
-return smalltalk.withContext(function($ctx1) { 
-self._shouldnt_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st((function(){
-return smalltalk.withContext(function($ctx3) {
-return _st(_st($Error())._new())._signal();
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}))._valueWithInterval_((0)))._clearInterval();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$Error());
-return self}, function($ctx1) {$ctx1.fill(self,"testCanClearInterval",{},smalltalk.BlockClosureTest)})},
-messageSends: ["shouldnt:raise:", "clearInterval", "valueWithInterval:", "signal", "new"]}),
-smalltalk.BlockClosureTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testCanClearTimeout",
-fn: function (){
-var self=this;
-function $Error(){return smalltalk.Error||(typeof Error=="undefined"?nil:Error)}
-return smalltalk.withContext(function($ctx1) { 
-self._shouldnt_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st((function(){
-return smalltalk.withContext(function($ctx3) {
-return _st(_st($Error())._new())._signal();
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}))._valueWithTimeout_((0)))._clearTimeout();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$Error());
-return self}, function($ctx1) {$ctx1.fill(self,"testCanClearTimeout",{},smalltalk.BlockClosureTest)})},
-messageSends: ["shouldnt:raise:", "clearTimeout", "valueWithTimeout:", "signal", "new"]}),
-smalltalk.BlockClosureTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testCompiledSource",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_(_st(_st((function(){
-return smalltalk.withContext(function($ctx2) {
-return (1).__plus((1));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._compiledSource())._includesSubString_("function"));
-return self}, function($ctx1) {$ctx1.fill(self,"testCompiledSource",{},smalltalk.BlockClosureTest)})},
-messageSends: ["assert:", "includesSubString:", "compiledSource", "+"]}),
-smalltalk.BlockClosureTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testCurrySelf",
-fn: function (){
-var self=this;
-var curriedMethod,array;
-function $Array(){return smalltalk.Array||(typeof Array=="undefined"?nil:Array)}
-function $ClassBuilder(){return smalltalk.ClassBuilder||(typeof ClassBuilder=="undefined"?nil:ClassBuilder)}
-return smalltalk.withContext(function($ctx1) { 
-curriedMethod=_st(_st((function(selfarg,x){
-return smalltalk.withContext(function($ctx2) {
-return _st(selfarg)._at_(x);
-}, function($ctx2) {$ctx2.fillBlock({selfarg:selfarg,x:x},$ctx1)})}))._currySelf())._asCompiledMethod_("foo:");
-array=[(3), (1), (4)];
-_st(_st($ClassBuilder())._new())._installMethod_forClass_category_(curriedMethod,$Array(),"**test helper");
-_st((function(){
-return smalltalk.withContext(function($ctx2) {
-return self._assert_equals_(_st(array)._foo_((2)),(1));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._ensure_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st($Array())._removeCompiledMethod_(curriedMethod);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"testCurrySelf",{curriedMethod:curriedMethod,array:array},smalltalk.BlockClosureTest)})},
-messageSends: ["asCompiledMethod:", "currySelf", "at:", "installMethod:forClass:category:", "new", "ensure:", "removeCompiledMethod:", "assert:equals:", "foo:"]}),
-smalltalk.BlockClosureTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testEnsure",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_(_st((function(){
-return smalltalk.withContext(function($ctx2) {
-return (3);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._ensure_((function(){
-return smalltalk.withContext(function($ctx2) {
-return (4);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})})),(3));
-return self}, function($ctx1) {$ctx1.fill(self,"testEnsure",{},smalltalk.BlockClosureTest)})},
-messageSends: ["assert:equals:", "ensure:"]}),
-smalltalk.BlockClosureTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testEnsureRaises",
-fn: function (){
-var self=this;
-function $Error(){return smalltalk.Error||(typeof Error=="undefined"?nil:Error)}
-return smalltalk.withContext(function($ctx1) { 
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st((function(){
-return smalltalk.withContext(function($ctx3) {
-return _st(_st($Error())._new())._signal();
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}))._ensure_((function(){
-return smalltalk.withContext(function($ctx3) {
-return true;
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$Error());
-return self}, function($ctx1) {$ctx1.fill(self,"testEnsureRaises",{},smalltalk.BlockClosureTest)})},
-messageSends: ["should:raise:", "ensure:", "signal", "new"]}),
-smalltalk.BlockClosureTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testExceptionSemantics",
-fn: function (){
-var self=this;
-function $Error(){return smalltalk.Error||(typeof Error=="undefined"?nil:Error)}
-return smalltalk.withContext(function($ctx1) { 
-self._timeout_((100));
-_st(self._async_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st((function(){
-return smalltalk.withContext(function($ctx3) {
-self._assert_(true);
-_st($Error())._signal();
-self._deny_(true);
-return self._finished();
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}))._on_do_($Error(),(function(ex){
-return smalltalk.withContext(function($ctx3) {
-return self._finished();
-}, function($ctx3) {$ctx3.fillBlock({ex:ex},$ctx2)})}));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})})))._valueWithTimeout_((0));
-return self}, function($ctx1) {$ctx1.fill(self,"testExceptionSemantics",{},smalltalk.BlockClosureTest)})},
-messageSends: ["timeout:", "valueWithTimeout:", "async:", "on:do:", "finished", "assert:", "signal", "deny:"]}),
-smalltalk.BlockClosureTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testNewWithValues",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-
-	function theTestPrototype() {this.name = "theTestPrototype";}
-	function theTestConstructor(arg1, arg2, arg3) {}
-	theTestConstructor.prototype = new theTestPrototype;
-
-	var theWrappedConstructor = _st(theTestConstructor);
-	var theResult = theWrappedConstructor._newWithValues_([1, 2, 3]);
-	self._assert_equals_(Object.getPrototypeOf(theResult).name, 'theTestPrototype');
-
-	"newWithValues: cannot help if the argument list is wrong, and should warn that a mistake was made."
-	function constructionShouldFail() {var anotherResult = theWrappedConstructor._newWithValues_('This is so wrong');}
-	self._should_raise_(_st(constructionShouldFail), smalltalk.Error);;
-return self}, function($ctx1) {$ctx1.fill(self,"testNewWithValues",{},smalltalk.BlockClosureTest)})},
-messageSends: []}),
-smalltalk.BlockClosureTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testNumArgs",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_(_st((function(){
-return smalltalk.withContext(function($ctx2) {
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._numArgs(),(0));
-self._assert_equals_(_st((function(a,b){
-return smalltalk.withContext(function($ctx2) {
-}, function($ctx2) {$ctx2.fillBlock({a:a,b:b},$ctx1)})}))._numArgs(),(2));
-return self}, function($ctx1) {$ctx1.fill(self,"testNumArgs",{},smalltalk.BlockClosureTest)})},
-messageSends: ["assert:equals:", "numArgs"]}),
-smalltalk.BlockClosureTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testOnDo",
-fn: function (){
-var self=this;
-function $Error(){return smalltalk.Error||(typeof Error=="undefined"?nil:Error)}
-return smalltalk.withContext(function($ctx1) { 
-self._assert_(_st((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st($Error())._new())._signal();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._on_do_($Error(),(function(ex){
-return smalltalk.withContext(function($ctx2) {
-return true;
-}, function($ctx2) {$ctx2.fillBlock({ex:ex},$ctx1)})})));
-return self}, function($ctx1) {$ctx1.fill(self,"testOnDo",{},smalltalk.BlockClosureTest)})},
-messageSends: ["assert:", "on:do:", "signal", "new"]}),
-smalltalk.BlockClosureTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testValue",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_(_st((function(){
-return smalltalk.withContext(function($ctx2) {
-return (1).__plus((1));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._value(),(2));
-self._assert_equals_(_st((function(x){
-return smalltalk.withContext(function($ctx2) {
-return _st(x).__plus((1));
-}, function($ctx2) {$ctx2.fillBlock({x:x},$ctx1)})}))._value_((2)),(3));
-self._assert_equals_(_st((function(x,y){
-return smalltalk.withContext(function($ctx2) {
-return _st(x).__star(y);
-}, function($ctx2) {$ctx2.fillBlock({x:x,y:y},$ctx1)})}))._value_value_((2),(4)),(8));
-self._assert_equals_(_st((function(a,b,c){
-return smalltalk.withContext(function($ctx2) {
-return (1);
-}, function($ctx2) {$ctx2.fillBlock({a:a,b:b,c:c},$ctx1)})}))._value(),(1));
-return self}, function($ctx1) {$ctx1.fill(self,"testValue",{},smalltalk.BlockClosureTest)})},
-messageSends: ["assert:equals:", "value", "+", "value:", "value:value:", "*"]}),
-smalltalk.BlockClosureTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testValueWithPossibleArguments",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_(_st((function(){
-return smalltalk.withContext(function($ctx2) {
-return (1);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._valueWithPossibleArguments_([(3), (4)]),(1));
-self._assert_equals_(_st((function(a){
-return smalltalk.withContext(function($ctx2) {
-return _st(a).__plus((4));
-}, function($ctx2) {$ctx2.fillBlock({a:a},$ctx1)})}))._valueWithPossibleArguments_([(3), (4)]),(7));
-self._assert_equals_(_st((function(a,b){
-return smalltalk.withContext(function($ctx2) {
-return _st(a).__plus(b);
-}, function($ctx2) {$ctx2.fillBlock({a:a,b:b},$ctx1)})}))._valueWithPossibleArguments_([(3), (4), (5)]),(7));
-return self}, function($ctx1) {$ctx1.fill(self,"testValueWithPossibleArguments",{},smalltalk.BlockClosureTest)})},
-messageSends: ["assert:equals:", "valueWithPossibleArguments:", "+"]}),
-smalltalk.BlockClosureTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testWhileFalse",
-fn: function (){
-var self=this;
-var i;
-return smalltalk.withContext(function($ctx1) { 
-i=(0);
-_st((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(i).__gt((5));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._whileFalse_((function(){
-return smalltalk.withContext(function($ctx2) {
-i=_st(i).__plus((1));
-return i;
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-self._assert_equals_(i,(6));
-i=(0);
-_st((function(){
-return smalltalk.withContext(function($ctx2) {
-i=_st(i).__plus((1));
-i;
-return _st(i).__gt((5));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._whileFalse();
-self._assert_equals_(i,(6));
-return self}, function($ctx1) {$ctx1.fill(self,"testWhileFalse",{i:i},smalltalk.BlockClosureTest)})},
-messageSends: ["whileFalse:", "+", ">", "assert:equals:", "whileFalse"]}),
-smalltalk.BlockClosureTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testWhileTrue",
-fn: function (){
-var self=this;
-var i;
-return smalltalk.withContext(function($ctx1) { 
-i=(0);
-_st((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(i).__lt((5));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._whileTrue_((function(){
-return smalltalk.withContext(function($ctx2) {
-i=_st(i).__plus((1));
-return i;
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-self._assert_equals_(i,(5));
-i=(0);
-_st((function(){
-return smalltalk.withContext(function($ctx2) {
-i=_st(i).__plus((1));
-i;
-return _st(i).__lt((5));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._whileTrue();
-self._assert_equals_(i,(5));
-return self}, function($ctx1) {$ctx1.fill(self,"testWhileTrue",{i:i},smalltalk.BlockClosureTest)})},
-messageSends: ["whileTrue:", "+", "<", "assert:equals:", "whileTrue"]}),
-smalltalk.BlockClosureTest);
-
-
-
-smalltalk.addClass('BooleanTest', smalltalk.TestCase, [], 'Kernel-Tests');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testEquality",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._deny_((0).__eq(false));
-self._deny_(false.__eq((0)));
-self._deny_("".__eq(false));
-self._deny_(false.__eq(""));
-self._assert_(true.__eq(true));
-self._deny_(false.__eq(true));
-self._deny_(true.__eq(false));
-self._assert_(false.__eq(false));
-self._assert_(_st(true._yourself()).__eq(true));
-self._assert_(_st(true._yourself()).__eq(true._yourself()));
-return self}, function($ctx1) {$ctx1.fill(self,"testEquality",{},smalltalk.BooleanTest)})},
-messageSends: ["deny:", "=", "assert:", "yourself"]}),
-smalltalk.BooleanTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testIdentity",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._deny_((0).__eq_eq(false));
-self._deny_(false.__eq_eq((0)));
-self._deny_("".__eq_eq(false));
-self._deny_(false.__eq_eq(""));
-self._assert_(true.__eq_eq(true));
-self._deny_(false.__eq_eq(true));
-self._deny_(true.__eq_eq(false));
-self._assert_(false.__eq_eq(false));
-self._assert_(_st(true._yourself()).__eq_eq(true));
-self._assert_(_st(true._yourself()).__eq_eq(true._yourself()));
-return self}, function($ctx1) {$ctx1.fill(self,"testIdentity",{},smalltalk.BooleanTest)})},
-messageSends: ["deny:", "==", "assert:", "yourself"]}),
-smalltalk.BooleanTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testIfTrueIfFalse",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4,$5,$6,$7,$8,$9,$10,$11,$12,$13,$14,$15,$16;
-$1=self;
-if(smalltalk.assert(true)){
-$2="alternative block";
-};
-_st($1)._assert_equals_($2,"alternative block");
-$3=self;
-if(! smalltalk.assert(true)){
-$4="alternative block";
-};
-_st($3)._assert_equals_($4,nil);
-$5=self;
-if(smalltalk.assert(false)){
-$6="alternative block";
-};
-_st($5)._assert_equals_($6,nil);
-$7=self;
-if(! smalltalk.assert(false)){
-$8="alternative block";
-};
-_st($7)._assert_equals_($8,"alternative block");
-$9=self;
-if(smalltalk.assert(false)){
-$10="alternative block";
-} else {
-$10="alternative block2";
-};
-_st($9)._assert_equals_($10,"alternative block2");
-$11=self;
-if(smalltalk.assert(false)){
-$12="alternative block2";
-} else {
-$12="alternative block";
-};
-_st($11)._assert_equals_($12,"alternative block");
-$13=self;
-if(smalltalk.assert(true)){
-$14="alternative block";
-} else {
-$14="alternative block2";
-};
-_st($13)._assert_equals_($14,"alternative block");
-$15=self;
-if(smalltalk.assert(true)){
-$16="alternative block2";
-} else {
-$16="alternative block";
-};
-_st($15)._assert_equals_($16,"alternative block2");
-return self}, function($ctx1) {$ctx1.fill(self,"testIfTrueIfFalse",{},smalltalk.BooleanTest)})},
-messageSends: ["assert:equals:", "ifTrue:", "ifFalse:", "ifTrue:ifFalse:", "ifFalse:ifTrue:"]}),
-smalltalk.BooleanTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testIfTrueIfFalseWithBoxing",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$3,$2,$4,$6,$5,$7,$9,$8,$10,$12,$11,$13,$15,$14,$16,$18,$17,$19,$21,$20,$22,$24,$23;
-$1=self;
-$3=true._yourself();
-if(smalltalk.assert($3)){
-$2="alternative block";
-};
-_st($1)._assert_equals_($2,"alternative block");
-$4=self;
-$6=true._yourself();
-if(! smalltalk.assert($6)){
-$5="alternative block";
-};
-_st($4)._assert_equals_($5,nil);
-$7=self;
-$9=false._yourself();
-if(smalltalk.assert($9)){
-$8="alternative block";
-};
-_st($7)._assert_equals_($8,nil);
-$10=self;
-$12=false._yourself();
-if(! smalltalk.assert($12)){
-$11="alternative block";
-};
-_st($10)._assert_equals_($11,"alternative block");
-$13=self;
-$15=false._yourself();
-if(smalltalk.assert($15)){
-$14="alternative block";
-} else {
-$14="alternative block2";
-};
-_st($13)._assert_equals_($14,"alternative block2");
-$16=self;
-$18=false._yourself();
-if(smalltalk.assert($18)){
-$17="alternative block2";
-} else {
-$17="alternative block";
-};
-_st($16)._assert_equals_($17,"alternative block");
-$19=self;
-$21=true._yourself();
-if(smalltalk.assert($21)){
-$20="alternative block";
-} else {
-$20="alternative block2";
-};
-_st($19)._assert_equals_($20,"alternative block");
-$22=self;
-$24=true._yourself();
-if(smalltalk.assert($24)){
-$23="alternative block2";
-} else {
-$23="alternative block";
-};
-_st($22)._assert_equals_($23,"alternative block2");
-return self}, function($ctx1) {$ctx1.fill(self,"testIfTrueIfFalseWithBoxing",{},smalltalk.BooleanTest)})},
-messageSends: ["assert:equals:", "ifTrue:", "yourself", "ifFalse:", "ifTrue:ifFalse:", "ifFalse:ifTrue:"]}),
-smalltalk.BooleanTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testLogic",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4,$5,$6,$7,$8;
-$1=self;
-_st($1)._assert_(true.__and(true));
-_st($1)._deny_(true.__and(false));
-_st($1)._deny_(false.__and(true));
-$2=_st($1)._deny_(false.__and(false));
-$3=self;
-_st($3)._assert_(true.__or(true));
-_st($3)._assert_(true.__or(false));
-_st($3)._assert_(false.__or(true));
-$4=_st($3)._deny_(false.__or(false));
-$5=self;
-_st($5)._assert_(true.__and((1).__gt((0))));
-_st($5)._deny_(_st((1).__gt((0))).__and(false));
-$6=_st($5)._deny_(_st((1).__gt((0))).__and((1).__gt((2))));
-$7=self;
-_st($7)._assert_(false.__or((1).__gt((0))));
-_st($7)._assert_(_st((1).__gt((0))).__or(false));
-$8=_st($7)._assert_(_st((1).__gt((0))).__or((1).__gt((2))));
-return self}, function($ctx1) {$ctx1.fill(self,"testLogic",{},smalltalk.BooleanTest)})},
-messageSends: ["assert:", "&", "deny:", "|", ">"]}),
-smalltalk.BooleanTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testLogicKeywords",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4,$5,$6,$7,$8;
-$1=self;
-_st($1)._assert_(true._and_((function(){
-return smalltalk.withContext(function($ctx2) {
-return true;
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})})));
-_st($1)._deny_(true._and_((function(){
-return smalltalk.withContext(function($ctx2) {
-return false;
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})})));
-_st($1)._deny_(false._and_((function(){
-return smalltalk.withContext(function($ctx2) {
-return true;
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})})));
-$2=_st($1)._deny_(false._and_((function(){
-return smalltalk.withContext(function($ctx2) {
-return false;
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})})));
-$3=self;
-_st($3)._assert_(true._or_((function(){
-return smalltalk.withContext(function($ctx2) {
-return true;
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})})));
-_st($3)._assert_(true._or_((function(){
-return smalltalk.withContext(function($ctx2) {
-return false;
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})})));
-_st($3)._assert_(false._or_((function(){
-return smalltalk.withContext(function($ctx2) {
-return true;
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})})));
-$4=_st($3)._deny_(false._or_((function(){
-return smalltalk.withContext(function($ctx2) {
-return false;
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})})));
-$5=self;
-_st($5)._assert_(true._and_((function(){
-return smalltalk.withContext(function($ctx2) {
-return (1).__gt((0));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})})));
-_st($5)._deny_(_st((1).__gt((0)))._and_((function(){
-return smalltalk.withContext(function($ctx2) {
-return false;
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})})));
-$6=_st($5)._deny_(_st((1).__gt((0)))._and_((function(){
-return smalltalk.withContext(function($ctx2) {
-return (1).__gt((2));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})})));
-$7=self;
-_st($7)._assert_(false._or_((function(){
-return smalltalk.withContext(function($ctx2) {
-return (1).__gt((0));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})})));
-_st($7)._assert_(_st((1).__gt((0)))._or_((function(){
-return smalltalk.withContext(function($ctx2) {
-return false;
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})})));
-$8=_st($7)._assert_(_st((1).__gt((0)))._or_((function(){
-return smalltalk.withContext(function($ctx2) {
-return (1).__gt((2));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})})));
-return self}, function($ctx1) {$ctx1.fill(self,"testLogicKeywords",{},smalltalk.BooleanTest)})},
-messageSends: ["assert:", "and:", "deny:", "or:", ">"]}),
-smalltalk.BooleanTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testNonBooleanError",
-fn: function (){
-var self=this;
-function $NonBooleanReceiver(){return smalltalk.NonBooleanReceiver||(typeof NonBooleanReceiver=="undefined"?nil:NonBooleanReceiver)}
-return smalltalk.withContext(function($ctx1) { 
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-if(smalltalk.assert("")){
-} else {
-};
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$NonBooleanReceiver());
-return self}, function($ctx1) {$ctx1.fill(self,"testNonBooleanError",{},smalltalk.BooleanTest)})},
-messageSends: ["should:raise:", "ifTrue:ifFalse:"]}),
-smalltalk.BooleanTest);
-
-
-
-smalltalk.addClass('ClassBuilderTest', smalltalk.TestCase, ['builder', 'theClass'], 'Kernel-Tests');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "setUp",
-fn: function (){
-var self=this;
-function $ClassBuilder(){return smalltalk.ClassBuilder||(typeof ClassBuilder=="undefined"?nil:ClassBuilder)}
-return smalltalk.withContext(function($ctx1) { 
-self["@builder"]=_st($ClassBuilder())._new();
-return self}, function($ctx1) {$ctx1.fill(self,"setUp",{},smalltalk.ClassBuilderTest)})},
-messageSends: ["new"]}),
-smalltalk.ClassBuilderTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "tearDown",
-fn: function (){
-var self=this;
-function $Smalltalk(){return smalltalk.Smalltalk||(typeof Smalltalk=="undefined"?nil:Smalltalk)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@theClass"];
-if(($receiver = $1) == nil || $receiver == undefined){
-$1;
-} else {
-_st(_st($Smalltalk())._current())._removeClass_(self["@theClass"]);
-self["@theClass"]=nil;
-self["@theClass"];
-};
-return self}, function($ctx1) {$ctx1.fill(self,"tearDown",{},smalltalk.ClassBuilderTest)})},
-messageSends: ["ifNotNil:", "removeClass:", "current"]}),
-smalltalk.ClassBuilderTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testClassCopy",
-fn: function (){
-var self=this;
-function $ObjectMock(){return smalltalk.ObjectMock||(typeof ObjectMock=="undefined"?nil:ObjectMock)}
-return smalltalk.withContext(function($ctx1) { 
-self["@theClass"]=_st(self["@builder"])._copyClass_named_($ObjectMock(),"ObjectMock2");
-self._assert_(_st(_st(self["@theClass"])._superclass()).__eq_eq(_st($ObjectMock())._superclass()));
-self._assert_(_st(_st(self["@theClass"])._instanceVariableNames()).__eq_eq(_st($ObjectMock())._instanceVariableNames()));
-self._assert_equals_(_st(self["@theClass"])._name(),"ObjectMock2");
-self._assert_(_st(_st(self["@theClass"])._package()).__eq_eq(_st($ObjectMock())._package()));
-self._assert_equals_(_st(_st(self["@theClass"])._methodDictionary())._keys(),_st(_st($ObjectMock())._methodDictionary())._keys());
-return self}, function($ctx1) {$ctx1.fill(self,"testClassCopy",{},smalltalk.ClassBuilderTest)})},
-messageSends: ["copyClass:named:", "assert:", "==", "superclass", "instanceVariableNames", "assert:equals:", "name", "package", "keys", "methodDictionary"]}),
-smalltalk.ClassBuilderTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testClassMigration",
-fn: function (){
-var self=this;
-var instance,oldClass;
-function $ObjectMock(){return smalltalk.ObjectMock||(typeof ObjectMock=="undefined"?nil:ObjectMock)}
-function $Smalltalk(){return smalltalk.Smalltalk||(typeof Smalltalk=="undefined"?nil:Smalltalk)}
-function $ObjectMock2(){return smalltalk.ObjectMock2||(typeof ObjectMock2=="undefined"?nil:ObjectMock2)}
-return smalltalk.withContext(function($ctx1) { 
-oldClass=_st(self["@builder"])._copyClass_named_($ObjectMock(),"ObjectMock2");
-instance=_st(_st(_st($Smalltalk())._current())._at_("ObjectMock2"))._new();
-_st($ObjectMock())._subclass_instanceVariableNames_package_(_st(_st($Smalltalk())._current())._at_("ObjectMock2"),"","Kernel-Tests");
-self._deny_(_st(oldClass).__eq_eq($ObjectMock2()));
-self._assert_(_st(_st($ObjectMock2())._superclass()).__eq_eq($ObjectMock()));
-self._assert_(_st(_st($ObjectMock2())._instanceVariableNames())._isEmpty());
-self._assert_equals_(_st($ObjectMock2())._selectors(),_st(oldClass)._selectors());
-self._assert_equals_(_st($ObjectMock2())._comment(),_st(oldClass)._comment());
-self._assert_equals_(_st(_st($ObjectMock2())._package())._name(),"Kernel-Tests");
-self._deny_(_st(_st(instance)._class()).__eq_eq($ObjectMock2()));
-self._assert_(_st(_st(_st($Smalltalk())._current())._at_(_st(_st(instance)._class())._name()))._isNil());
-_st(_st($Smalltalk())._current())._removeClass_($ObjectMock2());
-return self}, function($ctx1) {$ctx1.fill(self,"testClassMigration",{instance:instance,oldClass:oldClass},smalltalk.ClassBuilderTest)})},
-messageSends: ["copyClass:named:", "new", "at:", "current", "subclass:instanceVariableNames:package:", "deny:", "==", "assert:", "superclass", "isEmpty", "instanceVariableNames", "assert:equals:", "selectors", "comment", "name", "package", "class", "isNil", "removeClass:"]}),
-smalltalk.ClassBuilderTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testClassMigrationWithClassInstanceVariables",
-fn: function (){
-var self=this;
-function $ObjectMock(){return smalltalk.ObjectMock||(typeof ObjectMock=="undefined"?nil:ObjectMock)}
-function $ObjectMock2(){return smalltalk.ObjectMock2||(typeof ObjectMock2=="undefined"?nil:ObjectMock2)}
-function $Smalltalk(){return smalltalk.Smalltalk||(typeof Smalltalk=="undefined"?nil:Smalltalk)}
-return smalltalk.withContext(function($ctx1) { 
-_st(self["@builder"])._copyClass_named_($ObjectMock(),"ObjectMock2");
-_st(_st($ObjectMock2())._class())._instanceVariableNames_("foo bar");
-_st($ObjectMock())._subclass_instanceVariableNames_package_(_st(_st($Smalltalk())._current())._at_("ObjectMock2"),"","Kernel-Tests");
-self._assert_equals_(_st(_st($ObjectMock2())._class())._instanceVariableNames(),["foo", "bar"]);
-_st(_st($Smalltalk())._current())._removeClass_($ObjectMock2());
-return self}, function($ctx1) {$ctx1.fill(self,"testClassMigrationWithClassInstanceVariables",{},smalltalk.ClassBuilderTest)})},
-messageSends: ["copyClass:named:", "instanceVariableNames:", "class", "subclass:instanceVariableNames:package:", "at:", "current", "assert:equals:", "instanceVariableNames", "removeClass:"]}),
-smalltalk.ClassBuilderTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testClassMigrationWithSubclasses",
-fn: function (){
-var self=this;
-function $ObjectMock(){return smalltalk.ObjectMock||(typeof ObjectMock=="undefined"?nil:ObjectMock)}
-function $ObjectMock2(){return smalltalk.ObjectMock2||(typeof ObjectMock2=="undefined"?nil:ObjectMock2)}
-function $ObjectMock3(){return smalltalk.ObjectMock3||(typeof ObjectMock3=="undefined"?nil:ObjectMock3)}
-function $Smalltalk(){return smalltalk.Smalltalk||(typeof Smalltalk=="undefined"?nil:Smalltalk)}
-function $ObjectMock4(){return smalltalk.ObjectMock4||(typeof ObjectMock4=="undefined"?nil:ObjectMock4)}
-return smalltalk.withContext(function($ctx1) { 
-_st(self["@builder"])._copyClass_named_($ObjectMock(),"ObjectMock2");
-_st($ObjectMock2())._subclass_instanceVariableNames_package_("ObjectMock3","","Kernel-Tests");
-_st($ObjectMock3())._subclass_instanceVariableNames_package_("ObjectMock4","","Kernel-Tests");
-_st($ObjectMock())._subclass_instanceVariableNames_package_(_st(_st($Smalltalk())._current())._at_("ObjectMock2"),"","Kernel-Tests");
-self._assert_(_st(_st($ObjectMock())._subclasses())._includes_($ObjectMock2()));
-self._assert_(_st(_st($ObjectMock2())._subclasses())._includes_($ObjectMock3()));
-self._assert_(_st(_st($ObjectMock3())._subclasses())._includes_($ObjectMock4()));
-_st(_st($ObjectMock())._allSubclasses())._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st($Smalltalk())._current())._removeClass_(each);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"testClassMigrationWithSubclasses",{},smalltalk.ClassBuilderTest)})},
-messageSends: ["copyClass:named:", "subclass:instanceVariableNames:package:", "at:", "current", "assert:", "includes:", "subclasses", "do:", "removeClass:", "allSubclasses"]}),
-smalltalk.ClassBuilderTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testInstanceVariableNames",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_(_st(self["@builder"])._instanceVariableNamesFor_("  hello   world   "),["hello", "world"]);
-return self}, function($ctx1) {$ctx1.fill(self,"testInstanceVariableNames",{},smalltalk.ClassBuilderTest)})},
-messageSends: ["assert:equals:", "instanceVariableNamesFor:"]}),
-smalltalk.ClassBuilderTest);
-
-
-
-smalltalk.addClass('CollectionTest', smalltalk.TestCase, [], 'Kernel-Tests');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "assertSameContents:as:",
-fn: function (aCollection,anotherCollection){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_(_st(_st(aCollection)._size()).__eq(_st(anotherCollection)._size()));
-_st(aCollection)._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return self._assert_(_st(_st(aCollection)._occurrencesOf_(each)).__eq(_st(anotherCollection)._occurrencesOf_(each)));
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"assertSameContents:as:",{aCollection:aCollection,anotherCollection:anotherCollection},smalltalk.CollectionTest)})},
-messageSends: ["assert:", "=", "size", "do:", "occurrencesOf:"]}),
-smalltalk.CollectionTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "collection",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._collectionClass())._withAll_(self._defaultValues());
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"collection",{},smalltalk.CollectionTest)})},
-messageSends: ["withAll:", "defaultValues", "collectionClass"]}),
-smalltalk.CollectionTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "collectionClass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._class())._collectionClass();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"collectionClass",{},smalltalk.CollectionTest)})},
-messageSends: ["collectionClass", "class"]}),
-smalltalk.CollectionTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "collectionWithDuplicates",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._collectionClass())._withAll_(["a", "b", "c", (1), (2), (1), "a"]);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"collectionWithDuplicates",{},smalltalk.CollectionTest)})},
-messageSends: ["withAll:", "collectionClass"]}),
-smalltalk.CollectionTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "defaultValues",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=[(1), (2), (3), (-4)];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"defaultValues",{},smalltalk.CollectionTest)})},
-messageSends: []}),
-smalltalk.CollectionTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isCollectionReadOnly",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return false;
-}, function($ctx1) {$ctx1.fill(self,"isCollectionReadOnly",{},smalltalk.CollectionTest)})},
-messageSends: []}),
-smalltalk.CollectionTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testAsArray",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assertSameContents_as_(self._collection(),_st(self._collection())._asArray());
-return self}, function($ctx1) {$ctx1.fill(self,"testAsArray",{},smalltalk.CollectionTest)})},
-messageSends: ["assertSameContents:as:", "collection", "asArray"]}),
-smalltalk.CollectionTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testAsOrderedCollection",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assertSameContents_as_(self._collection(),_st(self._collection())._asOrderedCollection());
-return self}, function($ctx1) {$ctx1.fill(self,"testAsOrderedCollection",{},smalltalk.CollectionTest)})},
-messageSends: ["assertSameContents:as:", "collection", "asOrderedCollection"]}),
-smalltalk.CollectionTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testAsSet",
-fn: function (){
-var self=this;
-var c,set;
-return smalltalk.withContext(function($ctx1) { 
-c=self._collectionWithDuplicates();
-set=_st(c)._asSet();
-self._assert_equals_(_st(set)._size(),(5));
-_st(c)._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return self._assert_(_st(set)._includes_(each));
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"testAsSet",{c:c,set:set},smalltalk.CollectionTest)})},
-messageSends: ["collectionWithDuplicates", "asSet", "assert:equals:", "size", "do:", "assert:", "includes:"]}),
-smalltalk.CollectionTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testCollect",
-fn: function (){
-var self=this;
-var newCollection;
-return smalltalk.withContext(function($ctx1) { 
-newCollection=[(1), (2), (3), (4)];
-self._assertSameContents_as_(_st(self._collection())._collect_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(each)._abs();
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})})),newCollection);
-return self}, function($ctx1) {$ctx1.fill(self,"testCollect",{newCollection:newCollection},smalltalk.CollectionTest)})},
-messageSends: ["assertSameContents:as:", "collect:", "abs", "collection"]}),
-smalltalk.CollectionTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testDetect",
-fn: function (){
-var self=this;
-function $Error(){return smalltalk.Error||(typeof Error=="undefined"?nil:Error)}
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_(_st(self._collection())._detect_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(each).__lt((0));
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})})),(-4));
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(self._collection())._detect_((function(each){
-return smalltalk.withContext(function($ctx3) {
-return _st(each).__eq((6));
-}, function($ctx3) {$ctx3.fillBlock({each:each},$ctx2)})}));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$Error());
-return self}, function($ctx1) {$ctx1.fill(self,"testDetect",{},smalltalk.CollectionTest)})},
-messageSends: ["assert:equals:", "detect:", "<", "collection", "should:raise:", "="]}),
-smalltalk.CollectionTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testDo",
-fn: function (){
-var self=this;
-var newCollection;
-function $OrderedCollection(){return smalltalk.OrderedCollection||(typeof OrderedCollection=="undefined"?nil:OrderedCollection)}
-return smalltalk.withContext(function($ctx1) { 
-newCollection=_st($OrderedCollection())._new();
-_st(self._collection())._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(newCollection)._add_(each);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-self._assertSameContents_as_(self._collection(),newCollection);
-return self}, function($ctx1) {$ctx1.fill(self,"testDo",{newCollection:newCollection},smalltalk.CollectionTest)})},
-messageSends: ["new", "do:", "add:", "collection", "assertSameContents:as:"]}),
-smalltalk.CollectionTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testIsEmpty",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_(_st(_st(self._collectionClass())._new())._isEmpty());
-self._deny_(_st(self._collection())._isEmpty());
-return self}, function($ctx1) {$ctx1.fill(self,"testIsEmpty",{},smalltalk.CollectionTest)})},
-messageSends: ["assert:", "isEmpty", "new", "collectionClass", "deny:", "collection"]}),
-smalltalk.CollectionTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testSelect",
-fn: function (){
-var self=this;
-var newCollection;
-return smalltalk.withContext(function($ctx1) { 
-newCollection=[(2), (-4)];
-self._assertSameContents_as_(_st(self._collection())._select_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(each)._even();
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})})),newCollection);
-return self}, function($ctx1) {$ctx1.fill(self,"testSelect",{newCollection:newCollection},smalltalk.CollectionTest)})},
-messageSends: ["assertSameContents:as:", "select:", "even", "collection"]}),
-smalltalk.CollectionTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testSize",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_(_st(_st(self._collectionClass())._new())._size(),(0));
-self._assert_equals_(_st(self._collection())._size(),(4));
-return self}, function($ctx1) {$ctx1.fill(self,"testSize",{},smalltalk.CollectionTest)})},
-messageSends: ["assert:equals:", "size", "new", "collectionClass", "collection"]}),
-smalltalk.CollectionTest);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "collectionClass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return nil;
-}, function($ctx1) {$ctx1.fill(self,"collectionClass",{},smalltalk.CollectionTest.klass)})},
-messageSends: []}),
-smalltalk.CollectionTest.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isAbstract",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._collectionClass())._isNil();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"isAbstract",{},smalltalk.CollectionTest.klass)})},
-messageSends: ["isNil", "collectionClass"]}),
-smalltalk.CollectionTest.klass);
-
-
-smalltalk.addClass('IndexableCollectionTest', smalltalk.CollectionTest, [], 'Kernel-Tests');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testAt",
-fn: function (){
-var self=this;
-function $Error(){return smalltalk.Error||(typeof Error=="undefined"?nil:Error)}
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_(_st(self._collection())._at_((4)),(-4));
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(self._collection())._at_((5));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$Error());
-return self}, function($ctx1) {$ctx1.fill(self,"testAt",{},smalltalk.IndexableCollectionTest)})},
-messageSends: ["assert:equals:", "at:", "collection", "should:raise:"]}),
-smalltalk.IndexableCollectionTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testAtIfAbsent",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_(_st(self._collection())._at_ifAbsent_(_st(_st(self._collection())._size()).__plus((1)),(function(){
-return smalltalk.withContext(function($ctx2) {
-return "none";
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})})),"none");
-return self}, function($ctx1) {$ctx1.fill(self,"testAtIfAbsent",{},smalltalk.IndexableCollectionTest)})},
-messageSends: ["assert:equals:", "at:ifAbsent:", "+", "size", "collection"]}),
-smalltalk.IndexableCollectionTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testContains",
-fn: function (){
-var self=this;
-var collection;
-function $Object(){return smalltalk.Object||(typeof Object=="undefined"?nil:Object)}
-return smalltalk.withContext(function($ctx1) { 
-collection=self._collection();
-self._assert_(_st(self._collection())._contains_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(each).__eq(_st(self._collection())._first());
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})})));
-self._deny_(_st(self._collection())._contains_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(each).__eq(_st($Object())._new());
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})})));
-return self}, function($ctx1) {$ctx1.fill(self,"testContains",{collection:collection},smalltalk.IndexableCollectionTest)})},
-messageSends: ["collection", "assert:", "contains:", "=", "first", "deny:", "new"]}),
-smalltalk.IndexableCollectionTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testIndexOf",
-fn: function (){
-var self=this;
-function $Error(){return smalltalk.Error||(typeof Error=="undefined"?nil:Error)}
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_(_st(self._collection())._indexOf_((2)),(2));
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(self._collection())._indexOf_((999));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$Error());
-self._assert_equals_(_st(self._collection())._indexOf_ifAbsent_((999),(function(){
-return smalltalk.withContext(function($ctx2) {
-return "sentinel";
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})})),"sentinel");
-return self}, function($ctx1) {$ctx1.fill(self,"testIndexOf",{},smalltalk.IndexableCollectionTest)})},
-messageSends: ["assert:equals:", "indexOf:", "collection", "should:raise:", "indexOf:ifAbsent:"]}),
-smalltalk.IndexableCollectionTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testWithIndexDo",
-fn: function (){
-var self=this;
-var collection;
-return smalltalk.withContext(function($ctx1) { 
-collection=self._collection();
-_st(self._collection())._withIndexDo_((function(each,index){
-return smalltalk.withContext(function($ctx2) {
-return self._assert_equals_(_st(collection)._at_(index),each);
-}, function($ctx2) {$ctx2.fillBlock({each:each,index:index},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"testWithIndexDo",{collection:collection},smalltalk.IndexableCollectionTest)})},
-messageSends: ["collection", "withIndexDo:", "assert:equals:", "at:"]}),
-smalltalk.IndexableCollectionTest);
-
-
-
-smalltalk.addClass('HashedCollectionTest', smalltalk.IndexableCollectionTest, [], 'Kernel-Tests');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "collection",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=smalltalk.HashedCollection._from_(["b".__minus_gt((1)),"a".__minus_gt((2)),"c".__minus_gt((3)),"d".__minus_gt((-4))]);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"collection",{},smalltalk.HashedCollectionTest)})},
-messageSends: ["->"]}),
-smalltalk.HashedCollectionTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "collectionWithDuplicates",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=smalltalk.HashedCollection._from_(["b".__minus_gt((1)),"a".__minus_gt((2)),"c".__minus_gt((3)),"d".__minus_gt((-4)),"e".__minus_gt((1)),"f".__minus_gt((2)),"g".__minus_gt((10))]);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"collectionWithDuplicates",{},smalltalk.HashedCollectionTest)})},
-messageSends: ["->"]}),
-smalltalk.HashedCollectionTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testAsDictionary",
-fn: function (){
-var self=this;
-function $Dictionary(){return smalltalk.Dictionary||(typeof Dictionary=="undefined"?nil:Dictionary)}
-return smalltalk.withContext(function($ctx1) { 
-self._assert_(_st(_st(_st(self._collectionClass())._new())._asDictionary())._isMemberOf_($Dictionary()));
-return self}, function($ctx1) {$ctx1.fill(self,"testAsDictionary",{},smalltalk.HashedCollectionTest)})},
-messageSends: ["assert:", "isMemberOf:", "asDictionary", "new", "collectionClass"]}),
-smalltalk.HashedCollectionTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testAt",
-fn: function (){
-var self=this;
-function $Error(){return smalltalk.Error||(typeof Error=="undefined"?nil:Error)}
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_(_st(self._collection())._at_("a"),(2));
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(self._collection())._at_((5));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$Error());
-return self}, function($ctx1) {$ctx1.fill(self,"testAt",{},smalltalk.HashedCollectionTest)})},
-messageSends: ["assert:equals:", "at:", "collection", "should:raise:"]}),
-smalltalk.HashedCollectionTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testContains",
-fn: function (){
-var self=this;
-var collection;
-function $Object(){return smalltalk.Object||(typeof Object=="undefined"?nil:Object)}
-return smalltalk.withContext(function($ctx1) { 
-collection=self._collection();
-self._assert_(_st(self._collection())._contains_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(each).__eq(_st(_st(self._collection())._values())._first());
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})})));
-self._deny_(_st(self._collection())._contains_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(each).__eq(_st($Object())._new());
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})})));
-return self}, function($ctx1) {$ctx1.fill(self,"testContains",{collection:collection},smalltalk.HashedCollectionTest)})},
-messageSends: ["collection", "assert:", "contains:", "=", "first", "values", "deny:", "new"]}),
-smalltalk.HashedCollectionTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testFrom",
-fn: function (){
-var self=this;
-var associations;
-return smalltalk.withContext(function($ctx1) { 
-associations=["a".__minus_gt((1)),"b".__minus_gt((2))];
-self._assertSameContents_as_(_st(_st(self._class())._collectionClass())._from_(associations),smalltalk.HashedCollection._from_(["a".__minus_gt((1)),"b".__minus_gt((2))]));
-return self}, function($ctx1) {$ctx1.fill(self,"testFrom",{associations:associations},smalltalk.HashedCollectionTest)})},
-messageSends: ["->", "assertSameContents:as:", "from:", "collectionClass", "class"]}),
-smalltalk.HashedCollectionTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testIndexOf",
-fn: function (){
-var self=this;
-function $Error(){return smalltalk.Error||(typeof Error=="undefined"?nil:Error)}
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_(_st(self._collection())._indexOf_((2)),"a");
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(self._collection())._indexOf_((999));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$Error());
-self._assert_equals_(_st(self._collection())._indexOf_ifAbsent_((999),(function(){
-return smalltalk.withContext(function($ctx2) {
-return "sentinel";
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})})),"sentinel");
-return self}, function($ctx1) {$ctx1.fill(self,"testIndexOf",{},smalltalk.HashedCollectionTest)})},
-messageSends: ["assert:equals:", "indexOf:", "collection", "should:raise:", "indexOf:ifAbsent:"]}),
-smalltalk.HashedCollectionTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testNewFromPairs",
-fn: function (){
-var self=this;
-var flattenedAssociations;
-return smalltalk.withContext(function($ctx1) { 
-flattenedAssociations=["a",(1),"b",(2)];
-self._assertSameContents_as_(_st(_st(self._class())._collectionClass())._newFromPairs_(flattenedAssociations),smalltalk.HashedCollection._from_(["a".__minus_gt((1)),"b".__minus_gt((2))]));
-return self}, function($ctx1) {$ctx1.fill(self,"testNewFromPairs",{flattenedAssociations:flattenedAssociations},smalltalk.HashedCollectionTest)})},
-messageSends: ["assertSameContents:as:", "newFromPairs:", "collectionClass", "class", "->"]}),
-smalltalk.HashedCollectionTest);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "collectionClass",
-fn: function (){
-var self=this;
-function $HashedCollection(){return smalltalk.HashedCollection||(typeof HashedCollection=="undefined"?nil:HashedCollection)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=$HashedCollection();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"collectionClass",{},smalltalk.HashedCollectionTest.klass)})},
-messageSends: []}),
-smalltalk.HashedCollectionTest.klass);
-
-
-smalltalk.addClass('DictionaryTest', smalltalk.HashedCollectionTest, [], 'Kernel-Tests');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "collection",
-fn: function (){
-var self=this;
-function $Dictionary(){return smalltalk.Dictionary||(typeof Dictionary=="undefined"?nil:Dictionary)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=_st($Dictionary())._new();
-_st($2)._at_put_((1),(1));
-_st($2)._at_put_("a",(2));
-_st($2)._at_put_(true,(3));
-_st($2)._at_put_((4),(-4));
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"collection",{},smalltalk.DictionaryTest)})},
-messageSends: ["at:put:", "new", "yourself"]}),
-smalltalk.DictionaryTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "collectionWithDuplicates",
-fn: function (){
-var self=this;
-function $Dictionary(){return smalltalk.Dictionary||(typeof Dictionary=="undefined"?nil:Dictionary)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=_st($Dictionary())._new();
-_st($2)._at_put_((1),(1));
-_st($2)._at_put_("a",(2));
-_st($2)._at_put_(true,(3));
-_st($2)._at_put_((4),(-4));
-_st($2)._at_put_("b",(1));
-_st($2)._at_put_((3),(3));
-_st($2)._at_put_(false,(12));
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"collectionWithDuplicates",{},smalltalk.DictionaryTest)})},
-messageSends: ["at:put:", "new", "yourself"]}),
-smalltalk.DictionaryTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testAccessing",
-fn: function (){
-var self=this;
-var d;
-function $Dictionary(){return smalltalk.Dictionary||(typeof Dictionary=="undefined"?nil:Dictionary)}
-return smalltalk.withContext(function($ctx1) { 
-d=_st($Dictionary())._new();
-_st(d)._at_put_("hello","world");
-self._assert_equals_(_st(d)._at_("hello"),"world");
-self._assert_equals_(_st(d)._at_ifAbsent_("hello",(function(){
-return smalltalk.withContext(function($ctx2) {
-return nil;
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})})),"world");
-self._deny_(_st(_st(d)._at_ifAbsent_("foo",(function(){
-return smalltalk.withContext(function($ctx2) {
-return nil;
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))).__eq("world"));
-self._assert_(_st(d)._includesKey_("hello"));
-self._deny_(_st(d)._includesKey_("foo"));
-_st(d)._at_put_((1),(2));
-self._assert_equals_(_st(d)._at_((1)),(2));
-_st(d)._at_put_((1).__at((3)),(3));
-self._assert_equals_(_st(d)._at_((1).__at((3))),(3));
-self._assert_(_st(d)._includesKey_((1).__at((3))));
-self._deny_(_st(d)._includesKey_((3).__at((1))));
-return self}, function($ctx1) {$ctx1.fill(self,"testAccessing",{d:d},smalltalk.DictionaryTest)})},
-messageSends: ["new", "at:put:", "assert:equals:", "at:", "at:ifAbsent:", "deny:", "=", "assert:", "includesKey:", "@"]}),
-smalltalk.DictionaryTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testAsHashedCollection",
-fn: function (){
-var self=this;
-function $HashedCollection(){return smalltalk.HashedCollection||(typeof HashedCollection=="undefined"?nil:HashedCollection)}
-return smalltalk.withContext(function($ctx1) { 
-self._assert_(_st(_st(_st(self._collectionClass())._new())._asHashedCollection())._isMemberOf_($HashedCollection()));
-return self}, function($ctx1) {$ctx1.fill(self,"testAsHashedCollection",{},smalltalk.DictionaryTest)})},
-messageSends: ["assert:", "isMemberOf:", "asHashedCollection", "new", "collectionClass"]}),
-smalltalk.DictionaryTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testDynamicDictionaries",
-fn: function (){
-var self=this;
-function $Dictionary(){return smalltalk.Dictionary||(typeof Dictionary=="undefined"?nil:Dictionary)}
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_(_st(smalltalk.HashedCollection._from_(["hello".__minus_gt((1))]))._asDictionary(),_st($Dictionary())._with_("hello".__minus_gt((1))));
-return self}, function($ctx1) {$ctx1.fill(self,"testDynamicDictionaries",{},smalltalk.DictionaryTest)})},
-messageSends: ["assert:equals:", "asDictionary", "->", "with:"]}),
-smalltalk.DictionaryTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testEquality",
-fn: function (){
-var self=this;
-var d1,d2;
-function $Dictionary(){return smalltalk.Dictionary||(typeof Dictionary=="undefined"?nil:Dictionary)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4,$5,$6,$7,$8,$9,$10;
-self._assert_(_st(_st($Dictionary())._new()).__eq(_st($Dictionary())._new()));
-$1=_st($Dictionary())._new();
-_st($1)._at_put_((1),(2));
-$2=_st($1)._yourself();
-d1=$2;
-$3=_st($Dictionary())._new();
-_st($3)._at_put_((1),(2));
-$4=_st($3)._yourself();
-d2=$4;
-self._assert_(_st(d1).__eq(d2));
-$5=_st($Dictionary())._new();
-_st($5)._at_put_((1),(3));
-$6=_st($5)._yourself();
-d2=$6;
-self._deny_(_st(d1).__eq(d2));
-$7=_st($Dictionary())._new();
-_st($7)._at_put_((2),(2));
-$8=_st($7)._yourself();
-d2=$8;
-self._deny_(_st(d1).__eq(d2));
-$9=_st($Dictionary())._new();
-_st($9)._at_put_((1),(2));
-_st($9)._at_put_((3),(4));
-$10=_st($9)._yourself();
-d2=$10;
-self._deny_(_st(d1).__eq(d2));
-return self}, function($ctx1) {$ctx1.fill(self,"testEquality",{d1:d1,d2:d2},smalltalk.DictionaryTest)})},
-messageSends: ["assert:", "=", "new", "at:put:", "yourself", "deny:"]}),
-smalltalk.DictionaryTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testIfAbsent",
-fn: function (){
-var self=this;
-var d,visited;
-function $Dictionary(){return smalltalk.Dictionary||(typeof Dictionary=="undefined"?nil:Dictionary)}
-return smalltalk.withContext(function($ctx1) { 
-visited=false;
-d=_st($Dictionary())._new();
-_st(d)._at_ifAbsent_("hello",(function(){
-return smalltalk.withContext(function($ctx2) {
-visited=true;
-return visited;
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-self._assert_(visited);
-return self}, function($ctx1) {$ctx1.fill(self,"testIfAbsent",{d:d,visited:visited},smalltalk.DictionaryTest)})},
-messageSends: ["new", "at:ifAbsent:", "assert:"]}),
-smalltalk.DictionaryTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testIfPresent",
-fn: function (){
-var self=this;
-var d,visited,absent;
-function $Dictionary(){return smalltalk.Dictionary||(typeof Dictionary=="undefined"?nil:Dictionary)}
-return smalltalk.withContext(function($ctx1) { 
-visited=false;
-d=_st($Dictionary())._new();
-_st(d)._at_put_("hello","world");
-_st(d)._at_ifPresent_("hello",(function(value){
-return smalltalk.withContext(function($ctx2) {
-visited=value;
-return visited;
-}, function($ctx2) {$ctx2.fillBlock({value:value},$ctx1)})}));
-self._assert_equals_(visited,"world");
-absent=_st(d)._at_ifPresent_("bye",(function(value){
-return smalltalk.withContext(function($ctx2) {
-visited=value;
-return visited;
-}, function($ctx2) {$ctx2.fillBlock({value:value},$ctx1)})}));
-self._assert_(_st(absent)._isNil());
-return self}, function($ctx1) {$ctx1.fill(self,"testIfPresent",{d:d,visited:visited,absent:absent},smalltalk.DictionaryTest)})},
-messageSends: ["new", "at:put:", "at:ifPresent:", "assert:equals:", "assert:", "isNil"]}),
-smalltalk.DictionaryTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testIfPresentIfAbsent",
-fn: function (){
-var self=this;
-var d,visited;
-function $Dictionary(){return smalltalk.Dictionary||(typeof Dictionary=="undefined"?nil:Dictionary)}
-return smalltalk.withContext(function($ctx1) { 
-visited=false;
-d=_st($Dictionary())._new();
-_st(d)._at_put_("hello","world");
-_st(d)._at_ifPresent_ifAbsent_("hello",(function(value){
-return smalltalk.withContext(function($ctx2) {
-visited=value;
-return visited;
-}, function($ctx2) {$ctx2.fillBlock({value:value},$ctx1)})}),(function(){
-return smalltalk.withContext(function($ctx2) {
-visited=true;
-return visited;
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-self._assert_equals_(visited,"world");
-_st(d)._at_ifPresent_ifAbsent_("buy",(function(value){
-return smalltalk.withContext(function($ctx2) {
-visited=value;
-return visited;
-}, function($ctx2) {$ctx2.fillBlock({value:value},$ctx1)})}),(function(){
-return smalltalk.withContext(function($ctx2) {
-visited=true;
-return visited;
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-self._assert_(visited);
-return self}, function($ctx1) {$ctx1.fill(self,"testIfPresentIfAbsent",{d:d,visited:visited},smalltalk.DictionaryTest)})},
-messageSends: ["new", "at:put:", "at:ifPresent:ifAbsent:", "assert:equals:", "assert:"]}),
-smalltalk.DictionaryTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testKeys",
-fn: function (){
-var self=this;
-var d;
-function $Dictionary(){return smalltalk.Dictionary||(typeof Dictionary=="undefined"?nil:Dictionary)}
-return smalltalk.withContext(function($ctx1) { 
-d=_st($Dictionary())._new();
-_st(d)._at_put_((1),(2));
-_st(d)._at_put_((2),(3));
-_st(d)._at_put_((3),(4));
-self._assert_equals_(_st(d)._keys(),[(1), (2), (3)]);
-return self}, function($ctx1) {$ctx1.fill(self,"testKeys",{d:d},smalltalk.DictionaryTest)})},
-messageSends: ["new", "at:put:", "assert:equals:", "keys"]}),
-smalltalk.DictionaryTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testPointKey",
-fn: function (){
-var self=this;
-var d;
-function $Dictionary(){return smalltalk.Dictionary||(typeof Dictionary=="undefined"?nil:Dictionary)}
-return smalltalk.withContext(function($ctx1) { 
-d=_st($Dictionary())._new();
-_st(d)._at_put_((1).__at((1)),"foo");
-self._assert_equals_(_st(d)._at_((1).__at((1))),"foo");
-_st(d)._at_put_((1).__at((1)),"bar");
-self._assert_equals_(_st(d)._at_((1).__at((1))),"bar");
-_st(d)._removeKey_((1).__at((1)));
-self._assert_equals_(_st(d)._at_ifAbsent_((1).__at((1)),(function(){
-return smalltalk.withContext(function($ctx2) {
-return "baz";
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})})),"baz");
-self._deny_(_st(d)._includesKey_((1).__at((1))));
-return self}, function($ctx1) {$ctx1.fill(self,"testPointKey",{d:d},smalltalk.DictionaryTest)})},
-messageSends: ["new", "at:put:", "@", "assert:equals:", "at:", "removeKey:", "at:ifAbsent:", "deny:", "includesKey:"]}),
-smalltalk.DictionaryTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testPrintString",
-fn: function (){
-var self=this;
-function $Dictionary(){return smalltalk.Dictionary||(typeof Dictionary=="undefined"?nil:Dictionary)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st($Dictionary())._new();
-_st($1)._at_put_("firstname","James");
-_st($1)._at_put_("lastname","Bond");
-$2=_st($1)._printString();
-self._assert_equals_($2,"a Dictionary ('firstname' -> 'James' , 'lastname' -> 'Bond')");
-return self}, function($ctx1) {$ctx1.fill(self,"testPrintString",{},smalltalk.DictionaryTest)})},
-messageSends: ["assert:equals:", "at:put:", "new", "printString"]}),
-smalltalk.DictionaryTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testRemoveKey",
-fn: function (){
-var self=this;
-var d,key;
-function $Dictionary(){return smalltalk.Dictionary||(typeof Dictionary=="undefined"?nil:Dictionary)}
-return smalltalk.withContext(function($ctx1) { 
-d=_st($Dictionary())._new();
-_st(d)._at_put_((1),(2));
-_st(d)._at_put_((2),(3));
-_st(d)._at_put_((3),(4));
-key=(2);
-self._assert_equals_(_st(d)._keys(),[(1), (2), (3)]);
-_st(d)._removeKey_(key);
-self._assert_equals_(_st(d)._keys(),[(1), (3)]);
-self._assert_equals_(_st(d)._values(),[(2), (4)]);
-self._deny_(_st(d)._includesKey_((2)));
-return self}, function($ctx1) {$ctx1.fill(self,"testRemoveKey",{d:d,key:key},smalltalk.DictionaryTest)})},
-messageSends: ["new", "at:put:", "assert:equals:", "keys", "removeKey:", "values", "deny:", "includesKey:"]}),
-smalltalk.DictionaryTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testRemoveKeyIfAbsent",
-fn: function (){
-var self=this;
-var d,key;
-function $Dictionary(){return smalltalk.Dictionary||(typeof Dictionary=="undefined"?nil:Dictionary)}
-return smalltalk.withContext(function($ctx1) { 
-d=_st($Dictionary())._new();
-_st(d)._at_put_((1),(2));
-_st(d)._at_put_((2),(3));
-_st(d)._at_put_((3),(4));
-key=(2);
-self._assert_equals_(_st(d)._removeKey_(key),(3));
-key=(3);
-self._assert_equals_(_st(d)._removeKey_ifAbsent_(key,(function(){
-return smalltalk.withContext(function($ctx2) {
-return (42);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})})),(4));
-key="why";
-self._assert_equals_(_st(d)._removeKey_ifAbsent_(key,(function(){
-return smalltalk.withContext(function($ctx2) {
-return (42);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})})),(42));
-return self}, function($ctx1) {$ctx1.fill(self,"testRemoveKeyIfAbsent",{d:d,key:key},smalltalk.DictionaryTest)})},
-messageSends: ["new", "at:put:", "assert:equals:", "removeKey:", "removeKey:ifAbsent:"]}),
-smalltalk.DictionaryTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testSize",
-fn: function (){
-var self=this;
-var d;
-function $Dictionary(){return smalltalk.Dictionary||(typeof Dictionary=="undefined"?nil:Dictionary)}
-return smalltalk.withContext(function($ctx1) { 
-d=_st($Dictionary())._new();
-self._assert_equals_(_st(d)._size(),(0));
-_st(d)._at_put_((1),(2));
-self._assert_equals_(_st(d)._size(),(1));
-_st(d)._at_put_((2),(3));
-self._assert_equals_(_st(d)._size(),(2));
-return self}, function($ctx1) {$ctx1.fill(self,"testSize",{d:d},smalltalk.DictionaryTest)})},
-messageSends: ["new", "assert:equals:", "size", "at:put:"]}),
-smalltalk.DictionaryTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testValues",
-fn: function (){
-var self=this;
-var d;
-function $Dictionary(){return smalltalk.Dictionary||(typeof Dictionary=="undefined"?nil:Dictionary)}
-return smalltalk.withContext(function($ctx1) { 
-d=_st($Dictionary())._new();
-_st(d)._at_put_((1),(2));
-_st(d)._at_put_((2),(3));
-_st(d)._at_put_((3),(4));
-self._assert_equals_(_st(d)._values(),[(2), (3), (4)]);
-return self}, function($ctx1) {$ctx1.fill(self,"testValues",{d:d},smalltalk.DictionaryTest)})},
-messageSends: ["new", "at:put:", "assert:equals:", "values"]}),
-smalltalk.DictionaryTest);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "collectionClass",
-fn: function (){
-var self=this;
-function $Dictionary(){return smalltalk.Dictionary||(typeof Dictionary=="undefined"?nil:Dictionary)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=$Dictionary();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"collectionClass",{},smalltalk.DictionaryTest.klass)})},
-messageSends: []}),
-smalltalk.DictionaryTest.klass);
-
-
-smalltalk.addClass('SequenceableCollectionTest', smalltalk.IndexableCollectionTest, [], 'Kernel-Tests');
-
-
-smalltalk.addClass('ArrayTest', smalltalk.SequenceableCollectionTest, [], 'Kernel-Tests');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testAtIfAbsent",
-fn: function (){
-var self=this;
-var array;
-return smalltalk.withContext(function($ctx1) { 
-array=["hello", "world"];
-self._assert_equals_(_st(array)._at_((1)),"hello");
-self._assert_equals_(_st(array)._at_((2)),"world");
-self._assert_equals_(_st(array)._at_ifAbsent_((2),(function(){
-return smalltalk.withContext(function($ctx2) {
-return "not found";
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})})),"world");
-self._assert_equals_(_st(array)._at_ifAbsent_((0),(function(){
-return smalltalk.withContext(function($ctx2) {
-return "not found";
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})})),"not found");
-self._assert_equals_(_st(array)._at_ifAbsent_((-10),(function(){
-return smalltalk.withContext(function($ctx2) {
-return "not found";
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})})),"not found");
-self._assert_equals_(_st(array)._at_ifAbsent_((3),(function(){
-return smalltalk.withContext(function($ctx2) {
-return "not found";
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})})),"not found");
-return self}, function($ctx1) {$ctx1.fill(self,"testAtIfAbsent",{array:array},smalltalk.ArrayTest)})},
-messageSends: ["assert:equals:", "at:", "at:ifAbsent:"]}),
-smalltalk.ArrayTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testFirstN",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_(_st([(1),(2),(3),(4),(5)])._first_((3)),[(1),(2),(3)]);
-return self}, function($ctx1) {$ctx1.fill(self,"testFirstN",{},smalltalk.ArrayTest)})},
-messageSends: ["assert:equals:", "first:"]}),
-smalltalk.ArrayTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testIfEmpty",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_(""._ifEmpty_((function(){
-return smalltalk.withContext(function($ctx2) {
-return "zork";
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})})),"zork");
-return self}, function($ctx1) {$ctx1.fill(self,"testIfEmpty",{},smalltalk.ArrayTest)})},
-messageSends: ["assert:equals:", "ifEmpty:"]}),
-smalltalk.ArrayTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testPrintString",
-fn: function (){
-var self=this;
-var array;
-function $Array(){return smalltalk.Array||(typeof Array=="undefined"?nil:Array)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4;
-array=_st($Array())._new();
-self._assert_equals_(_st(array)._printString(),"an Array ()");
-$1=array;
-_st($1)._add_((1));
-$2=_st($1)._add_((3));
-self._assert_equals_(_st(array)._printString(),"an Array (1 3)");
-_st(array)._add_("foo");
-self._assert_equals_(_st(array)._printString(),"an Array (1 3 'foo')");
-$3=array;
-_st($3)._remove_((1));
-$4=_st($3)._remove_((3));
-self._assert_equals_(_st(array)._printString(),"an Array ('foo')");
-_st(array)._addLast_((3));
-self._assert_equals_(_st(array)._printString(),"an Array ('foo' 3)");
-_st(array)._addLast_((3));
-self._assert_equals_(_st(array)._printString(),"an Array ('foo' 3 3)");
-return self}, function($ctx1) {$ctx1.fill(self,"testPrintString",{array:array},smalltalk.ArrayTest)})},
-messageSends: ["new", "assert:equals:", "printString", "add:", "remove:", "addLast:"]}),
-smalltalk.ArrayTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testRemoveFromTo",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_([(1), (2), (3), (4)]._removeFrom_to_((1),(3)),[(4)]);
-self._assert_equals_([(1), (2), (3), (4)]._removeFrom_to_((2),(3)),[(1), (4)]);
-self._assert_equals_([(1), (2), (3), (4)]._removeFrom_to_((2),(4)),[(1)]);
-return self}, function($ctx1) {$ctx1.fill(self,"testRemoveFromTo",{},smalltalk.ArrayTest)})},
-messageSends: ["assert:equals:", "removeFrom:to:"]}),
-smalltalk.ArrayTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testRemoveIndex",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_([(1), (2), (3), (4)]._removeIndex_((2)),[(1), (3), (4)]);
-self._assert_equals_([(1), (2), (3), (4)]._removeIndex_((1)),[(2), (3), (4)]);
-self._assert_equals_(["hello"]._removeIndex_((1)),[]);
-return self}, function($ctx1) {$ctx1.fill(self,"testRemoveIndex",{},smalltalk.ArrayTest)})},
-messageSends: ["assert:equals:", "removeIndex:"]}),
-smalltalk.ArrayTest);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "collectionClass",
-fn: function (){
-var self=this;
-function $Array(){return smalltalk.Array||(typeof Array=="undefined"?nil:Array)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=$Array();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"collectionClass",{},smalltalk.ArrayTest.klass)})},
-messageSends: []}),
-smalltalk.ArrayTest.klass);
-
-
-smalltalk.addClass('StringTest', smalltalk.SequenceableCollectionTest, [], 'Kernel-Tests');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "collection",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "hello";
-}, function($ctx1) {$ctx1.fill(self,"collection",{},smalltalk.StringTest)})},
-messageSends: []}),
-smalltalk.StringTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "collectionWithDuplicates",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "abbaerte";
-}, function($ctx1) {$ctx1.fill(self,"collectionWithDuplicates",{},smalltalk.StringTest)})},
-messageSends: []}),
-smalltalk.StringTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testAddRemove",
-fn: function (){
-var self=this;
-function $Error(){return smalltalk.Error||(typeof Error=="undefined"?nil:Error)}
-return smalltalk.withContext(function($ctx1) { 
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return "hello"._add_("a");
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$Error());
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return "hello"._remove_("h");
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$Error());
-return self}, function($ctx1) {$ctx1.fill(self,"testAddRemove",{},smalltalk.StringTest)})},
-messageSends: ["should:raise:", "add:", "remove:"]}),
-smalltalk.StringTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testAsArray",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_("hello"._asArray(),["h", "e", "l", "l", "o"]);
-return self}, function($ctx1) {$ctx1.fill(self,"testAsArray",{},smalltalk.StringTest)})},
-messageSends: ["assert:equals:", "asArray"]}),
-smalltalk.StringTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testAsNumber",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_("3"._asNumber(),(3));
-self._assert_equals_("-3"._asNumber(),(-3));
-self._assert_equals_("-1.5"._asNumber(),(-1.5));
-return self}, function($ctx1) {$ctx1.fill(self,"testAsNumber",{},smalltalk.StringTest)})},
-messageSends: ["assert:equals:", "asNumber"]}),
-smalltalk.StringTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testAt",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_("hello"._at_((1)),"h");
-self._assert_equals_("hello"._at_((5)),"o");
-self._assert_equals_("hello"._at_ifAbsent_((6),(function(){
-return smalltalk.withContext(function($ctx2) {
-return nil;
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})})),nil);
-return self}, function($ctx1) {$ctx1.fill(self,"testAt",{},smalltalk.StringTest)})},
-messageSends: ["assert:equals:", "at:", "at:ifAbsent:"]}),
-smalltalk.StringTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testAtPut",
-fn: function (){
-var self=this;
-function $Error(){return smalltalk.Error||(typeof Error=="undefined"?nil:Error)}
-return smalltalk.withContext(function($ctx1) { 
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return "hello"._at_put_((1),"a");
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$Error());
-return self}, function($ctx1) {$ctx1.fill(self,"testAtPut",{},smalltalk.StringTest)})},
-messageSends: ["should:raise:", "at:put:"]}),
-smalltalk.StringTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testCollect",
-fn: function (){
-var self=this;
-var newCollection;
-return smalltalk.withContext(function($ctx1) { 
-newCollection="hheelllloo";
-self._assertSameContents_as_(_st(self._collection())._collect_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(each).__comma(each);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})})),newCollection);
-return self}, function($ctx1) {$ctx1.fill(self,"testCollect",{newCollection:newCollection},smalltalk.StringTest)})},
-messageSends: ["assertSameContents:as:", "collect:", ",", "collection"]}),
-smalltalk.StringTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testCopyWithoutAll",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_("*hello* *world*"._copyWithoutAll_("*"),"hello world");
-return self}, function($ctx1) {$ctx1.fill(self,"testCopyWithoutAll",{},smalltalk.StringTest)})},
-messageSends: ["assert:equals:", "copyWithoutAll:"]}),
-smalltalk.StringTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testDetect",
-fn: function (){
-var self=this;
-function $Error(){return smalltalk.Error||(typeof Error=="undefined"?nil:Error)}
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_(_st(self._collection())._detect_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(each).__eq("h");
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})})),"h");
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(self._collection())._detect_((function(each){
-return smalltalk.withContext(function($ctx3) {
-return _st(each).__eq((6));
-}, function($ctx3) {$ctx3.fillBlock({each:each},$ctx2)})}));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$Error());
-return self}, function($ctx1) {$ctx1.fill(self,"testDetect",{},smalltalk.StringTest)})},
-messageSends: ["assert:equals:", "detect:", "=", "collection", "should:raise:"]}),
-smalltalk.StringTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testEquality",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_("hello","hello");
-self._deny_("hello".__eq("world"));
-self._deny_("hello".__eq([]._at_ifAbsent_((1),(function(){
-return smalltalk.withContext(function($ctx2) {
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))));
-self._assert_equals_("hello","hello"._yourself());
-self._assert_equals_("hello"._yourself(),"hello");
-self._deny_("".__eq((0)));
-return self}, function($ctx1) {$ctx1.fill(self,"testEquality",{},smalltalk.StringTest)})},
-messageSends: ["assert:equals:", "deny:", "=", "at:ifAbsent:", "yourself"]}),
-smalltalk.StringTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testIdentity",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_("hello".__eq_eq("hello"));
-self._deny_("hello".__eq_eq("world"));
-self._assert_("hello".__eq_eq("hello"._yourself()));
-self._assert_(_st("hello"._yourself()).__eq_eq("hello"));
-self._deny_("".__eq_eq((0)));
-return self}, function($ctx1) {$ctx1.fill(self,"testIdentity",{},smalltalk.StringTest)})},
-messageSends: ["assert:", "==", "deny:", "yourself"]}),
-smalltalk.StringTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testIncludesSubString",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_("amber"._includesSubString_("ber"));
-self._deny_("amber"._includesSubString_("zork"));
-return self}, function($ctx1) {$ctx1.fill(self,"testIncludesSubString",{},smalltalk.StringTest)})},
-messageSends: ["assert:", "includesSubString:", "deny:"]}),
-smalltalk.StringTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testIndexOf",
-fn: function (){
-var self=this;
-function $Error(){return smalltalk.Error||(typeof Error=="undefined"?nil:Error)}
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_(_st(self._collection())._indexOf_("e"),(2));
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(self._collection())._indexOf_((999));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$Error());
-self._assert_equals_(_st(self._collection())._indexOf_ifAbsent_((999),(function(){
-return smalltalk.withContext(function($ctx2) {
-return "sentinel";
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})})),"sentinel");
-return self}, function($ctx1) {$ctx1.fill(self,"testIndexOf",{},smalltalk.StringTest)})},
-messageSends: ["assert:equals:", "indexOf:", "collection", "should:raise:", "indexOf:ifAbsent:"]}),
-smalltalk.StringTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testJoin",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_(","._join_(["hello", "world"]),"hello,world");
-return self}, function($ctx1) {$ctx1.fill(self,"testJoin",{},smalltalk.StringTest)})},
-messageSends: ["assert:equals:", "join:"]}),
-smalltalk.StringTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testSelect",
-fn: function (){
-var self=this;
-var newCollection;
-return smalltalk.withContext(function($ctx1) { 
-newCollection="o";
-self._assertSameContents_as_(_st(self._collection())._select_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(each).__eq("o");
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})})),newCollection);
-return self}, function($ctx1) {$ctx1.fill(self,"testSelect",{newCollection:newCollection},smalltalk.StringTest)})},
-messageSends: ["assertSameContents:as:", "select:", "=", "collection"]}),
-smalltalk.StringTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testSize",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_("smalltalk"._size(),(9));
-self._assert_equals_(""._size(),(0));
-return self}, function($ctx1) {$ctx1.fill(self,"testSize",{},smalltalk.StringTest)})},
-messageSends: ["assert:equals:", "size"]}),
-smalltalk.StringTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testStreamContents",
-fn: function (){
-var self=this;
-function $String(){return smalltalk.String||(typeof String=="undefined"?nil:String)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-self._assert_equals_(_st($String())._streamContents_((function(aStream){
-return smalltalk.withContext(function($ctx2) {
-$1=aStream;
-_st($1)._nextPutAll_("hello");
-_st($1)._space();
-$2=_st($1)._nextPutAll_("world");
-return $2;
-}, function($ctx2) {$ctx2.fillBlock({aStream:aStream},$ctx1)})})),"hello world");
-return self}, function($ctx1) {$ctx1.fill(self,"testStreamContents",{},smalltalk.StringTest)})},
-messageSends: ["assert:equals:", "streamContents:", "nextPutAll:", "space"]}),
-smalltalk.StringTest);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "collectionClass",
-fn: function (){
-var self=this;
-function $String(){return smalltalk.String||(typeof String=="undefined"?nil:String)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=$String();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"collectionClass",{},smalltalk.StringTest.klass)})},
-messageSends: []}),
-smalltalk.StringTest.klass);
-
-
-smalltalk.addClass('ConsoleTranscriptTest', smalltalk.TestCase, [], 'Kernel-Tests');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testShow",
-fn: function (){
-var self=this;
-var originalTranscript;
-function $Transcript(){return smalltalk.Transcript||(typeof Transcript=="undefined"?nil:Transcript)}
-function $ConsoleTranscript(){return smalltalk.ConsoleTranscript||(typeof ConsoleTranscript=="undefined"?nil:ConsoleTranscript)}
-function $Error(){return smalltalk.Error||(typeof Error=="undefined"?nil:Error)}
-return smalltalk.withContext(function($ctx1) { 
-originalTranscript=_st($Transcript())._current();
-_st($Transcript())._register_(_st($ConsoleTranscript())._new());
-self._shouldnt_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st($Transcript())._show_("Hello console!");
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$Error());
-self._shouldnt_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st($Transcript())._show_(console);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$Error());
-_st($Transcript())._register_(originalTranscript);
-return self}, function($ctx1) {$ctx1.fill(self,"testShow",{originalTranscript:originalTranscript},smalltalk.ConsoleTranscriptTest)})},
-messageSends: ["current", "register:", "new", "shouldnt:raise:", "show:"]}),
-smalltalk.ConsoleTranscriptTest);
-
-
-
-smalltalk.addClass('JSObjectProxyTest', smalltalk.TestCase, [], 'Kernel-Tests');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "jsObject",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return jsObject = {a: 1, b: function() {return 2;}, c: function(object) {return object;}, d: '', 'e': null, 'f': undefined};
-return self}, function($ctx1) {$ctx1.fill(self,"jsObject",{},smalltalk.JSObjectProxyTest)})},
-messageSends: []}),
-smalltalk.JSObjectProxyTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testAtIfAbsent",
-fn: function (){
-var self=this;
-var testObject;
-return smalltalk.withContext(function($ctx1) { 
-testObject=self._jsObject();
-self._assert_equals_(_st(testObject)._at_ifAbsent_("abc",(function(){
-return smalltalk.withContext(function($ctx2) {
-return "Property does not exist";
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})})),"Property does not exist");
-self._assert_equals_(_st(testObject)._at_ifAbsent_("e",(function(){
-return smalltalk.withContext(function($ctx2) {
-return "Property does not exist";
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})})),nil);
-self._assert_equals_(_st(testObject)._at_ifAbsent_("a",(function(){
-return smalltalk.withContext(function($ctx2) {
-return "Property does not exist";
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})})),(1));
-self._assert_equals_(_st(testObject)._at_ifAbsent_("f",(function(){
-return smalltalk.withContext(function($ctx2) {
-return "Property does not exist";
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})})),nil);
-return self}, function($ctx1) {$ctx1.fill(self,"testAtIfAbsent",{testObject:testObject},smalltalk.JSObjectProxyTest)})},
-messageSends: ["jsObject", "assert:equals:", "at:ifAbsent:"]}),
-smalltalk.JSObjectProxyTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testAtIfPresent",
-fn: function (){
-var self=this;
-var testObject;
-return smalltalk.withContext(function($ctx1) { 
-testObject=self._jsObject();
-self._assert_equals_(_st(testObject)._at_ifPresent_("abc",(function(x){
-return smalltalk.withContext(function($ctx2) {
-return "hello ".__comma(_st(x)._asString());
-}, function($ctx2) {$ctx2.fillBlock({x:x},$ctx1)})})),nil);
-self._assert_equals_(_st(testObject)._at_ifPresent_("e",(function(x){
-return smalltalk.withContext(function($ctx2) {
-return "hello ".__comma(_st(x)._asString());
-}, function($ctx2) {$ctx2.fillBlock({x:x},$ctx1)})})),"hello nil");
-self._assert_equals_(_st(testObject)._at_ifPresent_("a",(function(x){
-return smalltalk.withContext(function($ctx2) {
-return "hello ".__comma(_st(x)._asString());
-}, function($ctx2) {$ctx2.fillBlock({x:x},$ctx1)})})),"hello 1");
-self._assert_equals_(_st(testObject)._at_ifPresent_("f",(function(x){
-return smalltalk.withContext(function($ctx2) {
-return "hello ".__comma(_st(x)._asString());
-}, function($ctx2) {$ctx2.fillBlock({x:x},$ctx1)})})),"hello nil");
-return self}, function($ctx1) {$ctx1.fill(self,"testAtIfPresent",{testObject:testObject},smalltalk.JSObjectProxyTest)})},
-messageSends: ["jsObject", "assert:equals:", "at:ifPresent:", ",", "asString"]}),
-smalltalk.JSObjectProxyTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testAtIfPresentIfAbsent",
-fn: function (){
-var self=this;
-var testObject;
-return smalltalk.withContext(function($ctx1) { 
-testObject=self._jsObject();
-self._assert_equals_(_st(testObject)._at_ifPresent_ifAbsent_("abc",(function(x){
-return smalltalk.withContext(function($ctx2) {
-return "hello ".__comma(_st(x)._asString());
-}, function($ctx2) {$ctx2.fillBlock({x:x},$ctx1)})}),(function(){
-return smalltalk.withContext(function($ctx2) {
-return "not present";
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})})),"not present");
-self._assert_equals_(_st(testObject)._at_ifPresent_ifAbsent_("e",(function(x){
-return smalltalk.withContext(function($ctx2) {
-return "hello ".__comma(_st(x)._asString());
-}, function($ctx2) {$ctx2.fillBlock({x:x},$ctx1)})}),(function(){
-return smalltalk.withContext(function($ctx2) {
-return "not present";
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})})),"hello nil");
-self._assert_equals_(_st(testObject)._at_ifPresent_ifAbsent_("a",(function(x){
-return smalltalk.withContext(function($ctx2) {
-return "hello ".__comma(_st(x)._asString());
-}, function($ctx2) {$ctx2.fillBlock({x:x},$ctx1)})}),(function(){
-return smalltalk.withContext(function($ctx2) {
-return "not present";
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})})),"hello 1");
-self._assert_equals_(_st(testObject)._at_ifPresent_ifAbsent_("f",(function(x){
-return smalltalk.withContext(function($ctx2) {
-return "hello ".__comma(_st(x)._asString());
-}, function($ctx2) {$ctx2.fillBlock({x:x},$ctx1)})}),(function(){
-return smalltalk.withContext(function($ctx2) {
-return "not present";
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})})),"hello nil");
-return self}, function($ctx1) {$ctx1.fill(self,"testAtIfPresentIfAbsent",{testObject:testObject},smalltalk.JSObjectProxyTest)})},
-messageSends: ["jsObject", "assert:equals:", "at:ifPresent:ifAbsent:", ",", "asString"]}),
-smalltalk.JSObjectProxyTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testDNU",
-fn: function (){
-var self=this;
-function $MessageNotUnderstood(){return smalltalk.MessageNotUnderstood||(typeof MessageNotUnderstood=="undefined"?nil:MessageNotUnderstood)}
-return smalltalk.withContext(function($ctx1) { 
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(self._jsObject())._foo();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$MessageNotUnderstood());
-return self}, function($ctx1) {$ctx1.fill(self,"testDNU",{},smalltalk.JSObjectProxyTest)})},
-messageSends: ["should:raise:", "foo", "jsObject"]}),
-smalltalk.JSObjectProxyTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testMessageSend",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_(_st(self._jsObject())._a(),(1));
-self._assert_equals_(_st(self._jsObject())._b(),(2));
-self._assert_equals_(_st(self._jsObject())._c_((3)),(3));
-return self}, function($ctx1) {$ctx1.fill(self,"testMessageSend",{},smalltalk.JSObjectProxyTest)})},
-messageSends: ["assert:equals:", "a", "jsObject", "b", "c:"]}),
-smalltalk.JSObjectProxyTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testMethodWithArguments",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_(_st(self._jsObject())._c_((1)),(1));
-return self}, function($ctx1) {$ctx1.fill(self,"testMethodWithArguments",{},smalltalk.JSObjectProxyTest)})},
-messageSends: ["assert:equals:", "c:", "jsObject"]}),
-smalltalk.JSObjectProxyTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testPrinting",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_(_st(self._jsObject())._printString(),"[object Object]");
-return self}, function($ctx1) {$ctx1.fill(self,"testPrinting",{},smalltalk.JSObjectProxyTest)})},
-messageSends: ["assert:equals:", "printString", "jsObject"]}),
-smalltalk.JSObjectProxyTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testPropertyThatReturnsEmptyString",
-fn: function (){
-var self=this;
-var object;
-return smalltalk.withContext(function($ctx1) { 
-object=self._jsObject();
-self._assert_equals_(_st(object)._d(),"");
-_st(object)._d_("hello");
-self._assert_equals_(_st(object)._d(),"hello");
-return self}, function($ctx1) {$ctx1.fill(self,"testPropertyThatReturnsEmptyString",{object:object},smalltalk.JSObjectProxyTest)})},
-messageSends: ["jsObject", "assert:equals:", "d", "d:"]}),
-smalltalk.JSObjectProxyTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testPropertyThatReturnsUndefined",
-fn: function (){
-var self=this;
-var object;
-function $MessageNotUnderstood(){return smalltalk.MessageNotUnderstood||(typeof MessageNotUnderstood=="undefined"?nil:MessageNotUnderstood)}
-return smalltalk.withContext(function($ctx1) { 
-object=self._jsObject();
-self._shouldnt_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(object)._e();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$MessageNotUnderstood());
-self._assert_(_st(_st(object)._e())._isNil());
-return self}, function($ctx1) {$ctx1.fill(self,"testPropertyThatReturnsUndefined",{object:object},smalltalk.JSObjectProxyTest)})},
-messageSends: ["jsObject", "shouldnt:raise:", "e", "assert:", "isNil"]}),
-smalltalk.JSObjectProxyTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testValue",
-fn: function (){
-var self=this;
-var testObject;
-return smalltalk.withContext(function($ctx1) { 
-testObject=self._jsObject();
-self._assert_equals_(_st(_st(testObject)._value())._printString(),"[object Object]");
-_st(testObject)._at_put_("value","aValue");
-self._assert_equals_(_st(testObject)._value(),"aValue");
-return self}, function($ctx1) {$ctx1.fill(self,"testValue",{testObject:testObject},smalltalk.JSObjectProxyTest)})},
-messageSends: ["jsObject", "assert:equals:", "printString", "value", "at:put:"]}),
-smalltalk.JSObjectProxyTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testYourself",
-fn: function (){
-var self=this;
-var object;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=self._jsObject();
-_st($1)._d_("test");
-$2=_st($1)._yourself();
-object=$2;
-self._assert_equals_(_st(object)._d(),"test");
-return self}, function($ctx1) {$ctx1.fill(self,"testYourself",{object:object},smalltalk.JSObjectProxyTest)})},
-messageSends: ["d:", "jsObject", "yourself", "assert:equals:", "d"]}),
-smalltalk.JSObjectProxyTest);
-
-
-
-smalltalk.addClass('JavaScriptExceptionTest', smalltalk.TestCase, [], 'Kernel-Tests');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testCatchingException",
-fn: function (){
-var self=this;
-function $Error(){return smalltalk.Error||(typeof Error=="undefined"?nil:Error)}
-return smalltalk.withContext(function($ctx1) { 
-_st((function(){
-return smalltalk.withContext(function($ctx2) {
-return self._throwException();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._on_do_($Error(),(function(error){
-return smalltalk.withContext(function($ctx2) {
-return self._assert_(_st(_st(error)._exception()).__eq("test"));
-}, function($ctx2) {$ctx2.fillBlock({error:error},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"testCatchingException",{},smalltalk.JavaScriptExceptionTest)})},
-messageSends: ["on:do:", "assert:", "=", "exception", "throwException"]}),
-smalltalk.JavaScriptExceptionTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testRaisingException",
-fn: function (){
-var self=this;
-function $JavaScriptException(){return smalltalk.JavaScriptException||(typeof JavaScriptException=="undefined"?nil:JavaScriptException)}
-return smalltalk.withContext(function($ctx1) { 
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return self._throwException();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$JavaScriptException());
-return self}, function($ctx1) {$ctx1.fill(self,"testRaisingException",{},smalltalk.JavaScriptExceptionTest)})},
-messageSends: ["should:raise:", "throwException"]}),
-smalltalk.JavaScriptExceptionTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "throwException",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-throw 'test';
-return self}, function($ctx1) {$ctx1.fill(self,"throwException",{},smalltalk.JavaScriptExceptionTest)})},
-messageSends: []}),
-smalltalk.JavaScriptExceptionTest);
-
-
-
-smalltalk.addClass('LegacyPackageHandlerTest', smalltalk.TestCase, ['zorkPackage', 'grulPackage', 'backUpCommitPathJs', 'backUpCommitPathSt'], 'Kernel-Tests');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "setUp",
-fn: function (){
-var self=this;
-function $LegacyPackageHandler(){return smalltalk.LegacyPackageHandler||(typeof LegacyPackageHandler=="undefined"?nil:LegacyPackageHandler)}
-function $Package(){return smalltalk.Package||(typeof Package=="undefined"?nil:Package)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-self["@backUpCommitPathJs"]=_st($LegacyPackageHandler())._defaultCommitPathJs();
-self["@backUpCommitPathSt"]=_st($LegacyPackageHandler())._defaultCommitPathSt();
-_st($LegacyPackageHandler())._resetCommitPaths();
-self["@zorkPackage"]=_st(_st($Package())._new())._name_("Zork");
-$1=_st($Package())._new();
-_st($1)._name_("Grul");
-_st($1)._commitPathJs_("server/grul/js");
-_st($1)._commitPathSt_("grul/st");
-$2=_st($1)._yourself();
-self["@grulPackage"]=$2;
-return self}, function($ctx1) {$ctx1.fill(self,"setUp",{},smalltalk.LegacyPackageHandlerTest)})},
-messageSends: ["defaultCommitPathJs", "defaultCommitPathSt", "resetCommitPaths", "name:", "new", "commitPathJs:", "commitPathSt:", "yourself"]}),
-smalltalk.LegacyPackageHandlerTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "tearDown",
-fn: function (){
-var self=this;
-function $LegacyPackageHandler(){return smalltalk.LegacyPackageHandler||(typeof LegacyPackageHandler=="undefined"?nil:LegacyPackageHandler)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=$LegacyPackageHandler();
-_st($1)._defaultCommitPathJs_(self["@backUpCommitPathJs"]);
-$2=_st($1)._defaultCommitPathSt_(self["@backUpCommitPathSt"]);
-return self}, function($ctx1) {$ctx1.fill(self,"tearDown",{},smalltalk.LegacyPackageHandlerTest)})},
-messageSends: ["defaultCommitPathJs:", "defaultCommitPathSt:"]}),
-smalltalk.LegacyPackageHandlerTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testGrulCommitPathJsShouldBeServerGrulJs",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_(_st(self["@grulPackage"])._commitPathJs(),"server/grul/js");
-return self}, function($ctx1) {$ctx1.fill(self,"testGrulCommitPathJsShouldBeServerGrulJs",{},smalltalk.LegacyPackageHandlerTest)})},
-messageSends: ["assert:equals:", "commitPathJs"]}),
-smalltalk.LegacyPackageHandlerTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testGrulCommitPathStShouldBeGrulSt",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_(_st(self["@grulPackage"])._commitPathSt(),"grul/st");
-return self}, function($ctx1) {$ctx1.fill(self,"testGrulCommitPathStShouldBeGrulSt",{},smalltalk.LegacyPackageHandlerTest)})},
-messageSends: ["assert:equals:", "commitPathSt"]}),
-smalltalk.LegacyPackageHandlerTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testZorkCommitPathJsShouldBeJs",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_(_st(self["@zorkPackage"])._commitPathJs(),"js");
-return self}, function($ctx1) {$ctx1.fill(self,"testZorkCommitPathJsShouldBeJs",{},smalltalk.LegacyPackageHandlerTest)})},
-messageSends: ["assert:equals:", "commitPathJs"]}),
-smalltalk.LegacyPackageHandlerTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testZorkCommitPathStShouldBeSt",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_(_st(self["@zorkPackage"])._commitPathSt(),"st");
-return self}, function($ctx1) {$ctx1.fill(self,"testZorkCommitPathStShouldBeSt",{},smalltalk.LegacyPackageHandlerTest)})},
-messageSends: ["assert:equals:", "commitPathSt"]}),
-smalltalk.LegacyPackageHandlerTest);
-
-
-
-smalltalk.addClass('LegacyPackageHandlerTestWithDefaultsChanged', smalltalk.LegacyPackageHandlerTest, [], 'Kernel-Tests');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "setUp",
-fn: function (){
-var self=this;
-function $LegacyPackageHandler(){return smalltalk.LegacyPackageHandler||(typeof LegacyPackageHandler=="undefined"?nil:LegacyPackageHandler)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-smalltalk.LegacyPackageHandlerTestWithDefaultsChanged.superclass.fn.prototype._setUp.apply(_st(self), []);
-$1=$LegacyPackageHandler();
-_st($1)._defaultCommitPathJs_("javascripts/");
-$2=_st($1)._defaultCommitPathSt_("smalltalk/");
-return self}, function($ctx1) {$ctx1.fill(self,"setUp",{},smalltalk.LegacyPackageHandlerTestWithDefaultsChanged)})},
-messageSends: ["setUp", "defaultCommitPathJs:", "defaultCommitPathSt:"]}),
-smalltalk.LegacyPackageHandlerTestWithDefaultsChanged);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testGrulCommitPathJsShouldBeServerGrulJs",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_(_st(self["@grulPackage"])._commitPathJs(),"server/grul/js");
-return self}, function($ctx1) {$ctx1.fill(self,"testGrulCommitPathJsShouldBeServerGrulJs",{},smalltalk.LegacyPackageHandlerTestWithDefaultsChanged)})},
-messageSends: ["assert:equals:", "commitPathJs"]}),
-smalltalk.LegacyPackageHandlerTestWithDefaultsChanged);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testGrulCommitPathStShouldBeGrulSt",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_(_st(self["@grulPackage"])._commitPathSt(),"grul/st");
-return self}, function($ctx1) {$ctx1.fill(self,"testGrulCommitPathStShouldBeGrulSt",{},smalltalk.LegacyPackageHandlerTestWithDefaultsChanged)})},
-messageSends: ["assert:equals:", "commitPathSt"]}),
-smalltalk.LegacyPackageHandlerTestWithDefaultsChanged);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testZorkCommitPathJsShouldBeJavascript",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_(_st(self["@zorkPackage"])._commitPathJs(),"javascripts/");
-return self}, function($ctx1) {$ctx1.fill(self,"testZorkCommitPathJsShouldBeJavascript",{},smalltalk.LegacyPackageHandlerTestWithDefaultsChanged)})},
-messageSends: ["assert:equals:", "commitPathJs"]}),
-smalltalk.LegacyPackageHandlerTestWithDefaultsChanged);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testZorkCommitPathStShouldBeSmalltalk",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_(_st(self["@zorkPackage"])._commitPathSt(),"smalltalk/");
-return self}, function($ctx1) {$ctx1.fill(self,"testZorkCommitPathStShouldBeSmalltalk",{},smalltalk.LegacyPackageHandlerTestWithDefaultsChanged)})},
-messageSends: ["assert:equals:", "commitPathSt"]}),
-smalltalk.LegacyPackageHandlerTestWithDefaultsChanged);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "shouldInheritSelectors",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return false;
-}, function($ctx1) {$ctx1.fill(self,"shouldInheritSelectors",{},smalltalk.LegacyPackageHandlerTestWithDefaultsChanged.klass)})},
-messageSends: []}),
-smalltalk.LegacyPackageHandlerTestWithDefaultsChanged.klass);
-
-
-smalltalk.addClass('MessageSendTest', smalltalk.TestCase, [], 'Kernel-Tests');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testValue",
-fn: function (){
-var self=this;
-var messageSend;
-function $Object(){return smalltalk.Object||(typeof Object=="undefined"?nil:Object)}
-function $MessageSend(){return smalltalk.MessageSend||(typeof MessageSend=="undefined"?nil:MessageSend)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st($MessageSend())._new();
-_st($1)._receiver_(_st($Object())._new());
-_st($1)._selector_("asString");
-$2=_st($1)._yourself();
-messageSend=$2;
-self._assert_equals_(_st(messageSend)._value(),"an Object");
-return self}, function($ctx1) {$ctx1.fill(self,"testValue",{messageSend:messageSend},smalltalk.MessageSendTest)})},
-messageSends: ["receiver:", "new", "selector:", "yourself", "assert:equals:", "value"]}),
-smalltalk.MessageSendTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testValueWithArguments",
-fn: function (){
-var self=this;
-var messageSend;
-function $MessageSend(){return smalltalk.MessageSend||(typeof MessageSend=="undefined"?nil:MessageSend)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st($MessageSend())._new();
-_st($1)._receiver_((2));
-_st($1)._selector_("+");
-$2=_st($1)._yourself();
-messageSend=$2;
-self._assert_equals_(_st(messageSend)._value_((3)),(5));
-self._assert_equals_(_st(messageSend)._valueWithPossibleArguments_([(4)]),(6));
-return self}, function($ctx1) {$ctx1.fill(self,"testValueWithArguments",{messageSend:messageSend},smalltalk.MessageSendTest)})},
-messageSends: ["receiver:", "new", "selector:", "yourself", "assert:equals:", "value:", "valueWithPossibleArguments:"]}),
-smalltalk.MessageSendTest);
-
-
-
-smalltalk.addClass('MethodInheritanceTest', smalltalk.TestCase, ['receiverTop', 'receiverMiddle', 'receiverBottom', 'method', 'performBlock'], 'Kernel-Tests');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "codeGeneratorClass",
-fn: function (){
-var self=this;
-function $CodeGenerator(){return smalltalk.CodeGenerator||(typeof CodeGenerator=="undefined"?nil:CodeGenerator)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=$CodeGenerator();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"codeGeneratorClass",{},smalltalk.MethodInheritanceTest)})},
-messageSends: []}),
-smalltalk.MethodInheritanceTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "compiler",
-fn: function (){
-var self=this;
-function $Compiler(){return smalltalk.Compiler||(typeof Compiler=="undefined"?nil:Compiler)}
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=_st($Compiler())._new();
-_st($2)._codeGeneratorClass_(self._codeGeneratorClass());
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"compiler",{},smalltalk.MethodInheritanceTest)})},
-messageSends: ["codeGeneratorClass:", "codeGeneratorClass", "new", "yourself"]}),
-smalltalk.MethodInheritanceTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "deinstallBottom",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._targetClassBottom())._removeCompiledMethod_(self["@method"]);
-return self}, function($ctx1) {$ctx1.fill(self,"deinstallBottom",{},smalltalk.MethodInheritanceTest)})},
-messageSends: ["removeCompiledMethod:", "targetClassBottom"]}),
-smalltalk.MethodInheritanceTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "deinstallMiddle",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._targetClassMiddle())._removeCompiledMethod_(self["@method"]);
-return self}, function($ctx1) {$ctx1.fill(self,"deinstallMiddle",{},smalltalk.MethodInheritanceTest)})},
-messageSends: ["removeCompiledMethod:", "targetClassMiddle"]}),
-smalltalk.MethodInheritanceTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "deinstallTop",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._targetClassTop())._removeCompiledMethod_(self["@method"]);
-return self}, function($ctx1) {$ctx1.fill(self,"deinstallTop",{},smalltalk.MethodInheritanceTest)})},
-messageSends: ["removeCompiledMethod:", "targetClassTop"]}),
-smalltalk.MethodInheritanceTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "installBottom:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@method"]=_st(self._compiler())._install_forClass_category_(aString,self._targetClassBottom(),"tests");
-return self}, function($ctx1) {$ctx1.fill(self,"installBottom:",{aString:aString},smalltalk.MethodInheritanceTest)})},
-messageSends: ["install:forClass:category:", "targetClassBottom", "compiler"]}),
-smalltalk.MethodInheritanceTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "installMiddle:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@method"]=_st(self._compiler())._install_forClass_category_(aString,self._targetClassMiddle(),"tests");
-return self}, function($ctx1) {$ctx1.fill(self,"installMiddle:",{aString:aString},smalltalk.MethodInheritanceTest)})},
-messageSends: ["install:forClass:category:", "targetClassMiddle", "compiler"]}),
-smalltalk.MethodInheritanceTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "installTop:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@method"]=_st(self._compiler())._install_forClass_category_(aString,self._targetClassTop(),"tests");
-return self}, function($ctx1) {$ctx1.fill(self,"installTop:",{aString:aString},smalltalk.MethodInheritanceTest)})},
-messageSends: ["install:forClass:category:", "targetClassTop", "compiler"]}),
-smalltalk.MethodInheritanceTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "setUp",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@receiverTop"]=_st(self._targetClassTop())._new();
-self["@receiverMiddle"]=_st(self._targetClassMiddle())._new();
-self["@receiverBottom"]=_st(self._targetClassBottom())._new();
-self["@method"]=nil;
-self["@performBlock"]=(function(){
-return smalltalk.withContext(function($ctx2) {
-return self._error_("performBlock not initialized");
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})});
-return self}, function($ctx1) {$ctx1.fill(self,"setUp",{},smalltalk.MethodInheritanceTest)})},
-messageSends: ["new", "targetClassTop", "targetClassMiddle", "targetClassBottom", "error:"]}),
-smalltalk.MethodInheritanceTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "shouldMNU",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._shouldMNUTop();
-self._shouldMNUMiddle();
-self._shouldMNUBottom();
-return self}, function($ctx1) {$ctx1.fill(self,"shouldMNU",{},smalltalk.MethodInheritanceTest)})},
-messageSends: ["shouldMNUTop", "shouldMNUMiddle", "shouldMNUBottom"]}),
-smalltalk.MethodInheritanceTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "shouldMNUBottom",
-fn: function (){
-var self=this;
-function $MessageNotUnderstood(){return smalltalk.MessageNotUnderstood||(typeof MessageNotUnderstood=="undefined"?nil:MessageNotUnderstood)}
-return smalltalk.withContext(function($ctx1) { 
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(self["@performBlock"])._value_(self["@receiverBottom"]);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$MessageNotUnderstood());
-return self}, function($ctx1) {$ctx1.fill(self,"shouldMNUBottom",{},smalltalk.MethodInheritanceTest)})},
-messageSends: ["should:raise:", "value:"]}),
-smalltalk.MethodInheritanceTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "shouldMNUMiddle",
-fn: function (){
-var self=this;
-function $MessageNotUnderstood(){return smalltalk.MessageNotUnderstood||(typeof MessageNotUnderstood=="undefined"?nil:MessageNotUnderstood)}
-return smalltalk.withContext(function($ctx1) { 
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(self["@performBlock"])._value_(self["@receiverMiddle"]);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$MessageNotUnderstood());
-return self}, function($ctx1) {$ctx1.fill(self,"shouldMNUMiddle",{},smalltalk.MethodInheritanceTest)})},
-messageSends: ["should:raise:", "value:"]}),
-smalltalk.MethodInheritanceTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "shouldMNUTop",
-fn: function (){
-var self=this;
-function $MessageNotUnderstood(){return smalltalk.MessageNotUnderstood||(typeof MessageNotUnderstood=="undefined"?nil:MessageNotUnderstood)}
-return smalltalk.withContext(function($ctx1) { 
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(self["@performBlock"])._value_(self["@receiverTop"]);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$MessageNotUnderstood());
-return self}, function($ctx1) {$ctx1.fill(self,"shouldMNUTop",{},smalltalk.MethodInheritanceTest)})},
-messageSends: ["should:raise:", "value:"]}),
-smalltalk.MethodInheritanceTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "shouldReturn:",
-fn: function (anObject){
-var self=this;
-var result;
-return smalltalk.withContext(function($ctx1) { 
-result=_st(self["@performBlock"])._value_(self["@receiverTop"]);
-self._assert_equals_(["top",anObject],["top",result]);
-result=_st(self["@performBlock"])._value_(self["@receiverMiddle"]);
-self._assert_equals_(["middle",anObject],["middle",result]);
-result=_st(self["@performBlock"])._value_(self["@receiverBottom"]);
-self._assert_equals_(["bottom",anObject],["bottom",result]);
-return self}, function($ctx1) {$ctx1.fill(self,"shouldReturn:",{anObject:anObject,result:result},smalltalk.MethodInheritanceTest)})},
-messageSends: ["value:", "assert:equals:"]}),
-smalltalk.MethodInheritanceTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "shouldReturn:and:and:",
-fn: function (anObject,anObject2,anObject3){
-var self=this;
-var result;
-return smalltalk.withContext(function($ctx1) { 
-result=_st(self["@performBlock"])._value_(self["@receiverTop"]);
-self._assert_equals_(["top",anObject],["top",result]);
-result=_st(self["@performBlock"])._value_(self["@receiverMiddle"]);
-self._assert_equals_(["middle",anObject2],["middle",result]);
-result=_st(self["@performBlock"])._value_(self["@receiverBottom"]);
-self._assert_equals_(["bottom",anObject3],["bottom",result]);
-return self}, function($ctx1) {$ctx1.fill(self,"shouldReturn:and:and:",{anObject:anObject,anObject2:anObject2,anObject3:anObject3,result:result},smalltalk.MethodInheritanceTest)})},
-messageSends: ["value:", "assert:equals:"]}),
-smalltalk.MethodInheritanceTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "targetClassBottom",
-fn: function (){
-var self=this;
-function $JavaScriptException(){return smalltalk.JavaScriptException||(typeof JavaScriptException=="undefined"?nil:JavaScriptException)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=$JavaScriptException();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"targetClassBottom",{},smalltalk.MethodInheritanceTest)})},
-messageSends: []}),
-smalltalk.MethodInheritanceTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "targetClassMiddle",
-fn: function (){
-var self=this;
-function $Error(){return smalltalk.Error||(typeof Error=="undefined"?nil:Error)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=$Error();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"targetClassMiddle",{},smalltalk.MethodInheritanceTest)})},
-messageSends: []}),
-smalltalk.MethodInheritanceTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "targetClassTop",
-fn: function (){
-var self=this;
-function $Object(){return smalltalk.Object||(typeof Object=="undefined"?nil:Object)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=$Object();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"targetClassTop",{},smalltalk.MethodInheritanceTest)})},
-messageSends: []}),
-smalltalk.MethodInheritanceTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "tearDown",
-fn: function (){
-var self=this;
-function $Error(){return smalltalk.Error||(typeof Error=="undefined"?nil:Error)}
-return smalltalk.withContext(function($ctx1) { 
-_st((function(){
-return smalltalk.withContext(function($ctx2) {
-return self._deinstallTop();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._on_do_($Error(),(function(){
-return smalltalk.withContext(function($ctx2) {
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-_st((function(){
-return smalltalk.withContext(function($ctx2) {
-return self._deinstallMiddle();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._on_do_($Error(),(function(){
-return smalltalk.withContext(function($ctx2) {
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-_st((function(){
-return smalltalk.withContext(function($ctx2) {
-return self._deinstallBottom();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._on_do_($Error(),(function(){
-return smalltalk.withContext(function($ctx2) {
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"tearDown",{},smalltalk.MethodInheritanceTest)})},
-messageSends: ["on:do:", "deinstallTop", "deinstallMiddle", "deinstallBottom"]}),
-smalltalk.MethodInheritanceTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testMNU11",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@performBlock"]=(function(x){
-return smalltalk.withContext(function($ctx2) {
-return _st(x)._foo();
-}, function($ctx2) {$ctx2.fillBlock({x:x},$ctx1)})});
-self._shouldMNU();
-self._installTop_("foo ^ false");
-self._installTop_("foo ^ true");
-self._deinstallTop();
-self._shouldMNU();
-return self}, function($ctx1) {$ctx1.fill(self,"testMNU11",{},smalltalk.MethodInheritanceTest)})},
-messageSends: ["foo", "shouldMNU", "installTop:", "deinstallTop"]}),
-smalltalk.MethodInheritanceTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testMNU22",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@performBlock"]=(function(x){
-return smalltalk.withContext(function($ctx2) {
-return _st(x)._foo();
-}, function($ctx2) {$ctx2.fillBlock({x:x},$ctx1)})});
-self._shouldMNU();
-self._installMiddle_("foo ^ false");
-self._installMiddle_("foo ^ true");
-self._deinstallMiddle();
-self._shouldMNU();
-return self}, function($ctx1) {$ctx1.fill(self,"testMNU22",{},smalltalk.MethodInheritanceTest)})},
-messageSends: ["foo", "shouldMNU", "installMiddle:", "deinstallMiddle"]}),
-smalltalk.MethodInheritanceTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testReturns1",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@performBlock"]=(function(x){
-return smalltalk.withContext(function($ctx2) {
-return _st(x)._foo();
-}, function($ctx2) {$ctx2.fillBlock({x:x},$ctx1)})});
-self._installTop_("foo ^ false");
-self._shouldReturn_(false);
-self._installTop_("foo ^ true");
-self._shouldReturn_(true);
-return self}, function($ctx1) {$ctx1.fill(self,"testReturns1",{},smalltalk.MethodInheritanceTest)})},
-messageSends: ["foo", "installTop:", "shouldReturn:"]}),
-smalltalk.MethodInheritanceTest);
-
-
-
-smalltalk.addClass('NumberTest', smalltalk.TestCase, [], 'Kernel-Tests');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testAbs",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_((4)._abs(),(4));
-self._assert_equals_((-4)._abs(),(4));
-return self}, function($ctx1) {$ctx1.fill(self,"testAbs",{},smalltalk.NumberTest)})},
-messageSends: ["assert:equals:", "abs"]}),
-smalltalk.NumberTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testArithmetic",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_((1.5).__plus((1)),(2.5));
-self._assert_equals_((2).__minus((1)),(1));
-self._assert_equals_((-2).__minus((1)),(-3));
-self._assert_equals_((12).__slash((2)),(6));
-self._assert_equals_((3).__star((4)),(12));
-self._assert_equals_(_st((1).__plus((2))).__star((3)),(9));
-self._assert_equals_((1).__plus((2).__star((3))),(7));
-return self}, function($ctx1) {$ctx1.fill(self,"testArithmetic",{},smalltalk.NumberTest)})},
-messageSends: ["assert:equals:", "+", "-", "/", "*"]}),
-smalltalk.NumberTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testAsNumber",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_((3)._asNumber(),(3));
-return self}, function($ctx1) {$ctx1.fill(self,"testAsNumber",{},smalltalk.NumberTest)})},
-messageSends: ["assert:equals:", "asNumber"]}),
-smalltalk.NumberTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testCeiling",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_((1.2)._ceiling(),(2));
-self._assert_equals_((-1.2)._ceiling(),(-1));
-self._assert_equals_((1)._ceiling(),(1));
-return self}, function($ctx1) {$ctx1.fill(self,"testCeiling",{},smalltalk.NumberTest)})},
-messageSends: ["assert:equals:", "ceiling"]}),
-smalltalk.NumberTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testComparison",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_((3).__gt((2)));
-self._assert_((2).__lt((3)));
-self._deny_((3).__lt((2)));
-self._deny_((2).__gt((3)));
-self._assert_((3).__gt_eq((3)));
-self._assert_((3.1).__gt_eq((3)));
-self._assert_((3).__lt_eq((3)));
-self._assert_((3).__lt_eq((3.1)));
-return self}, function($ctx1) {$ctx1.fill(self,"testComparison",{},smalltalk.NumberTest)})},
-messageSends: ["assert:", ">", "<", "deny:", ">=", "<="]}),
-smalltalk.NumberTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testCopying",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_(_st((1)._copy()).__eq_eq((1)));
-self._assert_(_st((1)._deepCopy()).__eq_eq((1)));
-return self}, function($ctx1) {$ctx1.fill(self,"testCopying",{},smalltalk.NumberTest)})},
-messageSends: ["assert:", "==", "copy", "deepCopy"]}),
-smalltalk.NumberTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testEquality",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_((1).__eq((1)));
-self._assert_((0).__eq((0)));
-self._deny_((1).__eq((0)));
-self._assert_(_st((1)._yourself()).__eq((1)));
-self._assert_((1).__eq((1)._yourself()));
-self._assert_(_st((1)._yourself()).__eq((1)._yourself()));
-self._deny_((0).__eq(false));
-self._deny_(false.__eq((0)));
-self._deny_("".__eq((0)));
-self._deny_((0).__eq(""));
-return self}, function($ctx1) {$ctx1.fill(self,"testEquality",{},smalltalk.NumberTest)})},
-messageSends: ["assert:", "=", "deny:", "yourself"]}),
-smalltalk.NumberTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testFloor",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_((1.2)._floor(),(1));
-self._assert_equals_((-1.2)._floor(),(-2));
-self._assert_equals_((1)._floor(),(1));
-return self}, function($ctx1) {$ctx1.fill(self,"testFloor",{},smalltalk.NumberTest)})},
-messageSends: ["assert:equals:", "floor"]}),
-smalltalk.NumberTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testHexNumbers",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_((9),(9));
-self._assert_equals_((10)._truncated(),(10));
-self._assert_equals_((11)._truncated(),(11));
-self._assert_equals_((12)._truncated(),(12));
-self._assert_equals_((13)._truncated(),(13));
-self._assert_equals_((14)._truncated(),(14));
-self._assert_equals_((15)._truncated(),(15));
-return self}, function($ctx1) {$ctx1.fill(self,"testHexNumbers",{},smalltalk.NumberTest)})},
-messageSends: ["assert:equals:", "truncated"]}),
-smalltalk.NumberTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testIdentity",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_((1).__eq_eq((1)));
-self._assert_((0).__eq_eq((0)));
-self._deny_((1).__eq_eq((0)));
-self._assert_(_st((1)._yourself()).__eq_eq((1)));
-self._assert_((1).__eq_eq((1)._yourself()));
-self._assert_(_st((1)._yourself()).__eq_eq((1)._yourself()));
-self._deny_((1).__eq_eq((2)));
-return self}, function($ctx1) {$ctx1.fill(self,"testIdentity",{},smalltalk.NumberTest)})},
-messageSends: ["assert:", "==", "deny:", "yourself"]}),
-smalltalk.NumberTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testInvalidHexNumbers",
-fn: function (){
-var self=this;
-function $MessageNotUnderstood(){return smalltalk.MessageNotUnderstood||(typeof MessageNotUnderstood=="undefined"?nil:MessageNotUnderstood)}
-return smalltalk.withContext(function($ctx1) { 
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return (16)._rG();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$MessageNotUnderstood());
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return (16)._rg();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$MessageNotUnderstood());
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return (16)._rH();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$MessageNotUnderstood());
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return (16)._rh();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$MessageNotUnderstood());
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return (16)._rI();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$MessageNotUnderstood());
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return (16)._ri();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$MessageNotUnderstood());
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return (16)._rJ();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$MessageNotUnderstood());
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return (16)._rj();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$MessageNotUnderstood());
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return (16)._rK();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$MessageNotUnderstood());
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return (16)._rk();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$MessageNotUnderstood());
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return (16)._rL();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$MessageNotUnderstood());
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return (16)._rl();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$MessageNotUnderstood());
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return (16)._rM();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$MessageNotUnderstood());
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return (16)._rm();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$MessageNotUnderstood());
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return (16)._rN();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$MessageNotUnderstood());
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return (16)._rn();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$MessageNotUnderstood());
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return (16)._rO();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$MessageNotUnderstood());
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return (16)._ro();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$MessageNotUnderstood());
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return (16)._rP();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$MessageNotUnderstood());
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return (16)._rp();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$MessageNotUnderstood());
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return (16)._rQ();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$MessageNotUnderstood());
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return (16)._rq();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$MessageNotUnderstood());
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return (16)._rR();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$MessageNotUnderstood());
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return (16)._rr();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$MessageNotUnderstood());
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return (16)._rS();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$MessageNotUnderstood());
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return (16)._rs();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$MessageNotUnderstood());
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return (16)._rT();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$MessageNotUnderstood());
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return (16)._rt();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$MessageNotUnderstood());
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return (16)._rU();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$MessageNotUnderstood());
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return (16)._ru();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$MessageNotUnderstood());
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return (16)._rV();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$MessageNotUnderstood());
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return (16)._rv();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$MessageNotUnderstood());
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return (16)._rW();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$MessageNotUnderstood());
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return (16)._rw();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$MessageNotUnderstood());
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return (16)._rX();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$MessageNotUnderstood());
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return (16)._rx();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$MessageNotUnderstood());
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return (16)._rY();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$MessageNotUnderstood());
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return (16)._ry();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$MessageNotUnderstood());
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return (16)._rZ();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$MessageNotUnderstood());
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return (16)._rz();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$MessageNotUnderstood());
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return (11259375)._Z();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$MessageNotUnderstood());
-return self}, function($ctx1) {$ctx1.fill(self,"testInvalidHexNumbers",{},smalltalk.NumberTest)})},
-messageSends: ["should:raise:", "rG", "rg", "rH", "rh", "rI", "ri", "rJ", "rj", "rK", "rk", "rL", "rl", "rM", "rm", "rN", "rn", "rO", "ro", "rP", "rp", "rQ", "rq", "rR", "rr", "rS", "rs", "rT", "rt", "rU", "ru", "rV", "rv", "rW", "rw", "rX", "rx", "rY", "ry", "rZ", "rz", "Z"]}),
-smalltalk.NumberTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testMinMax",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_((2)._max_((5)),(5));
-self._assert_equals_((2)._min_((5)),(2));
-return self}, function($ctx1) {$ctx1.fill(self,"testMinMax",{},smalltalk.NumberTest)})},
-messageSends: ["assert:equals:", "max:", "min:"]}),
-smalltalk.NumberTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testNegated",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_((3)._negated(),(-3));
-self._assert_equals_((-3)._negated(),(3));
-return self}, function($ctx1) {$ctx1.fill(self,"testNegated",{},smalltalk.NumberTest)})},
-messageSends: ["assert:equals:", "negated"]}),
-smalltalk.NumberTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testPrintShowingDecimalPlaces",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_((23)._printShowingDecimalPlaces_((2)),"23.00");
-self._assert_equals_((23.5698)._printShowingDecimalPlaces_((2)),"23.57");
-self._assert_equals_(_st((234.567)._negated())._printShowingDecimalPlaces_((5)),"-234.56700");
-self._assert_equals_((23.4567)._printShowingDecimalPlaces_((0)),"23");
-self._assert_equals_((23.5567)._printShowingDecimalPlaces_((0)),"24");
-self._assert_equals_(_st((23.4567)._negated())._printShowingDecimalPlaces_((0)),"-23");
-self._assert_equals_(_st((23.5567)._negated())._printShowingDecimalPlaces_((0)),"-24");
-self._assert_equals_((100000000)._printShowingDecimalPlaces_((1)),"100000000.0");
-self._assert_equals_((0.98)._printShowingDecimalPlaces_((5)),"0.98000");
-self._assert_equals_(_st((0.98)._negated())._printShowingDecimalPlaces_((2)),"-0.98");
-self._assert_equals_((2.567)._printShowingDecimalPlaces_((2)),"2.57");
-self._assert_equals_((-2.567)._printShowingDecimalPlaces_((2)),"-2.57");
-self._assert_equals_((0)._printShowingDecimalPlaces_((2)),"0.00");
-return self}, function($ctx1) {$ctx1.fill(self,"testPrintShowingDecimalPlaces",{},smalltalk.NumberTest)})},
-messageSends: ["assert:equals:", "printShowingDecimalPlaces:", "negated"]}),
-smalltalk.NumberTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testRounded",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_((3)._rounded(),(3));
-self._assert_equals_((3.212)._rounded(),(3));
-self._assert_equals_((3.51)._rounded(),(4));
-return self}, function($ctx1) {$ctx1.fill(self,"testRounded",{},smalltalk.NumberTest)})},
-messageSends: ["assert:equals:", "rounded"]}),
-smalltalk.NumberTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testSqrt",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_((4)._sqrt(),(2));
-self._assert_equals_((16)._sqrt(),(4));
-return self}, function($ctx1) {$ctx1.fill(self,"testSqrt",{},smalltalk.NumberTest)})},
-messageSends: ["assert:equals:", "sqrt"]}),
-smalltalk.NumberTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testSquared",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_((4)._squared(),(16));
-return self}, function($ctx1) {$ctx1.fill(self,"testSquared",{},smalltalk.NumberTest)})},
-messageSends: ["assert:equals:", "squared"]}),
-smalltalk.NumberTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testTimesRepeat",
-fn: function (){
-var self=this;
-var i;
-return smalltalk.withContext(function($ctx1) { 
-i=(0);
-(0)._timesRepeat_((function(){
-return smalltalk.withContext(function($ctx2) {
-i=_st(i).__plus((1));
-return i;
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-self._assert_equals_(i,(0));
-(5)._timesRepeat_((function(){
-return smalltalk.withContext(function($ctx2) {
-i=_st(i).__plus((1));
-return i;
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-self._assert_equals_(i,(5));
-return self}, function($ctx1) {$ctx1.fill(self,"testTimesRepeat",{i:i},smalltalk.NumberTest)})},
-messageSends: ["timesRepeat:", "+", "assert:equals:"]}),
-smalltalk.NumberTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testTo",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_((1)._to_((5)),[(1), (2), (3), (4), (5)]);
-return self}, function($ctx1) {$ctx1.fill(self,"testTo",{},smalltalk.NumberTest)})},
-messageSends: ["assert:equals:", "to:"]}),
-smalltalk.NumberTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testToBy",
-fn: function (){
-var self=this;
-function $Error(){return smalltalk.Error||(typeof Error=="undefined"?nil:Error)}
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_((0)._to_by_((6),(2)),[(0), (2), (4), (6)]);
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return (1)._to_by_((4),(0));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$Error());
-return self}, function($ctx1) {$ctx1.fill(self,"testToBy",{},smalltalk.NumberTest)})},
-messageSends: ["assert:equals:", "to:by:", "should:raise:"]}),
-smalltalk.NumberTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testTruncated",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_((3)._truncated(),(3));
-self._assert_equals_((3.212)._truncated(),(3));
-self._assert_equals_((3.51)._truncated(),(3));
-return self}, function($ctx1) {$ctx1.fill(self,"testTruncated",{},smalltalk.NumberTest)})},
-messageSends: ["assert:equals:", "truncated"]}),
-smalltalk.NumberTest);
-
-
-
-smalltalk.addClass('ObjectMock', smalltalk.Object, ['foo', 'bar'], 'Kernel-Tests');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "foo",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@foo"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"foo",{},smalltalk.ObjectMock)})},
-messageSends: []}),
-smalltalk.ObjectMock);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "foo:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@foo"]=anObject;
-return self}, function($ctx1) {$ctx1.fill(self,"foo:",{anObject:anObject},smalltalk.ObjectMock)})},
-messageSends: []}),
-smalltalk.ObjectMock);
-
-
-
-smalltalk.addClass('ObjectTest', smalltalk.TestCase, [], 'Kernel-Tests');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "notDefined",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return undefined;;
-return self}, function($ctx1) {$ctx1.fill(self,"notDefined",{},smalltalk.ObjectTest)})},
-messageSends: []}),
-smalltalk.ObjectTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testBasicAccess",
-fn: function (){
-var self=this;
-var o;
-function $Object(){return smalltalk.Object||(typeof Object=="undefined"?nil:Object)}
-return smalltalk.withContext(function($ctx1) { 
-o=_st($Object())._new();
-_st(o)._basicAt_put_("a",(1));
-self._assert_equals_(_st(o)._basicAt_("a"),(1));
-self._assert_equals_(_st(o)._basicAt_("b"),nil);
-return self}, function($ctx1) {$ctx1.fill(self,"testBasicAccess",{o:o},smalltalk.ObjectTest)})},
-messageSends: ["new", "basicAt:put:", "assert:equals:", "basicAt:"]}),
-smalltalk.ObjectTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testBasicPerform",
-fn: function (){
-var self=this;
-var o;
-function $Object(){return smalltalk.Object||(typeof Object=="undefined"?nil:Object)}
-return smalltalk.withContext(function($ctx1) { 
-o=_st($Object())._new();
-_st(o)._basicAt_put_("func",(function(){
-return smalltalk.withContext(function($ctx2) {
-return "hello";
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-_st(o)._basicAt_put_("func2",(function(a){
-return smalltalk.withContext(function($ctx2) {
-return _st(a).__plus((1));
-}, function($ctx2) {$ctx2.fillBlock({a:a},$ctx1)})}));
-self._assert_equals_(_st(o)._basicPerform_("func"),"hello");
-self._assert_equals_(_st(o)._basicPerform_withArguments_("func2",[(3)]),(4));
-return self}, function($ctx1) {$ctx1.fill(self,"testBasicPerform",{o:o},smalltalk.ObjectTest)})},
-messageSends: ["new", "basicAt:put:", "+", "assert:equals:", "basicPerform:", "basicPerform:withArguments:"]}),
-smalltalk.ObjectTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testDNU",
-fn: function (){
-var self=this;
-function $Object(){return smalltalk.Object||(typeof Object=="undefined"?nil:Object)}
-function $MessageNotUnderstood(){return smalltalk.MessageNotUnderstood||(typeof MessageNotUnderstood=="undefined"?nil:MessageNotUnderstood)}
-return smalltalk.withContext(function($ctx1) { 
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st($Object())._new())._foo();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$MessageNotUnderstood());
-return self}, function($ctx1) {$ctx1.fill(self,"testDNU",{},smalltalk.ObjectTest)})},
-messageSends: ["should:raise:", "foo", "new"]}),
-smalltalk.ObjectTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testEquality",
-fn: function (){
-var self=this;
-var o;
-function $Object(){return smalltalk.Object||(typeof Object=="undefined"?nil:Object)}
-return smalltalk.withContext(function($ctx1) { 
-o=_st($Object())._new();
-self._deny_(_st(o).__eq(_st($Object())._new()));
-self._assert_(_st(o).__eq(o));
-self._assert_(_st(_st(o)._yourself()).__eq(o));
-self._assert_(_st(o).__eq(_st(o)._yourself()));
-return self}, function($ctx1) {$ctx1.fill(self,"testEquality",{o:o},smalltalk.ObjectTest)})},
-messageSends: ["new", "deny:", "=", "assert:", "yourself"]}),
-smalltalk.ObjectTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testHalt",
-fn: function (){
-var self=this;
-function $Object(){return smalltalk.Object||(typeof Object=="undefined"?nil:Object)}
-function $Error(){return smalltalk.Error||(typeof Error=="undefined"?nil:Error)}
-return smalltalk.withContext(function($ctx1) { 
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st($Object())._new())._halt();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$Error());
-return self}, function($ctx1) {$ctx1.fill(self,"testHalt",{},smalltalk.ObjectTest)})},
-messageSends: ["should:raise:", "halt", "new"]}),
-smalltalk.ObjectTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testIdentity",
-fn: function (){
-var self=this;
-var o;
-function $Object(){return smalltalk.Object||(typeof Object=="undefined"?nil:Object)}
-return smalltalk.withContext(function($ctx1) { 
-o=_st($Object())._new();
-self._deny_(_st(o).__eq_eq(_st($Object())._new()));
-self._assert_(_st(o).__eq_eq(o));
-self._assert_(_st(_st(o)._yourself()).__eq_eq(o));
-self._assert_(_st(o).__eq_eq(_st(o)._yourself()));
-return self}, function($ctx1) {$ctx1.fill(self,"testIdentity",{o:o},smalltalk.ObjectTest)})},
-messageSends: ["new", "deny:", "==", "assert:", "yourself"]}),
-smalltalk.ObjectTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testIfNil",
-fn: function (){
-var self=this;
-function $Object(){return smalltalk.Object||(typeof Object=="undefined"?nil:Object)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$4,$3,$2,$5,$7,$6,$8,$10,$9,$11,$13,$12;
-self._deny_(_st(_st($Object())._new())._isNil());
-$1=self;
-$4=_st($Object())._new();
-if(($receiver = $4) == nil || $receiver == undefined){
-$3=true;
-} else {
-$3=$4;
-};
-$2=_st($3).__eq(true);
-_st($1)._deny_($2);
-$5=self;
-$7=_st($Object())._new();
-if(($receiver = $7) == nil || $receiver == undefined){
-$6=$7;
-} else {
-$6=true;
-};
-_st($5)._assert_equals_($6,true);
-$8=self;
-$10=_st($Object())._new();
-if(($receiver = $10) == nil || $receiver == undefined){
-$9=false;
-} else {
-$9=true;
-};
-_st($8)._assert_equals_($9,true);
-$11=self;
-$13=_st($Object())._new();
-if(($receiver = $13) == nil || $receiver == undefined){
-$12=false;
-} else {
-$12=true;
-};
-_st($11)._assert_equals_($12,true);
-return self}, function($ctx1) {$ctx1.fill(self,"testIfNil",{},smalltalk.ObjectTest)})},
-messageSends: ["deny:", "isNil", "new", "=", "ifNil:", "assert:equals:", "ifNotNil:", "ifNil:ifNotNil:", "ifNotNil:ifNil:"]}),
-smalltalk.ObjectTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testInstVars",
-fn: function (){
-var self=this;
-var o;
-function $ObjectMock(){return smalltalk.ObjectMock||(typeof ObjectMock=="undefined"?nil:ObjectMock)}
-return smalltalk.withContext(function($ctx1) { 
-o=_st($ObjectMock())._new();
-self._assert_equals_(_st(o)._instVarAt_("foo"),nil);
-_st(o)._instVarAt_put_("foo",(1));
-self._assert_equals_(_st(o)._instVarAt_("foo"),(1));
-self._assert_equals_(_st(o)._instVarAt_("foo"),(1));
-return self}, function($ctx1) {$ctx1.fill(self,"testInstVars",{o:o},smalltalk.ObjectTest)})},
-messageSends: ["new", "assert:equals:", "instVarAt:", "instVarAt:put:"]}),
-smalltalk.ObjectTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testNilUndefined",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_(self._notDefined(),nil);
-return self}, function($ctx1) {$ctx1.fill(self,"testNilUndefined",{},smalltalk.ObjectTest)})},
-messageSends: ["assert:equals:", "notDefined"]}),
-smalltalk.ObjectTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testYourself",
-fn: function (){
-var self=this;
-var o;
-function $ObjectMock(){return smalltalk.ObjectMock||(typeof ObjectMock=="undefined"?nil:ObjectMock)}
-return smalltalk.withContext(function($ctx1) { 
-o=_st($ObjectMock())._new();
-self._assert_(_st(_st(o)._yourself()).__eq_eq(o));
-return self}, function($ctx1) {$ctx1.fill(self,"testYourself",{o:o},smalltalk.ObjectTest)})},
-messageSends: ["new", "assert:", "==", "yourself"]}),
-smalltalk.ObjectTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testidentityHash",
-fn: function (){
-var self=this;
-var o1,o2;
-function $Object(){return smalltalk.Object||(typeof Object=="undefined"?nil:Object)}
-return smalltalk.withContext(function($ctx1) { 
-o1=_st($Object())._new();
-o2=_st($Object())._new();
-self._assert_(_st(_st(o1)._identityHash()).__eq_eq(_st(o1)._identityHash()));
-self._deny_(_st(_st(o1)._identityHash()).__eq_eq(_st(o2)._identityHash()));
-return self}, function($ctx1) {$ctx1.fill(self,"testidentityHash",{o1:o1,o2:o2},smalltalk.ObjectTest)})},
-messageSends: ["new", "assert:", "==", "identityHash", "deny:"]}),
-smalltalk.ObjectTest);
-
-
-
-smalltalk.addClass('PointTest', smalltalk.TestCase, [], 'Kernel-Tests');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testAccessing",
-fn: function (){
-var self=this;
-function $Point(){return smalltalk.Point||(typeof Point=="undefined"?nil:Point)}
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_(_st(_st($Point())._x_y_((3),(4)))._x(),(3));
-self._assert_equals_(_st(_st($Point())._x_y_((3),(4)))._y(),(4));
-self._assert_equals_(_st(_st(_st($Point())._new())._x_((3)))._x(),(3));
-self._assert_equals_(_st(_st(_st($Point())._new())._y_((4)))._y(),(4));
-return self}, function($ctx1) {$ctx1.fill(self,"testAccessing",{},smalltalk.PointTest)})},
-messageSends: ["assert:equals:", "x", "x:y:", "y", "x:", "new", "y:"]}),
-smalltalk.PointTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testArithmetic",
-fn: function (){
-var self=this;
-function $Point(){return smalltalk.Point||(typeof Point=="undefined"?nil:Point)}
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_(_st((3).__at((4))).__star((3).__at((4))),_st($Point())._x_y_((9),(16)));
-self._assert_equals_(_st((3).__at((4))).__plus((3).__at((4))),_st($Point())._x_y_((6),(8)));
-self._assert_equals_(_st((3).__at((4))).__minus((3).__at((4))),_st($Point())._x_y_((0),(0)));
-self._assert_equals_(_st((6).__at((8))).__slash((3).__at((4))),_st($Point())._x_y_((2),(2)));
-return self}, function($ctx1) {$ctx1.fill(self,"testArithmetic",{},smalltalk.PointTest)})},
-messageSends: ["assert:equals:", "*", "@", "x:y:", "+", "-", "/"]}),
-smalltalk.PointTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testAt",
-fn: function (){
-var self=this;
-function $Point(){return smalltalk.Point||(typeof Point=="undefined"?nil:Point)}
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_((3).__at((4)),_st($Point())._x_y_((3),(4)));
-return self}, function($ctx1) {$ctx1.fill(self,"testAt",{},smalltalk.PointTest)})},
-messageSends: ["assert:equals:", "@", "x:y:"]}),
-smalltalk.PointTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testEgality",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_(_st((3).__at((4))).__eq((3).__at((4))));
-self._deny_(_st((3).__at((5))).__eq((3).__at((6))));
-return self}, function($ctx1) {$ctx1.fill(self,"testEgality",{},smalltalk.PointTest)})},
-messageSends: ["assert:", "=", "@", "deny:"]}),
-smalltalk.PointTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testTranslateBy",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_(_st((3).__at((3)))._translateBy_((0).__at((1))),(3).__at((4)));
-self._assert_equals_(_st((3).__at((3)))._translateBy_((0).__at((1)._negated())),(3).__at((2)));
-self._assert_equals_(_st((3).__at((3)))._translateBy_((2).__at((3))),(5).__at((6)));
-self._assert_equals_(_st((3).__at((3)))._translateBy_(_st((3)._negated()).__at((0))),(0).__at((3)));
-return self}, function($ctx1) {$ctx1.fill(self,"testTranslateBy",{},smalltalk.PointTest)})},
-messageSends: ["assert:equals:", "translateBy:", "@", "negated"]}),
-smalltalk.PointTest);
-
-
-
-smalltalk.addClass('RandomTest', smalltalk.TestCase, [], 'Kernel-Tests');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "textNext",
-fn: function (){
-var self=this;
-function $Random(){return smalltalk.Random||(typeof Random=="undefined"?nil:Random)}
-return smalltalk.withContext(function($ctx1) { 
-(10000)._timesRepeat_((function(){
-var current,next;
-return smalltalk.withContext(function($ctx2) {
-next=_st(_st($Random())._new())._next();
-next;
-self._assert_(_st(next).__gt_eq((0)));
-self._assert_(_st(next).__lt((1)));
-self._deny_(_st(current).__eq(next));
-return _st(next).__eq(current);
-}, function($ctx2) {$ctx2.fillBlock({current:current,next:next},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"textNext",{},smalltalk.RandomTest)})},
-messageSends: ["timesRepeat:", "next", "new", "assert:", ">=", "<", "deny:", "="]}),
-smalltalk.RandomTest);
-
-
-
-smalltalk.addClass('SetTest', smalltalk.TestCase, [], 'Kernel-Tests');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testAddRemove",
-fn: function (){
-var self=this;
-var set;
-function $Set(){return smalltalk.Set||(typeof Set=="undefined"?nil:Set)}
-return smalltalk.withContext(function($ctx1) { 
-set=_st($Set())._new();
-self._assert_(_st(set)._isEmpty());
-_st(set)._add_((3));
-self._assert_(_st(set)._includes_((3)));
-_st(set)._add_((5));
-self._assert_(_st(set)._includes_((5)));
-_st(set)._remove_((3));
-self._deny_(_st(set)._includes_((3)));
-return self}, function($ctx1) {$ctx1.fill(self,"testAddRemove",{set:set},smalltalk.SetTest)})},
-messageSends: ["new", "assert:", "isEmpty", "add:", "includes:", "remove:", "deny:"]}),
-smalltalk.SetTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testAt",
-fn: function (){
-var self=this;
-function $Set(){return smalltalk.Set||(typeof Set=="undefined"?nil:Set)}
-function $Error(){return smalltalk.Error||(typeof Error=="undefined"?nil:Error)}
-return smalltalk.withContext(function($ctx1) { 
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(_st($Set())._new())._at_put_((1),(2));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$Error());
-return self}, function($ctx1) {$ctx1.fill(self,"testAt",{},smalltalk.SetTest)})},
-messageSends: ["should:raise:", "at:put:", "new"]}),
-smalltalk.SetTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testCollect",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_(_st([(5), (6), (8)]._asSet())._collect_((function(x){
-return smalltalk.withContext(function($ctx2) {
-return _st(x).__backslash_backslash((3));
-}, function($ctx2) {$ctx2.fillBlock({x:x},$ctx1)})})),[(0), (2)]._asSet());
-return self}, function($ctx1) {$ctx1.fill(self,"testCollect",{},smalltalk.SetTest)})},
-messageSends: ["assert:equals:", "collect:", "\x5c\x5c", "asSet"]}),
-smalltalk.SetTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testComparing",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_([(0), (2)]._asSet(),[(0), (2)]._asSet());
-self._assert_equals_([(2), (0)]._asSet(),[(0), (2)]._asSet());
-self._deny_(_st([(0), (2), (3)]._asSet()).__eq([(0), (2)]._asSet()));
-self._deny_(_st([(1), (2)]._asSet()).__eq([(0), (2)]._asSet()));
-return self}, function($ctx1) {$ctx1.fill(self,"testComparing",{},smalltalk.SetTest)})},
-messageSends: ["assert:equals:", "asSet", "deny:", "="]}),
-smalltalk.SetTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testPrintString",
-fn: function (){
-var self=this;
-var set;
-function $Set(){return smalltalk.Set||(typeof Set=="undefined"?nil:Set)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$4;
-set=_st($Set())._new();
-self._assert_equals_(_st(set)._printString(),"a Set ()");
-$1=set;
-_st($1)._add_((1));
-$2=_st($1)._add_((3));
-self._assert_equals_(_st(set)._printString(),"a Set (1 3)");
-_st(set)._add_("foo");
-self._assert_equals_(_st(set)._printString(),"a Set (1 3 'foo')");
-$3=set;
-_st($3)._remove_((1));
-$4=_st($3)._remove_((3));
-self._assert_equals_(_st(set)._printString(),"a Set ('foo')");
-_st(set)._add_((3));
-self._assert_equals_(_st(set)._printString(),"a Set ('foo' 3)");
-_st(set)._add_((3));
-self._assert_equals_(_st(set)._printString(),"a Set ('foo' 3)");
-return self}, function($ctx1) {$ctx1.fill(self,"testPrintString",{set:set},smalltalk.SetTest)})},
-messageSends: ["new", "assert:equals:", "printString", "add:", "remove:"]}),
-smalltalk.SetTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testSize",
-fn: function (){
-var self=this;
-function $Set(){return smalltalk.Set||(typeof Set=="undefined"?nil:Set)}
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_(_st(_st($Set())._new())._size(),(0));
-self._assert_equals_(_st(_st($Set())._withAll_([(1), (2), (3), (4)]))._size(),(4));
-self._assert_equals_(_st(_st($Set())._withAll_([(1), (1), (1), (1)]))._size(),(1));
-return self}, function($ctx1) {$ctx1.fill(self,"testSize",{},smalltalk.SetTest)})},
-messageSends: ["assert:equals:", "size", "new", "withAll:"]}),
-smalltalk.SetTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testUnboxedObjects",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_(_st(_st(["foo"._yourself(),"foo"._yourself()])._asSet())._asArray(),["foo"]);
-return self}, function($ctx1) {$ctx1.fill(self,"testUnboxedObjects",{},smalltalk.SetTest)})},
-messageSends: ["assert:equals:", "asArray", "asSet", "yourself"]}),
-smalltalk.SetTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testUnicity",
-fn: function (){
-var self=this;
-var set;
-function $Set(){return smalltalk.Set||(typeof Set=="undefined"?nil:Set)}
-return smalltalk.withContext(function($ctx1) { 
-set=_st($Set())._new();
-_st(set)._add_((21));
-_st(set)._add_("hello");
-_st(set)._add_((21));
-self._assert_equals_(_st(set)._size(),(2));
-_st(set)._add_("hello");
-self._assert_equals_(_st(set)._size(),(2));
-self._assert_equals_(_st(set)._asArray(),[(21), "hello"]);
-return self}, function($ctx1) {$ctx1.fill(self,"testUnicity",{set:set},smalltalk.SetTest)})},
-messageSends: ["new", "add:", "assert:equals:", "size", "asArray"]}),
-smalltalk.SetTest);
-
-
-
-smalltalk.addClass('StreamTest', smalltalk.TestCase, [], 'Kernel-Tests');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "collectionClass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._class())._collectionClass();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"collectionClass",{},smalltalk.StreamTest)})},
-messageSends: ["collectionClass", "class"]}),
-smalltalk.StreamTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "newCollection",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._collectionClass())._new();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"newCollection",{},smalltalk.StreamTest)})},
-messageSends: ["new", "collectionClass"]}),
-smalltalk.StreamTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "newStream",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(self._collectionClass())._new())._stream();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"newStream",{},smalltalk.StreamTest)})},
-messageSends: ["stream", "new", "collectionClass"]}),
-smalltalk.StreamTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testAtStartAtEnd",
-fn: function (){
-var self=this;
-var stream;
-return smalltalk.withContext(function($ctx1) { 
-stream=self._newStream();
-self._assert_(_st(stream)._atStart());
-self._assert_(_st(stream)._atEnd());
-_st(stream)._nextPutAll_(self._newCollection());
-self._assert_(_st(stream)._atEnd());
-self._deny_(_st(stream)._atStart());
-_st(stream)._position_((1));
-self._deny_(_st(stream)._atEnd());
-self._deny_(_st(stream)._atStart());
-return self}, function($ctx1) {$ctx1.fill(self,"testAtStartAtEnd",{stream:stream},smalltalk.StreamTest)})},
-messageSends: ["newStream", "assert:", "atStart", "atEnd", "nextPutAll:", "newCollection", "deny:", "position:"]}),
-smalltalk.StreamTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testContents",
-fn: function (){
-var self=this;
-var stream;
-return smalltalk.withContext(function($ctx1) { 
-stream=self._newStream();
-_st(stream)._nextPutAll_(self._newCollection());
-self._assert_equals_(_st(stream)._contents(),self._newCollection());
-return self}, function($ctx1) {$ctx1.fill(self,"testContents",{stream:stream},smalltalk.StreamTest)})},
-messageSends: ["newStream", "nextPutAll:", "newCollection", "assert:equals:", "contents"]}),
-smalltalk.StreamTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testIsEmpty",
-fn: function (){
-var self=this;
-var stream;
-return smalltalk.withContext(function($ctx1) { 
-stream=self._newStream();
-self._assert_(_st(stream)._isEmpty());
-_st(stream)._nextPutAll_(self._newCollection());
-self._deny_(_st(stream)._isEmpty());
-return self}, function($ctx1) {$ctx1.fill(self,"testIsEmpty",{stream:stream},smalltalk.StreamTest)})},
-messageSends: ["newStream", "assert:", "isEmpty", "nextPutAll:", "newCollection", "deny:"]}),
-smalltalk.StreamTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testPosition",
-fn: function (){
-var self=this;
-var collection,stream;
-return smalltalk.withContext(function($ctx1) { 
-collection=self._newCollection();
-stream=self._newStream();
-_st(stream)._nextPutAll_(collection);
-self._assert_equals_(_st(stream)._position(),_st(collection)._size());
-_st(stream)._position_((0));
-self._assert_equals_(_st(stream)._position(),(0));
-_st(stream)._next();
-self._assert_equals_(_st(stream)._position(),(1));
-_st(stream)._next();
-self._assert_equals_(_st(stream)._position(),(2));
-return self}, function($ctx1) {$ctx1.fill(self,"testPosition",{collection:collection,stream:stream},smalltalk.StreamTest)})},
-messageSends: ["newCollection", "newStream", "nextPutAll:", "assert:equals:", "position", "size", "position:", "next"]}),
-smalltalk.StreamTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testReading",
-fn: function (){
-var self=this;
-var stream,collection;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-collection=self._newCollection();
-stream=self._newStream();
-$1=stream;
-_st($1)._nextPutAll_(collection);
-$2=_st($1)._position_((0));
-_st(collection)._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return self._assert_equals_(_st(stream)._next(),each);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-self._assert_(_st(_st(stream)._next())._isNil());
-return self}, function($ctx1) {$ctx1.fill(self,"testReading",{stream:stream,collection:collection},smalltalk.StreamTest)})},
-messageSends: ["newCollection", "newStream", "nextPutAll:", "position:", "do:", "assert:equals:", "next", "assert:", "isNil"]}),
-smalltalk.StreamTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testStreamContents",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self}, function($ctx1) {$ctx1.fill(self,"testStreamContents",{},smalltalk.StreamTest)})},
-messageSends: []}),
-smalltalk.StreamTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testWrite",
-fn: function (){
-var self=this;
-var stream,collection;
-return smalltalk.withContext(function($ctx1) { 
-collection=self._newCollection();
-stream=self._newStream();
-_st(collection)._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(stream).__lt_lt(each);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-self._assert_equals_(_st(stream)._contents(),collection);
-return self}, function($ctx1) {$ctx1.fill(self,"testWrite",{stream:stream,collection:collection},smalltalk.StreamTest)})},
-messageSends: ["newCollection", "newStream", "do:", "<<", "assert:equals:", "contents"]}),
-smalltalk.StreamTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testWriting",
-fn: function (){
-var self=this;
-var stream,collection;
-return smalltalk.withContext(function($ctx1) { 
-collection=self._newCollection();
-stream=self._newStream();
-_st(collection)._do_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(stream)._nextPut_(each);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-self._assert_equals_(_st(stream)._contents(),collection);
-stream=self._newStream();
-_st(stream)._nextPutAll_(collection);
-self._assert_equals_(_st(stream)._contents(),collection);
-return self}, function($ctx1) {$ctx1.fill(self,"testWriting",{stream:stream,collection:collection},smalltalk.StreamTest)})},
-messageSends: ["newCollection", "newStream", "do:", "nextPut:", "assert:equals:", "contents", "nextPutAll:"]}),
-smalltalk.StreamTest);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "collectionClass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return nil;
-}, function($ctx1) {$ctx1.fill(self,"collectionClass",{},smalltalk.StreamTest.klass)})},
-messageSends: []}),
-smalltalk.StreamTest.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isAbstract",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._collectionClass())._isNil();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"isAbstract",{},smalltalk.StreamTest.klass)})},
-messageSends: ["isNil", "collectionClass"]}),
-smalltalk.StreamTest.klass);
-
-
-smalltalk.addClass('ArrayStreamTest', smalltalk.StreamTest, [], 'Kernel-Tests');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "newCollection",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=[true,(1),(3).__at((4)),"foo"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"newCollection",{},smalltalk.ArrayStreamTest)})},
-messageSends: ["@"]}),
-smalltalk.ArrayStreamTest);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "collectionClass",
-fn: function (){
-var self=this;
-function $Array(){return smalltalk.Array||(typeof Array=="undefined"?nil:Array)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=$Array();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"collectionClass",{},smalltalk.ArrayStreamTest.klass)})},
-messageSends: []}),
-smalltalk.ArrayStreamTest.klass);
-
-
-smalltalk.addClass('StringStreamTest', smalltalk.StreamTest, [], 'Kernel-Tests');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "newCollection",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "hello world";
-}, function($ctx1) {$ctx1.fill(self,"newCollection",{},smalltalk.StringStreamTest)})},
-messageSends: []}),
-smalltalk.StringStreamTest);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "collectionClass",
-fn: function (){
-var self=this;
-function $String(){return smalltalk.String||(typeof String=="undefined"?nil:String)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=$String();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"collectionClass",{},smalltalk.StringStreamTest.klass)})},
-messageSends: []}),
-smalltalk.StringStreamTest.klass);
-
-
-smalltalk.addClass('UndefinedTest', smalltalk.TestCase, [], 'Kernel-Tests');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testCopying",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_(nil._copy(),nil);
-return self}, function($ctx1) {$ctx1.fill(self,"testCopying",{},smalltalk.UndefinedTest)})},
-messageSends: ["assert:equals:", "copy"]}),
-smalltalk.UndefinedTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testDeepCopy",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_(_st(nil._deepCopy()).__eq(nil));
-return self}, function($ctx1) {$ctx1.fill(self,"testDeepCopy",{},smalltalk.UndefinedTest)})},
-messageSends: ["assert:", "=", "deepCopy"]}),
-smalltalk.UndefinedTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testIfNil",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3,$5,$4,$6,$7,$8,$10,$9;
-$1=self;
-if(($receiver = nil) == nil || $receiver == undefined){
-$2=true;
-} else {
-$2=nil;
-};
-_st($1)._assert_equals_($2,true);
-$3=self;
-if(($receiver = nil) == nil || $receiver == undefined){
-$5=nil;
-} else {
-$5=true;
-};
-$4=_st($5).__eq(true);
-_st($3)._deny_($4);
-$6=self;
-if(($receiver = nil) == nil || $receiver == undefined){
-$7=true;
-} else {
-$7=false;
-};
-_st($6)._assert_equals_($7,true);
-$8=self;
-if(($receiver = nil) == nil || $receiver == undefined){
-$10=false;
-} else {
-$10=true;
-};
-$9=_st($10).__eq(true);
-_st($8)._deny_($9);
-return self}, function($ctx1) {$ctx1.fill(self,"testIfNil",{},smalltalk.UndefinedTest)})},
-messageSends: ["assert:equals:", "ifNil:", "deny:", "=", "ifNotNil:", "ifNil:ifNotNil:", "ifNotNil:ifNil:"]}),
-smalltalk.UndefinedTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testIsNil",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_(nil._isNil());
-self._deny_(nil._notNil());
-return self}, function($ctx1) {$ctx1.fill(self,"testIsNil",{},smalltalk.UndefinedTest)})},
-messageSends: ["assert:", "isNil", "deny:", "notNil"]}),
-smalltalk.UndefinedTest);
-
-
-});

+ 0 - 155
js/Kernel-Transcript.deploy.js

@@ -1,155 +0,0 @@
-define("amber/Kernel-Transcript", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/Kernel-Objects"], function(smalltalk,nil,_st){
-smalltalk.addPackage('Kernel-Transcript');
-smalltalk.packages["Kernel-Transcript"].transport = {"type":"amd","amdNamespace":"amber"};
-
-smalltalk.addClass('ConsoleTranscript', smalltalk.Object, ['textarea'], 'Kernel-Transcript');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "clear",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self}, function($ctx1) {$ctx1.fill(self,"clear",{},smalltalk.ConsoleTranscript)})},
-messageSends: []}),
-smalltalk.ConsoleTranscript);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "cr",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self}, function($ctx1) {$ctx1.fill(self,"cr",{},smalltalk.ConsoleTranscript)})},
-messageSends: []}),
-smalltalk.ConsoleTranscript);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "open",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self}, function($ctx1) {$ctx1.fill(self,"open",{},smalltalk.ConsoleTranscript)})},
-messageSends: []}),
-smalltalk.ConsoleTranscript);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "show:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-console.log(String(_st(anObject)._asString()));
-return self}, function($ctx1) {$ctx1.fill(self,"show:",{anObject:anObject},smalltalk.ConsoleTranscript)})},
-messageSends: []}),
-smalltalk.ConsoleTranscript);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "initialize",
-fn: function (){
-var self=this;
-function $Transcript(){return smalltalk.Transcript||(typeof Transcript=="undefined"?nil:Transcript)}
-return smalltalk.withContext(function($ctx1) { 
-_st($Transcript())._register_(self._new());
-return self}, function($ctx1) {$ctx1.fill(self,"initialize",{},smalltalk.ConsoleTranscript.klass)})},
-messageSends: ["register:", "new"]}),
-smalltalk.ConsoleTranscript.klass);
-
-
-smalltalk.addClass('Transcript', smalltalk.Object, [], 'Kernel-Transcript');
-
-smalltalk.Transcript.klass.iVarNames = ['current'];
-smalltalk.addMethod(
-smalltalk.method({
-selector: "clear",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._current())._clear();
-return self}, function($ctx1) {$ctx1.fill(self,"clear",{},smalltalk.Transcript.klass)})},
-messageSends: ["clear", "current"]}),
-smalltalk.Transcript.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "cr",
-fn: function (){
-var self=this;
-function $String(){return smalltalk.String||(typeof String=="undefined"?nil:String)}
-return smalltalk.withContext(function($ctx1) { 
-_st(self._current())._show_(_st($String())._cr());
-return self}, function($ctx1) {$ctx1.fill(self,"cr",{},smalltalk.Transcript.klass)})},
-messageSends: ["show:", "cr", "current"]}),
-smalltalk.Transcript.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "current",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@current"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"current",{},smalltalk.Transcript.klass)})},
-messageSends: []}),
-smalltalk.Transcript.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "inspect:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._show_(anObject);
-return self}, function($ctx1) {$ctx1.fill(self,"inspect:",{anObject:anObject},smalltalk.Transcript.klass)})},
-messageSends: ["show:"]}),
-smalltalk.Transcript.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "new",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._shouldNotImplement();
-return self}, function($ctx1) {$ctx1.fill(self,"new",{},smalltalk.Transcript.klass)})},
-messageSends: ["shouldNotImplement"]}),
-smalltalk.Transcript.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "open",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._current())._open();
-return self}, function($ctx1) {$ctx1.fill(self,"open",{},smalltalk.Transcript.klass)})},
-messageSends: ["open", "current"]}),
-smalltalk.Transcript.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "register:",
-fn: function (aTranscript){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@current"]=aTranscript;
-return self}, function($ctx1) {$ctx1.fill(self,"register:",{aTranscript:aTranscript},smalltalk.Transcript.klass)})},
-messageSends: []}),
-smalltalk.Transcript.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "show:",
-fn: function (anObject){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._current())._show_(anObject);
-return self}, function($ctx1) {$ctx1.fill(self,"show:",{anObject:anObject},smalltalk.Transcript.klass)})},
-messageSends: ["show:", "current"]}),
-smalltalk.Transcript.klass);
-
-});

+ 0 - 432
js/SUnit-Tests.deploy.js

@@ -1,432 +0,0 @@
-define("amber/SUnit-Tests", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/SUnit"], function(smalltalk,nil,_st){
-smalltalk.addPackage('SUnit-Tests');
-smalltalk.packages["SUnit-Tests"].transport = {"type":"amd","amdNamespace":"amber"};
-
-smalltalk.addClass('ExampleSetTest', smalltalk.TestCase, ['empty', 'full'], 'SUnit-Tests');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "setUp",
-fn: function (){
-var self=this;
-function $Set(){return smalltalk.Set||(typeof Set=="undefined"?nil:Set)}
-return smalltalk.withContext(function($ctx1) { 
-self["@empty"]=_st($Set())._new();
-self["@full"]=_st($Set())._with_with_((5),"abc");
-return self}, function($ctx1) {$ctx1.fill(self,"setUp",{},smalltalk.ExampleSetTest)})},
-messageSends: ["new", "with:with:"]}),
-smalltalk.ExampleSetTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testAdd",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self["@empty"])._add_((5));
-self._assert_(_st(self["@empty"])._includes_((5)));
-return self}, function($ctx1) {$ctx1.fill(self,"testAdd",{},smalltalk.ExampleSetTest)})},
-messageSends: ["add:", "assert:", "includes:"]}),
-smalltalk.ExampleSetTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testGrow",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self["@empty"])._addAll_((1)._to_((100)));
-self._assert_equals_(_st(self["@empty"])._size(),(100));
-return self}, function($ctx1) {$ctx1.fill(self,"testGrow",{},smalltalk.ExampleSetTest)})},
-messageSends: ["addAll:", "to:", "assert:equals:", "size"]}),
-smalltalk.ExampleSetTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testIllegal",
-fn: function (){
-var self=this;
-function $Error(){return smalltalk.Error||(typeof Error=="undefined"?nil:Error)}
-return smalltalk.withContext(function($ctx1) { 
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(self["@empty"])._at_((5));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$Error());
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(self["@empty"])._at_put_((5),"abc");
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$Error());
-return self}, function($ctx1) {$ctx1.fill(self,"testIllegal",{},smalltalk.ExampleSetTest)})},
-messageSends: ["should:raise:", "at:", "at:put:"]}),
-smalltalk.ExampleSetTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testIncludes",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_(_st(self["@full"])._includes_((5)));
-self._assert_(_st(self["@full"])._includes_("abc"));
-return self}, function($ctx1) {$ctx1.fill(self,"testIncludes",{},smalltalk.ExampleSetTest)})},
-messageSends: ["assert:", "includes:"]}),
-smalltalk.ExampleSetTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testOccurrences",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_(_st(self["@empty"])._occurrencesOf_((0)),(0));
-self._assert_equals_(_st(self["@full"])._occurrencesOf_((5)),(1));
-_st(self["@full"])._add_((5));
-self._assert_equals_(_st(self["@full"])._occurrencesOf_((5)),(1));
-return self}, function($ctx1) {$ctx1.fill(self,"testOccurrences",{},smalltalk.ExampleSetTest)})},
-messageSends: ["assert:equals:", "occurrencesOf:", "add:"]}),
-smalltalk.ExampleSetTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testRemove",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self["@full"])._remove_((5));
-self._assert_(_st(self["@full"])._includes_("abc"));
-self._deny_(_st(self["@full"])._includes_((5)));
-return self}, function($ctx1) {$ctx1.fill(self,"testRemove",{},smalltalk.ExampleSetTest)})},
-messageSends: ["remove:", "assert:", "includes:", "deny:"]}),
-smalltalk.ExampleSetTest);
-
-
-
-smalltalk.addClass('SUnitAsyncTest', smalltalk.TestCase, ['flag'], 'SUnit-Tests');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "fakeError",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@flag"]="bad";
-self._timeout_((30));
-self["@flag"]=_st(self._async_((function(){
-return smalltalk.withContext(function($ctx2) {
-self["@flag"]="ok";
-self["@flag"];
-return self._error_("Intentional");
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})})))._valueWithTimeout_((20));
-return self}, function($ctx1) {$ctx1.fill(self,"fakeError",{},smalltalk.SUnitAsyncTest)})},
-messageSends: ["timeout:", "valueWithTimeout:", "async:", "error:"]}),
-smalltalk.SUnitAsyncTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "fakeErrorFailingInTearDown",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@flag"]="bad";
-self._timeout_((30));
-self["@flag"]=_st(self._async_((function(){
-return smalltalk.withContext(function($ctx2) {
-return self._error_("Intentional");
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})})))._valueWithTimeout_((20));
-return self}, function($ctx1) {$ctx1.fill(self,"fakeErrorFailingInTearDown",{},smalltalk.SUnitAsyncTest)})},
-messageSends: ["timeout:", "valueWithTimeout:", "async:", "error:"]}),
-smalltalk.SUnitAsyncTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "fakeFailure",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@flag"]="bad";
-self._timeout_((30));
-self["@flag"]=_st(self._async_((function(){
-return smalltalk.withContext(function($ctx2) {
-self["@flag"]="ok";
-self["@flag"];
-return self._assert_(false);
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})})))._valueWithTimeout_((20));
-return self}, function($ctx1) {$ctx1.fill(self,"fakeFailure",{},smalltalk.SUnitAsyncTest)})},
-messageSends: ["timeout:", "valueWithTimeout:", "async:", "assert:"]}),
-smalltalk.SUnitAsyncTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "fakeMultipleTimeoutFailing",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._timeout_((100));
-_st(self._async_((function(){
-return smalltalk.withContext(function($ctx2) {
-self._timeout_((20));
-return _st(self._async_((function(){
-return smalltalk.withContext(function($ctx3) {
-return self._finished();
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})})))._valueWithTimeout_((30));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})})))._valueWithTimeout_((20));
-return self}, function($ctx1) {$ctx1.fill(self,"fakeMultipleTimeoutFailing",{},smalltalk.SUnitAsyncTest)})},
-messageSends: ["timeout:", "valueWithTimeout:", "async:", "finished"]}),
-smalltalk.SUnitAsyncTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "fakeMultipleTimeoutPassing",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._timeout_((20));
-_st(self._async_((function(){
-return smalltalk.withContext(function($ctx2) {
-self._timeout_((40));
-return _st(self._async_((function(){
-return smalltalk.withContext(function($ctx3) {
-return self._finished();
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})})))._valueWithTimeout_((20));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})})))._valueWithTimeout_((10));
-return self}, function($ctx1) {$ctx1.fill(self,"fakeMultipleTimeoutPassing",{},smalltalk.SUnitAsyncTest)})},
-messageSends: ["timeout:", "valueWithTimeout:", "async:", "finished"]}),
-smalltalk.SUnitAsyncTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "fakeTimeout",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._timeout_((10));
-_st(self._async_((function(){
-return smalltalk.withContext(function($ctx2) {
-return self._finished();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})})))._valueWithTimeout_((20));
-return self}, function($ctx1) {$ctx1.fill(self,"fakeTimeout",{},smalltalk.SUnitAsyncTest)})},
-messageSends: ["timeout:", "valueWithTimeout:", "async:", "finished"]}),
-smalltalk.SUnitAsyncTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selectorSetOf:",
-fn: function (aCollection){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(aCollection)._collect_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(each)._selector();
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})})))._asSet();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"selectorSetOf:",{aCollection:aCollection},smalltalk.SUnitAsyncTest)})},
-messageSends: ["asSet", "collect:", "selector"]}),
-smalltalk.SUnitAsyncTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "setUp",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@flag"]="ok";
-return self}, function($ctx1) {$ctx1.fill(self,"setUp",{},smalltalk.SUnitAsyncTest)})},
-messageSends: []}),
-smalltalk.SUnitAsyncTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "tearDown",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_equals_("ok",self["@flag"]);
-return self}, function($ctx1) {$ctx1.fill(self,"tearDown",{},smalltalk.SUnitAsyncTest)})},
-messageSends: ["assert:equals:"]}),
-smalltalk.SUnitAsyncTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testAsyncErrorsAndFailures",
-fn: function (){
-var self=this;
-var suite,runner,result,assertBlock;
-function $TestSuiteRunner(){return smalltalk.TestSuiteRunner||(typeof TestSuiteRunner=="undefined"?nil:TestSuiteRunner)}
-function $ResultAnnouncement(){return smalltalk.ResultAnnouncement||(typeof ResultAnnouncement=="undefined"?nil:ResultAnnouncement)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-suite=["fakeError", "fakeErrorFailingInTearDown", "fakeFailure", "testPass"]._collect_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(self._class())._selector_(each);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-runner=_st($TestSuiteRunner())._on_(suite);
-self._timeout_((200));
-result=_st(runner)._result();
-assertBlock=self._async_((function(){
-return smalltalk.withContext(function($ctx2) {
-self._assert_equals_(self._selectorSetOf_(_st(result)._errors()),["fakeError"]._asSet());
-self._assert_equals_(self._selectorSetOf_(_st(result)._failures()),["fakeErrorFailingInTearDown", "fakeFailure"]._asSet());
-return self._finished();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-_st(_st(runner)._announcer())._on_do_($ResultAnnouncement(),(function(ann){
-return smalltalk.withContext(function($ctx2) {
-$1=_st(_st(ann)._result()).__eq_eq(result);
-if(smalltalk.assert($1)){
-$2=_st(_st(result)._runs()).__eq(_st(result)._total());
-return _st($2)._ifTrue_(assertBlock);
-};
-}, function($ctx2) {$ctx2.fillBlock({ann:ann},$ctx1)})}));
-_st(runner)._run();
-return self}, function($ctx1) {$ctx1.fill(self,"testAsyncErrorsAndFailures",{suite:suite,runner:runner,result:result,assertBlock:assertBlock},smalltalk.SUnitAsyncTest)})},
-messageSends: ["collect:", "selector:", "class", "on:", "timeout:", "result", "async:", "assert:equals:", "selectorSetOf:", "errors", "asSet", "failures", "finished", "on:do:", "ifTrue:", "=", "total", "runs", "==", "announcer", "run"]}),
-smalltalk.SUnitAsyncTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testAsyncNeedsTimeout",
-fn: function (){
-var self=this;
-function $Error(){return smalltalk.Error||(typeof Error=="undefined"?nil:Error)}
-return smalltalk.withContext(function($ctx1) { 
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return self._async_((function(){
-return smalltalk.withContext(function($ctx3) {
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$Error());
-self._timeout_((0));
-self._shouldnt_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return self._async_((function(){
-return smalltalk.withContext(function($ctx3) {
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$Error());
-self._finished();
-return self}, function($ctx1) {$ctx1.fill(self,"testAsyncNeedsTimeout",{},smalltalk.SUnitAsyncTest)})},
-messageSends: ["should:raise:", "async:", "timeout:", "shouldnt:raise:", "finished"]}),
-smalltalk.SUnitAsyncTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testFinishedNeedsTimeout",
-fn: function (){
-var self=this;
-function $Error(){return smalltalk.Error||(typeof Error=="undefined"?nil:Error)}
-return smalltalk.withContext(function($ctx1) { 
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return self._finished();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$Error());
-self._timeout_((0));
-self._shouldnt_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return self._finished();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$Error());
-return self}, function($ctx1) {$ctx1.fill(self,"testFinishedNeedsTimeout",{},smalltalk.SUnitAsyncTest)})},
-messageSends: ["should:raise:", "finished", "timeout:", "shouldnt:raise:"]}),
-smalltalk.SUnitAsyncTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testIsAsyncReturnsCorrectValues",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._deny_(self._isAsync());
-self._timeout_((0));
-self._assert_(self._isAsync());
-self._finished();
-self._deny_(self._isAsync());
-return self}, function($ctx1) {$ctx1.fill(self,"testIsAsyncReturnsCorrectValues",{},smalltalk.SUnitAsyncTest)})},
-messageSends: ["deny:", "isAsync", "timeout:", "assert:", "finished"]}),
-smalltalk.SUnitAsyncTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testPass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@flag"]="bad";
-self._timeout_((10));
-self["@flag"]=_st(self._async_((function(){
-return smalltalk.withContext(function($ctx2) {
-self._assert_(true);
-self._finished();
-self["@flag"]="ok";
-return self["@flag"];
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})})))._valueWithTimeout_((5));
-return self}, function($ctx1) {$ctx1.fill(self,"testPass",{},smalltalk.SUnitAsyncTest)})},
-messageSends: ["timeout:", "valueWithTimeout:", "async:", "assert:", "finished"]}),
-smalltalk.SUnitAsyncTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testTimeouts",
-fn: function (){
-var self=this;
-var suite,runner,result,assertBlock;
-function $TestSuiteRunner(){return smalltalk.TestSuiteRunner||(typeof TestSuiteRunner=="undefined"?nil:TestSuiteRunner)}
-function $Set(){return smalltalk.Set||(typeof Set=="undefined"?nil:Set)}
-function $ResultAnnouncement(){return smalltalk.ResultAnnouncement||(typeof ResultAnnouncement=="undefined"?nil:ResultAnnouncement)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-suite=["fakeTimeout", "fakeMultipleTimeoutFailing", "fakeMultipleTimeoutPassing", "testPass"]._collect_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(self._class())._selector_(each);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-runner=_st($TestSuiteRunner())._on_(suite);
-self._timeout_((200));
-result=_st(runner)._result();
-assertBlock=self._async_((function(){
-return smalltalk.withContext(function($ctx2) {
-self._assert_equals_(self._selectorSetOf_(_st(result)._errors()),_st($Set())._new());
-self._assert_equals_(self._selectorSetOf_(_st(result)._failures()),["fakeMultipleTimeoutFailing", "fakeTimeout"]._asSet());
-return self._finished();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-_st(_st(runner)._announcer())._on_do_($ResultAnnouncement(),(function(ann){
-return smalltalk.withContext(function($ctx2) {
-$1=_st(_st(ann)._result()).__eq_eq(result);
-if(smalltalk.assert($1)){
-$2=_st(_st(result)._runs()).__eq(_st(result)._total());
-return _st($2)._ifTrue_(assertBlock);
-};
-}, function($ctx2) {$ctx2.fillBlock({ann:ann},$ctx1)})}));
-_st(runner)._run();
-return self}, function($ctx1) {$ctx1.fill(self,"testTimeouts",{suite:suite,runner:runner,result:result,assertBlock:assertBlock},smalltalk.SUnitAsyncTest)})},
-messageSends: ["collect:", "selector:", "class", "on:", "timeout:", "result", "async:", "assert:equals:", "selectorSetOf:", "errors", "new", "failures", "asSet", "finished", "on:do:", "ifTrue:", "=", "total", "runs", "==", "announcer", "run"]}),
-smalltalk.SUnitAsyncTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testTwoAsyncPassesWithFinishedOnlyOneIsRun",
-fn: function (){
-var self=this;
-var x;
-return smalltalk.withContext(function($ctx1) { 
-self["@flag"]="bad";
-self._timeout_((10));
-x=(0);
-self["@flag"]=_st(self._async_((function(){
-return smalltalk.withContext(function($ctx2) {
-self._finished();
-self["@flag"]="ok";
-self["@flag"];
-x=_st(x).__plus((1));
-x;
-return self._assert_equals_(x,(1));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})})))._valueWithTimeout_((0));
-self["@flag"]=_st(self._async_((function(){
-return smalltalk.withContext(function($ctx2) {
-self._finished();
-self["@flag"]="ok";
-self["@flag"];
-x=_st(x).__plus((1));
-x;
-return self._assert_equals_(x,(1));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})})))._valueWithTimeout_((0));
-return self}, function($ctx1) {$ctx1.fill(self,"testTwoAsyncPassesWithFinishedOnlyOneIsRun",{x:x},smalltalk.SUnitAsyncTest)})},
-messageSends: ["timeout:", "valueWithTimeout:", "async:", "finished", "+", "assert:equals:"]}),
-smalltalk.SUnitAsyncTest);
-
-
-});

+ 0 - 926
js/SUnit.deploy.js

@@ -1,926 +0,0 @@
-define("amber/SUnit", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/Kernel-Objects", "amber/Kernel-Exceptions"], function(smalltalk,nil,_st){
-smalltalk.addPackage('SUnit');
-smalltalk.packages["SUnit"].transport = {"type":"amd","amdNamespace":"amber"};
-
-smalltalk.addClass('ResultAnnouncement', smalltalk.Object, ['result'], 'SUnit');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "result",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@result"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"result",{},smalltalk.ResultAnnouncement)})},
-messageSends: []}),
-smalltalk.ResultAnnouncement);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "result:",
-fn: function (aTestResult){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@result"]=aTestResult;
-return self}, function($ctx1) {$ctx1.fill(self,"result:",{aTestResult:aTestResult},smalltalk.ResultAnnouncement)})},
-messageSends: []}),
-smalltalk.ResultAnnouncement);
-
-
-
-smalltalk.addClass('TestCase', smalltalk.Object, ['testSelector', 'asyncTimeout', 'context'], 'SUnit');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "assert:",
-fn: function (aBoolean){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_description_(aBoolean,"Assertion failed");
-return self}, function($ctx1) {$ctx1.fill(self,"assert:",{aBoolean:aBoolean},smalltalk.TestCase)})},
-messageSends: ["assert:description:"]}),
-smalltalk.TestCase);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "assert:description:",
-fn: function (aBoolean,aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=aBoolean;
-if(! smalltalk.assert($1)){
-self._signalFailure_(aString);
-};
-return self}, function($ctx1) {$ctx1.fill(self,"assert:description:",{aBoolean:aBoolean,aString:aString},smalltalk.TestCase)})},
-messageSends: ["ifFalse:", "signalFailure:"]}),
-smalltalk.TestCase);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "assert:equals:",
-fn: function (actual,expected){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._assert_description_(_st(actual).__eq(expected),_st(_st("Expected: ".__comma(_st(expected)._printString())).__comma(" but was: ")).__comma(_st(actual)._printString()));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"assert:equals:",{actual:actual,expected:expected},smalltalk.TestCase)})},
-messageSends: ["assert:description:", "=", ",", "printString"]}),
-smalltalk.TestCase);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "async:",
-fn: function (aBlock){
-var self=this;
-var c;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-self._errorIfNotAsync_("#async");
-c=self["@context"];
-$1=(function(){
-return smalltalk.withContext(function($ctx2) {
-$2=self._isAsync();
-if(smalltalk.assert($2)){
-return _st(c)._execute_(aBlock);
-};
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})});
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"async:",{aBlock:aBlock,c:c},smalltalk.TestCase)})},
-messageSends: ["errorIfNotAsync:", "ifTrue:", "execute:", "isAsync"]}),
-smalltalk.TestCase);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "context:",
-fn: function (aRunningTestContext){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@context"]=aRunningTestContext;
-return self}, function($ctx1) {$ctx1.fill(self,"context:",{aRunningTestContext:aRunningTestContext},smalltalk.TestCase)})},
-messageSends: []}),
-smalltalk.TestCase);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "deny:",
-fn: function (aBoolean){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_(_st(aBoolean)._not());
-return self}, function($ctx1) {$ctx1.fill(self,"deny:",{aBoolean:aBoolean},smalltalk.TestCase)})},
-messageSends: ["assert:", "not"]}),
-smalltalk.TestCase);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "errorIfNotAsync:",
-fn: function (aString){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self._isAsync();
-if(! smalltalk.assert($1)){
-self._error_(_st(aString).__comma(" used without prior #timeout:"));
-};
-return self}, function($ctx1) {$ctx1.fill(self,"errorIfNotAsync:",{aString:aString},smalltalk.TestCase)})},
-messageSends: ["ifFalse:", "error:", ",", "isAsync"]}),
-smalltalk.TestCase);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "finished",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._errorIfNotAsync_("#finished");
-self["@asyncTimeout"]=nil;
-return self}, function($ctx1) {$ctx1.fill(self,"finished",{},smalltalk.TestCase)})},
-messageSends: ["errorIfNotAsync:"]}),
-smalltalk.TestCase);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isAsync",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self["@asyncTimeout"])._notNil();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"isAsync",{},smalltalk.TestCase)})},
-messageSends: ["notNil"]}),
-smalltalk.TestCase);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "performTest",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@asyncTimeout"]=nil;
-self._perform_(self._selector());
-return self}, function($ctx1) {$ctx1.fill(self,"performTest",{},smalltalk.TestCase)})},
-messageSends: ["perform:", "selector"]}),
-smalltalk.TestCase);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "runCase",
-fn: function (){
-var self=this;
-function $TestContext(){return smalltalk.TestContext||(typeof TestContext=="undefined"?nil:TestContext)}
-return smalltalk.withContext(function($ctx1) { 
-_st(_st($TestContext())._testCase_(self))._start();
-return self}, function($ctx1) {$ctx1.fill(self,"runCase",{},smalltalk.TestCase)})},
-messageSends: ["start", "testCase:"]}),
-smalltalk.TestCase);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selector",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@testSelector"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"selector",{},smalltalk.TestCase)})},
-messageSends: []}),
-smalltalk.TestCase);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "setTestSelector:",
-fn: function (aSelector){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@testSelector"]=aSelector;
-return self}, function($ctx1) {$ctx1.fill(self,"setTestSelector:",{aSelector:aSelector},smalltalk.TestCase)})},
-messageSends: []}),
-smalltalk.TestCase);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "setUp",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self}, function($ctx1) {$ctx1.fill(self,"setUp",{},smalltalk.TestCase)})},
-messageSends: []}),
-smalltalk.TestCase);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "should:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_(_st(aBlock)._value());
-return self}, function($ctx1) {$ctx1.fill(self,"should:",{aBlock:aBlock},smalltalk.TestCase)})},
-messageSends: ["assert:", "value"]}),
-smalltalk.TestCase);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "should:raise:",
-fn: function (aBlock,anExceptionClass){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_(_st((function(){
-return smalltalk.withContext(function($ctx2) {
-_st(aBlock)._value();
-return false;
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._on_do_(anExceptionClass,(function(ex){
-return smalltalk.withContext(function($ctx2) {
-return true;
-}, function($ctx2) {$ctx2.fillBlock({ex:ex},$ctx1)})})));
-return self}, function($ctx1) {$ctx1.fill(self,"should:raise:",{aBlock:aBlock,anExceptionClass:anExceptionClass},smalltalk.TestCase)})},
-messageSends: ["assert:", "on:do:", "value"]}),
-smalltalk.TestCase);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "shouldnt:raise:",
-fn: function (aBlock,anExceptionClass){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_(_st((function(){
-return smalltalk.withContext(function($ctx2) {
-_st(aBlock)._value();
-return true;
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._on_do_(anExceptionClass,(function(ex){
-return smalltalk.withContext(function($ctx2) {
-return false;
-}, function($ctx2) {$ctx2.fillBlock({ex:ex},$ctx1)})})));
-return self}, function($ctx1) {$ctx1.fill(self,"shouldnt:raise:",{aBlock:aBlock,anExceptionClass:anExceptionClass},smalltalk.TestCase)})},
-messageSends: ["assert:", "on:do:", "value"]}),
-smalltalk.TestCase);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "signalFailure:",
-fn: function (aString){
-var self=this;
-function $TestFailure(){return smalltalk.TestFailure||(typeof TestFailure=="undefined"?nil:TestFailure)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=_st($TestFailure())._new();
-_st($1)._messageText_(aString);
-$2=_st($1)._signal();
-return self}, function($ctx1) {$ctx1.fill(self,"signalFailure:",{aString:aString},smalltalk.TestCase)})},
-messageSends: ["messageText:", "new", "signal"]}),
-smalltalk.TestCase);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "tearDown",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return self}, function($ctx1) {$ctx1.fill(self,"tearDown",{},smalltalk.TestCase)})},
-messageSends: []}),
-smalltalk.TestCase);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "timeout:",
-fn: function (aNumber){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@asyncTimeout"];
-if(($receiver = $1) == nil || $receiver == undefined){
-$1;
-} else {
-_st(self["@asyncTimeout"])._clearTimeout();
-};
-self["@asyncTimeout"]=(0);
-self["@asyncTimeout"]=_st(self._async_((function(){
-return smalltalk.withContext(function($ctx2) {
-return self._assert_description_(false,"SUnit grace time exhausted");
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})})))._valueWithTimeout_(aNumber);
-return self}, function($ctx1) {$ctx1.fill(self,"timeout:",{aNumber:aNumber},smalltalk.TestCase)})},
-messageSends: ["ifNotNil:", "clearTimeout", "valueWithTimeout:", "async:", "assert:description:"]}),
-smalltalk.TestCase);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "allTestSelectors",
-fn: function (){
-var self=this;
-var selectors;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-selectors=self._testSelectors();
-$1=self._shouldInheritSelectors();
-if(smalltalk.assert($1)){
-_st(selectors)._addAll_(_st(self._superclass())._allTestSelectors());
-};
-$2=selectors;
-return $2;
-}, function($ctx1) {$ctx1.fill(self,"allTestSelectors",{selectors:selectors},smalltalk.TestCase.klass)})},
-messageSends: ["testSelectors", "ifTrue:", "addAll:", "allTestSelectors", "superclass", "shouldInheritSelectors"]}),
-smalltalk.TestCase.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "buildSuite",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._allTestSelectors())._collect_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return self._selector_(each);
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"buildSuite",{},smalltalk.TestCase.klass)})},
-messageSends: ["collect:", "selector:", "allTestSelectors"]}),
-smalltalk.TestCase.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "heliosClass",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "test";
-}, function($ctx1) {$ctx1.fill(self,"heliosClass",{},smalltalk.TestCase.klass)})},
-messageSends: []}),
-smalltalk.TestCase.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isAbstract",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._name()).__eq("TestCase");
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"isAbstract",{},smalltalk.TestCase.klass)})},
-messageSends: ["=", "name"]}),
-smalltalk.TestCase.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "lookupHierarchyRoot",
-fn: function (){
-var self=this;
-function $TestCase(){return smalltalk.TestCase||(typeof TestCase=="undefined"?nil:TestCase)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=$TestCase();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"lookupHierarchyRoot",{},smalltalk.TestCase.klass)})},
-messageSends: []}),
-smalltalk.TestCase.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "selector:",
-fn: function (aSelector){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=self._new();
-_st($2)._setTestSelector_(aSelector);
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"selector:",{aSelector:aSelector},smalltalk.TestCase.klass)})},
-messageSends: ["setTestSelector:", "new", "yourself"]}),
-smalltalk.TestCase.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "shouldInheritSelectors",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self.__tild_eq(self._lookupHierarchyRoot());
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"shouldInheritSelectors",{},smalltalk.TestCase.klass)})},
-messageSends: ["~=", "lookupHierarchyRoot"]}),
-smalltalk.TestCase.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testSelectors",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(_st(self._methodDictionary())._keys())._select_((function(each){
-return smalltalk.withContext(function($ctx2) {
-return _st(each)._match_("^test");
-}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"testSelectors",{},smalltalk.TestCase.klass)})},
-messageSends: ["select:", "match:", "keys", "methodDictionary"]}),
-smalltalk.TestCase.klass);
-
-
-smalltalk.addClass('TestContext', smalltalk.Object, ['testCase'], 'SUnit');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "execute:",
-fn: function (aBlock){
-var self=this;
-var failed;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-_st(self["@testCase"])._context_(self);
-_st((function(){
-return smalltalk.withContext(function($ctx2) {
-failed=true;
-failed;
-_st(aBlock)._value();
-failed=false;
-return failed;
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._ensure_((function(){
-return smalltalk.withContext(function($ctx2) {
-_st(self["@testCase"])._context_(nil);
-$1=_st(failed)._and_((function(){
-return smalltalk.withContext(function($ctx3) {
-return _st(self["@testCase"])._isAsync();
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-if(smalltalk.assert($1)){
-_st(self["@testCase"])._finished();
-};
-$2=_st(self["@testCase"])._isAsync();
-if(! smalltalk.assert($2)){
-return _st(self["@testCase"])._tearDown();
-};
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"execute:",{aBlock:aBlock,failed:failed},smalltalk.TestContext)})},
-messageSends: ["context:", "ensure:", "ifTrue:", "finished", "and:", "isAsync", "ifFalse:", "tearDown", "value"]}),
-smalltalk.TestContext);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "start",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._execute_((function(){
-return smalltalk.withContext(function($ctx2) {
-_st(self["@testCase"])._setUp();
-return _st(self["@testCase"])._performTest();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"start",{},smalltalk.TestContext)})},
-messageSends: ["execute:", "setUp", "performTest"]}),
-smalltalk.TestContext);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testCase:",
-fn: function (aTestCase){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@testCase"]=aTestCase;
-return self}, function($ctx1) {$ctx1.fill(self,"testCase:",{aTestCase:aTestCase},smalltalk.TestContext)})},
-messageSends: []}),
-smalltalk.TestContext);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testCase:",
-fn: function (aTestCase){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=self._new();
-_st($2)._testCase_(aTestCase);
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"testCase:",{aTestCase:aTestCase},smalltalk.TestContext.klass)})},
-messageSends: ["testCase:", "new", "yourself"]}),
-smalltalk.TestContext.klass);
-
-
-smalltalk.addClass('ReportingTestContext', smalltalk.TestContext, ['finished', 'result'], 'SUnit');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "execute:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-_st((function(){
-return smalltalk.withContext(function($ctx2) {
-return self._withErrorReporting_((function(){
-return smalltalk.withContext(function($ctx3) {
-return smalltalk.ReportingTestContext.superclass.fn.prototype._execute_.apply(_st(self), [aBlock]);
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._ensure_((function(){
-return smalltalk.withContext(function($ctx2) {
-$1=_st(self["@testCase"])._isAsync();
-if(! smalltalk.assert($1)){
-_st(self["@result"])._increaseRuns();
-return _st(self["@finished"])._value();
-};
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"execute:",{aBlock:aBlock},smalltalk.ReportingTestContext)})},
-messageSends: ["ensure:", "ifFalse:", "increaseRuns", "value", "isAsync", "withErrorReporting:", "execute:"]}),
-smalltalk.ReportingTestContext);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "finished:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@finished"]=aBlock;
-return self}, function($ctx1) {$ctx1.fill(self,"finished:",{aBlock:aBlock},smalltalk.ReportingTestContext)})},
-messageSends: []}),
-smalltalk.ReportingTestContext);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "result:",
-fn: function (aTestResult){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@result"]=aTestResult;
-return self}, function($ctx1) {$ctx1.fill(self,"result:",{aTestResult:aTestResult},smalltalk.ReportingTestContext)})},
-messageSends: []}),
-smalltalk.ReportingTestContext);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "withErrorReporting:",
-fn: function (aBlock){
-var self=this;
-function $Error(){return smalltalk.Error||(typeof Error=="undefined"?nil:Error)}
-function $TestFailure(){return smalltalk.TestFailure||(typeof TestFailure=="undefined"?nil:TestFailure)}
-return smalltalk.withContext(function($ctx1) { 
-_st((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(aBlock)._on_do_($TestFailure(),(function(ex){
-return smalltalk.withContext(function($ctx3) {
-return _st(self["@result"])._addFailure_(self["@testCase"]);
-}, function($ctx3) {$ctx3.fillBlock({ex:ex},$ctx2)})}));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._on_do_($Error(),(function(ex){
-return smalltalk.withContext(function($ctx2) {
-return _st(self["@result"])._addError_(self["@testCase"]);
-}, function($ctx2) {$ctx2.fillBlock({ex:ex},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"withErrorReporting:",{aBlock:aBlock},smalltalk.ReportingTestContext)})},
-messageSends: ["on:do:", "addError:", "addFailure:"]}),
-smalltalk.ReportingTestContext);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testCase:result:finished:",
-fn: function (aTestCase,aTestResult,aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=smalltalk.ReportingTestContext.klass.superclass.fn.prototype._testCase_.apply(_st(self), [aTestCase]);
-_st($2)._result_(aTestResult);
-_st($2)._finished_(aBlock);
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"testCase:result:finished:",{aTestCase:aTestCase,aTestResult:aTestResult,aBlock:aBlock},smalltalk.ReportingTestContext.klass)})},
-messageSends: ["result:", "testCase:", "finished:", "yourself"]}),
-smalltalk.ReportingTestContext.klass);
-
-
-smalltalk.addClass('TestFailure', smalltalk.Error, [], 'SUnit');
-
-
-smalltalk.addClass('TestResult', smalltalk.Object, ['timestamp', 'runs', 'errors', 'failures', 'total'], 'SUnit');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "addError:",
-fn: function (anError){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._errors())._add_(anError);
-return self}, function($ctx1) {$ctx1.fill(self,"addError:",{anError:anError},smalltalk.TestResult)})},
-messageSends: ["add:", "errors"]}),
-smalltalk.TestResult);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "addFailure:",
-fn: function (aFailure){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self._failures())._add_(aFailure);
-return self}, function($ctx1) {$ctx1.fill(self,"addFailure:",{aFailure:aFailure},smalltalk.TestResult)})},
-messageSends: ["add:", "failures"]}),
-smalltalk.TestResult);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "errors",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@errors"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"errors",{},smalltalk.TestResult)})},
-messageSends: []}),
-smalltalk.TestResult);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "failures",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@failures"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"failures",{},smalltalk.TestResult)})},
-messageSends: []}),
-smalltalk.TestResult);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "increaseRuns",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@runs"]=_st(self["@runs"]).__plus((1));
-return self}, function($ctx1) {$ctx1.fill(self,"increaseRuns",{},smalltalk.TestResult)})},
-messageSends: ["+"]}),
-smalltalk.TestResult);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "initialize",
-fn: function (){
-var self=this;
-function $Date(){return smalltalk.Date||(typeof Date=="undefined"?nil:Date)}
-function $Array(){return smalltalk.Array||(typeof Array=="undefined"?nil:Array)}
-return smalltalk.withContext(function($ctx1) { 
-smalltalk.TestResult.superclass.fn.prototype._initialize.apply(_st(self), []);
-self["@timestamp"]=_st($Date())._now();
-self["@runs"]=(0);
-self["@errors"]=_st($Array())._new();
-self["@failures"]=_st($Array())._new();
-self["@total"]=(0);
-return self}, function($ctx1) {$ctx1.fill(self,"initialize",{},smalltalk.TestResult)})},
-messageSends: ["initialize", "now", "new"]}),
-smalltalk.TestResult);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "nextRunDo:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$1;
-$2=_st(self._runs()).__eq_eq(self._total());
-if(! smalltalk.assert($2)){
-$1=_st(aBlock)._value_(_st(self._runs()).__plus((1)));
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"nextRunDo:",{aBlock:aBlock},smalltalk.TestResult)})},
-messageSends: ["ifFalse:", "value:", "+", "runs", "==", "total"]}),
-smalltalk.TestResult);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "runCase:",
-fn: function (aTestCase){
-var self=this;
-function $Error(){return smalltalk.Error||(typeof Error=="undefined"?nil:Error)}
-function $TestFailure(){return smalltalk.TestFailure||(typeof TestFailure=="undefined"?nil:TestFailure)}
-return smalltalk.withContext(function($ctx1) { 
-_st((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st((function(){
-return smalltalk.withContext(function($ctx3) {
-self._increaseRuns();
-return _st(aTestCase)._runCase();
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}))._on_do_($TestFailure(),(function(ex){
-return smalltalk.withContext(function($ctx3) {
-return self._addFailure_(aTestCase);
-}, function($ctx3) {$ctx3.fillBlock({ex:ex},$ctx2)})}));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._on_do_($Error(),(function(ex){
-return smalltalk.withContext(function($ctx2) {
-return self._addError_(aTestCase);
-}, function($ctx2) {$ctx2.fillBlock({ex:ex},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"runCase:",{aTestCase:aTestCase},smalltalk.TestResult)})},
-messageSends: ["on:do:", "addError:", "addFailure:", "increaseRuns", "runCase"]}),
-smalltalk.TestResult);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "runs",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@runs"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"runs",{},smalltalk.TestResult)})},
-messageSends: []}),
-smalltalk.TestResult);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "status",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=_st(self._errors())._isEmpty();
-if(smalltalk.assert($2)){
-$3=_st(self._failures())._isEmpty();
-if(smalltalk.assert($3)){
-$1="success";
-} else {
-$1="failure";
-};
-} else {
-$1="error";
-};
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"status",{},smalltalk.TestResult)})},
-messageSends: ["ifTrue:ifFalse:", "isEmpty", "failures", "errors"]}),
-smalltalk.TestResult);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "timestamp",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@timestamp"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"timestamp",{},smalltalk.TestResult)})},
-messageSends: []}),
-smalltalk.TestResult);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "total",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@total"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"total",{},smalltalk.TestResult)})},
-messageSends: []}),
-smalltalk.TestResult);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "total:",
-fn: function (aNumber){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@total"]=aNumber;
-return self}, function($ctx1) {$ctx1.fill(self,"total:",{aNumber:aNumber},smalltalk.TestResult)})},
-messageSends: []}),
-smalltalk.TestResult);
-
-
-
-smalltalk.addClass('TestSuiteRunner', smalltalk.Object, ['suite', 'result', 'announcer', 'runNextTest'], 'SUnit');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "announcer",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@announcer"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"announcer",{},smalltalk.TestSuiteRunner)})},
-messageSends: []}),
-smalltalk.TestSuiteRunner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "contextOf:",
-fn: function (anInteger){
-var self=this;
-function $ReportingTestContext(){return smalltalk.ReportingTestContext||(typeof ReportingTestContext=="undefined"?nil:ReportingTestContext)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st($ReportingTestContext())._testCase_result_finished_(_st(self["@suite"])._at_(anInteger),self["@result"],(function(){
-return smalltalk.withContext(function($ctx2) {
-return self._resume();
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"contextOf:",{anInteger:anInteger},smalltalk.TestSuiteRunner)})},
-messageSends: ["testCase:result:finished:", "at:", "resume"]}),
-smalltalk.TestSuiteRunner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "initialize",
-fn: function (){
-var self=this;
-function $Announcer(){return smalltalk.Announcer||(typeof Announcer=="undefined"?nil:Announcer)}
-function $TestResult(){return smalltalk.TestResult||(typeof TestResult=="undefined"?nil:TestResult)}
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-smalltalk.TestSuiteRunner.superclass.fn.prototype._initialize.apply(_st(self), []);
-self["@announcer"]=_st($Announcer())._new();
-self["@result"]=_st($TestResult())._new();
-self["@runNextTest"]=(function(){
-var runs;
-return smalltalk.withContext(function($ctx2) {
-runs=_st(self["@result"])._runs();
-runs;
-$1=_st(runs).__lt(_st(self["@result"])._total());
-if(smalltalk.assert($1)){
-return _st(self._contextOf_(_st(runs).__plus((1))))._start();
-};
-}, function($ctx2) {$ctx2.fillBlock({runs:runs},$ctx1)})});
-return self}, function($ctx1) {$ctx1.fill(self,"initialize",{},smalltalk.TestSuiteRunner)})},
-messageSends: ["initialize", "new", "runs", "ifTrue:", "start", "contextOf:", "+", "<", "total"]}),
-smalltalk.TestSuiteRunner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "result",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@result"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"result",{},smalltalk.TestSuiteRunner)})},
-messageSends: []}),
-smalltalk.TestSuiteRunner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "resume",
-fn: function (){
-var self=this;
-function $ResultAnnouncement(){return smalltalk.ResultAnnouncement||(typeof ResultAnnouncement=="undefined"?nil:ResultAnnouncement)}
-return smalltalk.withContext(function($ctx1) { 
-_st(self["@runNextTest"])._fork();
-_st(self["@announcer"])._announce_(_st(_st($ResultAnnouncement())._new())._result_(self["@result"]));
-return self}, function($ctx1) {$ctx1.fill(self,"resume",{},smalltalk.TestSuiteRunner)})},
-messageSends: ["fork", "announce:", "result:", "new"]}),
-smalltalk.TestSuiteRunner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "run",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self["@result"])._total_(_st(self["@suite"])._size());
-self._resume();
-return self}, function($ctx1) {$ctx1.fill(self,"run",{},smalltalk.TestSuiteRunner)})},
-messageSends: ["total:", "size", "resume"]}),
-smalltalk.TestSuiteRunner);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "suite:",
-fn: function (aCollection){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@suite"]=aCollection;
-return self}, function($ctx1) {$ctx1.fill(self,"suite:",{aCollection:aCollection},smalltalk.TestSuiteRunner)})},
-messageSends: []}),
-smalltalk.TestSuiteRunner);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "new",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._shouldNotImplement();
-return self}, function($ctx1) {$ctx1.fill(self,"new",{},smalltalk.TestSuiteRunner.klass)})},
-messageSends: ["shouldNotImplement"]}),
-smalltalk.TestSuiteRunner.klass);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "on:",
-fn: function (aCollection){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(smalltalk.TestSuiteRunner.klass.superclass.fn.prototype._new.apply(_st(self), []))._suite_(aCollection);
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"on:",{aCollection:aCollection},smalltalk.TestSuiteRunner.klass)})},
-messageSends: ["suite:", "new"]}),
-smalltalk.TestSuiteRunner.klass);
-
-});

+ 0 - 254
js/Spaces.deploy.js

@@ -1,254 +0,0 @@
-define("amber/Spaces", ["amber_vm/smalltalk", "amber_vm/nil", "amber_vm/_st", "amber/Kernel-Objects", "amber/Kernel-Exceptions", "amber/SUnit"], function(smalltalk,nil,_st){
-smalltalk.addPackage('Spaces');
-smalltalk.packages["Spaces"].transport = {"type":"amd","amdNamespace":"amber"};
-
-smalltalk.addClass('ObjectSpace', smalltalk.Object, ['frame'], 'Spaces');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "connectTo:",
-fn: function (aFrame){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._release();
-self["@frame"]=aFrame;
-return self}, function($ctx1) {$ctx1.fill(self,"connectTo:",{aFrame:aFrame},smalltalk.ObjectSpace)})},
-messageSends: ["release"]}),
-smalltalk.ObjectSpace);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "create",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st("body"._asJQuery())._append_("<iframe style=\x22display: none;\x22></iframe>");
-self["@frame"]=_st(_st("iframe"._asJQuery())._get())._last();
-_st(_st(self["@frame"])._contentWindow())._location_(_st(window)._location());
-return self}, function($ctx1) {$ctx1.fill(self,"create",{},smalltalk.ObjectSpace)})},
-messageSends: ["append:", "asJQuery", "last", "get", "location:", "location", "contentWindow"]}),
-smalltalk.ObjectSpace);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "destroy",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=self["@frame"];
-if(($receiver = $1) == nil || $receiver == undefined){
-$2=self;
-return $2;
-} else {
-$1;
-};
-_st(_st(self["@frame"])._asJQuery())._remove();
-self._release();
-return self}, function($ctx1) {$ctx1.fill(self,"destroy",{},smalltalk.ObjectSpace)})},
-messageSends: ["ifNil:", "remove", "asJQuery", "release"]}),
-smalltalk.ObjectSpace);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "do:",
-fn: function (aBlock){
-var self=this;
-function $ObjectSpaceConnectionError(){return smalltalk.ObjectSpaceConnectionError||(typeof ObjectSpaceConnectionError=="undefined"?nil:ObjectSpaceConnectionError)}
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2,$3;
-$1=self._isConnected();
-if(! smalltalk.assert($1)){
-$2=_st($ObjectSpaceConnectionError())._signal();
-return $2;
-};
-$3=_st(_st(self["@frame"])._contentWindow())._eval_(_st("(".__comma(_st(aBlock)._compiledSource())).__comma(")()"));
-return $3;
-}, function($ctx1) {$ctx1.fill(self,"do:",{aBlock:aBlock},smalltalk.ObjectSpace)})},
-messageSends: ["ifFalse:", "signal", "isConnected", "eval:", ",", "compiledSource", "contentWindow"]}),
-smalltalk.ObjectSpace);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "frame",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=self["@frame"];
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"frame",{},smalltalk.ObjectSpace)})},
-messageSends: []}),
-smalltalk.ObjectSpace);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "initialize",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-smalltalk.ObjectSpace.superclass.fn.prototype._initialize.apply(_st(self), []);
-self._create();
-return self}, function($ctx1) {$ctx1.fill(self,"initialize",{},smalltalk.ObjectSpace)})},
-messageSends: ["initialize", "create"]}),
-smalltalk.ObjectSpace);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "isConnected",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1;
-$1=_st(self._frame())._notNil();
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"isConnected",{},smalltalk.ObjectSpace)})},
-messageSends: ["notNil", "frame"]}),
-smalltalk.ObjectSpace);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "release",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self["@frame"]=nil;
-return self}, function($ctx1) {$ctx1.fill(self,"release",{},smalltalk.ObjectSpace)})},
-messageSends: []}),
-smalltalk.ObjectSpace);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "whenReadyDo:",
-fn: function (aBlock){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(_st(self["@frame"])._asJQuery())._bind_do_("load",aBlock);
-return self}, function($ctx1) {$ctx1.fill(self,"whenReadyDo:",{aBlock:aBlock},smalltalk.ObjectSpace)})},
-messageSends: ["bind:do:", "asJQuery"]}),
-smalltalk.ObjectSpace);
-
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "on:",
-fn: function (aFrame){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $2,$3,$1;
-$2=self._basicNew();
-_st($2)._connectTo_(aFrame);
-$3=_st($2)._yourself();
-$1=$3;
-return $1;
-}, function($ctx1) {$ctx1.fill(self,"on:",{aFrame:aFrame},smalltalk.ObjectSpace.klass)})},
-messageSends: ["connectTo:", "basicNew", "yourself"]}),
-smalltalk.ObjectSpace.klass);
-
-
-smalltalk.addClass('ObjectSpaceConnectionError', smalltalk.Error, [], 'Spaces');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "messageText",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-return "The ObjectSpace is not connected";
-}, function($ctx1) {$ctx1.fill(self,"messageText",{},smalltalk.ObjectSpaceConnectionError)})},
-messageSends: []}),
-smalltalk.ObjectSpaceConnectionError);
-
-
-
-smalltalk.addClass('ObjectSpaceTest', smalltalk.TestCase, ['space'], 'Spaces');
-smalltalk.addMethod(
-smalltalk.method({
-selector: "setUp",
-fn: function (){
-var self=this;
-function $ObjectSpace(){return smalltalk.ObjectSpace||(typeof ObjectSpace=="undefined"?nil:ObjectSpace)}
-return smalltalk.withContext(function($ctx1) { 
-self["@space"]=_st($ObjectSpace())._new();
-return self}, function($ctx1) {$ctx1.fill(self,"setUp",{},smalltalk.ObjectSpaceTest)})},
-messageSends: ["new"]}),
-smalltalk.ObjectSpaceTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "tearDown",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-_st(self["@space"])._destroy();
-return self}, function($ctx1) {$ctx1.fill(self,"tearDown",{},smalltalk.ObjectSpaceTest)})},
-messageSends: ["destroy"]}),
-smalltalk.ObjectSpaceTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testConnection",
-fn: function (){
-var self=this;
-function $ObjectSpaceConnectionError(){return smalltalk.ObjectSpaceConnectionError||(typeof ObjectSpaceConnectionError=="undefined"?nil:ObjectSpaceConnectionError)}
-return smalltalk.withContext(function($ctx1) { 
-_st(self["@space"])._destroy();
-self._deny_(_st(self["@space"])._isConnected());
-self._should_raise_((function(){
-return smalltalk.withContext(function($ctx2) {
-return _st(self["@space"])._do_((function(){
-return smalltalk.withContext(function($ctx3) {
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),$ObjectSpaceConnectionError());
-return self}, function($ctx1) {$ctx1.fill(self,"testConnection",{},smalltalk.ObjectSpaceTest)})},
-messageSends: ["destroy", "deny:", "isConnected", "should:raise:", "do:"]}),
-smalltalk.ObjectSpaceTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testCreate",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._assert_(_st(_st(self["@space"])._frame())._notNil());
-self._assert_(_st(self["@space"])._isConnected());
-return self}, function($ctx1) {$ctx1.fill(self,"testCreate",{},smalltalk.ObjectSpaceTest)})},
-messageSends: ["assert:", "notNil", "frame", "isConnected"]}),
-smalltalk.ObjectSpaceTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testEvaluation",
-fn: function (){
-var self=this;
-var result;
-function $Smalltalk(){return smalltalk.Smalltalk||(typeof Smalltalk=="undefined"?nil:Smalltalk)}
-return smalltalk.withContext(function($ctx1) { 
-_st(self["@space"])._whenReadyDo_((function(){
-return smalltalk.withContext(function($ctx2) {
-result=_st(self["@space"])._do_((function(){
-return smalltalk.withContext(function($ctx3) {
-return smalltalk;
-}, function($ctx3) {$ctx3.fillBlock({},$ctx2)})}));
-result;
-self._assert_equals_(_st(_st(result)._class())._name(),"Smalltalk");
-self._deny_(_st(_st(result)._class()).__eq($Smalltalk()));
-return self._deny_(_st(result).__eq_eq(smalltalk));
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
-return self}, function($ctx1) {$ctx1.fill(self,"testEvaluation",{result:result},smalltalk.ObjectSpaceTest)})},
-messageSends: ["whenReadyDo:", "do:", "assert:equals:", "name", "class", "deny:", "=", "=="]}),
-smalltalk.ObjectSpaceTest);
-
-smalltalk.addMethod(
-smalltalk.method({
-selector: "testRelease",
-fn: function (){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-self._deny_(_st(_st(self["@space"])._frame())._isNil());
-_st(self["@space"])._release();
-self._assert_(_st(_st(self["@space"])._frame())._isNil());
-return self}, function($ctx1) {$ctx1.fill(self,"testRelease",{},smalltalk.ObjectSpaceTest)})},
-messageSends: ["deny:", "isNil", "frame", "release", "assert:"]}),
-smalltalk.ObjectSpaceTest);
-
-
-});