我想配置一个简单的checkstyle规则。它应该确保在方法/构造函数声明的左括号和右括号之前有空白。
例子:
有效:public void validMethodDeclaration ( boolean foo ) {}
无效:public void invalidMethodDeclaration (boolean foo) {}
正常的方法调用应如下所示:methodCall(true);
不幸的是,ParenPad
和MethodParamPad
模块无法捕获这种情况。 ParenPad
不允许METHOD_DEF
或CTOR_DEF
作为标记,而MethodParamPad
只能确保左方括号前的空间。
最佳答案
ParenPad
将为您执行此检查。如果您对方法/构造函数声明的开头之后和结束括号之前的空间感兴趣,但又不想在方法调用,构造函数调用和super调用周围使用空格,则可以使用不同的set两次运行ParenPad
令牌数量:
<module name="ParenPad">
<property name="option" value="space"/>
<property name="tokens" value="LPAREN,RPAREN"/>
</module>
<module name="ParenPad">
<property name="option" value="nospace"/>
<property name="tokens" value="CTOR_CALL,METHOD_CALL,SUPER_CTOR_CALL"/>
</module>
METHOD_DEF
和CTOR_DEF
是在树结构中包含多个其他标记的标记,包括普通的LPAREN
和RPAREN
。