Files
blockly/generators/lua/variables.js
Christopher Allen a11419d6b7 refactor(generators): Introduce LuaGenerator class, Order enum (#7161)
* refactor(generators): Introduce LuaGenerator class, Order enum

* refactor(generators): Use Order.* instead of .ORDER_*

* refactor(generators): Don't rename luaGenerator
2023-06-14 09:11:37 -07:00

34 lines
889 B
JavaScript

/**
* @license
* Copyright 2016 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
/**
* @fileoverview Generating Lua for variable blocks.
*/
import * as goog from '../../closure/goog/goog.js';
goog.declareModuleId('Blockly.Lua.variables');
import {NameType} from '../../core/names.js';
import {luaGenerator, Order} from '../lua.js';
luaGenerator.forBlock['variables_get'] = function(block) {
// Variable getter.
const code =
luaGenerator.nameDB_.getName(
block.getFieldValue('VAR'), NameType.VARIABLE);
return [code, Order.ATOMIC];
};
luaGenerator.forBlock['variables_set'] = function(block) {
// Variable setter.
const argument0 = luaGenerator.valueToCode(block, 'VALUE', Order.NONE) || '0';
const varName =
luaGenerator.nameDB_.getName(
block.getFieldValue('VAR'), NameType.VARIABLE);
return varName + ' = ' + argument0 + '\n';
};