parser: remove useless production `writable2`
authorJean Privat <jean@pryen.org>
Wed, 9 Apr 2014 14:56:29 +0000 (10:56 -0400)
committerJean Privat <jean@pryen.org>
Wed, 9 Apr 2014 15:05:05 +0000 (11:05 -0400)
just accepts visibility in all versions

Signed-off-by: Jean Privat <jean@pryen.org>

src/parser/nit.sablecc3xx

index 0b8a186..c282583 100644 (file)
@@ -266,8 +266,8 @@ propdef~toplevel {-> propdef}
        | {extern_implicit} [doc]:no redef visibility kwmeth methid signature extern_calls extern_code_block {-> New propdef.extern_meth(doc.doc, redef.kwredef, visibility, kwmeth, methid, signature.signature, Null, extern_calls, extern_code_block)}
 !toplevel| {var} [doc]:no readable? writable? redef visibility kwvar attrid typing? {-> New propdef.attr(doc.doc, readable.able, writable.able, redef.kwredef, visibility, kwvar, attrid, Null, typing.type, Null, Null)}
 !toplevel| {var2} [doc]:no readable? writable? redef visibility kwvar attrid typing? assign [n2]:no expr {-> New propdef.attr(doc.doc, readable.able, writable.able, redef.kwredef, visibility, kwvar, attrid, Null, typing.type, Null, expr)}
-!toplevel| {var3} [doc]:no redef visibility kwvar id typing? writable2? annotation_withend {-> New propdef.attr(doc.doc, Null, writable2.able, redef.kwredef, visibility, kwvar, Null, id, typing.type, annotation_withend.annotations, Null)}
-!toplevel| {var4} [doc]:no redef visibility kwvar id typing? writable2? assign [n2]:no expr annotation_withend {-> New propdef.attr(doc.doc, Null, writable2.able, redef.kwredef, visibility, kwvar, Null, id, typing.type, annotation_withend.annotations, expr.expr)}
+!toplevel| {var3} [doc]:no redef visibility kwvar id typing? writable? annotation_withend {-> New propdef.attr(doc.doc, Null, writable.able, redef.kwredef, visibility, kwvar, Null, id, typing.type, annotation_withend.annotations, Null)}
+!toplevel| {var4} [doc]:no redef visibility kwvar id typing? writable? assign [n2]:no expr annotation_withend {-> New propdef.attr(doc.doc, Null, writable.able, redef.kwredef, visibility, kwvar, Null, id, typing.type, annotation_withend.annotations, expr.expr)}
 !toplevel| {init} [doc]:no redef visibility kwinit methid? signature annotation_noend? kwdo stmtso kwend_o {-> New propdef.concrete_init(doc.doc, redef.kwredef, visibility, kwinit, methid, signature, annotation_noend.annotations, stmtso.expr)}
 !toplevel| {type} [doc]:no redef visibility kwtype classid typing annotation_withend {-> New propdef.type(doc.doc, redef.kwredef, visibility, kwtype, classid, typing.type, annotation_withend.annotations)}
 !toplevel| {extern_init} [doc]:no redef visibility kwnew methid? signature kwis kwextern string_o extern_calls extern_code_block_o {-> New propdef.extern_init(doc.doc, redef.kwredef, visibility, kwnew, methid, signature, string_o.string, extern_calls, extern_code_block_o.extern_code_block)}
@@ -283,12 +283,9 @@ annotation_noend {-> annotations}
        | {more} kwis n1 line_annotations {-> line_annotations.annotations}
        ;
 readable {-> able}
-       = redef kwreadable {-> New able.read(redef.kwredef, kwreadable)}
+       = redef visibility kwreadable {-> New able.read(redef.kwredef, kwreadable)}
        ;
 writable {-> able}
-       = redef kwwritable {-> New able.write(redef.kwredef, Null, kwwritable)}
-       ;
-writable2 {-> able}
        = redef visibility kwwritable {-> New able.write(redef.kwredef, visibility, kwwritable)}
        ;