| <?xml version="1.0" encoding="UTF-8"?> |
| |
| <document xmlns="http://maven.apache.org/XDOC/2.0" |
| xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" |
| xsi:schemaLocation="http://maven.apache.org/XDOC/2.0 http://maven.apache.org/xsd/xdoc-2.0.xsd"> |
| |
| <head> |
| <title>Size Violations</title> |
| <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"/> |
| <script type="text/javascript" src="js/anchors.js"/> |
| <script type="text/javascript" src="js/google-analytics.js"/> |
| <link rel="icon" href="images/favicon.png" type="image/x-icon" /> |
| <link rel="shortcut icon" href="images/favicon.ico" type="image/ico" /> |
| </head> |
| |
| <body> |
| <section name="Content"> |
| <macro name="toc"> |
| <param name="fromDepth" value="1"/> |
| <param name="toDepth" value="1"/> |
| </macro> |
| </section> |
| |
| <section name="AnonInnerLength"> |
| <subsection name="Description"> |
| <p>Since Checkstyle 3.2</p> |
| <p> |
| Checks for long anonymous inner classes. |
| </p> |
| |
| <p> |
| Rationale: If an anonymous inner class becomes very long it is hard |
| to understand and to see the flow of the method where the class is |
| defined. Therefore long anonymous inner classes should usually be |
| refactored into a named inner class. See also Bloch, Effective |
| Java, p. 93. |
| </p> |
| </subsection> |
| |
| <subsection name="Properties"> |
| <table> |
| <tr> |
| <th>name</th> |
| <th>description</th> |
| <th>type</th> |
| <th>default value</th> |
| <th>since</th> |
| </tr> |
| <tr> |
| <td>max</td> |
| <td>maximum allowable number of lines</td> |
| <td><a href="property_types.html#integer">Integer</a></td> |
| <td>20</td> |
| <td>3.2</td> |
| </tr> |
| </table> |
| </subsection> |
| |
| <subsection name="Examples"> |
| <p> |
| To configure the check to accept files with up to 60 lines: |
| </p> |
| <source> |
| <module name="AnonInnerLength"> |
| <property name="max" value="60"/> |
| </module> |
| </source> |
| </subsection> |
| |
| <subsection name="Example of Usage"> |
| <ul> |
| <li> |
| <a href="https://github.com/search?q=path%3Aconfig+filename%3Acheckstyle_checks.xml+repo%3Acheckstyle%2Fcheckstyle+AnonInnerLength"> |
| Checkstyle Style</a> |
| </li> |
| </ul> |
| </subsection> |
| |
| <subsection name="Error Messages"> |
| <ul> |
| <li> |
| <a href="https://github.com/search?q=path%3Asrc%2Fmain%2Fresources%2Fcom%2Fpuppycrawl%2Ftools%2Fcheckstyle%2Fchecks%2Fsizes+filename%3Amessages*.properties+repo%3Acheckstyle%2Fcheckstyle+%22maxLen.anonInner%22"> |
| maxLen.anonInner</a> |
| </li> |
| </ul> |
| <p> |
| All messages can be customized if the default message doesn't suit you. |
| Please <a href="config.html#Custom_messages">see the documentation</a> to learn how to. |
| </p> |
| </subsection> |
| |
| <subsection name="Package"> |
| <p> |
| com.puppycrawl.tools.checkstyle.checks.sizes |
| </p> |
| </subsection> |
| |
| <subsection name="Parent Module"> |
| <p> |
| <a href="config.html#TreeWalker">TreeWalker</a> |
| </p> |
| </subsection> |
| </section> |
| |
| <section name="ExecutableStatementCount"> |
| <subsection name="Description"> |
| <p>Since Checkstyle 3.2</p> |
| <p> |
| Restricts the number of executable statements to a specified limit. |
| </p> |
| </subsection> |
| |
| <subsection name="Properties"> |
| <table> |
| <tr> |
| <th>name</th> |
| <th>description</th> |
| <th>type</th> |
| <th>default value</th> |
| <th>since</th> |
| </tr> |
| <tr> |
| <td>max</td> |
| <td>the maximum threshold allowed</td> |
| <td><a href="property_types.html#integer">Integer</a></td> |
| <td><code>30</code></td> |
| <td>3.2</td> |
| </tr> |
| <tr> |
| <td>tokens</td> |
| <td>tokens to check</td> |
| <td> |
| subset of tokens |
| <a href="apidocs/com/puppycrawl/tools/checkstyle/api/TokenTypes.html#CTOR_DEF">CTOR_DEF</a>, |
| <a href="apidocs/com/puppycrawl/tools/checkstyle/api/TokenTypes.html#METHOD_DEF">METHOD_DEF</a>, |
| <a href="apidocs/com/puppycrawl/tools/checkstyle/api/TokenTypes.html#INSTANCE_INIT">INSTANCE_INIT</a>, |
| <a href="apidocs/com/puppycrawl/tools/checkstyle/api/TokenTypes.html#STATIC_INIT">STATIC_INIT</a>. |
| </td> |
| <td> |
| <a href="apidocs/com/puppycrawl/tools/checkstyle/api/TokenTypes.html#CTOR_DEF">CTOR_DEF</a>, |
| <a href="apidocs/com/puppycrawl/tools/checkstyle/api/TokenTypes.html#METHOD_DEF">METHOD_DEF</a>, |
| <a href="apidocs/com/puppycrawl/tools/checkstyle/api/TokenTypes.html#INSTANCE_INIT">INSTANCE_INIT</a>, |
| <a href="apidocs/com/puppycrawl/tools/checkstyle/api/TokenTypes.html#STATIC_INIT">STATIC_INIT</a>. |
| </td> |
| <td>3.2</td> |
| </tr> |
| </table> |
| </subsection> |
| |
| <subsection name="Examples"> |
| <p> |
| To configure the check: |
| </p> |
| <source> |
| <module name="ExecutableStatementCount"/> |
| </source> |
| |
| <p> |
| To configure the check with a threshold of 20 for constructor and |
| method definitions: |
| </p> |
| <source> |
| <module name="ExecutableStatementCount"> |
| <property name="max" value="20"/> |
| <property name="tokens" value="CTOR_DEF,METHOD_DEF"/> |
| </module> |
| </source> |
| </subsection> |
| |
| <subsection name="Example of Usage"> |
| <ul> |
| <li> |
| <a href="https://github.com/search?q=path%3Aconfig+filename%3Acheckstyle_checks.xml+repo%3Acheckstyle%2Fcheckstyle+ExecutableStatementCount"> |
| Checkstyle Style</a> |
| </li> |
| </ul> |
| </subsection> |
| |
| <subsection name="Error Messages"> |
| <ul> |
| <li> |
| <a href="https://github.com/search?q=path%3Asrc%2Fmain%2Fresources%2Fcom%2Fpuppycrawl%2Ftools%2Fcheckstyle%2Fchecks%2Fsizes+filename%3Amessages*.properties+repo%3Acheckstyle%2Fcheckstyle+%22executableStatementCount%22"> |
| executableStatementCount</a> |
| </li> |
| </ul> |
| <p> |
| All messages can be customized if the default message doesn't suit you. |
| Please <a href="config.html#Custom_messages">see the documentation</a> to learn how to. |
| </p> |
| </subsection> |
| |
| <subsection name="Package"> |
| <p> |
| com.puppycrawl.tools.checkstyle.checks.sizes |
| </p> |
| </subsection> |
| |
| <subsection name="Parent Module"> |
| <p> |
| <a href="config.html#TreeWalker">TreeWalker</a> |
| </p> |
| </subsection> |
| </section> |
| |
| <section name="FileLength"> |
| <subsection name="Description"> |
| <p>Since Checkstyle 5.0</p> |
| <p> |
| Checks for long source files. |
| </p> |
| |
| <p> |
| Rationale: If a source file becomes very long it is hard to |
| understand. Therefore long classes should usually be refactored |
| into several individual classes that focus on a specific task. |
| </p> |
| </subsection> |
| |
| <subsection name="Properties"> |
| <table> |
| <tr> |
| <th>name</th> |
| <th>description</th> |
| <th>type</th> |
| <th>default value</th> |
| <th>since</th> |
| </tr> |
| <tr> |
| <td>max</td> |
| <td>maximum allowable number of lines</td> |
| <td><a href="property_types.html#integer">Integer</a></td> |
| <td>2000</td> |
| <td>3.2</td> |
| </tr> |
| <tr> |
| <td>fileExtensions</td> |
| <td>file type extension of files to process</td> |
| <td><a href="property_types.html#stringSet">String Set</a></td> |
| <td><code>{}</code></td> |
| <td>5.0</td> |
| </tr> |
| </table> |
| </subsection> |
| |
| <subsection name="Examples"> |
| <p> |
| To configure the check to accept files with up to 1500 lines: |
| </p> |
| <source> |
| <module name="FileLength"> |
| <property name="max" value="1500"/> |
| </module> |
| </source> |
| </subsection> |
| |
| <subsection name="Example of Usage"> |
| <ul> |
| <li> |
| <a href="https://github.com/search?q=path%3Asrc%2Fmain%2Fresources+filename%3Asun_checks.xml+repo%3Acheckstyle%2Fcheckstyle+FileLength"> |
| Sun Style</a> |
| </li> |
| <li> |
| <a href="https://github.com/search?q=path%3Aconfig+filename%3Acheckstyle_checks.xml+repo%3Acheckstyle%2Fcheckstyle+FileLength"> |
| Checkstyle Style</a> |
| </li> |
| </ul> |
| </subsection> |
| |
| <subsection name="Error Messages"> |
| <ul> |
| <li> |
| <a href="https://github.com/search?q=path%3Asrc%2Fmain%2Fresources%2Fcom%2Fpuppycrawl%2Ftools%2Fcheckstyle%2Fchecks%2Fsizes+filename%3Amessages*.properties+repo%3Acheckstyle%2Fcheckstyle+%22maxLen.file%22"> |
| maxLen.file</a> |
| </li> |
| </ul> |
| <p> |
| All messages can be customized if the default message doesn't suit you. |
| Please <a href="config.html#Custom_messages">see the documentation</a> to learn how to. |
| </p> |
| </subsection> |
| |
| <subsection name="Package"> |
| <p> |
| com.puppycrawl.tools.checkstyle.checks.sizes |
| </p> |
| </subsection> |
| |
| <subsection name="Parent Module"> |
| <p> |
| <a href="config.html#Checker">Checker</a> |
| </p> |
| </subsection> |
| </section> |
| |
| <section name="LineLength"> |
| <subsection name="Description"> |
| <p>Since Checkstyle 3.0</p> |
| <p> |
| Checks for long lines. |
| </p> |
| |
| <p> |
| Rationale: Long lines are hard to read in printouts or if developers |
| have limited screen space for the source code, e.g. if the IDE |
| displays additional information like project tree, class hierarchy, |
| etc. |
| </p> |
| </subsection> |
| |
| <subsection name="Properties"> |
| <table> |
| <tr> |
| <th>name</th> |
| <th>description</th> |
| <th>type</th> |
| <th>default value</th> |
| <th>since</th> |
| </tr> |
| <tr> |
| <td>ignorePattern</td> |
| <td>pattern for lines to ignore</td> |
| <td><a href="property_types.html#regexp">Regular Expression</a></td> |
| <td>"^$"</td> |
| <td>3.0</td> |
| </tr> |
| <tr> |
| <td>max</td> |
| <td>maximum allowable line length</td> |
| <td><a href="property_types.html#integer">Integer</a></td> |
| <td>80</td> |
| <td>3.0</td> |
| </tr> |
| </table> |
| </subsection> |
| |
| <subsection name="Examples"> |
| <p> |
| To configure the check to accept lines up to 120 characters long: |
| </p> |
| <source> |
| <module name="LineLength"> |
| <property name="max" value="120"/> |
| </module> |
| </source> |
| |
| <p> |
| To configure the check to ignore lines that begin with " * |
| ", followed by just one word, such as within a Javadoc comment: |
| </p> |
| <source> |
| <module name="LineLength"> |
| <property name="ignorePattern" value="^ *\* *[^ ]+$"/> |
| </module> |
| </source> |
| </subsection> |
| |
| <subsection name="Notes"> |
| <ul> |
| <li> |
| The calculation of the length of a line takes into account the |
| number of expanded spaces for a tab character (<code>'\t'</code>). The default number of spaces is <code>8</code>. To specify a different number of spaces, |
| the user can set <a href="config.html#TreeWalker"><code>TreeWalker</code></a> property <code>tabWidth</code> which applies to all Checks, |
| including <code>LineLength</code>; or can set |
| property <code>tabWidth</code> for <code>LineLength</code> alone. |
| </li> |
| <li> |
| Package and import statements (lines matching pattern <code>^(package|import) .*</code>) are not verified by |
| this check. |
| </li> |
| </ul> |
| </subsection> |
| |
| <subsection name="Example of Usage"> |
| <ul> |
| <li> |
| <a href="https://github.com/search?q=path%3Asrc%2Fmain%2Fresources+filename%3Agoogle_checks.xml+repo%3Acheckstyle%2Fcheckstyle+LineLength"> |
| Google Style</a> |
| </li> |
| <li> |
| <a href="https://github.com/search?q=path%3Asrc%2Fmain%2Fresources+filename%3Asun_checks.xml+repo%3Acheckstyle%2Fcheckstyle+LineLength"> |
| Sun Style</a> |
| </li> |
| <li> |
| <a href="https://github.com/search?q=path%3Aconfig+filename%3Acheckstyle_checks.xml+repo%3Acheckstyle%2Fcheckstyle+LineLength"> |
| Checkstyle Style</a> |
| </li> |
| </ul> |
| </subsection> |
| |
| <subsection name="Error Messages"> |
| <ul> |
| <li> |
| <a href="https://github.com/search?q=path%3Asrc%2Fmain%2Fresources%2Fcom%2Fpuppycrawl%2Ftools%2Fcheckstyle%2Fchecks%2Fsizes+filename%3Amessages*.properties+repo%3Acheckstyle%2Fcheckstyle+%22maxLineLen%22"> |
| maxLineLen</a> |
| </li> |
| </ul> |
| <p> |
| All messages can be customized if the default message doesn't suit you. |
| Please <a href="config.html#Custom_messages">see the documentation</a> to learn how to. |
| </p> |
| </subsection> |
| |
| <subsection name="Package"> |
| <p> |
| com.puppycrawl.tools.checkstyle.checks.sizes |
| </p> |
| </subsection> |
| |
| <subsection name="Parent Module"> |
| <p> |
| <a href="config.html#TreeWalker">TreeWalker</a> |
| </p> |
| </subsection> |
| </section> |
| |
| <section name="MethodCount"> |
| <subsection name="Description"> |
| <p>Since Checkstyle 5.3</p> |
| <p> |
| Checks the number of methods declared in each type declaration by access modifier or |
| total count. |
| </p> |
| <p> |
| This check can be configured to flag classes that define too many methods to prevent the |
| class from getting too complex. |
| Counting can be customized to prevent too many total methods in a type definition |
| (<code>maxTotal</code>), or to prevent too many methods of a specific access modifier |
| (<code>private</code>, <code>package</code>, <code>protected</code> or |
| <code>public</code>). |
| Each count is completely separated to customize how many methods of each you want to allow. |
| For example, specifying a <code>maxTotal</code> of 10, still means you can prevent more |
| than 0 <code>maxPackage</code> methods. A violation won't appear for 8 public methods, |
| but one will appear if there is also 3 private methods or any package-private methods. |
| </p> |
| <p> |
| Methods defined in anonymous classes are not counted towards any totals. |
| Counts only go towards the main type declaration parent, and are kept separate from it's |
| children's inner types. |
| <source> |
| public class ExampleClass { |
| public enum Colors { |
| RED, GREEN, YELLOW; |
| |
| public String getRGB() { ... } // NOT counted towards ExampleClass |
| } |
| |
| public void example() { // counted towards ExampleClass |
| Runnable r = (new Runnable() { |
| public void run() { ... } // NOT counted towards ExampleClass and won't produce any violations |
| }); |
| } |
| |
| public static class InnerExampleClass { |
| protected void example2() { ... } // NOT counted towards ExampleClass, |
| // but counted towards InnerExampleClass |
| } |
| } |
| </source> |
| </p> |
| </subsection> |
| |
| <subsection name="Properties"> |
| <table> |
| <tr> |
| <th>name</th> |
| <th>description</th> |
| <th>type</th> |
| <th>default value</th> |
| <th>since</th> |
| </tr> |
| <tr> |
| <td>maxTotal</td> |
| <td>maximum allowable number of methods at all scope levels</td> |
| <td><a href="property_types.html#integer">Integer</a></td> |
| <td>100</td> |
| <td>5.3</td> |
| </tr> |
| <tr> |
| <td>maxPrivate</td> |
| <td>maximum allowable number of <code>private</code> methods</td> |
| <td><a href="property_types.html#integer">Integer</a></td> |
| <td>100</td> |
| <td>5.3</td> |
| </tr> |
| <tr> |
| <td>maxPackage</td> |
| <td>maximum allowable number of <code>package</code> methods</td> |
| <td><a href="property_types.html#integer">Integer</a></td> |
| <td>100</td> |
| <td>5.3</td> |
| </tr> |
| <tr> |
| <td>maxProtected</td> |
| <td>maximum allowable number of <code>protected</code> methods</td> |
| <td><a href="property_types.html#integer">Integer</a></td> |
| <td>100</td> |
| <td>5.3</td> |
| </tr> |
| <tr> |
| <td>maxPublic</td> |
| <td>maximum allowable number of <code>public</code> methods</td> |
| <td><a href="property_types.html#integer">Integer</a></td> |
| <td>100</td> |
| <td>5.3</td> |
| </tr> |
| |
| <tr> |
| <td>tokens</td> |
| <td>tokens to check</td> |
| |
| <td> |
| subset of tokens |
| <a href="apidocs/com/puppycrawl/tools/checkstyle/api/TokenTypes.html#CLASS_DEF">CLASS_DEF</a>, |
| <a href="apidocs/com/puppycrawl/tools/checkstyle/api/TokenTypes.html#ENUM_CONSTANT_DEF">ENUM_CONSTANT_DEF</a>, |
| <a href="apidocs/com/puppycrawl/tools/checkstyle/api/TokenTypes.html#ENUM_DEF">ENUM_DEF</a>, |
| <a href="apidocs/com/puppycrawl/tools/checkstyle/api/TokenTypes.html#INTERFACE_DEF">INTERFACE_DEF</a>, |
| <a href="apidocs/com/puppycrawl/tools/checkstyle/api/TokenTypes.html#INTERFACE_DEF">ANNOTATION_DEF</a>. |
| </td> |
| |
| <td> |
| <a href="apidocs/com/puppycrawl/tools/checkstyle/api/TokenTypes.html#CLASS_DEF">CLASS_DEF</a>, |
| <a href="apidocs/com/puppycrawl/tools/checkstyle/api/TokenTypes.html#ENUM_CONSTANT_DEF">ENUM_CONSTANT_DEF</a>, |
| <a href="apidocs/com/puppycrawl/tools/checkstyle/api/TokenTypes.html#ENUM_DEF">ENUM_DEF</a>, |
| <a href="apidocs/com/puppycrawl/tools/checkstyle/api/TokenTypes.html#INTERFACE_DEF">INTERFACE_DEF</a>, |
| <a href="apidocs/com/puppycrawl/tools/checkstyle/api/TokenTypes.html#INTERFACE_DEF">ANNOTATION_DEF</a>. |
| </td> |
| <td>5.3</td> |
| </tr> |
| </table> |
| </subsection> |
| |
| <subsection name="Examples"> |
| <p> |
| To configure the check with defaults: |
| </p> |
| <source> |
| <module name="MethodCount"/> |
| </source> |
| |
| <p> |
| To configure the check to allow no more than 30 methods per type declaration: |
| </p> |
| <source> |
| <module name="MethodCount"> |
| <property name="maxTotal" value="30"/> |
| </module> |
| </source> |
| |
| <p> |
| To configure the check to allow no more than 10 public methods per type declaration, and 40 methods in total: |
| </p> |
| <source> |
| <module name="MethodCount"> |
| <property name="maxPublic" value="10"/> |
| <property name="maxTotal" value="40"/> |
| </module> |
| </source> |
| |
| </subsection> |
| |
| <subsection name="Example of Usage"> |
| <ul> |
| <li> |
| <a href="https://github.com/search?q=path%3Aconfig+filename%3Acheckstyle_checks.xml+repo%3Acheckstyle%2Fcheckstyle+MethodCount"> |
| Checkstyle Style</a> |
| </li> |
| </ul> |
| </subsection> |
| |
| <subsection name="Error Messages"> |
| <ul> |
| <li> |
| <a href="https://github.com/search?q=path%3Asrc%2Fmain%2Fresources%2Fcom%2Fpuppycrawl%2Ftools%2Fcheckstyle%2Fchecks%2Fsizes+filename%3Amessages*.properties+repo%3Acheckstyle%2Fcheckstyle+%22too.many.methods%22"> |
| too.many.methods</a> |
| </li> |
| <li> |
| <a href="https://github.com/search?q=path%3Asrc%2Fmain%2Fresources%2Fcom%2Fpuppycrawl%2Ftools%2Fcheckstyle%2Fchecks%2Fsizes+filename%3Amessages*.properties+repo%3Acheckstyle%2Fcheckstyle+%22too.many.packageMethods%22"> |
| too.many.packageMethods</a> |
| </li> |
| <li> |
| <a href="https://github.com/search?q=path%3Asrc%2Fmain%2Fresources%2Fcom%2Fpuppycrawl%2Ftools%2Fcheckstyle%2Fchecks%2Fsizes+filename%3Amessages*.properties+repo%3Acheckstyle%2Fcheckstyle+%22too.many.privateMethods%22"> |
| too.many.privateMethods</a> |
| </li> |
| <li> |
| <a href="https://github.com/search?q=path%3Asrc%2Fmain%2Fresources%2Fcom%2Fpuppycrawl%2Ftools%2Fcheckstyle%2Fchecks%2Fsizes+filename%3Amessages*.properties+repo%3Acheckstyle%2Fcheckstyle+%22too.many.protectedMethods%22"> |
| too.many.protectedMethods</a> |
| </li> |
| <li> |
| <a href="https://github.com/search?q=path%3Asrc%2Fmain%2Fresources%2Fcom%2Fpuppycrawl%2Ftools%2Fcheckstyle%2Fchecks%2Fsizes+filename%3Amessages*.properties+repo%3Acheckstyle%2Fcheckstyle+%22too.many.publicMethods%22"> |
| too.many.publicMethods</a> |
| </li> |
| </ul> |
| <p> |
| All messages can be customized if the default message doesn't suit you. |
| Please <a href="config.html#Custom_messages">see the documentation</a> to learn how to. |
| </p> |
| </subsection> |
| |
| <subsection name="Package"> |
| <p> |
| com.puppycrawl.tools.checkstyle.checks.sizes |
| </p> |
| </subsection> |
| |
| <subsection name="Parent Module"> |
| <p> |
| <a href="config.html#TreeWalker">TreeWalker</a> |
| </p> |
| </subsection> |
| </section> |
| |
| <section name="MethodLength"> |
| <subsection name="Description"> |
| <p>Since Checkstyle 3.0</p> |
| <p> |
| Checks for long methods and constructors. |
| </p> |
| |
| <p> |
| 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. |
| </p> |
| </subsection> |
| |
| <subsection name="Properties"> |
| <table> |
| <tr> |
| <th>name</th> |
| <th>description</th> |
| <th>type</th> |
| <th>default value</th> |
| <th>since</th> |
| </tr> |
| <tr> |
| <td>max</td> |
| <td>maximum allowable number of lines</td> |
| <td><a href="property_types.html#integer">Integer</a></td> |
| <td>150</td> |
| <td>3.0</td> |
| </tr> |
| <tr> |
| <td>countEmpty</td> |
| <td> |
| whether to count empty lines and single line comments of the |
| form <code>//</code> |
| </td> |
| <td><a href="property_types.html#boolean">Boolean</a></td> |
| <td><code>true</code></td> |
| <td>3.2</td> |
| </tr> |
| <tr> |
| <td>tokens</td> |
| <td>tokens to check</td> |
| |
| <td> |
| subset of tokens <a |
| href="apidocs/com/puppycrawl/tools/checkstyle/api/TokenTypes.html#METHOD_DEF">METHOD_DEF</a>, |
| <a |
| href="apidocs/com/puppycrawl/tools/checkstyle/api/TokenTypes.html#CTOR_DEF">CTOR_DEF</a>. |
| </td> |
| |
| <td> |
| <a |
| href="apidocs/com/puppycrawl/tools/checkstyle/api/TokenTypes.html#METHOD_DEF">METHOD_DEF</a>, |
| <a |
| href="apidocs/com/puppycrawl/tools/checkstyle/api/TokenTypes.html#CTOR_DEF">CTOR_DEF</a>. |
| </td> |
| <td>3.0</td> |
| </tr> |
| </table> |
| </subsection> |
| |
| <subsection name="Examples"> |
| <p> |
| To configure the check: |
| </p> |
| <source> |
| <module name="MethodLength"/> |
| </source> |
| |
| <p> |
| To configure the check so that it accepts methods with at most 60 |
| lines: |
| </p> |
| <source> |
| <module name="MethodLength"> |
| <property name="tokens" value="METHOD_DEF"/> |
| <property name="max" value="60"/> |
| </module> |
| </source> |
| |
| <p> |
| To configure the check so that it accepts methods with at most 60 |
| lines, not counting empty lines and single line comments: |
| </p> |
| <source> |
| <module name="MethodLength"> |
| <property name="tokens" value="METHOD_DEF"/> |
| <property name="max" value="60"/> |
| <property name="countEmpty" value="false"/> |
| </module> |
| </source> |
| </subsection> |
| |
| <subsection name="Example of Usage"> |
| <ul> |
| <li> |
| <a href="https://github.com/search?q=path%3Asrc%2Fmain%2Fresources+filename%3Asun_checks.xml+repo%3Acheckstyle%2Fcheckstyle+MethodLength"> |
| Sun Style</a> |
| </li> |
| <li> |
| <a href="https://github.com/search?q=path%3Aconfig+filename%3Acheckstyle_checks.xml+repo%3Acheckstyle%2Fcheckstyle+MethodLength"> |
| Checkstyle Style</a> |
| </li> |
| </ul> |
| </subsection> |
| |
| <subsection name="Error Messages"> |
| <ul> |
| <li> |
| <a href="https://github.com/search?q=path%3Asrc%2Fmain%2Fresources%2Fcom%2Fpuppycrawl%2Ftools%2Fcheckstyle%2Fchecks%2Fsizes+filename%3Amessages*.properties+repo%3Acheckstyle%2Fcheckstyle+%22maxLen.method%22"> |
| maxLen.method</a> |
| </li> |
| </ul> |
| <p> |
| All messages can be customized if the default message doesn't suit you. |
| Please <a href="config.html#Custom_messages">see the documentation</a> to learn how to. |
| </p> |
| </subsection> |
| |
| <subsection name="Package"> |
| <p> |
| com.puppycrawl.tools.checkstyle.checks.sizes |
| </p> |
| </subsection> |
| |
| <subsection name="Parent Module"> |
| <p> |
| <a href="config.html#TreeWalker">TreeWalker</a> |
| </p> |
| </subsection> |
| </section> |
| |
| <section name="OuterTypeNumber"> |
| <subsection name="Description"> |
| <p>Since Checkstyle 5.0</p> |
| <p> |
| Checks for the number of types declared at the <i>outer</i> |
| (or <i>root</i>) level in a file. |
| </p> |
| |
| <p> |
| Rationale: It is considered good practice to only define one outer |
| type per file. |
| </p> |
| </subsection> |
| |
| <subsection name="Properties"> |
| <table> |
| <tr> |
| <th>name</th> |
| <th>description</th> |
| <th>type</th> |
| <th>default value</th> |
| <th>since</th> |
| </tr> |
| <tr> |
| <td>max</td> |
| <td>maximum allowable number of outer types</td> |
| <td><a href="property_types.html#integer">Integer</a></td> |
| <td>1</td> |
| <td>5.0</td> |
| </tr> |
| </table> |
| </subsection> |
| |
| <subsection name="Examples"> |
| <p> |
| To configure the check to accept 1 outer type per file: |
| </p> |
| <source> |
| <module name="OuterTypeNumber"/> |
| </source> |
| |
| <p> |
| To configure the check to accept 2 outer types per file: |
| </p> |
| <source> |
| <module name="OuterTypeNumber"> |
| <property name="max" value="2"/> |
| </module> |
| </source> |
| |
| </subsection> |
| |
| <subsection name="Example of Usage"> |
| <ul> |
| <li> |
| <a href="https://github.com/search?q=path%3Aconfig+filename%3Acheckstyle_checks.xml+repo%3Acheckstyle%2Fcheckstyle+OuterTypeNumber"> |
| Checkstyle Style</a> |
| </li> |
| </ul> |
| </subsection> |
| |
| <subsection name="Error Messages"> |
| <ul> |
| <li> |
| <a href="https://github.com/search?q=path%3Asrc%2Fmain%2Fresources%2Fcom%2Fpuppycrawl%2Ftools%2Fcheckstyle%2Fchecks%2Fsizes+filename%3Amessages*.properties+repo%3Acheckstyle%2Fcheckstyle+%22maxOuterTypes%22"> |
| maxOuterTypes</a> |
| </li> |
| </ul> |
| <p> |
| All messages can be customized if the default message doesn't suit you. |
| Please <a href="config.html#Custom_messages">see the documentation</a> to learn how to. |
| </p> |
| </subsection> |
| |
| <subsection name="Package"> |
| <p> |
| com.puppycrawl.tools.checkstyle.checks.sizes |
| </p> |
| </subsection> |
| |
| <subsection name="Parent Module"> |
| <p> |
| <a href="config.html#TreeWalker">TreeWalker</a> |
| </p> |
| </subsection> |
| </section> |
| |
| <section name="ParameterNumber"> |
| <subsection name="Description"> |
| <p>Since Checkstyle 3.0</p> |
| <p> |
| Checks the number of parameters of a method or constructor. |
| </p> |
| </subsection> |
| |
| <subsection name="Properties"> |
| <table> |
| <tr> |
| <th>name</th> |
| <th>description</th> |
| <th>type</th> |
| <th>default value</th> |
| <th>since</th> |
| </tr> |
| <tr> |
| <td>max</td> |
| <td>maximum allowable number of parameters</td> |
| <td><a href="property_types.html#integer">Integer</a></td> |
| <td>7</td> |
| <td>3.0</td> |
| </tr> |
| <tr> |
| <td>ignoreOverriddenMethods</td> |
| <td>Ignore number of parameters for methods with @Override annotation</td> |
| <td><a href="property_types.html#boolean">Boolean</a></td> |
| <td>false</td> |
| <td>6.2</td> |
| </tr> |
| <tr> |
| <td>tokens</td> |
| <td>tokens to check</td> |
| |
| <td> |
| subset of tokens <a |
| href="apidocs/com/puppycrawl/tools/checkstyle/api/TokenTypes.html#METHOD_DEF">METHOD_DEF</a>, |
| <a |
| href="apidocs/com/puppycrawl/tools/checkstyle/api/TokenTypes.html#CTOR_DEF">CTOR_DEF</a>. |
| </td> |
| |
| <td> |
| <a |
| href="apidocs/com/puppycrawl/tools/checkstyle/api/TokenTypes.html#METHOD_DEF">METHOD_DEF</a>, |
| <a |
| href="apidocs/com/puppycrawl/tools/checkstyle/api/TokenTypes.html#CTOR_DEF">CTOR_DEF</a>. |
| </td> |
| <td>3.0</td> |
| </tr> |
| </table> |
| </subsection> |
| |
| <subsection name="Examples"> |
| <p> |
| To configure the check: |
| </p> |
| <source> |
| <module name="ParameterNumber"/> |
| </source> |
| |
| <p> |
| To configure the check to allow 10 parameters for a method: |
| </p> |
| <source> |
| <module name="ParameterNumber"> |
| <property name="max" value="10"/> |
| <property name="tokens" value="METHOD_DEF"/> |
| </module> |
| </source> |
| <p> |
| To configure the check to ignore number of parameters for methods with @Override or @java.lang.Override annotation. |
| </p> |
| <p> |
| Rationale: developer may need to override method with many parameters from 3-rd party library. |
| In this case developer has no control over number of parameters. |
| </p> |
| <source> |
| <module name="ParameterNumber"> |
| <property name="ignoreOverriddenMethods" value="true"/> |
| <property name="tokens" value="METHOD_DEF"/> |
| </module> |
| </source> |
| <p> |
| Java code example |
| </p> |
| <source> |
| @Override |
| public void needsLotsOfParameters(int a, int b, int c, int d, int e, int f, int g, int h) { |
| ... |
| } |
| </source> |
| </subsection> |
| |
| <subsection name="Example of Usage"> |
| <ul> |
| <li> |
| <a href="https://github.com/search?q=path%3Asrc%2Fmain%2Fresources+filename%3Asun_checks.xml+repo%3Acheckstyle%2Fcheckstyle+ParameterNumber"> |
| Sun Style</a> |
| </li> |
| <li> |
| <a href="https://github.com/search?q=path%3Aconfig+filename%3Acheckstyle_checks.xml+repo%3Acheckstyle%2Fcheckstyle+ParameterNumber"> |
| Checkstyle Style</a> |
| </li> |
| </ul> |
| </subsection> |
| |
| <subsection name="Error Messages"> |
| <ul> |
| <li> |
| <a href="https://github.com/search?q=path%3Asrc%2Fmain%2Fresources%2Fcom%2Fpuppycrawl%2Ftools%2Fcheckstyle%2Fchecks%2Fsizes+filename%3Amessages*.properties+repo%3Acheckstyle%2Fcheckstyle+%22maxParam%22"> |
| maxParam</a> |
| </li> |
| </ul> |
| <p> |
| All messages can be customized if the default message doesn't suit you. |
| Please <a href="config.html#Custom_messages">see the documentation</a> to learn how to. |
| </p> |
| </subsection> |
| |
| <subsection name="Package"> |
| <p> |
| com.puppycrawl.tools.checkstyle.checks.sizes |
| </p> |
| </subsection> |
| |
| <subsection name="Parent Module"> |
| <p> |
| <a href="config.html#TreeWalker">TreeWalker</a> |
| </p> |
| </subsection> |
| </section> |
| |
| </body> |
| </document> |