| class A { |
| def <T> t = 5 |
| def foo = 42 |
| } |
| ----- |
| Groovy script |
| Class definition |
| Modifiers |
| <empty list> |
| PsiElement(class)('class') |
| PsiWhiteSpace(' ') |
| PsiElement(identifier)('A') |
| Extends clause |
| <empty list> |
| Implements clause |
| <empty list> |
| PsiWhiteSpace(' ') |
| Type definition body |
| PsiElement({)('{') |
| PsiWhiteSpace('\n ') |
| Variable definitions |
| Modifiers |
| PsiElement(def)('def') |
| PsiWhiteSpace(' ') |
| PsiErrorElement:Type parameters are unexpected |
| Type parameter list |
| PsiElement(<)('<') |
| Type parameter |
| PsiElement(identifier)('T') |
| Type extends bounds list |
| <empty list> |
| PsiElement(>)('>') |
| PsiWhiteSpace(' ') |
| Field |
| PsiElement(identifier)('t') |
| PsiWhiteSpace(' ') |
| PsiElement(=)('=') |
| PsiWhiteSpace(' ') |
| Literal |
| PsiElement(Integer)('5') |
| PsiElement(new line)('\n ') |
| Variable definitions |
| Modifiers |
| PsiElement(def)('def') |
| PsiWhiteSpace(' ') |
| Field |
| PsiElement(identifier)('foo') |
| PsiWhiteSpace(' ') |
| PsiElement(=)('=') |
| PsiWhiteSpace(' ') |
| Literal |
| PsiElement(Integer)('42') |
| PsiElement(new line)('\n') |
| PsiElement(})('}') |