blank-out variable getters in syntax-tree result list

snap7
jmoenig 2022-01-07 17:41:09 +01:00
rodzic 683d64e0ec
commit ec13809990
4 zmienionych plików z 9 dodań i 8 usunięć

Wyświetl plik

@ -14,6 +14,7 @@
### 2022-01-07
* blocks: added syntax tree representation for variable getters
* blocks, byob: blank-out variable getters in syntax-tree result list
### 2022-01-06
* Catalan library translations, thanks, Joan!

Wyświetl plik

@ -23,7 +23,7 @@
<script src="src/gui.js?version=2022-01-05"></script>
<script src="src/paint.js?version=2021-07-05"></script>
<script src="src/lists.js?version=2021-12-15"></script>
<script src="src/byob.js?version=2021-12-16"></script>
<script src="src/byob.js?version=2022-01-07"></script>
<script src="src/tables.js?version=2021-05-07"></script>
<script src="src/sketch.js?version=2021-11-03"></script>
<script src="src/video.js?version=2019-06-27"></script>

Wyświetl plik

@ -989,11 +989,11 @@ SyntaxElementMorph.prototype.labelParts = {
*/
'%t': {
type: 'template',
label: 'v'
label: '\xa0' // non-breaking space, appears blank
},
'%upvar': {
type: 'template',
label: '\u2191' // up-arrow
label: '\xa0' // non-breaking space, appears blank
},
// other single types
@ -3810,7 +3810,7 @@ BlockMorph.prototype.syntaxTree = function (parameterNames) {
parts.at(1).updateEmptySlots();
if (expr.selector === 'reportGetVar') {
parts.add(expr.blockSpec);
expr.setSpec('v');
expr.setSpec('\xa0'); // non-breaking space, appears blank
}
parameterNames.forEach(name => parts.add(name));
return parts;

Wyświetl plik

@ -9,7 +9,7 @@
written by Jens Mönig
jens@moenig.org
Copyright (C) 2021 by Jens Mönig
Copyright (C) 2022 by Jens Mönig
This file is part of Snap!.
@ -110,7 +110,7 @@ WatcherMorph, XML_Serializer, SnapTranslator, SnapExtensions*/
// Global stuff ////////////////////////////////////////////////////////
modules.byob = '2021-December-16';
modules.byob = '2022-January-07';
// Declarations
@ -725,11 +725,11 @@ CustomCommandBlockMorph.prototype.refresh = function (aDefinition) {
});
}
// find unnamed upvars and label them
// find unnamed upvars (indicated by non-breaking space) and label them
// to their internal definition (default)
this.cachedInputs = null;
this.inputs().forEach((inp, idx) => {
if (inp instanceof TemplateSlotMorph && inp.contents() === '\u2191') {
if (inp instanceof TemplateSlotMorph && inp.contents() === '\xa0') {
inp.setContents(def.inputNames()[idx]);
}
});