Skip to content

Commit e1d8538

Browse files
Apply suggestions from code review
Co-Authored-By: ark120202 <ark120202@gmail.com>
1 parent 4c1ea0d commit e1d8538

2 files changed

Lines changed: 12 additions & 27 deletions

File tree

src/transformation/visitors/helpers/multi.ts

Lines changed: 11 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ function transformMultiHelperCallArguments(
6161
return context.transformExpression(expression);
6262
}
6363

64-
if (expression.arguments.length < 1) {
64+
if (expression.arguments.length === 0) {
6565
return lua.createNilLiteral(expression);
6666
}
6767

@@ -88,27 +88,17 @@ export function transformMultiHelperVariableDeclaration(
8888
const leftIdentifiers: lua.Identifier[] = [];
8989

9090
for (const element of declaration.name.elements) {
91-
let expression: lua.Identifier | undefined;
92-
93-
if (ts.isBindingElement(element) && ts.isIdentifier(element.name)) {
91+
if (ts.isBindingElement(element)) {
9492
if (element.initializer) {
9593
context.diagnostics.push(invalidMultiReturnArrayBindingPatternElementInitializer(element));
96-
continue;
94+
} else if (ts.isIdentifier(element.name)) {
95+
leftIdentifiers.push(transformIdentifier(context, element.name));
9796
} else {
98-
expression = transformIdentifier(context, element.name);
97+
context.diagnostics.push(unsupportedMultiFunctionAssignment(element));
9998
}
99+
} else if (ts.isOmittedExpression(element)) {
100+
leftIdentifiers.push(lua.createAnonymousIdentifier(element));
100101
}
101-
102-
if (ts.isOmittedExpression(element)) {
103-
expression = lua.createAnonymousIdentifier(element);
104-
}
105-
106-
if (!expression) {
107-
context.diagnostics.push(unsupportedMultiFunctionAssignment(element));
108-
continue;
109-
}
110-
111-
leftIdentifiers.push(expression);
112102
}
113103

114104
const rightExpressions = transformMultiHelperCallArguments(context, declaration.initializer);
@@ -138,13 +128,10 @@ export function transformMultiHelperDestructuringAssignmentStatement(
138128
return [];
139129
}
140130

141-
const transformLeft = (expression: ts.Expression): lua.AssignmentLeftHandSideExpression => {
142-
if (ts.isOmittedExpression(expression)) {
143-
return lua.createAnonymousIdentifier(expression);
144-
} else {
145-
return transformAssignmentLeftHandSideExpression(context, expression);
146-
}
147-
};
131+
const transformLeft = (expression: ts.Expression): lua.AssignmentLeftHandSideExpression =>
132+
ts.isOmittedExpression(expression)
133+
? lua.createAnonymousIdentifier(expression)
134+
: transformAssignmentLeftHandSideExpression(context, expression);
148135

149136
const leftIdentifiers = statement.expression.left.elements.map(transformLeft);
150137

src/transformation/visitors/literal.ts

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -65,9 +65,7 @@ const transformNumericLiteralExpression: FunctionVisitor<ts.NumericLiteral> = ex
6565
const transformObjectLiteralExpression: FunctionVisitor<ts.ObjectLiteralExpression> = (expression, context) => {
6666
const violations = findMultiHelperAssignmentViolations(context, expression);
6767
if (violations.length > 0) {
68-
violations.forEach(element => {
69-
context.diagnostics.push(unsupportedMultiHelperFunctionPosition(element));
70-
});
68+
context.diagnostics.push(...violations.map(e => unsupportedMultiHelperFunctionPosition(e)));
7169
return lua.createNilLiteral(expression);
7270
}
7371

0 commit comments

Comments
 (0)