提交 3e9ef572 编写于 作者: S Stepan Koltsov

hide another map from JavaTypeTransformer

上级 4aec67a1
...@@ -57,7 +57,7 @@ public class JavaTypeTransformer { ...@@ -57,7 +57,7 @@ public class JavaTypeTransformer {
private Map<String, JetType> primitiveTypesMap; private Map<String, JetType> primitiveTypesMap;
private Map<String, JetType> classTypesMap; private Map<FqName, JetType> classTypesMap;
private HashMap<FqName, ClassDescriptor> classDescriptorMap; private HashMap<FqName, ClassDescriptor> classDescriptorMap;
...@@ -139,7 +139,7 @@ public class JavaTypeTransformer { ...@@ -139,7 +139,7 @@ public class JavaTypeTransformer {
} }
} }
else { else {
JetType jetAnalog = getClassTypesMap().get(psiClass.getQualifiedName()); JetType jetAnalog = getKotlinAnalog(new FqName(psiClass.getQualifiedName()));
if (jetAnalog != null) { if (jetAnalog != null) {
return jetAnalog; return jetAnalog;
} }
...@@ -223,21 +223,26 @@ public class JavaTypeTransformer { ...@@ -223,21 +223,26 @@ public class JavaTypeTransformer {
return primitiveTypesMap; return primitiveTypesMap;
} }
public Map<String, JetType> getClassTypesMap() { public Map<FqName, JetType> getClassTypesMap() {
if (classTypesMap == null) { if (classTypesMap == null) {
classTypesMap = new HashMap<String, JetType>(); classTypesMap = new HashMap<FqName, JetType>();
for (JvmPrimitiveType jvmPrimitiveType : JvmPrimitiveType.values()) { for (JvmPrimitiveType jvmPrimitiveType : JvmPrimitiveType.values()) {
PrimitiveType primitiveType = jvmPrimitiveType.getPrimitiveType(); PrimitiveType primitiveType = jvmPrimitiveType.getPrimitiveType();
classTypesMap.put(jvmPrimitiveType.getWrapper().getFqName().getFqName(), JetStandardLibrary.getInstance().getNullablePrimitiveJetType(primitiveType)); classTypesMap.put(jvmPrimitiveType.getWrapper().getFqName(), JetStandardLibrary.getInstance().getNullablePrimitiveJetType(primitiveType));
} }
classTypesMap.put("java.lang.Object", JetStandardClasses.getNullableAnyType()); classTypesMap.put(new FqName("java.lang.Object"), JetStandardClasses.getNullableAnyType());
classTypesMap.put("java.lang.String", JetStandardLibrary.getInstance().getNullableStringType()); classTypesMap.put(new FqName("java.lang.String"), JetStandardLibrary.getInstance().getNullableStringType());
classTypesMap.put("java.lang.CharSequence", JetStandardLibrary.getInstance().getNullableCharSequenceType()); classTypesMap.put(new FqName("java.lang.CharSequence"), JetStandardLibrary.getInstance().getNullableCharSequenceType());
classTypesMap.put("java.lang.Throwable", JetStandardLibrary.getInstance().getNullableThrowableType()); classTypesMap.put(new FqName("java.lang.Throwable"), JetStandardLibrary.getInstance().getNullableThrowableType());
} }
return classTypesMap; return classTypesMap;
} }
@Nullable
public JetType getKotlinAnalog(@NotNull FqName fqName) {
return getClassTypesMap().get(fqName);
}
private Map<FqName, ClassDescriptor> getPrimitiveWrappersClassDescriptorMap() { private Map<FqName, ClassDescriptor> getPrimitiveWrappersClassDescriptorMap() {
if (classDescriptorMap == null) { if (classDescriptorMap == null) {
classDescriptorMap = new HashMap<FqName, ClassDescriptor>(); classDescriptorMap = new HashMap<FqName, ClassDescriptor>();
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册