| grammar t030specialStates; | |
| options { | |
| language = JavaScript; | |
| } | |
| @members { | |
| this.recover = function(input, re) { | |
| throw re; | |
| }; | |
| } | |
| r | |
| : ( {this.cond}? NAME | |
| | {!this.cond}? NAME WS+ NAME | |
| ) | |
| ( WS+ NAME )? | |
| EOF | |
| ; | |
| NAME: ('a'..'z') ('a'..'z' | '0'..'9')+; | |
| NUMBER: ('0'..'9')+; | |
| WS: ' '+; |