在SonarQube中的COBOL中验证评论的最佳方法是什么? 我想验证IDMYIFIDATION DIVISION中注释中标签MYTAG的存在。
IDENTIFICATION DIVISION. 00010000
PROGRAM-ID. ABC00000. 00020000
*@<MYTAG> 00030000
*@ PROGRAM : ABC00000 00040000
*@ OBJECTIVE : MODULO DE ACESSO A XYZ 00050000
*@ DATA : MAIO 2018 00060000
*@ AUTHOR : JOHN DOE 00070000
*@</MYTAG> 00080000
ENVIRONMENT DIVISION. 00090000
**********************
在研究SSLR COBOL Toolkit之后,似乎SSLR COBOL并未将注释检测为节点。
我可以使用SSLR验证COBOL注释吗?
答案 0 :(得分:1)
SonarCOBOL不能将注释表示为语法树的节点,因为它们可以出现在节点的中间。
注释存储在令牌上,您可以通过在实例上调用getTrivia
来获取它们
Token
中的。
每个令牌都存储位于令牌之前的注释。
如果要访问文件的所有令牌,则自定义规则类应实现AstAndTokenVisitor
。
您还可以通过使用AstNode
上的getTokens
方法来检查特定节点的令牌。
您还应该检查documentation for writing custom rules中的SonarCOBOL。