From fcd0ea79c777e7d64a261143b50eb3e276cb8b1b Mon Sep 17 00:00:00 2001 From: Evgeniy Okolnov Date: Tue, 4 Oct 2022 17:28:43 +0300 Subject: [PATCH] Kotlin. Packages and imports, empty classes. Configure Kotlin and JDK libraries. Change-Id: Ied2aa92bcea5c017b9e8380fe21e51ebad99b6cd Signed-off-by: Evgeniy Okolnov --- migrator/build.xml | 32 ++++ migrator/lib/kotlin-compiler/kotlin-test.jar | Bin 0 -> 132351 bytes .../migrator/kotlin/KotlinTransformer.java | 149 +++++++++++++++++- .../migrator/kotlin/KotlinTranspiler.java | 60 ++++++- .../staticTS/writer/StaticTSWriter.java | 2 +- .../test/kotlin/empty_class_declaration.kt | 32 ++++ .../kotlin/empty_class_declaration.kt.sts | 42 +++++ migrator/test/kotlin/imports.kt | 28 ++++ migrator/test/kotlin/imports.kt.sts | 20 +++ 9 files changed, 353 insertions(+), 12 deletions(-) create mode 100644 migrator/lib/kotlin-compiler/kotlin-test.jar create mode 100644 migrator/test/kotlin/empty_class_declaration.kt create mode 100644 migrator/test/kotlin/empty_class_declaration.kt.sts create mode 100644 migrator/test/kotlin/imports.kt create mode 100644 migrator/test/kotlin/imports.kt.sts diff --git a/migrator/build.xml b/migrator/build.xml index a3d1b797c..a16ddfa07 100644 --- a/migrator/build.xml +++ b/migrator/build.xml @@ -202,6 +202,38 @@ ${test.err} + + + + + + + + + + + + + + + + One or several tests have failed! + STDERR: + ${test.err} + + + + + + + + diff --git a/migrator/lib/kotlin-compiler/kotlin-test.jar b/migrator/lib/kotlin-compiler/kotlin-test.jar new file mode 100644 index 0000000000000000000000000000000000000000..de1035f93d1fc1f2a85c9ead01a564d4bf4d5d04 GIT binary patch literal 132351 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

