Add UltraLightFacadeClassTest

This commit is contained in:
Igor Yakovlev
2019-05-27 19:55:30 +03:00
parent 8707edfaa3
commit 2a729082a0
21 changed files with 431 additions and 6 deletions
@@ -0,0 +1,5 @@
/** should load cls */
suspend fun doSomething(foo: String): Int {}
fun <T> async(block: suspend () -> T)
@@ -0,0 +1,3 @@
import JS = kotlin.jvm.JvmName
@JS("notFoo") fun foo() {}
@@ -0,0 +1,2 @@
@kotlin.internal.InlineOnly
inline fun foo() {}
@@ -0,0 +1,4 @@
@JvmField
val a: Collection<*> = emptyList()
@JvmField
var b: Int = 1
+22
View File
@@ -0,0 +1,22 @@
var rwProp: Int
@JvmName("get_rwProp")
get() = 0
@JvmName("set_rwProp")
set(v) {}
@get:JvmName("xyz1")
@set:JvmName("xyz2")
var xyz: String
get() = ""
set(value) {}
@get:JvmName("hasBigArity")
val hasBigArity: Boolean
get() = true
fun getRwProp(): Int = 123
fun setRwProp(v: Int) {}
fun foo(x: List<String>) {}
@JvmName("fooInt")
fun foo(x: List<Int>) {}
@@ -0,0 +1,31 @@
class Inv<E>
class Out<out T>
class OutPair<out Final, out Y>
class In<in Z>
class Final
open class Open
@JvmSuppressWildcards(true)
fun deepOpen(x: Out<Out<Out<Open>>>) {}
@JvmSuppressWildcards(false)
fun bar(): Out<Open> = null!!
fun simpleOut(x: Out<@JvmWildcard Final>) {}
fun simpleIn(x: In<@JvmWildcard Any?>) {}
fun falseTrueFalse(): @JvmSuppressWildcards(false) OutPair<Final, @JvmSuppressWildcards OutPair<Out<Final>, Out<@JvmSuppressWildcards(false) Final>>> = null!!
fun combination(): @JvmSuppressWildcards OutPair<Open, @JvmWildcard OutPair<Open, @JvmWildcard Out<Open>>> = null!!
@JvmSuppressWildcards(false)
fun foo(x: Boolean, y: Out<Int>): Int = 1
@JvmSuppressWildcards(true)
fun bar(x: Boolean, y: In<Long>, z: @JvmSuppressWildcards(false) Long): Int = 1
@JvmSuppressWildcards(true)
fun foo2(): Out<T>
@JvmSuppressWildcards(true)
fun foo3(): In<Open>
@@ -0,0 +1,10 @@
lateinit var a: String
lateinit var b: String
private set
lateinit var c: String
protected set
lateinit var d: String
internal set
@@ -0,0 +1,4 @@
@file:JvmMultifileClass
@file:JvmName("multifileFacade")
fun foo() = 42
@@ -0,0 +1,4 @@
@file:JvmMultifileClass
@file:JvmName("multifileFacade")
fun bar() = 24
@@ -0,0 +1,4 @@
@file:JvmMultifileClass
@file:JvmName("multifileFacade")
fun foo() = 42
@@ -0,0 +1,4 @@
@file:JvmMultifileClass
@file:JvmName("otherMultifileFacade")
fun bar() = 24
@@ -0,0 +1,73 @@
import kotlin.reflect.KProperty
val f1 = 2
val intConst: dynamic = 30
val arrayConst: Any = byteArrayOf(1,2)
protected var f2 = 3
var name: String = "x"
val isEmpty get() = false
var isEmptyMutable: Boolean?
var islowercase: Boolean?
var isEmptyInt: Int?
var getInt: Int?
internal var stringRepresentation: String
get() = this.toString()
set(value) {
setDataFromString(value)
}
const val SUBSYSTEM_DEPRECATED: String = "This subsystem is deprecated"
var counter = 0
set(value) {
if (value >= 0) field = value
}
var counter2 : Int?
get() = field
set(value) {
if (value >= 0) field = value
}
lateinit var subject: Unresolved
internal lateinit var internalVarPrivateSet: String
private set
protected lateinit var protectedLateinitVar: String
var delegatedProp: String by Delegate()
var delegatedProp2 by MyProperty()
var lazyProp: String by lazy { "abc" }
val Int.intProp: Int
get() = 1
final internal var internalWithPrivateSet: Int = 1
private set
protected var protectedWithPrivateSet: String = ""
private set
val sum: (Int)->Int = { x: Int -> sum(x - 1) + x }
operator fun getValue(t: T, p: KProperty<*>): Int = 42
operator fun setValue(t: T, p: KProperty<*>, i: Int) {}
@delegate:Transient
val plainField: Int = 1
@delegate:Transient
val lazy by lazy { 1 }
public var int1: Int
private set
protected get
public var int2: Int
public get
internal set
@@ -0,0 +1,9 @@
open fun bar(a: Int, b:Any, c:Foo): Unit {}
internal fun bar2(a: Sequence, b: Unresolved) {}
private fun bar3(x: Foo.Inner, vararg y: Inner) = "str"
fun bar4() = 42
public fun nullableVararg(vararg o: Any?): Unit
operator fun plus(increment: Int): Foo {}
fun String.onString(a: (Int) -> Any?): Foo {}
@@ -0,0 +1,9 @@
class MyException : Exception
@Throws(java.io.IOException::class, MyException::class)
fun readFile(name: String): String {}
// Should be mapped to java.lang.Throwable
@Throws(kotlin.Throwable::class)
fun baz() {}
@@ -0,0 +1,51 @@
class Inv<E>
class Out<out T>
class OutPair<out Final, out Y>
class In<in Z>
class Final
open class Open
// The signatures are obtained from compiler/testData/writeSignature/declarationSiteVariance/wildcardOptimization
fun openClassArgument(x: Out<Open>, y: In<Open>) {}
fun finalClassArgument(x: Out<Final>, y: In<Final>) {}
fun oneArgumentFinal(x: OutPair<Final, Open>) {}
fun arrayOfOutOpen(x: Array<Out<Open>>) {}
fun arrayOfOutFinal(x: Array<Out<Final>>) {}
fun outOfArrayOpen(x: Out<Array<Open>>) {}
fun outOfArrayOutOpen(x: Out<Array<out Open>>) {}
fun deepOpen(x: Out<Out<Out<Open>>>) {}
fun deepFinal(x: Out<Out<Out<Final>>>) {}
fun skipAllOutInvWildcards(): Inv<OutPair<Open, Out<Out<Open>>>> = null!!
fun skipAllInvWildcards(): Inv<In<Out<Open>>> = null!!
fun notDeepIn(): In<Final> = null!!
fun skipWildcardsUntilIn0(): Out<In<Out<Open>>> = null!!
fun skipWildcardsUntilIn1(): Out<In<Out<Final>>> = null!!
fun skipWildcardsUntilIn2(): Out<In<OutPair<Final, Out<Open>>>> = null!!
fun skipWildcardsUntilInProjection(): Inv<in Out<Open>> = null!!
fun outIn(x: Out<In<Final>>) {}
fun outInAny(x: Out<In<Any?>>) {}
fun invInv(x: Out<Inv<Open>>) {}
fun invOut(x: Out<Inv<out Open>>) {}
fun invOutFinal(x: Out<Inv<out Final>>) {}
fun invIn(x: Out<Inv<in Final>>) {}
fun invInAny(x: Out<Inv<in Any>>) {}
fun inFinal(x: In<Final>) {}
fun inAny(x: In<Any>) {}
fun inOutFinal(x: In<Out<Final>>) {}
fun invOpen(x: Inv<Open>) {}
fun invFinal(x: Inv<Final>) {}
fun invOutOpen(x: Inv<Out<Open>>) {}
fun invOutFinal(x: Inv<Out<Final>>) {}
fun invInOutOpen(x: Inv<In<Out<Open>>>) {}
fun invInOutFinal(x: Inv<In<Out<Final>>>) {}
fun invOutProjectedOutFinal(x: Inv<out Out<Final>>) {}
fun <Q : Final> typeParameter(x: Out<Q>, y: In<Q>) {}