ExecutableStatementCount
検証環境
Checkstyleバージョン:10.3.3
Javaバージョン:17
チェック概要
チェック追加バージョン |
---|
Checkstyle 3.2 |
実行可能なステートメントの数が指定した値を超えていないかチェックする。
プロパティ
プロパティ | 型 | デフォルト値 | 説明 | 追加バージョン |
---|---|---|---|---|
max | int | 30 | 最大値 | 3.2 |
tokens | トークンの サブセット | CTOR_DEF, METHOD_DEF, INSTANCE_INIT, STATIC_INIT, COMPACT_CTOR_DEF, LAMBDA |
チェック対象のトークン | 3.2 |
〇トークンのサブセットには以下の値が設定可能
値 | 説明 |
---|---|
CTOR_DEF | コンストラクタ宣言 |
METHOD_DEF | メソッド宣言 |
INSTANCE_INIT | インスタンスイニシャライザ |
STATIC_INIT | スタティックイニシャライザ |
COMPACT_CTOR_DEF | 引数なしコンストラクタ宣言 |
LAMBDA | ラムダ式 |
設定+チェック実行結果
プロパティ設定なし
設定ファイル記述方法
<module name="Checker"> <module name="TreeWalker"> <module name="ExecutableStatementCount"/> </module> </module>
チェック実行例
public class MyClass extends ParentClass { private String str; private int number; public MyClass(String str, int number) { // ステートメントの数が30に設定した値を超える場合はNGとなる super(); this.str = str; this.number = number; } }
プロパティ設定あり
max
許容される最大行数。デフォルト:30
設定ファイル記述方法
<module name="Checker"> <module name="TreeWalker"> <module name="ExecutableStatementCount"> <property name="max" value="2"/> </module> </module> </module>
チェック実行例
public class MyClass extends ParentClass { private String str; private int number; public MyClass(String str, int number) { // NG ステートメントの数が2を超えている super(); this.str = str; this.number = number; } }
tokens
チェック対象のトークンのサブセットをコンマ区切りで記述する。
設定ファイル記述方法
<module name="Checker"> <module name="TreeWalker"> <module name="ExecutableStatementCount"> <property name="tokens" value="CTOR_DEF,METHOD_DEF"/> <property name="max" value="2"/> </module> </module> </module>
チェック実行例
public class MyClass extends ParentClass { private String str; private int number; public MyClass(String str, int number) { // NG ステートメントの数が2を超えている super(); this.str = str; this.number = number; } }