Class AbstractNcssCountRule
- java.lang.Object
-
- net.sourceforge.pmd.properties.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.design.AbstractNcssCountRule
-
- All Implemented Interfaces:
JavaParserVisitor,net.sourceforge.pmd.lang.rule.ImmutableLanguage,net.sourceforge.pmd.lang.rule.stat.StatisticalRule,net.sourceforge.pmd.properties.PropertySource,net.sourceforge.pmd.Rule
- Direct Known Subclasses:
NcssConstructorCountRule,NcssMethodCountRule,NcssTypeCountRule
public abstract class AbstractNcssCountRule extends AbstractStatisticalJavaRule
Abstract superclass for NCSS counting methods. Counts tokens according to JavaNCSS rules.- Author:
- Jason Bennett
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedAbstractNcssCountRule(java.lang.Class<?> nodeClass)Count the nodes of the given type using NCSS rules.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected java.lang.IntegercountNodeChildren(net.sourceforge.pmd.lang.ast.Node node, java.lang.Object data)Count the number of children of the given Java node.java.lang.Objectvisit(ASTBreakStatement node, java.lang.Object data)java.lang.Objectvisit(ASTCatchStatement node, java.lang.Object data)java.lang.Objectvisit(ASTContinueStatement node, java.lang.Object data)java.lang.Objectvisit(ASTDoStatement node, java.lang.Object data)java.lang.Objectvisit(ASTFinallyStatement node, java.lang.Object data)java.lang.Objectvisit(ASTForStatement node, java.lang.Object data)java.lang.Objectvisit(ASTIfStatement node, java.lang.Object data)java.lang.Objectvisit(ASTLabeledStatement node, java.lang.Object data)java.lang.Objectvisit(ASTLocalVariableDeclaration node, java.lang.Object data)java.lang.Objectvisit(ASTReturnStatement node, java.lang.Object data)java.lang.Objectvisit(ASTStatementExpression node, java.lang.Object data)java.lang.Objectvisit(ASTSwitchLabel node, java.lang.Object data)java.lang.Objectvisit(ASTSwitchStatement node, java.lang.Object data)java.lang.Objectvisit(ASTSynchronizedStatement node, java.lang.Object data)java.lang.Objectvisit(ASTThrowStatement node, java.lang.Object data)java.lang.Objectvisit(ASTWhileStatement node, java.lang.Object data)java.lang.Objectvisit(JavaNode node, java.lang.Object data)-
Methods inherited from class net.sourceforge.pmd.lang.java.rule.AbstractStatisticalJavaRule
addDataPoint, apply, getViolationParameters
-
Methods inherited from class net.sourceforge.pmd.lang.java.rule.AbstractJavaRule
getDeclaringType, importsPackage, isQualifiedName, isSuppressed, 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.lang.rule.AbstractRule
addExample, addRuleChainVisit, addRuleChainVisit, addViolation, addViolation, addViolation, addViolationWithMessage, addViolationWithMessage, addViolationWithMessage, deepCopy, deepCopyValuesTo, end, equals, getDescription, getExamples, getExternalInfoUrl, getLanguage, getMaximumLanguageVersion, getMessage, getMinimumLanguageVersion, getName, getParserOptions, getPriority, getPropertySourceType, getRuleChainVisits, getRuleClass, getRuleSetName, getSince, hashCode, isDeprecated, isDfa, isMultifile, isRuleChain, isTypeResolution, setDeprecated, setDescription, setDfa, setExternalInfoUrl, setLanguage, setMaximumLanguageVersion, setMessage, setMinimumLanguageVersion, setMultifile, setName, setPriority, setRuleClass, setRuleSetName, setSince, setTypeResolution, setUsesDFA, setUsesMultifile, setUsesTypeResolution, start, usesDFA, usesMultifile, usesRuleChain, usesTypeResolution
-
Methods inherited from class net.sourceforge.pmd.properties.AbstractPropertySource
copyPropertyDescriptors, copyPropertyValues, definePropertyDescriptor, dysfunctionReason, getOverriddenPropertiesByPropertyDescriptor, getOverriddenPropertyDescriptors, getPropertiesByPropertyDescriptor, getProperty, getPropertyDescriptor, getPropertyDescriptors, hasDescriptor, ignoredProperties, isPropertyOverridden, setProperty, 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.properties.PropertySource
definePropertyDescriptor, dysfunctionReason, getOverriddenPropertiesByPropertyDescriptor, getOverriddenPropertyDescriptors, getPropertiesByPropertyDescriptor, getProperty, getPropertyDescriptor, getPropertyDescriptors, hasDescriptor, ignoredProperties, isPropertyOverridden, setProperty, setProperty, useDefaultValueFor, usesDefaultValues
-
Methods inherited from interface net.sourceforge.pmd.Rule
addExample, addRuleChainVisit, addRuleChainVisit, deepCopy, end, getDescription, getExamples, getExternalInfoUrl, getLanguage, getMaximumLanguageVersion, getMessage, getMinimumLanguageVersion, getName, getParserOptions, getPriority, getRuleChainVisits, getRuleClass, getRuleSetName, getSince, isDeprecated, isDfa, isMultifile, isRuleChain, isTypeResolution, setDeprecated, setDescription, setDfa, setExternalInfoUrl, setLanguage, setMaximumLanguageVersion, setMessage, setMinimumLanguageVersion, setMultifile, setName, setPriority, setRuleClass, setRuleSetName, setSince, setTypeResolution, setUsesDFA, setUsesMultifile, setUsesTypeResolution, start, usesDFA, usesMultifile, usesRuleChain, usesTypeResolution
-
-
-
-
Method Detail
-
visit
public java.lang.Object visit(JavaNode node, java.lang.Object data)
- Specified by:
visitin interfaceJavaParserVisitor- Overrides:
visitin classAbstractJavaRule
-
countNodeChildren
protected java.lang.Integer countNodeChildren(net.sourceforge.pmd.lang.ast.Node node, java.lang.Object data)Count the number of children of the given Java node. Adds one to count the node itself.- Parameters:
node- java node having children counteddata- node data- Returns:
- count of the number of children of the node, plus one
-
visit
public java.lang.Object visit(ASTForStatement node, java.lang.Object data)
- Specified by:
visitin interfaceJavaParserVisitor- Overrides:
visitin classAbstractJavaRule
-
visit
public java.lang.Object visit(ASTDoStatement node, java.lang.Object data)
- Specified by:
visitin interfaceJavaParserVisitor- Overrides:
visitin classAbstractJavaRule
-
visit
public java.lang.Object visit(ASTIfStatement node, java.lang.Object data)
- Specified by:
visitin interfaceJavaParserVisitor- Overrides:
visitin classAbstractJavaRule
-
visit
public java.lang.Object visit(ASTWhileStatement node, java.lang.Object data)
- Specified by:
visitin interfaceJavaParserVisitor- Overrides:
visitin classAbstractJavaRule
-
visit
public java.lang.Object visit(ASTBreakStatement node, java.lang.Object data)
- Specified by:
visitin interfaceJavaParserVisitor- Overrides:
visitin classAbstractJavaRule
-
visit
public java.lang.Object visit(ASTCatchStatement node, java.lang.Object data)
- Specified by:
visitin interfaceJavaParserVisitor- Overrides:
visitin classAbstractJavaRule
-
visit
public java.lang.Object visit(ASTContinueStatement node, java.lang.Object data)
- Specified by:
visitin interfaceJavaParserVisitor- Overrides:
visitin classAbstractJavaRule
-
visit
public java.lang.Object visit(ASTFinallyStatement node, java.lang.Object data)
- Specified by:
visitin interfaceJavaParserVisitor- Overrides:
visitin classAbstractJavaRule
-
visit
public java.lang.Object visit(ASTReturnStatement node, java.lang.Object data)
- Specified by:
visitin interfaceJavaParserVisitor- Overrides:
visitin classAbstractJavaRule
-
visit
public java.lang.Object visit(ASTSwitchStatement node, java.lang.Object data)
- Specified by:
visitin interfaceJavaParserVisitor- Overrides:
visitin classAbstractJavaRule
-
visit
public java.lang.Object visit(ASTSynchronizedStatement node, java.lang.Object data)
- Specified by:
visitin interfaceJavaParserVisitor- Overrides:
visitin classAbstractJavaRule
-
visit
public java.lang.Object visit(ASTThrowStatement node, java.lang.Object data)
- Specified by:
visitin interfaceJavaParserVisitor- Overrides:
visitin classAbstractJavaRule
-
visit
public java.lang.Object visit(ASTStatementExpression node, java.lang.Object data)
- Specified by:
visitin interfaceJavaParserVisitor- Overrides:
visitin classAbstractJavaRule
-
visit
public java.lang.Object visit(ASTLabeledStatement node, java.lang.Object data)
- Specified by:
visitin interfaceJavaParserVisitor- Overrides:
visitin classAbstractJavaRule
-
visit
public java.lang.Object visit(ASTLocalVariableDeclaration node, java.lang.Object data)
- Specified by:
visitin interfaceJavaParserVisitor- Overrides:
visitin classAbstractJavaRule
-
visit
public java.lang.Object visit(ASTSwitchLabel node, java.lang.Object data)
- Specified by:
visitin interfaceJavaParserVisitor- Overrides:
visitin classAbstractJavaRule
-
-