wU~uiJ>-^(m5(Je%=Me$FDpeMCBIy3T*{w+EVA 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 M-Yty)x4l99A1v3JC;$Ke literal 0 HcmV?d00001 diff --git a/migrator/src/com/ohos/migrator/kotlin/KotlinTransformer.java b/migrator/src/com/ohos/migrator/kotlin/KotlinTransformer.java index 168912365..1c05654be 100644 --- a/migrator/src/com/ohos/migrator/kotlin/KotlinTransformer.java +++ b/migrator/src/com/ohos/migrator/kotlin/KotlinTransformer.java @@ -15,35 +15,172 @@ package com.ohos.migrator.kotlin; +import com.intellij.openapi.util.TextRange; +import com.ohos.migrator.Main; +import com.ohos.migrator.ResultCode; import com.ohos.migrator.Transformer; +import com.ohos.migrator.staticTS.NodeBuilder; +import com.ohos.migrator.staticTS.parser.StaticTSParser; import com.ohos.migrator.staticTS.parser.StaticTSParser.*; import org.antlr.v4.runtime.ParserRuleContext; +import org.antlr.v4.runtime.tree.TerminalNode; + +import com.intellij.psi.PsiElement; import org.jetbrains.kotlin.analyzer.AnalysisResult; -import org.jetbrains.kotlin.psi.KtFile; -import org.jetbrains.kotlin.psi.KtVisitor; +import org.jetbrains.kotlin.diagnostics.PsiDiagnosticUtils; +import org.jetbrains.kotlin.lexer.KtTokens; +import org.jetbrains.kotlin.psi.*; +import org.jetbrains.kotlin.psi.psiUtil.KtPsiUtilKt; +import org.jetbrains.kotlin.psi.psiUtil.PsiUtilsKt; import org.jetbrains.kotlin.resolve.BindingContext; +import java.io.File; + /** * Performs transformation of the Kotlin AST into StaticTS AST. */ public class KotlinTransformer extends KtVisitor implements Transformer { + File srcFile; KtFile ktFile; AnalysisResult analysisResult; BindingContext bindingContext; + CompilationUnitContext stsCU; - public KotlinTransformer(KtFile ktFile, AnalysisResult analysisResult) { + public KotlinTransformer(KtFile ktFile, File srcFile, AnalysisResult analysisResult) { + this.srcFile = srcFile; this.ktFile = ktFile; this.analysisResult = analysisResult; this.bindingContext = analysisResult.getBindingContext(); } public CompilationUnitContext transform() { - return (CompilationUnitContext)visitKtFile(ktFile, null); + return visitKtFile(ktFile, null); + } + + private PsiDiagnosticUtils.LineAndColumn getLineAndColumn(PsiElement psiElement) { + TextRange textRange; + + if (psiElement == null) { + return PsiDiagnosticUtils.LineAndColumn.NONE; + } + + if (psiElement instanceof KtDeclaration) { + // If any comment precedes function or class declaration, then it will + // be considered a part of declaration and will affect the calculation + // of node's line number. + textRange = PsiUtilsKt.getTextRangeWithoutComments(psiElement); + } else { + textRange = psiElement.getTextRange(); + } + + return PsiDiagnosticUtils.offsetToLineAndColumn(ktFile.getViewProvider().getDocument(), textRange.getStartOffset()); + } + + private void reportError(String message, PsiElement ktNode) { + String loc = srcFile.getPath() + ":" + getLineAndColumn(ktNode); + Main.addError(ResultCode.TranspileError, message + " at " + loc); + } + + + /** + * Visit element's children and add result of translation of each child to the specified STS context. + */ + private void visitChildren(KtElement ktElement, ParserRuleContext stsContext) { + for (PsiElement child : ktElement.getChildren()) { + if (child instanceof KtElement) { + ParserRuleContext stsResult = ((KtElement) child).accept(this, null); + + if (stsResult != null && stsContext != null) { + stsContext.addChild(stsResult).setParent(stsContext); + } + } + } + } + + // Default visit method for kotlin node. Simply visit all children of the element. + @Override + public ParserRuleContext visitKtElement(KtElement ktElement, Void data) { + visitChildren(ktElement, null); + return null; } @Override - public ParserRuleContext visitKtFile(KtFile node, Void data) { - return new CompilationUnitContext(null, 0); + public CompilationUnitContext visitKtFile(KtFile ktFile, Void data) { + stsCU = new CompilationUnitContext(null, 0); + visitChildren(ktFile, stsCU); + return stsCU; } + + @Override + public ParserRuleContext visitPackageDirective(KtPackageDirective ktPackageDirective, Void data) { + PackageDeclarationContext stsPackage = new PackageDeclarationContext(null, 0); + stsPackage.addChild(NodeBuilder.terminalNode(StaticTSParser.Package)); + stsPackage.addChild(NodeBuilder.qualifiedName(ktPackageDirective.getQualifiedName())).setParent(stsPackage); + return stsPackage; + } + + @Override + public ParserRuleContext visitImportDirective(KtImportDirective ktImportDirective, Void data) { + ImportDeclarationContext stsImport = new ImportDeclarationContext(null, 0); + stsImport.addChild(NodeBuilder.terminalNode(StaticTSParser.Import)); + stsImport.addChild(NodeBuilder.qualifiedName(ktImportDirective.getImportedFqName().asString())).setParent(stsImport); + + String alias = ktImportDirective.getAliasName(); + if (alias != null && !alias.isEmpty()) { + stsImport.addChild(NodeBuilder.terminalNode(StaticTSParser.As)); + stsImport.addChild(NodeBuilder.terminalIdentifier(alias)); + } + else if (ktImportDirective.isAllUnder()) { + stsImport.addChild(NodeBuilder.terminalNode(StaticTSParser.Dot)); + stsImport.addChild(NodeBuilder.terminalNode(StaticTSParser.Multiply)); + } + + stsCU.addChild(stsImport); + + return null; + } + + @Override + public ParserRuleContext visitClass(KtClass ktClass, Void data) { + ParserRuleContext stsResult; + +// if (ktClass.isInterface()) { +// stsResult = new InterfaceDeclarationContext(null, 0); +// stsResult.addChild(NodeBuilder.terminalNode(StaticTSParser.Interface)); +// } else { + stsResult = new ClassDeclarationContext(null, 0); + stsResult.addChild(NodeBuilder.terminalNode(StaticTSParser.Class)); +// } + + if (KtPsiUtilKt.isAbstract(ktClass)) + stsResult.addChild(NodeBuilder.terminalNode(StaticTSParser.Abstract)); + else if (ktClass.hasModifier(KtTokens.OPEN_KEYWORD)) + stsResult.addChild(NodeBuilder.terminalNode(StaticTSParser.Open)); + + + stsResult.addChild(NodeBuilder.terminalIdentifier(ktClass.getName())); + + ClassBodyContext stsClassBody = new ClassBodyContext(stsResult, 0); + stsResult.addChild(stsClassBody).setParent(stsResult); + + visitChildren(ktClass, stsClassBody); + + if (ktClass.isTopLevel()) { + TopDeclarationContext stsTopDecl = new TopDeclarationContext(null, 0); + + if (KtPsiUtilKt.isPublic(ktClass)) { + stsTopDecl.addChild(NodeBuilder.terminalNode(StaticTSParser.Export)); + } + + stsTopDecl.addChild(stsResult).setParent(stsTopDecl); + stsResult = stsTopDecl; + } + // else { + // TODO: inner, nested, local + // } + + return stsResult; + } + } \ No newline at end of file diff --git a/migrator/src/com/ohos/migrator/kotlin/KotlinTranspiler.java b/migrator/src/com/ohos/migrator/kotlin/KotlinTranspiler.java index ec393871f..a9087d65d 100644 --- a/migrator/src/com/ohos/migrator/kotlin/KotlinTranspiler.java +++ b/migrator/src/com/ohos/migrator/kotlin/KotlinTranspiler.java @@ -16,9 +16,11 @@ package com.ohos.migrator.kotlin; import com.ohos.migrator.AbstractTranspiler; +import com.ohos.migrator.Main; import com.ohos.migrator.ResultCode; import com.ohos.migrator.TranspileException; import com.ohos.migrator.staticTS.parser.StaticTSParser.CompilationUnitContext; + import com.intellij.openapi.Disposable; import com.intellij.openapi.util.Disposer; import org.jetbrains.kotlin.analyzer.AnalysisResult; @@ -36,10 +38,14 @@ import org.jetbrains.kotlin.config.CommonConfigurationKeys; import org.jetbrains.kotlin.config.CompilerConfiguration; import org.jetbrains.kotlin.metadata.jvm.deserialization.JvmProtoBufUtil; import org.jetbrains.kotlin.psi.KtFile; +import org.jetbrains.kotlin.utils.PathUtil; import java.io.File; import java.io.IOException; +import java.net.URISyntaxException; import java.util.*; +import java.util.jar.JarFile; +import java.util.jar.Manifest; /** * Kotlin to StaticTS transpiler class inherited from AbstractTranspiler class. @@ -54,6 +60,8 @@ public class KotlinTranspiler extends AbstractTranspiler { CompilerConfiguration configuration; KotlinCoreEnvironment environment; + String MANIFEST_IMPLEMENTATION_TITLE = "Implementation-Title"; + static { org.jetbrains.kotlin.cli.common.environment.UtilKt.setIdeaIoUseFallback(); } @@ -116,8 +124,50 @@ public class KotlinTranspiler extends AbstractTranspiler { // Add user-defined classpaths. JvmContentRootsKt.addJvmClasspathRoots(configuration, libFiles); - // TODO: Add Kotlin standard library? - // TODO: Add JDK standard library? + // Configure kotlin libraries. + JvmContentRootsKt.addJvmClasspathRoots(configuration, getKotlinJars()); + + // Configure JDK classpaths. + JvmContentRootsKt.configureJdkClasspathRoots(configuration); + } + + private List getKotlinJars() { + // NOTE: The Kotlin libraries are currently placed in the same + // directory as the application jar. + File[] jarFiles = null; + try { + File libDir = new File(Main.class.getProtectionDomain().getCodeSource().getLocation().toURI()).getParentFile(); + jarFiles = libDir.listFiles(file -> isBuiltinKotlinJar(getManifestImplementationTitle(file))); + } catch (URISyntaxException e1) + {} + + /* Just to be safe */ + if (jarFiles == null) { + return new ArrayList<>(); + } + return Arrays.asList(jarFiles); + } + + private boolean isBuiltinKotlinJar(String name) { + return (name != null && + (name.startsWith(PathUtil.KOTLIN_JAVA_STDLIB_NAME) || // kotlin-stdlib + name.equals(PathUtil.KOTLIN_TEST_NAME) || // kotlin-test + name.equals(PathUtil.KOTLIN_JAVA_REFLECT_NAME) || // kotlin-reflect + name.equals(PathUtil.KOTLIN_JAVA_SCRIPT_RUNTIME_NAME))); // kotlin-script-runtime + } + + private String getManifestImplementationTitle(File file){ + try { + JarFile jarFile = new JarFile(file); + Manifest manifest = jarFile.getManifest(); + + if (manifest == null) { + return null; + } + return manifest.getMainAttributes().getValue(MANIFEST_IMPLEMENTATION_TITLE); + } catch (IOException e) { + return null; + } } @Override @@ -129,7 +179,7 @@ public class KotlinTranspiler extends AbstractTranspiler { AnalysisResult analysisResult = analyze(sourceToKotlin.values()); for (Map.Entry entry : sourceToKotlin.entrySet()) { - CompilationUnitContext stsCU = transform(entry.getValue(), analysisResult); + CompilationUnitContext stsCU = transform(entry.getValue(), entry.getKey(), analysisResult); write(stsCU, entry.getKey()); } } catch (Exception e) { @@ -177,8 +227,8 @@ public class KotlinTranspiler extends AbstractTranspiler { return analyzer.getAnalysisResult(); } - private CompilationUnitContext transform(KtFile ktFile, AnalysisResult analysisResult) { - KotlinTransformer transformer = new KotlinTransformer(ktFile, analysisResult); + private CompilationUnitContext transform(KtFile ktFile, File srcFile, AnalysisResult analysisResult) { + KotlinTransformer transformer = new KotlinTransformer(ktFile, srcFile, analysisResult); return transformer.transform(); } diff --git a/migrator/src/com/ohos/migrator/staticTS/writer/StaticTSWriter.java b/migrator/src/com/ohos/migrator/staticTS/writer/StaticTSWriter.java index 3fba2b340..44b7c04f3 100644 --- a/migrator/src/com/ohos/migrator/staticTS/writer/StaticTSWriter.java +++ b/migrator/src/com/ohos/migrator/staticTS/writer/StaticTSWriter.java @@ -750,7 +750,7 @@ public class StaticTSWriter extends StaticTSParserBaseVisitor { sb.append(termMult.getText()); } else if (termAs != null) { - sb.append(termAs.getText()).append(' '); + sb.append(' ').append(termAs.getText()).append(' '); TerminalNode termId = stsImportDeclatation.Identifier(); assert(termId != null); sb.append(termId.getText()); diff --git a/migrator/test/kotlin/empty_class_declaration.kt b/migrator/test/kotlin/empty_class_declaration.kt new file mode 100644 index 000000000..2509632cc --- /dev/null +++ b/migrator/test/kotlin/empty_class_declaration.kt @@ -0,0 +1,32 @@ +/* + * Copyright (c) 2022-2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.ohos.migrator.test.kotlin; + +class Empty + +class EmptyWithBody { } + +abstract class AbstractClass + +open class OpenClass + +final class FinalClass + +public class PublicClass + +private class PrivateClass + +internal class InternalClass \ No newline at end of file diff --git a/migrator/test/kotlin/empty_class_declaration.kt.sts b/migrator/test/kotlin/empty_class_declaration.kt.sts new file mode 100644 index 000000000..b6c4a7ba7 --- /dev/null +++ b/migrator/test/kotlin/empty_class_declaration.kt.sts @@ -0,0 +1,42 @@ +/* + * Copyright (c) 2022-2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.ohos.migrator.test.kotlin; + +export class Empty { +} + +export class EmptyWithBody { +} + +export abstract class AbstractClass { +} + +export open class OpenClass { +} + +export class FinalClass { +} + +export class PublicClass { +} + +class PrivateClass { +} + +class InternalClass { +} + + diff --git a/migrator/test/kotlin/imports.kt b/migrator/test/kotlin/imports.kt new file mode 100644 index 000000000..b9339a12c --- /dev/null +++ b/migrator/test/kotlin/imports.kt @@ -0,0 +1,28 @@ +/* + * Copyright (c) 2022-2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.ohos.migrator.test.kotlin; + +import kotlin.random.Random; // Random is now accessible without qualification +import kotlin.math.*; // everything in 'kotlin.math' becomes accessible +import kotlin.reflect.KClass as Class // 'Class' stands for kotlin.reflect.KClass + +fun main() { + println(PI); + + var rnd : Random = Random(5); + + var kk : Class; +} \ No newline at end of file diff --git a/migrator/test/kotlin/imports.kt.sts b/migrator/test/kotlin/imports.kt.sts new file mode 100644 index 000000000..38e0ee32a --- /dev/null +++ b/migrator/test/kotlin/imports.kt.sts @@ -0,0 +1,20 @@ +/* + * Copyright (c) 2022-2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.ohos.migrator.test.kotlin; + +import kotlin.random.Random; +import kotlin.math.*; +import kotlin.reflect.KClass as Class; \ No newline at end of file -- Gitee