kopia lustrzana https://github.com/backface/turtlestitch
removed hyper-if experiment
rodzic
5928c30c3c
commit
ef9b826d7e
|
@ -8,7 +8,7 @@
|
|||
<script type="text/javascript" src="src/symbols.js?version=2020-05-06"></script>
|
||||
<script type="text/javascript" src="src/widgets.js?version=2020-05-06"></script>
|
||||
<script type="text/javascript" src="src/blocks.js?version=2020-05-17"></script>
|
||||
<script type="text/javascript" src="src/threads.js?version=2020-05-22"></script>
|
||||
<script type="text/javascript" src="src/threads.js?version=2020-05-24"></script>
|
||||
<script type="text/javascript" src="src/objects.js?version=2020-05-18"></script>
|
||||
<script type="text/javascript" src="src/gui.js?version=2020-05-22"></script>
|
||||
<script type="text/javascript" src="src/paint.js?version=2020-05-17"></script>
|
||||
|
|
|
@ -61,7 +61,7 @@ StageMorph, SpriteMorph, StagePrompterMorph, Note, modules, isString, copy, Map,
|
|||
isNil, WatcherMorph, List, ListWatcherMorph, alert, console, TableMorph, Color,
|
||||
TableFrameMorph, ColorSlotMorph, isSnapObject, newCanvas, Symbol, SVG_Costume*/
|
||||
|
||||
modules.threads = '2020-May-22';
|
||||
modules.threads = '2020-May-24';
|
||||
|
||||
var ThreadManager;
|
||||
var Process;
|
||||
|
@ -2108,55 +2108,6 @@ Process.prototype.reportIfElse = function (block) {
|
|||
}
|
||||
};
|
||||
|
||||
/* experimental hyper version, under construction, commented out for now
|
||||
|
||||
Process.prototype.reportHyperIfElse = function (block) {
|
||||
var inputs = this.context.inputs;
|
||||
|
||||
if (inputs.length < 1) {
|
||||
this.evaluateNextInput(block);
|
||||
} else if (inputs.length > 1) {
|
||||
if (this.flashContext()) {return; }
|
||||
if (inputs[0] instanceof List) {
|
||||
if (inputs.length < 3) {
|
||||
this.evaluateNextInput(block);
|
||||
return;
|
||||
}
|
||||
this.returnValueToParentContext(
|
||||
this.reportBaseIfElse(inputs[0], inputs[1], inputs[2])
|
||||
);
|
||||
this.popContext();
|
||||
return;
|
||||
}
|
||||
this.returnValueToParentContext(inputs.pop());
|
||||
this.popContext();
|
||||
} else {
|
||||
if (inputs[0] instanceof List) {
|
||||
this.evaluateNextInput(block);
|
||||
} else {
|
||||
this.assertType(inputs[0], ['Boolean']);
|
||||
if (inputs[0]) {
|
||||
this.evaluateNextInput(block);
|
||||
} else {
|
||||
inputs.push(null);
|
||||
this.evaluateNextInput(block);
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
Process.prototype.reportBaseIfElse = function (conditions, tCase, fCase) {
|
||||
return conditions.map(test => {
|
||||
if (test instanceof List) {
|
||||
return this.reportHyperIfElse(test, tCase, fCase);
|
||||
} else {
|
||||
this.assertType(test, ['Boolean']);
|
||||
return test ? tCase : fCase;
|
||||
}
|
||||
});
|
||||
};
|
||||
*/
|
||||
|
||||
// Process process related primitives
|
||||
|
||||
Process.prototype.doStop = function () {
|
||||
|
|
Ładowanie…
Reference in New Issue