Interface ArgumentReader

    • Method Detail

      • input

        java.lang.String input()
        Gets the argument string that is being read by this reader.
        Returns:
        The input String
      • remainingLength

        int remainingLength()
        Get the number of characters that have not yet been read.
        Returns:
        The length of the remaining string
      • totalLength

        int totalLength()
        Gets the length of the input string.
        Returns:
        The length of the input string
      • cursor

        int cursor()
        Gets the location of the cursor.

        If zero, the cursor has not yet read a character. If equal to totalLength(), this cursor is at the end of the string, and canRead() will be false

        Returns:
        The location of the cursor
      • parsed

        java.lang.String parsed()
        Gets the substring that has already been parsed.
        Returns:
        The substring that has been parsed.
      • remaining

        java.lang.String remaining()
        Gets the substring that has yet to be read.
        Returns:
        The substring that has yet to be read.
      • canRead

        boolean canRead()
        Gets whether this reader has not finished reading the input string.

        This is equivalent to remainingLength() > 0

        Returns:
        true if there are further characters to read.
      • peekCharacter

        char peekCharacter()
        Gets the character after the cursor if canRead() is true.
        Returns:
        The next character
        Throws:
        java.lang.IllegalStateException - if canRead() is false
      • createException

        ArgumentParseException createException​(Component errorMessage)
        Creates an ArgumentParseException with the provided message, based on the current state of this object.

        Note that the exception will not be thrown. It is up to the caller of this method to throw the exception.

        Parameters:
        errorMessage - The error message to display
        Returns:
        The exception