| def a = foo(1, 2).bar().test ? ab : c |
| ----- |
| Groovy script |
| Variable definitions |
| Modifiers |
| PsiElement(def)('def') |
| PsiWhiteSpace(' ') |
| Variable |
| PsiElement(identifier)('a') |
| PsiWhiteSpace(' ') |
| PsiElement(=)('=') |
| PsiWhiteSpace(' ') |
| Conditional expression |
| Reference expression |
| Method call |
| Reference expression |
| Method call |
| Reference expression |
| PsiElement(identifier)('foo') |
| Arguments |
| PsiElement(()('(') |
| Literal |
| PsiElement(Integer)('1') |
| PsiElement(,)(',') |
| PsiWhiteSpace(' ') |
| Literal |
| PsiElement(Integer)('2') |
| PsiElement())(')') |
| PsiElement(.)('.') |
| PsiElement(identifier)('bar') |
| Arguments |
| PsiElement(()('(') |
| PsiElement())(')') |
| PsiElement(.)('.') |
| PsiElement(identifier)('test') |
| PsiWhiteSpace(' ') |
| PsiElement(?)('?') |
| PsiWhiteSpace(' ') |
| Reference expression |
| PsiElement(identifier)('ab') |
| PsiWhiteSpace(' ') |
| PsiElement(:)(':') |
| PsiWhiteSpace(' ') |
| Reference expression |
| PsiElement(identifier)('c') |