Class ArgumentCompleter.AbstractArgumentDelimiter
java.lang.Object
jline.console.completer.ArgumentCompleter.AbstractArgumentDelimiter
- All Implemented Interfaces:
ArgumentCompleter.ArgumentDelimiter
- Direct Known Subclasses:
ArgumentCompleter.WhitespaceArgumentDelimiter
- Enclosing class:
ArgumentCompleter
public abstract static class ArgumentCompleter.AbstractArgumentDelimiter
extends Object
implements ArgumentCompleter.ArgumentDelimiter
Abstract implementation of a delimiter that uses the
isDelimiter(CharSequence, int) method to determine if a particular
character should be used as a delimiter.- Since:
- 2.3
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptiondelimit(CharSequence buffer, int cursor) Break the specified buffer into individual tokens that can be completed on their own.char[]char[]booleanisDelimiter(CharSequence buffer, int pos) Returns true if the specified character is a whitespace parameter.abstract booleanisDelimiterChar(CharSequence buffer, int pos) Returns true if the character at the specified position if a delimiter.booleanisEscapeChar(CharSequence buffer, int pos) Check if this character is a valid escape char (i.e.booleanisEscaped(CharSequence buffer, int pos) Check if a character is escaped (i.e.booleanisQuoteChar(CharSequence buffer, int pos) booleanisQuoted(CharSequence buffer, int pos) voidsetEscapeChars(char[] chars) voidsetQuoteChars(char[] chars)
-
Field Details
-
quoteChars
private char[] quoteChars -
escapeChars
private char[] escapeChars
-
-
Constructor Details
-
AbstractArgumentDelimiter
public AbstractArgumentDelimiter()
-
-
Method Details
-
setQuoteChars
public void setQuoteChars(char[] chars) -
getQuoteChars
public char[] getQuoteChars() -
setEscapeChars
public void setEscapeChars(char[] chars) -
getEscapeChars
public char[] getEscapeChars() -
delimit
Description copied from interface:ArgumentCompleter.ArgumentDelimiterBreak the specified buffer into individual tokens that can be completed on their own.- Specified by:
delimitin interfaceArgumentCompleter.ArgumentDelimiter- Parameters:
buffer- The buffer to splitcursor- The current position of the cursor in the buffer- Returns:
- The tokens
-
isDelimiter
Returns true if the specified character is a whitespace parameter. Check to ensure that the character is not escaped by any ofgetQuoteChars(), and is not escaped by ant of thegetEscapeChars(), and returns true fromisDelimiterChar(CharSequence, int).- Specified by:
isDelimiterin interfaceArgumentCompleter.ArgumentDelimiter- Parameters:
buffer- The complete command bufferpos- The index of the character in the buffer- Returns:
- True if the character should be a delimiter
-
isQuoted
-
isQuoteChar
-
isEscapeChar
Check if this character is a valid escape char (i.e. one that has not been escaped) -
isEscaped
Check if a character is escaped (i.e. if the previous character is an escape)- Parameters:
buffer- the buffer to check inpos- the position of the character to check- Returns:
- true if the character at the specified position in the given buffer is an escape character and the character immediately preceding it is not an escape character.
-
isDelimiterChar
Returns true if the character at the specified position if a delimiter. This method will only be called if the character is not enclosed in any of thegetQuoteChars(), and is not escaped by ant of thegetEscapeChars(). To perform escaping manually, overrideisDelimiter(CharSequence, int)instead.
-