親モジュール | TreeWalker |
---|---|
実装クラス | com.puppycrawl.tools.checkstyle.checks.GenericIllegalRegexpCheck |
指定した正規表現にマッチする部分があるかをチェックします。Checkstyle は正規表現エンジンとして、Jakarta Regexp を使っている。
プロパティ名 | 型 | デフォルト | 概要 |
format | Regular Expression | ^$ | チェックする正規表現パターン |
ignoreCase | Boolean | false | 検索時に大文字小文字を区別するかどうか |
message | String | "" | マッチしたときに表示するメッセージを指定します |
<module name = "GenericIllegalRegexp"> <property name = "format" value = "System\.out\.println" /> <property name = "message" value = "" /> </module>
<rule-configuration classname = "com.puppycrawl.tools.checkstyle.checks.GenericIllegalRegexpCheck" severity = "warning"> <config-properties> <config-property name = "format" value = "System\.out\.println" /> </config-properties> </rule-configuration>
親モジュール | Checker |
---|---|
実装クラス | com.puppycrawl.tools.checkstyle.checks.NewlineAtEndOfFileCheck |
Since | 3.1 |
ファイルの最後が改行で終わっているかをチェックします。
Rationale: ソースファイルやテキストファイルは、一般的に改行文字で終わるべきである。特に、CVS のような SCM を使っているときは。CVS は、改行文字で終わっていないファイルを見つけるたびに、警告を出力することになります。
プロパティ名 | 型 | デフォルト | 概要 |
lineSeparator | system, crlf, cr, lf | system | 改行文字 |
<module name = "NewlineAtEndOfFile"> <property name = "lineSeparator" value = "lf" /> </module>
<rule-configuration classname = "com.puppycrawl.tools.checkstyle.checks.NewlineAtEndOfFileCheck" severity = "warning"> <config-properties> <config-property name = "lineSeparator" value = "lf" /> </config-properties> </rule-configuration>
親モジュール | TreeWalker |
---|---|
実装クラス | com.puppycrawl.tools.checkstyle.checks.TodoCommentCheck |
TODO: があるかをチェックします。このチェックは、Java コメント内である正規表現にマッチするかをチェックするために汎用的に使えるものです。他のパターンでチェックしたい場合は、format プロパティで指定します。
TODO: コメントは、やるべきことが分かるようにしておく方法として有用です。これを Checkstyle によってチェックさせることによって、忘れちゃうのを防げます。
プロパティ名 | 型 | デフォルト | 概要 |
format | Regular Expression | TODO: | チェックする正規表現パターン |
<module name = "TodoComment" />
<rule-configuration classname = "com.puppycrawl.tools.checkstyle.checks.NewlineAtEndOfFileCheck" severity = "warning"> <config-properties /> </rule-configuration>
親モジュール | Checker |
---|---|
実装クラス | com.puppycrawl.tools.checkstyle.checks.TranslationCheck |
複数のプロパティファイルに、まったく同じプロパティが各ファイルに存在するかをチェックします。ようは、PropertyResourceBundle を使うときに異なるロケールのプロパティファイルのチェックに使うものです。
プロパティ名 | 型 | デフォルト | 概要 |
fileExtension | String Set | properties | チェックするファイルの拡張子 |
<module name = "Translation" />
<rule-configuration classname = "com.puppycrawl.tools.checkstyle.checks.TranslationCheck" severity = "warning"> <config-properties /> </rule-configuration>
親モジュール | TreeWalker |
---|---|
実装クラス | com.puppycrawl.tools.checkstyle.checks.UpperEllCheck |
long 定数を定義するときに、L(大文字のL)を使っているかをチェックします。
Rationale: l(小文字のL)は、1(数字の1)に良く似ているため。
<module name = "UpperEll" />
<rule-configuration classname = "com.puppycrawl.tools.checkstyle.checks.UpperEllCheck" severity = "warning"> <config-properties /> </rule-configuration>
親モジュール | TreeWalker |
---|---|
実装クラス | com.puppycrawl.tools.checkstyle.checks.ArrayTypeStyleCheck |
Since | 3.1 |
配列を宣言するときの書き方をチェックします。
プロパティ名 | 型 | デフォルト | 概要 |
javaStyle | Boolean | true | Java-style(true)/C-style(false) |
<module name = "ArrayTypeStyle" />
<rule-configuration classname = "com.puppycrawl.tools.checkstyle.checks.ArrayTypeStyleCheck" severity = "warning"> <config-properties /> </rule-configuration>
<module name = "ArrayTyleStyle" />
としたときに、以下のようになる。
OK! public static void main(String[] args) { Boo! public static void main(String args[]) {
親モジュール | TreeWalker |
---|---|
実装クラス | com.puppycrawl.tools.checkstyle.checks.FinalParametersCheck |
メソッド及びコンストラクタのパラメタの宣言に final がついていることをチェックします。このチェックは、インターフェイスのメソッドには行いません。それは、インターフェイスには実装が無いため、パラメタが変更されることもないからです。
Rationale: パラメタとして渡したオブジェクトが変更されてしまうことは、混乱を招くため避けるべきです。これを防ぐためのよい方法は、パラメタにすべて final をつけることによって、コンパイラにチェックしてもらうことです。
プロパティ名 | 型 | デフォルト | 概要 |
tokens | METHOD_DEF, CTOR_DEF | すべて | チェックする対象 |
<module name = "FinalParameters"> <property name = "tokens" value = "METHOD_DEF" /> </module>
<rule-configuration classname = "com.puppycrawl.tools.checkstyle.checks.FinalParametersCheck" severity = "warning"> <config-properties> <config-property name = "tokens" value = "METHOD_DEF" /> </config-properties> </rule-configuration>
<module name = "FinalParameters" />
としたときに、以下のようになる。
OK! public void replaceNotation(final String value) { Boo! public void replaceNotation(String value) {
親モジュール | TreeWalker |
---|---|
実装クラス | com.puppycrawl.tools.checkstyle.checks.indentation.IndentationCheck |
Since | 3.2 |
コードが正しくインデントされているかをチェックします。