This commit is contained in:
Andrey Breslav
2012-04-27 10:43:14 +04:00
parent 1795ca9830
commit 227d50945c
@@ -298,21 +298,13 @@ public class OverrideResolver {
} }
public static void collectMissingImplementations(MutableClassDescriptor classDescriptor, Set<CallableMemberDescriptor> abstractNoImpl, Set<CallableMemberDescriptor> manyImpl) { public static void collectMissingImplementations(MutableClassDescriptor classDescriptor, Set<CallableMemberDescriptor> abstractNoImpl, Set<CallableMemberDescriptor> manyImpl) {
for (CallableMemberDescriptor descriptor : classDescriptor.getAllCallableMembers()) {
for (DeclarationDescriptor descriptor : classDescriptor.getScopeForMemberLookup().getAllDescriptors()) { collectMissingImplementations(descriptor, abstractNoImpl, manyImpl);
if (descriptor instanceof CallableMemberDescriptor) {
collectMissingImplementations((CallableMemberDescriptor) descriptor, abstractNoImpl, manyImpl);
}
} }
} }
private static void collectMissingImplementations(CallableMemberDescriptor descriptor, Set<CallableMemberDescriptor> abstractNoImpl, Set<CallableMemberDescriptor> manyImpl) { private static void collectMissingImplementations(CallableMemberDescriptor descriptor, Set<CallableMemberDescriptor> abstractNoImpl, Set<CallableMemberDescriptor> manyImpl) {
if (descriptor.getKind().isReal()) { if (!descriptor.getKind().isReal()) {
if (descriptor.getModality() == Modality.ABSTRACT) {
//abstractNoImpl.add(descriptor);
}
}
else {
Collection<CallableMemberDescriptor> overriddenDeclarations = OverridingUtil.getOverridenDeclarations(descriptor); Collection<CallableMemberDescriptor> overriddenDeclarations = OverridingUtil.getOverridenDeclarations(descriptor);
if (overriddenDeclarations.size() == 0) { if (overriddenDeclarations.size() == 0) {
throw new IllegalStateException(); throw new IllegalStateException();