From f68fe0bc38a7fa7d6842d450930b4c77b364b136 Mon Sep 17 00:00:00 2001 From: Aleksi Majander Date: Thu, 7 Feb 2013 19:44:24 +0200 Subject: [PATCH] Fixed an issue with Any? type declarations --- src/org/jetbrains/jet/j2k/visitors/TypeVisitor.kt | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/src/org/jetbrains/jet/j2k/visitors/TypeVisitor.kt b/src/org/jetbrains/jet/j2k/visitors/TypeVisitor.kt index 4fef50dd598..08167d0d4b3 100644 --- a/src/org/jetbrains/jet/j2k/visitors/TypeVisitor.kt +++ b/src/org/jetbrains/jet/j2k/visitors/TypeVisitor.kt @@ -8,6 +8,7 @@ import org.jetbrains.jet.j2k.ast.* import org.jetbrains.jet.j2k.ast.types.* import java.util.LinkedList import com.intellij.openapi.util.text.StringUtil +import java.util.ArrayList public open class TypeVisitor(private val myConverter : Converter) : PsiTypeVisitor() { private var myResult : Type = EmptyType() @@ -42,7 +43,19 @@ public open class TypeVisitor(private val myConverter : Converter) : PsiTypeVisi val identifier : Identifier = constructClassTypeIdentifier(classType) val resolvedClassTypeParams : List = createRawTypesForResolvedReference(classType) if (classType.getParameterCount() == 0 && resolvedClassTypeParams.size() > 0) { - myResult = ClassType(identifier, resolvedClassTypeParams, true) + val myParamList : ArrayList = ArrayList() + if (resolvedClassTypeParams.size() == 1) { + if ((resolvedClassTypeParams.get(0) as ClassType).`type`.name == "Any") { + myParamList.add(StarProjectionType()) + myResult = ClassType(identifier, myParamList, true) + } + else { + myResult = ClassType(identifier, resolvedClassTypeParams, true) + } + } + else { + myResult = ClassType(identifier, resolvedClassTypeParams, true) + } } else { myResult = ClassType(identifier, myConverter.typesToTypeList(classType.getParameters()), true)