Ver Fonte

simplified amdRecipe, reusing generic transport output

Herbert Vojčík há 10 anos atrás
pai
commit
65ad2ca654
3 ficheiros alterados com 11 adições e 67 exclusões
  1. 4 23
      js/Importer-Exporter.deploy.js
  2. 5 29
      js/Importer-Exporter.js
  3. 2 15
      st/Importer-Exporter.st

+ 4 - 23
js/Importer-Exporter.deploy.js

@@ -329,18 +329,17 @@ smalltalk.method({
 selector: "amdRecipe",
 fn: function (){
 var self=this;
-var legacy,result;
+var result;
 function $AmdExporter(){return smalltalk.AmdExporter||(typeof AmdExporter=="undefined"?nil:AmdExporter)}
 return smalltalk.withContext(function($ctx1) { 
 var $1;
-legacy=self._recipe();
-result=_st(_st(_st(legacy)._copyFrom_to_((1),(2))).__comma([_st($AmdExporter()).__minus_gt("exportPackageTransportOf:on:")])).__comma(_st(legacy)._copyFrom_to_((3),_st(legacy)._size()));
+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",{legacy:legacy,result:result},smalltalk.Exporter)})},
-messageSends: ["recipe", ",", "copyFrom:to:", "size", "->", "key:", "first", "last"]}),
+}, function($ctx1) {$ctx1.fill(self,"amdRecipe",{result:result},smalltalk.Exporter)})},
+messageSends: ["recipe", "key:", "first", "last"]}),
 smalltalk.Exporter);
 
 smalltalk.addMethod(
@@ -740,24 +739,6 @@ return self}, function($ctx1) {$ctx1.fill(self,"exportPackagePrologueOf:on:",{aP
 messageSends: ["nextPutAll:", "ifNil:", "amdNamespace", "name", "asJavascript", ",", "amdNamesOfPackages:", "loadDependencies", "lf"]}),
 smalltalk.AmdExporter.klass);
 
-smalltalk.addMethod(
-smalltalk.method({
-selector: "exportPackageTransportOf:on:",
-fn: function (aPackage,aStream){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=aStream;
-_st($1)._nextPutAll_("smalltalk.packages[");
-_st($1)._nextPutAll_(_st(_st(aPackage)._name())._asJavascript());
-_st($1)._nextPutAll_("].transport = ");
-_st($1)._nextPutAll_(_st(aPackage)._transportJson());
-_st($1)._nextPutAll_(";");
-$2=_st($1)._lf();
-return self}, function($ctx1) {$ctx1.fill(self,"exportPackageTransportOf:on:",{aPackage:aPackage,aStream:aStream},smalltalk.AmdExporter.klass)})},
-messageSends: ["nextPutAll:", "asJavascript", "name", "transportJson", "lf"]}),
-smalltalk.AmdExporter.klass);
-
 
 smalltalk.addClass('ChunkParser', smalltalk.Object, ['stream'], 'Importer-Exporter');
 smalltalk.addMethod(

+ 5 - 29
js/Importer-Exporter.js

@@ -408,20 +408,19 @@ selector: "amdRecipe",
 category: 'fileOut',
 fn: function (){
 var self=this;
-var legacy,result;
+var result;
 function $AmdExporter(){return smalltalk.AmdExporter||(typeof AmdExporter=="undefined"?nil:AmdExporter)}
 return smalltalk.withContext(function($ctx1) { 
 var $1;
-legacy=self._recipe();
-result=_st(_st(_st(legacy)._copyFrom_to_((1),(2))).__comma([_st($AmdExporter()).__minus_gt("exportPackageTransportOf:on:")])).__comma(_st(legacy)._copyFrom_to_((3),_st(legacy)._size()));
+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",{legacy:legacy,result:result},smalltalk.Exporter)})},
+}, function($ctx1) {$ctx1.fill(self,"amdRecipe",{result:result},smalltalk.Exporter)})},
 args: [],
-source: "amdRecipe\x0a\x09\x22Export a given package with amd transport type.\x22\x0a\x0a\x09| legacy result |\x0a\x09legacy := self recipe.\x0a\x09result := (legacy copyFrom: 1 to: 2),\x0a\x09{ AmdExporter -> #exportPackageTransportOf:on: },\x0a\x09(legacy copyFrom: 3 to: legacy size).\x0a\x09result first key: AmdExporter.\x0a\x09result last key: AmdExporter.\x0a\x09^result",
-messageSends: ["recipe", ",", "copyFrom:to:", "size", "->", "key:", "first", "last"],
+source: "amdRecipe\x0a\x09\x22Export a given package with amd transport type.\x22\x0a\x0a\x09| result |\x0a\x09result := self recipe.\x0a\x09result first key: AmdExporter.\x0a\x09result last key: AmdExporter.\x0a\x09^result",
+messageSends: ["recipe", "key:", "first", "last"],
 referencedClasses: ["AmdExporter"]
 }),
 smalltalk.Exporter);
