|
Groovy Documentation | |||||||
FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | PROPERTY | CONSTR | METHOD | DETAIL: FIELD | PROPERTY | CONSTR | METHOD |
java.lang.Objectorg.codenarc.rule.AbstractRule
org.codenarc.rule.AbstractAstVisitorRule
org.codenarc.rule.size.AbcComplexityRule
class AbcComplexityRule extends AbstractAstVisitorRule
Rule that calculates the ABC Complexity for methods/classes and checks against configured threshold values.
ThemaxMethodComplexity
property holds the threshold value for the ABC complexity value
(magnitude) for each method. If this value is non-zero, a method with a cyclomatic complexity value greater than
this value is considered a violation. The value does not have to be an integer (i.e., 1.7 is allowed). The
maxMethodComplexity
property defaults to 60.
The maxClassAverageMethodComplexity
property holds the threshold value for the average ABC
complexity value for each class. If this value is non-zero, a class with an average ABC complexity
value greater than this value is considered a violation. The value does not have to be an integer
(i.e., 1.7 is allowed). The maxClassAverageMethodComplexity
property defaults to 60.
The ignoreMethodNames
property optionally specifies one or more (comma-separated) method
names that should be ignored (i.e., that should not cause a rule violation). The name(s) may optionally
include wildcard characters ('*' or '?'). Note that the ignored methods still contribute to the class
complexity value.
This rule treats "closure fields" as methods. If a class field is initialized to a Closure (ClosureExpression),
then that Closure is analyzed and checked just like a method.
Property Summary | |
---|---|
Class |
astVisitorClass
|
String |
ignoreMethodNames
|
int |
maxClassAverageMethodComplexity
|
int |
maxMethodComplexity
|
String |
name
|
int |
priority
|
Constructor Summary | |
AbcComplexityRule()
|
Method Summary |
---|
Methods inherited from class AbstractAstVisitorRule | |
---|---|
shouldApplyThisRuleTo |
Property Detail |
---|
Class astVisitorClass
String ignoreMethodNames
int maxClassAverageMethodComplexity
int maxMethodComplexity
String name
int priority
Constructor Detail |
---|
AbcComplexityRule()
Groovy Documentation