Temporary workaround for KT-2619 Exception on using java enum in when.

This commit is contained in:
Pavel V. Talanov
2012-08-17 21:35:26 +04:00
parent dc2d21e0c9
commit 0796c98c81
@@ -29,7 +29,6 @@ import org.jetbrains.jet.lang.types.TypeProjection;
import java.util.Collection;
import java.util.Collections;
import java.util.Set;
/**
* @author svtk
@@ -45,7 +44,12 @@ public class WhenChecker {
ClassDescriptor classDescriptor = (ClassDescriptor) declarationDescriptor;
if (classDescriptor.getKind() != ClassKind.ENUM_CLASS || classDescriptor.getModality().isOverridable()) return false;
ClassDescriptor classObjectDescriptor = classDescriptor.getClassObjectDescriptor();
assert classObjectDescriptor != null;
//TODO: workaround for KT-2619 Exception on using java enum in when.
// should provide correct checks for java enums
// may be obsolete once java and kotlin enum work the same way
if (classObjectDescriptor == null) {
return false;
}
JetScope memberScope = classObjectDescriptor.getMemberScope(Collections.<TypeProjection>emptyList());
Collection<ClassDescriptor> objectDescriptors = memberScope.getObjectDescriptors();
boolean isExhaust = true;