Class QuotedStringTokenizer

java.lang.Object
revxrsal.commands.util.tokenize.QuotedStringTokenizer
All Implemented Interfaces:
ArgumentParser

public final class QuotedStringTokenizer extends Object implements ArgumentParser
Parser for converting a quoted string into a list of arguments.

Grammar is roughly (yeah, this is not really a proper grammar but it gives you an idea of what's happening:

 WHITESPACE = Character.isWhiteSpace(codePoint)
 CHAR := (all unicode)
 ESCAPE := '\' CHAR
 QUOTE = ' | "
 UNQUOTED_ARG := (CHAR | ESCAPE)+ WHITESPACE
 QUOTED_ARG := QUOTE (CHAR | ESCAPE)+ QUOTE
 ARGS := ((UNQUOTED_ARG | QUOTED_ARG) WHITESPACE+)+