From d8e8145954a7f9c3d1479fac740f6df83cb62545 Mon Sep 17 00:00:00 2001 From: Andrey Breslav Date: Tue, 21 Aug 2012 18:23:16 +0400 Subject: [PATCH] Grammar for property declarations fixed --- .../src/org/jetbrains/jet/lang/parsing/JetParsing.java | 8 ++++++-- grammar/src/class_members.grm | 6 +++++- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/compiler/frontend/src/org/jetbrains/jet/lang/parsing/JetParsing.java b/compiler/frontend/src/org/jetbrains/jet/lang/parsing/JetParsing.java index 0ff1e8914f6..be223c278f3 100644 --- a/compiler/frontend/src/org/jetbrains/jet/lang/parsing/JetParsing.java +++ b/compiler/frontend/src/org/jetbrains/jet/lang/parsing/JetParsing.java @@ -799,10 +799,14 @@ public class JetParsing extends AbstractJetParsing { } /* + * variableDeclarationEntry + * : SimpleName (":" type)? + * ; + * * property * : modifiers ("val" | "var") - * typeParameters? (type "." | attributes)? - * (SimpleName (":" type)?){","} + * typeParameters? (type "." | annotations)? + * ("(" variableDeclarationEntry{","} ")" | variableDeclarationEntry) * typeConstraints * ("=" element SEMI?)? * (getter? setter? | setter? getter?) SEMI? diff --git a/grammar/src/class_members.grm b/grammar/src/class_members.grm index 580cb06d1cf..77861944f0a 100644 --- a/grammar/src/class_members.grm +++ b/grammar/src/class_members.grm @@ -81,10 +81,14 @@ functionBody : "=" expression ; +variableDeclarationEntry + : SimpleName (":" type)? + ; + property : modifiers ("val" | "var") typeParameters? (type "." | annotations)? - (SimpleName (":" type)?){","} + ("(" variableDeclarationEntry{","} ")" | variableDeclarationEntry) typeConstraints ("=" expression SEMI?)? (getter? setter? | setter? getter?) SEMI?