for (File f : []){}
-----
Groovy script
  For statement
    PsiElement(for)('for')
    PsiWhiteSpace(' ')
    PsiElement(()('(')
    In clause
      Parameter
        Modifiers
          <empty list>
        Type element
          Reference element
            PsiElement(identifier)('File')
        PsiWhiteSpace(' ')
        PsiElement(identifier)('f')
      PsiWhiteSpace(' ')
      PsiElement(:)(':')
      PsiWhiteSpace(' ')
      Generalized list
        PsiElement([)('[')
        PsiElement(])(']')
    PsiElement())(')')
    Block statement
      Open block
        PsiElement({)('{')
        PsiElement(})('}')