UNPKG

js-slang

Version:

Javascript-based implementations of Source, written in Typescript

29 lines 1.2 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.noConstDeclarationInForLoopInit = exports.NoConstDeclarationInForLoopInit = void 0; const formatters_1 = require("../../../utils/formatters"); const errors_1 = require("../../errors"); class NoConstDeclarationInForLoopInit extends errors_1.RuleError { explain() { return 'Const declaration in init part of for statement is not allowed.'; } elaborate() { return (0, formatters_1.stripIndent) ` The init part of this statement cannot contain a const declaration, use a let declaration instead. `; } } exports.NoConstDeclarationInForLoopInit = NoConstDeclarationInForLoopInit; const noConstDeclarationInForLoopInit = { name: 'no-const-declaration-in-for-loop-init', checkers: { ForStatement(node) { if (node.init && node.init.type === 'VariableDeclaration' && node.init.kind === 'const') { return [new NoConstDeclarationInForLoopInit(node)]; } return []; } } }; exports.noConstDeclarationInForLoopInit = noConstDeclarationInForLoopInit; //# sourceMappingURL=noConstDeclarationInForLoopInit.js.map