Interface ArgumentReader
- All Known Subinterfaces:
- ArgumentReader.Immutable,- ArgumentReader.Mutable
public interface ArgumentReader
An 
ArgumentReader allows for sequential reading of an input
 String, by providing a "cursor" that advances when part
 of the String is read.
 The base ArgumentReader interface (this) only contains
 methods that get the state of the reader. The sub-interfaces,
 ArgumentReader.Immutable and ArgumentReader.Mutable indicate whether the reader
 is indicating state or is an active reader.
- 
Nested Class SummaryNested ClassesModifier and TypeInterfaceDescriptionstatic interfaceRepresents aArgumentReaderwhere the cursor position cannot be changed.static interfaceRepresents aArgumentReaderwhere the cursor may move.
- 
Method SummaryModifier and TypeMethodDescriptionbooleancanRead()Gets whether this reader has not finished reading the input string.createException(Component errorMessage) Creates anArgumentParseExceptionwith the provided message, based on the current state of this object.intcursor()Gets the location of the cursor.input()Gets the argument string that is being read by this reader.parsed()Gets the substring that has already been parsed.charGets the character after the cursor ifcanRead()is true.Gets the substring that has yet to be read.intGet the number of characters that have not yet been read.intGets the length of the input string.
- 
Method Details- 
inputString input()Gets the argument string that is being read by this reader.- Returns:
- The input String
 
- 
remainingLengthint remainingLength()Get the number of characters that have not yet been read.- Returns:
- The length of the remaining string
 
- 
totalLengthint totalLength()Gets the length of the input string.- Returns:
- The length of the input string
 
- 
cursorint 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, andcanRead()will befalse- Returns:
- The location of the cursor
 
- 
parsedString parsed()Gets the substring that has already been parsed.- Returns:
- The substring that has been parsed.
 
- 
remainingString remaining()Gets the substring that has yet to be read.- Returns:
- The substring that has yet to be read.
 
- 
canReadboolean canRead()Gets whether this reader has not finished reading the input string.This is equivalent to remainingLength()> 0- Returns:
- trueif there are further characters to read.
 
- 
peekCharacterchar peekCharacter()Gets the character after the cursor ifcanRead()is true.- Returns:
- The next character
- Throws:
- IllegalStateException- if- canRead()is false
 
- 
createExceptionCreates anArgumentParseExceptionwith 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
 
 
-