|
@@ -396,40 +396,25 @@ selector: "inheritsFrom:",
|
|
|
protocol: "testing",
|
|
|
|
|
|
args: ["aClass"],
|
|
|
-source: "inheritsFrom: aClass\x0a\x09self superclass ifNil: [ ^ false ].\x0a\x0a\x09^ aClass == self superclass or: [ \x0a\x09\x09self superclass inheritsFrom: aClass ]",
|
|
|
+source: "inheritsFrom: aClass\x0a\x09^ self superclass\x0a\x09\x09ifNil: [ false ]\x0a\x09\x09ifNotNil: [ :superClass | superClass includesBehavior: aClass ]",
|
|
|
referencedClasses: [],
|
|
|
|
|
|
pragmas: [],
|
|
|
-messageSends: ["ifNil:", "superclass", "or:", "==", "inheritsFrom:"]
|
|
|
+messageSends: ["ifNil:ifNotNil:", "superclass", "includesBehavior:"]
|
|
|
}, function ($methodClass){ return function (aClass){
|
|
|
var self=this,$self=this;
|
|
|
|
|
|
return $core.withContext(function($ctx1) {
|
|
|
|
|
|
-var $1,$3,$2,$receiver;
|
|
|
+var $1,$receiver;
|
|
|
$1=$self._superclass();
|
|
|
-
|
|
|
-$ctx1.sendIdx["superclass"]=1;
|
|
|
-
|
|
|
if(($receiver = $1) == null || $receiver.a$nil){
|
|
|
return false;
|
|
|
} else {
|
|
|
-$1;
|
|
|
+var superClass;
|
|
|
+superClass=$receiver;
|
|
|
+return $recv(superClass)._includesBehavior_(aClass);
|
|
|
}
|
|
|
-$3=$self._superclass();
|
|
|
-
|
|
|
-$ctx1.sendIdx["superclass"]=2;
|
|
|
-
|
|
|
-$2=$recv(aClass).__eq_eq($3);
|
|
|
-return $recv($2)._or_((function(){
|
|
|
-
|
|
|
-return $core.withContext(function($ctx2) {
|
|
|
-
|
|
|
-return $recv($self._superclass())._inheritsFrom_(aClass);
|
|
|
-
|
|
|
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1,2)});
|
|
|
-
|
|
|
-}));
|
|
|
|
|
|
}, function($ctx1) {$ctx1.fill(self,"inheritsFrom:",{aClass:aClass})});
|
|
|
|