rename variableDB to nameDB

rename variableDB_ to nameDB_ as it is deprecated
This commit is contained in:
Mario Pesch
2021-09-17 12:26:18 +02:00
parent abfa5d0bed
commit a8cf038821
5 changed files with 178 additions and 165 deletions
+105 -105
View File
@@ -1,5 +1,4 @@
import * as Blockly from 'blockly/core';
import * as Blockly from "blockly/core";
/**
* Code generator to add code into the setup() and loop() functions.
@@ -7,121 +6,122 @@ import * as Blockly from 'blockly/core';
* @param {!Blockly.Block} block Block to generate the code from.
* @return {string} Completed code.
*/
Blockly.Arduino['arduino_functions'] = function (block) {
// Edited version of Blockly.Generator.prototype.statementToCode
function statementToCodeNoTab(block, name) {
var targetBlock = block.getInputTargetBlock(name);
var code = Blockly.Arduino.blockToCode(targetBlock);
if (typeof code != 'string') {
throw new Error('Expecting code from statement block "' + targetBlock.type + '".');
}
return code;
Blockly.Arduino["arduino_functions"] = function (block) {
// Edited version of Blockly.Generator.prototype.statementToCode
function statementToCodeNoTab(block, name) {
var targetBlock = block.getInputTargetBlock(name);
var code = Blockly.Arduino.blockToCode(targetBlock);
if (typeof code != "string") {
throw new Error(
'Expecting code from statement block "' + targetBlock.type + '".'
);
}
return code;
}
var setupBranch = Blockly.Arduino.statementToCode(block, 'SETUP_FUNC');
// //var setupCode = Blockly.Arduino.scrub_(block, setupBranch); No comment block
if (setupBranch) {
Blockly.Arduino.setupCode_['mainsetup'] = setupBranch;
}
var setupBranch = Blockly.Arduino.statementToCode(block, "SETUP_FUNC");
// //var setupCode = Blockly.Arduino.scrub_(block, setupBranch); No comment block
if (setupBranch) {
Blockly.Arduino.setupCode_["mainsetup"] = setupBranch;
}
var loopBranch = statementToCodeNoTab(block, 'LOOP_FUNC');
//var loopcode = Blockly.Arduino.scrub_(block, loopBranch); No comment block
return loopBranch;
var loopBranch = statementToCodeNoTab(block, "LOOP_FUNC");
//var loopcode = Blockly.Arduino.scrub_(block, loopBranch); No comment block
return loopBranch;
};
Blockly.Arduino['procedures_defreturn'] = function (block) {
// Define a procedure with a return value.
const funcName = Blockly.Arduino.variableDB_.getName(
block.getFieldValue('NAME'),
Blockly.Procedures.NAME_TYPE
);
const branch = Blockly.Arduino.statementToCode(block, 'STACK');
const returnType = block.getFieldValue('RETURN TYPE') || 'void';
Blockly.Arduino["procedures_defreturn"] = function (block) {
// Define a procedure with a return value.
const funcName = Blockly.Arduino.nameDB_.getName(
block.getFieldValue("NAME"),
Blockly.Procedures.NAME_TYPE
);
const branch = Blockly.Arduino.statementToCode(block, "STACK");
const returnType = block.getFieldValue("RETURN TYPE") || "void";
let returnValue =
Blockly.Arduino.valueToCode(block, 'RETURN', Blockly.Arduino.ORDER_NONE) ||
'';
if (returnValue) {
returnValue = Blockly.Arduino.INDENT + 'return ' + returnValue + ';\n';
}
const args = [];
for (let i = 0; i < block.argumentVarModels_.length; i++) {
args[i] =
translateType(block.argumentVarModels_[i].type) +
' ' +
block.argumentVarModels_[i].name;
}
let code =
translateType(returnType) +
' ' +
funcName +
'(' +
args.join(', ') +
') {\n' +
branch +
returnValue +
'}';
code = Blockly.Arduino.scrub_(block, code);
// Add % so as not to collide with helper functions in definitions list.
Blockly.Arduino.functionNames_['%' + funcName] = code;
return null;
let returnValue =
Blockly.Arduino.valueToCode(block, "RETURN", Blockly.Arduino.ORDER_NONE) ||
"";
if (returnValue) {
returnValue = Blockly.Arduino.INDENT + "return " + returnValue + ";\n";
}
const args = [];
for (let i = 0; i < block.argumentVarModels_.length; i++) {
args[i] =
translateType(block.argumentVarModels_[i].type) +
" " +
block.argumentVarModels_[i].name;
}
let code =
translateType(returnType) +
" " +
funcName +
"(" +
args.join(", ") +
") {\n" +
branch +
returnValue +
"}";
code = Blockly.Arduino.scrub_(block, code);
// Add % so as not to collide with helper functions in definitions list.
Blockly.Arduino.functionNames_["%" + funcName] = code;
return null;
};
function translateType(type) {
switch (type) {
case 'int':
return 'int';
case 'String':
return 'String';
case 'void':
return 'void';
case 'boolean':
return 'boolean';
case 'float':
return 'float'
default:
throw new Error('Invalid Parameter Type');
}
switch (type) {
case "int":
return "int";
case "String":
return "String";
case "void":
return "void";
case "boolean":
return "boolean";
case "float":
return "float";
default:
throw new Error("Invalid Parameter Type");
}
}
Blockly.Arduino['procedures_defnoreturn'] =
Blockly.Arduino['procedures_defreturn'];
Blockly.Arduino["procedures_defnoreturn"] =
Blockly.Arduino["procedures_defreturn"];
Blockly.Arduino['procedures_callreturn'] = function (block) {
// Call a procedure with a return value.
const funcName = Blockly.Arduino.variableDB_.getName(
block.getFieldValue('NAME'),
Blockly.Procedures.NAME_TYPE
);
const args = [];
for (let i = 0; i < block.arguments_.length; i++) {
args[i] =
Blockly.Arduino.valueToCode(
block,
'ARG' + i,
Blockly.Arduino.ORDER_COMMA
) || 'null';
}
const code = funcName + '(' + args.join(', ') + ')';
return [code, Blockly.Arduino.ORDER_ATOMIC];
Blockly.Arduino["procedures_callreturn"] = function (block) {
// Call a procedure with a return value.
const funcName = Blockly.Arduino.nameDB_.getName(
block.getFieldValue("NAME"),
Blockly.Procedures.NAME_TYPE
);
const args = [];
for (let i = 0; i < block.arguments_.length; i++) {
args[i] =
Blockly.Arduino.valueToCode(
block,
"ARG" + i,
Blockly.Arduino.ORDER_COMMA
) || "null";
}
const code = funcName + "(" + args.join(", ") + ")";
return [code, Blockly.Arduino.ORDER_ATOMIC];
};
Blockly.Arduino['procedures_callnoreturn'] = function (block) {
// Call a procedure with no return value.
const funcName = Blockly.Arduino.variableDB_.getName(
block.getFieldValue('NAME'),
Blockly.Procedures.NAME_TYPE
);
const args = [];
for (let i = 0; i < block.arguments_.length; i++) {
args[i] =
Blockly.Arduino.valueToCode(
block,
'ARG' + i,
Blockly.Arduino.ORDER_COMMA
) || 'null';
}
Blockly.Arduino["procedures_callnoreturn"] = function (block) {
// Call a procedure with no return value.
const funcName = Blockly.Arduino.nameDB_.getName(
block.getFieldValue("NAME"),
Blockly.Procedures.NAME_TYPE
);
const args = [];
for (let i = 0; i < block.arguments_.length; i++) {
args[i] =
Blockly.Arduino.valueToCode(
block,
"ARG" + i,
Blockly.Arduino.ORDER_COMMA
) || "null";
}
return funcName + '(' + args.join(', ') + ');\n';
};
return funcName + "(" + args.join(", ") + ");\n";
};