working with import statements improved

This commit is contained in:
Sergey Ignatov
2011-11-16 12:57:13 +04:00
parent bbcf8be5bf
commit d0c8b104d5
8 changed files with 35 additions and 25 deletions
+5 -10
View File
@@ -20,10 +20,10 @@ public class Converter {
public static File fileToFile(PsiJavaFile javaFile) {
final PsiImportList importList = javaFile.getImportList();
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>();
for (String part : packageName.split("\\."))
result.add(new IdentifierImpl(part).toKotlin());
@@ -388,14 +388,9 @@ public class Converter {
}
@NotNull
private static Import importToImport(PsiImportStatementBase t) {
if (t != null) {
final PsiJavaCodeReferenceElement reference = t.getImportReference();
if (reference != null) {
return new Import(reference.getQualifiedName()); // TODO: use identifier
}
}
return new Import("");
private static Import importToImport(PsiImportStatementBase i) {
final String text = i == null ? "" : quoteKeywords(i.getText().replace("import ", "").replace("static ", "").replace(";", ""));
return new Import(text); // TODO: import reference
}
@NotNull
@@ -116,11 +116,6 @@ public class StatementVisitor extends ElementVisitor {
);
}
@Override
public void visitImportStatement(PsiImportStatement statement) {
super.visitImportStatement(statement);
}
@Override
public void visitIfStatement(PsiIfStatement statement) {
super.visitIfStatement(statement);
@@ -131,11 +126,6 @@ public class StatementVisitor extends ElementVisitor {
);
}
@Override
public void visitImportStaticStatement(PsiImportStaticStatement statement) {
super.visitImportStaticStatement(statement);
}
@Override
public void visitLabeledStatement(PsiLabeledStatement statement) {
super.visitLabeledStatement(statement);
@@ -145,11 +135,6 @@ public class StatementVisitor extends ElementVisitor {
);
}
@Override
public void visitPackageStatement(PsiPackageStatement statement) {
super.visitPackageStatement(statement);
}
@Override
public void visitSwitchLabelStatement(PsiSwitchLabelStatement 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() {
}
}