|
@@ -1689,6 +1689,29 @@ referencedClasses: []
|
|
}),
|
|
}),
|
|
globals.ProtoObject);
|
|
globals.ProtoObject);
|
|
|
|
|
|
|
|
+smalltalk.addMethod(
|
|
|
|
+smalltalk.method({
|
|
|
|
+selector: "isKindOf:",
|
|
|
|
+protocol: 'testing',
|
|
|
|
+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},globals.ProtoObject)})},
|
|
|
|
+args: ["aClass"],
|
|
|
|
+source: "isKindOf: aClass\x0a\x09^ (self isMemberOf: aClass)\x0a\x09\x09ifTrue: [ true ]\x0a\x09\x09ifFalse: [ self class inheritsFrom: aClass ]",
|
|
|
|
+messageSends: ["ifTrue:ifFalse:", "isMemberOf:", "inheritsFrom:", "class"],
|
|
|
|
+referencedClasses: []
|
|
|
|
+}),
|
|
|
|
+globals.ProtoObject);
|
|
|
|
+
|
|
smalltalk.addMethod(
|
|
smalltalk.addMethod(
|
|
smalltalk.method({
|
|
smalltalk.method({
|
|
selector: "perform:",
|
|
selector: "perform:",
|
|
@@ -2349,29 +2372,6 @@ referencedClasses: []
|
|
}),
|
|
}),
|
|
globals.Object);
|
|
globals.Object);
|
|
|
|
|
|
-smalltalk.addMethod(
|
|
|
|
-smalltalk.method({
|
|
|
|
-selector: "isKindOf:",
|
|
|
|
-protocol: 'testing',
|
|
|
|
-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},globals.Object)})},
|
|
|
|
-args: ["aClass"],
|
|
|
|
-source: "isKindOf: aClass\x0a\x09^ (self isMemberOf: aClass)\x0a\x09\x09ifTrue: [ true ]\x0a\x09\x09ifFalse: [ self class inheritsFrom: aClass ]",
|
|
|
|
-messageSends: ["ifTrue:ifFalse:", "isMemberOf:", "inheritsFrom:", "class"],
|
|
|
|
-referencedClasses: []
|
|
|
|
-}),
|
|
|
|
-globals.Object);
|
|
|
|
-
|
|
|
|
smalltalk.addMethod(
|
|
smalltalk.addMethod(
|
|
smalltalk.method({
|
|
smalltalk.method({
|
|
selector: "isMemberOf:",
|
|
selector: "isMemberOf:",
|
|
@@ -11654,7 +11654,7 @@ globals.IndexableCollection);
|
|
smalltalk.addMethod(
|
|
smalltalk.addMethod(
|
|
smalltalk.method({
|
|
smalltalk.method({
|
|
selector: "with:do:",
|
|
selector: "with:do:",
|
|
-protocol: 'enumarating',
|
|
|
|
|
|
+protocol: 'enumerating',
|
|
fn: function (anotherCollection,aBlock){
|
|
fn: function (anotherCollection,aBlock){
|
|
var self=this;
|
|
var self=this;
|
|
return smalltalk.withContext(function($ctx1) {
|
|
return smalltalk.withContext(function($ctx1) {
|
|
@@ -11673,7 +11673,7 @@ globals.IndexableCollection);
|
|
smalltalk.addMethod(
|
|
smalltalk.addMethod(
|
|
smalltalk.method({
|
|
smalltalk.method({
|
|
selector: "withIndexDo:",
|
|
selector: "withIndexDo:",
|
|
-protocol: 'enumarating',
|
|
|
|
|
|
+protocol: 'enumerating',
|
|
fn: function (aBlock){
|
|
fn: function (aBlock){
|
|
var self=this;
|
|
var self=this;
|
|
return smalltalk.withContext(function($ctx1) {
|
|
return smalltalk.withContext(function($ctx1) {
|
|
@@ -18613,19 +18613,19 @@ protocol: 'accessing',
|
|
fn: function (){
|
|
fn: function (){
|
|
var self=this;
|
|
var self=this;
|
|
function $SystemAnnouncer(){return globals.SystemAnnouncer||(typeof SystemAnnouncer=="undefined"?nil:SystemAnnouncer)}
|
|
function $SystemAnnouncer(){return globals.SystemAnnouncer||(typeof SystemAnnouncer=="undefined"?nil:SystemAnnouncer)}
|
|
-function $PackageClean(){return globals.PackageClean||(typeof PackageClean=="undefined"?nil:PackageClean)}
|
|
|
|
|
|
+function $PackageDirty(){return globals.PackageDirty||(typeof PackageDirty=="undefined"?nil:PackageDirty)}
|
|
return smalltalk.withContext(function($ctx1) {
|
|
return smalltalk.withContext(function($ctx1) {
|
|
var $1,$2;
|
|
var $1,$2;
|
|
self["@dirty"]=true;
|
|
self["@dirty"]=true;
|
|
-$1=_st($PackageClean())._new();
|
|
|
|
|
|
+$1=_st($PackageDirty())._new();
|
|
_st($1)._package_(self);
|
|
_st($1)._package_(self);
|
|
$2=_st($1)._yourself();
|
|
$2=_st($1)._yourself();
|
|
_st(_st($SystemAnnouncer())._current())._announce_($2);
|
|
_st(_st($SystemAnnouncer())._current())._announce_($2);
|
|
return self}, function($ctx1) {$ctx1.fill(self,"beDirty",{},globals.Package)})},
|
|
return self}, function($ctx1) {$ctx1.fill(self,"beDirty",{},globals.Package)})},
|
|
args: [],
|
|
args: [],
|
|
-source: "beDirty\x0a\x09dirty := true.\x0a\x09\x0a\x09SystemAnnouncer current announce: (PackageClean new\x0a\x09\x09package: self;\x0a\x09\x09yourself)",
|
|
|
|
|
|
+source: "beDirty\x0a\x09dirty := true.\x0a\x09\x0a\x09SystemAnnouncer current announce: (PackageDirty new\x0a\x09\x09package: self;\x0a\x09\x09yourself)",
|
|
messageSends: ["announce:", "current", "package:", "new", "yourself"],
|
|
messageSends: ["announce:", "current", "package:", "new", "yourself"],
|
|
-referencedClasses: ["SystemAnnouncer", "PackageClean"]
|
|
|
|
|
|
+referencedClasses: ["SystemAnnouncer", "PackageDirty"]
|
|
}),
|
|
}),
|
|
globals.Package);
|
|
globals.Package);
|
|
|
|
|
|
@@ -18780,6 +18780,31 @@ referencedClasses: []
|
|
}),
|
|
}),
|
|
globals.Package);
|
|
globals.Package);
|
|
|
|
|
|
|
|
+smalltalk.addMethod(
|
|
|
|
+smalltalk.method({
|
|
|
|
+selector: "isTestPackage",
|
|
|
|
+protocol: 'testing',
|
|
|
|
+fn: function (){
|
|
|
|
+var self=this;
|
|
|
|
+function $TestCase(){return globals.TestCase||(typeof TestCase=="undefined"?nil:TestCase)}
|
|
|
|
+return smalltalk.withContext(function($ctx1) {
|
|
|
|
+var $1;
|
|
|
|
+$1=_st(self._classes())._anySatisfy_((function(each){
|
|
|
|
+return smalltalk.withContext(function($ctx2) {
|
|
|
|
+return _st(_st(each)._includesBehavior_($TestCase()))._and_((function(){
|
|
|
|
+return smalltalk.withContext(function($ctx3) {
|
|
|
|
+return _st(_st(each)._isAbstract())._not();
|
|
|
|
+}, function($ctx3) {$ctx3.fillBlock({},$ctx2,2)})}));
|
|
|
|
+}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1,1)})}));
|
|
|
|
+return $1;
|
|
|
|
+}, function($ctx1) {$ctx1.fill(self,"isTestPackage",{},globals.Package)})},
|
|
|
|
+args: [],
|
|
|
|
+source: "isTestPackage\x0a\x09^ self classes anySatisfy: [ :each |\x0a\x09\x09(each includesBehavior: TestCase) and: [ \x0a\x09\x09\x09each isAbstract not ] ]",
|
|
|
|
+messageSends: ["anySatisfy:", "classes", "and:", "includesBehavior:", "not", "isAbstract"],
|
|
|
|
+referencedClasses: ["TestCase"]
|
|
|
|
+}),
|
|
|
|
+globals.Package);
|
|
|
|
+
|
|
smalltalk.addMethod(
|
|
smalltalk.addMethod(
|
|
smalltalk.method({
|
|
smalltalk.method({
|
|
selector: "loadDependencies",
|
|
selector: "loadDependencies",
|
|
@@ -44719,22 +44744,40 @@ selector: "testAddExtensionMethod",
|
|
protocol: 'tests',
|
|
protocol: 'tests',
|
|
fn: function (){
|
|
fn: function (){
|
|
var self=this;
|
|
var self=this;
|
|
-var method;
|
|
|
|
|
|
+var method,dirty;
|
|
return smalltalk.withContext(function($ctx1) {
|
|
return smalltalk.withContext(function($ctx1) {
|
|
-var $1,$4,$3,$2;
|
|
|
|
-$1=self._class();
|
|
|
|
|
|
+var $2,$1,$4,$3,$5,$8,$7,$6,$9,$10;
|
|
|
|
+$2=self._class();
|
|
$ctx1.sendIdx["class"]=1;
|
|
$ctx1.sendIdx["class"]=1;
|
|
-method=_st($1)._compile_protocol_("doNothing","**not-a-package");
|
|
|
|
|
|
+$1=_st($2)._package();
|
|
|
|
+$ctx1.sendIdx["package"]=1;
|
|
|
|
+dirty=_st($1)._isDirty();
|
|
|
|
+$ctx1.sendIdx["isDirty"]=1;
|
|
$4=self._class();
|
|
$4=self._class();
|
|
$ctx1.sendIdx["class"]=2;
|
|
$ctx1.sendIdx["class"]=2;
|
|
$3=_st($4)._package();
|
|
$3=_st($4)._package();
|
|
-$2=_st($3)._isDirty();
|
|
|
|
-self._deny_($2);
|
|
|
|
-_st(self._class())._removeCompiledMethod_(method);
|
|
|
|
-return self}, function($ctx1) {$ctx1.fill(self,"testAddExtensionMethod",{method:method},globals.AnnouncementSubscriptionTest)})},
|
|
|
|
|
|
+$ctx1.sendIdx["package"]=2;
|
|
|
|
+_st($3)._beClean();
|
|
|
|
+$5=self._class();
|
|
|
|
+$ctx1.sendIdx["class"]=3;
|
|
|
|
+method=_st($5)._compile_protocol_("doNothing","**not-a-package");
|
|
|
|
+$8=self._class();
|
|
|
|
+$ctx1.sendIdx["class"]=4;
|
|
|
|
+$7=_st($8)._package();
|
|
|
|
+$ctx1.sendIdx["package"]=3;
|
|
|
|
+$6=_st($7)._isDirty();
|
|
|
|
+self._deny_($6);
|
|
|
|
+$9=self._class();
|
|
|
|
+$ctx1.sendIdx["class"]=5;
|
|
|
|
+_st($9)._removeCompiledMethod_(method);
|
|
|
|
+$10=dirty;
|
|
|
|
+if(smalltalk.assert($10)){
|
|
|
|
+_st(_st(self._class())._package())._beDirty();
|
|
|
|
+};
|
|
|
|
+return self}, function($ctx1) {$ctx1.fill(self,"testAddExtensionMethod",{method:method,dirty:dirty},globals.AnnouncementSubscriptionTest)})},
|
|
args: [],
|
|
args: [],
|
|
-source: "testAddExtensionMethod\x0a\x09| method |\x0a\x09method := self class compile: 'doNothing' protocol: '**not-a-package'.\x0a\x09self deny: self class package isDirty.\x0a\x09self class removeCompiledMethod: method.",
|
|
|
|
-messageSends: ["compile:protocol:", "class", "deny:", "isDirty", "package", "removeCompiledMethod:"],
|
|
|
|
|
|
+source: "testAddExtensionMethod\x0a\x09| method dirty |\x0a\x09dirty := self class package isDirty.\x0a\x09self class package beClean.\x0a\x09method := self class compile: 'doNothing' protocol: '**not-a-package'.\x0a\x09self deny: self class package isDirty.\x0a\x09\x0a\x09self class removeCompiledMethod: method.\x0a\x09dirty ifTrue: [ self class package beDirty ]",
|
|
|
|
+messageSends: ["isDirty", "package", "class", "beClean", "compile:protocol:", "deny:", "removeCompiledMethod:", "ifTrue:", "beDirty"],
|
|
referencedClasses: []
|
|
referencedClasses: []
|
|
}),
|
|
}),
|
|
globals.AnnouncementSubscriptionTest);
|
|
globals.AnnouncementSubscriptionTest);
|
|
@@ -57734,6 +57777,27 @@ referencedClasses: []
|
|
}),
|
|
}),
|
|
globals.Initer);
|
|
globals.Initer);
|
|
|
|
|
|
|
|
+smalltalk.addMethod(
|
|
|
|
+smalltalk.method({
|
|
|
|
+selector: "npmInstallThenDo:",
|
|
|
|
+protocol: 'action',
|
|
|
|
+fn: function (aBlock){
|
|
|
|
+var self=this;
|
|
|
|
+var child;
|
|
|
|
+return smalltalk.withContext(function($ctx1) {
|
|
|
|
+var $1;
|
|
|
|
+child=_st(self["@childProcess"])._exec_thenDo_("npm install",aBlock);
|
|
|
|
+$1=_st(child)._stdout();
|
|
|
|
+$ctx1.sendIdx["stdout"]=1;
|
|
|
|
+_st($1)._pipe_options_(_st(process)._stdout(),globals.HashedCollection._newFromPairs_(["end",false]));
|
|
|
|
+return self}, function($ctx1) {$ctx1.fill(self,"npmInstallThenDo:",{aBlock:aBlock,child:child},globals.Initer)})},
|
|
|
|
+args: ["aBlock"],
|
|
|
|
+source: "npmInstallThenDo: aBlock\x0a\x09| child |\x0a\x09child := childProcess\x0a\x09\x09exec: 'npm install'\x0a\x09\x09thenDo: aBlock.\x0a\x09child stdout pipe: process stdout options: #{ 'end' -> false }",
|
|
|
|
+messageSends: ["exec:thenDo:", "pipe:options:", "stdout"],
|
|
|
|
+referencedClasses: []
|
|
|
|
+}),
|
|
|
|
+globals.Initer);
|
|
|
|
+
|
|
smalltalk.addMethod(
|
|
smalltalk.addMethod(
|
|
smalltalk.method({
|
|
smalltalk.method({
|
|
selector: "rootDirname",
|
|
selector: "rootDirname",
|
|
@@ -57759,22 +57823,37 @@ protocol: 'action',
|
|
fn: function (){
|
|
fn: function (){
|
|
var self=this;
|
|
var self=this;
|
|
return smalltalk.withContext(function($ctx1) {
|
|
return smalltalk.withContext(function($ctx1) {
|
|
-var $1,$2,$3,$4,$receiver;
|
|
|
|
|
|
+var $1,$2,$3,$4,$5,$6,$receiver;
|
|
self._gruntInitThenDo_((function(error){
|
|
self._gruntInitThenDo_((function(error){
|
|
return smalltalk.withContext(function($ctx2) {
|
|
return smalltalk.withContext(function($ctx2) {
|
|
if(($receiver = error) == null || $receiver.isNil){
|
|
if(($receiver = error) == null || $receiver.isNil){
|
|
return self._bowerInstallThenDo_((function(error2){
|
|
return self._bowerInstallThenDo_((function(error2){
|
|
return smalltalk.withContext(function($ctx3) {
|
|
return smalltalk.withContext(function($ctx3) {
|
|
if(($receiver = error2) == null || $receiver.isNil){
|
|
if(($receiver = error2) == null || $receiver.isNil){
|
|
-error2;
|
|
|
|
|
|
+return self._npmInstallThenDo_((function(error3){
|
|
|
|
+return smalltalk.withContext(function($ctx4) {
|
|
|
|
+if(($receiver = error3) == null || $receiver.isNil){
|
|
|
|
+return _st(process)._exit();
|
|
|
|
+} else {
|
|
|
|
+$5=console;
|
|
|
|
+_st($5)._log_("npm install exec error:");
|
|
|
|
+$ctx4.sendIdx["log:"]=5;
|
|
|
|
+$6=_st($5)._log_(error3);
|
|
|
|
+$6;
|
|
|
|
+return _st(process)._exit();
|
|
|
|
+$ctx4.sendIdx["exit"]=3;
|
|
|
|
+};
|
|
|
|
+}, function($ctx4) {$ctx4.fillBlock({error3:error3},$ctx3,7)})}));
|
|
} else {
|
|
} else {
|
|
$3=console;
|
|
$3=console;
|
|
_st($3)._log_("bower install exec error:");
|
|
_st($3)._log_("bower install exec error:");
|
|
$ctx3.sendIdx["log:"]=3;
|
|
$ctx3.sendIdx["log:"]=3;
|
|
$4=_st($3)._log_(error2);
|
|
$4=_st($3)._log_(error2);
|
|
|
|
+$ctx3.sendIdx["log:"]=4;
|
|
$4;
|
|
$4;
|
|
-};
|
|
|
|
return _st(process)._exit();
|
|
return _st(process)._exit();
|
|
|
|
+$ctx3.sendIdx["exit"]=2;
|
|
|
|
+};
|
|
}, function($ctx3) {$ctx3.fillBlock({error2:error2},$ctx2,4)})}));
|
|
}, function($ctx3) {$ctx3.fillBlock({error2:error2},$ctx2,4)})}));
|
|
} else {
|
|
} else {
|
|
$1=console;
|
|
$1=console;
|
|
@@ -57789,8 +57868,8 @@ $ctx2.sendIdx["exit"]=1;
|
|
}, function($ctx2) {$ctx2.fillBlock({error:error},$ctx1,1)})}));
|
|
}, function($ctx2) {$ctx2.fillBlock({error:error},$ctx1,1)})}));
|
|
return self}, function($ctx1) {$ctx1.fill(self,"start",{},globals.Initer)})},
|
|
return self}, function($ctx1) {$ctx1.fill(self,"start",{},globals.Initer)})},
|
|
args: [],
|
|
args: [],
|
|
-source: "start\x0a\x09self gruntInitThenDo: [ :error |\x0a\x09\x09error ifNotNil: [ console log: 'grunt-init exec error:'; log: error. process exit ]\x0a\x09\x09ifNil: [\x0a\x09\x09\x09self bowerInstallThenDo: [ :error2 |\x0a\x09\x09\x09\x09error2 ifNotNil: [ console log: 'bower install exec error:'; log: error2 ].\x0a\x09\x09\x09\x09process exit ]]]",
|
|
|
|
-messageSends: ["gruntInitThenDo:", "ifNotNil:ifNil:", "log:", "exit", "bowerInstallThenDo:", "ifNotNil:"],
|
|
|
|
|
|
+source: "start\x0a\x09self gruntInitThenDo: [ :error | error\x0a\x09ifNotNil: [\x0a\x09\x09console log: 'grunt-init exec error:'; log: error.\x0a\x09\x09process exit ]\x0a\x09ifNil: [\x0a\x0a\x09self bowerInstallThenDo: [ :error2 | error2\x0a\x09ifNotNil: [\x0a\x09\x09console log: 'bower install exec error:'; log: error2.\x0a\x09\x09process exit ]\x0a\x09ifNil: [\x0a\x0a\x09self npmInstallThenDo: [ :error3 | error3\x0a\x09ifNotNil: [\x0a\x09\x09console log: 'npm install exec error:'; log: error3.\x0a\x09\x09process exit ]\x0a\x09ifNil: [\x0a\x0a\x09process exit ]]]]]]",
|
|
|
|
+messageSends: ["gruntInitThenDo:", "ifNotNil:ifNil:", "log:", "exit", "bowerInstallThenDo:", "npmInstallThenDo:"],
|
|
referencedClasses: []
|
|
referencedClasses: []
|
|
}),
|
|
}),
|
|
globals.Initer);
|
|
globals.Initer);
|