Support @JvmOverloads annotation in ultra-light classes

This commit is contained in:
Denis Zharkov
2018-11-19 17:52:43 +03:00
parent 41997769e3
commit 28f20a97f8
3 changed files with 57 additions and 10 deletions
+20 -2
View File
@@ -1,6 +1,24 @@
/** should load cls */
class C @JvmOverloads constructor(
val type: String?,
val p1: Boolean = false,
val p2: String = type
)
) {
@JvmOverloads
fun foo(x: Int = 1, y: Double, z: String = "") {}
@JvmOverloads
fun bar(x: Int = 1, y: Double = 1.3, z: String = "") {}
@JvmOverloads
fun baz(x: Int = 1, y: Double = 1.3, z: String) {}
@JvmOverloads
fun foobar(x: Int, y: Double = 1.3, z: String = "") {}
@JvmOverloads
fun foobarbaz(x: Int, y: Double = 1.3, z: String) {}
companion object {
@JvmOverloads
fun foo123(x: Int = 1, y: Double, z: String = "") {}
@JvmStatic
@JvmOverloads
fun fooStatic(x: Int = 1, y: Double, z: String = "") {}
}
}