diff --git a/compiler/frontend/src/org/jetbrains/jet/lang/parsing/JetParsing.java b/compiler/frontend/src/org/jetbrains/jet/lang/parsing/JetParsing.java index 82b634ee7cf..6ad6630245c 100644 --- a/compiler/frontend/src/org/jetbrains/jet/lang/parsing/JetParsing.java +++ b/compiler/frontend/src/org/jetbrains/jet/lang/parsing/JetParsing.java @@ -543,7 +543,7 @@ public class JetParsing extends AbstractJetParsing { /* * enumEntry - * : modifiers SimpleName typeParameters? primaryConstructorParameters? (":" initializer{","})? typeConstraints classBody? + * : modifiers SimpleName (":" initializer{","})? classBody? * ; */ private void parseEnumEntry() { @@ -553,20 +553,12 @@ public class JetParsing extends AbstractJetParsing { advance(); // IDENTIFIER nameAsDeclaration.done(OBJECT_DECLARATION_NAME); - boolean typeParametersDeclared = parseTypeParameterList(TokenSet.create(COLON, LPAR, SEMICOLON, LBRACE)); - - if (at(LPAR)) { - parseValueParameterList(false, TokenSet.create(COLON, SEMICOLON, LBRACE)); - } - if (at(COLON)) { advance(); // COLON parseInitializerList(); } - parseTypeConstraintsGuarded(typeParametersDeclared); - if (at(LBRACE)) { parseClassBody(); } diff --git a/compiler/testData/diagnostics/tests/Enums.kt b/compiler/testData/diagnostics/tests/Enums.kt deleted file mode 100644 index 4f387eac4be..00000000000 --- a/compiler/testData/diagnostics/tests/Enums.kt +++ /dev/null @@ -1,10 +0,0 @@ -enum class List(val size : Int) { - Nil : List(0) { - val a = 1 - } - Cons(val head : T, val tail : List) : List(tail.size + 1) - -} - -val foo = List.Nil -val foo1 = foo.a diff --git a/compiler/testData/psi/Enums.jet b/compiler/testData/psi/Enums.jet index 5653a7d6915..f9064c7cb49 100644 --- a/compiler/testData/psi/Enums.jet +++ b/compiler/testData/psi/Enums.jet @@ -2,13 +2,4 @@ enum class Color(val rgb : Int) { RED : Color(0xFF000) GREEN : Color(0x00FF00) BLUE : Color(0x0000FF) -} - -enum class List(val size : Int) { - Nil : List(0) - - Cons(val value : T, val tail : List) : List(/*tail.size + 1*/a) - - val isEmpty : Bool - get() = size //> 0 } \ No newline at end of file diff --git a/compiler/testData/psi/Enums.txt b/compiler/testData/psi/Enums.txt index 2b986a89e88..5ac8adb5a37 100644 --- a/compiler/testData/psi/Enums.txt +++ b/compiler/testData/psi/Enums.txt @@ -32,8 +32,6 @@ JetFile: Enums.jet OBJECT_DECLARATION_NAME PsiElement(IDENTIFIER)('RED') PsiWhiteSpace(' ') - TYPE_PARAMETER_LIST - PsiElement(COLON)(':') PsiWhiteSpace(' ') INITIALIZER_LIST @@ -54,8 +52,6 @@ JetFile: Enums.jet OBJECT_DECLARATION_NAME PsiElement(IDENTIFIER)('GREEN') PsiWhiteSpace(' ') - TYPE_PARAMETER_LIST - PsiElement(COLON)(':') PsiWhiteSpace(' ') INITIALIZER_LIST @@ -76,8 +72,6 @@ JetFile: Enums.jet OBJECT_DECLARATION_NAME PsiElement(IDENTIFIER)('BLUE') PsiWhiteSpace(' ') - TYPE_PARAMETER_LIST - PsiElement(COLON)(':') PsiWhiteSpace(' ') INITIALIZER_LIST @@ -94,162 +88,4 @@ JetFile: Enums.jet PsiElement(INTEGER_LITERAL)('0x0000FF') PsiElement(RPAR)(')') PsiWhiteSpace('\n') - PsiElement(RBRACE)('}') - PsiWhiteSpace('\n\n') - CLASS - MODIFIER_LIST - PsiElement(enum)('enum') - PsiWhiteSpace(' ') - PsiElement(class)('class') - PsiWhiteSpace(' ') - PsiElement(IDENTIFIER)('List') - TYPE_PARAMETER_LIST - PsiElement(LT)('<') - TYPE_PARAMETER - MODIFIER_LIST - PsiElement(out)('out') - PsiWhiteSpace(' ') - PsiElement(IDENTIFIER)('T') - PsiElement(GT)('>') - VALUE_PARAMETER_LIST - PsiElement(LPAR)('(') - VALUE_PARAMETER - PsiElement(val)('val') - PsiWhiteSpace(' ') - PsiElement(IDENTIFIER)('size') - 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)('Nil') - PsiWhiteSpace(' ') - TYPE_PARAMETER_LIST - - PsiElement(COLON)(':') - PsiWhiteSpace(' ') - INITIALIZER_LIST - DELEGATOR_SUPER_CALL - CONSTRUCTOR_CALLEE - TYPE_REFERENCE - USER_TYPE - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('List') - TYPE_ARGUMENT_LIST - PsiElement(LT)('<') - TYPE_PROJECTION - TYPE_REFERENCE - USER_TYPE - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('Nothing') - PsiElement(GT)('>') - VALUE_ARGUMENT_LIST - PsiElement(LPAR)('(') - VALUE_ARGUMENT - INTEGER_CONSTANT - PsiElement(INTEGER_LITERAL)('0') - PsiElement(RPAR)(')') - PsiWhiteSpace('\n\n ') - ENUM_ENTRY - OBJECT_DECLARATION_NAME - PsiElement(IDENTIFIER)('Cons') - TYPE_PARAMETER_LIST - PsiElement(LT)('<') - TYPE_PARAMETER - PsiElement(IDENTIFIER)('T') - PsiElement(GT)('>') - VALUE_PARAMETER_LIST - PsiElement(LPAR)('(') - VALUE_PARAMETER - PsiElement(val)('val') - PsiWhiteSpace(' ') - PsiElement(IDENTIFIER)('value') - PsiWhiteSpace(' ') - PsiElement(COLON)(':') - PsiWhiteSpace(' ') - TYPE_REFERENCE - USER_TYPE - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('T') - PsiElement(COMMA)(',') - PsiWhiteSpace(' ') - VALUE_PARAMETER - PsiElement(val)('val') - PsiWhiteSpace(' ') - PsiElement(IDENTIFIER)('tail') - PsiWhiteSpace(' ') - PsiElement(COLON)(':') - PsiWhiteSpace(' ') - TYPE_REFERENCE - USER_TYPE - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('List') - TYPE_ARGUMENT_LIST - PsiElement(LT)('<') - TYPE_PROJECTION - TYPE_REFERENCE - USER_TYPE - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('T') - PsiElement(GT)('>') - PsiElement(RPAR)(')') - PsiWhiteSpace(' ') - PsiElement(COLON)(':') - PsiWhiteSpace(' ') - INITIALIZER_LIST - DELEGATOR_SUPER_CALL - CONSTRUCTOR_CALLEE - TYPE_REFERENCE - USER_TYPE - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('List') - TYPE_ARGUMENT_LIST - PsiElement(LT)('<') - TYPE_PROJECTION - TYPE_REFERENCE - USER_TYPE - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('T') - PsiElement(GT)('>') - VALUE_ARGUMENT_LIST - PsiElement(LPAR)('(') - PsiComment(BLOCK_COMMENT)('/*tail.size + 1*/') - VALUE_ARGUMENT - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('a') - PsiElement(RPAR)(')') - PsiWhiteSpace('\n\n ') - PROPERTY - PsiElement(val)('val') - PsiWhiteSpace(' ') - PsiElement(IDENTIFIER)('isEmpty') - PsiWhiteSpace(' ') - PsiElement(COLON)(':') - PsiWhiteSpace(' ') - TYPE_REFERENCE - USER_TYPE - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('Bool') - PsiWhiteSpace('\n ') - PROPERTY_ACCESSOR - PsiElement(get)('get') - PsiElement(LPAR)('(') - PsiElement(RPAR)(')') - PsiWhiteSpace(' ') - PsiElement(EQ)('=') - PsiWhiteSpace(' ') - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('size') - PsiWhiteSpace(' ') - PsiComment(EOL_COMMENT)('//> 0') - PsiWhiteSpace('\n') PsiElement(RBRACE)('}') \ No newline at end of file diff --git a/compiler/testData/psi/examples/AnonymousObjects.txt b/compiler/testData/psi/examples/AnonymousObjects.txt index a0686dbfa2c..9f64958403b 100644 --- a/compiler/testData/psi/examples/AnonymousObjects.txt +++ b/compiler/testData/psi/examples/AnonymousObjects.txt @@ -139,15 +139,11 @@ JetFile: AnonymousObjects.jet ENUM_ENTRY OBJECT_DECLARATION_NAME PsiElement(IDENTIFIER)('TOO_MANY_CLICKS') - PsiWhiteSpace('\n ') - TYPE_PARAMETER_LIST - + PsiWhiteSpace('\n ') ENUM_ENTRY OBJECT_DECLARATION_NAME PsiElement(IDENTIFIER)('ONE_MORE_MESSAGE') - PsiWhiteSpace('\n') - TYPE_PARAMETER_LIST - + PsiWhiteSpace('\n') PsiElement(RBRACE)('}') PsiWhiteSpace('\n\n') PsiComment(EOL_COMMENT)('// Type of this variable is GOD_AnonymousClass') diff --git a/compiler/testData/psi/examples/Color.txt b/compiler/testData/psi/examples/Color.txt index 8bfc186a218..23a939f9639 100644 --- a/compiler/testData/psi/examples/Color.txt +++ b/compiler/testData/psi/examples/Color.txt @@ -58,8 +58,6 @@ JetFile: Color.jet OBJECT_DECLARATION_NAME PsiElement(IDENTIFIER)('RED') PsiWhiteSpace(' ') - TYPE_PARAMETER_LIST - PsiElement(COLON)(':') PsiWhiteSpace(' ') INITIALIZER_LIST @@ -90,8 +88,6 @@ JetFile: Color.jet OBJECT_DECLARATION_NAME PsiElement(IDENTIFIER)('GREEN') PsiWhiteSpace(' ') - TYPE_PARAMETER_LIST - PsiElement(COLON)(':') PsiWhiteSpace(' ') INITIALIZER_LIST @@ -122,8 +118,6 @@ JetFile: Color.jet OBJECT_DECLARATION_NAME PsiElement(IDENTIFIER)('BLUE') PsiWhiteSpace(' ') - TYPE_PARAMETER_LIST - PsiElement(COLON)(':') PsiWhiteSpace(' ') INITIALIZER_LIST diff --git a/compiler/testData/psi/examples/collections/List.jet b/compiler/testData/psi/examples/collections/List.jet deleted file mode 100644 index b5b6583ff27..00000000000 --- a/compiler/testData/psi/examples/collections/List.jet +++ /dev/null @@ -1,26 +0,0 @@ -enum class List(theSize : Int) : IList { - Nil : List(0) - - Cons(val value : T, val tail : List) : List(1 + tail.size) - - override val size : Int - get() = theSize - - - override val isEmpty : Boolean - get() = this == Nil - - - override fun iterator() = object : IIterator() { - private var current = List.this - - override val hasNext - get() = current == Nil - - override fun next() { - val result = current.value - current = current.tail - return result - } - } -} \ No newline at end of file diff --git a/compiler/testData/psi/examples/collections/List.txt b/compiler/testData/psi/examples/collections/List.txt deleted file mode 100644 index e356c3925d0..00000000000 --- a/compiler/testData/psi/examples/collections/List.txt +++ /dev/null @@ -1,347 +0,0 @@ -JetFile: List.jet - NAMESPACE_HEADER - - CLASS - MODIFIER_LIST - PsiElement(enum)('enum') - PsiWhiteSpace(' ') - PsiElement(class)('class') - PsiWhiteSpace(' ') - PsiElement(IDENTIFIER)('List') - TYPE_PARAMETER_LIST - PsiElement(LT)('<') - TYPE_PARAMETER - MODIFIER_LIST - PsiElement(out)('out') - PsiWhiteSpace(' ') - PsiElement(IDENTIFIER)('T') - PsiElement(GT)('>') - VALUE_PARAMETER_LIST - PsiElement(LPAR)('(') - VALUE_PARAMETER - PsiElement(IDENTIFIER)('theSize') - PsiWhiteSpace(' ') - PsiElement(COLON)(':') - PsiWhiteSpace(' ') - TYPE_REFERENCE - USER_TYPE - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('Int') - PsiElement(RPAR)(')') - PsiWhiteSpace(' ') - PsiElement(COLON)(':') - PsiWhiteSpace(' ') - DELEGATION_SPECIFIER_LIST - DELEGATOR_SUPER_CLASS - TYPE_REFERENCE - USER_TYPE - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('IList') - TYPE_ARGUMENT_LIST - PsiElement(LT)('<') - TYPE_PROJECTION - TYPE_REFERENCE - USER_TYPE - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('T') - PsiElement(GT)('>') - PsiWhiteSpace(' ') - CLASS_BODY - PsiElement(LBRACE)('{') - PsiWhiteSpace('\n ') - ENUM_ENTRY - OBJECT_DECLARATION_NAME - PsiElement(IDENTIFIER)('Nil') - PsiWhiteSpace(' ') - TYPE_PARAMETER_LIST - - PsiElement(COLON)(':') - PsiWhiteSpace(' ') - INITIALIZER_LIST - DELEGATOR_SUPER_CALL - CONSTRUCTOR_CALLEE - TYPE_REFERENCE - USER_TYPE - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('List') - TYPE_ARGUMENT_LIST - PsiElement(LT)('<') - TYPE_PROJECTION - TYPE_REFERENCE - USER_TYPE - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('Nothing') - PsiElement(GT)('>') - VALUE_ARGUMENT_LIST - PsiElement(LPAR)('(') - VALUE_ARGUMENT - INTEGER_CONSTANT - PsiElement(INTEGER_LITERAL)('0') - PsiElement(RPAR)(')') - PsiWhiteSpace('\n\n ') - ENUM_ENTRY - OBJECT_DECLARATION_NAME - PsiElement(IDENTIFIER)('Cons') - TYPE_PARAMETER_LIST - PsiElement(LT)('<') - TYPE_PARAMETER - PsiElement(IDENTIFIER)('T') - PsiElement(GT)('>') - VALUE_PARAMETER_LIST - PsiElement(LPAR)('(') - VALUE_PARAMETER - PsiElement(val)('val') - PsiWhiteSpace(' ') - PsiElement(IDENTIFIER)('value') - PsiWhiteSpace(' ') - PsiElement(COLON)(':') - PsiWhiteSpace(' ') - TYPE_REFERENCE - USER_TYPE - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('T') - PsiElement(COMMA)(',') - PsiWhiteSpace(' ') - VALUE_PARAMETER - PsiElement(val)('val') - PsiWhiteSpace(' ') - PsiElement(IDENTIFIER)('tail') - PsiWhiteSpace(' ') - PsiElement(COLON)(':') - PsiWhiteSpace(' ') - TYPE_REFERENCE - USER_TYPE - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('List') - TYPE_ARGUMENT_LIST - PsiElement(LT)('<') - TYPE_PROJECTION - TYPE_REFERENCE - USER_TYPE - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('T') - PsiElement(GT)('>') - PsiElement(RPAR)(')') - PsiWhiteSpace(' ') - PsiElement(COLON)(':') - PsiWhiteSpace(' ') - INITIALIZER_LIST - DELEGATOR_SUPER_CALL - CONSTRUCTOR_CALLEE - TYPE_REFERENCE - USER_TYPE - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('List') - TYPE_ARGUMENT_LIST - PsiElement(LT)('<') - TYPE_PROJECTION - TYPE_REFERENCE - USER_TYPE - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('T') - PsiElement(GT)('>') - VALUE_ARGUMENT_LIST - PsiElement(LPAR)('(') - VALUE_ARGUMENT - BINARY_EXPRESSION - INTEGER_CONSTANT - PsiElement(INTEGER_LITERAL)('1') - PsiWhiteSpace(' ') - OPERATION_REFERENCE - PsiElement(PLUS)('+') - PsiWhiteSpace(' ') - DOT_QUALIFIED_EXPRESSION - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('tail') - PsiElement(DOT)('.') - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('size') - PsiElement(RPAR)(')') - PsiWhiteSpace('\n\n ') - PROPERTY - MODIFIER_LIST - PsiElement(override)('override') - PsiWhiteSpace(' ') - PsiElement(val)('val') - PsiWhiteSpace(' ') - PsiElement(IDENTIFIER)('size') - PsiWhiteSpace(' ') - PsiElement(COLON)(':') - PsiWhiteSpace(' ') - TYPE_REFERENCE - USER_TYPE - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('Int') - PsiWhiteSpace('\n ') - PROPERTY_ACCESSOR - PsiElement(get)('get') - PsiElement(LPAR)('(') - PsiElement(RPAR)(')') - PsiWhiteSpace(' ') - PsiElement(EQ)('=') - PsiWhiteSpace(' ') - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('theSize') - PsiWhiteSpace('\n\n\n ') - PROPERTY - MODIFIER_LIST - PsiElement(override)('override') - PsiWhiteSpace(' ') - PsiElement(val)('val') - PsiWhiteSpace(' ') - PsiElement(IDENTIFIER)('isEmpty') - PsiWhiteSpace(' ') - PsiElement(COLON)(':') - PsiWhiteSpace(' ') - TYPE_REFERENCE - USER_TYPE - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('Boolean') - PsiWhiteSpace('\n ') - PROPERTY_ACCESSOR - PsiElement(get)('get') - PsiElement(LPAR)('(') - PsiElement(RPAR)(')') - PsiWhiteSpace(' ') - PsiElement(EQ)('=') - PsiWhiteSpace(' ') - BINARY_EXPRESSION - THIS_EXPRESSION - REFERENCE_EXPRESSION - PsiElement(this)('this') - PsiWhiteSpace(' ') - OPERATION_REFERENCE - PsiElement(EQEQ)('==') - PsiWhiteSpace(' ') - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('Nil') - PsiWhiteSpace('\n\n\n ') - FUN - MODIFIER_LIST - PsiElement(override)('override') - PsiWhiteSpace(' ') - PsiElement(fun)('fun') - PsiWhiteSpace(' ') - PsiElement(IDENTIFIER)('iterator') - VALUE_PARAMETER_LIST - PsiElement(LPAR)('(') - PsiElement(RPAR)(')') - PsiWhiteSpace(' ') - PsiElement(EQ)('=') - PsiWhiteSpace(' ') - OBJECT_LITERAL - OBJECT_DECLARATION - PsiElement(object)('object') - PsiWhiteSpace(' ') - PsiElement(COLON)(':') - PsiWhiteSpace(' ') - DELEGATION_SPECIFIER_LIST - DELEGATOR_SUPER_CALL - CONSTRUCTOR_CALLEE - TYPE_REFERENCE - USER_TYPE - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('IIterator') - VALUE_ARGUMENT_LIST - PsiElement(LPAR)('(') - PsiElement(RPAR)(')') - PsiWhiteSpace(' ') - CLASS_BODY - PsiElement(LBRACE)('{') - PsiWhiteSpace('\n ') - PROPERTY - MODIFIER_LIST - PsiElement(private)('private') - PsiWhiteSpace(' ') - PsiElement(var)('var') - PsiWhiteSpace(' ') - PsiElement(IDENTIFIER)('current') - PsiWhiteSpace(' ') - PsiElement(EQ)('=') - PsiWhiteSpace(' ') - DOT_QUALIFIED_EXPRESSION - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('List') - PsiElement(DOT)('.') - THIS_EXPRESSION - REFERENCE_EXPRESSION - PsiElement(this)('this') - PsiWhiteSpace('\n\n ') - PROPERTY - MODIFIER_LIST - PsiElement(override)('override') - PsiWhiteSpace(' ') - PsiElement(val)('val') - PsiWhiteSpace(' ') - PsiElement(IDENTIFIER)('hasNext') - PsiWhiteSpace('\n ') - PROPERTY_ACCESSOR - PsiElement(get)('get') - PsiElement(LPAR)('(') - PsiElement(RPAR)(')') - PsiWhiteSpace(' ') - PsiElement(EQ)('=') - PsiWhiteSpace(' ') - BINARY_EXPRESSION - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('current') - PsiWhiteSpace(' ') - OPERATION_REFERENCE - PsiElement(EQEQ)('==') - PsiWhiteSpace(' ') - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('Nil') - PsiWhiteSpace('\n\n ') - FUN - MODIFIER_LIST - PsiElement(override)('override') - PsiWhiteSpace(' ') - PsiElement(fun)('fun') - PsiWhiteSpace(' ') - PsiElement(IDENTIFIER)('next') - VALUE_PARAMETER_LIST - PsiElement(LPAR)('(') - PsiElement(RPAR)(')') - PsiWhiteSpace(' ') - BLOCK - PsiElement(LBRACE)('{') - PsiWhiteSpace('\n ') - PROPERTY - PsiElement(val)('val') - PsiWhiteSpace(' ') - PsiElement(IDENTIFIER)('result') - PsiWhiteSpace(' ') - PsiElement(EQ)('=') - PsiWhiteSpace(' ') - DOT_QUALIFIED_EXPRESSION - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('current') - PsiElement(DOT)('.') - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('value') - PsiWhiteSpace('\n ') - BINARY_EXPRESSION - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('current') - PsiWhiteSpace(' ') - OPERATION_REFERENCE - PsiElement(EQ)('=') - PsiWhiteSpace(' ') - DOT_QUALIFIED_EXPRESSION - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('current') - PsiElement(DOT)('.') - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('tail') - PsiWhiteSpace('\n ') - RETURN - PsiElement(return)('return') - PsiWhiteSpace(' ') - REFERENCE_EXPRESSION - PsiElement(IDENTIFIER)('result') - PsiWhiteSpace('\n ') - PsiElement(RBRACE)('}') - PsiWhiteSpace('\n ') - PsiElement(RBRACE)('}') - PsiWhiteSpace('\n') - PsiElement(RBRACE)('}') \ No newline at end of file diff --git a/compiler/testData/psi/examples/util/Comparison.txt b/compiler/testData/psi/examples/util/Comparison.txt index 36c2a5f85fb..82f7316be26 100644 --- a/compiler/testData/psi/examples/util/Comparison.txt +++ b/compiler/testData/psi/examples/util/Comparison.txt @@ -219,23 +219,17 @@ JetFile: Comparison.jet ENUM_ENTRY OBJECT_DECLARATION_NAME PsiElement(IDENTIFIER)('LS') - TYPE_PARAMETER_LIST - PsiElement(SEMICOLON)(';') PsiWhiteSpace(' ') ENUM_ENTRY OBJECT_DECLARATION_NAME PsiElement(IDENTIFIER)('EQ') - TYPE_PARAMETER_LIST - PsiElement(SEMICOLON)(';') PsiWhiteSpace(' ') ENUM_ENTRY OBJECT_DECLARATION_NAME PsiElement(IDENTIFIER)('GR') - PsiWhiteSpace('\n') - TYPE_PARAMETER_LIST - + PsiWhiteSpace('\n') PsiElement(RBRACE)('}') PsiWhiteSpace('\n\n') TYPEDEF diff --git a/compiler/tests/org/jetbrains/jet/checkers/JetDiagnosticsTestGenerated.java b/compiler/tests/org/jetbrains/jet/checkers/JetDiagnosticsTestGenerated.java index fd97ecf5065..3b6eef1fcae 100644 --- a/compiler/tests/org/jetbrains/jet/checkers/JetDiagnosticsTestGenerated.java +++ b/compiler/tests/org/jetbrains/jet/checkers/JetDiagnosticsTestGenerated.java @@ -15,12 +15,15 @@ */ package org.jetbrains.jet.checkers; +import junit.framework.Assert; import junit.framework.Test; import junit.framework.TestSuite; + +import java.io.File; import org.jetbrains.jet.JetTestUtils; import org.jetbrains.jet.test.TestMetadata; -import java.io.File; +import org.jetbrains.jet.checkers.AbstractDiagnosticsTestWithEagerResolve; /** This class is generated by {@link org.jetbrains.jet.checkers.AbstractDiagnosticsTestWithEagerResolve}. DO NOT MODIFY MANUALLY */ public class JetDiagnosticsTestGenerated extends AbstractDiagnosticsTestWithEagerResolve { @@ -205,11 +208,6 @@ public class JetDiagnosticsTestGenerated extends AbstractDiagnosticsTestWithEage doTest("compiler/testData/diagnostics/tests/Dollar.kt"); } - @TestMetadata("Enums.kt") - public void testEnums() throws Exception { - doTest("compiler/testData/diagnostics/tests/Enums.kt"); - } - @TestMetadata("ForRangeConventions.kt") public void testForRangeConventions() throws Exception { doTest("compiler/testData/diagnostics/tests/ForRangeConventions.kt"); diff --git a/grammar/src/enum.grm b/grammar/src/enum.grm index d0d49afcc3b..cb16578667e 100644 --- a/grammar/src/enum.grm +++ b/grammar/src/enum.grm @@ -9,5 +9,5 @@ enumClassBody ; enumEntry - : modifiers SimpleName typeParameters? valueParameters? (":" initializer{","})? typeConstraints classBody? + : modifiers SimpleName (":" initializer{","})? classBody? ; diff --git a/idea/testData/checker/Enums.jet b/idea/testData/checker/Enums.jet deleted file mode 100644 index 0ef400fda22..00000000000 --- a/idea/testData/checker/Enums.jet +++ /dev/null @@ -1,10 +0,0 @@ -enum class List(val size : Int) { - Nil : List(0) { - val a = 1 - } - Cons(val head : T, val tail : List) : List(tail.size + 1) - -} - -val foo = List.Nil -val foo1 = foo.a \ No newline at end of file diff --git a/idea/tests/org/jetbrains/jet/checkers/JetPsiCheckerTestGenerated.java b/idea/tests/org/jetbrains/jet/checkers/JetPsiCheckerTestGenerated.java index 8e9bcb80804..0eb93dd4112 100644 --- a/idea/tests/org/jetbrains/jet/checkers/JetPsiCheckerTestGenerated.java +++ b/idea/tests/org/jetbrains/jet/checkers/JetPsiCheckerTestGenerated.java @@ -98,11 +98,6 @@ public class JetPsiCheckerTestGenerated extends AbstractJetPsiCheckerTest { doTest("idea/testData/checker/CyclicHierarchy.jet"); } - @TestMetadata("Enums.jet") - public void testEnums() throws Exception { - doTest("idea/testData/checker/Enums.jet"); - } - @TestMetadata("ExtensionFunctions.jet") public void testExtensionFunctions() throws Exception { doTest("idea/testData/checker/ExtensionFunctions.jet"); diff --git a/idea/tests/org/jetbrains/jet/plugin/stubs/JetStubsTest.java b/idea/tests/org/jetbrains/jet/plugin/stubs/JetStubsTest.java index bff6f96639a..91caad9243b 100644 --- a/idea/tests/org/jetbrains/jet/plugin/stubs/JetStubsTest.java +++ b/idea/tests/org/jetbrains/jet/plugin/stubs/JetStubsTest.java @@ -140,9 +140,7 @@ public class JetStubsTest extends LightCodeInsightFixtureTestCase { " CLASS:PsiJetClassStubImpl[name=Test fqn=Test superNames=[]]\n" + " TYPE_PARAMETER_LIST:PsiJetTypeParameterListStubImpl\n" + " ENUM_ENTRY:PsiJetClassStubImpl[enumEntry name=First fqn=Test.First superNames=[]]\n" + - " TYPE_PARAMETER_LIST:PsiJetTypeParameterListStubImpl\n" + - " ENUM_ENTRY:PsiJetClassStubImpl[enumEntry name=Second fqn=Test.Second superNames=[]]\n" + - " TYPE_PARAMETER_LIST:PsiJetTypeParameterListStubImpl\n" + " ENUM_ENTRY:PsiJetClassStubImpl[enumEntry name=Second fqn=Test.Second superNames=[]]\n" ); }