Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## com.puppycrawl.tools.checkstyle.checks.metrics
Class NPathComplexityCheck

    java.lang.Object
      com.puppycrawl.tools.checkstyle.api.AutomaticBean
          com.puppycrawl.tools.checkstyle.api.AbstractViolationReporter
              com.puppycrawl.tools.checkstyle.api.Check
                  com.puppycrawl.tools.checkstyle.checks.metrics.AbstractComplexityCheck
                      com.puppycrawl.tools.checkstyle.checks.metrics.NPathComplexityCheck

All Implemented Interfaces:
  Configurable, Contextualizable

public final class NPathComplexityCheck
extends AbstractComplexityCheck

Checks the npath complexity against a specified limt (default = 200). The npath metric computes the number of possible execution paths through a function. Similar to the cyclomatic complexity but also takes into account the nesting of conditional statements and multi-part boolean expressions.

Author:
  Simon Harris, o_sukhodolsky TODO: For every or: _value += (_orCount * (nestedValue - 1)); TODO: For every and: ???

Constructor Summary
`NPathComplexityCheck()` Creates new instance of the check.

Method Summary
`int[]` | `getDefaultTokens()` Returns the default token a check is interested in. Only used if the configuration for a check does not define the tokens.
`protected java.lang.String` | `getMessageID()`
`void` | `leaveToken(DetailAST aAST)` Called after all the child nodes have been process.
`void` | `visitToken(DetailAST aAST)` Called to process a token.

Methods inherited from class com.puppycrawl.tools.checkstyle.checks.metrics.AbstractComplexityCheck
`getCurrentValue, getMax, getRequiredTokens, incrementCurrentValue, leaveTokenHook, popValue, pushValue, setCurrentValue, setMax, visitTokenHook`

Methods inherited from class com.puppycrawl.tools.checkstyle.api.Check
`beginTree, destroy, finishTree, getAcceptableTokens, getClassLoader, getFileContents, getLines, getTabWidth, getTokenNames, init, log, log, setClassLoader, setFileContents, setMessages, setTabWidth, setTokens`

Methods inherited from class com.puppycrawl.tools.checkstyle.api.AbstractViolationReporter
`getMessageBundle, getSeverity, getSeverityLevel, log, log, log, log, log, log, log, log, log, setSeverity`

Methods inherited from class com.puppycrawl.tools.checkstyle.api.AutomaticBean
`configure, contextualize, finishLocalSetup, getConfiguration, setupChild`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### NPathComplexityCheck

    public NPathComplexityCheck()

  Creates new instance of the check.

Method Detail

### getDefaultTokens

    public int[] getDefaultTokens()

  Returns the default token a check is interested in. Only used if the configuration for a check does not define the tokens.

  Specified by:
    `getDefaultTokens` in class `Check`
  Returns:
    the default tokens
  See Also:
    `TokenTypes`

### visitToken

    public void visitToken(DetailAST aAST)

  Called to process a token.

  Overrides:
    `visitToken` in class `AbstractComplexityCheck`

### leaveToken

    public void leaveToken(DetailAST aAST)

  Called after all the child nodes have been process.

  Overrides:
    `leaveToken` in class `AbstractComplexityCheck`

### getMessageID

    protected java.lang.String getMessageID()

  Specified by:
    `getMessageID` in class `AbstractComplexityCheck`
  Returns:
    the message ID to log violations with

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Back to the Checkstyle Home Page
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD