Drop old enum syntax. Comma / semicolon are now a syntactic part of enum entry.

Comma must present now between enum entries, semicolon between last entry & first member, constructor calls must be without colons / specifiers.
A swarm of tests fixed accordingly.
This commit is contained in:
Mikhail Glukhikh
2015-08-05 18:22:21 +03:00
parent e5ab7de870
commit 3f14e74b08
190 changed files with 810 additions and 3201 deletions
@@ -196,11 +196,7 @@ public interface Errors {
DiagnosticFactory0<PsiElement> CLASS_IN_SUPERTYPE_FOR_ENUM = DiagnosticFactory0.create(ERROR);
DiagnosticFactory0<JetTypeParameterList> TYPE_PARAMETERS_IN_ENUM = DiagnosticFactory0.create(ERROR);
DiagnosticFactory1<JetClass, ClassDescriptor> ENUM_ENTRY_SHOULD_BE_INITIALIZED = DiagnosticFactory1.create(ERROR, DECLARATION_NAME);
DiagnosticFactory1<JetTypeReference, ClassDescriptor> ENUM_ENTRY_ILLEGAL_TYPE = DiagnosticFactory1.create(ERROR);
DiagnosticFactory2<JetEnumEntry, ClassDescriptor, String> ENUM_ENTRY_USES_DEPRECATED_OR_NO_DELIMITER = DiagnosticFactory2.create(WARNING, DECLARATION_NAME);
DiagnosticFactory1<JetEnumEntry, ClassDescriptor> ENUM_ENTRY_USES_DEPRECATED_SUPER_CONSTRUCTOR = DiagnosticFactory1.create(WARNING, DELEGATOR_SUPER_CALL);
DiagnosticFactory1<JetEnumEntry, ClassDescriptor> ENUM_ENTRY_AFTER_ENUM_MEMBER = DiagnosticFactory1.create(WARNING, DECLARATION_NAME);
DiagnosticFactory0<JetClass> ENUM_ENTRY_SHOULD_BE_INITIALIZED = DiagnosticFactory0.create(ERROR);
DiagnosticFactory0<JetCallExpression> ENUM_CLASS_CONSTRUCTOR_CALL = DiagnosticFactory0.create(ERROR);
// Sealed-specific
@@ -228,8 +228,7 @@ public class DefaultErrorMessages {
FQ_NAMES_IN_TYPES);
MAP.put(CANNOT_INFER_VISIBILITY, "Cannot infer visibility for ''{0}''. Please specify it explicitly", COMPACT);
MAP.put(ENUM_ENTRY_SHOULD_BE_INITIALIZED, "Missing delegation specifier ''{0}''", NAME);
MAP.put(ENUM_ENTRY_ILLEGAL_TYPE, "The type constructor of enum entry should be ''{0}''", NAME);
MAP.put(ENUM_ENTRY_SHOULD_BE_INITIALIZED, "Enum has no default constructor, use 'entry(parameters)'");
MAP.put(UNINITIALIZED_VARIABLE, "Variable ''{0}'' must be initialized", NAME);
MAP.put(UNINITIALIZED_PARAMETER, "Parameter ''{0}'' is uninitialized here", NAME);
@@ -266,9 +265,6 @@ public class DefaultErrorMessages {
MAP.put(DEPRECATED_SYMBOL_WITH_MESSAGE, "''{0}'' is deprecated. {1}", DEPRECATION_RENDERER, STRING);
MAP.put(LOCAL_OBJECT_NOT_ALLOWED, "Named object ''{0}'' is a singleton and cannot be local. Try to use anonymous object instead", NAME);
MAP.put(ENUM_ENTRY_USES_DEPRECATED_OR_NO_DELIMITER, "Enum entry ''{0}'' should have a correct delimiter ''{1}'' after it", NAME, STRING);
MAP.put(ENUM_ENTRY_USES_DEPRECATED_SUPER_CONSTRUCTOR, "Enum entry ''{0}'' uses deprecated super constructor syntax, use ENTRY(arguments) instead", NAME);
MAP.put(ENUM_ENTRY_AFTER_ENUM_MEMBER, "Enum entry ''{0}'' is not allowed after a member", NAME);
MAP.put(ENUM_CLASS_CONSTRUCTOR_CALL, "Enum types cannot be instantiated");
MAP.put(SEALED_CLASS_CONSTRUCTOR_CALL, "Sealed types cannot be instantiated");
@@ -849,7 +849,7 @@ public class JetParsing extends AbstractJetParsing {
/*
* enumClassBody
* : "{" enumEntries ";"? members "}"
* : "{" enumEntries (";" members)? "}"
* ;
*/
private void parseEnumClassBody() {
@@ -860,62 +860,59 @@ public class JetParsing extends AbstractJetParsing {
advance(); // LBRACE
parseEnumEntries();
// TODO: syntax without SEMICOLON is deprecated, KT-7605
consumeIf(SEMICOLON);
parseMembers(true); // Members can include also entries, but it's deprecated syntax
if (!parseEnumEntries() && !at(RBRACE)) {
error("Expecting ';' after the last enum entry or '}' to close enum class body");
}
parseMembers();
expect(RBRACE, "Expecting '}' to close enum class body");
myBuilder.restoreNewlinesState();
body.done(CLASS_BODY);
}
/**
* enumEntries
* : (enumEntry ","? )?
* : enumEntry{","}?
* ;
*
* @return true if enum regular members can follow, false otherwise
*/
private void parseEnumEntries() {
private boolean parseEnumEntries() {
while (!eof() && !at(RBRACE)) {
if (!parseEnumEntry()) {
break;
switch (parseEnumEntry()) {
case FAILED:
// Special case without any enum entries but with possible members after semicolon
if (at(SEMICOLON)) {
advance();
return true;
}
else {
return false;
}
case NO_DELIMITER:
return false;
case COMMA_DELIMITER:
break;
case SEMICOLON_DELIMITER:
return true;
}
parseEnumEntryDelimiter();
}
return false;
}
private void parseEnumEntryDelimiter() {
// TODO: syntax with SEMICOLON between enum entries is deprecated, KT-7605
if (at(SEMICOLON)) {
// Semicolon can be legally here only if member follows
PsiBuilder.Marker temp = mark();
advance(); // SEMICOLON
ModifierDetector detector = new ModifierDetector();
parseModifierList(detector, ONLY_ESCAPED_REGULAR_ANNOTATIONS);
if (!atSet(SOFT_KEYWORDS_AT_MEMBER_START) && at(IDENTIFIER)) {
// Otherwise it's old syntax that's not supported
temp.rollbackTo();
// Despite of the error, try to restore and parse next enum entry
temp = mark();
advance(); // SEMICOLON
temp.error("Expecting ','");
}
else {
temp.rollbackTo();
}
}
else {
// TODO: syntax without COMMA is deprecated (only last entry is an exception), KT-7605
consumeIf(COMMA);
}
private enum ParseEnumEntryResult {
FAILED,
NO_DELIMITER,
COMMA_DELIMITER,
SEMICOLON_DELIMITER
}
/*
* enumEntry
* : modifiers SimpleName ((":" initializer) | ("(" arguments ")"))? classBody?
* : modifiers SimpleName ("(" arguments ")")? classBody?
* ;
*/
private boolean parseEnumEntry() {
private ParseEnumEntryResult parseEnumEntry() {
PsiBuilder.Marker entry = mark();
ModifierDetector detector = new ModifierDetector();
@@ -946,23 +943,27 @@ public class JetParsing extends AbstractJetParsing {
delegatorSuperCall.done(DELEGATOR_SUPER_CALL);
initializerList.done(INITIALIZER_LIST);
}
// TODO: syntax with COLON is deprecated, should be changed to syntax with LPAR above, KT-7605
else if (at(COLON)) {
advance(); // COLON
parseInitializerList();
}
if (at(LBRACE)) {
parseClassBody();
}
boolean commaFound = at(COMMA);
if (commaFound) {
advance();
}
boolean semicolonFound = at(SEMICOLON);
if (semicolonFound) {
advance();
}
// Probably some helper function
closeDeclarationWithCommentBinders(entry, ENUM_ENTRY, true);
return true;
return semicolonFound
? ParseEnumEntryResult.SEMICOLON_DELIMITER
: (commaFound ? ParseEnumEntryResult.COMMA_DELIMITER : ParseEnumEntryResult.NO_DELIMITER);
}
else {
entry.rollbackTo();
return false;
return ParseEnumEntryResult.FAILED;
}
}
@@ -992,23 +993,8 @@ public class JetParsing extends AbstractJetParsing {
* ;
*/
private void parseMembers() {
parseMembers(false);
}
private void parseMembers(boolean deprecatedEnumEntryPossible) {
while (!eof()) {
if (at(RBRACE)) {
break;
}
if (deprecatedEnumEntryPossible && parseEnumEntry()) {
// Enum entry is deprecated here
// Error is generated later in DeclarationsChecker
parseEnumEntryDelimiter();
consumeIf(SEMICOLON);
}
else {
parseMemberDeclaration();
}
while (!eof() && !at(RBRACE)) {
parseMemberDeclaration();
}
}
@@ -1162,19 +1148,6 @@ public class JetParsing extends AbstractJetParsing {
mark.done(CONSTRUCTOR_DELEGATION_REFERENCE);
}
/*
* initializerList
* : initializer
*
*/
private void parseInitializerList() {
// In practice, only one initializer is always in use
PsiBuilder.Marker list = mark();
if (at(COMMA)) errorAndAdvance("Expecting a this or super constructor call");
parseInitializer();
list.done(INITIALIZER_LIST);
}
/*
* initializer
* : annotations constructorInvocation // type parameters may (must?) be omitted
@@ -75,6 +75,10 @@ public class JetEnumEntry extends JetClass {
return initializerList.getInitializers();
}
public boolean hasInitializer() {
return !getDelegationSpecifiers().isEmpty();
}
@Nullable
public JetInitializerList getInitializerList() {
return getStubOrPsiChild(JetStubElementTypes.INITIALIZER_LIST);
@@ -502,95 +502,14 @@ public class DeclarationsChecker {
}
}
// Temporary
// Returns true if deprecated constructor is in use, like
// ENTRY: Enum(arguments) instead of
// ENTRY(arguments)
public static boolean enumEntryUsesDeprecatedSuperConstructor(@NotNull JetEnumEntry enumEntry) {
JetInitializerList initializerList = enumEntry.getInitializerList();
if (initializerList == null || initializerList.getInitializers().isEmpty()) return false;
JetTypeReference typeReference = initializerList.getInitializers().get(0).getTypeReference();
if (typeReference == null) return false;
JetUserType userType = (JetUserType) typeReference.getTypeElement();
if (userType == null || userType.getReferenceExpression() instanceof JetEnumEntrySuperclassReferenceExpression) return false;
return true;
}
// Temporary
// Returns comma if it's an enum entry without following comma (entry is not last in enum),
// or semicolon if it's an enum entry without following semicolon, may be after comma (entry is last in enum),
// or empty string if an enum entry has the necessary following delimiter
@NotNull
private static String enumEntryExpectedDelimiter(@NotNull JetEnumEntry enumEntry) {
PsiElement next = enumEntry.getNextSibling();
while (next != null) {
if (next instanceof JetDeclaration) break;
next = next.getNextSibling();
}
JetDeclaration nextDeclaration = (JetDeclaration) next;
next = PsiUtilPackage.getNextSiblingIgnoringWhitespaceAndComments(enumEntry);
IElementType nextType = next != null ? next.getNode().getElementType() : null;
if (nextDeclaration instanceof JetEnumEntry) {
// Not last
return nextType != JetTokens.COMMA ? "," : "";
}
else {
// Last: after it we can have semicolon, just closing brace, or comma followed by semicolon / closing brace
if (nextType == JetTokens.COMMA) {
next = PsiUtilPackage.getNextSiblingIgnoringWhitespaceAndComments(next);
nextType = next != null ? next.getNode().getElementType() : null;
}
return nextType != JetTokens.SEMICOLON && nextType != JetTokens.RBRACE ? ";" : "";
}
}
public static boolean enumEntryUsesDeprecatedOrNoDelimiter(@NotNull JetEnumEntry enumEntry) {
return !enumEntryExpectedDelimiter(enumEntry).isEmpty();
}
static public boolean enumEntryAfterEnumMember(@NotNull JetEnumEntry enumEntry) {
PsiElement previous = enumEntry.getPrevSibling();
while (previous != null) {
if (previous instanceof JetEnumEntry) return false;
if (previous instanceof JetDeclaration) return true;
previous = previous.getPrevSibling();
}
return false;
}
private void checkEnumEntry(@NotNull JetEnumEntry enumEntry, @NotNull ClassDescriptor classDescriptor) {
if (enumEntryUsesDeprecatedSuperConstructor(enumEntry)) {
trace.report(Errors.ENUM_ENTRY_USES_DEPRECATED_SUPER_CONSTRUCTOR.on(enumEntry, classDescriptor));
}
String neededDelimiter = enumEntryExpectedDelimiter(enumEntry);
if (!neededDelimiter.isEmpty()) {
trace.report(Errors.ENUM_ENTRY_USES_DEPRECATED_OR_NO_DELIMITER.on(enumEntry, classDescriptor, neededDelimiter));
}
if (enumEntryAfterEnumMember(enumEntry)) {
trace.report(Errors.ENUM_ENTRY_AFTER_ENUM_MEMBER.on(enumEntry, classDescriptor));
}
DeclarationDescriptor declaration = classDescriptor.getContainingDeclaration();
if (DescriptorUtils.isEnumClass(declaration)) {
ClassDescriptor enumClass = (ClassDescriptor) declaration;
List<JetDelegationSpecifier> delegationSpecifiers = enumEntry.getDelegationSpecifiers();
ConstructorDescriptor constructor = enumClass.getUnsubstitutedPrimaryConstructor();
if ((constructor == null || !constructor.getValueParameters().isEmpty()) && delegationSpecifiers.isEmpty()) {
trace.report(ENUM_ENTRY_SHOULD_BE_INITIALIZED.on(enumEntry, enumClass));
}
for (JetDelegationSpecifier delegationSpecifier : delegationSpecifiers) {
JetTypeReference typeReference = delegationSpecifier.getTypeReference();
if (typeReference != null) {
JetType type = trace.getBindingContext().get(TYPE, typeReference);
if (type != null) {
JetType enumType = enumClass.getDefaultType();
if (!type.getConstructor().equals(enumType.getConstructor())) {
trace.report(ENUM_ENTRY_ILLEGAL_TYPE.on(typeReference, enumClass));
}
}
}
if ((constructor == null || !constructor.getValueParameters().isEmpty()) && !enumEntry.hasInitializer()) {
trace.report(ENUM_ENTRY_SHOULD_BE_INITIALIZED.on(enumEntry));
}
}
else {
@@ -1,5 +1,5 @@
// !DIAGNOSTICS: -UNUSED_PARAMETER
//KT-1193 Check enum entry supertype
//KT-1193 Check enum entry supertype / initialization
package kt1193
@@ -9,8 +9,5 @@ enum class MyEnum(val i: Int) {
}
open class A(x: Int = 1)
enum class MyOtherEnum(val i: Int) {
X : <!ENUM_ENTRY_USES_DEPRECATED_SUPER_CONSTRUCTOR!><!ENUM_ENTRY_ILLEGAL_TYPE!>A<!>(3)<!>,
Y : <!ENUM_ENTRY_USES_DEPRECATED_SUPER_CONSTRUCTOR!><!ENUM_ENTRY_ILLEGAL_TYPE!>A<!>()<!>,
Z : <!ENUM_ENTRY_USES_DEPRECATED_SUPER_CONSTRUCTOR!><!ENUM_ENTRY_ILLEGAL_TYPE!>A<!>(3)<!> {}
}
val x: MyEnum = MyEnum.A
@@ -1,6 +1,7 @@
package
package kt1193 {
internal val x: kt1193.MyEnum
internal open class A {
public constructor A(/*0*/ x: kotlin.Int = ...)
@@ -45,40 +46,4 @@ package kt1193 {
public final /*synthesized*/ fun valueOf(/*0*/ value: kotlin.String): kt1193.MyEnum
public final /*synthesized*/ fun values(): kotlin.Array<kt1193.MyEnum>
}
internal final enum class MyOtherEnum : kotlin.Enum<kt1193.MyOtherEnum> {
public enum entry X : kt1193.A {
private constructor X()
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
public enum entry Y : kt1193.A {
private constructor Y()
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
public enum entry Z : kt1193.A {
private constructor Z()
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
private constructor MyOtherEnum(/*0*/ i: kotlin.Int)
internal final val i: kotlin.Int
public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: kt1193.MyOtherEnum): kotlin.Int
public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun name(): kotlin.String
public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
// Static members
public final /*synthesized*/ fun valueOf(/*0*/ value: kotlin.String): kt1193.MyOtherEnum
public final /*synthesized*/ fun values(): kotlin.Array<kt1193.MyOtherEnum>
}
}
@@ -2,6 +2,7 @@ package abstract
enum class MyEnum() {
<!ABSTRACT_MEMBER_NOT_IMPLEMENTED!>INSTANCE<!>;
//properties
<!MUST_BE_INITIALIZED_OR_BE_ABSTRACT!>val a: Int<!>
val a1: Int = 1
@@ -3,6 +3,45 @@ package
package abstract {
internal final enum class MyEnum : kotlin.Enum<abstract.MyEnum> {
public enum entry INSTANCE : abstract.MyEnum {
private constructor INSTANCE()
internal final override /*1*/ /*fake_override*/ val a: kotlin.Int
internal final override /*1*/ /*fake_override*/ val a1: kotlin.Int
internal abstract override /*1*/ /*fake_override*/ val a2: kotlin.Int
internal abstract override /*1*/ /*fake_override*/ val a3: kotlin.Int
internal final override /*1*/ /*fake_override*/ var b: kotlin.Int
internal final override /*1*/ /*fake_override*/ var b1: kotlin.Int
internal abstract override /*1*/ /*fake_override*/ var b2: kotlin.Int
internal abstract override /*1*/ /*fake_override*/ var b3: kotlin.Int
internal final override /*1*/ /*fake_override*/ var c: kotlin.Int
internal final override /*1*/ /*fake_override*/ var c1: kotlin.Int
internal abstract override /*1*/ /*fake_override*/ var c2: kotlin.Int
internal abstract override /*1*/ /*fake_override*/ var c3: kotlin.Int
internal final override /*1*/ /*fake_override*/ val e: kotlin.Int
internal final override /*1*/ /*fake_override*/ val e1: kotlin.Int
internal abstract override /*1*/ /*fake_override*/ val e2: kotlin.Int
internal abstract override /*1*/ /*fake_override*/ val e3: kotlin.Int
internal final override /*1*/ /*fake_override*/ var i: kotlin.Int
internal final override /*1*/ /*fake_override*/ var i1: kotlin.Int
internal final override /*1*/ /*fake_override*/ var j: kotlin.Int
internal final override /*1*/ /*fake_override*/ var j1: kotlin.Int
internal final override /*1*/ /*fake_override*/ var k: kotlin.Int
internal final override /*1*/ /*fake_override*/ var k1: kotlin.Int
internal final override /*1*/ /*fake_override*/ var l: kotlin.Int
internal final override /*1*/ /*fake_override*/ var l1: kotlin.Int
internal final override /*1*/ /*fake_override*/ var n: kotlin.Int
public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: abstract.MyEnum): kotlin.Int
public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
internal final override /*1*/ /*fake_override*/ fun f(): kotlin.Unit
internal final override /*1*/ /*fake_override*/ fun g(): kotlin.Unit
internal abstract override /*1*/ /*fake_override*/ fun h(): kotlin.Unit
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
internal abstract override /*1*/ /*fake_override*/ fun j(): kotlin.Unit
public final override /*1*/ /*fake_override*/ fun name(): kotlin.String
public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
private constructor MyEnum()
internal final val a: kotlin.Int
internal final val a1: kotlin.Int = 1
@@ -1,10 +0,0 @@
// KT-7753: attempt to call enum constructor explicitly
enum class A(val c: Int) {
// No errors at both places, but warnings about deprecated
ONE: <!ENUM_ENTRY_USES_DEPRECATED_SUPER_CONSTRUCTOR!>A(1)<!>,
TWO: <!ENUM_ENTRY_USES_DEPRECATED_SUPER_CONSTRUCTOR!>A(2)<!>;
fun getA(): A {
return ONE
}
}
@@ -1,41 +0,0 @@
package
internal final enum class A : kotlin.Enum<A> {
public enum entry ONE : A {
private constructor ONE()
internal final override /*1*/ /*fake_override*/ val c: kotlin.Int
public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: A): kotlin.Int
public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
internal final override /*1*/ /*fake_override*/ fun getA(): A
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun name(): kotlin.String
public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
public enum entry TWO : A {
private constructor TWO()
internal final override /*1*/ /*fake_override*/ val c: kotlin.Int
public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: A): kotlin.Int
public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
internal final override /*1*/ /*fake_override*/ fun getA(): A
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun name(): kotlin.String
public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
private constructor A(/*0*/ c: kotlin.Int)
internal final val c: kotlin.Int
public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: A): kotlin.Int
public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
internal final fun getA(): A
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun name(): kotlin.String
public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
// Static members
public final /*synthesized*/ fun valueOf(/*0*/ value: kotlin.String): A
public final /*synthesized*/ fun values(): kotlin.Array<A>
}
@@ -1,6 +0,0 @@
enum class MyEnum {
A,
<!ENUM_ENTRY_USES_DEPRECATED_OR_NO_DELIMITER!>B<!>,
val z = 42
}
@@ -1,38 +0,0 @@
package
internal final enum class MyEnum : kotlin.Enum<MyEnum> {
public enum entry A : MyEnum {
private constructor A()
internal final override /*1*/ /*fake_override*/ val z: kotlin.Int
public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: MyEnum): kotlin.Int
public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun name(): kotlin.String
public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
public enum entry B : MyEnum {
private constructor B()
internal final override /*1*/ /*fake_override*/ val z: kotlin.Int
public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: MyEnum): kotlin.Int
public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun name(): kotlin.String
public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
private constructor MyEnum()
internal final val z: kotlin.Int = 42
public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: MyEnum): kotlin.Int
public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun name(): kotlin.String
public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
// Static members
public final /*synthesized*/ fun valueOf(/*0*/ value: kotlin.String): MyEnum
public final /*synthesized*/ fun values(): kotlin.Array<MyEnum>
}
@@ -1,10 +0,0 @@
enum class MyEnum {
// Should be comma instead of semicolon
<!ENUM_ENTRY_USES_DEPRECATED_OR_NO_DELIMITER!>A<!><!SYNTAX!>;<!>
B,
<!ENUM_ENTRY_USES_DEPRECATED_OR_NO_DELIMITER!>C<!><!SYNTAX!>;<!>
// Semicolon missed, comma is optional
<!ENUM_ENTRY_USES_DEPRECATED_OR_NO_DELIMITER!>D<!>,
fun foo() = 0
}
@@ -1,60 +0,0 @@
package
internal final enum class MyEnum : kotlin.Enum<MyEnum> {
public enum entry A : MyEnum {
private constructor A()
public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: MyEnum): kotlin.Int
public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
internal final override /*1*/ /*fake_override*/ fun foo(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun name(): kotlin.String
public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
public enum entry B : MyEnum {
private constructor B()
public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: MyEnum): kotlin.Int
public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
internal final override /*1*/ /*fake_override*/ fun foo(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun name(): kotlin.String
public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
public enum entry C : MyEnum {
private constructor C()
public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: MyEnum): kotlin.Int
public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
internal final override /*1*/ /*fake_override*/ fun foo(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun name(): kotlin.String
public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
public enum entry D : MyEnum {
private constructor D()
public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: MyEnum): kotlin.Int
public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
internal final override /*1*/ /*fake_override*/ fun foo(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun name(): kotlin.String
public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
private constructor MyEnum()
public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: MyEnum): kotlin.Int
public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
internal final fun foo(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun name(): kotlin.String
public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
// Static members
public final /*synthesized*/ fun valueOf(/*0*/ value: kotlin.String): MyEnum
public final /*synthesized*/ fun values(): kotlin.Array<MyEnum>
}
@@ -1,9 +0,0 @@
enum class MixedEnum {
companion object {
val first = 1
}
fun foo(): String = "xyz"
<!ENUM_ENTRY_USES_DEPRECATED_OR_NO_DELIMITER, ENUM_ENTRY_AFTER_ENUM_MEMBER!>ENTRY1<!>
<!ENUM_ENTRY_USES_DEPRECATED_OR_NO_DELIMITER!>ENTRY2<!>
ENTRY3
}
@@ -1,57 +0,0 @@
package
internal final enum class MixedEnum : kotlin.Enum<MixedEnum> {
public enum entry ENTRY1 : MixedEnum {
private constructor ENTRY1()
public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: MixedEnum): kotlin.Int
public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
internal final override /*1*/ /*fake_override*/ fun foo(): kotlin.String
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun name(): kotlin.String
public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
public enum entry ENTRY2 : MixedEnum {
private constructor ENTRY2()
public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: MixedEnum): kotlin.Int
public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
internal final override /*1*/ /*fake_override*/ fun foo(): kotlin.String
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun name(): kotlin.String
public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
public enum entry ENTRY3 : MixedEnum {
private constructor ENTRY3()
public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: MixedEnum): kotlin.Int
public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
internal final override /*1*/ /*fake_override*/ fun foo(): kotlin.String
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun name(): kotlin.String
public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
private constructor MixedEnum()
public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: MixedEnum): kotlin.Int
public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
internal final fun foo(): kotlin.String
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun name(): kotlin.String
public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
public companion object Companion {
private constructor Companion()
internal final val first: kotlin.Int = 1
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open 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): MixedEnum
public final /*synthesized*/ fun values(): kotlin.Array<MixedEnum>
}
@@ -1,3 +0,0 @@
enum class MyEnum {
A, B, <!ENUM_ENTRY_USES_DEPRECATED_OR_NO_DELIMITER!>C<!> D, <!ENUM_ENTRY_USES_DEPRECATED_OR_NO_DELIMITER!>E<!> F
}
@@ -1,75 +0,0 @@
package
internal final enum class MyEnum : kotlin.Enum<MyEnum> {
public enum entry A : MyEnum {
private constructor A()
public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: MyEnum): kotlin.Int
public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun name(): kotlin.String
public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
public enum entry B : MyEnum {
private constructor B()
public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: MyEnum): kotlin.Int
public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun name(): kotlin.String
public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
public enum entry C : MyEnum {
private constructor C()
public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: MyEnum): kotlin.Int
public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun name(): kotlin.String
public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
public enum entry D : MyEnum {
private constructor D()
public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: MyEnum): kotlin.Int
public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun name(): kotlin.String
public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
public enum entry E : MyEnum {
private constructor E()
public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: MyEnum): kotlin.Int
public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun name(): kotlin.String
public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
public enum entry F : MyEnum {
private constructor F()
public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: MyEnum): kotlin.Int
public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun name(): kotlin.String
public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
private constructor MyEnum()
public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: MyEnum): kotlin.Int
public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun name(): kotlin.String
public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
// Static members
public final /*synthesized*/ fun valueOf(/*0*/ value: kotlin.String): MyEnum
public final /*synthesized*/ fun values(): kotlin.Array<MyEnum>
}
-9
View File
@@ -1,9 +0,0 @@
enum class MixedEnum {
<!ENUM_ENTRY_USES_DEPRECATED_OR_NO_DELIMITER!>ENTRY1<!>
companion object {
val first = 1
}
<!ENUM_ENTRY_USES_DEPRECATED_OR_NO_DELIMITER, ENUM_ENTRY_AFTER_ENUM_MEMBER!>ENTRY2<!>
fun foo(): String = "xyz"
<!ENUM_ENTRY_AFTER_ENUM_MEMBER!>ENTRY3<!>
}
-57
View File
@@ -1,57 +0,0 @@
package
internal final enum class MixedEnum : kotlin.Enum<MixedEnum> {
public enum entry ENTRY1 : MixedEnum {
private constructor ENTRY1()
public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: MixedEnum): kotlin.Int
public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
internal final override /*1*/ /*fake_override*/ fun foo(): kotlin.String
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun name(): kotlin.String
public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
public enum entry ENTRY2 : MixedEnum {
private constructor ENTRY2()
public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: MixedEnum): kotlin.Int
public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
internal final override /*1*/ /*fake_override*/ fun foo(): kotlin.String
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun name(): kotlin.String
public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
public enum entry ENTRY3 : MixedEnum {
private constructor ENTRY3()
public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: MixedEnum): kotlin.Int
public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
internal final override /*1*/ /*fake_override*/ fun foo(): kotlin.String
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun name(): kotlin.String
public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
private constructor MixedEnum()
public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: MixedEnum): kotlin.Int
public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
internal final fun foo(): kotlin.String
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun name(): kotlin.String
public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
public companion object Companion {
private constructor Companion()
internal final val first: kotlin.Int = 1
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open 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): MixedEnum
public final /*synthesized*/ fun values(): kotlin.Array<MixedEnum>
}
@@ -1,9 +0,0 @@
enum class MixedEnum {
<!ENUM_ENTRY_USES_DEPRECATED_OR_NO_DELIMITER!>ENTRY1<!>,
companion object {
val first = 1
}
<!ENUM_ENTRY_USES_DEPRECATED_OR_NO_DELIMITER, ENUM_ENTRY_AFTER_ENUM_MEMBER!>ENTRY2<!>,
fun foo(): String = "xyz"
<!ENUM_ENTRY_AFTER_ENUM_MEMBER!>ENTRY3<!>
}
@@ -1,57 +0,0 @@
package
internal final enum class MixedEnum : kotlin.Enum<MixedEnum> {
public enum entry ENTRY1 : MixedEnum {
private constructor ENTRY1()
public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: MixedEnum): kotlin.Int
public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
internal final override /*1*/ /*fake_override*/ fun foo(): kotlin.String
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun name(): kotlin.String
public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
public enum entry ENTRY2 : MixedEnum {
private constructor ENTRY2()
public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: MixedEnum): kotlin.Int
public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
internal final override /*1*/ /*fake_override*/ fun foo(): kotlin.String
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun name(): kotlin.String
public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
public enum entry ENTRY3 : MixedEnum {
private constructor ENTRY3()
public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: MixedEnum): kotlin.Int
public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
internal final override /*1*/ /*fake_override*/ fun foo(): kotlin.String
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun name(): kotlin.String
public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
private constructor MixedEnum()
public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: MixedEnum): kotlin.Int
public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
internal final fun foo(): kotlin.String
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun name(): kotlin.String
public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
public companion object Companion {
private constructor Companion()
internal final val first: kotlin.Int = 1
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open 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): MixedEnum
public final /*synthesized*/ fun values(): kotlin.Array<MixedEnum>
}
@@ -1,9 +0,0 @@
enum class MixedEnum {
ENTRY1;
companion object {
val first = 1
}
<!ENUM_ENTRY_AFTER_ENUM_MEMBER!>ENTRY2<!>;
fun foo(): String = "xyz"
<!ENUM_ENTRY_AFTER_ENUM_MEMBER!>ENTRY3<!>
}
@@ -1,57 +0,0 @@
package
internal final enum class MixedEnum : kotlin.Enum<MixedEnum> {
public enum entry ENTRY1 : MixedEnum {
private constructor ENTRY1()
public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: MixedEnum): kotlin.Int
public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
internal final override /*1*/ /*fake_override*/ fun foo(): kotlin.String
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun name(): kotlin.String
public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
public enum entry ENTRY2 : MixedEnum {
private constructor ENTRY2()
public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: MixedEnum): kotlin.Int
public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
internal final override /*1*/ /*fake_override*/ fun foo(): kotlin.String
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun name(): kotlin.String
public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
public enum entry ENTRY3 : MixedEnum {
private constructor ENTRY3()
public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: MixedEnum): kotlin.Int
public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
internal final override /*1*/ /*fake_override*/ fun foo(): kotlin.String
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun name(): kotlin.String
public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
private constructor MixedEnum()
public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: MixedEnum): kotlin.Int
public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
internal final fun foo(): kotlin.String
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun name(): kotlin.String
public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
public companion object Companion {
private constructor Companion()
internal final val first: kotlin.Int = 1
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open 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): MixedEnum
public final /*synthesized*/ fun values(): kotlin.Array<MixedEnum>
}
@@ -1,4 +0,0 @@
enum class MyEnum {
<!ENUM_ENTRY_USES_DEPRECATED_OR_NO_DELIMITER!>A<!>
B
}
@@ -1,35 +0,0 @@
package
internal final enum class MyEnum : kotlin.Enum<MyEnum> {
public enum entry A : MyEnum {
private constructor A()
public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: MyEnum): kotlin.Int
public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun name(): kotlin.String
public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
public enum entry B : MyEnum {
private constructor B()
public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: MyEnum): kotlin.Int
public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun name(): kotlin.String
public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
private constructor MyEnum()
public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: MyEnum): kotlin.Int
public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun name(): kotlin.String
public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
// Static members
public final /*synthesized*/ fun valueOf(/*0*/ value: kotlin.String): MyEnum
public final /*synthesized*/ fun values(): kotlin.Array<MyEnum>
}
@@ -1,6 +0,0 @@
enum class MyEnum {
A,
<!ENUM_ENTRY_USES_DEPRECATED_OR_NO_DELIMITER!>B<!>
val z = 42
}
@@ -1,38 +0,0 @@
package
internal final enum class MyEnum : kotlin.Enum<MyEnum> {
public enum entry A : MyEnum {
private constructor A()
internal final override /*1*/ /*fake_override*/ val z: kotlin.Int
public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: MyEnum): kotlin.Int
public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun name(): kotlin.String
public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
public enum entry B : MyEnum {
private constructor B()
internal final override /*1*/ /*fake_override*/ val z: kotlin.Int
public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: MyEnum): kotlin.Int
public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun name(): kotlin.String
public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
private constructor MyEnum()
internal final val z: kotlin.Int = 42
public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: MyEnum): kotlin.Int
public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun name(): kotlin.String
public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
// Static members
public final /*synthesized*/ fun valueOf(/*0*/ value: kotlin.String): MyEnum
public final /*synthesized*/ fun values(): kotlin.Array<MyEnum>
}
@@ -1,6 +0,0 @@
enum class MyEnum(val myArg: Int) {
FIRST(1),
SECOND: <!ENUM_ENTRY_USES_DEPRECATED_SUPER_CONSTRUCTOR!>MyEnum(2)<!>,
THIRD(3),
FOURTH(4)
}
@@ -1,60 +0,0 @@
package
internal final enum class MyEnum : kotlin.Enum<MyEnum> {
public enum entry FIRST : MyEnum {
private constructor FIRST()
internal final override /*1*/ /*fake_override*/ val myArg: kotlin.Int
public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: MyEnum): kotlin.Int
public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun name(): kotlin.String
public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
public enum entry SECOND : MyEnum {
private constructor SECOND()
internal final override /*1*/ /*fake_override*/ val myArg: kotlin.Int
public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: MyEnum): kotlin.Int
public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun name(): kotlin.String
public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
public enum entry THIRD : MyEnum {
private constructor THIRD()
internal final override /*1*/ /*fake_override*/ val myArg: kotlin.Int
public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: MyEnum): kotlin.Int
public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun name(): kotlin.String
public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
public enum entry FOURTH : MyEnum {
private constructor FOURTH()
internal final override /*1*/ /*fake_override*/ val myArg: kotlin.Int
public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: MyEnum): kotlin.Int
public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun name(): kotlin.String
public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
private constructor MyEnum(/*0*/ myArg: kotlin.Int)
internal final val myArg: kotlin.Int
public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: MyEnum): kotlin.Int
public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun name(): kotlin.String
public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
// Static members
public final /*synthesized*/ fun valueOf(/*0*/ value: kotlin.String): MyEnum
public final /*synthesized*/ fun values(): kotlin.Array<MyEnum>
}
@@ -1,6 +0,0 @@
enum class MyEnum(val myArg: Int) {
FIRST(1),
SECOND: <!ENUM_ENTRY_USES_DEPRECATED_SUPER_CONSTRUCTOR!>MyEnum(myArg = 2)<!>,
THIRD(3),
FOURTH(4)
}
@@ -1,60 +0,0 @@
package
internal final enum class MyEnum : kotlin.Enum<MyEnum> {
public enum entry FIRST : MyEnum {
private constructor FIRST()
internal final override /*1*/ /*fake_override*/ val myArg: kotlin.Int
public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: MyEnum): kotlin.Int
public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun name(): kotlin.String
public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
public enum entry SECOND : MyEnum {
private constructor SECOND()
internal final override /*1*/ /*fake_override*/ val myArg: kotlin.Int
public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: MyEnum): kotlin.Int
public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun name(): kotlin.String
public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
public enum entry THIRD : MyEnum {
private constructor THIRD()
internal final override /*1*/ /*fake_override*/ val myArg: kotlin.Int
public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: MyEnum): kotlin.Int
public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun name(): kotlin.String
public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
public enum entry FOURTH : MyEnum {
private constructor FOURTH()
internal final override /*1*/ /*fake_override*/ val myArg: kotlin.Int
public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: MyEnum): kotlin.Int
public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun name(): kotlin.String
public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
private constructor MyEnum(/*0*/ myArg: kotlin.Int)
internal final val myArg: kotlin.Int
public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: MyEnum): kotlin.Int
public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun name(): kotlin.String
public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
// Static members
public final /*synthesized*/ fun valueOf(/*0*/ value: kotlin.String): MyEnum
public final /*synthesized*/ fun values(): kotlin.Array<MyEnum>
}
@@ -1,6 +0,0 @@
enum class MyEnum(val myArg: Int) {
FIRST: <!ENUM_ENTRY_USES_DEPRECATED_SUPER_CONSTRUCTOR!>MyEnum(1)<!>,
SECOND: <!ENUM_ENTRY_USES_DEPRECATED_SUPER_CONSTRUCTOR!>MyEnum(2)<!>,
THIRD: <!ENUM_ENTRY_USES_DEPRECATED_SUPER_CONSTRUCTOR!>MyEnum(3)<!>,
FOURTH: <!ENUM_ENTRY_USES_DEPRECATED_SUPER_CONSTRUCTOR!>MyEnum(4)<!>
}
@@ -1,60 +0,0 @@
package
internal final enum class MyEnum : kotlin.Enum<MyEnum> {
public enum entry FIRST : MyEnum {
private constructor FIRST()
internal final override /*1*/ /*fake_override*/ val myArg: kotlin.Int
public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: MyEnum): kotlin.Int
public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun name(): kotlin.String
public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
public enum entry SECOND : MyEnum {
private constructor SECOND()
internal final override /*1*/ /*fake_override*/ val myArg: kotlin.Int
public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: MyEnum): kotlin.Int
public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun name(): kotlin.String
public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
public enum entry THIRD : MyEnum {
private constructor THIRD()
internal final override /*1*/ /*fake_override*/ val myArg: kotlin.Int
public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: MyEnum): kotlin.Int
public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun name(): kotlin.String
public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
public enum entry FOURTH : MyEnum {
private constructor FOURTH()
internal final override /*1*/ /*fake_override*/ val myArg: kotlin.Int
public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: MyEnum): kotlin.Int
public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun name(): kotlin.String
public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
private constructor MyEnum(/*0*/ myArg: kotlin.Int)
internal final val myArg: kotlin.Int
public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: MyEnum): kotlin.Int
public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun name(): kotlin.String
public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
// Static members
public final /*synthesized*/ fun valueOf(/*0*/ value: kotlin.String): MyEnum
public final /*synthesized*/ fun values(): kotlin.Array<MyEnum>
}
@@ -1,8 +0,0 @@
enum class MyEnum {
<!ENUM_ENTRY_USES_DEPRECATED_OR_NO_DELIMITER!>A<!><!SYNTAX!>;<!>
<!ENUM_ENTRY_USES_DEPRECATED_OR_NO_DELIMITER!>B<!><!SYNTAX!>;<!>
<!ENUM_ENTRY_USES_DEPRECATED_OR_NO_DELIMITER!>C<!><!SYNTAX!>;<!>
<!ENUM_ENTRY_USES_DEPRECATED_OR_NO_DELIMITER!>D<!>
fun foo() = 0
}
@@ -1,60 +0,0 @@
package
internal final enum class MyEnum : kotlin.Enum<MyEnum> {
public enum entry A : MyEnum {
private constructor A()
public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: MyEnum): kotlin.Int
public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
internal final override /*1*/ /*fake_override*/ fun foo(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun name(): kotlin.String
public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
public enum entry B : MyEnum {
private constructor B()
public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: MyEnum): kotlin.Int
public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
internal final override /*1*/ /*fake_override*/ fun foo(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun name(): kotlin.String
public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
public enum entry C : MyEnum {
private constructor C()
public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: MyEnum): kotlin.Int
public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
internal final override /*1*/ /*fake_override*/ fun foo(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun name(): kotlin.String
public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
public enum entry D : MyEnum {
private constructor D()
public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: MyEnum): kotlin.Int
public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
internal final override /*1*/ /*fake_override*/ fun foo(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun name(): kotlin.String
public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
private constructor MyEnum()
public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: MyEnum): kotlin.Int
public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
internal final fun foo(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun name(): kotlin.String
public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
// Static members
public final /*synthesized*/ fun valueOf(/*0*/ value: kotlin.String): MyEnum
public final /*synthesized*/ fun values(): kotlin.Array<MyEnum>
}
@@ -1,6 +1,6 @@
<!WRONG_MODIFIER_TARGET!>enum<!> interface Some {
// Enum part
<!ABSTRACT_MEMBER_NOT_IMPLEMENTED, ENUM_ENTRY_USES_DEPRECATED_OR_NO_DELIMITER!>D<!>
<!ABSTRACT_MEMBER_NOT_IMPLEMENTED!>D<!>;
// Interface like part
fun test()
@@ -14,7 +14,7 @@ enum class E {
<!WRONG_MODIFIER_TARGET!>final<!> FINAL,
<!WRONG_MODIFIER_TARGET!>inner<!> INNER,
<!ENUM_ENTRY_USES_DEPRECATED_OR_NO_DELIMITER!>annotation<!> ANNOTATION,
<!WRONG_ANNOTATION_TARGET!>@annotation<!> ANNOTATION,
<!WRONG_MODIFIER_TARGET!>enum<!> ENUM,
<!WRONG_MODIFIER_TARGET!>out<!> OUT,
<!WRONG_MODIFIER_TARGET!>in<!> IN,
@@ -102,17 +102,7 @@ internal final enum class E : kotlin.Enum<E> {
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
public enum entry annotation : E {
private constructor annotation()
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
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun name(): kotlin.String
public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
public enum entry ANNOTATION : E {
kotlin.annotation.annotation() public enum entry ANNOTATION : E {
private constructor ANNOTATION()
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
@@ -3,5 +3,5 @@
package bug
public enum class Foo<!TYPE_PARAMETERS_IN_ENUM!><T><!> {
A : <!ENUM_ENTRY_USES_DEPRECATED_SUPER_CONSTRUCTOR!>Foo<String>()<!>
<!NO_GENERICS_IN_SUPERTYPE_SPECIFIER!>A<!><!WRONG_NUMBER_OF_TYPE_ARGUMENTS!><!>()
}
@@ -3,14 +3,8 @@ package
package bug {
public final enum class Foo</*0*/ T> : kotlin.Enum<bug.Foo<T>> {
public enum entry A : bug.Foo<kotlin.String> {
public enum entry A {
private constructor A()
public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: bug.Foo<kotlin.String>): kotlin.Int
public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun name(): kotlin.String
public final override /*1*/ /*fake_override*/ fun ordinal(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
private constructor Foo</*0*/ T>()
+2 -2
View File
@@ -1,5 +1,5 @@
enum class MyEnum {
// Here we have a problem
// while checking on a deprecated super constructor
FIRST:
<!SYNTAX!><!>}
FIRST<!SYNTAX!><!SYNTAX!><!>:<!>
}
+1 -1
View File
@@ -1,5 +1,5 @@
enum class E {
E1
E1;
fun foo() = {
test.lineNumber()
@@ -1,7 +1,8 @@
// ALLOW_AST_ACCESS
package test
enum class En(val b: Boolean = true, val i: Int = 0) {
E1: En()
E2: En(true, 1)
E3: En(i = 2)
E1(),
E2(true, 1),
E3(i = 2)
}
@@ -2,7 +2,7 @@
package test
enum class Enum {
ENTRY1 ENTRY2
ENTRY1, ENTRY2;
inner class Inner
@@ -1,6 +1,7 @@
// ALLOW_AST_ACCESS
package test
enum class Test(a : Int) {
A : Test(0)
B : Test(0) {}
A(0),
B(0) {}
}
@@ -1,12 +1,12 @@
package test
enum class E {
ONE
TWO
THREE
FOUR
FIVE
SIX
SEVEN
ONE,
TWO,
THREE,
FOUR,
FIVE,
SIX,
SEVEN,
EIGHT
}
+3 -3
View File
@@ -57,9 +57,9 @@ public fun foo() {
} // end
enum class E {
A // this is A
/** This is B */ B
/* And this is C */ C
A, // this is A
/** This is B */ B,
/* And this is C */ C,
/** This is X */
X {
override fun toString() = "X"
+3
View File
@@ -352,6 +352,7 @@ JetFile: CommentsBinding.kt
ENUM_ENTRY
OBJECT_DECLARATION_NAME
PsiElement(IDENTIFIER)('A')
PsiElement(COMMA)(',')
PsiWhiteSpace(' ')
PsiComment(EOL_COMMENT)('// this is A')
PsiWhiteSpace('\n ')
@@ -364,12 +365,14 @@ JetFile: CommentsBinding.kt
PsiWhiteSpace(' ')
OBJECT_DECLARATION_NAME
PsiElement(IDENTIFIER)('B')
PsiElement(COMMA)(',')
PsiWhiteSpace('\n ')
ENUM_ENTRY
PsiComment(BLOCK_COMMENT)('/* And this is C */')
PsiWhiteSpace(' ')
OBJECT_DECLARATION_NAME
PsiElement(IDENTIFIER)('C')
PsiElement(COMMA)(',')
PsiWhiteSpace('\n ')
ENUM_ENTRY
KDoc
+5 -5
View File
@@ -44,7 +44,7 @@ interface A {
}
enum class D {
A B
A, B;
companion object
}
@@ -68,15 +68,15 @@ val t = companion object {
}
enum class I {
A
B
A,
B;
companion object
}
enum class I {
A
B
A,
B;
companion object {}
}
+6
View File
@@ -219,10 +219,12 @@ JetFile: DefaultKeyword.kt
ENUM_ENTRY
OBJECT_DECLARATION_NAME
PsiElement(IDENTIFIER)('A')
PsiElement(COMMA)(',')
PsiWhiteSpace(' ')
ENUM_ENTRY
OBJECT_DECLARATION_NAME
PsiElement(IDENTIFIER)('B')
PsiElement(SEMICOLON)(';')
PsiWhiteSpace('\n\n ')
OBJECT_DECLARATION
MODIFIER_LIST
@@ -326,10 +328,12 @@ JetFile: DefaultKeyword.kt
ENUM_ENTRY
OBJECT_DECLARATION_NAME
PsiElement(IDENTIFIER)('A')
PsiElement(COMMA)(',')
PsiWhiteSpace('\n ')
ENUM_ENTRY
OBJECT_DECLARATION_NAME
PsiElement(IDENTIFIER)('B')
PsiElement(SEMICOLON)(';')
PsiWhiteSpace('\n\n ')
OBJECT_DECLARATION
MODIFIER_LIST
@@ -353,10 +357,12 @@ JetFile: DefaultKeyword.kt
ENUM_ENTRY
OBJECT_DECLARATION_NAME
PsiElement(IDENTIFIER)('A')
PsiElement(COMMA)(',')
PsiWhiteSpace('\n ')
ENUM_ENTRY
OBJECT_DECLARATION_NAME
PsiElement(IDENTIFIER)('B')
PsiElement(SEMICOLON)(';')
PsiWhiteSpace('\n\n ')
OBJECT_DECLARATION
MODIFIER_LIST
+6 -6
View File
@@ -17,23 +17,23 @@ JetFile: EnumCommas.kt
ENUM_ENTRY
OBJECT_DECLARATION_NAME
PsiElement(IDENTIFIER)('NORTH')
PsiElement(COMMA)(',')
PsiElement(COMMA)(',')
PsiWhiteSpace('\n ')
ENUM_ENTRY
OBJECT_DECLARATION_NAME
PsiElement(IDENTIFIER)('SOUTH')
PsiElement(COMMA)(',')
PsiElement(COMMA)(',')
PsiWhiteSpace('\n ')
ENUM_ENTRY
OBJECT_DECLARATION_NAME
PsiElement(IDENTIFIER)('WEST')
PsiElement(COMMA)(',')
PsiElement(COMMA)(',')
PsiWhiteSpace('\n ')
ENUM_ENTRY
OBJECT_DECLARATION_NAME
PsiElement(IDENTIFIER)('EAST')
PsiElement(COMMA)(',')
PsiWhiteSpace('\n ')
PsiElement(SEMICOLON)(';')
PsiElement(COMMA)(',')
PsiWhiteSpace('\n ')
PsiElement(SEMICOLON)(';')
PsiWhiteSpace('\n')
PsiElement(RBRACE)('}')
@@ -0,0 +1,5 @@
enum class My {
FIRST,
@inline fun foo() {}
}
+45
View File
@@ -0,0 +1,45 @@
JetFile: EnumEntryCommaAnnotatedMember.kt
PACKAGE_DIRECTIVE
<empty list>
IMPORT_LIST
<empty list>
CLASS
MODIFIER_LIST
PsiElement(enum)('enum')
PsiWhiteSpace(' ')
PsiElement(class)('class')
PsiWhiteSpace(' ')
PsiElement(IDENTIFIER)('My')
PsiWhiteSpace(' ')
CLASS_BODY
PsiElement(LBRACE)('{')
PsiWhiteSpace('\n ')
ENUM_ENTRY
OBJECT_DECLARATION_NAME
PsiElement(IDENTIFIER)('FIRST')
PsiElement(COMMA)(',')
PsiErrorElement:Expecting ';' after the last enum entry or '}' to close enum class body
<empty list>
PsiWhiteSpace('\n\n ')
FUN
MODIFIER_LIST
ANNOTATION_ENTRY
PsiElement(AT)('@')
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
USER_TYPE
REFERENCE_EXPRESSION
PsiElement(IDENTIFIER)('inline')
PsiWhiteSpace(' ')
PsiElement(fun)('fun')
PsiWhiteSpace(' ')
PsiElement(IDENTIFIER)('foo')
VALUE_PARAMETER_LIST
PsiElement(LPAR)('(')
PsiElement(RPAR)(')')
PsiWhiteSpace(' ')
BLOCK
PsiElement(LBRACE)('{')
PsiElement(RBRACE)('}')
PsiWhiteSpace('\n')
PsiElement(RBRACE)('}')
+5
View File
@@ -0,0 +1,5 @@
enum class My {
FIRST,
inline fun foo() {}
}
+40
View File
@@ -0,0 +1,40 @@
JetFile: EnumEntryCommaInlineMember.kt
PACKAGE_DIRECTIVE
<empty list>
IMPORT_LIST
<empty list>
CLASS
MODIFIER_LIST
PsiElement(enum)('enum')
PsiWhiteSpace(' ')
PsiElement(class)('class')
PsiWhiteSpace(' ')
PsiElement(IDENTIFIER)('My')
PsiWhiteSpace(' ')
CLASS_BODY
PsiElement(LBRACE)('{')
PsiWhiteSpace('\n ')
ENUM_ENTRY
OBJECT_DECLARATION_NAME
PsiElement(IDENTIFIER)('FIRST')
PsiElement(COMMA)(',')
PsiWhiteSpace('\n\n ')
ENUM_ENTRY
OBJECT_DECLARATION_NAME
PsiElement(IDENTIFIER)('inline')
PsiErrorElement:Expecting ';' after the last enum entry or '}' to close enum class body
<empty list>
PsiWhiteSpace(' ')
FUN
PsiElement(fun)('fun')
PsiWhiteSpace(' ')
PsiElement(IDENTIFIER)('foo')
VALUE_PARAMETER_LIST
PsiElement(LPAR)('(')
PsiElement(RPAR)(')')
PsiWhiteSpace(' ')
BLOCK
PsiElement(LBRACE)('{')
PsiElement(RBRACE)('}')
PsiWhiteSpace('\n')
PsiElement(RBRACE)('}')
+5
View File
@@ -0,0 +1,5 @@
enum class My {
FIRST,
fun foo() {}
}
+36
View File
@@ -0,0 +1,36 @@
JetFile: EnumEntryCommaMember.kt
PACKAGE_DIRECTIVE
<empty list>
IMPORT_LIST
<empty list>
CLASS
MODIFIER_LIST
PsiElement(enum)('enum')
PsiWhiteSpace(' ')
PsiElement(class)('class')
PsiWhiteSpace(' ')
PsiElement(IDENTIFIER)('My')
PsiWhiteSpace(' ')
CLASS_BODY
PsiElement(LBRACE)('{')
PsiWhiteSpace('\n ')
ENUM_ENTRY
OBJECT_DECLARATION_NAME
PsiElement(IDENTIFIER)('FIRST')
PsiElement(COMMA)(',')
PsiErrorElement:Expecting ';' after the last enum entry or '}' to close enum class body
<empty list>
PsiWhiteSpace('\n\n ')
FUN
PsiElement(fun)('fun')
PsiWhiteSpace(' ')
PsiElement(IDENTIFIER)('foo')
VALUE_PARAMETER_LIST
PsiElement(LPAR)('(')
PsiElement(RPAR)(')')
PsiWhiteSpace(' ')
BLOCK
PsiElement(LBRACE)('{')
PsiElement(RBRACE)('}')
PsiWhiteSpace('\n')
PsiElement(RBRACE)('}')
+5
View File
@@ -0,0 +1,5 @@
enum class My {
FIRST,
public fun foo() {}
}
+39
View File
@@ -0,0 +1,39 @@
JetFile: EnumEntryCommaPublicMember.kt
PACKAGE_DIRECTIVE
<empty list>
IMPORT_LIST
<empty list>
CLASS
MODIFIER_LIST
PsiElement(enum)('enum')
PsiWhiteSpace(' ')
PsiElement(class)('class')
PsiWhiteSpace(' ')
PsiElement(IDENTIFIER)('My')
PsiWhiteSpace(' ')
CLASS_BODY
PsiElement(LBRACE)('{')
PsiWhiteSpace('\n ')
ENUM_ENTRY
OBJECT_DECLARATION_NAME
PsiElement(IDENTIFIER)('FIRST')
PsiElement(COMMA)(',')
PsiErrorElement:Expecting ';' after the last enum entry or '}' to close enum class body
<empty list>
PsiWhiteSpace('\n\n ')
FUN
MODIFIER_LIST
PsiElement(public)('public')
PsiWhiteSpace(' ')
PsiElement(fun)('fun')
PsiWhiteSpace(' ')
PsiElement(IDENTIFIER)('foo')
VALUE_PARAMETER_LIST
PsiElement(LPAR)('(')
PsiElement(RPAR)(')')
PsiWhiteSpace(' ')
BLOCK
PsiElement(LBRACE)('{')
PsiElement(RBRACE)('}')
PsiWhiteSpace('\n')
PsiElement(RBRACE)('}')
@@ -0,0 +1,5 @@
enum class My {
FIRST;
inline fun foo() {}
}
@@ -0,0 +1,42 @@
JetFile: EnumEntrySemicolonInlineMember.kt
PACKAGE_DIRECTIVE
<empty list>
IMPORT_LIST
<empty list>
CLASS
MODIFIER_LIST
PsiElement(enum)('enum')
PsiWhiteSpace(' ')
PsiElement(class)('class')
PsiWhiteSpace(' ')
PsiElement(IDENTIFIER)('My')
PsiWhiteSpace(' ')
CLASS_BODY
PsiElement(LBRACE)('{')
PsiWhiteSpace('\n ')
ENUM_ENTRY
OBJECT_DECLARATION_NAME
PsiElement(IDENTIFIER)('FIRST')
PsiElement(SEMICOLON)(';')
PsiWhiteSpace('\n\n ')
FUN
MODIFIER_LIST
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
USER_TYPE
REFERENCE_EXPRESSION
PsiElement(IDENTIFIER)('inline')
PsiWhiteSpace(' ')
PsiElement(fun)('fun')
PsiWhiteSpace(' ')
PsiElement(IDENTIFIER)('foo')
VALUE_PARAMETER_LIST
PsiElement(LPAR)('(')
PsiElement(RPAR)(')')
PsiWhiteSpace(' ')
BLOCK
PsiElement(LBRACE)('{')
PsiElement(RBRACE)('}')
PsiWhiteSpace('\n')
PsiElement(RBRACE)('}')
+5
View File
@@ -0,0 +1,5 @@
enum class My {
FIRST;
fun foo() {}
}
+34
View File
@@ -0,0 +1,34 @@
JetFile: EnumEntrySemicolonMember.kt
PACKAGE_DIRECTIVE
<empty list>
IMPORT_LIST
<empty list>
CLASS
MODIFIER_LIST
PsiElement(enum)('enum')
PsiWhiteSpace(' ')
PsiElement(class)('class')
PsiWhiteSpace(' ')
PsiElement(IDENTIFIER)('My')
PsiWhiteSpace(' ')
CLASS_BODY
PsiElement(LBRACE)('{')
PsiWhiteSpace('\n ')
ENUM_ENTRY
OBJECT_DECLARATION_NAME
PsiElement(IDENTIFIER)('FIRST')
PsiElement(SEMICOLON)(';')
PsiWhiteSpace('\n\n ')
FUN
PsiElement(fun)('fun')
PsiWhiteSpace(' ')
PsiElement(IDENTIFIER)('foo')
VALUE_PARAMETER_LIST
PsiElement(LPAR)('(')
PsiElement(RPAR)(')')
PsiWhiteSpace(' ')
BLOCK
PsiElement(LBRACE)('{')
PsiElement(RBRACE)('}')
PsiWhiteSpace('\n')
PsiElement(RBRACE)('}')
+5
View File
@@ -0,0 +1,5 @@
enum class My {
FIRST
inline fun foo() {}
}
+43
View File
@@ -0,0 +1,43 @@
JetFile: EnumEntrySpaceInlineMember.kt
PACKAGE_DIRECTIVE
<empty list>
IMPORT_LIST
<empty list>
CLASS
MODIFIER_LIST
PsiElement(enum)('enum')
PsiWhiteSpace(' ')
PsiElement(class)('class')
PsiWhiteSpace(' ')
PsiElement(IDENTIFIER)('My')
PsiWhiteSpace(' ')
CLASS_BODY
PsiElement(LBRACE)('{')
PsiWhiteSpace('\n ')
ENUM_ENTRY
OBJECT_DECLARATION_NAME
PsiElement(IDENTIFIER)('FIRST')
PsiErrorElement:Expecting ';' after the last enum entry or '}' to close enum class body
<empty list>
PsiWhiteSpace('\n\n ')
FUN
MODIFIER_LIST
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
USER_TYPE
REFERENCE_EXPRESSION
PsiElement(IDENTIFIER)('inline')
PsiWhiteSpace(' ')
PsiElement(fun)('fun')
PsiWhiteSpace(' ')
PsiElement(IDENTIFIER)('foo')
VALUE_PARAMETER_LIST
PsiElement(LPAR)('(')
PsiElement(RPAR)(')')
PsiWhiteSpace(' ')
BLOCK
PsiElement(LBRACE)('{')
PsiElement(RBRACE)('}')
PsiWhiteSpace('\n')
PsiElement(RBRACE)('}')
+5
View File
@@ -0,0 +1,5 @@
enum class My {
FIRST
fun foo() {}
}
+35
View File
@@ -0,0 +1,35 @@
JetFile: EnumEntrySpaceMember.kt
PACKAGE_DIRECTIVE
<empty list>
IMPORT_LIST
<empty list>
CLASS
MODIFIER_LIST
PsiElement(enum)('enum')
PsiWhiteSpace(' ')
PsiElement(class)('class')
PsiWhiteSpace(' ')
PsiElement(IDENTIFIER)('My')
PsiWhiteSpace(' ')
CLASS_BODY
PsiElement(LBRACE)('{')
PsiWhiteSpace('\n ')
ENUM_ENTRY
OBJECT_DECLARATION_NAME
PsiElement(IDENTIFIER)('FIRST')
PsiErrorElement:Expecting ';' after the last enum entry or '}' to close enum class body
<empty list>
PsiWhiteSpace('\n\n ')
FUN
PsiElement(fun)('fun')
PsiWhiteSpace(' ')
PsiElement(IDENTIFIER)('foo')
VALUE_PARAMETER_LIST
PsiElement(LPAR)('(')
PsiElement(RPAR)(')')
PsiWhiteSpace(' ')
BLOCK
PsiElement(LBRACE)('{')
PsiElement(RBRACE)('}')
PsiWhiteSpace('\n')
PsiElement(RBRACE)('}')
+3
View File
@@ -0,0 +1,3 @@
enum class My {
FIRST,,
}
+26
View File
@@ -0,0 +1,26 @@
JetFile: EnumEntryTwoCommas.kt
PACKAGE_DIRECTIVE
<empty list>
IMPORT_LIST
<empty list>
CLASS
MODIFIER_LIST
PsiElement(enum)('enum')
PsiWhiteSpace(' ')
PsiElement(class)('class')
PsiWhiteSpace(' ')
PsiElement(IDENTIFIER)('My')
PsiWhiteSpace(' ')
CLASS_BODY
PsiElement(LBRACE)('{')
PsiWhiteSpace('\n ')
ENUM_ENTRY
OBJECT_DECLARATION_NAME
PsiElement(IDENTIFIER)('FIRST')
PsiElement(COMMA)(',')
PsiErrorElement:Expecting ';' after the last enum entry or '}' to close enum class body
<empty list>
PsiErrorElement:Expecting member declaration
PsiElement(COMMA)(',')
PsiWhiteSpace('\n')
PsiElement(RBRACE)('}')
+3
View File
@@ -0,0 +1,3 @@
enum class Foo {
`in`
}
+21
View File
@@ -0,0 +1,21 @@
JetFile: EnumIn.kt
PACKAGE_DIRECTIVE
<empty list>
IMPORT_LIST
<empty list>
CLASS
MODIFIER_LIST
PsiElement(enum)('enum')
PsiWhiteSpace(' ')
PsiElement(class)('class')
PsiWhiteSpace(' ')
PsiElement(IDENTIFIER)('Foo')
PsiWhiteSpace(' ')
CLASS_BODY
PsiElement(LBRACE)('{')
PsiWhiteSpace('\n ')
ENUM_ENTRY
OBJECT_DECLARATION_NAME
PsiElement(IDENTIFIER)('`in`')
PsiWhiteSpace('\n')
PsiElement(RBRACE)('}')
+2 -2
View File
@@ -47,7 +47,7 @@ JetFile: EnumMissingName.kt
INTEGER_CONSTANT
PsiElement(INTEGER_LITERAL)('0xFF000')
PsiElement(RPAR)(')')
PsiElement(COMMA)(',')
PsiElement(COMMA)(',')
PsiWhiteSpace('\n ')
ENUM_ENTRY
OBJECT_DECLARATION_NAME
@@ -65,7 +65,7 @@ JetFile: EnumMissingName.kt
INTEGER_CONSTANT
PsiElement(INTEGER_LITERAL)('0x00FF00')
PsiElement(RPAR)(')')
PsiElement(COMMA)(',')
PsiElement(COMMA)(',')
PsiWhiteSpace('\n ')
ENUM_ENTRY
OBJECT_DECLARATION_NAME
-11
View File
@@ -1,11 +0,0 @@
package a.b.c.test.enum
enum class Enum {
// We have six entries in the following line,
// not one entry with five annotations
A B C D E F {
override fun f() = 4
}
open fun f() = 3
}
-102
View File
@@ -1,102 +0,0 @@
JetFile: EnumNoAnnotations.kt
PACKAGE_DIRECTIVE
PsiElement(package)('package')
PsiWhiteSpace(' ')
DOT_QUALIFIED_EXPRESSION
DOT_QUALIFIED_EXPRESSION
DOT_QUALIFIED_EXPRESSION
DOT_QUALIFIED_EXPRESSION
REFERENCE_EXPRESSION
PsiElement(IDENTIFIER)('a')
PsiElement(DOT)('.')
REFERENCE_EXPRESSION
PsiElement(IDENTIFIER)('b')
PsiElement(DOT)('.')
REFERENCE_EXPRESSION
PsiElement(IDENTIFIER)('c')
PsiElement(DOT)('.')
REFERENCE_EXPRESSION
PsiElement(IDENTIFIER)('test')
PsiElement(DOT)('.')
REFERENCE_EXPRESSION
PsiElement(IDENTIFIER)('enum')
IMPORT_LIST
<empty list>
PsiWhiteSpace('\n\n')
CLASS
MODIFIER_LIST
PsiElement(enum)('enum')
PsiWhiteSpace(' ')
PsiElement(class)('class')
PsiWhiteSpace(' ')
PsiElement(IDENTIFIER)('Enum')
PsiWhiteSpace(' ')
CLASS_BODY
PsiElement(LBRACE)('{')
PsiWhiteSpace('\n ')
ENUM_ENTRY
PsiComment(EOL_COMMENT)('// We have six entries in the following line,')
PsiWhiteSpace('\n ')
PsiComment(EOL_COMMENT)('// not one entry with five annotations')
PsiWhiteSpace('\n ')
OBJECT_DECLARATION_NAME
PsiElement(IDENTIFIER)('A')
PsiWhiteSpace(' ')
ENUM_ENTRY
OBJECT_DECLARATION_NAME
PsiElement(IDENTIFIER)('B')
PsiWhiteSpace(' ')
ENUM_ENTRY
OBJECT_DECLARATION_NAME
PsiElement(IDENTIFIER)('C')
PsiWhiteSpace(' ')
ENUM_ENTRY
OBJECT_DECLARATION_NAME
PsiElement(IDENTIFIER)('D')
PsiWhiteSpace(' ')
ENUM_ENTRY
OBJECT_DECLARATION_NAME
PsiElement(IDENTIFIER)('E')
PsiWhiteSpace(' ')
ENUM_ENTRY
OBJECT_DECLARATION_NAME
PsiElement(IDENTIFIER)('F')
PsiWhiteSpace(' ')
CLASS_BODY
PsiElement(LBRACE)('{')
PsiWhiteSpace('\n ')
FUN
MODIFIER_LIST
PsiElement(override)('override')
PsiWhiteSpace(' ')
PsiElement(fun)('fun')
PsiWhiteSpace(' ')
PsiElement(IDENTIFIER)('f')
VALUE_PARAMETER_LIST
PsiElement(LPAR)('(')
PsiElement(RPAR)(')')
PsiWhiteSpace(' ')
PsiElement(EQ)('=')
PsiWhiteSpace(' ')
INTEGER_CONSTANT
PsiElement(INTEGER_LITERAL)('4')
PsiWhiteSpace('\n ')
PsiElement(RBRACE)('}')
PsiWhiteSpace('\n\n ')
FUN
MODIFIER_LIST
PsiElement(open)('open')
PsiWhiteSpace(' ')
PsiElement(fun)('fun')
PsiWhiteSpace(' ')
PsiElement(IDENTIFIER)('f')
VALUE_PARAMETER_LIST
PsiElement(LPAR)('(')
PsiElement(RPAR)(')')
PsiWhiteSpace(' ')
PsiElement(EQ)('=')
PsiWhiteSpace(' ')
INTEGER_CONSTANT
PsiElement(INTEGER_LITERAL)('3')
PsiWhiteSpace('\n')
PsiElement(RBRACE)('}')
+5
View File
@@ -0,0 +1,5 @@
enum class My(x: Int) {
FIRST: My(13)
val y = x + 1
}
+68
View File
@@ -0,0 +1,68 @@
JetFile: EnumOldConstructorSyntax.kt
PACKAGE_DIRECTIVE
<empty list>
IMPORT_LIST
<empty list>
CLASS
MODIFIER_LIST
PsiElement(enum)('enum')
PsiWhiteSpace(' ')
PsiElement(class)('class')
PsiWhiteSpace(' ')
PsiElement(IDENTIFIER)('My')
PRIMARY_CONSTRUCTOR
VALUE_PARAMETER_LIST
PsiElement(LPAR)('(')
VALUE_PARAMETER
PsiElement(IDENTIFIER)('x')
PsiElement(COLON)(':')
PsiWhiteSpace(' ')
TYPE_REFERENCE
USER_TYPE
REFERENCE_EXPRESSION
PsiElement(IDENTIFIER)('Int')
PsiElement(RPAR)(')')
PsiWhiteSpace(' ')
CLASS_BODY
PsiElement(LBRACE)('{')
PsiWhiteSpace('\n ')
ENUM_ENTRY
OBJECT_DECLARATION_NAME
PsiElement(IDENTIFIER)('FIRST')
PsiErrorElement:Expecting ';' after the last enum entry or '}' to close enum class body
<empty list>
PsiErrorElement:Expecting member declaration
PsiElement(COLON)(':')
PsiWhiteSpace(' ')
PROPERTY
MODIFIER_LIST
ANNOTATION_ENTRY
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
USER_TYPE
REFERENCE_EXPRESSION
PsiElement(IDENTIFIER)('My')
VALUE_ARGUMENT_LIST
PsiElement(LPAR)('(')
VALUE_ARGUMENT
INTEGER_CONSTANT
PsiElement(INTEGER_LITERAL)('13')
PsiElement(RPAR)(')')
PsiWhiteSpace('\n\n ')
PsiElement(val)('val')
PsiWhiteSpace(' ')
PsiElement(IDENTIFIER)('y')
PsiWhiteSpace(' ')
PsiElement(EQ)('=')
PsiWhiteSpace(' ')
BINARY_EXPRESSION
REFERENCE_EXPRESSION
PsiElement(IDENTIFIER)('x')
PsiWhiteSpace(' ')
OPERATION_REFERENCE
PsiElement(PLUS)('+')
PsiWhiteSpace(' ')
INTEGER_CONSTANT
PsiElement(INTEGER_LITERAL)('1')
PsiWhiteSpace('\n')
PsiElement(RBRACE)('}')
-6
View File
@@ -1,6 +0,0 @@
enum class Color {
NORTH;
SOUTH;
WEST;
EAST
}
-39
View File
@@ -1,39 +0,0 @@
JetFile: EnumSemicolonBetween.kt
PACKAGE_DIRECTIVE
<empty list>
IMPORT_LIST
<empty list>
CLASS
MODIFIER_LIST
PsiElement(enum)('enum')
PsiWhiteSpace(' ')
PsiElement(class)('class')
PsiWhiteSpace(' ')
PsiElement(IDENTIFIER)('Color')
PsiWhiteSpace(' ')
CLASS_BODY
PsiElement(LBRACE)('{')
PsiWhiteSpace('\n ')
ENUM_ENTRY
OBJECT_DECLARATION_NAME
PsiElement(IDENTIFIER)('NORTH')
PsiErrorElement:Expecting ','
PsiElement(SEMICOLON)(';')
PsiWhiteSpace('\n ')
ENUM_ENTRY
OBJECT_DECLARATION_NAME
PsiElement(IDENTIFIER)('SOUTH')
PsiErrorElement:Expecting ','
PsiElement(SEMICOLON)(';')
PsiWhiteSpace('\n ')
ENUM_ENTRY
OBJECT_DECLARATION_NAME
PsiElement(IDENTIFIER)('WEST')
PsiErrorElement:Expecting ','
PsiElement(SEMICOLON)(';')
PsiWhiteSpace('\n ')
ENUM_ENTRY
OBJECT_DECLARATION_NAME
PsiElement(IDENTIFIER)('EAST')
PsiWhiteSpace('\n')
PsiElement(RBRACE)('}')
@@ -1,10 +0,0 @@
enum class Color {
NORTH;
fun foo() = 1
SOUTH;
companion object {
fun bar() = 2
}
WEST;
EAST
}
@@ -1,74 +0,0 @@
JetFile: EnumSemicolonBetweenWithMembers.kt
PACKAGE_DIRECTIVE
<empty list>
IMPORT_LIST
<empty list>
CLASS
MODIFIER_LIST
PsiElement(enum)('enum')
PsiWhiteSpace(' ')
PsiElement(class)('class')
PsiWhiteSpace(' ')
PsiElement(IDENTIFIER)('Color')
PsiWhiteSpace(' ')
CLASS_BODY
PsiElement(LBRACE)('{')
PsiWhiteSpace('\n ')
ENUM_ENTRY
OBJECT_DECLARATION_NAME
PsiElement(IDENTIFIER)('NORTH')
PsiElement(SEMICOLON)(';')
PsiWhiteSpace('\n ')
FUN
PsiElement(fun)('fun')
PsiWhiteSpace(' ')
PsiElement(IDENTIFIER)('foo')
VALUE_PARAMETER_LIST
PsiElement(LPAR)('(')
PsiElement(RPAR)(')')
PsiWhiteSpace(' ')
PsiElement(EQ)('=')
PsiWhiteSpace(' ')
INTEGER_CONSTANT
PsiElement(INTEGER_LITERAL)('1')
PsiWhiteSpace('\n ')
ENUM_ENTRY
OBJECT_DECLARATION_NAME
PsiElement(IDENTIFIER)('SOUTH')
PsiElement(SEMICOLON)(';')
PsiWhiteSpace('\n ')
OBJECT_DECLARATION
MODIFIER_LIST
PsiElement(companion)('companion')
PsiWhiteSpace(' ')
PsiElement(object)('object')
PsiWhiteSpace(' ')
CLASS_BODY
PsiElement(LBRACE)('{')
PsiWhiteSpace('\n ')
FUN
PsiElement(fun)('fun')
PsiWhiteSpace(' ')
PsiElement(IDENTIFIER)('bar')
VALUE_PARAMETER_LIST
PsiElement(LPAR)('(')
PsiElement(RPAR)(')')
PsiWhiteSpace(' ')
PsiElement(EQ)('=')
PsiWhiteSpace(' ')
INTEGER_CONSTANT
PsiElement(INTEGER_LITERAL)('2')
PsiWhiteSpace('\n ')
PsiElement(RBRACE)('}')
PsiWhiteSpace('\n ')
ENUM_ENTRY
OBJECT_DECLARATION_NAME
PsiElement(IDENTIFIER)('WEST')
PsiErrorElement:Expecting ','
PsiElement(SEMICOLON)(';')
PsiWhiteSpace('\n ')
ENUM_ENTRY
OBJECT_DECLARATION_NAME
PsiElement(IDENTIFIER)('EAST')
PsiWhiteSpace('\n')
PsiElement(RBRACE)('}')
+5 -5
View File
@@ -45,7 +45,7 @@ JetFile: EnumShortCommas.kt
INTEGER_CONSTANT
PsiElement(INTEGER_LITERAL)('0xFF000')
PsiElement(RPAR)(')')
PsiElement(COMMA)(',')
PsiElement(COMMA)(',')
PsiWhiteSpace('\n ')
ENUM_ENTRY
OBJECT_DECLARATION_NAME
@@ -63,7 +63,7 @@ JetFile: EnumShortCommas.kt
INTEGER_CONSTANT
PsiElement(INTEGER_LITERAL)('0x00FF00')
PsiElement(RPAR)(')')
PsiElement(COMMA)(',')
PsiElement(COMMA)(',')
PsiWhiteSpace('\n ')
ENUM_ENTRY
OBJECT_DECLARATION_NAME
@@ -81,8 +81,8 @@ JetFile: EnumShortCommas.kt
INTEGER_CONSTANT
PsiElement(INTEGER_LITERAL)('0x0000FF')
PsiElement(RPAR)(')')
PsiElement(COMMA)(',')
PsiWhiteSpace('\n ')
PsiElement(SEMICOLON)(';')
PsiElement(COMMA)(',')
PsiWhiteSpace('\n ')
PsiElement(SEMICOLON)(';')
PsiWhiteSpace('\n')
PsiElement(RBRACE)('}')
-7
View File
@@ -1,7 +0,0 @@
// NB: this test uses deprecated syntax
// Delete it when this syntax is no longer supported
enum class Color(val rgb : Int) {
RED(0xFF000)
GREEN(0x00FF00)
BLUE(0x0000FF)
}
-87
View File
@@ -1,87 +0,0 @@
JetFile: EnumShortNoCommas.kt
PACKAGE_DIRECTIVE
<empty list>
IMPORT_LIST
<empty list>
CLASS
PsiComment(EOL_COMMENT)('// NB: this test uses deprecated syntax')
PsiWhiteSpace('\n')
PsiComment(EOL_COMMENT)('// Delete it when this syntax is no longer supported')
PsiWhiteSpace('\n')
MODIFIER_LIST
PsiElement(enum)('enum')
PsiWhiteSpace(' ')
PsiElement(class)('class')
PsiWhiteSpace(' ')
PsiElement(IDENTIFIER)('Color')
PRIMARY_CONSTRUCTOR
VALUE_PARAMETER_LIST
PsiElement(LPAR)('(')
VALUE_PARAMETER
PsiElement(val)('val')
PsiWhiteSpace(' ')
PsiElement(IDENTIFIER)('rgb')
PsiWhiteSpace(' ')
PsiElement(COLON)(':')
PsiWhiteSpace(' ')
TYPE_REFERENCE
USER_TYPE
REFERENCE_EXPRESSION
PsiElement(IDENTIFIER)('Int')
PsiElement(RPAR)(')')
PsiWhiteSpace(' ')
CLASS_BODY
PsiElement(LBRACE)('{')
PsiWhiteSpace('\n ')
ENUM_ENTRY
OBJECT_DECLARATION_NAME
PsiElement(IDENTIFIER)('RED')
INITIALIZER_LIST
DELEGATOR_SUPER_CALL
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
USER_TYPE
ENUM_ENTRY_SUPERCLASS_REFERENCE_EXPRESSION
<empty list>
VALUE_ARGUMENT_LIST
PsiElement(LPAR)('(')
VALUE_ARGUMENT
INTEGER_CONSTANT
PsiElement(INTEGER_LITERAL)('0xFF000')
PsiElement(RPAR)(')')
PsiWhiteSpace('\n ')
ENUM_ENTRY
OBJECT_DECLARATION_NAME
PsiElement(IDENTIFIER)('GREEN')
INITIALIZER_LIST
DELEGATOR_SUPER_CALL
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
USER_TYPE
ENUM_ENTRY_SUPERCLASS_REFERENCE_EXPRESSION
<empty list>
VALUE_ARGUMENT_LIST
PsiElement(LPAR)('(')
VALUE_ARGUMENT
INTEGER_CONSTANT
PsiElement(INTEGER_LITERAL)('0x00FF00')
PsiElement(RPAR)(')')
PsiWhiteSpace('\n ')
ENUM_ENTRY
OBJECT_DECLARATION_NAME
PsiElement(IDENTIFIER)('BLUE')
INITIALIZER_LIST
DELEGATOR_SUPER_CALL
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
USER_TYPE
ENUM_ENTRY_SUPERCLASS_REFERENCE_EXPRESSION
<empty list>
VALUE_ARGUMENT_LIST
PsiElement(LPAR)('(')
VALUE_ARGUMENT
INTEGER_CONSTANT
PsiElement(INTEGER_LITERAL)('0x0000FF')
PsiElement(RPAR)(')')
PsiWhiteSpace('\n')
PsiElement(RBRACE)('}')
+3 -3
View File
@@ -78,7 +78,7 @@ JetFile: EnumShortWithOverload.kt
PsiElement(RBRACE)('}')
PsiWhiteSpace('\n ')
PsiElement(RBRACE)('}')
PsiElement(COMMA)(',')
PsiElement(COMMA)(',')
PsiWhiteSpace('\n ')
ENUM_ENTRY
OBJECT_DECLARATION_NAME
@@ -129,7 +129,7 @@ JetFile: EnumShortWithOverload.kt
PsiElement(RBRACE)('}')
PsiWhiteSpace('\n ')
PsiElement(RBRACE)('}')
PsiElement(COMMA)(',')
PsiElement(COMMA)(',')
PsiWhiteSpace('\n ')
ENUM_ENTRY
OBJECT_DECLARATION_NAME
@@ -180,7 +180,7 @@ JetFile: EnumShortWithOverload.kt
PsiElement(RBRACE)('}')
PsiWhiteSpace('\n ')
PsiElement(RBRACE)('}')
PsiElement(SEMICOLON)(';')
PsiElement(SEMICOLON)(';')
PsiWhiteSpace('\n \n ')
FUN
MODIFIER_LIST
-13
View File
@@ -1,13 +0,0 @@
enum class Color(val rgb : Int) {
RED(0xFF000) {
override fun foo(): Int { return 1 }
}
GREEN(0x00FF00) {
override fun foo(): Int { return 2 }
}
BLUE(0x0000FF) {
override fun foo(): Int { return 3 }
}
abstract fun foo(): Int
}
-199
View File
@@ -1,199 +0,0 @@
JetFile: EnumShortWithOverloadNoCommas.kt
PACKAGE_DIRECTIVE
<empty list>
IMPORT_LIST
<empty list>
CLASS
MODIFIER_LIST
PsiElement(enum)('enum')
PsiWhiteSpace(' ')
PsiElement(class)('class')
PsiWhiteSpace(' ')
PsiElement(IDENTIFIER)('Color')
PRIMARY_CONSTRUCTOR
VALUE_PARAMETER_LIST
PsiElement(LPAR)('(')
VALUE_PARAMETER
PsiElement(val)('val')
PsiWhiteSpace(' ')
PsiElement(IDENTIFIER)('rgb')
PsiWhiteSpace(' ')
PsiElement(COLON)(':')
PsiWhiteSpace(' ')
TYPE_REFERENCE
USER_TYPE
REFERENCE_EXPRESSION
PsiElement(IDENTIFIER)('Int')
PsiElement(RPAR)(')')
PsiWhiteSpace(' ')
CLASS_BODY
PsiElement(LBRACE)('{')
PsiWhiteSpace('\n ')
ENUM_ENTRY
OBJECT_DECLARATION_NAME
PsiElement(IDENTIFIER)('RED')
INITIALIZER_LIST
DELEGATOR_SUPER_CALL
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
USER_TYPE
ENUM_ENTRY_SUPERCLASS_REFERENCE_EXPRESSION
<empty list>
VALUE_ARGUMENT_LIST
PsiElement(LPAR)('(')
VALUE_ARGUMENT
INTEGER_CONSTANT
PsiElement(INTEGER_LITERAL)('0xFF000')
PsiElement(RPAR)(')')
PsiWhiteSpace(' ')
CLASS_BODY
PsiElement(LBRACE)('{')
PsiWhiteSpace('\n ')
FUN
MODIFIER_LIST
PsiElement(override)('override')
PsiWhiteSpace(' ')
PsiElement(fun)('fun')
PsiWhiteSpace(' ')
PsiElement(IDENTIFIER)('foo')
VALUE_PARAMETER_LIST
PsiElement(LPAR)('(')
PsiElement(RPAR)(')')
PsiElement(COLON)(':')
PsiWhiteSpace(' ')
TYPE_REFERENCE
USER_TYPE
REFERENCE_EXPRESSION
PsiElement(IDENTIFIER)('Int')
PsiWhiteSpace(' ')
BLOCK
PsiElement(LBRACE)('{')
PsiWhiteSpace(' ')
RETURN
PsiElement(return)('return')
PsiWhiteSpace(' ')
INTEGER_CONSTANT
PsiElement(INTEGER_LITERAL)('1')
PsiWhiteSpace(' ')
PsiElement(RBRACE)('}')
PsiWhiteSpace('\n ')
PsiElement(RBRACE)('}')
PsiWhiteSpace('\n ')
ENUM_ENTRY
OBJECT_DECLARATION_NAME
PsiElement(IDENTIFIER)('GREEN')
INITIALIZER_LIST
DELEGATOR_SUPER_CALL
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
USER_TYPE
ENUM_ENTRY_SUPERCLASS_REFERENCE_EXPRESSION
<empty list>
VALUE_ARGUMENT_LIST
PsiElement(LPAR)('(')
VALUE_ARGUMENT
INTEGER_CONSTANT
PsiElement(INTEGER_LITERAL)('0x00FF00')
PsiElement(RPAR)(')')
PsiWhiteSpace(' ')
CLASS_BODY
PsiElement(LBRACE)('{')
PsiWhiteSpace('\n ')
FUN
MODIFIER_LIST
PsiElement(override)('override')
PsiWhiteSpace(' ')
PsiElement(fun)('fun')
PsiWhiteSpace(' ')
PsiElement(IDENTIFIER)('foo')
VALUE_PARAMETER_LIST
PsiElement(LPAR)('(')
PsiElement(RPAR)(')')
PsiElement(COLON)(':')
PsiWhiteSpace(' ')
TYPE_REFERENCE
USER_TYPE
REFERENCE_EXPRESSION
PsiElement(IDENTIFIER)('Int')
PsiWhiteSpace(' ')
BLOCK
PsiElement(LBRACE)('{')
PsiWhiteSpace(' ')
RETURN
PsiElement(return)('return')
PsiWhiteSpace(' ')
INTEGER_CONSTANT
PsiElement(INTEGER_LITERAL)('2')
PsiWhiteSpace(' ')
PsiElement(RBRACE)('}')
PsiWhiteSpace('\n ')
PsiElement(RBRACE)('}')
PsiWhiteSpace('\n ')
ENUM_ENTRY
OBJECT_DECLARATION_NAME
PsiElement(IDENTIFIER)('BLUE')
INITIALIZER_LIST
DELEGATOR_SUPER_CALL
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
USER_TYPE
ENUM_ENTRY_SUPERCLASS_REFERENCE_EXPRESSION
<empty list>
VALUE_ARGUMENT_LIST
PsiElement(LPAR)('(')
VALUE_ARGUMENT
INTEGER_CONSTANT
PsiElement(INTEGER_LITERAL)('0x0000FF')
PsiElement(RPAR)(')')
PsiWhiteSpace(' ')
CLASS_BODY
PsiElement(LBRACE)('{')
PsiWhiteSpace('\n ')
FUN
MODIFIER_LIST
PsiElement(override)('override')
PsiWhiteSpace(' ')
PsiElement(fun)('fun')
PsiWhiteSpace(' ')
PsiElement(IDENTIFIER)('foo')
VALUE_PARAMETER_LIST
PsiElement(LPAR)('(')
PsiElement(RPAR)(')')
PsiElement(COLON)(':')
PsiWhiteSpace(' ')
TYPE_REFERENCE
USER_TYPE
REFERENCE_EXPRESSION
PsiElement(IDENTIFIER)('Int')
PsiWhiteSpace(' ')
BLOCK
PsiElement(LBRACE)('{')
PsiWhiteSpace(' ')
RETURN
PsiElement(return)('return')
PsiWhiteSpace(' ')
INTEGER_CONSTANT
PsiElement(INTEGER_LITERAL)('3')
PsiWhiteSpace(' ')
PsiElement(RBRACE)('}')
PsiWhiteSpace('\n ')
PsiElement(RBRACE)('}')
PsiWhiteSpace('\n \n ')
FUN
MODIFIER_LIST
PsiElement(abstract)('abstract')
PsiWhiteSpace(' ')
PsiElement(fun)('fun')
PsiWhiteSpace(' ')
PsiElement(IDENTIFIER)('foo')
VALUE_PARAMETER_LIST
PsiElement(LPAR)('(')
PsiElement(RPAR)(')')
PsiElement(COLON)(':')
PsiWhiteSpace(' ')
TYPE_REFERENCE
USER_TYPE
REFERENCE_EXPRESSION
PsiElement(IDENTIFIER)('Int')
PsiWhiteSpace('\n')
PsiElement(RBRACE)('}')
+5 -3
View File
@@ -1,5 +1,7 @@
enum class Color(val rgb : Int) {
RED : Color(0xFF000)
GREEN : Color(0x00FF00)
BLUE : Color(0x0000FF)
RED(0xFF000),
GREEN(0x00FF00),
BLUE(0x0000FF)
// the end
}
+11 -16
View File
@@ -32,61 +32,56 @@ JetFile: Enums.kt
ENUM_ENTRY
OBJECT_DECLARATION_NAME
PsiElement(IDENTIFIER)('RED')
PsiWhiteSpace(' ')
PsiElement(COLON)(':')
PsiWhiteSpace(' ')
INITIALIZER_LIST
DELEGATOR_SUPER_CALL
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
USER_TYPE
REFERENCE_EXPRESSION
PsiElement(IDENTIFIER)('Color')
ENUM_ENTRY_SUPERCLASS_REFERENCE_EXPRESSION
<empty list>
VALUE_ARGUMENT_LIST
PsiElement(LPAR)('(')
VALUE_ARGUMENT
INTEGER_CONSTANT
PsiElement(INTEGER_LITERAL)('0xFF000')
PsiElement(RPAR)(')')
PsiElement(COMMA)(',')
PsiWhiteSpace('\n ')
ENUM_ENTRY
OBJECT_DECLARATION_NAME
PsiElement(IDENTIFIER)('GREEN')
PsiWhiteSpace(' ')
PsiElement(COLON)(':')
PsiWhiteSpace(' ')
INITIALIZER_LIST
DELEGATOR_SUPER_CALL
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
USER_TYPE
REFERENCE_EXPRESSION
PsiElement(IDENTIFIER)('Color')
ENUM_ENTRY_SUPERCLASS_REFERENCE_EXPRESSION
<empty list>
VALUE_ARGUMENT_LIST
PsiElement(LPAR)('(')
VALUE_ARGUMENT
INTEGER_CONSTANT
PsiElement(INTEGER_LITERAL)('0x00FF00')
PsiElement(RPAR)(')')
PsiElement(COMMA)(',')
PsiWhiteSpace('\n ')
ENUM_ENTRY
OBJECT_DECLARATION_NAME
PsiElement(IDENTIFIER)('BLUE')
PsiWhiteSpace(' ')
PsiElement(COLON)(':')
PsiWhiteSpace(' ')
INITIALIZER_LIST
DELEGATOR_SUPER_CALL
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
USER_TYPE
REFERENCE_EXPRESSION
PsiElement(IDENTIFIER)('Color')
ENUM_ENTRY_SUPERCLASS_REFERENCE_EXPRESSION
<empty list>
VALUE_ARGUMENT_LIST
PsiElement(LPAR)('(')
VALUE_ARGUMENT
INTEGER_CONSTANT
PsiElement(INTEGER_LITERAL)('0x0000FF')
PsiElement(RPAR)(')')
PsiWhiteSpace('\n\n ')
PsiComment(EOL_COMMENT)('// the end')
PsiWhiteSpace('\n')
PsiElement(RBRACE)('}')
PsiElement(RBRACE)('}')
-1
View File
@@ -2,7 +2,6 @@ package foo.bar.goo
abstract
open
enum
open
annotation
override
-2
View File
@@ -21,8 +21,6 @@ JetFile: SimpleModifiers.kt
PsiWhiteSpace('\n')
PsiElement(open)('open')
PsiWhiteSpace('\n')
PsiElement(enum)('enum')
PsiWhiteSpace('\n')
PsiElement(open)('open')
PsiWhiteSpace('\n')
ANNOTATION_ENTRY
-1
View File
@@ -5,7 +5,6 @@ import foo
public protected private internal
abstract
open
enum
open
annotation
override
-2
View File
@@ -34,8 +34,6 @@ JetFile: SoftKeywords.kt
PsiWhiteSpace('\n')
PsiElement(open)('open')
PsiWhiteSpace('\n')
PsiElement(enum)('enum')
PsiWhiteSpace('\n')
PsiElement(open)('open')
PsiWhiteSpace('\n')
ANNOTATION_ENTRY
+6 -5
View File
@@ -1,13 +1,14 @@
enum class A {
@[Ann] @Ann(1) X : A()
@[Ann] @Ann(1) X(),
@Ann Y : A() {}
@Ann Y() {},
private @Ann() Z : A()
private @Ann() Z(),
@Ann @private Q
@Ann @private Q,
Ann() W
// TODO: try to make Ann() working here (?)
@Ann() W;
@Ann fun foo() {}
}
+19 -23
View File
@@ -43,19 +43,17 @@ JetFile: enumEntries.kt
PsiWhiteSpace(' ')
OBJECT_DECLARATION_NAME
PsiElement(IDENTIFIER)('X')
PsiWhiteSpace(' ')
PsiElement(COLON)(':')
PsiWhiteSpace(' ')
INITIALIZER_LIST
DELEGATOR_SUPER_CALL
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
USER_TYPE
REFERENCE_EXPRESSION
PsiElement(IDENTIFIER)('A')
ENUM_ENTRY_SUPERCLASS_REFERENCE_EXPRESSION
<empty list>
VALUE_ARGUMENT_LIST
PsiElement(LPAR)('(')
PsiElement(RPAR)(')')
PsiElement(COMMA)(',')
PsiWhiteSpace('\n\n ')
ENUM_ENTRY
MODIFIER_LIST
@@ -69,16 +67,13 @@ JetFile: enumEntries.kt
PsiWhiteSpace(' ')
OBJECT_DECLARATION_NAME
PsiElement(IDENTIFIER)('Y')
PsiWhiteSpace(' ')
PsiElement(COLON)(':')
PsiWhiteSpace(' ')
INITIALIZER_LIST
DELEGATOR_SUPER_CALL
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
USER_TYPE
REFERENCE_EXPRESSION
PsiElement(IDENTIFIER)('A')
ENUM_ENTRY_SUPERCLASS_REFERENCE_EXPRESSION
<empty list>
VALUE_ARGUMENT_LIST
PsiElement(LPAR)('(')
PsiElement(RPAR)(')')
@@ -86,6 +81,7 @@ JetFile: enumEntries.kt
CLASS_BODY
PsiElement(LBRACE)('{')
PsiElement(RBRACE)('}')
PsiElement(COMMA)(',')
PsiWhiteSpace('\n\n ')
ENUM_ENTRY
MODIFIER_LIST
@@ -104,19 +100,17 @@ JetFile: enumEntries.kt
PsiWhiteSpace(' ')
OBJECT_DECLARATION_NAME
PsiElement(IDENTIFIER)('Z')
PsiWhiteSpace(' ')
PsiElement(COLON)(':')
PsiWhiteSpace(' ')
INITIALIZER_LIST
DELEGATOR_SUPER_CALL
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
USER_TYPE
REFERENCE_EXPRESSION
PsiElement(IDENTIFIER)('A')
ENUM_ENTRY_SUPERCLASS_REFERENCE_EXPRESSION
<empty list>
VALUE_ARGUMENT_LIST
PsiElement(LPAR)('(')
PsiElement(RPAR)(')')
PsiElement(COMMA)(',')
PsiWhiteSpace('\n\n ')
ENUM_ENTRY
MODIFIER_LIST
@@ -132,24 +126,26 @@ JetFile: enumEntries.kt
PsiWhiteSpace(' ')
OBJECT_DECLARATION_NAME
PsiElement(IDENTIFIER)('Q')
PsiElement(COMMA)(',')
PsiWhiteSpace('\n\n ')
ENUM_ENTRY
OBJECT_DECLARATION_NAME
PsiElement(IDENTIFIER)('Ann')
INITIALIZER_LIST
DELEGATOR_SUPER_CALL
PsiComment(EOL_COMMENT)('// TODO: try to make Ann() working here (?)')
PsiWhiteSpace('\n ')
MODIFIER_LIST
ANNOTATION_ENTRY
PsiElement(AT)('@')
CONSTRUCTOR_CALLEE
TYPE_REFERENCE
USER_TYPE
ENUM_ENTRY_SUPERCLASS_REFERENCE_EXPRESSION
<empty list>
REFERENCE_EXPRESSION
PsiElement(IDENTIFIER)('Ann')
VALUE_ARGUMENT_LIST
PsiElement(LPAR)('(')
PsiElement(RPAR)(')')
PsiWhiteSpace(' ')
ENUM_ENTRY
PsiWhiteSpace(' ')
OBJECT_DECLARATION_NAME
PsiElement(IDENTIFIER)('W')
PsiElement(SEMICOLON)(';')
PsiWhiteSpace('\n\n ')
FUN
MODIFIER_LIST
+3 -3
View File
@@ -19,7 +19,7 @@ JetFile: annotation.kt
ENUM_ENTRY
OBJECT_DECLARATION_NAME
PsiElement(IDENTIFIER)('CLASSIFIER')
PsiElement(COMMA)(',')
PsiElement(COMMA)(',')
PsiWhiteSpace('\n ')
ENUM_ENTRY
OBJECT_DECLARATION_NAME
@@ -41,12 +41,12 @@ JetFile: annotation.kt
ENUM_ENTRY
OBJECT_DECLARATION_NAME
PsiElement(IDENTIFIER)('SOURCE')
PsiElement(COMMA)(',')
PsiElement(COMMA)(',')
PsiWhiteSpace('\n ')
ENUM_ENTRY
OBJECT_DECLARATION_NAME
PsiElement(IDENTIFIER)('BINARY')
PsiElement(COMMA)(',')
PsiElement(COMMA)(',')
PsiWhiteSpace('\n ')
ENUM_ENTRY
OBJECT_DECLARATION_NAME
+1 -1
View File
@@ -11,7 +11,7 @@ addMouseListener(object : MouseAdapter() {
})
enum class GodMessages {
TOO_MANY_CLICKS
TOO_MANY_CLICKS,
ONE_MORE_MESSAGE
}
+1
View File
@@ -139,6 +139,7 @@ JetFile: AnonymousObjects.kt
ENUM_ENTRY
OBJECT_DECLARATION_NAME
PsiElement(IDENTIFIER)('TOO_MANY_CLICKS')
PsiElement(COMMA)(',')
PsiWhiteSpace('\n ')
ENUM_ENTRY
OBJECT_DECLARATION_NAME
+3 -3
View File
@@ -1,5 +1,5 @@
enum class Color(val r : Int, val g : Int, val sb : Int) {
RED : Color(255, 0, 0)
GREEN : Color(0, 255, 0)
BLUE : Color(0, 0, 255)
RED(255, 0, 0),
GREEN(0, 255, 0),
BLUE(0, 0, 255)
}

Some files were not shown because too many files have changed in this diff Show More