Support secondary constructors in decompiled text

Build cls stubs for secondary constructors
This commit is contained in:
Pavel V. Talanov
2015-03-12 13:06:38 +03:00
parent 026e35b6d0
commit c0a031eafe
15 changed files with 351 additions and 28 deletions
@@ -0,0 +1,20 @@
// IntelliJ API Decompiler stub source generated from a class file
// Implementation of methods is not available
package test
internal final class SecondaryConstructors(x: kotlin.Boolean) {
test.anno public constructor(x: kotlin.String) { /* compiled code */ }
private constructor(x: kotlin.Int) { /* compiled code */ }
internal final inner class Inner<T : kotlin.String, G : kotlin.Int> where G : kotlin.Number {
public constructor(x: T, g: G) { /* compiled code */ }
}
internal final class Nested {
test.anno public constructor(z: kotlin.Int) { /* compiled code */ }
internal constructor() { /* compiled code */ }
}
}
@@ -0,0 +1,27 @@
package test
class SecondaryConstructors(x: Boolean) {
init {
}
anno constructor(x: String) : this(x == "abc") {
}
init {
}
private constructor(x: Int) : this(x < 0) {
}
inner class Inner<T : String, G : Int> where G : Number {
constructor(x: T, g: G) {
}
}
class Nested {
anno constructor(z: Int) {}
internal constructor() {}
}
}
annotation class anno