| enum a implements B { |
| @Nullable foo (a, "bar") { |
| def b = 3; |
| }, |
| |
| @Nullable bar ("foo", (Long) new Integer(8)) { |
| }, |
| |
| { a = 7 } |
| } |
| ----- |
| Groovy script |
| Enumeration definition |
| Modifiers |
| <empty list> |
| PsiElement(enum)('enum') |
| PsiWhiteSpace(' ') |
| PsiElement(identifier)('a') |
| PsiWhiteSpace(' ') |
| Implements clause |
| PsiElement(implements)('implements') |
| PsiWhiteSpace(' ') |
| Reference element |
| PsiElement(identifier)('B') |
| PsiWhiteSpace(' ') |
| Type definition body |
| PsiElement({)('{') |
| PsiWhiteSpace('\n ') |
| Enumeration constants |
| Enumeration constant |
| Modifiers |
| Annotation |
| PsiElement(@)('@') |
| Reference element |
| PsiElement(identifier)('Nullable') |
| Annotation arguments |
| <empty list> |
| PsiWhiteSpace(' ') |
| PsiElement(identifier)('foo') |
| PsiWhiteSpace(' ') |
| Arguments |
| PsiElement(()('(') |
| Reference expression |
| PsiElement(identifier)('a') |
| PsiElement(,)(',') |
| PsiWhiteSpace(' ') |
| Literal |
| PsiElement(Gstring)('"bar"') |
| PsiElement())(')') |
| PsiWhiteSpace(' ') |
| Enum constant initializer |
| Type definition body |
| PsiElement({)('{') |
| PsiWhiteSpace('\n ') |
| Variable definitions |
| Modifiers |
| PsiElement(def)('def') |
| PsiWhiteSpace(' ') |
| Field |
| PsiElement(identifier)('b') |
| PsiWhiteSpace(' ') |
| PsiElement(=)('=') |
| PsiWhiteSpace(' ') |
| Literal |
| PsiElement(Integer)('3') |
| PsiElement(;)(';') |
| PsiElement(new line)('\n ') |
| PsiElement(})('}') |
| PsiElement(,)(',') |
| Enumeration constant |
| PsiElement(new line)('\n\n ') |
| Modifiers |
| Annotation |
| PsiElement(@)('@') |
| Reference element |
| PsiElement(identifier)('Nullable') |
| Annotation arguments |
| <empty list> |
| PsiWhiteSpace(' ') |
| PsiElement(identifier)('bar') |
| PsiWhiteSpace(' ') |
| Arguments |
| PsiElement(()('(') |
| Literal |
| PsiElement(Gstring)('"foo"') |
| PsiElement(,)(',') |
| PsiWhiteSpace(' ') |
| Typecast expression |
| PsiElement(()('(') |
| Type element |
| Reference element |
| PsiElement(identifier)('Long') |
| PsiElement())(')') |
| PsiWhiteSpace(' ') |
| NEW expression |
| PsiElement(new)('new') |
| PsiWhiteSpace(' ') |
| Reference element |
| PsiElement(identifier)('Integer') |
| Arguments |
| PsiElement(()('(') |
| Literal |
| PsiElement(Integer)('8') |
| PsiElement())(')') |
| PsiElement())(')') |
| PsiWhiteSpace(' ') |
| Enum constant initializer |
| Type definition body |
| PsiElement({)('{') |
| PsiWhiteSpace('\n ') |
| PsiElement(})('}') |
| PsiElement(,)(',') |
| PsiElement(new line)('\n\n ') |
| Class initializer |
| Modifiers |
| <empty list> |
| Open block |
| PsiElement({)('{') |
| PsiWhiteSpace(' ') |
| Assignment expression |
| Reference expression |
| PsiElement(identifier)('a') |
| PsiWhiteSpace(' ') |
| PsiElement(=)('=') |
| PsiWhiteSpace(' ') |
| Literal |
| PsiElement(Integer)('7') |
| PsiWhiteSpace(' ') |
| PsiElement(})('}') |
| PsiElement(new line)('\n') |
| PsiElement(})('}') |