void (PsiMember classMember, PsiReferenceExpression classMemberReference) { if (classMember instanceof PsiField field) { if (field.getContainingClass().equals(myClass)) { final String name = field.getName(); final PsiField baseField = myBaseClass.findFieldByName(name, true); if (baseField != null) { myPsiActions.add(new QualifyName(classMemberReference, name)); } else if (classMemberReference.getQualifierExpression() instanceof PsiThisExpression) { myPsiActions.add(new QualifyThis((PsiThisExpression) classMemberReference.getQualifierExpression())); } } } else if (classMember instanceof PsiMethod method) { if (method.getContainingClass().equals(myClass)) { if (!myOverriddenMethods.contains(method)) { final PsiMethod baseMethod = findSuperMethodInBaseClass(method); if (baseMethod != null) { myPsiActions.add(new QualifyName(classMemberReference, baseMethod.getName())); } else if (classMemberReference.getQualifierExpression() instanceof PsiThisExpression) { myPsiActions.add(new QualifyThis((PsiThisExpression) classMemberReference.getQualifierExpression())); } } else if (!myDelegatedMethods.contains(method)) { myPsiActions.add(new QualifyWithField(classMemberReference, method.getName())); } } } }