== Why is this an issue?

include::../description.adoc[]

== How to fix it

=== Code examples

The following example demonstrates the behavior of the rule with the default threshold of 3 levels of nesting
and one of the potential ways to fix the code smell by introducing guard clauses:

==== Noncompliant code example

[source,go]
----
if condition1 { // Compliant - depth = 1
	/* ... */
	if condition2 { // Compliant - depth = 2
		/* ... */
		for i := 1; i <= 10; i++ { // Compliant - depth = 3, not exceeding the limit
			/* ... */
			if condition4 { // Noncompliant - depth = 4
				if condition5 { // Depth = 5, exceeding the limit, but issues are only reported on depth = 4
					/* ... */
				}
				return
			}
		}
	}
}
----

include::../resources.adoc[]

ifdef::env-github,rspecator-view[]

'''
== Implementation Specification
(visible only on this page)

include::../message.adoc[]

=== Parameters

.max
****
_Integer_

----
4
----

Maximum allowed control flow statement nesting depth.
****


include::../highlighting.adoc[]

'''
== Comments And Links
(visible only on this page)

include::../comments-and-links.adoc[]

endif::env-github,rspecator-view[]
