JetFile: Where.kt
  PACKAGE_DIRECTIVE
    <empty list>
  IMPORT_LIST
    <empty list>
  PROPERTY
    PsiElement(val)('val')
    PsiWhiteSpace(' ')
    PsiElement(IDENTIFIER)('foo')
    PsiWhiteSpace(' ')
    PsiElement(EQ)('=')
    PsiWhiteSpace(' ')
    OBJECT_LITERAL
      OBJECT_DECLARATION
        PsiElement(object)('object')
        PsiWhiteSpace(' ')
        PsiErrorElement:An object expression cannot bind a name
          PsiElement(IDENTIFIER)('Name')
        PsiWhiteSpace(' ')
        PsiErrorElement:Where clause is not allowed for objects
          PsiErrorElement:Type constraints are not allowed when no type parameters declared
            PsiElement(where)('where')
            PsiWhiteSpace(' ')
            TYPE_CONSTRAINT_LIST
              TYPE_CONSTRAINT
                REFERENCE_EXPRESSION
                  PsiElement(IDENTIFIER)('T')
                PsiWhiteSpace(' ')
                PsiElement(COLON)(':')
                PsiWhiteSpace(' ')
                TYPE_REFERENCE
                  USER_TYPE
                    REFERENCE_EXPRESSION
                      PsiElement(IDENTIFIER)('G')
        PsiWhiteSpace(' ')
        CLASS_BODY
          PsiElement(LBRACE)('{')
          PsiElement(RBRACE)('}')
  PsiWhiteSpace('\n')
  PROPERTY
    PsiElement(val)('val')
    PsiWhiteSpace(' ')
    PsiElement(IDENTIFIER)('foo')
    PsiWhiteSpace(' ')
    PsiElement(EQ)('=')
    PsiWhiteSpace(' ')
    OBJECT_LITERAL
      OBJECT_DECLARATION
        PsiElement(object)('object')
        PsiWhiteSpace(' ')
        PsiElement(COLON)(':')
        PsiWhiteSpace(' ')
        SUPER_TYPE_LIST
          SUPER_TYPE_ENTRY
            TYPE_REFERENCE
              USER_TYPE
                REFERENCE_EXPRESSION
                  PsiElement(IDENTIFIER)('Bar')
        PsiWhiteSpace(' ')
        PsiErrorElement:Where clause is not allowed for objects
          PsiErrorElement:Type constraints are not allowed when no type parameters declared
            PsiElement(where)('where')
            PsiWhiteSpace(' ')
            TYPE_CONSTRAINT_LIST
              TYPE_CONSTRAINT
                REFERENCE_EXPRESSION
                  PsiElement(IDENTIFIER)('T')
                PsiWhiteSpace(' ')
                PsiElement(COLON)(':')
                PsiWhiteSpace(' ')
                TYPE_REFERENCE
                  USER_TYPE
                    REFERENCE_EXPRESSION
                      PsiElement(IDENTIFIER)('G')
        PsiWhiteSpace(' ')
        CLASS_BODY
          PsiElement(LBRACE)('{')
          PsiElement(RBRACE)('}')
  PsiWhiteSpace('\n\n')
  PROPERTY
    PsiElement(val)('val')
    PsiWhiteSpace(' ')
    PsiElement(IDENTIFIER)('foo')
    PsiWhiteSpace(' ')
    PsiElement(EQ)('=')
    PsiWhiteSpace(' ')
    OBJECT_LITERAL
      OBJECT_DECLARATION
        PsiElement(object)('object')
        PRIMARY_CONSTRUCTOR
          VALUE_PARAMETER_LIST
            PsiElement(LPAR)('(')
            PsiElement(RPAR)(')')
        PsiWhiteSpace(' ')
        PsiErrorElement:Where clause is not allowed for objects
          PsiErrorElement:Type constraints are not allowed when no type parameters declared
            PsiElement(where)('where')
            PsiWhiteSpace(' ')
            TYPE_CONSTRAINT_LIST
              TYPE_CONSTRAINT
                REFERENCE_EXPRESSION
                  PsiElement(IDENTIFIER)('T')
                PsiWhiteSpace(' ')
                PsiElement(COLON)(':')
                PsiWhiteSpace(' ')
                TYPE_REFERENCE
                  USER_TYPE
                    REFERENCE_EXPRESSION
                      PsiElement(IDENTIFIER)('G')
        PsiWhiteSpace(' ')
        CLASS_BODY
          PsiElement(LBRACE)('{')
          PsiElement(RBRACE)('}')
  PsiWhiteSpace('\n')
  PROPERTY
    PsiElement(val)('val')
    PsiWhiteSpace(' ')
    PsiElement(IDENTIFIER)('foo')
    PsiWhiteSpace(' ')
    PsiElement(EQ)('=')
    PsiWhiteSpace(' ')
    OBJECT_LITERAL
      OBJECT_DECLARATION
        PsiElement(object)('object')
        PRIMARY_CONSTRUCTOR
          VALUE_PARAMETER_LIST
            PsiElement(LPAR)('(')
            PsiElement(RPAR)(')')
        PsiWhiteSpace(' ')
        PsiElement(COLON)(':')
        PsiWhiteSpace(' ')
        SUPER_TYPE_LIST
          SUPER_TYPE_ENTRY
            TYPE_REFERENCE
              USER_TYPE
                REFERENCE_EXPRESSION
                  PsiElement(IDENTIFIER)('Bar')
        PsiWhiteSpace(' ')
        PsiErrorElement:Where clause is not allowed for objects
          PsiErrorElement:Type constraints are not allowed when no type parameters declared
            PsiElement(where)('where')
            PsiWhiteSpace(' ')
            TYPE_CONSTRAINT_LIST
              TYPE_CONSTRAINT
                REFERENCE_EXPRESSION
                  PsiElement(IDENTIFIER)('T')
                PsiWhiteSpace(' ')
                PsiElement(COLON)(':')
                PsiWhiteSpace(' ')
                TYPE_REFERENCE
                  USER_TYPE
                    REFERENCE_EXPRESSION
                      PsiElement(IDENTIFIER)('G')
        PsiWhiteSpace(' ')
        CLASS_BODY
          PsiElement(LBRACE)('{')
          PsiElement(RBRACE)('}')
  PsiWhiteSpace('\n\n')
  PROPERTY
    PsiElement(val)('val')
    PsiWhiteSpace(' ')
    PsiElement(IDENTIFIER)('foo')
    PsiWhiteSpace(' ')
    PsiElement(EQ)('=')
    PsiWhiteSpace(' ')
    OBJECT_LITERAL
      OBJECT_DECLARATION
        PsiElement(object)('object')
        PRIMARY_CONSTRUCTOR
          VALUE_PARAMETER_LIST
            PsiElement(LPAR)('(')
            PsiElement(RPAR)(')')
        PsiWhiteSpace(' ')
        PsiElement(COLON)(':')
        PsiWhiteSpace(' ')
        SUPER_TYPE_LIST
          SUPER_TYPE_ENTRY
            TYPE_REFERENCE
              USER_TYPE
                REFERENCE_EXPRESSION
                  PsiElement(IDENTIFIER)('Bar')
        PsiWhiteSpace(' ')
        PsiErrorElement:Where clause is not allowed for objects
          PsiErrorElement:Type constraints are not allowed when no type parameters declared
            PsiElement(where)('where')
            PsiWhiteSpace(' ')
            TYPE_CONSTRAINT_LIST
              TYPE_CONSTRAINT
                REFERENCE_EXPRESSION
                  PsiElement(IDENTIFIER)('T')
                PsiWhiteSpace(' ')
                PsiElement(COLON)(':')
                PsiWhiteSpace(' ')
                TYPE_REFERENCE
                  USER_TYPE
                    REFERENCE_EXPRESSION
                      PsiElement(IDENTIFIER)('G')
        PsiWhiteSpace(' ')
        CLASS_BODY
          PsiElement(LBRACE)('{')
          PsiElement(RBRACE)('}')
