|
@@ -1249,23 +1249,43 @@ selector: "loadDependencies",
|
|
category: 'dependencies',
|
|
category: 'dependencies',
|
|
fn: function (){
|
|
fn: function (){
|
|
var self=this;
|
|
var self=this;
|
|
-var root;
|
|
|
|
|
|
+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)})},
|
|
|
|
+args: [],
|
|
|
|
+source: "loadDependencies\x0a\x09\x22Returns list of packages that need to be loaded\x0a\x09before loading this package.\x22\x0a\x09\x0a\x09| classes packages |\x0a\x09classes := self loadDependencyClasses.\x0a\x09^(classes collect: [ :each | each package ]) asSet\x0a\x09\x09remove: self ifAbsent: [];\x0a\x09\x09yourself",
|
|
|
|
+messageSends: ["loadDependencyClasses", "remove:ifAbsent:", "asSet", "collect:", "package", "yourself"],
|
|
|
|
+referencedClasses: []
|
|
|
|
+}),
|
|
|
|
+smalltalk.Package);
|
|
|
|
+
|
|
|
|
+smalltalk.addMethod(
|
|
|
|
+smalltalk.method({
|
|
|
|
+selector: "loadDependencyClasses",
|
|
|
|
+category: 'dependencies',
|
|
|
|
+fn: function (){
|
|
|
|
+var self=this;
|
|
function $Object(){return smalltalk.Object||(typeof Object=="undefined"?nil:Object)}
|
|
function $Object(){return smalltalk.Object||(typeof Object=="undefined"?nil:Object)}
|
|
return smalltalk.withContext(function($ctx1) {
|
|
return smalltalk.withContext(function($ctx1) {
|
|
-var $1,$2,$3;
|
|
|
|
-root=_st($Object())._package();
|
|
|
|
-$1=self.__eq_eq(root);
|
|
|
|
-if(smalltalk.assert($1)){
|
|
|
|
-$2=[];
|
|
|
|
-return $2;
|
|
|
|
-} else {
|
|
|
|
-$3=[root];
|
|
|
|
-return $3;
|
|
|
|
-};
|
|
|
|
-return self}, function($ctx1) {$ctx1.fill(self,"loadDependencies",{root:root},smalltalk.Package)})},
|
|
|
|
|
|
+var $1;
|
|
|
|
+$1=[$Object()];
|
|
|
|
+return $1;
|
|
|
|
+}, function($ctx1) {$ctx1.fill(self,"loadDependencyClasses",{},smalltalk.Package)})},
|
|
args: [],
|
|
args: [],
|
|
-source: "loadDependencies\x0a\x09\x22Returns list of packages that need to be present\x0a\x09before loading this package.\x0a\x09These are determined as set of packages covering\x0a\x09all classes used either for subclassing or for defining\x0a\x09extension methods on.\x22\x0a\x09\x0a\x09\x22Fake one for now. TODO\x22\x0a\x09| root |\x0a\x09root := Object package.\x0a\x09self == root ifTrue: [ ^#() ] ifFalse: [ ^{root} ]",
|
|
|
|
-messageSends: ["package", "ifTrue:ifFalse:", "=="],
|
|
|
|
|
|
+source: "loadDependencyClasses\x0a\x09\x22Returns classes needed at the time of loading a package.\x0a\x09These are all that are used to subclass\x0a\x09and to define an extension method\x22\x0a\x09\x0a\x09\x22Fake one for now. TODO\x22\x0a\x09^ { Object }",
|
|
|
|
+messageSends: [],
|
|
referencedClasses: ["Object"]
|
|
referencedClasses: ["Object"]
|
|
}),
|
|
}),
|
|
smalltalk.Package);
|
|
smalltalk.Package);
|