| class d { |
| def int[][][] foo = for |
| |
| {if (true) { |
| |
| @Property def a () {} |
| } |
| } |
| ----- |
| Groovy script |
| Class definition |
| Modifiers |
| <empty list> |
| PsiElement(class)('class') |
| PsiWhiteSpace(' ') |
| PsiElement(identifier)('d') |
| Extends clause |
| <empty list> |
| Implements clause |
| <empty list> |
| PsiWhiteSpace(' ') |
| Type definition body |
| PsiElement({)('{') |
| PsiWhiteSpace('\n ') |
| Variable definitions |
| Modifiers |
| PsiElement(def)('def') |
| PsiWhiteSpace(' ') |
| Array type |
| Array type |
| Array type |
| Built in type |
| PsiElement(int)('int') |
| PsiElement([)('[') |
| PsiElement(])(']') |
| PsiElement([)('[') |
| PsiElement(])(']') |
| PsiElement([)('[') |
| PsiElement(])(']') |
| PsiWhiteSpace(' ') |
| Field |
| PsiElement(identifier)('foo') |
| PsiWhiteSpace(' ') |
| PsiElement(=)('=') |
| PsiErrorElement:Expression expected |
| <empty list> |
| PsiWhiteSpace(' ') |
| PsiElement(for)('for') |
| PsiErrorElement:';', '}' or new line expected |
| <empty list> |
| PsiElement(new line)('\n\n ') |
| Class initializer |
| Modifiers |
| <empty list> |
| Open block |
| PsiElement({)('{') |
| IF statement |
| PsiElement(if)('if') |
| PsiWhiteSpace(' ') |
| PsiElement(()('(') |
| Literal |
| PsiElement(true)('true') |
| PsiElement())(')') |
| PsiWhiteSpace(' ') |
| Block statement |
| Open block |
| PsiElement({)('{') |
| PsiWhiteSpace('\n\n ') |
| Method |
| Modifiers |
| Annotation |
| PsiElement(@)('@') |
| Reference element |
| PsiElement(identifier)('Property') |
| Annotation arguments |
| <empty list> |
| PsiWhiteSpace(' ') |
| PsiElement(def)('def') |
| PsiWhiteSpace(' ') |
| PsiElement(identifier)('a') |
| PsiWhiteSpace(' ') |
| PsiElement(()('(') |
| Parameter list |
| <empty list> |
| PsiElement())(')') |
| Throw clause |
| <empty list> |
| PsiWhiteSpace(' ') |
| Open block |
| PsiElement({)('{') |
| PsiElement(})('}') |
| PsiElement(new line)('\n ') |
| PsiElement(})('}') |
| PsiElement(new line)('\n') |
| PsiElement(})('}') |
| PsiErrorElement:';', '}' or new line expected |
| <empty list> |