Adjust test data for postponing ProhibitUsingNullableTypeParameterAgainstNotNullAnnotated

^KT-55357 Related
^KT-36770 Related
This commit is contained in:
Denis.Zharkov
2021-08-11 17:43:49 +03:00
committed by Space Team
parent d34bd2e8c0
commit cd0d6d2773
72 changed files with 334 additions and 165 deletions
@@ -224,14 +224,14 @@ public interface MutableMap</*0*/ K, /*1*/ V> : kotlin.collections.Map<K, V> {
public abstract fun clear(): kotlin.Unit
public open fun compute(/*0*/ p0: K, /*1*/ p1: java.util.function.BiFunction<in K, in V?, out V?>): V?
public open fun computeIfAbsent(/*0*/ p0: K, /*1*/ p1: java.util.function.Function<in K, out V>): V
public open fun computeIfPresent(/*0*/ p0: K, /*1*/ p1: java.util.function.BiFunction<in K, in V & Any, out V?>): V?
public open fun computeIfPresent(/*0*/ p0: K, /*1*/ p1: java.util.function.BiFunction<in K, in V, out V?>): V?
public abstract override /*1*/ /*fake_override*/ fun containsKey(/*0*/ key: K): kotlin.Boolean
public abstract override /*1*/ /*fake_override*/ fun containsValue(/*0*/ value: V): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun forEach(/*0*/ p0: java.util.function.BiConsumer<in K, in V>): kotlin.Unit
public abstract override /*1*/ /*fake_override*/ fun get(/*0*/ key: K): V?
@kotlin.SinceKotlin(version = "1.1") @kotlin.internal.PlatformDependent public open override /*1*/ /*fake_override*/ fun getOrDefault(/*0*/ key: K, /*1*/ defaultValue: V): V
public abstract override /*1*/ /*fake_override*/ fun isEmpty(): kotlin.Boolean
public open fun merge(/*0*/ p0: K, /*1*/ p1: V & Any, /*2*/ p2: java.util.function.BiFunction<in V & Any, in V & Any, out V?>): V?
public open fun merge(/*0*/ p0: K, /*1*/ p1: V, /*2*/ p2: java.util.function.BiFunction<in V, in V, out V?>): V?
public abstract fun put(/*0*/ key: K, /*1*/ value: V): V?
public abstract fun putAll(/*0*/ from: kotlin.collections.Map<out K, V>): kotlin.Unit
public open fun putIfAbsent(/*0*/ p0: K, /*1*/ p1: V): V?
@@ -9,7 +9,7 @@ public abstract class Mine</*0*/ P1, /*1*/ P2> : java.util.Map<P2, P1> {
public abstract /*fake_override*/ fun clear(): kotlin.Unit
public open /*fake_override*/ fun compute(/*0*/ P2, /*1*/ java.util.function.BiFunction<in P2, in P1?, out P1?>): P1?
public open /*fake_override*/ fun computeIfAbsent(/*0*/ P2, /*1*/ java.util.function.Function<in P2, out P1>): P1
public open /*fake_override*/ fun computeIfPresent(/*0*/ P2, /*1*/ java.util.function.BiFunction<in P2, in P1 & Any, out P1?>): P1?
public open /*fake_override*/ fun computeIfPresent(/*0*/ P2, /*1*/ java.util.function.BiFunction<in P2, in P1, out P1?>): P1?
public abstract /*fake_override*/ fun containsKey(/*0*/ kotlin.Any!): kotlin.Boolean
public abstract /*fake_override*/ fun containsValue(/*0*/ kotlin.Any!): kotlin.Boolean
public abstract /*fake_override*/ fun entrySet(): kotlin.collections.(Mutable)Set<kotlin.collections.(Mutable)Map.(Mutable)Entry<P2!, P1!>!>!
@@ -18,7 +18,7 @@ public abstract class Mine</*0*/ P1, /*1*/ P2> : java.util.Map<P2, P1> {
public open /*fake_override*/ fun getOrDefault(/*0*/ kotlin.Any!, /*1*/ P1!): P1!
public abstract /*fake_override*/ fun isEmpty(): kotlin.Boolean
public abstract /*fake_override*/ fun keySet(): kotlin.collections.(Mutable)Set<P2!>!
public open /*fake_override*/ fun merge(/*0*/ P2, /*1*/ P1 & Any, /*2*/ java.util.function.BiFunction<in P1 & Any, in P1 & Any, out P1?>): P1?
public open /*fake_override*/ fun merge(/*0*/ P2, /*1*/ P1, /*2*/ java.util.function.BiFunction<in P1, in P1, out P1?>): P1?
public abstract /*fake_override*/ fun put(/*0*/ P2!, /*1*/ P1!): P1!
public abstract /*fake_override*/ fun putAll(/*0*/ (kotlin.collections.MutableMap<out P2!, out P1!>..kotlin.collections.Map<out P2!, P1!>?)): kotlin.Unit
public open /*fake_override*/ fun putIfAbsent(/*0*/ P2, /*1*/ P1): P1?
@@ -6,7 +6,7 @@ public open class A</*0*/ T : kotlin.Any!> {
public constructor A</*0*/ T : kotlin.Any!>()
@org.checkerframework.checker.nullness.qual.Nullable public final var field: @org.checkerframework.checker.nullness.qual.Nullable kotlin.String?
@org.checkerframework.checker.nullness.qual.NonNull public open fun bar(): @org.checkerframework.checker.nullness.qual.NonNull kotlin.String
@org.checkerframework.checker.nullness.qual.Nullable public open fun baz(/*0*/ @org.checkerframework.checker.nullness.qual.NonNull x: @org.checkerframework.checker.nullness.qual.NonNull T & Any): @org.checkerframework.checker.nullness.qual.Nullable T?
@org.checkerframework.checker.nullness.qual.Nullable public open fun baz(/*0*/ @org.checkerframework.checker.nullness.qual.NonNull x: @org.checkerframework.checker.nullness.qual.NonNull T): @org.checkerframework.checker.nullness.qual.Nullable T?
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
@org.checkerframework.checker.nullness.qual.Nullable public open fun foo(/*0*/ @org.checkerframework.checker.nullness.qual.NonNull x: @org.checkerframework.checker.nullness.qual.NonNull kotlin.String, /*1*/ @org.checkerframework.checker.nullness.qual.Nullable y: @org.checkerframework.checker.nullness.qual.Nullable kotlin.CharSequence?): @org.checkerframework.checker.nullness.qual.Nullable kotlin.String?
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
@@ -6,7 +6,7 @@ public open class A</*0*/ T : kotlin.Any!> {
public constructor A</*0*/ T : kotlin.Any!>()
@org.eclipse.jdt.annotation.Nullable public final var field: @org.eclipse.jdt.annotation.Nullable kotlin.String?
@org.eclipse.jdt.annotation.NonNull public open fun bar(): @org.eclipse.jdt.annotation.NonNull kotlin.String
@org.eclipse.jdt.annotation.Nullable public open fun baz(/*0*/ @org.eclipse.jdt.annotation.NonNull x: @org.eclipse.jdt.annotation.NonNull T & Any): @org.eclipse.jdt.annotation.Nullable T?
@org.eclipse.jdt.annotation.Nullable public open fun baz(/*0*/ @org.eclipse.jdt.annotation.NonNull x: @org.eclipse.jdt.annotation.NonNull T): @org.eclipse.jdt.annotation.Nullable T?
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
@org.eclipse.jdt.annotation.Nullable public open fun foo(/*0*/ @org.eclipse.jdt.annotation.NonNull x: @org.eclipse.jdt.annotation.NonNull kotlin.String, /*1*/ @org.eclipse.jdt.annotation.Nullable y: @org.eclipse.jdt.annotation.Nullable kotlin.CharSequence?): @org.eclipse.jdt.annotation.Nullable kotlin.String?
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
@@ -0,0 +1,36 @@
// JSPECIFY_STATE: strict
// FILE: NullnessUnspecifiedTypeParameter.java
import org.jspecify.nullness.*;
@NullMarked
public class NullnessUnspecifiedTypeParameter<T> {
public void foo(T t) {}
public void bar(Test s, T t) {} // t should not become not nullable
}
// FILE: Test.java
public class Test {}
// FILE: main.kt
// jspecify_nullness_mismatch
fun main(a1: NullnessUnspecifiedTypeParameter<Any>, a2: NullnessUnspecifiedTypeParameter<<!UPPER_BOUND_VIOLATED!>Any?<!>>, x: Test): Unit {
// jspecify_nullness_mismatch
a1.foo(<!NULL_FOR_NONNULL_TYPE!>null<!>)
a1.foo(1)
a2.foo(null)
a2.foo(1)
// jspecify_nullness_mismatch, jspecify_nullness_mismatch
a1.bar(<!NULL_FOR_NONNULL_TYPE!>null<!>, <!NULL_FOR_NONNULL_TYPE!>null<!>)
// jspecify_nullness_mismatch
a1.bar(x, <!NULL_FOR_NONNULL_TYPE!>null<!>)
a1.bar(x, 1)
// jspecify_nullness_mismatch
a2.bar(<!NULL_FOR_NONNULL_TYPE!>null<!>, null)
a2.bar(x, null)
a2.bar(x, 1)
}
@@ -1,4 +1,3 @@
// FIR_IDENTICAL
// JSPECIFY_STATE: strict
// FILE: NullnessUnspecifiedTypeParameter.java
@@ -21,7 +20,8 @@ fun main(a1: NullnessUnspecifiedTypeParameter<Any>, a2: NullnessUnspecifiedTypeP
a1.foo(<!NULL_FOR_NONNULL_TYPE!>null<!>)
a1.foo(1)
a2.foo(null)
// jspecify_nullness_mismatch
a2.foo(<!NULL_FOR_NONNULL_TYPE!>null<!>)
a2.foo(1)
// jspecify_nullness_mismatch, jspecify_nullness_mismatch
@@ -30,8 +30,9 @@ fun main(a1: NullnessUnspecifiedTypeParameter<Any>, a2: NullnessUnspecifiedTypeP
a1.bar(x, <!NULL_FOR_NONNULL_TYPE!>null<!>)
a1.bar(x, 1)
// jspecify_nullness_mismatch, jspecify_nullness_mismatch
a2.bar(<!NULL_FOR_NONNULL_TYPE!>null<!>, <!NULL_FOR_NONNULL_TYPE!>null<!>)
// jspecify_nullness_mismatch
a2.bar(<!NULL_FOR_NONNULL_TYPE!>null<!>, null)
a2.bar(x, null)
a2.bar(x, <!NULL_FOR_NONNULL_TYPE!>null<!>)
a2.bar(x, 1)
}
@@ -0,0 +1,56 @@
// JSPECIFY_STATE: strict
// FILE: SelfType.java
import org.jspecify.nullness.*;
@NullMarked
public class SelfType<T extends SelfType<T>> {
public void foo(T t) {}
}
// FILE: B.java
public class B extends SelfType<B> {}
// FILE: C.java
import org.jspecify.nullness.*;
@NullMarked
public class C<E extends C<E>> extends SelfType<E> {}
// FILE: AK.java
public class AK extends SelfType<AK> {}
// FILE: AKN.java
import org.jspecify.nullness.*;
public class AKN extends SelfType<@Nullable AK> {}
// FILE: BK.java
public class BK extends B {}
// FILE: CK.java
public class CK extends C<CK> {}
// FILE: CKN.java
import org.jspecify.nullness.*;
public class CKN extends C<@Nullable CK> {}
// FILE: main.kt
fun main(ak: AK, akn: AKN, bk: BK, ck: CK, ckn: CKN): Unit {
ak.foo(ak)
// jspecify_nullness_mismatch
ak.foo(<!NULL_FOR_NONNULL_TYPE!>null<!>)
akn.foo(null)
bk.foo(bk)
// jspecify_nullness_mismatch
bk.foo(<!NULL_FOR_NONNULL_TYPE!>null<!>)
ck.foo(ck)
// jspecify_nullness_mismatch
ck.foo(<!NULL_FOR_NONNULL_TYPE!>null<!>)
ckn.foo(null)
}
@@ -1,4 +1,3 @@
// FIR_IDENTICAL
// JSPECIFY_STATE: strict
// FILE: SelfType.java
@@ -43,7 +42,8 @@ fun main(ak: AK, akn: AKN, bk: BK, ck: CK, ckn: CKN): Unit {
// jspecify_nullness_mismatch
ak.foo(<!NULL_FOR_NONNULL_TYPE!>null<!>)
akn.foo(null)
// jspecify_nullness_mismatch
akn.foo(<!NULL_FOR_NONNULL_TYPE!>null<!>)
bk.foo(bk)
// jspecify_nullness_mismatch
@@ -53,5 +53,6 @@ fun main(ak: AK, akn: AKN, bk: BK, ck: CK, ckn: CKN): Unit {
// jspecify_nullness_mismatch
ck.foo(<!NULL_FOR_NONNULL_TYPE!>null<!>)
ckn.foo(null)
// jspecify_nullness_mismatch
ckn.foo(<!NULL_FOR_NONNULL_TYPE!>null<!>)
}
@@ -13,7 +13,7 @@ public open class AK : SelfType<AK> {
public open class AKN : SelfType<@org.jspecify.nullness.Nullable AK?> {
public constructor AKN()
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun foo(/*0*/ t: @org.jspecify.nullness.Nullable AK?): kotlin.Unit
public open override /*1*/ /*fake_override*/ fun foo(/*0*/ t: @org.jspecify.nullness.Nullable AK): kotlin.Unit
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
@@ -53,7 +53,7 @@ public open class CK : C<CK> {
public open class CKN : C<@org.jspecify.nullness.Nullable CK?> {
public constructor CKN()
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun foo(/*0*/ t: @org.jspecify.nullness.Nullable CK?): kotlin.Unit
public open override /*1*/ /*fake_override*/ fun foo(/*0*/ t: @org.jspecify.nullness.Nullable CK): kotlin.Unit
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
@@ -0,0 +1,46 @@
// JSPECIFY_STATE: strict
// FILE: A.java
import org.jspecify.nullness.*;
@NullMarked
public class A<T> {
public void foo(@NullnessUnspecified T t) {}
public <E> void bar(E e) {}
}
// FILE: B.java
import org.jspecify.nullness.*;
@NullMarked
public class B<T> {
public void foo(T t) {}
public <E> void bar(E e) {}
}
// FILE: Test.java
public class Test {}
// FILE: main.kt
// jspecify_nullness_mismatch, jspecify_nullness_mismatch
fun <T : Test> main(a1: A<<!UPPER_BOUND_VIOLATED!>Any?<!>>, a2: A<Test>, b1: B<<!UPPER_BOUND_VIOLATED!>Any?<!>>, b2: B<Test>, x: T): Unit {
a1.foo(null)
// jspecify_nullness_mismatch, jspecify_nullness_mismatch
a1.bar<<!UPPER_BOUND_VIOLATED!>T?<!>>(<!NULL_FOR_NONNULL_TYPE!>null<!>)
a1.bar<T>(x)
a2.foo(null)
// jspecify_nullness_mismatch, jspecify_nullness_mismatch
a2.bar<<!UPPER_BOUND_VIOLATED!>T?<!>>(<!NULL_FOR_NONNULL_TYPE!>null<!>)
a2.bar<T>(x)
b1.foo(null)
// jspecify_nullness_mismatch, jspecify_nullness_mismatch
b1.bar<<!UPPER_BOUND_VIOLATED!>T?<!>>(<!NULL_FOR_NONNULL_TYPE!>null<!>)
b1.bar<T>(x)
// jspecify_nullness_mismatch
b2.foo(<!NULL_FOR_NONNULL_TYPE!>null<!>)
// jspecify_nullness_mismatch, jspecify_nullness_mismatch
b2.bar<<!UPPER_BOUND_VIOLATED!>T?<!>>(<!NULL_FOR_NONNULL_TYPE!>null<!>)
b2.bar<T>(x)
}
@@ -1,4 +1,3 @@
// FIR_IDENTICAL
// JSPECIFY_STATE: strict
// FILE: A.java
@@ -34,7 +33,8 @@ fun <T : Test> main(a1: A<<!UPPER_BOUND_VIOLATED!>Any?<!>>, a2: A<Test>, b1: B<<
a2.bar<<!UPPER_BOUND_VIOLATED!>T?<!>>(<!NULL_FOR_NONNULL_TYPE!>null<!>)
a2.bar<T>(x)
b1.foo(null)
// jspecify_nullness_mismatch
b1.foo(<!NULL_FOR_NONNULL_TYPE!>null<!>)
// jspecify_nullness_mismatch, jspecify_nullness_mismatch
b1.bar<<!UPPER_BOUND_VIOLATED!>T?<!>>(<!NULL_FOR_NONNULL_TYPE!>null<!>)
b1.bar<T>(x)
@@ -43,8 +43,7 @@ fun main(ak: AK, akn: AKN, bk: BK, ck: CK, ckn: CKN): Unit {
// jspecify_nullness_mismatch
ak.foo(<!NULLABILITY_MISMATCH_BASED_ON_JAVA_ANNOTATIONS!>null<!>)
// jspecify_nullness_mismatch
akn.foo(<!NULLABILITY_MISMATCH_BASED_ON_JAVA_ANNOTATIONS!>null<!>) // the corresponding warning/error is present on the Java side
akn.foo(null) // the corresponding warning/error is present on the Java side
bk.foo(bk)
// jspecify_nullness_mismatch
@@ -54,6 +53,5 @@ fun main(ak: AK, akn: AKN, bk: BK, ck: CK, ckn: CKN): Unit {
// jspecify_nullness_mismatch
ck.foo(<!NULLABILITY_MISMATCH_BASED_ON_JAVA_ANNOTATIONS!>null<!>)
// jspecify_nullness_mismatch
ckn.foo(<!NULLABILITY_MISMATCH_BASED_ON_JAVA_ANNOTATIONS!>null<!>) // the corresponding warning/error is present on the Java side
ckn.foo(null) // the corresponding warning/error is present on the Java side
}
@@ -23,24 +23,24 @@ public class Test {}
// jspecify_nullness_mismatch, jspecify_nullness_mismatch
fun <T : Test> main(a1: A<<!UPPER_BOUND_VIOLATED_BASED_ON_JAVA_ANNOTATIONS!>Any?<!>>, a2: A<Test>, b1: B<<!UPPER_BOUND_VIOLATED_BASED_ON_JAVA_ANNOTATIONS!>Any?<!>>, b2: B<Test>, x: T): Unit {
a1.foo(null)
// jspecify_nullness_mismatch, jspecify_nullness_mismatch
a1.bar<<!UPPER_BOUND_VIOLATED_BASED_ON_JAVA_ANNOTATIONS!>T?<!>>(<!NULLABILITY_MISMATCH_BASED_ON_JAVA_ANNOTATIONS!>null<!>)
// jspecify_nullness_mismatch
a1.bar<<!UPPER_BOUND_VIOLATED_BASED_ON_JAVA_ANNOTATIONS!>T?<!>>(null)
a1.bar<T>(x)
a2.foo(null)
// jspecify_nullness_mismatch, jspecify_nullness_mismatch
a2.bar<<!UPPER_BOUND_VIOLATED_BASED_ON_JAVA_ANNOTATIONS!>T?<!>>(<!NULLABILITY_MISMATCH_BASED_ON_JAVA_ANNOTATIONS!>null<!>)
// jspecify_nullness_mismatch
a2.bar<<!UPPER_BOUND_VIOLATED_BASED_ON_JAVA_ANNOTATIONS!>T?<!>>(null)
a2.bar<T>(x)
// jspecify_nullness_mismatch
b1.foo(<!NULLABILITY_MISMATCH_BASED_ON_JAVA_ANNOTATIONS!>null<!>)
// jspecify_nullness_mismatch, jspecify_nullness_mismatch
b1.bar<<!UPPER_BOUND_VIOLATED_BASED_ON_JAVA_ANNOTATIONS!>T?<!>>(<!NULLABILITY_MISMATCH_BASED_ON_JAVA_ANNOTATIONS!>null<!>)
// jspecify_nullness_mismatch
b1.bar<<!UPPER_BOUND_VIOLATED_BASED_ON_JAVA_ANNOTATIONS!>T?<!>>(null)
b1.bar<T>(x)
// jspecify_nullness_mismatch
b2.foo(<!NULLABILITY_MISMATCH_BASED_ON_JAVA_ANNOTATIONS!>null<!>)
// jspecify_nullness_mismatch, jspecify_nullness_mismatch
b2.bar<<!UPPER_BOUND_VIOLATED_BASED_ON_JAVA_ANNOTATIONS!>T?<!>>(<!NULLABILITY_MISMATCH_BASED_ON_JAVA_ANNOTATIONS!>null<!>)
// jspecify_nullness_mismatch
b2.bar<<!UPPER_BOUND_VIOLATED_BASED_ON_JAVA_ANNOTATIONS!>T?<!>>(null)
b2.bar<T>(x)
}
@@ -16,10 +16,10 @@ public open class L</*0*/ T : kotlin.collections.(Mutable)Map<kotlin.String!, S!
public constructor L</*0*/ T : kotlin.collections.(Mutable)Map<kotlin.String!, S!>!, /*1*/ S : kotlin.Any!>()
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open fun s(): S & Any
public open fun setS(/*0*/ s: S & Any): kotlin.Unit
public open fun s(): S
public open fun setS(/*0*/ s: S): kotlin.Unit
public open fun setT(/*0*/ @spr.Nullable t: @spr.Nullable T?): kotlin.Unit
public open fun t(): T & Any
public open fun t(): T
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
@@ -62,10 +62,10 @@ package test {
public constructor L</*0*/ T : kotlin.collections.(Mutable)Map<kotlin.String!, S!>!, /*1*/ S : kotlin.Any!>()
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open fun s(): S & Any
public open fun setS(/*0*/ s: S & Any): kotlin.Unit
public open fun s(): S
public open fun setS(/*0*/ s: S): kotlin.Unit
public open fun setT(/*0*/ @spr.Nullable t: @spr.Nullable T?): kotlin.Unit
public open fun t(): T & Any
public open fun t(): T
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
}
@@ -32,38 +32,38 @@ public abstract class MyCollection</*0*/ E : kotlin.Any!> : java.util.AbstractCo
invisible_fake open override /*1*/ /*fake_override*/ fun hugeCapacity(/*0*/ p0: kotlin.Int): kotlin.Int
}
public abstract class MyList</*0*/ E : kotlin.Any!> : MyCollection<E!>, kotlin.collections.MutableList<@org.jetbrains.annotations.NotNull E & Any> {
public abstract class MyList</*0*/ E : kotlin.Any!> : MyCollection<E!>, kotlin.collections.MutableList<@org.jetbrains.annotations.NotNull E> {
public constructor MyList</*0*/ E : kotlin.Any!>()
public abstract override /*2*/ /*fake_override*/ val size: kotlin.Int
public open override /*2*/ /*fake_override*/ fun add(/*0*/ element: E & Any): kotlin.Boolean
public abstract override /*1*/ /*fake_override*/ fun add(/*0*/ index: kotlin.Int, /*1*/ element: @org.jetbrains.annotations.NotNull E & Any): kotlin.Unit
public abstract override /*1*/ /*fake_override*/ fun addAll(/*0*/ index: kotlin.Int, /*1*/ elements: kotlin.collections.Collection<@org.jetbrains.annotations.NotNull E & Any>): kotlin.Boolean
public open override /*2*/ /*fake_override*/ fun addAll(/*0*/ elements: kotlin.collections.Collection<E & Any>): kotlin.Boolean
public open override /*2*/ /*fake_override*/ fun add(/*0*/ element: E): kotlin.Boolean
public abstract override /*1*/ /*fake_override*/ fun add(/*0*/ index: kotlin.Int, /*1*/ element: @org.jetbrains.annotations.NotNull E): kotlin.Unit
public abstract override /*1*/ /*fake_override*/ fun addAll(/*0*/ index: kotlin.Int, /*1*/ elements: kotlin.collections.Collection<@org.jetbrains.annotations.NotNull E>): kotlin.Boolean
public open override /*2*/ /*fake_override*/ fun addAll(/*0*/ elements: kotlin.collections.Collection<E>): kotlin.Boolean
public open override /*2*/ /*fake_override*/ fun clear(): kotlin.Unit
@java.lang.Override public open override /*2*/ fun contains(/*0*/ element: E!): kotlin.Boolean
public open override /*2*/ /*fake_override*/ fun containsAll(/*0*/ elements: kotlin.collections.Collection<E!>): kotlin.Boolean
public open override /*2*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*2*/ /*fake_override*/ fun forEach(/*0*/ p0: java.util.function.Consumer<in E!>!): kotlin.Unit
public abstract override /*1*/ /*fake_override*/ fun get(/*0*/ index: kotlin.Int): @org.jetbrains.annotations.NotNull E & Any
public abstract override /*1*/ /*fake_override*/ fun get(/*0*/ index: kotlin.Int): @org.jetbrains.annotations.NotNull E
public open override /*2*/ /*fake_override*/ fun hashCode(): kotlin.Int
public abstract override /*1*/ /*fake_override*/ fun indexOf(/*0*/ element: @org.jetbrains.annotations.NotNull E & Any): kotlin.Int
public abstract override /*1*/ /*fake_override*/ fun indexOf(/*0*/ element: @org.jetbrains.annotations.NotNull E): kotlin.Int
public open override /*2*/ /*fake_override*/ fun isEmpty(): kotlin.Boolean
public abstract override /*2*/ /*fake_override*/ fun iterator(): kotlin.collections.MutableIterator<E & Any>
public abstract override /*1*/ /*fake_override*/ fun lastIndexOf(/*0*/ element: @org.jetbrains.annotations.NotNull E & Any): kotlin.Int
public abstract override /*1*/ /*fake_override*/ fun listIterator(): kotlin.collections.MutableListIterator<@org.jetbrains.annotations.NotNull E & Any>
public abstract override /*1*/ /*fake_override*/ fun listIterator(/*0*/ index: kotlin.Int): kotlin.collections.MutableListIterator<@org.jetbrains.annotations.NotNull E & Any>
public open override /*2*/ /*fake_override*/ fun parallelStream(): java.util.stream.Stream<E & Any>
public abstract override /*2*/ /*fake_override*/ fun iterator(): kotlin.collections.MutableIterator<E>
public abstract override /*1*/ /*fake_override*/ fun lastIndexOf(/*0*/ element: @org.jetbrains.annotations.NotNull E): kotlin.Int
public abstract override /*1*/ /*fake_override*/ fun listIterator(): kotlin.collections.MutableListIterator<@org.jetbrains.annotations.NotNull E>
public abstract override /*1*/ /*fake_override*/ fun listIterator(/*0*/ index: kotlin.Int): kotlin.collections.MutableListIterator<@org.jetbrains.annotations.NotNull E>
public open override /*2*/ /*fake_override*/ fun parallelStream(): java.util.stream.Stream<E>
public open override /*2*/ /*fake_override*/ fun remove(/*0*/ element: E!): kotlin.Boolean
public open override /*2*/ /*fake_override*/ fun removeAll(/*0*/ elements: kotlin.collections.Collection<E!>): kotlin.Boolean
public abstract override /*1*/ /*fake_override*/ fun removeAt(/*0*/ index: kotlin.Int): @org.jetbrains.annotations.NotNull E & Any
public open override /*2*/ /*fake_override*/ fun removeIf(/*0*/ p0: java.util.function.Predicate<in E & Any>): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun replaceAll(/*0*/ p0: java.util.function.UnaryOperator<@org.jetbrains.annotations.NotNull E & Any>): kotlin.Unit
public abstract override /*1*/ /*fake_override*/ fun removeAt(/*0*/ index: kotlin.Int): @org.jetbrains.annotations.NotNull E
public open override /*2*/ /*fake_override*/ fun removeIf(/*0*/ p0: java.util.function.Predicate<in E>): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun replaceAll(/*0*/ p0: java.util.function.UnaryOperator<@org.jetbrains.annotations.NotNull E>): kotlin.Unit
public open override /*2*/ /*fake_override*/ fun retainAll(/*0*/ elements: kotlin.collections.Collection<E!>): kotlin.Boolean
public abstract override /*1*/ /*fake_override*/ fun set(/*0*/ index: kotlin.Int, /*1*/ element: @org.jetbrains.annotations.NotNull E & Any): @org.jetbrains.annotations.NotNull E & Any
public open override /*1*/ /*fake_override*/ /*isHiddenForResolutionEverywhereBesideSupercalls*/ fun sort(/*0*/ p0: java.util.Comparator<in (@org.jetbrains.annotations.NotNull E & Any..@org.jetbrains.annotations.NotNull E?)>!): kotlin.Unit
public abstract override /*1*/ /*fake_override*/ fun set(/*0*/ index: kotlin.Int, /*1*/ element: @org.jetbrains.annotations.NotNull E): @org.jetbrains.annotations.NotNull E
public open override /*1*/ /*fake_override*/ /*isHiddenForResolutionEverywhereBesideSupercalls*/ fun sort(/*0*/ p0: java.util.Comparator<in @org.jetbrains.annotations.NotNull E!>!): kotlin.Unit
public open override /*2*/ /*fake_override*/ fun spliterator(): java.util.Spliterator<E!>
public open override /*2*/ /*fake_override*/ fun stream(): java.util.stream.Stream<E & Any>
public abstract override /*1*/ /*fake_override*/ fun subList(/*0*/ fromIndex: kotlin.Int, /*1*/ toIndex: kotlin.Int): kotlin.collections.MutableList<@org.jetbrains.annotations.NotNull E & Any>
public open override /*2*/ /*fake_override*/ fun stream(): java.util.stream.Stream<E>
public abstract override /*1*/ /*fake_override*/ fun subList(/*0*/ fromIndex: kotlin.Int, /*1*/ toIndex: kotlin.Int): kotlin.collections.MutableList<@org.jetbrains.annotations.NotNull E>
public open override /*1*/ /*fake_override*/ fun toArray(): kotlin.Array<(out) kotlin.Any!>!
public open override /*1*/ /*fake_override*/ fun </*0*/ T : kotlin.Any!> toArray(/*0*/ p0: kotlin.Array<(out) T!>!): kotlin.Array<(out) T!>!
public open override /*2*/ /*fake_override*/ fun toString(): kotlin.String
@@ -17,18 +17,18 @@ public/*package*/ open class Outer {
public/*package*/ open inner class B : Outer.A {
public/*package*/ constructor B()
@java.lang.Override @org.checkerframework.checker.nullness.qual.Nullable public/*package*/ open override /*1*/ fun </*0*/ R : kotlin.Any!> bar(/*0*/ @org.checkerframework.checker.nullness.qual.NonNull x: @org.checkerframework.checker.nullness.qual.NonNull Y<@org.checkerframework.checker.nullness.qual.NonNull R & Any>): @org.checkerframework.checker.nullness.qual.Nullable X<@org.checkerframework.checker.nullness.qual.Nullable R!>?
@java.lang.Override @org.checkerframework.checker.nullness.qual.Nullable public/*package*/ open override /*1*/ fun </*0*/ R : kotlin.Any!> bar(/*0*/ @org.checkerframework.checker.nullness.qual.NonNull x: @org.checkerframework.checker.nullness.qual.NonNull Y<@org.checkerframework.checker.nullness.qual.NonNull R>): @org.checkerframework.checker.nullness.qual.Nullable X<@org.checkerframework.checker.nullness.qual.Nullable R!>?
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
@java.lang.Override @org.checkerframework.checker.nullness.qual.NonNull public/*package*/ open override /*1*/ fun </*0*/ T1 : kotlin.Any!, /*1*/ T2 : kotlin.Any!> foo(/*0*/ @org.checkerframework.checker.nullness.qual.Nullable x: @org.checkerframework.checker.nullness.qual.Nullable T1?): @org.checkerframework.checker.nullness.qual.NonNull T2 & Any
@java.lang.Override @org.checkerframework.checker.nullness.qual.NonNull public/*package*/ open override /*1*/ fun </*0*/ T1 : kotlin.Any!, /*1*/ T2 : kotlin.Any!> foo(/*0*/ @org.checkerframework.checker.nullness.qual.Nullable x: @org.checkerframework.checker.nullness.qual.Nullable T1?): @org.checkerframework.checker.nullness.qual.NonNull T2
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
public/*package*/ open inner class C : Outer.B {
public/*package*/ constructor C()
@java.lang.Override public/*package*/ open override /*1*/ fun </*0*/ E : kotlin.Any!> bar(/*0*/ x: Y<E & Any>): X<E!>?
@java.lang.Override public/*package*/ open override /*1*/ fun </*0*/ E : kotlin.Any!> bar(/*0*/ x: Y<E>): X<E!>?
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
@java.lang.Override public/*package*/ open override /*1*/ fun </*0*/ I : kotlin.Any!, /*1*/ J : kotlin.Any!> foo(/*0*/ x: I?): J & Any
@java.lang.Override public/*package*/ open override /*1*/ fun </*0*/ I : kotlin.Any!, /*1*/ J : kotlin.Any!> foo(/*0*/ x: I?): J
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
@@ -37,7 +37,7 @@ public/*package*/ open class Outer {
public/*package*/ constructor D()
@java.lang.Override @org.checkerframework.checker.nullness.qual.NonNull public/*package*/ open override /*1*/ fun </*0*/ F : kotlin.Any!> bar(/*0*/ @org.checkerframework.checker.nullness.qual.Nullable x: @org.checkerframework.checker.nullness.qual.Nullable Y<@org.checkerframework.checker.nullness.qual.Nullable F!>!): @org.checkerframework.checker.nullness.qual.NonNull X<@org.checkerframework.checker.nullness.qual.NonNull F!>
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
@java.lang.Override @org.checkerframework.checker.nullness.qual.NonNull public/*package*/ open override /*1*/ fun </*0*/ U : kotlin.Any!, /*1*/ W : kotlin.Any!> foo(/*0*/ @org.checkerframework.checker.nullness.qual.Nullable x: @org.checkerframework.checker.nullness.qual.Nullable U?): @org.checkerframework.checker.nullness.qual.NonNull W & Any
@java.lang.Override @org.checkerframework.checker.nullness.qual.NonNull public/*package*/ open override /*1*/ fun </*0*/ U : kotlin.Any!, /*1*/ W : kotlin.Any!> foo(/*0*/ @org.checkerframework.checker.nullness.qual.Nullable x: @org.checkerframework.checker.nullness.qual.Nullable U?): @org.checkerframework.checker.nullness.qual.NonNull W
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
@@ -6,7 +6,7 @@ public open class A</*0*/ T : kotlin.Any!> {
public constructor A</*0*/ T : kotlin.Any!>()
@android.annotation.Nullable public final var field: kotlin.String?
@android.annotation.NonNull public open fun bar(): kotlin.String
@android.annotation.Nullable public open fun baz(/*0*/ @android.annotation.NonNull x: T & Any): T?
@android.annotation.Nullable public open fun baz(/*0*/ @android.annotation.NonNull x: T): T?
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
@android.annotation.Nullable public open fun foo(/*0*/ @android.annotation.NonNull x: kotlin.String, /*1*/ @android.annotation.Nullable y: kotlin.CharSequence?): kotlin.String?
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
@@ -6,7 +6,7 @@ public open class A</*0*/ T : kotlin.Any!> {
public constructor A</*0*/ T : kotlin.Any!>()
@android.support.annotation.Nullable public final var field: kotlin.String?
@android.support.annotation.NonNull public open fun bar(): kotlin.String
@android.support.annotation.Nullable public open fun baz(/*0*/ @android.support.annotation.NonNull x: T & Any): T?
@android.support.annotation.Nullable public open fun baz(/*0*/ @android.support.annotation.NonNull x: T): T?
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
@android.support.annotation.Nullable public open fun foo(/*0*/ @android.support.annotation.NonNull x: kotlin.String, /*1*/ @android.support.annotation.Nullable y: kotlin.CharSequence?): kotlin.String?
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
@@ -6,7 +6,7 @@ public open class A</*0*/ T : kotlin.Any!> {
public constructor A</*0*/ T : kotlin.Any!>()
@androidx.annotation.Nullable public final var field: kotlin.String?
@androidx.annotation.NonNull public open fun bar(): kotlin.String
@androidx.annotation.Nullable public open fun baz(/*0*/ @androidx.annotation.NonNull x: T & Any): T?
@androidx.annotation.Nullable public open fun baz(/*0*/ @androidx.annotation.NonNull x: T): T?
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
@androidx.annotation.Nullable public open fun foo(/*0*/ @androidx.annotation.NonNull x: kotlin.String, /*1*/ @androidx.annotation.Nullable y: kotlin.CharSequence?): kotlin.String?
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
@@ -6,7 +6,7 @@ public open class A</*0*/ T : kotlin.Any!> {
public constructor A</*0*/ T : kotlin.Any!>()
@com.android.annotations.Nullable public final var field: kotlin.String?
@com.android.annotations.NonNull public open fun bar(): kotlin.String
@com.android.annotations.Nullable public open fun baz(/*0*/ @com.android.annotations.NonNull x: T & Any): T?
@com.android.annotations.Nullable public open fun baz(/*0*/ @com.android.annotations.NonNull x: T): T?
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
@com.android.annotations.Nullable public open fun foo(/*0*/ @com.android.annotations.NonNull x: kotlin.String, /*1*/ @com.android.annotations.Nullable y: kotlin.CharSequence?): kotlin.String?
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
@@ -6,7 +6,7 @@ public open class A</*0*/ T : kotlin.Any!> {
public constructor A</*0*/ T : kotlin.Any!>()
@org.eclipse.jdt.annotation.Nullable public final var field: kotlin.String?
@org.eclipse.jdt.annotation.NonNull public open fun bar(): kotlin.String
@org.eclipse.jdt.annotation.Nullable public open fun baz(/*0*/ @org.eclipse.jdt.annotation.NonNull x: T & Any): T?
@org.eclipse.jdt.annotation.Nullable public open fun baz(/*0*/ @org.eclipse.jdt.annotation.NonNull x: T): T?
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
@org.eclipse.jdt.annotation.Nullable public open fun foo(/*0*/ @org.eclipse.jdt.annotation.NonNull x: kotlin.String, /*1*/ @org.eclipse.jdt.annotation.Nullable y: kotlin.CharSequence?): kotlin.String?
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
@@ -9,7 +9,7 @@ public open class A1</*0*/ T : kotlin.Any!> {
public constructor A1</*0*/ T : kotlin.Any!>()
@io.reactivex.annotations.Nullable public final var field: kotlin.String?
@io.reactivex.annotations.NonNull public open fun bar(): kotlin.String
@io.reactivex.annotations.Nullable public open fun baz(/*0*/ @io.reactivex.annotations.NonNull x: T & Any): T?
@io.reactivex.annotations.Nullable public open fun baz(/*0*/ @io.reactivex.annotations.NonNull x: T): T?
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
@io.reactivex.annotations.Nullable public open fun foo(/*0*/ @io.reactivex.annotations.NonNull x: kotlin.String, /*1*/ @io.reactivex.annotations.Nullable y: kotlin.CharSequence?): kotlin.String?
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
@@ -31,7 +31,7 @@ public open class A3</*0*/ T : kotlin.Any!> {
public constructor A3</*0*/ T : kotlin.Any!>()
@androidx.annotation.Nullable public final var field: kotlin.String?
@androidx.annotation.NonNull public open fun bar(): kotlin.String
@androidx.annotation.Nullable public open fun baz(/*0*/ @androidx.annotation.NonNull x: T & Any): T?
@androidx.annotation.Nullable public open fun baz(/*0*/ @androidx.annotation.NonNull x: T): T?
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
@androidx.annotation.Nullable public open fun foo(/*0*/ @androidx.annotation.NonNull x: kotlin.String, /*1*/ @androidx.annotation.Nullable y: kotlin.CharSequence?): kotlin.String?
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
@@ -6,7 +6,7 @@ public open class A</*0*/ T : kotlin.Any!> {
public constructor A</*0*/ T : kotlin.Any!>()
@io.reactivex.annotations.Nullable public final var field: kotlin.String?
@io.reactivex.annotations.NonNull public open fun bar(): kotlin.String
@io.reactivex.annotations.Nullable public open fun baz(/*0*/ @io.reactivex.annotations.NonNull x: T & Any): T?
@io.reactivex.annotations.Nullable public open fun baz(/*0*/ @io.reactivex.annotations.NonNull x: T): T?
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
@io.reactivex.annotations.Nullable public open fun foo(/*0*/ @io.reactivex.annotations.NonNull x: kotlin.String, /*1*/ @io.reactivex.annotations.Nullable y: kotlin.CharSequence?): kotlin.String?
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
@@ -6,7 +6,7 @@ public open class A</*0*/ T : kotlin.Any!> {
public constructor A</*0*/ T : kotlin.Any!>()
@io.reactivex.rxjava3.annotations.Nullable public final var field: @io.reactivex.rxjava3.annotations.Nullable kotlin.String?
@io.reactivex.rxjava3.annotations.NonNull public open fun bar(): @io.reactivex.rxjava3.annotations.NonNull kotlin.String
@io.reactivex.rxjava3.annotations.Nullable public open fun baz(/*0*/ @io.reactivex.rxjava3.annotations.NonNull x: @io.reactivex.rxjava3.annotations.NonNull T & Any): @io.reactivex.rxjava3.annotations.Nullable T?
@io.reactivex.rxjava3.annotations.Nullable public open fun baz(/*0*/ @io.reactivex.rxjava3.annotations.NonNull x: @io.reactivex.rxjava3.annotations.NonNull T): @io.reactivex.rxjava3.annotations.Nullable T?
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
@io.reactivex.rxjava3.annotations.Nullable public open fun foo(/*0*/ @io.reactivex.rxjava3.annotations.NonNull x: @io.reactivex.rxjava3.annotations.NonNull kotlin.String, /*1*/ @io.reactivex.rxjava3.annotations.Nullable y: @io.reactivex.rxjava3.annotations.Nullable kotlin.CharSequence?): @io.reactivex.rxjava3.annotations.Nullable kotlin.String?
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
@@ -6,7 +6,7 @@ public fun process(/*0*/ x: Predicate<kotlin.String>): kotlin.Unit
public interface Predicate</*0*/ T : kotlin.CharSequence!> {
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public abstract operator fun invoke(/*0*/ @org.jetbrains.annotations.NotNull t: T & Any): kotlin.Boolean
public abstract operator fun invoke(/*0*/ @org.jetbrains.annotations.NotNull t: T): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
@@ -55,7 +55,7 @@ public open class Foo2</*0*/ T : kotlin.Any!> {
public open class Foo3</*0*/ T : kotlin.Any!> {
public constructor Foo3</*0*/ T : kotlin.Any!>()
@org.jetbrains.annotations.NotNull public final var value: T & Any
@org.jetbrains.annotations.NotNull public final var value: T
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
@@ -55,7 +55,7 @@ public open class Foo2</*0*/ T : kotlin.Any!> {
public open class Foo3</*0*/ T : kotlin.Any!> {
public constructor Foo3</*0*/ T : kotlin.Any!>()
@org.jetbrains.annotations.NotNull public final var value: T & Any
@org.jetbrains.annotations.NotNull public final var value: T
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
@@ -11,9 +11,9 @@ public open class A {
public open class X</*0*/ T : kotlin.Any!> {
public constructor X</*0*/ T : kotlin.Any!>()
public/*package*/ open fun barN(/*0*/ @org.jetbrains.annotations.NotNull a: T & Any): kotlin.Unit
public/*package*/ open fun barN(/*0*/ @org.jetbrains.annotations.NotNull a: T): kotlin.Unit
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
@org.jetbrains.annotations.NotNull public/*package*/ open fun fooN(): T & Any
@org.jetbrains.annotations.NotNull public/*package*/ open fun fooN(): T
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
@@ -11,9 +11,9 @@ public open class A {
public open class X</*0*/ T : kotlin.Any!> {
public constructor X</*0*/ T : kotlin.Any!>()
public/*package*/ open fun barN(/*0*/ @org.jetbrains.annotations.NotNull a: T & Any): kotlin.Unit
public/*package*/ open fun barN(/*0*/ @org.jetbrains.annotations.NotNull a: T): kotlin.Unit
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
@org.jetbrains.annotations.NotNull public/*package*/ open fun fooN(): T & Any
@org.jetbrains.annotations.NotNull public/*package*/ open fun fooN(): T
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
@@ -6,7 +6,7 @@ public open class Box</*0*/ T : kotlin.Any!> {
public constructor Box</*0*/ T : kotlin.Any!>()
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open fun put(/*0*/ @org.jetbrains.annotations.NotNull t: T & Any): kotlin.Unit
public open fun put(/*0*/ @org.jetbrains.annotations.NotNull t: T): kotlin.Unit
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
@@ -9,6 +9,6 @@ public open class JClass {
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
// Static members
@org.jetbrains.annotations.NotNull public open fun </*0*/ T : kotlin.Any!> getNotNullT(): T & Any
@org.jetbrains.annotations.NotNull public open fun </*0*/ T : kotlin.Any!> getNotNullT(): T
}
@@ -4,7 +4,7 @@ public fun test(): kotlin.Unit
public interface A</*0*/ T : kotlin.Any!> {
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public abstract fun foo(/*0*/ @org.jetbrains.annotations.NotNull x: T & Any): kotlin.Unit
public abstract fun foo(/*0*/ @org.jetbrains.annotations.NotNull x: T): kotlin.Unit
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
@@ -20,7 +20,7 @@ public open class B</*0*/ E : kotlin.Any!> {
public open class C</*0*/ F : kotlin.Any!> : B<F!>, A<F!> {
public constructor C</*0*/ F : kotlin.Any!>()
public open override /*2*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*2*/ fun foo(/*0*/ x: F & Any): kotlin.Unit
public open override /*2*/ fun foo(/*0*/ x: F): kotlin.Unit
public open override /*2*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*2*/ /*fake_override*/ fun toString(): kotlin.String
@@ -9,7 +9,7 @@ public open class A {
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
// Static members
public open fun </*0*/ T : kotlin.Any!> bar(/*0*/ @org.jetbrains.annotations.NotNull x: T & Any, /*1*/ y: T!): kotlin.Unit
public open fun </*0*/ T : kotlin.Any!> bar(/*0*/ @org.jetbrains.annotations.NotNull x: T, /*1*/ y: T!): kotlin.Unit
public open fun platformString(): kotlin.String!
}
@@ -4,7 +4,7 @@ public fun test(): kotlin.Unit
public open class A</*0*/ T : kotlin.Any!> {
public constructor A</*0*/ T : kotlin.Any!>()
@org.jetbrains.annotations.NotNull public open fun bar(): T & Any
@org.jetbrains.annotations.NotNull public open fun bar(): T
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
@@ -4,7 +4,7 @@ public fun test(): kotlin.Unit
public open class A</*0*/ T : kotlin.Any!> {
public constructor A</*0*/ T : kotlin.Any!>()
public open fun bar(/*0*/ @org.jetbrains.annotations.NotNull x: T & Any): kotlin.Unit
public open fun bar(/*0*/ @org.jetbrains.annotations.NotNull x: T): kotlin.Unit
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
@@ -4,7 +4,7 @@ public fun test(/*0*/ a: A<out kotlin.CharSequence>): kotlin.Unit
public open class A</*0*/ T : kotlin.Any!> {
public constructor A</*0*/ T : kotlin.Any!>()
@org.jetbrains.annotations.NotNull public open fun bar(): T & Any
@org.jetbrains.annotations.NotNull public open fun bar(): T
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
@@ -4,7 +4,7 @@ public fun test(): kotlin.Unit
public open class A</*0*/ T : kotlin.Any!> {
public constructor A</*0*/ T : kotlin.Any!>()
public open fun bar(/*0*/ @org.jetbrains.annotations.NotNull x: T & Any): kotlin.Unit
public open fun bar(/*0*/ @org.jetbrains.annotations.NotNull x: T): kotlin.Unit
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
@@ -15,6 +15,6 @@ public open class J {
@org.jetbrains.annotations.NotNull public final var staticNN: J
public open fun </*0*/ T : kotlin.Any!> getAny(): T!
@org.jetbrains.annotations.Nullable public open fun </*0*/ T : kotlin.Any!> getNAny(): T?
@org.jetbrains.annotations.NotNull public open fun </*0*/ T : kotlin.Any!> getNNAny(): T & Any
@org.jetbrains.annotations.NotNull public open fun </*0*/ T : kotlin.Any!> getNNAny(): T
}
@@ -6,7 +6,7 @@ public fun main(): kotlin.Unit
public/*package*/ open class A</*0*/ T : kotlin.Any!> {
public/*package*/ constructor A</*0*/ T : kotlin.Any!>()
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
@org.jetbrains.annotations.NotNull public/*package*/ open fun foo(/*0*/ @org.jetbrains.annotations.NotNull x: T & Any, /*1*/ @org.jetbrains.annotations.Nullable y: kotlin.collections.(Mutable)List<kotlin.String!>?): kotlin.collections.(Mutable)List<kotlin.String!>
@org.jetbrains.annotations.NotNull public/*package*/ open fun foo(/*0*/ @org.jetbrains.annotations.NotNull x: T, /*1*/ @org.jetbrains.annotations.Nullable y: kotlin.collections.(Mutable)List<kotlin.String!>?): kotlin.collections.(Mutable)List<kotlin.String!>
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
@@ -2,7 +2,7 @@ package
public interface A</*0*/ T : kotlin.Any!> {
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public abstract fun foo(/*0*/ @org.jetbrains.annotations.NotNull x: T & Any, /*1*/ @org.jetbrains.annotations.Nullable y: T?): kotlin.Unit
public abstract fun foo(/*0*/ @org.jetbrains.annotations.NotNull x: T, /*1*/ @org.jetbrains.annotations.Nullable y: T?): kotlin.Unit
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
@@ -14,7 +14,7 @@ public final class KotlinMap1</*0*/ K, /*1*/ V> : java.util.AbstractMap<K, V> {
protected/*protected and package*/ open override /*1*/ /*fake_override*/ fun clone(): kotlin.Any!
public open override /*1*/ /*fake_override*/ fun compute(/*0*/ p0: K!, /*1*/ p1: java.util.function.BiFunction<in K!, in V?, out V?>): V?
public open override /*1*/ /*fake_override*/ fun computeIfAbsent(/*0*/ p0: K!, /*1*/ p1: java.util.function.Function<in K!, out V!>): V!
public open override /*1*/ /*fake_override*/ fun computeIfPresent(/*0*/ p0: K!, /*1*/ p1: java.util.function.BiFunction<in K!, in V & Any, out V?>): V?
public open override /*1*/ /*fake_override*/ fun computeIfPresent(/*0*/ p0: K!, /*1*/ p1: java.util.function.BiFunction<in K!, in V, out V?>): V?
public open override /*1*/ /*fake_override*/ fun containsKey(/*0*/ key: K!): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun containsValue(/*0*/ value: V!): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
@@ -23,7 +23,7 @@ public final class KotlinMap1</*0*/ K, /*1*/ V> : java.util.AbstractMap<K, V> {
@kotlin.SinceKotlin(version = "1.1") @kotlin.internal.PlatformDependent public open override /*1*/ /*fake_override*/ fun getOrDefault(/*0*/ key: K!, /*1*/ defaultValue: V!): V!
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun isEmpty(): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun merge(/*0*/ p0: K!, /*1*/ p1: V & Any, /*2*/ p2: java.util.function.BiFunction<in V & Any, in V & Any, out V?>): V?
public open override /*1*/ /*fake_override*/ fun merge(/*0*/ p0: K!, /*1*/ p1: V, /*2*/ p2: java.util.function.BiFunction<in V, in V, out V?>): V?
public open override /*1*/ /*fake_override*/ fun put(/*0*/ key: K!, /*1*/ value: V!): V?
public open override /*1*/ /*fake_override*/ fun putAll(/*0*/ from: kotlin.collections.Map<out K!, V!>): kotlin.Unit
public open override /*1*/ /*fake_override*/ fun putIfAbsent(/*0*/ p0: K!, /*1*/ p1: V!): V?
@@ -21,7 +21,7 @@ class A<T> {
}
fun checkJavaInv(element: T, action: JavaAction<T>) {
action.execute(<!TYPE_MISMATCH!>element<!>) // type mismatch in K1 and K2
action.execute(<!NULLABLE_TYPE_PARAMETER_AGAINST_NOT_NULL_TYPE_PARAMETER!>element<!>) // type mismatch in K1 and K2
}
fun checkKotlinInv(element: T, action: KotlinAction<T>) {
@@ -13,7 +13,7 @@ public final class A</*0*/ T> {
public interface JavaAction</*0*/ T : kotlin.Any!> {
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public abstract fun execute(/*0*/ @org.jetbrains.annotations.NotNull t: T & Any): kotlin.Unit
public abstract fun execute(/*0*/ @org.jetbrains.annotations.NotNull t: T): kotlin.Unit
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
@@ -22,5 +22,5 @@ interface TypePredicate : (KotlinType) -> Boolean {
fun <T : Any?> TypePredicate.expectedTypeFor(keys: Iterable<T>): Map<T, TypePredicate> =
keys.fold(SmartFMap.emptyMap<T, TypePredicate>()) { map, key ->
map.plus(<!TYPE_MISMATCH!>key<!>, this)
map.plus(<!NULLABLE_TYPE_PARAMETER_AGAINST_NOT_NULL_TYPE_PARAMETER!>key<!>, this)
}
@@ -22,7 +22,7 @@ public open class SmartFMap</*0*/ K : kotlin.Any!, /*1*/ V : kotlin.Any!> : kotl
public abstract override /*1*/ /*fake_override*/ fun get(/*0*/ key: K!): V?
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public abstract override /*1*/ /*fake_override*/ fun isEmpty(): kotlin.Boolean
public open fun plus(/*0*/ @org.jetbrains.annotations.NotNull key: K & Any, /*1*/ value: V!): SmartFMap<K!, V!>!
public open fun plus(/*0*/ @org.jetbrains.annotations.NotNull key: K, /*1*/ value: V!): SmartFMap<K!, V!>!
public abstract override /*1*/ /*fake_override*/ fun put(/*0*/ key: K!, /*1*/ value: V!): V?
public abstract override /*1*/ /*fake_override*/ fun putAll(/*0*/ from: kotlin.collections.Map<out K!, V!>): kotlin.Unit
public abstract override /*1*/ /*fake_override*/ fun remove(/*0*/ key: K!): V?
@@ -76,7 +76,7 @@ FILE fqName:<root> fileName:/AbstractMutableMap.kt
VALUE_PARAMETER name:p1 index:1 type:@[EnhancedNullability] java.util.function.Function<in @[EnhancedNullability] K of <root>.MyMap, out @[EnhancedNullability] V of <root>.MyMap>
FUN FAKE_OVERRIDE name:computeIfPresent visibility:public modality:OPEN <> ($this:kotlin.collections.MutableMap<K of <root>.MyMap, V of <root>.MyMap>, p0:@[EnhancedNullability] K of <root>.MyMap, p1:@[EnhancedNullability] java.util.function.BiFunction<in @[EnhancedNullability] K of <root>.MyMap, in @[EnhancedNullability] V of <root>.MyMap, out @[EnhancedNullability] V of <root>.MyMap?>) returnType:@[EnhancedNullability] V of <root>.MyMap? [fake_override]
overridden:
public open fun computeIfPresent (p0: @[EnhancedNullability] K of kotlin.collections.AbstractMutableMap, p1: @[EnhancedNullability] java.util.function.BiFunction<in @[EnhancedNullability] K of kotlin.collections.AbstractMutableMap, in @[EnhancedNullability] {V of kotlin.collections.AbstractMutableMap & Any}, out @[EnhancedNullability] V of kotlin.collections.AbstractMutableMap?>): @[EnhancedNullability] V of kotlin.collections.AbstractMutableMap? [fake_override] declared in kotlin.collections.AbstractMutableMap
public open fun computeIfPresent (p0: @[EnhancedNullability] K of kotlin.collections.AbstractMutableMap, p1: @[EnhancedNullability] java.util.function.BiFunction<in @[EnhancedNullability] K of kotlin.collections.AbstractMutableMap, in @[EnhancedNullability] V of kotlin.collections.AbstractMutableMap, out @[EnhancedNullability] V of kotlin.collections.AbstractMutableMap?>): @[EnhancedNullability] V of kotlin.collections.AbstractMutableMap? [fake_override] declared in kotlin.collections.AbstractMutableMap
$this: VALUE_PARAMETER name:<this> type:kotlin.collections.MutableMap<K of <root>.MyMap, V of <root>.MyMap>
VALUE_PARAMETER name:p0 index:0 type:@[EnhancedNullability] K of <root>.MyMap
VALUE_PARAMETER name:p1 index:1 type:@[EnhancedNullability] java.util.function.BiFunction<in @[EnhancedNullability] K of <root>.MyMap, in @[EnhancedNullability] V of <root>.MyMap, out @[EnhancedNullability] V of <root>.MyMap?>
@@ -124,7 +124,7 @@ FILE fqName:<root> fileName:/AbstractMutableMap.kt
$this: VALUE_PARAMETER name:<this> type:kotlin.collections.Map<K of <root>.MyMap, V of <root>.MyMap>
FUN FAKE_OVERRIDE name:merge visibility:public modality:OPEN <> ($this:kotlin.collections.MutableMap<K of <root>.MyMap, V of <root>.MyMap>, p0:@[EnhancedNullability] K of <root>.MyMap, p1:@[EnhancedNullability] V of <root>.MyMap, p2:@[EnhancedNullability] java.util.function.BiFunction<in @[EnhancedNullability] V of <root>.MyMap, in @[EnhancedNullability] V of <root>.MyMap, out @[EnhancedNullability] V of <root>.MyMap?>) returnType:@[EnhancedNullability] V of <root>.MyMap? [fake_override]
overridden:
public open fun merge (p0: @[EnhancedNullability] K of kotlin.collections.AbstractMutableMap, p1: @[EnhancedNullability] {V of kotlin.collections.AbstractMutableMap & Any}, p2: @[EnhancedNullability] java.util.function.BiFunction<in @[EnhancedNullability] {V of kotlin.collections.AbstractMutableMap & Any}, in @[EnhancedNullability] {V of kotlin.collections.AbstractMutableMap & Any}, out @[EnhancedNullability] V of kotlin.collections.AbstractMutableMap?>): @[EnhancedNullability] V of kotlin.collections.AbstractMutableMap? [fake_override] declared in kotlin.collections.AbstractMutableMap
public open fun merge (p0: @[EnhancedNullability] K of kotlin.collections.AbstractMutableMap, p1: @[EnhancedNullability] V of kotlin.collections.AbstractMutableMap, p2: @[EnhancedNullability] java.util.function.BiFunction<in @[EnhancedNullability] V of kotlin.collections.AbstractMutableMap, in @[EnhancedNullability] V of kotlin.collections.AbstractMutableMap, out @[EnhancedNullability] V of kotlin.collections.AbstractMutableMap?>): @[EnhancedNullability] V of kotlin.collections.AbstractMutableMap? [fake_override] declared in kotlin.collections.AbstractMutableMap
$this: VALUE_PARAMETER name:<this> type:kotlin.collections.MutableMap<K of <root>.MyMap, V of <root>.MyMap>
VALUE_PARAMETER name:p0 index:0 type:@[EnhancedNullability] K of <root>.MyMap
VALUE_PARAMETER name:p1 index:1 type:@[EnhancedNullability] V of <root>.MyMap
@@ -0,0 +1,27 @@
FILE fqName:<root> fileName:/main.kt
CLASS INTERFACE name:B modality:ABSTRACT visibility:public superTypes:[<root>.A<T1 of <root>.B>]
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.B<T1 of <root>.B>
TYPE_PARAMETER name:T1 index:0 variance: superTypes:[kotlin.Any?] reified:false
FUN name:foo visibility:public modality:ABSTRACT <> ($this:<root>.B<T1 of <root>.B>, x:T1 of <root>.B) returnType:T1 of <root>.B
overridden:
public abstract fun foo (x: @[FlexibleNullability] T of <root>.A?): @[FlexibleNullability] T of <root>.A? declared in <root>.A
$this: VALUE_PARAMETER name:<this> type:<root>.B<T1 of <root>.B>
VALUE_PARAMETER name:x index:0 type:T1 of <root>.B
FUN name:bar visibility:public modality:ABSTRACT <> ($this:<root>.B<T1 of <root>.B>, x:{T1 of <root>.B & Any}) returnType:{T1 of <root>.B & Any}
overridden:
public abstract fun bar (x: @[EnhancedNullability] {T of <root>.A & Any}): @[EnhancedNullability] {T of <root>.A & Any} declared in <root>.A
$this: VALUE_PARAMETER name:<this> type:<root>.B<T1 of <root>.B>
VALUE_PARAMETER name:x index:0 type:{T1 of <root>.B & Any}
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
overridden:
public open fun equals (other: kotlin.Any?): kotlin.Boolean [fake_override,operator] declared in <root>.A
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
VALUE_PARAMETER name:other index:0 type:kotlin.Any?
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override]
overridden:
public open fun hashCode (): kotlin.Int [fake_override] declared in <root>.A
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override]
overridden:
public open fun toString (): kotlin.String [fake_override] declared in <root>.A
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
@@ -0,0 +1,5 @@
interface B<T1 : Any?> : A<T1> {
abstract override fun foo(x: T1): T1
abstract override fun bar(x: (T1 & Any)): (T1 & Any)
}
@@ -9,7 +9,7 @@ FILE fqName:<root> fileName:/main.kt
VALUE_PARAMETER name:x index:0 type:T1 of <root>.B
FUN name:bar visibility:public modality:ABSTRACT <> ($this:<root>.B<T1 of <root>.B>, x:{T1 of <root>.B & Any}) returnType:{T1 of <root>.B & Any}
overridden:
public abstract fun bar (x: @[EnhancedNullability] {T of <root>.A & Any}): @[EnhancedNullability] {T of <root>.A & Any} declared in <root>.A
public abstract fun bar (x: @[EnhancedNullability] T of <root>.A): @[EnhancedNullability] T of <root>.A declared in <root>.A
$this: VALUE_PARAMETER name:<this> type:<root>.B<T1 of <root>.B>
VALUE_PARAMETER name:x index:0 type:{T1 of <root>.B & Any}
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
@@ -1,4 +1,3 @@
// FIR_IDENTICAL
//!LANGUAGE: +DefinitelyNonNullableTypes
// TARGET_BACKEND: JVM
@@ -16,4 +15,4 @@ public interface A<T> {
interface B<T1> : A<T1> {
override fun foo(x: T1): T1
override fun bar(x: T1 & Any): T1 & Any
}
}
@@ -4,11 +4,11 @@ public interface TypeParamOfClass {
public interface Sub</*0*/ T : kotlin.Any!> : test.TypeParamOfClass.Super<T!> {
public abstract override /*1*/ /*fake_override*/ fun dummy(): kotlin.Unit
public abstract override /*1*/ fun foo(): T & Any
public abstract override /*1*/ fun foo(): T
}
public interface Super</*0*/ T : kotlin.Any!> {
public abstract fun dummy(): kotlin.Unit
@org.jetbrains.annotations.NotNull public abstract fun foo(): T & Any
@org.jetbrains.annotations.NotNull public abstract fun foo(): T
}
}
@@ -9,6 +9,6 @@ public interface TypeParamOfClassSubstituted {
public interface Super</*0*/ T : kotlin.Any!> {
public abstract fun dummy(): kotlin.Unit
@org.jetbrains.annotations.NotNull public abstract fun foo(): T & Any
@org.jetbrains.annotations.NotNull public abstract fun foo(): T
}
}
@@ -4,11 +4,11 @@ public interface TypeParamOfFun {
public interface Sub : test.TypeParamOfFun.Super {
public abstract override /*1*/ /*fake_override*/ fun dummy(): kotlin.Unit
public abstract override /*1*/ fun </*0*/ E : kotlin.Any!> foo(): E & Any
public abstract override /*1*/ fun </*0*/ E : kotlin.Any!> foo(): E
}
public interface Super {
public abstract fun dummy(): kotlin.Unit
@org.jetbrains.annotations.NotNull public abstract fun </*0*/ T : kotlin.Any!> foo(): T & Any
@org.jetbrains.annotations.NotNull public abstract fun </*0*/ T : kotlin.Any!> foo(): T
}
}
+2 -2
View File
@@ -12,14 +12,14 @@ public open class MapRemove {
public abstract override /*1*/ /*fake_override*/ fun clear(): kotlin.Unit
public open override /*1*/ /*fake_override*/ fun compute(/*0*/ p0: K!, /*1*/ p1: java.util.function.BiFunction<in K!, in V?, out V?>): V?
public open override /*1*/ /*fake_override*/ fun computeIfAbsent(/*0*/ p0: K!, /*1*/ p1: java.util.function.Function<in K!, out V!>): V!
public open override /*1*/ /*fake_override*/ fun computeIfPresent(/*0*/ p0: K!, /*1*/ p1: java.util.function.BiFunction<in K!, in V & Any, out V?>): V?
public open override /*1*/ /*fake_override*/ fun computeIfPresent(/*0*/ p0: K!, /*1*/ p1: java.util.function.BiFunction<in K!, in V, out V?>): V?
public abstract override /*1*/ /*fake_override*/ fun containsKey(/*0*/ key: K!): kotlin.Boolean
public abstract override /*1*/ /*fake_override*/ fun containsValue(/*0*/ value: V!): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun forEach(/*0*/ p0: java.util.function.BiConsumer<in K!, in V!>): kotlin.Unit
public abstract override /*1*/ /*fake_override*/ fun get(/*0*/ key: K!): V?
@kotlin.SinceKotlin(version = "1.1") @kotlin.internal.PlatformDependent public open override /*1*/ /*fake_override*/ fun getOrDefault(/*0*/ key: K!, /*1*/ defaultValue: V!): V!
public abstract override /*1*/ /*fake_override*/ fun isEmpty(): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun merge(/*0*/ p0: K!, /*1*/ p1: V & Any, /*2*/ p2: java.util.function.BiFunction<in V & Any, in V & Any, out V?>): V?
public open override /*1*/ /*fake_override*/ fun merge(/*0*/ p0: K!, /*1*/ p1: V, /*2*/ p2: java.util.function.BiFunction<in V, in V, out V?>): V?
public abstract override /*1*/ /*fake_override*/ fun put(/*0*/ key: K!, /*1*/ value: V!): V?
public abstract override /*1*/ /*fake_override*/ fun putAll(/*0*/ from: kotlin.collections.Map<out K!, V!>): kotlin.Unit
public open override /*1*/ /*fake_override*/ fun putIfAbsent(/*0*/ p0: K!, /*1*/ p1: V!): V?
@@ -2,7 +2,7 @@ package test
public open class Basic {
public constructor Basic()
public/*package*/ open fun </*0*/ R : kotlin.Any!, /*1*/ @org.jetbrains.annotations.NotNull _A : R & Any, /*2*/ @org.jetbrains.annotations.Nullable K> foo(/*0*/ p0: R!): kotlin.Unit
public/*package*/ open fun </*0*/ R : kotlin.Any!, /*1*/ @org.jetbrains.annotations.NotNull _A : R, /*2*/ @org.jetbrains.annotations.Nullable K> foo(/*0*/ p0: R!): kotlin.Unit
public interface G</*0*/ @org.jetbrains.annotations.NotNull T : kotlin.Any> {
public abstract fun </*0*/ @org.jetbrains.annotations.NotNull R : kotlin.Any> foo(/*0*/ p0: R): kotlin.Unit
@@ -12,10 +12,10 @@ public/*package*/ open class A3</*0*/ T : kotlin.Any!, /*1*/ K : kotlin.Any!, /*
public/*package*/ constructor A3</*0*/ T : kotlin.Any!, /*1*/ K : kotlin.Any!, /*2*/ L : kotlin.Any!>()
}
public open class BaseClassTypeArguments</*0*/ B : kotlin.Any!> : test.A3<kotlin.Array<(out) kotlin.Array<(out) kotlin.Array<(out) kotlin.Array<(out) kotlin.Array<(out) @org.jetbrains.annotations.NotNull B & Any>!>!>!>!>!, test.I1<test.I1<(@org.jetbrains.annotations.NotNull kotlin.Array<kotlin.IntArray!>..@org.jetbrains.annotations.NotNull kotlin.Array<out kotlin.IntArray!>)>!>!, test.A2<B!, kotlin.Array<(out) kotlin.Array<(out) @org.jetbrains.annotations.NotNull kotlin.IntArray!>!>!>!>, test.I1<(@org.jetbrains.annotations.NotNull kotlin.Array<kotlin.Array<(out) kotlin.Array<(out) @org.jetbrains.annotations.NotNull kotlin.Int>!>!>..@org.jetbrains.annotations.NotNull kotlin.Array<out kotlin.Array<(out) kotlin.Array<(out) @org.jetbrains.annotations.NotNull kotlin.Int>!>!>)>, test.I2<@org.jetbrains.annotations.NotNull B & Any, B!>, test.I3<kotlin.Array<(out) kotlin.Array<(out) kotlin.Array<(out) kotlin.Array<(out) kotlin.Array<(out) @org.jetbrains.annotations.NotNull B & Any>!>!>!>!>!, B!, @org.jetbrains.annotations.NotNull B & Any> {
public open class BaseClassTypeArguments</*0*/ B : kotlin.Any!> : test.A3<kotlin.Array<(out) kotlin.Array<(out) kotlin.Array<(out) kotlin.Array<(out) kotlin.Array<(out) @org.jetbrains.annotations.NotNull B>!>!>!>!>!, test.I1<test.I1<(@org.jetbrains.annotations.NotNull kotlin.Array<kotlin.IntArray!>..@org.jetbrains.annotations.NotNull kotlin.Array<out kotlin.IntArray!>)>!>!, test.A2<B!, kotlin.Array<(out) kotlin.Array<(out) @org.jetbrains.annotations.NotNull kotlin.IntArray!>!>!>!>, test.I1<(@org.jetbrains.annotations.NotNull kotlin.Array<kotlin.Array<(out) kotlin.Array<(out) @org.jetbrains.annotations.NotNull kotlin.Int>!>!>..@org.jetbrains.annotations.NotNull kotlin.Array<out kotlin.Array<(out) kotlin.Array<(out) @org.jetbrains.annotations.NotNull kotlin.Int>!>!>)>, test.I2<@org.jetbrains.annotations.NotNull B, B!>, test.I3<kotlin.Array<(out) kotlin.Array<(out) kotlin.Array<(out) kotlin.Array<(out) kotlin.Array<(out) @org.jetbrains.annotations.NotNull B>!>!>!>!>!, B!, @org.jetbrains.annotations.NotNull B> {
public constructor BaseClassTypeArguments</*0*/ B : kotlin.Any!>()
public/*package*/ open class BaseClassTypeArguments2</*0*/ B : kotlin.Any!> : test.A3<kotlin.Array<(out) kotlin.Array<(out) kotlin.Array<(out) kotlin.Array<(out) kotlin.Array<(out) @org.jetbrains.annotations.NotNull B & Any>!>!>!>!>!, test.I1<test.I1<(@org.jetbrains.annotations.NotNull kotlin.Array<kotlin.IntArray!>..@org.jetbrains.annotations.NotNull kotlin.Array<out kotlin.IntArray!>)>!>!, test.A2<B!, kotlin.Array<(out) kotlin.Array<(out) @org.jetbrains.annotations.NotNull kotlin.IntArray!>!>!>!> {
public/*package*/ open class BaseClassTypeArguments2</*0*/ B : kotlin.Any!> : test.A3<kotlin.Array<(out) kotlin.Array<(out) kotlin.Array<(out) kotlin.Array<(out) kotlin.Array<(out) @org.jetbrains.annotations.NotNull B>!>!>!>!>!, test.I1<test.I1<(@org.jetbrains.annotations.NotNull kotlin.Array<kotlin.IntArray!>..@org.jetbrains.annotations.NotNull kotlin.Array<out kotlin.IntArray!>)>!>!, test.A2<B!, kotlin.Array<(out) kotlin.Array<(out) @org.jetbrains.annotations.NotNull kotlin.IntArray!>!>!>!> {
public/*package*/ constructor BaseClassTypeArguments2</*0*/ B : kotlin.Any!>()
}
@@ -27,10 +27,10 @@ public open class BaseClassTypeArguments</*0*/ B : kotlin.Any!> : test.A3<kotlin
public/*package*/ constructor Basic2()
}
public/*package*/ open inner class ImplementedInterfacesTypeArguments</*0*/ B : kotlin.Any!> /*captured type parameters: /*1*/ B : kotlin.Any!*/ : test.I1<test.I2<test.I1<(@org.jetbrains.annotations.NotNull kotlin.Array<kotlin.Array<(out) kotlin.Array<(out) @org.jetbrains.annotations.NotNull kotlin.Int>!>!>..@org.jetbrains.annotations.NotNull kotlin.Array<out kotlin.Array<(out) kotlin.Array<(out) @org.jetbrains.annotations.NotNull kotlin.Int>!>!>)>!, test.I1<kotlin.Array<(out) @org.jetbrains.annotations.NotNull kotlin.IntArray!>!>!>!>, test.I2<@org.jetbrains.annotations.NotNull B & Any, B!>, test.I3<kotlin.Array<(out) kotlin.Array<(out) kotlin.Array<(out) kotlin.Array<(out) kotlin.Array<(out) @org.jetbrains.annotations.NotNull B & Any>!>!>!>!>!, test.I1<test.I1<(@org.jetbrains.annotations.NotNull kotlin.Array<kotlin.IntArray!>..@org.jetbrains.annotations.NotNull kotlin.Array<out kotlin.IntArray!>)>!>!, test.I2<B!, kotlin.Array<(out) kotlin.Array<(out) @org.jetbrains.annotations.NotNull kotlin.IntArray!>!>!>!> {
public/*package*/ open inner class ImplementedInterfacesTypeArguments</*0*/ B : kotlin.Any!> /*captured type parameters: /*1*/ B : kotlin.Any!*/ : test.I1<test.I2<test.I1<(@org.jetbrains.annotations.NotNull kotlin.Array<kotlin.Array<(out) kotlin.Array<(out) @org.jetbrains.annotations.NotNull kotlin.Int>!>!>..@org.jetbrains.annotations.NotNull kotlin.Array<out kotlin.Array<(out) kotlin.Array<(out) @org.jetbrains.annotations.NotNull kotlin.Int>!>!>)>!, test.I1<kotlin.Array<(out) @org.jetbrains.annotations.NotNull kotlin.IntArray!>!>!>!>, test.I2<@org.jetbrains.annotations.NotNull B, B!>, test.I3<kotlin.Array<(out) kotlin.Array<(out) kotlin.Array<(out) kotlin.Array<(out) kotlin.Array<(out) @org.jetbrains.annotations.NotNull B>!>!>!>!>!, test.I1<test.I1<(@org.jetbrains.annotations.NotNull kotlin.Array<kotlin.IntArray!>..@org.jetbrains.annotations.NotNull kotlin.Array<out kotlin.IntArray!>)>!>!, test.I2<B!, kotlin.Array<(out) kotlin.Array<(out) @org.jetbrains.annotations.NotNull kotlin.IntArray!>!>!>!> {
public/*package*/ constructor ImplementedInterfacesTypeArguments</*0*/ B : kotlin.Any!>()
public open inner class BaseClassTypeArguments1</*0*/ B : kotlin.Any!> /*captured type parameters: /*1*/ B : kotlin.Any!, /*2*/ B : kotlin.Any!*/ : test.A3<kotlin.Array<(out) kotlin.Array<(out) kotlin.Array<(out) kotlin.Array<(out) kotlin.Array<(out) @org.jetbrains.annotations.NotNull B & Any>!>!>!>!>!, test.I1<test.I1<(@org.jetbrains.annotations.NotNull kotlin.Array<kotlin.IntArray!>..@org.jetbrains.annotations.NotNull kotlin.Array<out kotlin.IntArray!>)>!>!, test.A2<B!, kotlin.Array<(out) kotlin.Array<(out) @org.jetbrains.annotations.NotNull kotlin.IntArray!>!>!>!> {
public open inner class BaseClassTypeArguments1</*0*/ B : kotlin.Any!> /*captured type parameters: /*1*/ B : kotlin.Any!, /*2*/ B : kotlin.Any!*/ : test.A3<kotlin.Array<(out) kotlin.Array<(out) kotlin.Array<(out) kotlin.Array<(out) kotlin.Array<(out) @org.jetbrains.annotations.NotNull B>!>!>!>!>!, test.I1<test.I1<(@org.jetbrains.annotations.NotNull kotlin.Array<kotlin.IntArray!>..@org.jetbrains.annotations.NotNull kotlin.Array<out kotlin.IntArray!>)>!>!, test.A2<B!, kotlin.Array<(out) kotlin.Array<(out) @org.jetbrains.annotations.NotNull kotlin.IntArray!>!>!>!> {
public constructor BaseClassTypeArguments1</*0*/ B : kotlin.Any!>()
}
}
@@ -3,7 +3,7 @@ package test
public open class Basic</*0*/ T : @org.jetbrains.annotations.NotNull kotlin.Any> {
public constructor Basic</*0*/ T : @org.jetbrains.annotations.NotNull kotlin.Any>()
public/*package*/ interface G</*0*/ T : kotlin.Any!> : test.Basic.G2<@org.jetbrains.annotations.NotNull T & Any, @org.jetbrains.annotations.NotNull kotlin.String> {
public/*package*/ interface G</*0*/ T : kotlin.Any!> : test.Basic.G2<@org.jetbrains.annotations.NotNull T, @org.jetbrains.annotations.NotNull kotlin.String> {
}
public/*package*/ interface G2</*0*/ A : kotlin.Any!, /*1*/ B : kotlin.Any!> {
@@ -21,7 +21,7 @@ public open class Basic_DisabledImprovements</*0*/ T : @org.jetbrains.annotation
public abstract fun f1(/*0*/ p0: test.Basic_DisabledImprovements.G<@org.jetbrains.annotations.NotNull kotlin.String!>!): kotlin.Unit
public abstract fun </*0*/ T : @org.jetbrains.annotations.NotNull kotlin.Any!, /*1*/ K : test.Basic_DisabledImprovements.G<kotlin.Array<(out) @org.jetbrains.annotations.NotNull kotlin.String!>!>!> f10(/*0*/ p0: T!): kotlin.Unit
public abstract fun f2(): test.Basic_DisabledImprovements.G2<@org.jetbrains.annotations.Nullable kotlin.String!, @org.jetbrains.annotations.NotNull kotlin.Int!>!
public abstract fun </*0*/ T : @org.jetbrains.annotations.NotNull kotlin.Any!> f3(/*0*/ @org.jetbrains.annotations.NotNull p0: @org.jetbrains.annotations.NotNull T & Any): kotlin.Unit
public abstract fun </*0*/ T : @org.jetbrains.annotations.NotNull kotlin.Any!> f3(/*0*/ @org.jetbrains.annotations.NotNull p0: @org.jetbrains.annotations.NotNull T): kotlin.Unit
public abstract fun f4(/*0*/ p0: test.Basic_DisabledImprovements.G<(@org.jetbrains.annotations.Nullable kotlin.Array<@org.jetbrains.annotations.NotNull kotlin.String!>..@org.jetbrains.annotations.Nullable kotlin.Array<out @org.jetbrains.annotations.NotNull kotlin.String!>?)>!): kotlin.Unit
public abstract fun f5(/*0*/ p0: test.Basic_DisabledImprovements.G<*>!): kotlin.Unit
public abstract fun f6(/*0*/ p0: test.Basic_DisabledImprovements.G<out @org.jetbrains.annotations.Nullable kotlin.Any!>!): kotlin.Unit
@@ -22,15 +22,15 @@ public open class ClassTypeParameterBounds {
public/*package*/ interface G3</*0*/ _A : kotlin.Any!, /*1*/ B : kotlin.Any!> where B : @org.jetbrains.annotations.NotNull test.ClassTypeParameterBounds.I1 {
}
public/*package*/ open inner class G4</*0*/ _A : @org.jetbrains.annotations.NotNull B & Any, /*1*/ B : kotlin.Any!> {
public/*package*/ constructor G4</*0*/ _A : @org.jetbrains.annotations.NotNull B & Any, /*1*/ B : kotlin.Any!>()
public/*package*/ open inner class G4</*0*/ _A : @org.jetbrains.annotations.NotNull B, /*1*/ B : kotlin.Any!> {
public/*package*/ constructor G4</*0*/ _A : @org.jetbrains.annotations.NotNull B, /*1*/ B : kotlin.Any!>()
}
public/*package*/ interface G5</*0*/ _A : kotlin.Any!, /*1*/ B : @org.jetbrains.annotations.Nullable _A?> {
}
public/*package*/ open inner class G6</*0*/ _A : @org.jetbrains.annotations.Nullable test.ClassTypeParameterBounds.I1?, /*1*/ B : kotlin.Any!, /*2*/ C : kotlin.Any!, /*3*/ D : @org.jetbrains.annotations.NotNull E & Any, /*4*/ E : kotlin.Any!, /*5*/ F : kotlin.Any!> {
public/*package*/ constructor G6</*0*/ _A : @org.jetbrains.annotations.Nullable test.ClassTypeParameterBounds.I1?, /*1*/ B : kotlin.Any!, /*2*/ C : kotlin.Any!, /*3*/ D : @org.jetbrains.annotations.NotNull E & Any, /*4*/ E : kotlin.Any!, /*5*/ F : kotlin.Any!>()
public/*package*/ open inner class G6</*0*/ _A : @org.jetbrains.annotations.Nullable test.ClassTypeParameterBounds.I1?, /*1*/ B : kotlin.Any!, /*2*/ C : kotlin.Any!, /*3*/ D : @org.jetbrains.annotations.NotNull E, /*4*/ E : kotlin.Any!, /*5*/ F : kotlin.Any!> {
public/*package*/ constructor G6</*0*/ _A : @org.jetbrains.annotations.Nullable test.ClassTypeParameterBounds.I1?, /*1*/ B : kotlin.Any!, /*2*/ C : kotlin.Any!, /*3*/ D : @org.jetbrains.annotations.NotNull E, /*4*/ E : kotlin.Any!, /*5*/ F : kotlin.Any!>()
}
public/*package*/ interface G7</*0*/ _A : kotlin.Any!> where _A : test.ClassTypeParameterBounds.I2<@org.jetbrains.annotations.NotNull kotlin.Int>!, _A : @org.jetbrains.annotations.NotNull test.ClassTypeParameterBounds.I3<kotlin.String!> {
@@ -5,17 +5,17 @@ public/*package*/ abstract class MethodTypeParameterBounds {
public/*package*/ open fun </*0*/ T : @org.jetbrains.annotations.NotNull kotlin.Any> f1(/*0*/ p0: T): kotlin.Unit
public/*package*/ open fun </*0*/ _A : kotlin.Any!> f10(/*0*/ p0: _A): kotlin.Unit where _A : test.MethodTypeParameterBounds.I2<in @org.jetbrains.annotations.Nullable kotlin.Int?>!, _A : @org.jetbrains.annotations.Nullable test.MethodTypeParameterBounds.I3<out kotlin.String!>?
public/*package*/ open fun </*0*/ _A : test.MethodTypeParameterBounds.I4<(@org.jetbrains.annotations.NotNull kotlin.Array<kotlin.Int!>..@org.jetbrains.annotations.NotNull kotlin.Array<out kotlin.Int!>)>!> f11(/*0*/ p0: _A): kotlin.Unit where _A : test.MethodTypeParameterBounds.I2<out (@org.jetbrains.annotations.Nullable kotlin.Array<@org.jetbrains.annotations.Nullable kotlin.Int?>?..@org.jetbrains.annotations.Nullable kotlin.Array<out @org.jetbrains.annotations.Nullable kotlin.Int?>?)>!, _A : @org.jetbrains.annotations.Nullable test.MethodTypeParameterBounds.I3<out (@org.jetbrains.annotations.NotNull kotlin.Array<kotlin.Int!>..@org.jetbrains.annotations.NotNull kotlin.Array<out kotlin.Int!>)>?
public/*package*/ open fun </*0*/ _A : test.MethodTypeParameterBounds.I4<@org.jetbrains.annotations.Nullable kotlin.IntArray!>!> f12(/*0*/ p0: _A & Any): kotlin.Unit where _A : test.MethodTypeParameterBounds.I2<out @org.jetbrains.annotations.Nullable kotlin.IntArray!>!, _A : @org.jetbrains.annotations.NotNull test.MethodTypeParameterBounds.I3<out @org.jetbrains.annotations.Nullable kotlin.IntArray!>
public/*package*/ open fun </*0*/ _A : test.MethodTypeParameterBounds.I4<@org.jetbrains.annotations.Nullable kotlin.IntArray!>!> f12(/*0*/ p0: _A): kotlin.Unit where _A : test.MethodTypeParameterBounds.I2<out @org.jetbrains.annotations.Nullable kotlin.IntArray!>!, _A : @org.jetbrains.annotations.NotNull test.MethodTypeParameterBounds.I3<out @org.jetbrains.annotations.Nullable kotlin.IntArray!>
public/*package*/ open fun </*0*/ _A : test.MethodTypeParameterBounds.I4<kotlin.Array<(out) kotlin.Array<(out) (@org.jetbrains.annotations.Nullable kotlin.Array<kotlin.Int!>?..@org.jetbrains.annotations.Nullable kotlin.Array<out kotlin.Int!>?)>!>!>!> f13(/*0*/ p0: _A): kotlin.Unit where _A : test.MethodTypeParameterBounds.I2<out (@org.jetbrains.annotations.Nullable kotlin.Array<kotlin.Array<(out) kotlin.Array<(out) kotlin.Array<(out) @org.jetbrains.annotations.Nullable kotlin.Int?>!>!>!>?..@org.jetbrains.annotations.Nullable kotlin.Array<out kotlin.Array<(out) kotlin.Array<(out) kotlin.Array<(out) @org.jetbrains.annotations.Nullable kotlin.Int?>!>!>!>?)>!, _A : @org.jetbrains.annotations.Nullable test.MethodTypeParameterBounds.I3<out kotlin.Array<(out) (@org.jetbrains.annotations.Nullable kotlin.Array<kotlin.Int!>?..@org.jetbrains.annotations.Nullable kotlin.Array<out kotlin.Int!>?)>!>?
public/*package*/ abstract fun </*0*/ _A : test.MethodTypeParameterBounds.I4<(@org.jetbrains.annotations.NotNull kotlin.Array<kotlin.IntArray!>..@org.jetbrains.annotations.NotNull kotlin.Array<out kotlin.IntArray!>)>!> f14(/*0*/ p0: _A): kotlin.Unit where _A : test.MethodTypeParameterBounds.I2<out kotlin.Array<(out) kotlin.Array<(out) @org.jetbrains.annotations.Nullable kotlin.IntArray!>!>!>!, _A : @org.jetbrains.annotations.Nullable test.MethodTypeParameterBounds.I3<out kotlin.Array<(out) (@org.jetbrains.annotations.Nullable kotlin.Array<kotlin.IntArray!>?..@org.jetbrains.annotations.Nullable kotlin.Array<out kotlin.IntArray!>?)>!>?
public/*package*/ open fun </*0*/ _A : kotlin.Any!, /*1*/ B : test.MethodTypeParameterBounds.I3<@org.jetbrains.annotations.Nullable _A?>!> f15(/*0*/ p0: _A!): kotlin.Unit where B : @org.jetbrains.annotations.NotNull test.MethodTypeParameterBounds.I2<_A!>
public/*package*/ open fun </*0*/ _A : kotlin.Any!, /*1*/ B : @org.jetbrains.annotations.NotNull kotlin.Int> f2(/*0*/ p0: _A!, /*1*/ p1: B): kotlin.Unit
public/*package*/ open fun </*0*/ _A : kotlin.Any!, /*1*/ B : kotlin.Any!> f3(/*0*/ p0: _A!, /*1*/ p1: B): kotlin.Unit where B : @org.jetbrains.annotations.Nullable test.MethodTypeParameterBounds.I1?
public/*package*/ open fun </*0*/ _A : @org.jetbrains.annotations.NotNull B & Any, /*1*/ B : kotlin.Any!> f4(/*0*/ p0: _A, /*1*/ p1: B!): kotlin.Unit
public/*package*/ open fun </*0*/ _A : @org.jetbrains.annotations.NotNull B, /*1*/ B : kotlin.Any!> f4(/*0*/ p0: _A, /*1*/ p1: B!): kotlin.Unit
public/*package*/ open fun </*0*/ _A : kotlin.Any!, /*1*/ B : @org.jetbrains.annotations.Nullable _A?> f5(/*0*/ p0: _A!, /*1*/ p1: B): kotlin.Unit
public/*package*/ open fun </*0*/ _A : @org.jetbrains.annotations.Nullable test.MethodTypeParameterBounds.I1?> f6(): kotlin.Unit
public/*package*/ abstract fun </*0*/ _A : kotlin.Any!, /*1*/ B : @org.jetbrains.annotations.NotNull _A & Any> f7(/*0*/ p0: _A!, /*1*/ p1: B): kotlin.Unit
public/*package*/ abstract fun </*0*/ _A : @org.jetbrains.annotations.Nullable test.MethodTypeParameterBounds.I1?, /*1*/ B : kotlin.Any!, /*2*/ C : kotlin.Any!, /*3*/ D : @org.jetbrains.annotations.NotNull E & Any, /*4*/ E : kotlin.Any!, /*5*/ F : kotlin.Any!> f8(/*0*/ p0: _A, /*1*/ p1: B!, /*2*/ p2: C!, /*3*/ p3: D, /*4*/ p4: E!, /*5*/ p5: F!): kotlin.Unit
public/*package*/ abstract fun </*0*/ _A : kotlin.Any!, /*1*/ B : @org.jetbrains.annotations.NotNull _A> f7(/*0*/ p0: _A!, /*1*/ p1: B): kotlin.Unit
public/*package*/ abstract fun </*0*/ _A : @org.jetbrains.annotations.Nullable test.MethodTypeParameterBounds.I1?, /*1*/ B : kotlin.Any!, /*2*/ C : kotlin.Any!, /*3*/ D : @org.jetbrains.annotations.NotNull E, /*4*/ E : kotlin.Any!, /*5*/ F : kotlin.Any!> f8(/*0*/ p0: _A, /*1*/ p1: B!, /*2*/ p2: C!, /*3*/ p3: D, /*4*/ p4: E!, /*5*/ p5: F!): kotlin.Unit
public/*package*/ open fun </*0*/ _A : kotlin.Any!> f9(/*0*/ p0: _A): kotlin.Unit where _A : test.MethodTypeParameterBounds.I2<@org.jetbrains.annotations.Nullable kotlin.Int?>!, _A : @org.jetbrains.annotations.Nullable test.MethodTypeParameterBounds.I3<kotlin.String!>?
public/*package*/ interface I1 {
+2 -2
View File
@@ -12,14 +12,14 @@ public open class MapRemove {
public abstract override /*1*/ /*fake_override*/ fun clear(): kotlin.Unit
public open override /*1*/ /*fake_override*/ fun compute(/*0*/ p0: K!, /*1*/ p1: java.util.function.BiFunction<in K!, in V?, out V?>): V?
public open override /*1*/ /*fake_override*/ fun computeIfAbsent(/*0*/ p0: K!, /*1*/ p1: java.util.function.Function<in K!, out V!>): V!
public open override /*1*/ /*fake_override*/ fun computeIfPresent(/*0*/ p0: K!, /*1*/ p1: java.util.function.BiFunction<in K!, in V & Any, out V?>): V?
public open override /*1*/ /*fake_override*/ fun computeIfPresent(/*0*/ p0: K!, /*1*/ p1: java.util.function.BiFunction<in K!, in V, out V?>): V?
public abstract override /*1*/ /*fake_override*/ fun containsKey(/*0*/ key: K!): kotlin.Boolean
public abstract override /*1*/ /*fake_override*/ fun containsValue(/*0*/ value: V!): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun forEach(/*0*/ p0: java.util.function.BiConsumer<in K!, in V!>): kotlin.Unit
public abstract override /*1*/ /*fake_override*/ fun get(/*0*/ key: K!): V?
@kotlin.SinceKotlin(version = "1.1") @kotlin.internal.PlatformDependent public open override /*1*/ /*fake_override*/ fun getOrDefault(/*0*/ key: K!, /*1*/ defaultValue: V!): V!
public abstract override /*1*/ /*fake_override*/ fun isEmpty(): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun merge(/*0*/ p0: K!, /*1*/ p1: V & Any, /*2*/ p2: java.util.function.BiFunction<in V & Any, in V & Any, out V?>): V?
public open override /*1*/ /*fake_override*/ fun merge(/*0*/ p0: K!, /*1*/ p1: V, /*2*/ p2: java.util.function.BiFunction<in V, in V, out V?>): V?
public abstract override /*1*/ /*fake_override*/ fun put(/*0*/ key: K!, /*1*/ value: V!): V?
public abstract override /*1*/ /*fake_override*/ fun putAll(/*0*/ from: kotlin.collections.Map<out K!, V!>): kotlin.Unit
public open override /*1*/ /*fake_override*/ fun putIfAbsent(/*0*/ p0: K!, /*1*/ p1: V!): V?
@@ -2,7 +2,7 @@ package test
public open class Basic {
public constructor Basic()
public/*package*/ open fun </*0*/ R : kotlin.Any!, /*1*/ @org.jetbrains.annotations.NotNull _A : R & Any, /*2*/ @org.jetbrains.annotations.Nullable K> foo(/*0*/ r: R!): kotlin.Unit
public/*package*/ open fun </*0*/ R : kotlin.Any!, /*1*/ @org.jetbrains.annotations.NotNull _A : R, /*2*/ @org.jetbrains.annotations.Nullable K> foo(/*0*/ r: R!): kotlin.Unit
public interface G</*0*/ @org.jetbrains.annotations.NotNull T : kotlin.Any> {
public abstract fun </*0*/ @org.jetbrains.annotations.NotNull R : kotlin.Any> foo(/*0*/ r: R): kotlin.Unit
@@ -1,9 +1,9 @@
package test
public open class BaseClassTypeArguments</*0*/ B : kotlin.Any!> : test.A3<kotlin.Array<(out) kotlin.Array<(out) kotlin.Array<(out) kotlin.Array<(out) kotlin.Array<(out) @org.jetbrains.annotations.NotNull B & Any>!>!>!>!>!, test.I1<test.I1<(@org.jetbrains.annotations.NotNull kotlin.Array<kotlin.IntArray!>..@org.jetbrains.annotations.NotNull kotlin.Array<out kotlin.IntArray!>)>!>!, test.A2<B!, kotlin.Array<(out) kotlin.Array<(out) @org.jetbrains.annotations.NotNull kotlin.IntArray!>!>!>!>, test.I1<(@org.jetbrains.annotations.NotNull kotlin.Array<kotlin.Array<(out) kotlin.Array<(out) @org.jetbrains.annotations.NotNull kotlin.Int>!>!>..@org.jetbrains.annotations.NotNull kotlin.Array<out kotlin.Array<(out) kotlin.Array<(out) @org.jetbrains.annotations.NotNull kotlin.Int>!>!>)>, test.I2<@org.jetbrains.annotations.NotNull B & Any, B!>, test.I3<kotlin.Array<(out) kotlin.Array<(out) kotlin.Array<(out) kotlin.Array<(out) kotlin.Array<(out) @org.jetbrains.annotations.NotNull B & Any>!>!>!>!>!, B!, @org.jetbrains.annotations.NotNull B & Any> {
public open class BaseClassTypeArguments</*0*/ B : kotlin.Any!> : test.A3<kotlin.Array<(out) kotlin.Array<(out) kotlin.Array<(out) kotlin.Array<(out) kotlin.Array<(out) @org.jetbrains.annotations.NotNull B>!>!>!>!>!, test.I1<test.I1<(@org.jetbrains.annotations.NotNull kotlin.Array<kotlin.IntArray!>..@org.jetbrains.annotations.NotNull kotlin.Array<out kotlin.IntArray!>)>!>!, test.A2<B!, kotlin.Array<(out) kotlin.Array<(out) @org.jetbrains.annotations.NotNull kotlin.IntArray!>!>!>!>, test.I1<(@org.jetbrains.annotations.NotNull kotlin.Array<kotlin.Array<(out) kotlin.Array<(out) @org.jetbrains.annotations.NotNull kotlin.Int>!>!>..@org.jetbrains.annotations.NotNull kotlin.Array<out kotlin.Array<(out) kotlin.Array<(out) @org.jetbrains.annotations.NotNull kotlin.Int>!>!>)>, test.I2<@org.jetbrains.annotations.NotNull B, B!>, test.I3<kotlin.Array<(out) kotlin.Array<(out) kotlin.Array<(out) kotlin.Array<(out) kotlin.Array<(out) @org.jetbrains.annotations.NotNull B>!>!>!>!>!, B!, @org.jetbrains.annotations.NotNull B> {
public constructor BaseClassTypeArguments</*0*/ B : kotlin.Any!>()
public/*package*/ open class BaseClassTypeArguments2</*0*/ B : kotlin.Any!> : test.A3<kotlin.Array<(out) kotlin.Array<(out) kotlin.Array<(out) kotlin.Array<(out) kotlin.Array<(out) @org.jetbrains.annotations.NotNull B & Any>!>!>!>!>!, test.I1<test.I1<(@org.jetbrains.annotations.NotNull kotlin.Array<kotlin.IntArray!>..@org.jetbrains.annotations.NotNull kotlin.Array<out kotlin.IntArray!>)>!>!, test.A2<B!, kotlin.Array<(out) kotlin.Array<(out) @org.jetbrains.annotations.NotNull kotlin.IntArray!>!>!>!> {
public/*package*/ open class BaseClassTypeArguments2</*0*/ B : kotlin.Any!> : test.A3<kotlin.Array<(out) kotlin.Array<(out) kotlin.Array<(out) kotlin.Array<(out) kotlin.Array<(out) @org.jetbrains.annotations.NotNull B>!>!>!>!>!, test.I1<test.I1<(@org.jetbrains.annotations.NotNull kotlin.Array<kotlin.IntArray!>..@org.jetbrains.annotations.NotNull kotlin.Array<out kotlin.IntArray!>)>!>!, test.A2<B!, kotlin.Array<(out) kotlin.Array<(out) @org.jetbrains.annotations.NotNull kotlin.IntArray!>!>!>!> {
public/*package*/ constructor BaseClassTypeArguments2</*0*/ B : kotlin.Any!>()
}
@@ -15,10 +15,10 @@ public open class BaseClassTypeArguments</*0*/ B : kotlin.Any!> : test.A3<kotlin
public/*package*/ constructor Basic2()
}
public/*package*/ open inner class ImplementedInterfacesTypeArguments</*0*/ B : kotlin.Any!> /*captured type parameters: /*1*/ B : kotlin.Any!*/ : test.I1<test.I2<test.I1<(@org.jetbrains.annotations.NotNull kotlin.Array<kotlin.Array<(out) kotlin.Array<(out) @org.jetbrains.annotations.NotNull kotlin.Int>!>!>..@org.jetbrains.annotations.NotNull kotlin.Array<out kotlin.Array<(out) kotlin.Array<(out) @org.jetbrains.annotations.NotNull kotlin.Int>!>!>)>!, test.I1<kotlin.Array<(out) @org.jetbrains.annotations.NotNull kotlin.IntArray!>!>!>!>, test.I2<@org.jetbrains.annotations.NotNull B & Any, B!>, test.I3<kotlin.Array<(out) kotlin.Array<(out) kotlin.Array<(out) kotlin.Array<(out) kotlin.Array<(out) @org.jetbrains.annotations.NotNull B & Any>!>!>!>!>!, test.I1<test.I1<(@org.jetbrains.annotations.NotNull kotlin.Array<kotlin.IntArray!>..@org.jetbrains.annotations.NotNull kotlin.Array<out kotlin.IntArray!>)>!>!, test.I2<B!, kotlin.Array<(out) kotlin.Array<(out) @org.jetbrains.annotations.NotNull kotlin.IntArray!>!>!>!> {
public/*package*/ open inner class ImplementedInterfacesTypeArguments</*0*/ B : kotlin.Any!> /*captured type parameters: /*1*/ B : kotlin.Any!*/ : test.I1<test.I2<test.I1<(@org.jetbrains.annotations.NotNull kotlin.Array<kotlin.Array<(out) kotlin.Array<(out) @org.jetbrains.annotations.NotNull kotlin.Int>!>!>..@org.jetbrains.annotations.NotNull kotlin.Array<out kotlin.Array<(out) kotlin.Array<(out) @org.jetbrains.annotations.NotNull kotlin.Int>!>!>)>!, test.I1<kotlin.Array<(out) @org.jetbrains.annotations.NotNull kotlin.IntArray!>!>!>!>, test.I2<@org.jetbrains.annotations.NotNull B, B!>, test.I3<kotlin.Array<(out) kotlin.Array<(out) kotlin.Array<(out) kotlin.Array<(out) kotlin.Array<(out) @org.jetbrains.annotations.NotNull B>!>!>!>!>!, test.I1<test.I1<(@org.jetbrains.annotations.NotNull kotlin.Array<kotlin.IntArray!>..@org.jetbrains.annotations.NotNull kotlin.Array<out kotlin.IntArray!>)>!>!, test.I2<B!, kotlin.Array<(out) kotlin.Array<(out) @org.jetbrains.annotations.NotNull kotlin.IntArray!>!>!>!> {
public/*package*/ constructor ImplementedInterfacesTypeArguments</*0*/ B : kotlin.Any!>()
public open inner class BaseClassTypeArguments1</*0*/ B : kotlin.Any!> /*captured type parameters: /*1*/ B : kotlin.Any!, /*2*/ B : kotlin.Any!*/ : test.A3<kotlin.Array<(out) kotlin.Array<(out) kotlin.Array<(out) kotlin.Array<(out) kotlin.Array<(out) @org.jetbrains.annotations.NotNull B & Any>!>!>!>!>!, test.I1<test.I1<(@org.jetbrains.annotations.NotNull kotlin.Array<kotlin.IntArray!>..@org.jetbrains.annotations.NotNull kotlin.Array<out kotlin.IntArray!>)>!>!, test.A2<B!, kotlin.Array<(out) kotlin.Array<(out) @org.jetbrains.annotations.NotNull kotlin.IntArray!>!>!>!> {
public open inner class BaseClassTypeArguments1</*0*/ B : kotlin.Any!> /*captured type parameters: /*1*/ B : kotlin.Any!, /*2*/ B : kotlin.Any!*/ : test.A3<kotlin.Array<(out) kotlin.Array<(out) kotlin.Array<(out) kotlin.Array<(out) kotlin.Array<(out) @org.jetbrains.annotations.NotNull B>!>!>!>!>!, test.I1<test.I1<(@org.jetbrains.annotations.NotNull kotlin.Array<kotlin.IntArray!>..@org.jetbrains.annotations.NotNull kotlin.Array<out kotlin.IntArray!>)>!>!, test.A2<B!, kotlin.Array<(out) kotlin.Array<(out) @org.jetbrains.annotations.NotNull kotlin.IntArray!>!>!>!> {
public constructor BaseClassTypeArguments1</*0*/ B : kotlin.Any!>()
}
}
@@ -11,7 +11,7 @@ public open class Basic_DisabledImprovements</*0*/ T : @org.jetbrains.annotation
}
}
public/*package*/ interface G</*0*/ T : kotlin.Any!> : test.Basic_DisabledImprovements.G2<@org.jetbrains.annotations.NotNull T & Any, @org.jetbrains.annotations.NotNull kotlin.String> {
public/*package*/ interface G</*0*/ T : kotlin.Any!> : test.Basic_DisabledImprovements.G2<@org.jetbrains.annotations.NotNull T, @org.jetbrains.annotations.NotNull kotlin.String> {
}
public/*package*/ interface G2</*0*/ A : kotlin.Any!, /*1*/ B : kotlin.Any!> {
@@ -21,7 +21,7 @@ public open class Basic_DisabledImprovements</*0*/ T : @org.jetbrains.annotation
public abstract fun f1(/*0*/ p: test.Basic_DisabledImprovements.G<@org.jetbrains.annotations.NotNull kotlin.String>!): kotlin.Unit
public abstract fun </*0*/ T : @org.jetbrains.annotations.NotNull kotlin.Any!, /*1*/ K : test.Basic_DisabledImprovements.G<kotlin.Array<(out) @org.jetbrains.annotations.NotNull kotlin.String!>!>!> f10(/*0*/ p: T!): kotlin.Unit
public abstract fun f2(): test.Basic_DisabledImprovements.G2<@org.jetbrains.annotations.Nullable kotlin.String?, @org.jetbrains.annotations.NotNull kotlin.Int>!
public abstract fun </*0*/ T : @org.jetbrains.annotations.NotNull kotlin.Any!> f3(/*0*/ @org.jetbrains.annotations.NotNull x: @org.jetbrains.annotations.NotNull T & Any): kotlin.Unit
public abstract fun </*0*/ T : @org.jetbrains.annotations.NotNull kotlin.Any!> f3(/*0*/ @org.jetbrains.annotations.NotNull x: @org.jetbrains.annotations.NotNull T): kotlin.Unit
public abstract fun f4(/*0*/ p: test.Basic_DisabledImprovements.G<(@org.jetbrains.annotations.Nullable kotlin.Array<@org.jetbrains.annotations.NotNull kotlin.String!>..@org.jetbrains.annotations.Nullable kotlin.Array<out @org.jetbrains.annotations.NotNull kotlin.String!>?)>!): kotlin.Unit
public abstract fun f5(/*0*/ p: test.Basic_DisabledImprovements.G<*>!): kotlin.Unit
public abstract fun f6(/*0*/ p: test.Basic_DisabledImprovements.G<out @org.jetbrains.annotations.Nullable kotlin.Any?>!): kotlin.Unit
@@ -22,15 +22,15 @@ public open class ClassTypeParameterBounds {
public/*package*/ interface G3</*0*/ _A : kotlin.Any!, /*1*/ B : kotlin.Any!> where B : @org.jetbrains.annotations.NotNull test.ClassTypeParameterBounds.I1 {
}
public/*package*/ open inner class G4</*0*/ _A : @org.jetbrains.annotations.NotNull B & Any, /*1*/ B : kotlin.Any!> {
public/*package*/ constructor G4</*0*/ _A : @org.jetbrains.annotations.NotNull B & Any, /*1*/ B : kotlin.Any!>()
public/*package*/ open inner class G4</*0*/ _A : @org.jetbrains.annotations.NotNull B, /*1*/ B : kotlin.Any!> {
public/*package*/ constructor G4</*0*/ _A : @org.jetbrains.annotations.NotNull B, /*1*/ B : kotlin.Any!>()
}
public/*package*/ interface G5</*0*/ _A : kotlin.Any!, /*1*/ B : @org.jetbrains.annotations.Nullable _A?> {
}
public/*package*/ open inner class G6</*0*/ _A : @org.jetbrains.annotations.Nullable test.ClassTypeParameterBounds.I1?, /*1*/ B : kotlin.Any!, /*2*/ C : kotlin.Any!, /*3*/ D : @org.jetbrains.annotations.NotNull E & Any, /*4*/ E : kotlin.Any!, /*5*/ F : kotlin.Any!> {
public/*package*/ constructor G6</*0*/ _A : @org.jetbrains.annotations.Nullable test.ClassTypeParameterBounds.I1?, /*1*/ B : kotlin.Any!, /*2*/ C : kotlin.Any!, /*3*/ D : @org.jetbrains.annotations.NotNull E & Any, /*4*/ E : kotlin.Any!, /*5*/ F : kotlin.Any!>()
public/*package*/ open inner class G6</*0*/ _A : @org.jetbrains.annotations.Nullable test.ClassTypeParameterBounds.I1?, /*1*/ B : kotlin.Any!, /*2*/ C : kotlin.Any!, /*3*/ D : @org.jetbrains.annotations.NotNull E, /*4*/ E : kotlin.Any!, /*5*/ F : kotlin.Any!> {
public/*package*/ constructor G6</*0*/ _A : @org.jetbrains.annotations.Nullable test.ClassTypeParameterBounds.I1?, /*1*/ B : kotlin.Any!, /*2*/ C : kotlin.Any!, /*3*/ D : @org.jetbrains.annotations.NotNull E, /*4*/ E : kotlin.Any!, /*5*/ F : kotlin.Any!>()
}
public/*package*/ interface G7</*0*/ _A : kotlin.Any!> where _A : test.ClassTypeParameterBounds.I2<@org.jetbrains.annotations.NotNull kotlin.Int>!, _A : @org.jetbrains.annotations.NotNull test.ClassTypeParameterBounds.I3<kotlin.String!> {
@@ -5,17 +5,17 @@ public/*package*/ abstract class MethodTypeParameterBounds {
public/*package*/ open fun </*0*/ T : @org.jetbrains.annotations.NotNull kotlin.Any> f1(/*0*/ x: T): kotlin.Unit
public/*package*/ open fun </*0*/ _A : kotlin.Any!> f10(/*0*/ x: _A): kotlin.Unit where _A : test.MethodTypeParameterBounds.I2<in @org.jetbrains.annotations.Nullable kotlin.Int?>!, _A : @org.jetbrains.annotations.Nullable test.MethodTypeParameterBounds.I3<out kotlin.String!>?
public/*package*/ open fun </*0*/ _A : test.MethodTypeParameterBounds.I4<(@org.jetbrains.annotations.NotNull kotlin.Array<kotlin.Int!>..@org.jetbrains.annotations.NotNull kotlin.Array<out kotlin.Int!>)>!> f11(/*0*/ x: _A): kotlin.Unit where _A : test.MethodTypeParameterBounds.I2<out (@org.jetbrains.annotations.Nullable kotlin.Array<@org.jetbrains.annotations.Nullable kotlin.Int?>?..@org.jetbrains.annotations.Nullable kotlin.Array<out @org.jetbrains.annotations.Nullable kotlin.Int?>?)>!, _A : @org.jetbrains.annotations.Nullable test.MethodTypeParameterBounds.I3<out (@org.jetbrains.annotations.NotNull kotlin.Array<kotlin.Int!>..@org.jetbrains.annotations.NotNull kotlin.Array<out kotlin.Int!>)>?
public/*package*/ open fun </*0*/ _A : test.MethodTypeParameterBounds.I4<@org.jetbrains.annotations.Nullable kotlin.IntArray!>!> f12(/*0*/ x: _A & Any): kotlin.Unit where _A : test.MethodTypeParameterBounds.I2<out @org.jetbrains.annotations.Nullable kotlin.IntArray!>!, _A : @org.jetbrains.annotations.NotNull test.MethodTypeParameterBounds.I3<out @org.jetbrains.annotations.Nullable kotlin.IntArray!>
public/*package*/ open fun </*0*/ _A : test.MethodTypeParameterBounds.I4<@org.jetbrains.annotations.Nullable kotlin.IntArray!>!> f12(/*0*/ x: _A): kotlin.Unit where _A : test.MethodTypeParameterBounds.I2<out @org.jetbrains.annotations.Nullable kotlin.IntArray!>!, _A : @org.jetbrains.annotations.NotNull test.MethodTypeParameterBounds.I3<out @org.jetbrains.annotations.Nullable kotlin.IntArray!>
public/*package*/ open fun </*0*/ _A : test.MethodTypeParameterBounds.I4<kotlin.Array<(out) kotlin.Array<(out) (@org.jetbrains.annotations.Nullable kotlin.Array<kotlin.Int!>?..@org.jetbrains.annotations.Nullable kotlin.Array<out kotlin.Int!>?)>!>!>!> f13(/*0*/ x: _A): kotlin.Unit where _A : test.MethodTypeParameterBounds.I2<out (@org.jetbrains.annotations.Nullable kotlin.Array<kotlin.Array<(out) kotlin.Array<(out) kotlin.Array<(out) @org.jetbrains.annotations.Nullable kotlin.Int?>!>!>!>?..@org.jetbrains.annotations.Nullable kotlin.Array<out kotlin.Array<(out) kotlin.Array<(out) kotlin.Array<(out) @org.jetbrains.annotations.Nullable kotlin.Int?>!>!>!>?)>!, _A : @org.jetbrains.annotations.Nullable test.MethodTypeParameterBounds.I3<out kotlin.Array<(out) (@org.jetbrains.annotations.Nullable kotlin.Array<kotlin.Int!>?..@org.jetbrains.annotations.Nullable kotlin.Array<out kotlin.Int!>?)>!>?
public/*package*/ abstract fun </*0*/ _A : test.MethodTypeParameterBounds.I4<(@org.jetbrains.annotations.NotNull kotlin.Array<kotlin.IntArray!>..@org.jetbrains.annotations.NotNull kotlin.Array<out kotlin.IntArray!>)>!> f14(/*0*/ x: _A): kotlin.Unit where _A : test.MethodTypeParameterBounds.I2<out kotlin.Array<(out) kotlin.Array<(out) @org.jetbrains.annotations.Nullable kotlin.IntArray!>!>!>!, _A : @org.jetbrains.annotations.Nullable test.MethodTypeParameterBounds.I3<out kotlin.Array<(out) (@org.jetbrains.annotations.Nullable kotlin.Array<kotlin.IntArray!>?..@org.jetbrains.annotations.Nullable kotlin.Array<out kotlin.IntArray!>?)>!>?
public/*package*/ open fun </*0*/ _A : kotlin.Any!, /*1*/ B : test.MethodTypeParameterBounds.I3<@org.jetbrains.annotations.Nullable _A?>!> f15(/*0*/ x: _A!): kotlin.Unit where B : @org.jetbrains.annotations.NotNull test.MethodTypeParameterBounds.I2<_A!>
public/*package*/ open fun </*0*/ _A : kotlin.Any!, /*1*/ B : @org.jetbrains.annotations.NotNull kotlin.Int> f2(/*0*/ x: _A!, /*1*/ y: B): kotlin.Unit
public/*package*/ open fun </*0*/ _A : kotlin.Any!, /*1*/ B : kotlin.Any!> f3(/*0*/ x: _A!, /*1*/ y: B): kotlin.Unit where B : @org.jetbrains.annotations.Nullable test.MethodTypeParameterBounds.I1?
public/*package*/ open fun </*0*/ _A : @org.jetbrains.annotations.NotNull B & Any, /*1*/ B : kotlin.Any!> f4(/*0*/ x: _A, /*1*/ y: B!): kotlin.Unit
public/*package*/ open fun </*0*/ _A : @org.jetbrains.annotations.NotNull B, /*1*/ B : kotlin.Any!> f4(/*0*/ x: _A, /*1*/ y: B!): kotlin.Unit
public/*package*/ open fun </*0*/ _A : kotlin.Any!, /*1*/ B : @org.jetbrains.annotations.Nullable _A?> f5(/*0*/ x: _A!, /*1*/ y: B): kotlin.Unit
public/*package*/ open fun </*0*/ _A : @org.jetbrains.annotations.Nullable test.MethodTypeParameterBounds.I1?> f6(): kotlin.Unit
public/*package*/ abstract fun </*0*/ _A : kotlin.Any!, /*1*/ B : @org.jetbrains.annotations.NotNull _A & Any> f7(/*0*/ x: _A!, /*1*/ y: B): kotlin.Unit
public/*package*/ abstract fun </*0*/ _A : @org.jetbrains.annotations.Nullable test.MethodTypeParameterBounds.I1?, /*1*/ B : kotlin.Any!, /*2*/ C : kotlin.Any!, /*3*/ D : @org.jetbrains.annotations.NotNull E & Any, /*4*/ E : kotlin.Any!, /*5*/ F : kotlin.Any!> f8(/*0*/ x1: _A, /*1*/ x2: B!, /*2*/ x3: C!, /*3*/ x4: D, /*4*/ x5: E!, /*5*/ x6: F!): kotlin.Unit
public/*package*/ abstract fun </*0*/ _A : kotlin.Any!, /*1*/ B : @org.jetbrains.annotations.NotNull _A> f7(/*0*/ x: _A!, /*1*/ y: B): kotlin.Unit
public/*package*/ abstract fun </*0*/ _A : @org.jetbrains.annotations.Nullable test.MethodTypeParameterBounds.I1?, /*1*/ B : kotlin.Any!, /*2*/ C : kotlin.Any!, /*3*/ D : @org.jetbrains.annotations.NotNull E, /*4*/ E : kotlin.Any!, /*5*/ F : kotlin.Any!> f8(/*0*/ x1: _A, /*1*/ x2: B!, /*2*/ x3: C!, /*3*/ x4: D, /*4*/ x5: E!, /*5*/ x6: F!): kotlin.Unit
public/*package*/ open fun </*0*/ _A : kotlin.Any!> f9(/*0*/ x: _A): kotlin.Unit where _A : test.MethodTypeParameterBounds.I2<@org.jetbrains.annotations.Nullable kotlin.Int?>!, _A : @org.jetbrains.annotations.Nullable test.MethodTypeParameterBounds.I3<kotlin.String!>?
public/*package*/ interface I1 {
@@ -1,34 +1,34 @@
fun valuesNotNull(map: MutableMap<Int, String>) {
map.computeIfPresent(1) { k, v -> v.length.toString() ?: null }
// SUCCESS
// ORIGINAL: fun computeIfPresent(K, BiFunction<in K, in V & Any, out V?>): V? defined in kotlin.collections.MutableMap
// ORIGINAL: fun computeIfPresent(K, BiFunction<in K, in V, out V?>): V? defined in kotlin.collections.MutableMap
// SUBSTITUTED: fun computeIfPresent(Int, BiFunction<in Int, in String, out String?>): String? defined in kotlin.collections.MutableMap
}
fun valuesNullable(map: MutableMap<Int, String?>) {
map.computeIfPresent(1) { k, v -> v?.length?.toString() }
// SUCCESS
// ORIGINAL: fun computeIfPresent(K, BiFunction<in K, in V & Any, out V?>): V? defined in kotlin.collections.MutableMap
// ORIGINAL: fun computeIfPresent(K, BiFunction<in K, in V, out V?>): V? defined in kotlin.collections.MutableMap
// SUBSTITUTED: fun computeIfPresent(Int, BiFunction<in Int, in String, out String?>): String? defined in kotlin.collections.MutableMap
}
fun <T : String?> valuesT(map: MutableMap<Int, T>, newValue: T) {
map.computeIfPresent(1) { k, v -> v?.length.toString() ?: null }
// SUCCESS
// ORIGINAL: fun computeIfPresent(K, BiFunction<in K, in V & Any, out V?>): V? defined in kotlin.collections.MutableMap
// SUBSTITUTED: fun computeIfPresent(Int, BiFunction<in Int, in T & Any, out T?>): T? defined in kotlin.collections.MutableMap
// ORIGINAL: fun computeIfPresent(K, BiFunction<in K, in V, out V?>): V? defined in kotlin.collections.MutableMap
// SUBSTITUTED: fun computeIfPresent(Int, BiFunction<in Int, in T, out T?>): T? defined in kotlin.collections.MutableMap
}
fun <T : Any> valuesTNotNull(map: MutableMap<Int, T>, newValue: T) {
map.computeIfPresent(1) { k, v -> null }
// SUCCESS
// ORIGINAL: fun computeIfPresent(K, BiFunction<in K, in V & Any, out V?>): V? defined in kotlin.collections.MutableMap
// ORIGINAL: fun computeIfPresent(K, BiFunction<in K, in V, out V?>): V? defined in kotlin.collections.MutableMap
// SUBSTITUTED: fun computeIfPresent(Int, BiFunction<in Int, in T, out T?>): T? defined in kotlin.collections.MutableMap
}
fun <T : Any> valuesTNullable(map: MutableMap<Int, T?>, newValue: T?) {
map.computeIfPresent(1) { k, v -> null }
// SUCCESS
// ORIGINAL: fun computeIfPresent(K, BiFunction<in K, in V & Any, out V?>): V? defined in kotlin.collections.MutableMap
// SUBSTITUTED: fun computeIfPresent(Int, BiFunction<in Int, in T & Any, out T?>): T? defined in kotlin.collections.MutableMap
// ORIGINAL: fun computeIfPresent(K, BiFunction<in K, in V, out V?>): V? defined in kotlin.collections.MutableMap
// SUBSTITUTED: fun computeIfPresent(Int, BiFunction<in Int, in T, out T?>): T? defined in kotlin.collections.MutableMap
}
@@ -1,42 +1,42 @@
fun valuesNotNull(map: MutableMap<Int, String>) {
map.merge(1, "x") { old, new -> old + new }
// SUCCESS
// ORIGINAL: fun merge(K, V & Any, BiFunction<in V & Any, in V & Any, out V?>): V? defined in kotlin.collections.MutableMap
// ORIGINAL: fun merge(K, V, BiFunction<in V, in V, out V?>): V? defined in kotlin.collections.MutableMap
// SUBSTITUTED: fun merge(Int, String, BiFunction<in String, in String, out String?>): String? defined in kotlin.collections.MutableMap
}
fun valuesNullable(map: MutableMap<Int, String?>) {
map.merge(1, "x") { old, new -> old + new }
// SUCCESS
// ORIGINAL: fun merge(K, V & Any, BiFunction<in V & Any, in V & Any, out V?>): V? defined in kotlin.collections.MutableMap
// ORIGINAL: fun merge(K, V, BiFunction<in V, in V, out V?>): V? defined in kotlin.collections.MutableMap
// SUBSTITUTED: fun merge(Int, String, BiFunction<in String, in String, out String?>): String? defined in kotlin.collections.MutableMap
map.merge(1, null) { old, new -> old + new }
// UNSAFE_CALL_ERROR
// ORIGINAL: fun merge(K, V & Any, BiFunction<in V & Any, in V & Any, out V?>): V? defined in kotlin.collections.MutableMap
// ORIGINAL: fun merge(K, V, BiFunction<in V, in V, out V?>): V? defined in kotlin.collections.MutableMap
// SUBSTITUTED: fun merge(Int, String, BiFunction<in String, in String, out String?>): String? defined in kotlin.collections.MutableMap
}
fun <T> valuesT(map: MutableMap<Int, T>, newValue: T) {
map.merge(1, newValue) { old, new -> null }
// OTHER_ERROR
// ORIGINAL: fun merge(K, V & Any, BiFunction<in V & Any, in V & Any, out V?>): V? defined in kotlin.collections.MutableMap
// SUBSTITUTED: fun merge(Int, T & Any, BiFunction<in T & Any, in T & Any, out T?>): T? defined in kotlin.collections.MutableMap
// SUCCESS
// ORIGINAL: fun merge(K, V, BiFunction<in V, in V, out V?>): V? defined in kotlin.collections.MutableMap
// SUBSTITUTED: fun merge(Int, T, BiFunction<in T, in T, out T?>): T? defined in kotlin.collections.MutableMap
}
fun <T : Any> valuesTNotNull(map: MutableMap<Int, T>, newValue: T) {
map.merge(1, newValue) { old, new -> null }
// SUCCESS
// ORIGINAL: fun merge(K, V & Any, BiFunction<in V & Any, in V & Any, out V?>): V? defined in kotlin.collections.MutableMap
// ORIGINAL: fun merge(K, V, BiFunction<in V, in V, out V?>): V? defined in kotlin.collections.MutableMap
// SUBSTITUTED: fun merge(Int, T, BiFunction<in T, in T, out T?>): T? defined in kotlin.collections.MutableMap
}
fun <T : Any> valuesTNullable(map: MutableMap<Int, T?>, newValue: T?) {
map.merge(1, newValue) { old, new -> new }
// UNSAFE_CALL_ERROR
// ORIGINAL: fun merge(K, V & Any, BiFunction<in V & Any, in V & Any, out V?>): V? defined in kotlin.collections.MutableMap
// SUBSTITUTED: fun merge(Int, T & Any, BiFunction<in T & Any, in T & Any, out T?>): T? defined in kotlin.collections.MutableMap
// ORIGINAL: fun merge(K, V, BiFunction<in V, in V, out V?>): V? defined in kotlin.collections.MutableMap
// SUBSTITUTED: fun merge(Int, T, BiFunction<in T, in T, out T?>): T? defined in kotlin.collections.MutableMap
map.merge(1, newValue!!) { old, new -> new }
// SUCCESS
// ORIGINAL: fun merge(K, V & Any, BiFunction<in V & Any, in V & Any, out V?>): V? defined in kotlin.collections.MutableMap
// SUBSTITUTED: fun merge(Int, T & Any, BiFunction<in T & Any, in T & Any, out T?>): T? defined in kotlin.collections.MutableMap
// ORIGINAL: fun merge(K, V, BiFunction<in V, in V, out V?>): V? defined in kotlin.collections.MutableMap
// SUBSTITUTED: fun merge(Int, T, BiFunction<in T, in T, out T?>): T? defined in kotlin.collections.MutableMap
}
@@ -3,11 +3,11 @@ import java.util.*
fun use() {
Optional.empty<String>()
// SUCCESS
// ORIGINAL: fun <T : Any!> empty(): Optional<T & Any> defined in java.util.Optional
// ORIGINAL: fun <T : Any!> empty(): Optional<T> defined in java.util.Optional
// SUBSTITUTED: fun <T : Any!> empty(): Optional<String> defined in java.util.Optional
Optional.empty<String?>()
// SUCCESS
// ORIGINAL: fun <T : Any!> empty(): Optional<T & Any> defined in java.util.Optional
// ORIGINAL: fun <T : Any!> empty(): Optional<T> defined in java.util.Optional
// SUBSTITUTED: fun <T : Any!> empty(): Optional<String> defined in java.util.Optional
}
@@ -3,14 +3,14 @@ import java.util.*
fun use(v: Optional<String>) {
v.get()
// SUCCESS
// ORIGINAL: fun get(): T & Any defined in java.util.Optional
// ORIGINAL: fun get(): T defined in java.util.Optional
// SUBSTITUTED: fun get(): String defined in java.util.Optional
}
fun use2(v: Optional<String?>) {
v.get()
// SUCCESS
// ORIGINAL: fun get(): T & Any defined in java.util.Optional
// ORIGINAL: fun get(): T defined in java.util.Optional
// SUBSTITUTED: fun get(): String defined in java.util.Optional
}
@@ -3,14 +3,14 @@ import java.util.*
fun use(v: Optional<String>) {
v.ifPresent { value -> }
// SUCCESS
// ORIGINAL: fun ifPresent(Consumer<in T & Any>): Unit defined in java.util.Optional
// ORIGINAL: fun ifPresent(Consumer<in T>): Unit defined in java.util.Optional
// SUBSTITUTED: fun ifPresent(Consumer<in String>): Unit defined in java.util.Optional
}
fun use2(v: Optional<String?>) {
v.ifPresent { value -> }
// SUCCESS
// ORIGINAL: fun ifPresent(Consumer<in T & Any>): Unit defined in java.util.Optional
// ORIGINAL: fun ifPresent(Consumer<in T>): Unit defined in java.util.Optional
// SUBSTITUTED: fun ifPresent(Consumer<in String>): Unit defined in java.util.Optional
}
@@ -3,17 +3,17 @@ import java.util.*
fun use() {
val x: String? = "x"
Optional.of(x)
// SUCCESS
// ORIGINAL: fun <T : Any!> of(T & Any): Optional<T & Any> defined in java.util.Optional
// UNSAFE_CALL_ERROR
// ORIGINAL: fun <T : Any!> of(T): Optional<T> defined in java.util.Optional
// SUBSTITUTED: fun <T : Any!> of(String): Optional<String> defined in java.util.Optional
Optional.of(x!!)
// SUCCESS
// ORIGINAL: fun <T : Any!> of(T & Any): Optional<T & Any> defined in java.util.Optional
// ORIGINAL: fun <T : Any!> of(T): Optional<T> defined in java.util.Optional
// SUBSTITUTED: fun <T : Any!> of(String): Optional<String> defined in java.util.Optional
Optional.ofNullable(x)
// SUCCESS
// ORIGINAL: fun <T : Any!> ofNullable(T?): Optional<T & Any> defined in java.util.Optional
// ORIGINAL: fun <T : Any!> ofNullable(T?): Optional<T> defined in java.util.Optional
// SUBSTITUTED: fun <T : Any!> ofNullable(String?): Optional<String> defined in java.util.Optional
}