com.puppycrawl.tools.checkstyle.checks.sizes

Class MethodLengthCheck

Implemented Interfaces:
Configurable, Contextualizable

public class MethodLengthCheck
extends Check

Checks for long methods.

Rationale: If a method becomes very long it is hard to understand. Therefore long methods should usually be refactored into several individual methods that focus on a specific task.

The default maximum method length is 150 lines. To change the maximum number of lines, set property max.

An example of how to configure the check is:

 <module name="MethodLength"/>
 

An example of how to configure the check so that it accepts methods with at most 60 lines is:

 <module name="MethodLength">
    <property name="max" value="60"/>
 </module>
 
Author:
Lars Kühne

Method Summary

int[]
getDefaultTokens()
void
setCountEmpty(boolean aCountEmpty)
void
setMax(int aLength)
void
visitToken(DetailAST aAST)

Methods inherited from class com.puppycrawl.tools.checkstyle.api.Check

beginTree, destroy, finishTree, getAcceptableTokens, getClassLoader, getDefaultTokens, getFileContents, getLines, getRequiredTokens, getTabWidth, getTokenNames, init, leaveToken, log, log, setClassLoader, setFileContents, setMessages, setTabWidth, setTokens, visitToken

Methods inherited from class com.puppycrawl.tools.checkstyle.api.AbstractViolationReporter

getId, getMessageBundle, getSeverity, getSeverityLevel, log, log, log, log, log, log, log, log, log, log, log, setId, setSeverity

Methods inherited from class com.puppycrawl.tools.checkstyle.api.AutomaticBean

configure, contextualize, finishLocalSetup, getConfiguration, setupChild

Method Details

getDefaultTokens

public int[] getDefaultTokens()
Overrides:
getDefaultTokens in interface Check

setCountEmpty

public void setCountEmpty(boolean aCountEmpty)
Parameters:
aCountEmpty - whether to count empty and single line comments of the form //.

setMax

public void setMax(int aLength)
Parameters:
aLength - the maximum length of a method.

visitToken

public void visitToken(DetailAST aAST)
Overrides:
visitToken in interface Check