Package org.jline.reader.impl
Class DefaultParser
java.lang.Object
org.jline.reader.impl.DefaultParser
- All Implemented Interfaces:
Parser
-
Nested Class Summary
Modifier and TypeClassDescriptionclass
The result of a delimited buffer.static class
static enum
Nested classes/interfaces inherited from interface org.jline.reader.Parser
Parser.ParseContext
-
Field Summary
Fields inherited from interface org.jline.reader.Parser
REGEX_COMMAND, REGEX_VARIABLE
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionblockCommentDelims
(DefaultParser.BlockCommentDelims blockCommentDelims) commandGroup
(int commandGroup) eofOnEscapedNewLine
(boolean eofOnEscapedNewLine) eofOnUnclosedBracket
(DefaultParser.Bracket... brackets) eofOnUnclosedQuote
(boolean eofOnUnclosedQuote) escapeChars
(char[] chars) getCommand
(String line) char[]
String[]
char[]
getVariable
(String line) boolean
isDelimiter
(CharSequence buffer, int pos) Returns true if the specified character is a whitespace parameter.boolean
isDelimiterChar
(CharSequence buffer, int pos) Returns true if the character at the specified position if a delimiter.boolean
boolean
boolean
isEscapeChar
(char ch) boolean
isEscapeChar
(CharSequence buffer, int pos) Check if this character is a valid escape char (i.e.boolean
isEscaped
(CharSequence buffer, int pos) Check if a character is escaped (i.e.boolean
isLineCommentStarted
(CharSequence buffer, int pos) boolean
isQuoteChar
(CharSequence buffer, int pos) boolean
isQuoted
(CharSequence buffer, int pos) lineCommentDelims
(String[] lineCommentDelims) parse
(String line, int cursor, Parser.ParseContext context) quoteChars
(char[] chars) regexCommand
(String regexCommand) regexVariable
(String regexVariable) void
setBlockCommentDelims
(DefaultParser.BlockCommentDelims blockCommentDelims) void
setCommandGroup
(int commandGroup) void
setEofOnEscapedNewLine
(boolean eofOnEscapedNewLine) void
setEofOnUnclosedBracket
(DefaultParser.Bracket... brackets) void
setEofOnUnclosedQuote
(boolean eofOnUnclosedQuote) void
setEscapeChars
(char[] chars) void
setLineCommentDelims
(String[] lineCommentDelims) void
setQuoteChars
(char[] chars) void
setRegexCommand
(String regexCommand) void
setRegexVariable
(String regexVariable) boolean
validCommandName
(String name) boolean
validVariableName
(String name)
-
Constructor Details
-
DefaultParser
public DefaultParser()
-
-
Method Details
-
lineCommentDelims
-
blockCommentDelims
-
quoteChars
-
escapeChars
-
eofOnUnclosedQuote
-
eofOnUnclosedBracket
-
eofOnEscapedNewLine
-
regexVariable
-
regexCommand
-
commandGroup
-
setQuoteChars
public void setQuoteChars(char[] chars) -
getQuoteChars
public char[] getQuoteChars() -
setEscapeChars
public void setEscapeChars(char[] chars) -
getEscapeChars
public char[] getEscapeChars() -
setLineCommentDelims
-
getLineCommentDelims
-
setBlockCommentDelims
-
getBlockCommentDelims
-
setEofOnUnclosedQuote
public void setEofOnUnclosedQuote(boolean eofOnUnclosedQuote) -
isEofOnUnclosedQuote
public boolean isEofOnUnclosedQuote() -
setEofOnEscapedNewLine
public void setEofOnEscapedNewLine(boolean eofOnEscapedNewLine) -
isEofOnEscapedNewLine
public boolean isEofOnEscapedNewLine() -
setEofOnUnclosedBracket
-
setRegexVariable
-
setRegexCommand
-
setCommandGroup
public void setCommandGroup(int commandGroup) -
validCommandName
- Specified by:
validCommandName
in interfaceParser
-
validVariableName
- Specified by:
validVariableName
in interfaceParser
-
getCommand
- Specified by:
getCommand
in interfaceParser
-
getVariable
- Specified by:
getVariable
in interfaceParser
-
parse
-
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 any of thegetEscapeChars()
, and returns true fromisDelimiterChar(java.lang.CharSequence, int)
.- 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
-
isLineCommentStarted
-
isEscapeChar
public boolean isEscapeChar(char ch) - Specified by:
isEscapeChar
in interfaceParser
-
isEscapeChar
Check if this character is a valid escape char (i.e. one that has not been escaped)- 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.
-
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 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 any of thegetEscapeChars()
. To perform escaping manually, overrideisDelimiter(java.lang.CharSequence, int)
instead.- 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 a delimiter.
-