PsiJavaFile:AnonymousWithTypeParams.java
  PsiImportList
    <empty list>
  PsiClass:Test
    PsiModifierList:
      <empty list>
    PsiKeyword:class('class')
    PsiWhiteSpace(' ')
    PsiIdentifier:Test('Test')
    PsiTypeParameterList
      <empty list>
    PsiReferenceList
      <empty list>
    PsiReferenceList
      <empty list>
    PsiWhiteSpace(' ')
    PsiJavaToken:LBRACE('{')
    PsiWhiteSpace('\n    ')
    PsiMethod:method
      PsiModifierList:
        <empty list>
      PsiTypeParameterList
        <empty list>
      PsiTypeElement:void
        PsiKeyword:void('void')
      PsiWhiteSpace(' ')
      PsiIdentifier:method('method')
      PsiParameterList:()
        PsiJavaToken:LPARENTH('(')
        PsiJavaToken:RPARENTH(')')
      PsiReferenceList
        <empty list>
      PsiWhiteSpace(' ')
      PsiCodeBlock
        PsiJavaToken:LBRACE('{')
        PsiWhiteSpace('\n        ')
        PsiExpressionStatement
          PsiNewExpression:new a<T>() {
          void a() {}
        }
            PsiKeyword:new('new')
            PsiReferenceParameterList
              <empty list>
            PsiWhiteSpace(' ')
            PsiAnonymousClass
              PsiJavaCodeReferenceElement:a<T>
                PsiIdentifier:a('a')
                PsiReferenceParameterList
                  PsiJavaToken:LT('<')
                  PsiTypeElement:T
                    PsiJavaCodeReferenceElement:T
                      PsiIdentifier:T('T')
                      PsiReferenceParameterList
                        <empty list>
                  PsiJavaToken:GT('>')
              PsiExpressionList
                PsiJavaToken:LPARENTH('(')
                PsiJavaToken:RPARENTH(')')
              PsiWhiteSpace(' ')
              PsiJavaToken:LBRACE('{')
              PsiWhiteSpace('\n          ')
              PsiMethod:a
                PsiModifierList:
                  <empty list>
                PsiTypeParameterList
                  <empty list>
                PsiTypeElement:void
                  PsiKeyword:void('void')
                PsiWhiteSpace(' ')
                PsiIdentifier:a('a')
                PsiParameterList:()
                  PsiJavaToken:LPARENTH('(')
                  PsiJavaToken:RPARENTH(')')
                PsiReferenceList
                  <empty list>
                PsiWhiteSpace(' ')
                PsiCodeBlock
                  PsiJavaToken:LBRACE('{')
                  PsiJavaToken:RBRACE('}')
              PsiWhiteSpace('\n        ')
              PsiJavaToken:RBRACE('}')
          PsiJavaToken:SEMICOLON(';')
        PsiWhiteSpace('\n    ')
        PsiJavaToken:RBRACE('}')
    PsiWhiteSpace('\n')
    PsiJavaToken:RBRACE('}')