| class X{ |
| def foo() { |
| this.doo() |
| } |
| |
| def doo(){ |
| } |
| } |
| ----- |
| Groovy script |
| Class definition |
| Modifiers |
| <empty list> |
| PsiElement(class)('class') |
| PsiWhiteSpace(' ') |
| PsiElement(identifier)('X') |
| Extends clause |
| <empty list> |
| Implements clause |
| <empty list> |
| Type definition body |
| PsiElement({)('{') |
| PsiWhiteSpace('\n ') |
| Method |
| Modifiers |
| PsiElement(def)('def') |
| PsiWhiteSpace(' ') |
| PsiElement(identifier)('foo') |
| PsiElement(()('(') |
| Parameter list |
| <empty list> |
| PsiElement())(')') |
| Throw clause |
| <empty list> |
| PsiWhiteSpace(' ') |
| Open block |
| PsiElement({)('{') |
| PsiWhiteSpace('\n ') |
| Method call |
| Reference expression |
| Reference expression |
| PsiElement(this)('this') |
| PsiElement(.)('.') |
| PsiElement(identifier)('doo') |
| Arguments |
| PsiElement(()('(') |
| PsiElement())(')') |
| PsiElement(new line)('\n ') |
| PsiElement(})('}') |
| PsiElement(new line)('\n\n ') |
| Method |
| Modifiers |
| PsiElement(def)('def') |
| PsiWhiteSpace(' ') |
| PsiElement(identifier)('doo') |
| PsiElement(()('(') |
| Parameter list |
| <empty list> |
| PsiElement())(')') |
| Throw clause |
| <empty list> |
| Open block |
| PsiElement({)('{') |
| PsiWhiteSpace('\n ') |
| PsiElement(})('}') |
| PsiElement(new line)('\n') |
| PsiElement(})('}') |