ANTLR中文手册之三(ANTLR 元语言-元语言词汇表…

2008-02-23 09:21:04来源:互联网 阅读 ()

新老客户大回馈,云服务器低至5折

函数:

/** This method is called by YourLexer.nextToken()
 *  when the lexer has
 * hit EOF condition. EOF is NOT a character.
 * This method is not called if EOF is reached
 * during syntactic predicate evaluation or during
 * evaluation of normal lexical rules, which
 * presumably would be an IOException. This
 * traps the "normal" EOF * condition.
 *
 * uponEOF() is called after the complete evaluation
 * of the previous token and only if your parser asks
 * for another token beyond that last non-EOF token.
 *
 * You might want to throw token or char stream
 * exceptions like: "Heh, premature eof" or a retry
 * stream exception ("I found the end of this file,
 * go back to referencing file").
 */
public void uponEOF()
  throws TokenStreamException, CharStreamException
{
}
 

文件结束条件是一个位比特(从2.7.1版本开始)。因为Terence 将-1当作一个字符而不是一个整型数。(-1 是 '\uFFFF'...晕!).

字符串

字符串常数一个由双引号括起来的一系列字符。在字符串中的字符可以是作为字符也同样合法的转义字符(八进制,Unicode)。当前,ANTLR实际上不允许Unicode出现在字符串常量中(你不得不用转义符)。这是因为在anglr.g文件中设定charVocabulary选项为ascii.

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:RCP财务管理程序v2.0计划

下一篇:一个2005年末典型的Java EE场景