private String escape(String line) { final StringBuilder builder = new StringBuilder(); LineStatus.Ext buf = new LineStatus.Ext(); boolean escaping = false; int prev = 0; for (int offset = 0; offset < line.length(); ) { int cp = line.codePointAt(offset); buf.accept(cp); if (buf.isEscaping()) { builder.append("["); escaping = true; } else { if (prev != buf.getQuote()) { switch (prev) { case 0: builder.append("<").appendCodePoint(buf.getQuote()).append(">"); break; default: break; prev = buf.getQuote(); } else { builder.appendCodePoint(cp);
public LineStatus.Ext insertEscaped(int... codePoints) { LineStatus.Ext status = new LineStatus.Ext(); Helper.consumeTo(toArray(), status); status.buffer.clear(); switch (status.getQuote()) { case '"': switch (cp) { case '\\': case '"': if (!status.isEscaping()) { status.accept('\\'); status.accept(cp); break; default: if (status.isEscaping()) { status.accept(cp); switch (cp) { case '\'': status.accept('\''); status.accept('\\'); status.accept(cp); status.accept('\''); break; default: status.accept(cp); break;
public LineStatus.Ext insertEscaped(int... codePoints) { LineStatus.Ext status = new LineStatus.Ext(); Helper.consumeTo(toArray(), status); status.buffer.clear(); switch (status.getQuote()) { case '"': switch (cp) { case '\\': case '"': if (!status.isEscaping()) { status.accept('\\'); status.accept(cp); break; default: if (status.isEscaping()) { status.accept(cp); switch (cp) { case '\'': status.accept('\''); status.accept('\\'); status.accept(cp); status.accept('\''); break; default: status.accept(cp); break;
switch (toto.getQuote()) { case '"': if (toto.isEscaping()) { toto.accept('"'); toto.accept(' '); toto.accept('\''); toto.accept(' '); break; case 0: if (toto.isEscaping()) { toto.accept(' ');
switch (toto.getQuote()) { case '"': if (toto.isEscaping()) { toto.accept('"'); toto.accept(' '); toto.accept('\''); toto.accept(' '); break; case 0: if (toto.isEscaping()) { toto.accept(' ');
private String escape(String line) { final StringBuilder builder = new StringBuilder(); LineStatus.Ext buf = new LineStatus.Ext(); boolean escaping = false; int prev = 0; for (int offset = 0; offset < line.length(); ) { int cp = line.codePointAt(offset); buf.accept(cp); if (buf.isEscaping()) { builder.append("["); escaping = true; } else { if (prev != buf.getQuote()) { switch (prev) { case 0: builder.append("<").appendCodePoint(buf.getQuote()).append(">"); break; default: break; prev = buf.getQuote(); } else { builder.appendCodePoint(cp);
private String escape(String line) { final StringBuilder builder = new StringBuilder(); LineStatus.Ext buf = new LineStatus.Ext(); boolean escaping = false; int prev = 0; for (int offset = 0; offset < line.length(); ) { int cp = line.codePointAt(offset); buf.accept(cp); if (buf.isEscaping()) { builder.append("["); escaping = true; } else { if (prev != buf.getQuote()) { switch (prev) { case 0: builder.append("<").appendCodePoint(buf.getQuote()).append(">"); break; default: break; prev = buf.getQuote(); } else { builder.appendCodePoint(cp);