代码约定/语言的编码规则

时间:2015-03-22 22:20:36

标签: javacc

我想定义一组语言结构专有语言的编码规则,

我该怎么办? 非常感谢你

2 个答案:

答案 0 :(得分:0)

只使用解析,您的一些规则很容易处理。例如,查找函数中的行数并不难:

void function() : {
    int firstLine, lastLine ; } 
{
    {firstLine = getToken(1).beginLine ; }
    ...
    {lastLine = getToken(0).beginLine ; }
    {check( lastLine - firstLine + 1 <= 150 ) ; }
}

其他规则(例如嵌套ifs的示例)最好通过遍历抽象语法树来处理。我建议你看看JJTree。它支持访问者,这对编码您的一些规则非常有用。

答案 1 :(得分:0)

如果我理解正确, 在.jj文件中,我必须添加这个函数,它允许检查方法中的代码行数

或在javacc生成的文件parseur.java中。