Class MethodParamPadCheck

  • All Implemented Interfaces:
    Configurable, Contextualizable

    public class MethodParamPadCheck
    extends AbstractCheck

    Checks the padding between the identifier of a method definition, constructor definition, method call, or constructor invocation; and the left parenthesis of the parameter list. That is, if the identifier and left parenthesis are on the same line, checks whether a space is required immediately after the identifier or such a space is forbidden. If they are not on the same line, reports a violation, unless configured to allow line breaks. To allow linebreaks after the identifier, set property allowLineBreaks to true.

    • Property allowLineBreaks - Allow a line break between the identifier and left parenthesis. Type is boolean. Default value is false.
    • Property option - Specify policy on how to pad method parameter. Type is com.puppycrawl.tools.checkstyle.checks.whitespace.PadOption. Default value is nospace.
    • Property tokens - tokens to check Type is java.lang.String[]. Validation type is tokenSet. Default value is: CTOR_DEF, LITERAL_NEW, METHOD_CALL, METHOD_DEF, SUPER_CTOR_CALL, ENUM_CONSTANT_DEF, RECORD_DEF.

    To configure the check:

     <module name="MethodParamPad"/>
     

    To configure the check to require a space after the identifier of a method definition, except if the left parenthesis occurs on a new line:

     <module name="MethodParamPad">
       <property name="tokens" value="METHOD_DEF"/>
       <property name="option" value="space"/>
       <property name="allowLineBreaks" value="true"/>
     </module>
     

    Parent is com.puppycrawl.tools.checkstyle.TreeWalker

    Violation Message Keys:

    • line.previous
    • ws.notPreceded
    • ws.preceded
    Since:
    3.4
    • Field Detail

      • MSG_LINE_PREVIOUS

        public static final java.lang.String MSG_LINE_PREVIOUS
        A key is pointing to the warning message text in "messages.properties" file.
        See Also:
        Constant Field Values
      • MSG_WS_PRECEDED

        public static final java.lang.String MSG_WS_PRECEDED
        A key is pointing to the warning message text in "messages.properties" file.
        See Also:
        Constant Field Values
      • MSG_WS_NOT_PRECEDED

        public static final java.lang.String MSG_WS_NOT_PRECEDED
        A key is pointing to the warning message text in "messages.properties" file.
        See Also:
        Constant Field Values
    • Constructor Detail

      • MethodParamPadCheck

        public MethodParamPadCheck()
    • Method Detail

      • getDefaultTokens

        public int[] getDefaultTokens()
        Description copied from class: AbstractCheck
        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 AbstractCheck
        Returns:
        the default tokens
        See Also:
        TokenTypes
      • getAcceptableTokens

        public int[] getAcceptableTokens()
        Description copied from class: AbstractCheck
        The configurable token set. Used to protect Checks against malicious users who specify an unacceptable token set in the configuration file. The default implementation returns the check's default tokens.
        Specified by:
        getAcceptableTokens in class AbstractCheck
        Returns:
        the token set this check is designed for.
        See Also:
        TokenTypes
      • getRequiredTokens

        public int[] getRequiredTokens()
        Description copied from class: AbstractCheck
        The tokens that this check must be registered for.
        Specified by:
        getRequiredTokens in class AbstractCheck
        Returns:
        the token set this must be registered for.
        See Also:
        TokenTypes
      • setAllowLineBreaks

        public void setAllowLineBreaks​(boolean allowLineBreaks)
        Setter to allow a line break between the identifier and left parenthesis.
        Parameters:
        allowLineBreaks - whether whitespace should be flagged at line breaks.
      • setOption

        public void setOption​(java.lang.String optionStr)
        Setter to specify policy on how to pad method parameter.
        Parameters:
        optionStr - string to decode option from
        Throws:
        java.lang.IllegalArgumentException - if unable to decode