| i = new <String>MyClass<Double>(1, 'abc'){ |
| String foo(){ |
| } |
| } |
| ----- |
| Groovy script |
| Assignment expression |
| Reference expression |
| PsiElement(identifier)('i') |
| PsiWhiteSpace(' ') |
| PsiElement(=)('=') |
| PsiWhiteSpace(' ') |
| NEW expression |
| PsiElement(new)('new') |
| PsiWhiteSpace(' ') |
| Type arguments |
| PsiElement(<)('<') |
| Type element |
| Reference element |
| PsiElement(identifier)('String') |
| PsiElement(>)('>') |
| Anonymous class |
| Reference element |
| PsiElement(identifier)('MyClass') |
| Type arguments |
| PsiElement(<)('<') |
| Type element |
| Reference element |
| PsiElement(identifier)('Double') |
| PsiElement(>)('>') |
| Arguments |
| PsiElement(()('(') |
| Literal |
| PsiElement(Integer)('1') |
| PsiElement(,)(',') |
| PsiWhiteSpace(' ') |
| Literal |
| PsiElement(string)(''abc'') |
| PsiElement())(')') |
| Type definition body |
| PsiElement({)('{') |
| PsiWhiteSpace('\n ') |
| Method |
| Modifiers |
| <empty list> |
| Type element |
| Reference element |
| PsiElement(identifier)('String') |
| PsiWhiteSpace(' ') |
| PsiElement(identifier)('foo') |
| PsiElement(()('(') |
| Parameter list |
| <empty list> |
| PsiElement())(')') |
| Throw clause |
| <empty list> |
| Open block |
| PsiElement({)('{') |
| PsiWhiteSpace('\n ') |
| PsiElement(})('}') |
| PsiElement(new line)('\n') |
| PsiElement(})('}') |