BNF for JavaDoc.jj

TOKENS

<DEFAULT> TOKEN : {
<COMMENT_START: "/*" ("*")+>
| <COMMENT_END: ("*")+ "/">
| <ASTERISK: "*">
| <EOL: "\r\n" | "\r" | "\n">
| <TAG: "@" <BODY>>
| <WORD: <BODY>>
| <#BODY: (~[" ","\t","\r","\n","*"])+>
}

   
<DEFAULT> SPECIAL : {
<WS: ([" ","\t"])+>
}

   

NON-TERMINALS

javaDoc ::= <COMMENT_START> asteriskFound ( eol ( line )? )* <COMMENT_END>
line ::= ( word restOfLine | asterisk asteriskFound | tag tagLine )
asteriskFound ::= ( tag tagLine | restOfLine )
restOfLine ::= ( word | asterisk | tag )*
tagLine ::= restOfLine
word ::= ( <WORD> | <COMMENT_START> )
asterisk ::= <ASTERISK>
tag ::= <TAG>
eol ::= <EOL>