LocalVariableName
検証環境
Checkstyleバージョン:10.8.0
Javaバージョン:17
チェック概要
チェック追加バージョン |
---|
Checkstyle 3.0 |
finalでないローカル変数名が指定の正規表現にマッチしているがどうかをチェックする。
catchパラメータはローカル変数とみなされる。
プロパティ
プロパティ | 型 | デフォルト値 | 説明 | 追加バージョン |
---|---|---|---|---|
format | Pattern | "^[a-z][a-zA-Z0-9]*$" |
変数名の正規表現 | 3.0 |
allowOneCharVarInForLoop | boolean | false | formatプロパティで1文字の変数名が禁止されている場合に、 FORループの初期化式で1文字の変数名を許容するかどうか |
5.8 |
設定+チェック実行結果
プロパティ設定なし
設定ファイル記述方法
<module name="Checker"> <module name="TreeWalker"> <module name="LocalVariableName"/> </module> </module>
チェック実行例
class MyClass { void MyMethod() { // OK for (int var = 1; var < 10; var++) {} // NG 変数名の正規表現にマッチしない for (int VAR = 1; VAR < 10; VAR++) {} // OK for (int i = 1; i < 10; i++) {} // NG 変数名の正規表現にマッチしない for (int var_1 = 0; var_1 < 10; var_1++) {} } }
プロパティ設定あり
format
変数名の正規表現
設定ファイル記述方法
<module name="Checker"> <module name="TreeWalker"> <module name="LocalVariableName"> <property name="format" value="^[a-z](_?[a-zA-Z0-9]+)*$"/> </module> </module> </module>
チェック実行例
class MyClass { void MyMethod() { // OK for (int var = 1; var < 10; var++) {} // NG 変数名の正規表現にマッチしない for (int VAR = 1; VAR < 10; VAR++) {} // OK for (int i = 1; i < 10; i++) {} // OK for (int var_1 = 0; var_1 < 10; var_1++) {} } }
allowOneCharVarInForLoop
formatプロパティで1文字の変数名が禁止されている場合にFORループの初期化式で1文字の変数名を許容するかどうか
デフォルト:false
設定ファイル記述方法
<module name="Checker"> <module name="TreeWalker"> <module name="LocalVariableName"> <property name="allowOneCharVarInForLoop" value="true"/> <property name="format" value="^[a-z][a-zA-Z0-9]+$"/> </module> </module> </module>
チェック実行例
class MyClass { void MyMethod() { // OK for (int var = 1; var < 10; var++) {} // NG 変数名の正規表現にマッチしない for (int VAR = 1; VAR < 10; VAR++) {} // OK 「allowOneCharVarInForLoop=true」なのでチェックOK for (int i = 1; i < 10; i++) {} // NG 変数名の正規表現にマッチしない for (int var_1 = 0; var_1 < 10; var_1++) {} } }