Class AbstractNcssCountRule
- java.lang.Object
-
- net.sourceforge.pmd.properties.AbstractPropertySource
-
- net.sourceforge.pmd.lang.rule.AbstractRule
-
- net.sourceforge.pmd.lang.apex.rule.AbstractApexRule
-
- net.sourceforge.pmd.lang.apex.rule.AbstractStatisticalApexRule
-
- net.sourceforge.pmd.lang.apex.rule.design.AbstractNcssCountRule
-
- All Implemented Interfaces:
ApexParserVisitor,net.sourceforge.pmd.lang.rule.ImmutableLanguage,net.sourceforge.pmd.lang.rule.stat.StatisticalRule,net.sourceforge.pmd.properties.PropertySource,net.sourceforge.pmd.renderers.CodeClimateRule,net.sourceforge.pmd.Rule
- Direct Known Subclasses:
NcssConstructorCountRule,NcssMethodCountRule,NcssTypeCountRule
public abstract class AbstractNcssCountRule extends AbstractStatisticalApexRule
Abstract superclass for NCSS counting methods. Counts tokens according to JavaNCSS rules.- Author:
- ported from Java original of Jason Bennett
-
-
Field Summary
-
Fields inherited from class net.sourceforge.pmd.properties.AbstractPropertySource
propertyDescriptors, propertyValuesByDescriptor
-
Fields inherited from interface net.sourceforge.pmd.renderers.CodeClimateRule
CODECLIMATE_BLOCK_HIGHLIGHTING, CODECLIMATE_CATEGORIES, CODECLIMATE_REMEDIATION_MULTIPLIER
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedAbstractNcssCountRule(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 IntegercountNodeChildren(ApexNode<?> node, Object data)Count the number of children of the given node.Objectvisit(ApexNode<?> node, Object data)Objectvisit(ASTBreakStatement node, Object data)Objectvisit(ASTContinueStatement node, Object data)Objectvisit(ASTDoLoopStatement node, Object data)Objectvisit(ASTForEachStatement node, Object data)Objectvisit(ASTForLoopStatement node, Object data)Objectvisit(ASTIfBlockStatement node, Object data)Objectvisit(ASTIfElseBlockStatement node, Object data)Objectvisit(ASTMethodCallExpression node, Object data)Objectvisit(ASTReturnStatement node, Object data)Objectvisit(ASTStatement node, Object data)Objectvisit(ASTThrowStatement node, Object data)Objectvisit(ASTTryCatchFinallyBlockStatement node, Object data)Objectvisit(ASTWhileLoopStatement node, Object data)-
Methods inherited from class net.sourceforge.pmd.lang.apex.rule.AbstractStatisticalApexRule
addDataPoint, apply, getViolationParameters
-
Methods inherited from class net.sourceforge.pmd.lang.apex.rule.AbstractApexRule
getParserOptions, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, 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, 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
-
-
-
-
Constructor Detail
-
AbstractNcssCountRule
protected AbstractNcssCountRule(Class<?> nodeClass)
Count the nodes of the given type using NCSS rules.- Parameters:
nodeClass- class of node to count
-
-
Method Detail
-
visit
public Object visit(ApexNode<?> node, Object data)
- Specified by:
visitin interfaceApexParserVisitor- Overrides:
visitin classAbstractApexRule
-
countNodeChildren
protected Integer countNodeChildren(ApexNode<?> node, Object data)
Count the number of children of the given node. Adds one to count the node itself.- Parameters:
node- node having children counteddata- node data- Returns:
- count of the number of children of the node, plus one
-
visit
public Object visit(ASTForLoopStatement node, Object data)
- Specified by:
visitin interfaceApexParserVisitor- Overrides:
visitin classAbstractApexRule
-
visit
public Object visit(ASTForEachStatement node, Object data)
- Specified by:
visitin interfaceApexParserVisitor- Overrides:
visitin classAbstractApexRule
-
visit
public Object visit(ASTDoLoopStatement node, Object data)
- Specified by:
visitin interfaceApexParserVisitor- Overrides:
visitin classAbstractApexRule
-
visit
public Object visit(ASTIfBlockStatement node, Object data)
- Specified by:
visitin interfaceApexParserVisitor- Overrides:
visitin classAbstractApexRule
-
visit
public Object visit(ASTIfElseBlockStatement node, Object data)
- Specified by:
visitin interfaceApexParserVisitor- Overrides:
visitin classAbstractApexRule
-
visit
public Object visit(ASTWhileLoopStatement node, Object data)
- Specified by:
visitin interfaceApexParserVisitor- Overrides:
visitin classAbstractApexRule
-
visit
public Object visit(ASTBreakStatement node, Object data)
- Specified by:
visitin interfaceApexParserVisitor- Overrides:
visitin classAbstractApexRule
-
visit
public Object visit(ASTTryCatchFinallyBlockStatement node, Object data)
- Specified by:
visitin interfaceApexParserVisitor- Overrides:
visitin classAbstractApexRule
-
visit
public Object visit(ASTContinueStatement node, Object data)
- Specified by:
visitin interfaceApexParserVisitor- Overrides:
visitin classAbstractApexRule
-
visit
public Object visit(ASTReturnStatement node, Object data)
- Specified by:
visitin interfaceApexParserVisitor- Overrides:
visitin classAbstractApexRule
-
visit
public Object visit(ASTThrowStatement node, Object data)
- Specified by:
visitin interfaceApexParserVisitor- Overrides:
visitin classAbstractApexRule
-
visit
public Object visit(ASTStatement node, Object data)
- Specified by:
visitin interfaceApexParserVisitor- Overrides:
visitin classAbstractApexRule
-
visit
public Object visit(ASTMethodCallExpression node, Object data)
- Specified by:
visitin interfaceApexParserVisitor- Overrides:
visitin classAbstractApexRule
-
-