Drop enum class object hack

Place valueOf() and values() into the static scope of the corresponding enum
class

 #KT-5580 Fixed
 #KT-2410 Fixed
This commit is contained in:
Alexander Udalov
2014-09-05 13:39:33 +04:00
parent bb54825fac
commit b52f337f7f
43 changed files with 299 additions and 352 deletions
@@ -0,0 +1,11 @@
enum class E {
ENTRY
class object {
fun foo(): E = ENTRY
}
}
fun foo() = E.ENTRY
fun bar() = E.values()
fun baz() = E.valueOf("ENTRY")
@@ -95,6 +95,11 @@ public class JetPsiCheckerTestGenerated extends AbstractJetPsiCheckerTest {
doTest(fileName);
}
@TestMetadata("ClassObjectInEnum.kt")
public void testClassObjectInEnum() throws Exception {
doTest("idea/testData/checker/ClassObjectInEnum.kt");
}
@TestMetadata("ClassObjects.kt")
public void testClassObjects() throws Exception {
String fileName = JetTestUtils.navigationMetadata("idea/testData/checker/ClassObjects.kt");