[Analysis API] add few tests which checks contracts of signature substitutions

This commit is contained in:
Ilya Kirillov
2022-06-09 17:26:22 +02:00
parent 3525e42f11
commit dafb132a17
8 changed files with 349 additions and 1 deletions
@@ -0,0 +1,16 @@
class X<T> {
fun <A> foo(): T {}
fun <A> A.foo1(t: T) {}
fun <A> foo2(a: A) {}
fun <A, B : Number> T.foo3(a: A): Map<B, List<A>> {}
fun <A, B : Collection<A>, C : A> foo4(a: A, T): B {}
val <A> A.bar1: T get() = 10
val <A> A.bar2: Map<A, T> get() = mapOf()
}
@@ -0,0 +1,13 @@
fun <A> foo(): A {}
fun <A> A.foo1() {}
fun <A> foo2(a: A) {}
fun <A, B: Number> foo3(a: A): Map<B, List<A>> {}
fun <A, B: Collection<A>, C : A> foo4(a: A): B {}
val <A> A.bar1: Int get() = 10
val <A> A.bar2: List<A> get() = listOf(this)