boolean (PsiField field) { if (!field.hasModifierProperty(PsiModifier.STATIC)) { return false; } final PsiClass containingClass = PsiUtil.getTopLevelClass(field); final int[] writeCount = new int[1]; return ReferencesSearch.search(field).forEach(reference -> { final PsiElement element = reference.getElement(); if (!PsiTreeUtil.isAncestor(containingClass, element, true)) { return false; } if (!(element instanceof PsiExpression) || !PsiUtil.isAccessedForWriting((PsiExpression)element)) { return true; } return ++writeCount[0] != 2; }); }