working with import statements improved
This commit is contained in:
@@ -20,10 +20,10 @@ public class Converter {
|
|||||||
public static File fileToFile(PsiJavaFile javaFile) {
|
public static File fileToFile(PsiJavaFile javaFile) {
|
||||||
final PsiImportList importList = javaFile.getImportList();
|
final PsiImportList importList = javaFile.getImportList();
|
||||||
List<Import> imports = importList == null ? Collections.<Import>emptyList() : importsToImportList(importList.getAllImportStatements());
|
List<Import> imports = importList == null ? Collections.<Import>emptyList() : importsToImportList(importList.getAllImportStatements());
|
||||||
return new File(getPackageName(javaFile.getPackageName()), imports, classesToClassList(javaFile.getClasses()));
|
return new File(quoteKeywords(javaFile.getPackageName()), imports, classesToClassList(javaFile.getClasses()));
|
||||||
}
|
}
|
||||||
|
|
||||||
private static String getPackageName(String packageName) {
|
private static String quoteKeywords(String packageName) {
|
||||||
List<String> result = new LinkedList<String>();
|
List<String> result = new LinkedList<String>();
|
||||||
for (String part : packageName.split("\\."))
|
for (String part : packageName.split("\\."))
|
||||||
result.add(new IdentifierImpl(part).toKotlin());
|
result.add(new IdentifierImpl(part).toKotlin());
|
||||||
@@ -388,14 +388,9 @@ public class Converter {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@NotNull
|
@NotNull
|
||||||
private static Import importToImport(PsiImportStatementBase t) {
|
private static Import importToImport(PsiImportStatementBase i) {
|
||||||
if (t != null) {
|
final String text = i == null ? "" : quoteKeywords(i.getText().replace("import ", "").replace("static ", "").replace(";", ""));
|
||||||
final PsiJavaCodeReferenceElement reference = t.getImportReference();
|
return new Import(text); // TODO: import reference
|
||||||
if (reference != null) {
|
|
||||||
return new Import(reference.getQualifiedName()); // TODO: use identifier
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return new Import("");
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@NotNull
|
@NotNull
|
||||||
|
|||||||
@@ -116,11 +116,6 @@ public class StatementVisitor extends ElementVisitor {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public void visitImportStatement(PsiImportStatement statement) {
|
|
||||||
super.visitImportStatement(statement);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void visitIfStatement(PsiIfStatement statement) {
|
public void visitIfStatement(PsiIfStatement statement) {
|
||||||
super.visitIfStatement(statement);
|
super.visitIfStatement(statement);
|
||||||
@@ -131,11 +126,6 @@ public class StatementVisitor extends ElementVisitor {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public void visitImportStaticStatement(PsiImportStaticStatement statement) {
|
|
||||||
super.visitImportStaticStatement(statement);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void visitLabeledStatement(PsiLabeledStatement statement) {
|
public void visitLabeledStatement(PsiLabeledStatement statement) {
|
||||||
super.visitLabeledStatement(statement);
|
super.visitLabeledStatement(statement);
|
||||||
@@ -145,11 +135,6 @@ public class StatementVisitor extends ElementVisitor {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public void visitPackageStatement(PsiPackageStatement statement) {
|
|
||||||
super.visitPackageStatement(statement);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void visitSwitchLabelStatement(PsiSwitchLabelStatement statement) {
|
public void visitSwitchLabelStatement(PsiSwitchLabelStatement statement) {
|
||||||
super.visitSwitchLabelStatement(statement);
|
super.visitSwitchLabelStatement(statement);
|
||||||
|
|||||||
@@ -0,0 +1,5 @@
|
|||||||
|
package test;
|
||||||
|
|
||||||
|
import namespace.as.type.val.var.fun.is.in.object.when.trait.This;
|
||||||
|
|
||||||
|
class Test {}
|
||||||
@@ -0,0 +1,5 @@
|
|||||||
|
namespace test {
|
||||||
|
import `namespace`.`as`.`type`.`val`.`var`.`fun`.`is`.`in`.`object`.`when`.`trait`.`This`
|
||||||
|
open class Test() {
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,5 @@
|
|||||||
|
package org.jetbrains.jet.j2k;
|
||||||
|
|
||||||
|
import org.jetbrains.annotations.*;
|
||||||
|
|
||||||
|
public class Converter {}
|
||||||
@@ -0,0 +1,5 @@
|
|||||||
|
namespace org.jetbrains.jet.j2k {
|
||||||
|
import org.jetbrains.annotations.*
|
||||||
|
public open class Converter() {
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,5 @@
|
|||||||
|
package org.jetbrains.jet.j2k;
|
||||||
|
|
||||||
|
import org.jetbrains.annotations.NotNull;
|
||||||
|
|
||||||
|
public class Converter {}
|
||||||
@@ -0,0 +1,5 @@
|
|||||||
|
namespace org.jetbrains.jet.j2k {
|
||||||
|
import org.jetbrains.annotations.NotNull
|
||||||
|
public open class Converter() {
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user