gpt4 book ai didi

javascript - 如何访问 SonarQube 自定义规则中的后代节点?

转载 作者:行者123 更新时间:2023-11-28 18:05:08 26 4
gpt4 key购买 nike

我正在尝试编写 SonarQube JavaScript 自定义规则。该规则应该看到 for 循环不为空(即 for block 体中有超过 0 个语句)。

我扩展了 DoubleDispatchVisitorCheck 类,并重写了 visitForStatement 方法。在该方法中,我不确定如何确定 for 语句有多少个后代。

  @Override
public void visitForStatement(ForStatementTree tree) {
StatementTree statement = tree.statement();
// How to see tree or statement descendants?
super.visitForStatement(tree);
}

best documentation I've located没有深入讨论如何遍历树中的多个节点。

最佳答案

if (statement.is(Kind.BLOCK) && ((BlockTree) statement).statements().isEmpty()) {
addIssue(tree, "message");
}

顺便说一句,也有类似的规则 https://sonarqube.com/coding_rules#rule_key=javascript%3AEmptyBlock

关于javascript - 如何访问 SonarQube 自定义规则中的后代节点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42835664/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com