Log instead of assertion in OverrideImplementMethodsHandler

This commit is contained in:
Pavel V. Talanov
2013-09-02 19:52:34 +04:00
parent 3daa66424b
commit 1874942cd2
@@ -20,6 +20,7 @@ import com.intellij.codeInsight.hint.HintManager;
import com.intellij.ide.util.MemberChooser; import com.intellij.ide.util.MemberChooser;
import com.intellij.lang.LanguageCodeInsightActionHandler; import com.intellij.lang.LanguageCodeInsightActionHandler;
import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.application.ApplicationManager;
import com.intellij.openapi.diagnostic.Logger;
import com.intellij.openapi.editor.Editor; import com.intellij.openapi.editor.Editor;
import com.intellij.openapi.project.Project; import com.intellij.openapi.project.Project;
import com.intellij.openapi.ui.DialogWrapper; import com.intellij.openapi.ui.DialogWrapper;
@@ -54,6 +55,8 @@ public abstract class OverrideImplementMethodsHandler implements LanguageCodeIns
.setOverrideRenderingPolicy(DescriptorRenderer.OverrideRenderingPolicy.RENDER_OVERRIDE) .setOverrideRenderingPolicy(DescriptorRenderer.OverrideRenderingPolicy.RENDER_OVERRIDE)
.setUnitReturnType(false).build(); .setUnitReturnType(false).build();
private static final Logger LOG = Logger.getInstance(OverrideImplementMethodsHandler.class.getCanonicalName());
public static List<DescriptorClassMember> membersFromDescriptors( public static List<DescriptorClassMember> membersFromDescriptors(
JetFile file, Iterable<CallableMemberDescriptor> missingImplementations, JetFile file, Iterable<CallableMemberDescriptor> missingImplementations,
BindingContext bindingContext BindingContext bindingContext
@@ -62,9 +65,12 @@ public abstract class OverrideImplementMethodsHandler implements LanguageCodeIns
for (CallableMemberDescriptor memberDescriptor : missingImplementations) { for (CallableMemberDescriptor memberDescriptor : missingImplementations) {
PsiElement declaration = DescriptorToDeclarationUtil.getDeclaration(file, memberDescriptor, bindingContext); PsiElement declaration = DescriptorToDeclarationUtil.getDeclaration(file, memberDescriptor, bindingContext);
assert declaration != null : "Can not find declaration for descriptor " + memberDescriptor; if (declaration == null) {
DescriptorClassMember member = new DescriptorClassMember(declaration, memberDescriptor); LOG.error("Can not find declaration for descriptor " + memberDescriptor);
members.add(member); } else {
DescriptorClassMember member = new DescriptorClassMember(declaration, memberDescriptor);
members.add(member);
}
} }
return members; return members;
} }