ModCommand (@NotNull Project project, @NotNull ProblemDescriptor descriptor) { final PsiElement methodNameIdentifier = descriptor.getPsiElement(); final PsiMethod method = (PsiMethod)methodNameIdentifier.getParent(); assert method != null; final PsiMethod[] superMethods = method.findSuperMethods(); SearchScope scope = GlobalSearchScope.allScope(project); final Collection<PsiReference> references = ReferencesSearch.search(method, scope).findAll(); return ModCommand.psiUpdate(method, (m, updater) -> { List<PsiElement> writableRefs = ContainerUtil.map(references, ref -> updater.getWritable(ref.getElement())); for (PsiElement e : writableRefs) { PsiReference reference = e.getReference(); if (reference != null) { reference.bindToElement(superMethods[0]); } } m.delete(); }); }