Class EmptyForIteratorPadCheck

  • All Implemented Interfaces:
    Configurable, Contextualizable

    public class EmptyForIteratorPadCheck
    extends AbstractCheck

    Checks the padding of an empty for iterator; that is whether a white space is required at an empty for iterator, or such white space is forbidden. No check occurs if there is a line wrap at the iterator, as in

     for (Iterator foo = very.long.line.iterator();
         foo.hasNext();
        )
     
    • Property option - Specify policy on how to pad an empty for iterator. Type is com.puppycrawl.tools.checkstyle.checks.whitespace.PadOption. Default value is nospace.

    To configure the check:

     <module name="EmptyForIteratorPad"/>
     

    Example:

     for (Iterator it = map.entrySet().iterator();  it.hasNext(););  // ok
     for (Iterator it = map.entrySet().iterator();  it.hasNext(); ); // violation since whitespace
                                                                     //after semicolon
    
     for (Iterator foo = very.long.line.iterator();
           foo.hasNext();
          ); // ok
     

    To configure the check to require white space at an empty for iterator:

     <module name="EmptyForIteratorPad">
       <property name="option" value="space"/>
     </module>
     

    Example:

     for (Iterator it = map.entrySet().iterator();  it.hasNext();); // violation as there is no
                                                                    // whitespace after semicolon
    
     for (Iterator it = map.entrySet().iterator();  it.hasNext(); ); // ok
    
     for (Iterator foo = very.long.line.iterator();
           foo.hasNext();
          ); // violation as there  is no whitespace after semicolon
     

    Parent is com.puppycrawl.tools.checkstyle.TreeWalker

    Violation Message Keys:

    • ws.followed
    • ws.notFollowed
    Since:
    3.0
    • Field Detail

      • MSG_WS_FOLLOWED

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

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

        private static final java.lang.String SEMICOLON
        Semicolon literal.
        See Also:
        Constant Field Values
      • option

        private PadOption option
        Specify policy on how to pad an empty for iterator.
    • Constructor Detail

      • EmptyForIteratorPadCheck

        public EmptyForIteratorPadCheck()
    • Method Detail

      • setOption

        public void setOption​(java.lang.String optionStr)
        Setter to specify policy on how to pad an empty for iterator.
        Parameters:
        optionStr - string to decode option from
        Throws:
        java.lang.IllegalArgumentException - if unable to decode
      • 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