Skip to content
This repository was archived by the owner on Nov 6, 2019. It is now read-only.

Commit e405ec0

Browse files
committed
Don't fail on unsupported node by default in Visitor, just report them instead
1 parent ebb88bf commit e405ec0

File tree

1 file changed

+22
-16
lines changed

1 file changed

+22
-16
lines changed

src/ast/typescript/Visitor.kt

Lines changed: 22 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,29 +1,35 @@
11
package ts2kt
22

3+
import ts2kt.utils.reportUnsupportedNode
34
import typescriptServices.ts.*
45

56
interface Visitor {
6-
fun visitModuleDeclaration(node: ModuleDeclaration): Unit = TODO()
7+
fun visitModuleDeclaration(node: ModuleDeclaration): Unit = unsupported(node)
78

8-
fun visitFunctionDeclaration(node: FunctionDeclaration): Unit = TODO()
9-
fun visitTypeAliasDeclaration(node: TypeAliasDeclaration): Unit = TODO()
10-
fun visitVariableStatement(node: VariableStatement): Unit = TODO()
9+
fun visitFunctionDeclaration(node: FunctionDeclaration): Unit = unsupported(node)
10+
fun visitTypeAliasDeclaration(node: TypeAliasDeclaration): Unit = unsupported(node)
11+
fun visitVariableStatement(node: VariableStatement): Unit = unsupported(node)
1112

12-
fun visitEnumDeclaration(node: EnumDeclaration): Unit = TODO()
13+
fun visitEnumDeclaration(node: EnumDeclaration): Unit = unsupported(node)
1314

14-
fun visitClassDeclaration(node: ClassDeclaration): Unit = TODO()
15-
fun visitInterfaceDeclaration(node: InterfaceDeclaration): Unit = TODO()
15+
fun visitClassDeclaration(node: ClassDeclaration): Unit = unsupported(node)
16+
fun visitInterfaceDeclaration(node: InterfaceDeclaration): Unit = unsupported(node)
1617

17-
fun visitHeritageClause(node: HeritageClause): Unit = TODO()
18+
fun visitHeritageClause(node: HeritageClause): Unit = unsupported(node)
1819

19-
fun visitConstructorDeclaration(node: ConstructorDeclaration): Unit = TODO()
20-
fun visitConstructSignatureDeclaration(node: ConstructorDeclaration): Unit = TODO()
20+
fun visitConstructorDeclaration(node: ConstructorDeclaration): Unit = unsupported(node)
21+
fun visitConstructSignatureDeclaration(node: ConstructorDeclaration): Unit = unsupported(node)
2122

22-
fun visitMethodDeclaration(node: MethodDeclaration): Unit = TODO()
23-
fun visitPropertyDeclaration(node: PropertyDeclaration): Unit = TODO()
24-
fun visitIndexSignature(node: IndexSignatureDeclaration): Unit = TODO()
25-
fun visitSignatureDeclaration(node: SignatureDeclaration): Unit = TODO()
23+
fun visitMethodDeclaration(node: MethodDeclaration): Unit = unsupported(node)
24+
fun visitPropertyDeclaration(node: PropertyDeclaration): Unit = unsupported(node)
25+
fun visitIndexSignature(node: IndexSignatureDeclaration): Unit = unsupported(node)
26+
fun visitSignatureDeclaration(node: SignatureDeclaration): Unit = unsupported(node)
2627

27-
fun visitExportAssignment(node: ExportAssignment): Unit = TODO()
28-
fun visitImportEqualsDeclaration(node: ImportEqualsDeclaration): Unit = TODO()
28+
fun visitExportAssignment(node: ExportAssignment): Unit = unsupported(node)
29+
fun visitImportEqualsDeclaration(node: ImportEqualsDeclaration): Unit = unsupported(node)
30+
}
31+
32+
@Suppress("NOTHING_TO_INLINE")
33+
inline fun unsupported(node: Node) {
34+
reportUnsupportedNode(node)
2935
}

0 commit comments

Comments
 (0)