add support for static initializer blocks in TypeScript

This commit is contained in:
Erik Krogh Kristensen
2021-09-01 23:25:31 +02:00
parent 59f15eb4eb
commit 9585481d0b
10 changed files with 228 additions and 42 deletions

View File

@@ -632,6 +632,8 @@ public class TypeScriptASTConverter {
return convertWithStatement(node, loc);
case "YieldExpression":
return convertYieldExpression(node, loc);
case "ClassStaticBlockDeclaration":
return convertStaticInitializerBlock(node, loc);
default:
throw new ParseError(
"Unsupported TypeScript syntax " + kind, getSourceLocation(node).getStart());
@@ -866,6 +868,10 @@ public class TypeScriptASTConverter {
}
}
private Node convertStaticInitializerBlock(JsonObject node, SourceLocation loc) throws ParseError {
return new BlockStatement(loc, convertChildren(node.get("body").getAsJsonObject(), "statements"));
}
private Node convertBlock(JsonObject node, SourceLocation loc) throws ParseError {
return new BlockStatement(loc, convertChildren(node, "statements"));
}