Class CaseInsensitiveLetterState


  • public final class CaseInsensitiveLetterState
    extends AbstractParserState
    This parser state checks consumed characters against a specific character (case insensitive).
    • Field Detail

      • noMatchState

        private final AbstractParserState noMatchState
        Next state if not match is found.
      • lowerLetter

        private final char lowerLetter
        Lower case version of character to match.
      • upperLetter

        private final char upperLetter
        Lower case version of character to match.
    • Constructor Detail

      • CaseInsensitiveLetterState

        public CaseInsensitiveLetterState​(AbstractParser parser,
                                          char matchLetter,
                                          AbstractParserState nextStateArg,
                                          AbstractParserState noMatchStateArg)
        Constructor.
        Parameters:
        parser - parser
        matchLetter - letter to match
        nextStateArg - next state if a match on the letter
        noMatchStateArg - state if no match on letter
    • Method Detail

      • consume

        public AbstractParserState consume​(char ch)
        Consumes a character and returns the next state for the parser.
        Specified by:
        consume in class AbstractParserState
        Parameters:
        ch - next character
        Returns:
        the configured nextState if ch is the expected character or the configure noMatchState otherwise.