/** * Creates a linked list of TokenSeps from the comma separated string str. * * @param str The string specifying delimiter strings. * @return A list of TokenSeps. */ private static TokenSep parseDelimString(String str) { TokenSep first = null; TokenSep p = null; int idx0, idx1, length; StringBuilder val = new StringBuilder(); char c; length = str.length(); for (idx0 = 0; idx0 < length; ) { for (idx1 = idx0; idx1 < length; idx1++) { c = str.charAt(idx1); if (c == '\\') { idx1++; if (idx1 < length) val.append(str.charAt(idx1)); } else if (c == ',') { break; } else { val.append(c); } } idx1 = Math.min(idx1, length); if (idx1 > idx0) { p = new TokenSep(val.toString()); val = new StringBuilder(); p.setNext(first); first = p; } idx0 = idx1 + 1; } return first; }