Delete useless method from NamespaceCodegen

It was already present in PackageClassUtils
This commit is contained in:
Alexander Udalov
2013-09-30 15:50:28 +04:00
parent 8729c88aa2
commit bee32b8138
4 changed files with 14 additions and 22 deletions
@@ -26,6 +26,7 @@ import org.jetbrains.jet.codegen.state.GenerationStateAware;
import org.jetbrains.jet.codegen.state.JetTypeMapperMode;
import org.jetbrains.jet.lang.descriptors.ClassDescriptor;
import org.jetbrains.jet.lang.psi.JetFile;
import org.jetbrains.jet.lang.resolve.java.JvmClassName;
import org.jetbrains.jet.lang.resolve.name.FqName;
import javax.inject.Inject;
@@ -33,6 +34,7 @@ import java.io.File;
import java.util.*;
import static org.jetbrains.jet.codegen.AsmUtil.isPrimitive;
import static org.jetbrains.jet.lang.resolve.java.PackageClassUtils.getPackageClassFqName;
public final class ClassFileFactory extends GenerationStateAware {
@NotNull private ClassBuilderFactory builderFactory;
@@ -111,7 +113,7 @@ public final class ClassFileFactory extends GenerationStateAware {
@NotNull
@Override
protected ClassBuilder createClassBuilder() {
return newVisitor(NamespaceCodegen.getJVMClassNameForKotlinNs(fqName).getAsmType(), files);
return newVisitor(JvmClassName.byFqNameWithoutInnerClasses(getPackageClassFqName(fqName)).getAsmType(), files);
}
};
codegen = new NamespaceCodegen(onDemand, fqName, state, files);
@@ -44,7 +44,6 @@ import org.jetbrains.jet.lang.resolve.BindingContext;
import org.jetbrains.jet.lang.resolve.java.JvmAbi;
import org.jetbrains.jet.lang.resolve.java.JvmAnnotationNames;
import org.jetbrains.jet.lang.resolve.java.JvmClassName;
import org.jetbrains.jet.lang.resolve.java.PackageClassUtils;
import org.jetbrains.jet.lang.resolve.name.FqName;
import org.jetbrains.jet.lang.resolve.name.Name;
@@ -56,6 +55,7 @@ import java.util.List;
import static org.jetbrains.asm4.Opcodes.*;
import static org.jetbrains.jet.codegen.AsmUtil.asmDescByFqNameWithoutInnerClasses;
import static org.jetbrains.jet.descriptors.serialization.NameSerializationUtil.createNameResolver;
import static org.jetbrains.jet.lang.resolve.java.PackageClassUtils.getPackageClassFqName;
public class NamespaceCodegen extends MemberCodegen {
@NotNull
@@ -87,7 +87,7 @@ public class NamespaceCodegen extends MemberCodegen {
public void doSomething(@NotNull ClassBuilder v) {
v.defineClass(sourceFile, V1_6,
ACC_PUBLIC | ACC_FINAL,
getJVMClassNameForKotlinNs(fqName).getInternalName(),
JvmClassName.byFqNameWithoutInnerClasses(getPackageClassFqName(fqName)).getInternalName(),
null,
//"jet/lang/Namespace",
"java/lang/Object",
@@ -183,7 +183,7 @@ public class NamespaceCodegen extends MemberCodegen {
if (!generateSrcClass) return null;
Type namespacePartType = getNamespacePartType(PackageClassUtils.getPackageClassFqName(name), file);
Type namespacePartType = getNamespacePartType(getPackageClassFqName(name), file);
ClassBuilder builder = state.getFactory().forNamespacePart(namespacePartType, file);
builder.defineClass(file, V1_6,
@@ -308,16 +308,6 @@ public class NamespaceCodegen extends MemberCodegen {
v.done();
}
@NotNull
public static JvmClassName getJVMClassNameForKotlinNs(@NotNull FqName fqName) {
String packageClassName = PackageClassUtils.getPackageClassName(fqName);
if (fqName.isRoot()) {
return JvmClassName.byInternalName(packageClassName);
}
return JvmClassName.byFqNameWithoutInnerClasses(fqName.child(Name.identifier(packageClassName)));
}
@NotNull
private static Type getNamespacePartType(@NotNull FqName facadeFqName, @NotNull PsiFile file) {
String fileName = FileUtil.getNameWithoutExtension(PathUtil.getFileName(file.getName()));
@@ -338,8 +328,7 @@ public class NamespaceCodegen extends MemberCodegen {
@NotNull
public static String getNamespacePartInternalName(@NotNull JetFile file) {
FqName fqName = JetPsiUtil.getFQName(file);
JvmClassName namespaceJvmClassName = getJVMClassNameForKotlinNs(fqName);
return getNamespacePartType(namespaceJvmClassName.getFqName(), file).getInternalName();
FqName packageFqName = JetPsiUtil.getFQName(file);
return getNamespacePartType(getPackageClassFqName(packageFqName), file).getInternalName();
}
}
@@ -26,7 +26,7 @@ import org.jetbrains.jet.JetTestUtils;
import org.jetbrains.jet.cli.jvm.JVMConfigurationKeys;
import org.jetbrains.jet.cli.jvm.compiler.JetCoreEnvironment;
import org.jetbrains.jet.lang.psi.JetPsiUtil;
import org.jetbrains.jet.lang.resolve.java.JvmClassName;
import org.jetbrains.jet.lang.resolve.name.FqName;
import org.jetbrains.jet.utils.ExceptionUtils;
import java.io.File;
@@ -37,6 +37,7 @@ import java.net.URL;
import java.util.List;
import static org.jetbrains.jet.codegen.CodegenTestUtil.*;
import static org.jetbrains.jet.lang.resolve.java.PackageClassUtils.getPackageClassFqName;
public abstract class CodegenTestCase extends UsefulTestCase {
@@ -136,8 +137,8 @@ public abstract class CodegenTestCase extends UsefulTestCase {
@NotNull
protected Class<?> generateNamespaceClass() {
JvmClassName name = NamespaceCodegen.getJVMClassNameForKotlinNs(JetPsiUtil.getFQName(myFiles.getPsiFile()));
return generateClass(name.getFqName().asString());
FqName packageFqName = JetPsiUtil.getFQName(myFiles.getPsiFile());
return generateClass(getPackageClassFqName(packageFqName).asString());
}
@NotNull
@@ -26,7 +26,6 @@ import org.jetbrains.jet.cli.jvm.compiler.JetCoreEnvironment;
import org.jetbrains.jet.codegen.ClassFileFactory;
import org.jetbrains.jet.codegen.CodegenTestCase;
import org.jetbrains.jet.codegen.GeneratedClassLoader;
import org.jetbrains.jet.codegen.NamespaceCodegen;
import org.jetbrains.jet.lang.psi.JetFile;
import org.jetbrains.jet.lang.psi.JetPsiUtil;
import org.jetbrains.jet.utils.ExceptionUtils;
@@ -38,6 +37,7 @@ import java.util.Collections;
import java.util.List;
import static org.jetbrains.jet.codegen.CodegenTestUtil.compileJava;
import static org.jetbrains.jet.lang.resolve.java.PackageClassUtils.getPackageClassFqName;
public abstract class AbstractBlackBoxCodegenTest extends CodegenTestCase {
public void doTest(@NotNull String filename) {
@@ -97,7 +97,7 @@ public abstract class AbstractBlackBoxCodegenTest extends CodegenTestCase {
// If there are many files, the first of them should contain the 'box(): String' function
JetFile firstFile = myFiles.getPsiFiles().get(0);
String fqName = NamespaceCodegen.getJVMClassNameForKotlinNs(JetPsiUtil.getFQName(firstFile)).getFqName().asString();
String fqName = getPackageClassFqName(JetPsiUtil.getFQName(firstFile)).asString();
try {
Class<?> namespaceClass = loader.loadClass(fqName);