Since Checkstyle 3.2
name | description | type | default value | since |
---|---|---|---|---|
max | Specify maximum allowed nesting depth. | int | 1 |
3.2 |
To configure the check:
<module name="Checker"> <module name="TreeWalker"> <module name="NestedIfDepth"/> </module> </module>
Example:
class Example1 { void Example1() { if (true) { if (true) {} else {} } if (true) { if (true) { if (true) {} // violation, nested if-else depth is 2 (max allowed is 1) else{} } } if (true) { if (true) { if (true) { // violation, nested if-else depth is 2 (max allowed is 1) if (true) {} // violation, nested if-else depth is 2 (max allowed is 1) else {} } } } if (true) { if (true) { if (true) { // violation, nested if-else depth is 2 (max allowed is 1) if (true) { // violation, nested if-else depth is 2 (max allowed is 1) if (true) { // violation, nested if-else depth is 4 (max allowed is 1) if (true) {} // violation, nested if-else depth is 5 (max allowed is 1) else {} } } } } } } }
To configure the check to allow nesting depth 3:
<module name="Checker"> <module name="TreeWalker"> <module name="NestedIfDepth"> <property name="max" value="3"/> </module> </module> </module>
Example:
class Example2 { void Example2() { if (true) { if (true) {} else {} } if (true) { if (true) { if (true) {} else{} } } if (true) { if (true) { if (true) { if (true) {} else {} } } } if (true) { if (true) { if (true) { if (true) { if (true) { // violation, nested if-else depth is 4 (max allowed is 3) if (true) {} // violation, nested if-else depth is 5 (max allowed is 3) else {} } } } } } } }
All messages can be customized if the default message doesn't suit you. Please see the documentation to learn how to.
com.puppycrawl.tools.checkstyle.checks.coding