|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectnet.sourceforge.pmd.AbstractPropertySource
net.sourceforge.pmd.lang.rule.AbstractRule
net.sourceforge.pmd.lang.java.rule.AbstractJavaRule
net.sourceforge.pmd.lang.java.rule.AbstractStatisticalJavaRule
net.sourceforge.pmd.lang.java.rule.codesize.NPathComplexityRule
public class NPathComplexityRule
NPath complexity is a measurement of the acyclic execution paths through a function. See Nejmeh, Communications of the ACM Feb 1988 pp 188-200.
Field Summary |
---|
Fields inherited from class net.sourceforge.pmd.AbstractPropertySource |
---|
propertyDescriptors, propertyValuesByDescriptor |
Fields inherited from interface net.sourceforge.pmd.lang.rule.stat.StatisticalRule |
---|
MINIMUM_DESCRIPTOR, SIGMA_DESCRIPTOR, TOP_SCORE_DESCRIPTOR |
Fields inherited from interface net.sourceforge.pmd.Rule |
---|
VIOLATION_SUPPRESS_REGEX_DESCRIPTOR, VIOLATION_SUPPRESS_XPATH_DESCRIPTOR |
Constructor Summary | |
---|---|
NPathComplexityRule()
|
Method Summary | |
---|---|
Object[] |
getViolationParameters(DataPoint point)
|
static int |
sumExpressionComplexity(ASTExpression expr)
Calculate the boolean complexity of the given expression. |
Object |
visit(ASTConditionalExpression node,
Object data)
|
Object |
visit(ASTDoStatement node,
Object data)
|
Object |
visit(ASTForStatement node,
Object data)
|
Object |
visit(ASTIfStatement node,
Object data)
|
Object |
visit(ASTMethodDeclaration node,
Object data)
|
Object |
visit(ASTReturnStatement node,
Object data)
|
Object |
visit(ASTSwitchStatement node,
Object data)
|
Object |
visit(ASTTryStatement node,
Object data)
|
Object |
visit(ASTWhileStatement node,
Object data)
|
Object |
visit(JavaNode node,
Object data)
|
Methods inherited from class net.sourceforge.pmd.lang.java.rule.AbstractStatisticalJavaRule |
---|
addDataPoint, apply |
Methods inherited from class net.sourceforge.pmd.lang.java.rule.AbstractJavaRule |
---|
getDeclaringType, importsPackage, isQualifiedName, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visitAll |
Methods inherited from class net.sourceforge.pmd.AbstractPropertySource |
---|
copyPropertyDescriptors, copyPropertyValues, definePropertyDescriptor, dysfunctionReason, getPropertiesByPropertyDescriptor, getProperty, getPropertyDescriptor, getPropertyDescriptors, hasDescriptor, ignoredProperties, setProperty, useDefaultValueFor, usesDefaultValues |
Methods inherited from class java.lang.Object |
---|
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface net.sourceforge.pmd.PropertySource |
---|
definePropertyDescriptor, dysfunctionReason, getPropertiesByPropertyDescriptor, getProperty, getPropertyDescriptor, getPropertyDescriptors, hasDescriptor, ignoredProperties, setProperty, useDefaultValueFor, usesDefaultValues |
Constructor Detail |
---|
public NPathComplexityRule()
Method Detail |
---|
public Object visit(ASTMethodDeclaration node, Object data)
visit
in interface net.sourceforge.pmd.lang.java.ast.JavaParserVisitor
visit
in class AbstractJavaRule
public Object visit(JavaNode node, Object data)
visit
in interface net.sourceforge.pmd.lang.java.ast.JavaParserVisitor
visit
in class AbstractJavaRule
public Object visit(ASTIfStatement node, Object data)
visit
in interface net.sourceforge.pmd.lang.java.ast.JavaParserVisitor
visit
in class AbstractJavaRule
public Object visit(ASTWhileStatement node, Object data)
visit
in interface net.sourceforge.pmd.lang.java.ast.JavaParserVisitor
visit
in class AbstractJavaRule
public Object visit(ASTDoStatement node, Object data)
visit
in interface net.sourceforge.pmd.lang.java.ast.JavaParserVisitor
visit
in class AbstractJavaRule
public Object visit(ASTForStatement node, Object data)
visit
in interface net.sourceforge.pmd.lang.java.ast.JavaParserVisitor
visit
in class AbstractJavaRule
public Object visit(ASTReturnStatement node, Object data)
visit
in interface net.sourceforge.pmd.lang.java.ast.JavaParserVisitor
visit
in class AbstractJavaRule
public Object visit(ASTSwitchStatement node, Object data)
visit
in interface net.sourceforge.pmd.lang.java.ast.JavaParserVisitor
visit
in class AbstractJavaRule
public Object visit(ASTTryStatement node, Object data)
visit
in interface net.sourceforge.pmd.lang.java.ast.JavaParserVisitor
visit
in class AbstractJavaRule
public Object visit(ASTConditionalExpression node, Object data)
visit
in interface net.sourceforge.pmd.lang.java.ast.JavaParserVisitor
visit
in class AbstractJavaRule
public static int sumExpressionComplexity(ASTExpression expr)
Note that this calculation applies to Cyclomatic Complexity as well.
expr
- control structure expression
public Object[] getViolationParameters(DataPoint point)
getViolationParameters
in interface StatisticalRule
getViolationParameters
in class AbstractStatisticalJavaRule
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |