J2K: fixed bug
This commit is contained in:
@@ -96,10 +96,9 @@ class CodeBuilder(private val topElement: PsiElement?) {
|
|||||||
val prefixElements = ArrayList<PsiElement>(1)
|
val prefixElements = ArrayList<PsiElement>(1)
|
||||||
val postfixElements = ArrayList<PsiElement>(1)
|
val postfixElements = ArrayList<PsiElement>(1)
|
||||||
for ((prototype, inheritance) in element.prototypes!!) {
|
for ((prototype, inheritance) in element.prototypes!!) {
|
||||||
if (prototype is LightElement) continue
|
|
||||||
assert(prototype !is PsiComment)
|
assert(prototype !is PsiComment)
|
||||||
assert(prototype !is PsiWhiteSpace)
|
assert(prototype !is PsiWhiteSpace)
|
||||||
assert(topElement.isAncestor(prototype))
|
if (!topElement.isAncestor(prototype)) continue
|
||||||
prefixElements.collectPrefixElements(prototype, inheritance, notInsideElements)
|
prefixElements.collectPrefixElements(prototype, inheritance, notInsideElements)
|
||||||
postfixElements.collectPostfixElements(prototype, inheritance, notInsideElements)
|
postfixElements.collectPostfixElements(prototype, inheritance, notInsideElements)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -3148,6 +3148,11 @@ public class JavaToKotlinConverterTestGenerated extends AbstractJavaToKotlinConv
|
|||||||
doTest("j2k/tests/testData/ast/typeParameters/traitDoubleParametrizationWithTwoBoundsWithExtending.java");
|
doTest("j2k/tests/testData/ast/typeParameters/traitDoubleParametrizationWithTwoBoundsWithExtending.java");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@TestMetadata("typeFromOtherFile.java")
|
||||||
|
public void testTypeFromOtherFile() throws Exception {
|
||||||
|
doTest("j2k/tests/testData/ast/typeParameters/typeFromOtherFile.java");
|
||||||
|
}
|
||||||
|
|
||||||
@TestMetadata("where.java")
|
@TestMetadata("where.java")
|
||||||
public void testWhere() throws Exception {
|
public void testWhere() throws Exception {
|
||||||
doTest("j2k/tests/testData/ast/typeParameters/where.java");
|
doTest("j2k/tests/testData/ast/typeParameters/where.java");
|
||||||
|
|||||||
@@ -1,9 +1,7 @@
|
|||||||
package javaApi;
|
package javaApi;
|
||||||
|
|
||||||
import org.jetbrains.annotations.Nullable;
|
import org.jetbrains.annotations.Nullable;
|
||||||
|
import java.util.Set;
|
||||||
import java.lang.Override;
|
|
||||||
import java.lang.String;
|
|
||||||
|
|
||||||
public @interface Anon1 {
|
public @interface Anon1 {
|
||||||
String[] value();
|
String[] value();
|
||||||
@@ -60,3 +58,7 @@ public class Derived extends Base {
|
|||||||
public class WithVarargConstructor {
|
public class WithVarargConstructor {
|
||||||
public WithVarargConstructor(int p, Object... objects) { }
|
public WithVarargConstructor(int p, Object... objects) { }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
class T {
|
||||||
|
public Set<String> set;
|
||||||
|
}
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
import java.util.*;
|
||||||
|
import javaApi.T;
|
||||||
|
|
||||||
|
class A {
|
||||||
|
public Object foo(T t) {
|
||||||
|
return Collections.nCopies(1, t.set);
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,9 @@
|
|||||||
|
import java.util.*
|
||||||
|
import javaApi.T
|
||||||
|
import kotlin.Set
|
||||||
|
|
||||||
|
class A {
|
||||||
|
public fun foo(t: T): Any {
|
||||||
|
return Collections.nCopies<Set<String>>(1, t.set)
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user