KtFile: enumWthoutClass.kt PACKAGE_DIRECTIVE IMPORT_LIST CLASS MODIFIER_LIST PsiElement(enum)('enum') PsiErrorElement:'class' keyword is expected after 'enum' PsiWhiteSpace(' ') PsiElement(IDENTIFIER)('A') PsiWhiteSpace(' ') CLASS_BODY PsiElement(LBRACE)('{') PsiWhiteSpace(' ') ENUM_ENTRY PsiElement(IDENTIFIER)('X') PsiElement(COMMA)(',') PsiWhiteSpace(' ') ENUM_ENTRY PsiElement(IDENTIFIER)('Y') PsiWhiteSpace(' ') PsiElement(RBRACE)('}') PsiWhiteSpace('\n\n') CLASS MODIFIER_LIST PsiElement(private)('private') PsiWhiteSpace(' ') PsiElement(enum)('enum') PsiErrorElement:'class' keyword is expected after 'enum' PsiWhiteSpace(' ') PsiElement(IDENTIFIER)('B') PsiWhiteSpace(' ') CLASS_BODY PsiElement(LBRACE)('{') PsiWhiteSpace('\n ') ENUM_ENTRY PsiElement(IDENTIFIER)('X') PsiElement(COMMA)(',') PsiWhiteSpace(' ') ENUM_ENTRY PsiElement(IDENTIFIER)('Y') PsiWhiteSpace('\n') PsiElement(RBRACE)('}') PsiWhiteSpace('\n\n') MODIFIER_LIST PsiElement(internal)('internal') PsiWhiteSpace(' ') PsiErrorElement:Expecting a top level declaration PsiElement(IDENTIFIER)('Q') PsiWhiteSpace(' ') FUN PsiErrorElement:Expecting a top level declaration BLOCK PsiElement(LBRACE)('{') PsiWhiteSpace('\n ') REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('X') PsiErrorElement:Unexpected tokens (use ';' to separate expressions on the same line) PsiElement(COMMA)(',') PsiWhiteSpace(' ') PsiElement(IDENTIFIER)('Y') PsiWhiteSpace('\n') PsiElement(RBRACE)('}') PsiWhiteSpace('\n\n') FUN PsiElement(fun)('fun') PsiWhiteSpace(' ') PsiElement(IDENTIFIER)('foo') VALUE_PARAMETER_LIST PsiElement(LPAR)('(') PsiElement(RPAR)(')') PsiWhiteSpace(' ') BLOCK PsiElement(LBRACE)('{') PsiWhiteSpace('\n ') PsiComment(EOL_COMMENT)('// No recovery here') PsiWhiteSpace('\n ') BINARY_EXPRESSION REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('enum') PsiWhiteSpace(' ') OPERATION_REFERENCE PsiElement(IDENTIFIER)('A') PsiWhiteSpace(' ') LAMBDA_EXPRESSION FUNCTION_LITERAL PsiElement(LBRACE)('{') PsiWhiteSpace(' ') VALUE_PARAMETER_LIST VALUE_PARAMETER PsiElement(IDENTIFIER)('X') PsiElement(COMMA)(',') PsiWhiteSpace(' ') VALUE_PARAMETER PsiElement(IDENTIFIER)('Y') PsiErrorElement:Expecting '->' or ',' PsiWhiteSpace(' ') BLOCK PsiElement(RBRACE)('}') PsiWhiteSpace('\n\n ') BINARY_EXPRESSION REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('private') PsiWhiteSpace(' ') OPERATION_REFERENCE PsiElement(IDENTIFIER)('enum') PsiWhiteSpace(' ') CALL_EXPRESSION REFERENCE_EXPRESSION PsiElement(IDENTIFIER)('B') PsiWhiteSpace(' ') LAMBDA_ARGUMENT LAMBDA_EXPRESSION FUNCTION_LITERAL PsiElement(LBRACE)('{') PsiWhiteSpace('\n ') VALUE_PARAMETER_LIST VALUE_PARAMETER PsiElement(IDENTIFIER)('X') PsiElement(COMMA)(',') PsiWhiteSpace(' ') VALUE_PARAMETER PsiElement(IDENTIFIER)('Y') PsiErrorElement:Expecting '->' or ',' PsiWhiteSpace('\n ') BLOCK PsiElement(RBRACE)('}') PsiWhiteSpace('\n') PsiElement(RBRACE)('}')