feat: add getVariableName and getProcedureName to CodeGenerator (#7445)

* feat: add getVariableName and getProcedureName to CodeGenerator

* feat: make nameDB_ public

* feat: update block code generators to use new APIs

* chore: fix build

* chore: remove unused imports
This commit is contained in:
Maribeth Bottorff
2023-08-31 10:49:17 -07:00
committed by GitHub
parent b0a7c004a9
commit 68261e5dd9
28 changed files with 122 additions and 109 deletions

View File

@@ -10,15 +10,13 @@
// Former goog.module ID: Blockly.Lua.procedures
import {NameType} from '../../core/names.js';
import {Order} from './lua_generator.js';
export function procedures_defreturn(block, generator) {
// Define a procedure with a return value.
const funcName =
generator.nameDB_.getName(
block.getFieldValue('NAME'), NameType.PROCEDURE);
generator.getProcedureName(block.getFieldValue('NAME'));
let xfix1 = '';
if (generator.STATEMENT_PREFIX) {
xfix1 += generator.injectId(generator.STATEMENT_PREFIX, block);
@@ -50,7 +48,7 @@ export function procedures_defreturn(block, generator) {
const args = [];
const variables = block.getVars();
for (let i = 0; i < variables.length; i++) {
args[i] = generator.nameDB_.getName(variables[i], NameType.VARIABLE);
args[i] = generator.getVariableName(variables[i]);
}
let code = 'function ' + funcName + '(' + args.join(', ') + ')\n' + xfix1 +
loopTrap + branch + xfix2 + returnValue + 'end\n';
@@ -67,8 +65,7 @@ export const procedures_defnoreturn = procedures_defreturn;
export function procedures_callreturn(block, generator) {
// Call a procedure with a return value.
const funcName =
generator.nameDB_.getName(
block.getFieldValue('NAME'), NameType.PROCEDURE);
generator.getProcedureName(block.getFieldValue('NAME'));
const args = [];
const variables = block.getVars();
for (let i = 0; i < variables.length; i++) {