JavaCC 之 HelloWorld

HelloWorld:

options {
	STATIC = false;
}

PARSER_BEGIN(Hello)
package test.xue.javacc.hello;

public class Hello {

}
PARSER_END(Hello)

SKIP : {"\r" | "\n"}
TOKEN : {<INT : (["0"-"9"])+>}

void parse() :
{}
{
	<INT>
	(
		"+"
		<INT>
	)*<EOF>
}

这是个最简单的一个整数加法,保存为hello.jj,然后再命令行中:

javacc hello.jj

之后,得到下面7个文件

这之后可以写个测试:

import java.io.StringReader;

public class TestHello{
	public static void main(String[] args) throws ParseException {
		Hello hello = new Hello(new StringReader("1+23+65+5"));
		hello.parse();
	}
}

当然不会有任何输出,但如果输入的是”1+9-2″,就有输出了,error message


你可能感兴趣的:(JavaCC 之 HelloWorld)