JetFile: TypeDef.jet
  NAMESPACE_HEADER
    PsiElement(package)('package')
    PsiWhiteSpace(' ')
    REFERENCE_EXPRESSION
      PsiElement(IDENTIFIER)('foo')
    PsiElement(DOT)('.')
    REFERENCE_EXPRESSION
      PsiElement(IDENTIFIER)('bar')
    PsiElement(DOT)('.')
    PsiElement(IDENTIFIER)('goo')
  PsiWhiteSpace('\n\n')
  TYPEDEF
    PsiElement(type)('type')
    PsiWhiteSpace(' ')
    PsiElement(IDENTIFIER)('foo')
    PsiWhiteSpace(' ')
    TYPE_PARAMETER_LIST
      <empty list>
    PsiElement(EQ)('=')
    PsiWhiteSpace(' ')
    TYPE_REFERENCE
      USER_TYPE
        REFERENCE_EXPRESSION
          PsiElement(IDENTIFIER)('bar')
  PsiWhiteSpace('\n')
  TYPEDEF
    PsiElement(type)('type')
    PsiWhiteSpace(' ')
    PsiElement(IDENTIFIER)('foo')
    TYPE_PARAMETER_LIST
      PsiElement(LT)('<')
      TYPE_PARAMETER
        PsiElement(IDENTIFIER)('T')
      PsiElement(GT)('>')
    PsiWhiteSpace(' ')
    PsiElement(EQ)('=')
    PsiWhiteSpace(' ')
    TYPE_REFERENCE
      USER_TYPE
        REFERENCE_EXPRESSION
          PsiElement(IDENTIFIER)('bar')
  PsiWhiteSpace('\n')
  TYPEDEF
    PsiElement(type)('type')
    PsiWhiteSpace(' ')
    PsiElement(IDENTIFIER)('foo')
    TYPE_PARAMETER_LIST
      PsiElement(LT)('<')
      TYPE_PARAMETER
        PsiElement(IDENTIFIER)('T')
        PsiWhiteSpace(' ')
        PsiElement(COLON)(':')
        PsiWhiteSpace(' ')
        TYPE_REFERENCE
          USER_TYPE
            REFERENCE_EXPRESSION
              PsiElement(IDENTIFIER)('foo')
      PsiElement(GT)('>')
    PsiWhiteSpace(' ')
    PsiElement(EQ)('=')
    PsiWhiteSpace(' ')
    TYPE_REFERENCE
      USER_TYPE
        REFERENCE_EXPRESSION
          PsiElement(IDENTIFIER)('bar')
  PsiWhiteSpace('\n')
  TYPEDEF
    PsiElement(type)('type')
    PsiWhiteSpace(' ')
    PsiElement(IDENTIFIER)('foo')
    TYPE_PARAMETER_LIST
      PsiElement(LT)('<')
      TYPE_PARAMETER
        PsiElement(IDENTIFIER)('A')
      PsiElement(COMMA)(',')
      PsiWhiteSpace(' ')
      TYPE_PARAMETER
        PsiElement(IDENTIFIER)('B')
      PsiElement(GT)('>')
    PsiWhiteSpace(' ')
    PsiElement(EQ)('=')
    PsiWhiteSpace(' ')
    TYPE_REFERENCE
      USER_TYPE
        REFERENCE_EXPRESSION
          PsiElement(IDENTIFIER)('bar')
  PsiWhiteSpace('\n')
  TYPEDEF
    PsiElement(type)('type')
    PsiWhiteSpace(' ')
    PsiElement(IDENTIFIER)('foo')
    TYPE_PARAMETER_LIST
      PsiElement(LT)('<')
      TYPE_PARAMETER
        PsiElement(IDENTIFIER)('A')
      PsiElement(COMMA)(',')
      PsiWhiteSpace(' ')
      TYPE_PARAMETER
        PsiElement(IDENTIFIER)('B')
        PsiWhiteSpace(' ')
        PsiElement(COLON)(':')
        PsiWhiteSpace(' ')
        TYPE_REFERENCE
          USER_TYPE
            REFERENCE_EXPRESSION
              PsiElement(IDENTIFIER)('A')
      PsiElement(GT)('>')
    PsiWhiteSpace(' ')
    PsiElement(EQ)('=')
    PsiWhiteSpace(' ')
    TYPE_REFERENCE
      USER_TYPE
        REFERENCE_EXPRESSION
          PsiElement(IDENTIFIER)('bar')
  PsiWhiteSpace('\n\n')
  TYPEDEF
    PsiElement(type)('type')
    PsiWhiteSpace(' ')
    PsiElement(IDENTIFIER)('foo')
    PsiWhiteSpace(' ')
    TYPE_PARAMETER_LIST
      <empty list>
    PsiElement(EQ)('=')
    PsiWhiteSpace(' ')
    TYPE_REFERENCE
      USER_TYPE
        REFERENCE_EXPRESSION
          PsiElement(IDENTIFIER)('bar')
    PsiWhiteSpace(' ')
    PsiElement(SEMICOLON)(';')
  PsiWhiteSpace('\n')
  TYPEDEF
    PsiElement(type)('type')
    PsiWhiteSpace(' ')
    PsiElement(IDENTIFIER)('foo')
    TYPE_PARAMETER_LIST
      PsiElement(LT)('<')
      TYPE_PARAMETER
        PsiElement(IDENTIFIER)('T')
      PsiElement(GT)('>')
    PsiWhiteSpace(' ')
    PsiElement(EQ)('=')
    PsiWhiteSpace(' ')
    TYPE_REFERENCE
      USER_TYPE
        REFERENCE_EXPRESSION
          PsiElement(IDENTIFIER)('bar')
    PsiWhiteSpace(' ')
    PsiElement(SEMICOLON)(';')
  PsiWhiteSpace('\n\n')
  TYPEDEF
    PsiElement(type)('type')
    PsiWhiteSpace(' ')
    PsiElement(IDENTIFIER)('foo')
    TYPE_PARAMETER_LIST
      PsiElement(LT)('<')
      TYPE_PARAMETER
        PsiElement(IDENTIFIER)('T')
        PsiWhiteSpace(' ')
        PsiElement(COLON)(':')
        PsiWhiteSpace(' ')
        TYPE_REFERENCE
          USER_TYPE
            REFERENCE_EXPRESSION
              PsiElement(IDENTIFIER)('foo')
      PsiElement(GT)('>')
    PsiWhiteSpace(' ')
    PsiElement(EQ)('=')
    PsiWhiteSpace(' ')
    TYPE_REFERENCE
      USER_TYPE
        REFERENCE_EXPRESSION
          PsiElement(IDENTIFIER)('bar')
    PsiWhiteSpace(' ')
    PsiElement(SEMICOLON)(';')
  PsiWhiteSpace('\n')
  TYPEDEF
    PsiElement(type)('type')
    PsiWhiteSpace(' ')
    PsiElement(IDENTIFIER)('foo')
    TYPE_PARAMETER_LIST
      PsiElement(LT)('<')
      TYPE_PARAMETER
        PsiElement(IDENTIFIER)('A')
      PsiElement(COMMA)(',')
      PsiWhiteSpace(' ')
      TYPE_PARAMETER
        PsiElement(IDENTIFIER)('B')
      PsiElement(GT)('>')
    PsiWhiteSpace(' ')
    PsiElement(EQ)('=')
    PsiWhiteSpace(' ')
    TYPE_REFERENCE
      USER_TYPE
        REFERENCE_EXPRESSION
          PsiElement(IDENTIFIER)('bar')
    PsiWhiteSpace(' ')
    PsiElement(SEMICOLON)(';')
  PsiWhiteSpace('\n')
  TYPEDEF
    PsiElement(type)('type')
    PsiWhiteSpace(' ')
    PsiElement(IDENTIFIER)('foo')
    TYPE_PARAMETER_LIST
      PsiElement(LT)('<')
      TYPE_PARAMETER
        PsiElement(IDENTIFIER)('A')
      PsiElement(COMMA)(',')
      PsiWhiteSpace(' ')
      TYPE_PARAMETER
        PsiElement(IDENTIFIER)('B')
        PsiWhiteSpace(' ')
        PsiElement(COLON)(':')
        PsiWhiteSpace(' ')
        TYPE_REFERENCE
          USER_TYPE
            REFERENCE_EXPRESSION
              PsiElement(IDENTIFIER)('A')
      PsiElement(GT)('>')
    PsiWhiteSpace(' ')
    PsiElement(EQ)('=')
    PsiWhiteSpace(' ')
    TYPE_REFERENCE
      USER_TYPE
        REFERENCE_EXPRESSION
          PsiElement(IDENTIFIER)('bar')
    PsiWhiteSpace(' ')
    PsiElement(SEMICOLON)(';')