-methid
- = {id} id
- | {plus} plus
- | {minus} minus
- | {star} star
- | {slash} slash
- | {percent} percent
- | {eq} eq
- | {ne} ne
- | {le} le
- | {ge} ge
- | {lt} lt
- | {gt} gt
- | {bra} obra cbra
- | {starship} starship
- | {assign} id assign
- | {braassign} obra cbra assign
- ;
-
-signature
- = params? typing? closure_decls {-> New signature([params.param], typing.type, [closure_decls.closure_decl])}
- | {noclosures} params? typing? no {-> New signature([params.param], typing.type, [])}
+methid {-> methid}
+ = {id} id {-> New methid.id(id)}
+ | {plus} plus {-> New methid.plus(plus)}
+ | {minus} minus {-> New methid.minus(minus)}
+ | {star} star {-> New methid.star(star)}
+ | {slash} slash {-> New methid.slash(slash)}
+ | {percent} percent {-> New methid.percent(percent)}
+ | {eq} eq {-> New methid.eq(eq)}
+ | {ne} ne {-> New methid.ne(ne)}
+ | {le} le {-> New methid.le(le)}
+ | {ge} ge {-> New methid.ge(ge)}
+ | {lt} lt {-> New methid.lt(lt)}
+ | {gt} gt {-> New methid.gt(gt)}
+ | {ll} ll {-> New methid.ll(ll)}
+ | {gg} gg {-> New methid.gg(gg)}
+ | {bra} obra cbra {-> New methid.bra(obra, cbra)}
+ | {starship} starship {-> New methid.starship(starship)}
+ | {assign} id assign {-> New methid.assign(id, assign)}
+ | {braassign} obra cbra assign {-> New methid.braassign(obra, cbra, assign)}
+ ;
+
+signature~withret {-> signature}
+ = params? typing closure_decls {-> New signature([params.param], typing.type, [closure_decls.closure_decl])}
+ | {noclosures} params? typing no {-> New signature([params.param], typing.type, [])}
+!withret| {noret} params? closure_decls {-> New signature([params.param], Null, [closure_decls.closure_decl])}
+!withret| {noretnoclosures} params? no {-> New signature([params.param], Null, [])}