@@ -909,29 +908,6 @@ referencedClasses: []
 }),
 smalltalk.AmdExporter.klass);
 
-smalltalk.addMethod(
-smalltalk.method({
-selector: "exportPackageTransportOf:on:",
-category: 'exporting-output',
-fn: function (aPackage,aStream){
-var self=this;
-return smalltalk.withContext(function($ctx1) { 
-var $1,$2;
-$1=aStream;
-_st($1)._nextPutAll_("smalltalk.packages[");
-_st($1)._nextPutAll_(_st(_st(aPackage)._name())._asJavascript());
-_st($1)._nextPutAll_("].transport = ");
-_st($1)._nextPutAll_(_st(aPackage)._transportJson());
-_st($1)._nextPutAll_(";");
-$2=_st($1)._lf();
-return self}, function($ctx1) {$ctx1.fill(self,"exportPackageTransportOf:on:",{aPackage:aPackage,aStream:aStream},smalltalk.AmdExporter.klass)})},
-args: ["aPackage", "aStream"],
-source: "exportPackageTransportOf: aPackage on: aStream\x0a\x09aStream\x0a\x09\x09nextPutAll: 'smalltalk.packages[';\x0a\x09\x09nextPutAll: aPackage name asJavascript;\x0a\x09\x09nextPutAll: '].transport = ';\x0a\x09\x09nextPutAll: aPackage transportJson;\x0a\x09\x09nextPutAll: ';';\x0a\x09\x09lf",
-messageSends: ["nextPutAll:", "asJavascript", "name", "transportJson", "lf"],
-referencedClasses: []
-}),
-smalltalk.AmdExporter.klass);
-
 
 smalltalk.addClass('ChunkParser', smalltalk.Object, ['stream'], 'Importer-Exporter');
 smalltalk.ChunkParser.comment="I am responsible for parsing aStream contents in the chunk format.\x0a\x0a## API\x0a\x0a    ChunkParser new\x0a        stream: aStream;\x0a        nextChunk";

+ 2 - 15
st/Importer-Exporter.st

@@ -234,11 +234,8 @@ classNameFor: aClass
 amdRecipe
 	"Export a given package with amd transport type."
 
-	| legacy result |
-	legacy := self recipe.
-	result := (legacy copyFrom: 1 to: 2),
-	{ AmdExporter -> #exportPackageTransportOf:on: },
-	(legacy copyFrom: 3 to: legacy size).
+	| result |
+	result := self recipe.
 	result first key: AmdExporter.
 	result last key: AmdExporter.
 	^result
@@ -418,16 +415,6 @@ exportPackagePrologueOf: aPackage on: aStream
 		nextPutAll: (#('amber_vm/smalltalk' 'amber_vm/nil' 'amber_vm/_st'), (self amdNamesOfPackages: aPackage loadDependencies)) asJavascript;
 		nextPutAll: ', function(smalltalk,nil,_st){';
 		lf
-!
-
-exportPackageTransportOf: aPackage on: aStream
-	aStream
-		nextPutAll: 'smalltalk.packages[';
-		nextPutAll: aPackage name asJavascript;
-		nextPutAll: '].transport = ';
-		nextPutAll: aPackage transportJson;
-		nextPutAll: ';';
-		lf
 ! !
 
 !AmdExporter class methodsFor: 'private'!