Class AbstractNcssCountRule
- java.lang.Object
-
- net.sourceforge.pmd.properties.AbstractPropertySource
-
- net.sourceforge.pmd.lang.rule.AbstractRule
-
- net.sourceforge.pmd.lang.plsql.rule.AbstractPLSQLRule
-
- net.sourceforge.pmd.lang.plsql.rule.AbstractStatisticalPLSQLRule
-
- net.sourceforge.pmd.lang.plsql.rule.design.AbstractNcssCountRule
-
- All Implemented Interfaces:
PLSQLParserVisitor
,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:
NcssMethodCountRule
,NcssObjectCountRule
public abstract class AbstractNcssCountRule extends AbstractStatisticalPLSQLRule
Abstract superclass for NCSS counting methods. Analogous to and cribbed from the Java version of the rule.
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
AbstractNcssCountRule(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.Integer
countNodeChildren(net.sourceforge.pmd.lang.ast.Node node, java.lang.Object data)
Count the number of children of the given PLSQL node.java.lang.Object[]
getViolationParameters(net.sourceforge.pmd.stat.DataPoint point)
java.lang.Object
visit(ASTCaseStatement node, java.lang.Object data)
java.lang.Object
visit(ASTCaseWhenClause node, java.lang.Object data)
java.lang.Object
visit(ASTContinueStatement node, java.lang.Object data)
java.lang.Object
visit(ASTElseClause node, java.lang.Object data)
java.lang.Object
visit(ASTElsifClause node, java.lang.Object data)
java.lang.Object
visit(ASTExceptionHandler node, java.lang.Object data)
java.lang.Object
visit(ASTExitStatement node, java.lang.Object data)
java.lang.Object
visit(ASTExpression node, java.lang.Object data)
java.lang.Object
visit(ASTForStatement node, java.lang.Object data)
java.lang.Object
visit(ASTGotoStatement node, java.lang.Object data)
java.lang.Object
visit(ASTIfStatement node, java.lang.Object data)
java.lang.Object
visit(ASTLabelledStatement node, java.lang.Object data)
java.lang.Object
visit(ASTLoopStatement node, java.lang.Object data)
java.lang.Object
visit(ASTRaiseStatement node, java.lang.Object data)
java.lang.Object
visit(ASTReturnStatement node, java.lang.Object data)
java.lang.Object
visit(ASTWhileStatement node, java.lang.Object data)
java.lang.Object
visit(PLSQLNode node, java.lang.Object data)
-
Methods inherited from class net.sourceforge.pmd.lang.plsql.rule.AbstractStatisticalPLSQLRule
addDataPoint, apply
-
Methods inherited from class net.sourceforge.pmd.lang.plsql.rule.AbstractPLSQLRule
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, 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, 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, getPropertiesByPropertyDescriptor, getProperty, getPropertyDescriptor, getPropertyDescriptors, hasDescriptor, ignoredProperties, 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, getPropertiesByPropertyDescriptor, getProperty, getPropertyDescriptor, getPropertyDescriptors, hasDescriptor, ignoredProperties, 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(PLSQLNode node, java.lang.Object data)
- Specified by:
visit
in interfacePLSQLParserVisitor
- Overrides:
visit
in classAbstractPLSQLRule
-
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 PLSQL node. Adds one to count the node itself.- Parameters:
node
- PLSQL 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:
visit
in interfacePLSQLParserVisitor
- Overrides:
visit
in classAbstractPLSQLRule
-
visit
public java.lang.Object visit(ASTLoopStatement node, java.lang.Object data)
- Specified by:
visit
in interfacePLSQLParserVisitor
- Overrides:
visit
in classAbstractPLSQLRule
-
visit
public java.lang.Object visit(ASTIfStatement node, java.lang.Object data)
- Specified by:
visit
in interfacePLSQLParserVisitor
- Overrides:
visit
in classAbstractPLSQLRule
-
visit
public java.lang.Object visit(ASTElsifClause node, java.lang.Object data)
- Specified by:
visit
in interfacePLSQLParserVisitor
- Overrides:
visit
in classAbstractPLSQLRule
-
visit
public java.lang.Object visit(ASTElseClause node, java.lang.Object data)
- Specified by:
visit
in interfacePLSQLParserVisitor
- Overrides:
visit
in classAbstractPLSQLRule
-
visit
public java.lang.Object visit(ASTWhileStatement node, java.lang.Object data)
- Specified by:
visit
in interfacePLSQLParserVisitor
- Overrides:
visit
in classAbstractPLSQLRule
-
visit
public java.lang.Object visit(ASTExitStatement node, java.lang.Object data)
- Specified by:
visit
in interfacePLSQLParserVisitor
- Overrides:
visit
in classAbstractPLSQLRule
-
visit
public java.lang.Object visit(ASTExceptionHandler node, java.lang.Object data)
- Specified by:
visit
in interfacePLSQLParserVisitor
- Overrides:
visit
in classAbstractPLSQLRule
-
visit
public java.lang.Object visit(ASTContinueStatement node, java.lang.Object data)
- Specified by:
visit
in interfacePLSQLParserVisitor
- Overrides:
visit
in classAbstractPLSQLRule
-
visit
public java.lang.Object visit(ASTGotoStatement node, java.lang.Object data)
- Specified by:
visit
in interfacePLSQLParserVisitor
- Overrides:
visit
in classAbstractPLSQLRule
-
visit
public java.lang.Object visit(ASTReturnStatement node, java.lang.Object data)
- Specified by:
visit
in interfacePLSQLParserVisitor
- Overrides:
visit
in classAbstractPLSQLRule
-
visit
public java.lang.Object visit(ASTCaseStatement node, java.lang.Object data)
- Specified by:
visit
in interfacePLSQLParserVisitor
- Overrides:
visit
in classAbstractPLSQLRule
-
visit
public java.lang.Object visit(ASTRaiseStatement node, java.lang.Object data)
- Specified by:
visit
in interfacePLSQLParserVisitor
- Overrides:
visit
in classAbstractPLSQLRule
-
visit
public java.lang.Object visit(ASTExpression node, java.lang.Object data)
- Specified by:
visit
in interfacePLSQLParserVisitor
- Overrides:
visit
in classAbstractPLSQLRule
-
visit
public java.lang.Object visit(ASTLabelledStatement node, java.lang.Object data)
- Specified by:
visit
in interfacePLSQLParserVisitor
- Overrides:
visit
in classAbstractPLSQLRule
-
visit
public java.lang.Object visit(ASTCaseWhenClause node, java.lang.Object data)
- Specified by:
visit
in interfacePLSQLParserVisitor
- Overrides:
visit
in classAbstractPLSQLRule
-
getViolationParameters
public java.lang.Object[] getViolationParameters(net.sourceforge.pmd.stat.DataPoint point)
- Specified by:
getViolationParameters
in interfacenet.sourceforge.pmd.lang.rule.stat.StatisticalRule
- Overrides:
getViolationParameters
in classAbstractStatisticalPLSQLRule
-
-