rspec/rules/S134/python/rule.adoc
2021-01-27 13:42:22 +01:00

18 lines
727 B
Plaintext

Nested ``++if++``, ``++for++``, ``++while++``, ``++try++``, and ``++with++`` statements are key ingredients for making what's known as "Spaghetti code". Such code is hard to read, refactor and therefore maintain.
== Noncompliant Code Example
The following code snippet illustrates this rule with the default threshold of 3.
----
if condition1: # Compliant - depth = 1
# ...
if condition2: # Compliant - depth = 2
# ...
for i in range(10): # Compliant - depth = 3, not exceeding the limit
# ...
if condition4: # Non-Compliant - depth = 4
if condition5: # Depth = 5, exceeding the limit, but issues are only reported on depth = 4
# ...
----