int (PsiModifierListOwner element, final boolean isLocked) { final boolean isEnum = element instanceof PsiClass && ((PsiClass)element).isEnum(); int flags = (element.hasModifierProperty(PsiModifier.FINAL) && !isEnum ? FLAGS_FINAL : 0) | (element.hasModifierProperty(PsiModifier.STATIC) && !isEnum ? FLAGS_STATIC : 0) | (isLocked ? ElementBase.FLAGS_LOCKED : 0); if (element instanceof PsiClass) { final PsiClass aClass = (PsiClass)element; if (element.hasModifierProperty(PsiModifier.ABSTRACT) && !((PsiClass)element).isInterface()) { flags |= FLAGS_ABSTRACT; } int kind = getClassKind(aClass); if (kind == CLASS_KIND_JUNIT_TEST) { flags |= FLAGS_JUNIT_TEST; } else if (kind == CLASS_KIND_RUNNABLE) { flags |= FLAGS_RUNNABLE; } } return flags; }