Use getter for variables in procedure generator. (#3971)

This commit is contained in:
Monica Kozbial
2020-06-15 09:47:51 -07:00
committed by GitHub
parent 4ac4332f5e
commit df1508b547
5 changed files with 27 additions and 17 deletions

View File

@@ -48,8 +48,9 @@ Blockly.Dart['procedures_defreturn'] = function(block) {
}
var returnType = returnValue ? 'dynamic' : 'void';
var args = [];
for (var i = 0; i < block.arguments_.length; i++) {
args[i] = Blockly.Dart.variableDB_.getName(block.arguments_[i],
var variables = block.getVars();
for (var i = 0; i < variables.length; i++) {
args[i] = Blockly.Dart.variableDB_.getName(variables[i],
Blockly.VARIABLE_CATEGORY_NAME);
}
var code = returnType + ' ' + funcName + '(' + args.join(', ') + ') {\n' +
@@ -69,7 +70,8 @@ Blockly.Dart['procedures_callreturn'] = function(block) {
var funcName = Blockly.Dart.variableDB_.getName(block.getFieldValue('NAME'),
Blockly.PROCEDURE_CATEGORY_NAME);
var args = [];
for (var i = 0; i < block.arguments_.length; i++) {
var variables = block.getVars();
for (var i = 0; i < variables.length; i++) {
args[i] = Blockly.Dart.valueToCode(block, 'ARG' + i,
Blockly.Dart.ORDER_NONE) || 'null';
}

View File

@@ -49,8 +49,9 @@ Blockly.JavaScript['procedures_defreturn'] = function(block) {
returnValue = Blockly.JavaScript.INDENT + 'return ' + returnValue + ';\n';
}
var args = [];
for (var i = 0; i < block.arguments_.length; i++) {
args[i] = Blockly.JavaScript.variableDB_.getName(block.arguments_[i],
var variables = block.getVars();
for (var i = 0; i < variables.length; i++) {
args[i] = Blockly.JavaScript.variableDB_.getName(variables[i],
Blockly.VARIABLE_CATEGORY_NAME);
}
var code = 'function ' + funcName + '(' + args.join(', ') + ') {\n' +
@@ -71,7 +72,8 @@ Blockly.JavaScript['procedures_callreturn'] = function(block) {
var funcName = Blockly.JavaScript.variableDB_.getName(
block.getFieldValue('NAME'), Blockly.PROCEDURE_CATEGORY_NAME);
var args = [];
for (var i = 0; i < block.arguments_.length; i++) {
var variables = block.getVars();
for (var i = 0; i < variables.length; i++) {
args[i] = Blockly.JavaScript.valueToCode(block, 'ARG' + i,
Blockly.JavaScript.ORDER_COMMA) || 'null';
}

View File

@@ -49,8 +49,9 @@ Blockly.Lua['procedures_defreturn'] = function(block) {
branch = '';
}
var args = [];
for (var i = 0; i < block.arguments_.length; i++) {
args[i] = Blockly.Lua.variableDB_.getName(block.arguments_[i],
var variables = block.getVars();
for (var i = 0; i < variables.length; i++) {
args[i] = Blockly.Lua.variableDB_.getName(variables[i],
Blockly.VARIABLE_CATEGORY_NAME);
}
var code = 'function ' + funcName + '(' + args.join(', ') + ')\n' +
@@ -71,7 +72,8 @@ Blockly.Lua['procedures_callreturn'] = function(block) {
var funcName = Blockly.Lua.variableDB_.getName(
block.getFieldValue('NAME'), Blockly.PROCEDURE_CATEGORY_NAME);
var args = [];
for (var i = 0; i < block.arguments_.length; i++) {
var variables = block.getVars();
for (var i = 0; i < variables.length; i++) {
args[i] = Blockly.Lua.valueToCode(block, 'ARG' + i,
Blockly.Lua.ORDER_NONE) || 'nil';
}

View File

@@ -24,7 +24,7 @@ Blockly.PHP['procedures_defreturn'] = function(block) {
var variables = Blockly.Variables.allUsedVarModels(workspace) || [];
for (var i = 0, variable; variable = variables[i]; i++) {
varName = variable.name;
if (block.arguments_.indexOf(varName) == -1) {
if (block.getVars().indexOf(varName) == -1) {
globals.push(Blockly.PHP.variableDB_.getName(varName,
Blockly.VARIABLE_CATEGORY_NAME));
}
@@ -68,8 +68,9 @@ Blockly.PHP['procedures_defreturn'] = function(block) {
returnValue = Blockly.PHP.INDENT + 'return ' + returnValue + ';\n';
}
var args = [];
for (var i = 0; i < block.arguments_.length; i++) {
args[i] = Blockly.PHP.variableDB_.getName(block.arguments_[i],
var variables = block.getVars();
for (var i = 0; i < variables.length; i++) {
args[i] = Blockly.PHP.variableDB_.getName(variables[i],
Blockly.VARIABLE_CATEGORY_NAME);
}
var code = 'function ' + funcName + '(' + args.join(', ') + ') {\n' +
@@ -90,7 +91,8 @@ Blockly.PHP['procedures_callreturn'] = function(block) {
var funcName = Blockly.PHP.variableDB_.getName(
block.getFieldValue('NAME'), Blockly.PROCEDURE_CATEGORY_NAME);
var args = [];
for (var i = 0; i < block.arguments_.length; i++) {
var variables = block.getVars();
for (var i = 0; i < variables.length; i++) {
args[i] = Blockly.PHP.valueToCode(block, 'ARG' + i,
Blockly.PHP.ORDER_COMMA) || 'null';
}

View File

@@ -25,7 +25,7 @@ Blockly.Python['procedures_defreturn'] = function(block) {
var variables = Blockly.Variables.allUsedVarModels(workspace) || [];
for (var i = 0, variable; variable = variables[i]; i++) {
varName = variable.name;
if (block.arguments_.indexOf(varName) == -1) {
if (block.getVars().indexOf(varName) == -1) {
globals.push(Blockly.Python.variableDB_.getName(varName,
Blockly.VARIABLE_CATEGORY_NAME));
}
@@ -71,8 +71,9 @@ Blockly.Python['procedures_defreturn'] = function(block) {
branch = Blockly.Python.PASS;
}
var args = [];
for (var i = 0; i < block.arguments_.length; i++) {
args[i] = Blockly.Python.variableDB_.getName(block.arguments_[i],
var variables = block.getVars();
for (var i = 0; i < variables.length; i++) {
args[i] = Blockly.Python.variableDB_.getName(variables[i],
Blockly.VARIABLE_CATEGORY_NAME);
}
var code = 'def ' + funcName + '(' + args.join(', ') + '):\n' +
@@ -93,7 +94,8 @@ Blockly.Python['procedures_callreturn'] = function(block) {
var funcName = Blockly.Python.variableDB_.getName(block.getFieldValue('NAME'),
Blockly.PROCEDURE_CATEGORY_NAME);
var args = [];
for (var i = 0; i < block.arguments_.length; i++) {
var variables = block.getVars();
for (var i = 0; i < variables.length; i++) {
args[i] = Blockly.Python.valueToCode(block, 'ARG' + i,
Blockly.Python.ORDER_NONE) || 'None';
}