Class for a database of entity names (variables, procedures, etc).
A comma-separated string of words that are illegal for use as names in a language (e.g. 'new,if,this,...').
Optionalopt_variablePrefix: stringSome languages need a '$' or a namespace before all variable names (but not procedure names).
Convert a Blockly entity name to a legal exportable entity name. Ensure that this is a new name not overlapping any previously defined name. Also check against list of reserved words for the current language and ensure name doesn't collide.
The Blockly entity name (no constraints).
The realm of entity in Blockly ('VARIABLE', 'PROCEDURE', 'DEVELOPER_VARIABLE', etc...).
An entity name that is legal in the exported language.
Convert a Blockly entity name to a legal exportable entity name.
The Blockly entity name (no constraints) or variable ID.
The realm of entity in Blockly ('VARIABLE', 'PROCEDURE', 'DEVELOPER_VARIABLE', etc...).
An entity name that is legal in the exported language.
Return a list of all known user-created names in a specified realm.
The realm of entity in Blockly ('VARIABLE', 'PROCEDURE', 'DEVELOPER_VARIABLE', etc...).
A list of Blockly entity names (no constraints).
Empty the database and start from scratch. The reserved words are kept.
Set the variable map that maps from variable name to variable object.
The map to track.
Fake class which should be extended to avoid inheriting static properties