|
@@ -2,7 +2,7 @@ define(["amber/boot"
|
|
|
//>>excludeStart("imports", pragmas.excludeImports);
|
|
|
, "axxord/Axxord"
|
|
|
//>>excludeEnd("imports");
|
|
|
-, "amber_core/Kernel-Objects", "axxord/Axxord"], function($boot
|
|
|
+, "amber_core/Kernel-Objects"], function($boot
|
|
|
//>>excludeStart("imports", pragmas.excludeImports);
|
|
|
|
|
|
//>>excludeEnd("imports");
|
|
@@ -16,102 +16,6 @@ $core.packages["Trapped-Backend"].innerEval = function (expr) { return eval(expr
|
|
|
$core.packages["Trapped-Backend"].imports = ["axxord/Axxord"];
|
|
|
$core.packages["Trapped-Backend"].transport = {"type":"amd","amdNamespace":"trapped"};
|
|
|
|
|
|
-$core.addClass("InterestedInTrapPath", $globals.AxonInterest, [], "Trapped-Backend");
|
|
|
-$core.addMethod(
|
|
|
-$core.method({
|
|
|
-selector: "accepts:",
|
|
|
-protocol: "testing",
|
|
|
-fn: function (anAspect){
|
|
|
-var self=this,$self=this;
|
|
|
-//>>excludeStart("ctx", pragmas.excludeDebugContexts);
|
|
|
-return $core.withContext(function($ctx1) {
|
|
|
-//>>excludeEnd("ctx");
|
|
|
-var $2,$3,$1;
|
|
|
-$2=$recv(anAspect)._size();
|
|
|
-//>>excludeStart("ctx", pragmas.excludeDebugContexts);
|
|
|
-$ctx1.sendIdx["size"]=1;
|
|
|
-//>>excludeEnd("ctx");
|
|
|
-$3=$recv($self["@aspect"])._size();
|
|
|
-//>>excludeStart("ctx", pragmas.excludeDebugContexts);
|
|
|
-$ctx1.sendIdx["size"]=2;
|
|
|
-//>>excludeEnd("ctx");
|
|
|
-$1=$recv($2).__lt_eq($3);
|
|
|
-return $recv($1)._and_((function(){
|
|
|
-//>>excludeStart("ctx", pragmas.excludeDebugContexts);
|
|
|
-return $core.withContext(function($ctx2) {
|
|
|
-//>>excludeEnd("ctx");
|
|
|
-return $recv(anAspect).__eq($recv($self["@aspect"])._copyFrom_to_((1),$recv(anAspect)._size()));
|
|
|
-//>>excludeStart("ctx", pragmas.excludeDebugContexts);
|
|
|
-}, function($ctx2) {$ctx2.fillBlock({},$ctx1,1)});
|
|
|
-//>>excludeEnd("ctx");
|
|
|
-}));
|
|
|
-//>>excludeStart("ctx", pragmas.excludeDebugContexts);
|
|
|
-}, function($ctx1) {$ctx1.fill(self,"accepts:",{anAspect:anAspect},$globals.InterestedInTrapPath)});
|
|
|
-//>>excludeEnd("ctx");
|
|
|
-},
|
|
|
-//>>excludeStart("ide", pragmas.excludeIdeData);
|
|
|
-args: ["anAspect"],
|
|
|
-source: "accepts: anAspect\x0a ^anAspect size <= aspect size and: [anAspect = (aspect copyFrom: 1 to: anAspect size)]",
|
|
|
-referencedClasses: [],
|
|
|
-//>>excludeEnd("ide");
|
|
|
-messageSends: ["and:", "<=", "size", "=", "copyFrom:to:"]
|
|
|
-}),
|
|
|
-$globals.InterestedInTrapPath);
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-$core.addClass("InterestedInTrapPathSubtree", $globals.AxonInterest, [], "Trapped-Backend");
|
|
|
-$core.addMethod(
|
|
|
-$core.method({
|
|
|
-selector: "accepts:",
|
|
|
-protocol: "testing",
|
|
|
-fn: function (anAspect){
|
|
|
-var self=this,$self=this;
|
|
|
-//>>excludeStart("ctx", pragmas.excludeDebugContexts);
|
|
|
-return $core.withContext(function($ctx1) {
|
|
|
-//>>excludeEnd("ctx");
|
|
|
-var $2,$3,$1,$5,$6,$4;
|
|
|
-$2=$recv(anAspect)._size();
|
|
|
-//>>excludeStart("ctx", pragmas.excludeDebugContexts);
|
|
|
-$ctx1.sendIdx["size"]=1;
|
|
|
-//>>excludeEnd("ctx");
|
|
|
-$3=$recv($self["@aspect"])._size();
|
|
|
-//>>excludeStart("ctx", pragmas.excludeDebugContexts);
|
|
|
-$ctx1.sendIdx["size"]=2;
|
|
|
-//>>excludeEnd("ctx");
|
|
|
-$1=$recv($2).__lt_eq($3);
|
|
|
-if($core.assert($1)){
|
|
|
-$5=$self["@aspect"];
|
|
|
-$6=$recv(anAspect)._size();
|
|
|
-//>>excludeStart("ctx", pragmas.excludeDebugContexts);
|
|
|
-$ctx1.sendIdx["size"]=3;
|
|
|
-//>>excludeEnd("ctx");
|
|
|
-$4=$recv($5)._copyFrom_to_((1),$6);
|
|
|
-//>>excludeStart("ctx", pragmas.excludeDebugContexts);
|
|
|
-$ctx1.sendIdx["copyFrom:to:"]=1;
|
|
|
-//>>excludeEnd("ctx");
|
|
|
-return $recv(anAspect).__eq($4);
|
|
|
-//>>excludeStart("ctx", pragmas.excludeDebugContexts);
|
|
|
-$ctx1.sendIdx["="]=1;
|
|
|
-//>>excludeEnd("ctx");
|
|
|
-} else {
|
|
|
-return $recv($self["@aspect"]).__eq($recv(anAspect)._copyFrom_to_((1),$recv($self["@aspect"])._size()));
|
|
|
-}
|
|
|
-//>>excludeStart("ctx", pragmas.excludeDebugContexts);
|
|
|
-}, function($ctx1) {$ctx1.fill(self,"accepts:",{anAspect:anAspect},$globals.InterestedInTrapPathSubtree)});
|
|
|
-//>>excludeEnd("ctx");
|
|
|
-},
|
|
|
-//>>excludeStart("ide", pragmas.excludeIdeData);
|
|
|
-args: ["anAspect"],
|
|
|
-source: "accepts: anAspect\x0a ^anAspect size <= aspect size\x0a\x09\x09ifTrue: [anAspect = (aspect copyFrom: 1 to: anAspect size)]\x0a\x09\x09ifFalse: [aspect = (anAspect copyFrom: 1 to: aspect size)]",
|
|
|
-referencedClasses: [],
|
|
|
-//>>excludeEnd("ide");
|
|
|
-messageSends: ["ifTrue:ifFalse:", "<=", "size", "=", "copyFrom:to:"]
|
|
|
-}),
|
|
|
-$globals.InterestedInTrapPathSubtree);
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
$core.addClass("Isolator", $globals.Object, ["root"], "Trapped-Backend");
|
|
|
$core.addMethod(
|
|
|
$core.method({
|
|
@@ -246,7 +150,7 @@ return $recv($recv(anAspect)._last())._isNil();
|
|
|
//>>excludeEnd("ctx");
|
|
|
}));
|
|
|
if($core.assert($1)){
|
|
|
-$3=$recv($globals.InterestedInTrapPathSubtree)._new();
|
|
|
+$3=$recv($globals.InterestedThruAxes)._new();
|
|
|
//>>excludeStart("ctx", pragmas.excludeDebugContexts);
|
|
|
$ctx1.sendIdx["new"]=1;
|
|
|
//>>excludeEnd("ctx");
|
|
@@ -256,7 +160,7 @@ $ctx1.sendIdx["aspect:block:"]=1;
|
|
|
//>>excludeEnd("ctx");
|
|
|
return $2;
|
|
|
} else {
|
|
|
-return $recv($recv($globals.InterestedInTrapPath)._new())._aspect_block_(anAspect,aBlock);
|
|
|
+return $recv($recv($globals.InterestedUpToAxes)._new())._aspect_block_(anAspect,aBlock);
|
|
|
}
|
|
|
return self;
|
|
|
//>>excludeStart("ctx", pragmas.excludeDebugContexts);
|
|
@@ -265,8 +169,8 @@ return self;
|
|
|
},
|
|
|
//>>excludeStart("ide", pragmas.excludeIdeData);
|
|
|
args: ["anAspect", "aBlock"],
|
|
|
-source: "interestOn: anAspect block: aBlock\x0a\x09(anAspect notEmpty and: [ anAspect last isNil ])\x0a\x09\x09ifTrue: [ ^ InterestedInTrapPathSubtree new aspect: anAspect allButLast block: aBlock ]\x0a\x09\x09ifFalse: [ ^ InterestedInTrapPath new aspect: anAspect block: aBlock ]",
|
|
|
-referencedClasses: ["InterestedInTrapPathSubtree", "InterestedInTrapPath"],
|
|
|
+source: "interestOn: anAspect block: aBlock\x0a\x09(anAspect notEmpty and: [ anAspect last isNil ])\x0a\x09\x09ifTrue: [ ^ InterestedThruAxes new aspect: anAspect allButLast block: aBlock ]\x0a\x09\x09ifFalse: [ ^ InterestedUpToAxes new aspect: anAspect block: aBlock ]",
|
|
|
+referencedClasses: ["InterestedThruAxes", "InterestedUpToAxes"],
|
|
|
//>>excludeEnd("ide");
|
|
|
messageSends: ["ifTrue:ifFalse:", "and:", "notEmpty", "isNil", "last", "aspect:block:", "new", "allButLast"]
|
|
|
}),
|