From dce64d5166da6b31f9210238c50641105d7bdb73 Mon Sep 17 00:00:00 2001 From: Evgeny Gerashchenko Date: Fri, 1 Jun 2012 21:51:22 +0400 Subject: [PATCH] Added JvmClassName(Class) constructor. Replaced some JvmClassName(String) usages with it. --- .../jet/lang/resolve/java/JdkNames.java | 4 ++-- .../jet/lang/resolve/java/JvmAbi.java | 4 +++- .../jet/lang/resolve/java/JvmClassName.java | 4 ++++ .../jet/lang/resolve/java/JvmStdlibNames.java | 21 ++++++++++--------- 4 files changed, 20 insertions(+), 13 deletions(-) diff --git a/compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/JdkNames.java b/compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/JdkNames.java index d1050644415..5d7fd2e93a7 100644 --- a/compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/JdkNames.java +++ b/compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/JdkNames.java @@ -21,7 +21,7 @@ package org.jetbrains.jet.lang.resolve.java; */ public class JdkNames { - public static final JvmClassName JL_OBJECT = new JvmClassName("java.lang.Object"); - public static final JvmClassName JL_STRING = new JvmClassName("java.lang.String"); + public static final JvmClassName JL_OBJECT = new JvmClassName(Object.class); + public static final JvmClassName JL_STRING = new JvmClassName(String.class); } diff --git a/compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/JvmAbi.java b/compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/JvmAbi.java index 35498eeba7e..aa09edcc4a0 100644 --- a/compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/JvmAbi.java +++ b/compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/JvmAbi.java @@ -16,6 +16,8 @@ package org.jetbrains.jet.lang.resolve.java; +import org.jetbrains.annotations.NotNull; + /** * @author Stepan Koltsov */ @@ -28,5 +30,5 @@ public class JvmAbi { public static final String CLASS_OBJECT_SUFFIX = "$ClassObject$"; public static final String CLASS_OBJECT_CLASS_NAME = "ClassObject$"; - public static final JvmClassName JETBRAINS_NOT_NULL_ANNOTATION = new JvmClassName("org.jetbrains.annotations.NotNull"); + public static final JvmClassName JETBRAINS_NOT_NULL_ANNOTATION = new JvmClassName(NotNull.class); } diff --git a/compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/JvmClassName.java b/compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/JvmClassName.java index bdef4564b8b..f03df0e1def 100644 --- a/compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/JvmClassName.java +++ b/compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/JvmClassName.java @@ -28,6 +28,10 @@ public class JvmClassName { @NotNull private final FqName fqName; + public JvmClassName(@NotNull Class klass) { + this(klass.getName()); + } + public JvmClassName(@NotNull String fqName) { this(new FqName(fqName)); } diff --git a/compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/JvmStdlibNames.java b/compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/JvmStdlibNames.java index 9f7cd105317..2f6d44bd0c9 100644 --- a/compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/JvmStdlibNames.java +++ b/compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/JvmStdlibNames.java @@ -16,15 +16,16 @@ package org.jetbrains.jet.lang.resolve.java; -import jet.runtime.typeinfo.JetConstructor; -import jet.runtime.typeinfo.KotlinSignature; +import jet.JetObject; +import jet.runtime.typeinfo.*; +import org.jetbrains.jet.rt.annotation.AssertInvisibleInResolver; /** * @author Stepan Koltsov */ public class JvmStdlibNames { - public static final JvmClassName JET_VALUE_PARAMETER = new JvmClassName("jet.runtime.typeinfo.JetValueParameter"); + public static final JvmClassName JET_VALUE_PARAMETER = new JvmClassName(JetValueParameter.class); public static final String JET_VALUE_PARAMETER_NAME_FIELD = "name"; public static final String JET_VALUE_PARAMETER_HAS_DEFAULT_VALUE_FIELD = "hasDefaultValue"; @@ -33,12 +34,12 @@ public class JvmStdlibNames { public static final String JET_VALUE_PARAMETER_RECEIVER_FIELD = "receiver"; - public static final JvmClassName JET_TYPE_PARAMETER = new JvmClassName("jet.runtime.typeinfo.JetTypeParameter"); + public static final JvmClassName JET_TYPE_PARAMETER = new JvmClassName(JetTypeParameter.class); public static final String JET_TYPE_PARAMETER_NAME_FIELD = "name"; - public static final JvmClassName JET_METHOD = new JvmClassName("jet.runtime.typeinfo.JetMethod"); + public static final JvmClassName JET_METHOD = new JvmClassName(JetMethod.class); public static final String JET_METHOD_KIND_FIELD = "kind"; public static final String JET_METHOD_NULLABLE_RETURN_TYPE_FIELD = "nullableReturnType"; @@ -50,7 +51,7 @@ public class JvmStdlibNames { public static final int JET_METHOD_KIND_PROPERTY = 1; public static final int JET_METHOD_KIND_DEFAULT = JET_METHOD_KIND_REGULAR; - public static final JvmClassName JET_CONSTRUCTOR = new JvmClassName("jet.runtime.typeinfo.JetConstructor"); + public static final JvmClassName JET_CONSTRUCTOR = new JvmClassName(JetConstructor.class); /** * @deprecated @@ -59,17 +60,17 @@ public class JvmStdlibNames { public static final String JET_CONSTRUCTOR_HIDDEN_FIELD = "hidden"; - public static final JvmClassName JET_CLASS = new JvmClassName("jet.runtime.typeinfo.JetClass"); + public static final JvmClassName JET_CLASS = new JvmClassName(JetClass.class); public static final String JET_CLASS_SIGNATURE = "signature"; - public static final JvmClassName JET_OBJECT = new JvmClassName("jet.JetObject"); + public static final JvmClassName JET_OBJECT = new JvmClassName(JetObject.class); - public static final JvmClassName ASSERT_INVISIBLE_IN_RESOLVER = new JvmClassName("org.jetbrains.jet.rt.annotation.AssertInvisibleInResolver"); + public static final JvmClassName ASSERT_INVISIBLE_IN_RESOLVER = new JvmClassName(AssertInvisibleInResolver.class); - public static final JvmClassName KOTLIN_SIGNATURE = new JvmClassName(KotlinSignature.class.getName()); + public static final JvmClassName KOTLIN_SIGNATURE = new JvmClassName(KotlinSignature.class); public static final String KOTLIN_SIGNATURE_VALUE_METHOD = "value"; private JvmStdlibNames() {