【问题标题】:Checkstyle: access variable names?Checkstyle:访问变量名?
【发布时间】:2012-03-02 03:36:59
【问题描述】:

我们有一个标准,即变量名必须拼写不同(不仅仅是大小写)。例如,这是非法的:

int INDEX = 0;
int index = 0;

我正在尝试编写一个 Checkstyle 扩展来支持这一点,但 ast.getText() 返回的是“variable_def”而不是实际的变量名。我该怎么做?谢谢。

package check;

import java.util.ArrayList;

import com.puppycrawl.tools.checkstyle.api.Check;
import com.puppycrawl.tools.checkstyle.api.DetailAST;
import com.puppycrawl.tools.checkstyle.api.FullIdent;
import com.puppycrawl.tools.checkstyle.api.TokenTypes;

public class VariableSpelling extends Check {
    private ArrayList<String> variables = new ArrayList<String>();

    public int[] getDefaultTokens() {
        return new int[] { TokenTypes.VARIABLE_DEF };
    }

    /**
     * This method is called when a node is found
     */
    public void visitToken(DetailAST ast) {
        String var = ast.getText();
    }
}

【问题讨论】:

    标签: java variables text checkstyle


    【解决方案1】:

    没关系。我发现了问题。您无法获取 VARIABLE_DEF 的文本。您必须深入到 IDENT...然后获取其上的文本。

    【讨论】:

    • 你能用解决方案更新代码吗?我面临着类似的问题,由于我是这个 CheckStyle 的新手,所以看看在哪里进行更改会很有帮助......
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-03-13
    • 2013-12-24
    • 2011-03-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多