with (A) {
doo()
-----
Groovy script
  Method call
    Reference expression
      PsiElement(identifier)('with')
    PsiWhiteSpace(' ')
    Arguments
      PsiElement(()('(')
      Reference expression
        PsiElement(identifier)('A')
      PsiElement())(')')
    PsiWhiteSpace(' ')
    Closable block
      PsiElement({)('{')
      PsiWhiteSpace('\n')
      Parameter list
        <empty list>
      Method call
        Reference expression
          PsiElement(identifier)('doo')
        Arguments
          PsiElement(()('(')
          PsiElement())(')')
      PsiErrorElement:'}' expected
        <empty list>