PsiModifierList () { PsiModifierList selfModifierList = getSelfModifierList(); if (selfModifierList != null) { return selfModifierList; } PsiField firstField = findFirstFieldInDeclaration(); if (firstField == this) { if (!isValid()) throw new PsiInvalidElementAccessException(this); PsiField lastResort = findFirstFieldByTree(); if (lastResort == this) { throw new IllegalStateException("Missing modifier list for sequence of fields: '" + getText() + "'"); } firstField = lastResort; } return firstField.getModifierList(); }