Skip to content

Commit 53c5722

Browse files
committed
Move TODO visitors to typescript file
1 parent d2a2450 commit 53c5722

2 files changed

Lines changed: 11 additions & 9 deletions

File tree

src/transformation/transformers/index.ts

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import * as ts from "typescript";
2-
import { Visitors } from "../context";
2+
import * as lua from "../../LuaAST";
3+
import { FunctionVisitor, Visitors } from "../context";
34
import { transformElementAccessExpression, transformPropertyAccessExpression, transformQualifiedName } from "./access";
45
import { transformBinaryExpression } from "./binary-expression";
56
import { transformBlock } from "./block";
@@ -36,14 +37,18 @@ import { transformReturnStatement } from "./return";
3637
import { transformSourceFileNode } from "./sourceFile";
3738
import { transformSwitchStatement } from "./switch";
3839
import { transformTaggedTemplateExpression, transformTemplateExpression } from "./template";
39-
import { todoMoveSomewhereVisitors } from "./todo-move-somewhere";
4040
import { transformTypeOfExpression } from "./typeof";
41+
import { typescriptVisitors } from "./typescript";
4142
import { transformPostfixUnaryExpression, transformPrefixUnaryExpression } from "./unary-expression";
4243
import { transformVariableStatement } from "./variable";
4344

45+
const transformEmptyStatement: FunctionVisitor<ts.EmptyStatement> = () => undefined;
46+
const transformParenthesizedExpression: FunctionVisitor<ts.ParenthesizedExpression> = (node, context) =>
47+
lua.createParenthesizedExpression(context.transformExpression(node.expression), node);
48+
4449
export const standardVisitors: Visitors = {
4550
...literalVisitors,
46-
...todoMoveSomewhereVisitors,
51+
...typescriptVisitors,
4752
[ts.SyntaxKind.ArrowFunction]: transformFunctionLikeDeclaration,
4853
[ts.SyntaxKind.BinaryExpression]: transformBinaryExpression,
4954
[ts.SyntaxKind.Block]: transformBlock,
@@ -56,6 +61,7 @@ export const standardVisitors: Visitors = {
5661
[ts.SyntaxKind.DeleteExpression]: transformDeleteExpression,
5762
[ts.SyntaxKind.DoStatement]: transformDoStatement,
5863
[ts.SyntaxKind.ElementAccessExpression]: transformElementAccessExpression,
64+
[ts.SyntaxKind.EmptyStatement]: transformEmptyStatement,
5965
[ts.SyntaxKind.EnumDeclaration]: transformEnumDeclaration,
6066
[ts.SyntaxKind.ExportAssignment]: transformExportAssignment,
6167
[ts.SyntaxKind.ExportDeclaration]: transformExportDeclaration,
@@ -72,6 +78,7 @@ export const standardVisitors: Visitors = {
7278
[ts.SyntaxKind.ImportEqualsDeclaration]: transformImportEqualsDeclaration,
7379
[ts.SyntaxKind.ModuleDeclaration]: transformModuleDeclaration,
7480
[ts.SyntaxKind.NewExpression]: transformNewExpression,
81+
[ts.SyntaxKind.ParenthesizedExpression]: transformParenthesizedExpression,
7582
[ts.SyntaxKind.PostfixUnaryExpression]: transformPostfixUnaryExpression,
7683
[ts.SyntaxKind.PrefixUnaryExpression]: transformPrefixUnaryExpression,
7784
[ts.SyntaxKind.PropertyAccessExpression]: transformPropertyAccessExpression,

src/transformation/transformers/todo-move-somewhere.ts renamed to src/transformation/transformers/typescript.ts

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
import * as ts from "typescript";
2-
import * as lua from "../../LuaAST";
32
import { FunctionVisitor, Visitors } from "../context";
43
import { validateAssignment } from "../utils/assignment-validation";
54

@@ -16,15 +15,11 @@ const transformAssertionExpression: FunctionVisitor<ts.AssertionExpression> = (e
1615
return context.transformExpression(expression.expression);
1716
};
1817

19-
export const todoMoveSomewhereVisitors: Visitors = {
18+
export const typescriptVisitors: Visitors = {
2019
[ts.SyntaxKind.TypeAliasDeclaration]: () => undefined,
2120
[ts.SyntaxKind.InterfaceDeclaration]: () => undefined,
2221

2322
[ts.SyntaxKind.NonNullExpression]: (node, context) => context.transformExpression(node.expression),
2423
[ts.SyntaxKind.AsExpression]: transformAssertionExpression,
2524
[ts.SyntaxKind.TypeAssertionExpression]: transformAssertionExpression,
26-
27-
[ts.SyntaxKind.EmptyStatement]: () => undefined,
28-
[ts.SyntaxKind.ParenthesizedExpression]: (node, context) =>
29-
lua.createParenthesizedExpression(context.transformExpression(node.expression), node),
3025
};

0 commit comments

Comments
 (0)