javadoclex.g
上传用户:afrynkmhm
上传日期:2007-01-06
资源大小:1262k
文件大小:1k
源码类别:

编译器/解释器

开发平台:

Others

  1. class DemoJavaDocLexer extends Lexer;
  2. options {
  3. k=2;
  4. importVocab = Common;
  5. exportVocab = JavaDoc;
  6. filter=true;
  7. }
  8. PARAM
  9. : "@param" ' ' ID
  10. ;
  11. EXCEPTION
  12. : "@exception" ' ' ID
  13. ;
  14. protected
  15. ID : ('a'..'z'|'A'..'Z')+
  16. ;
  17. /** This rule simply prevents JAVADOC_CLOSE from being
  18.  *  called for every '*' in a comment.  Calling JAVADOC_CLOSE
  19.  *  will fail for simple '*' and cause an exception, which
  20.  *  is slow.  In other words, the grammar will work without
  21.  *  this rule, but is slower.
  22.  */
  23. STAR: '*' {$setType(Token.SKIP);}
  24. ;
  25. JAVADOC_CLOSE
  26. : "*/" {Main.selector.pop();}
  27. ;
  28. /** Ignore whitespace inside JavaDoc comments */
  29. NEWLINE
  30. : ( "rn"  // Evil DOS
  31. | 'r'    // Macintosh
  32. | 'n'    // Unix (the right way)
  33. )
  34. { newline(); $setType(Token.SKIP); }
  35. ;