Only private constructors for sealed / enum classes #KT-12377 Fixed

Also #KT-8497 Fixed
This commit is contained in:
Mikhail Glukhikh
2016-05-18 17:02:50 +03:00
parent cffdce908e
commit 1a8181bdc4
14 changed files with 132 additions and 27 deletions
@@ -0,0 +1,7 @@
enum class E <!NON_PRIVATE_CONSTRUCTOR_IN_ENUM!>public<!> constructor(val x: Int) {
FIRST();
<!NON_PRIVATE_CONSTRUCTOR_IN_ENUM!>internal<!> constructor(): this(42)
constructor(y: Int, z: Int): this(y + z)
}
@@ -0,0 +1,23 @@
package
public final enum class E : kotlin.Enum<E> {
enum entry FIRST
internal constructor E()
public constructor E(/*0*/ x: kotlin.Int)
private constructor E(/*0*/ y: kotlin.Int, /*1*/ z: kotlin.Int)
public final override /*1*/ /*fake_override*/ val name: kotlin.String
public final override /*1*/ /*fake_override*/ val ordinal: kotlin.Int
public final val x: kotlin.Int
protected final override /*1*/ /*fake_override*/ fun clone(): kotlin.Any
public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: E): kotlin.Int
public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
protected/*protected and package*/ final override /*1*/ /*fake_override*/ /*isHiddenForResolutionEverywhereBesideSupercalls*/ fun finalize(): kotlin.Unit
public final override /*1*/ /*fake_override*/ /*isHiddenForResolutionEverywhereBesideSupercalls*/ fun getDeclaringClass(): java.lang.Class<E!>!
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
// Static members
public final /*synthesized*/ fun valueOf(/*0*/ value: kotlin.String): E
public final /*synthesized*/ fun values(): kotlin.Array<E>
}