PsiClass (@NotNull final ASTNode node) { if (node instanceof EnumConstantInitializerElement) { return new PsiEnumConstantInitializerImpl(node); } if (node instanceof AnonymousClassElement) { return new PsiAnonymousClassImpl(node); } if (node instanceof UnnamedClassElement) { return new PsiUnnamedClassImpl(node); } return new PsiClassImpl(node); }