UNPKG

roblox-ts

Version:

A TypeScript-to-Luau Compiler for Roblox

24 lines 1.27 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.transformBreakStatement = transformBreakStatement; const luau_ast_1 = __importDefault(require("@roblox-ts/luau-ast")); const diagnostics_1 = require("../../../Shared/diagnostics"); const DiagnosticService_1 = require("../../classes/DiagnosticService"); const isBlockedByTryStatement_1 = require("../../util/isBlockedByTryStatement"); function transformBreakStatement(state, node) { if (node.label) { DiagnosticService_1.DiagnosticService.addDiagnostic(diagnostics_1.errors.noLabeledStatement(node.label)); return luau_ast_1.default.list.make(); } if ((0, isBlockedByTryStatement_1.isBreakBlockedByTryStatement)(node)) { state.markTryUses("usesBreak"); return luau_ast_1.default.list.make(luau_ast_1.default.create(luau_ast_1.default.SyntaxKind.ReturnStatement, { expression: state.TS(node, "TRY_BREAK"), })); } return luau_ast_1.default.list.make(luau_ast_1.default.create(luau_ast_1.default.SyntaxKind.BreakStatement, {})); } //# sourceMappingURL=transformBreakStatement.js.map