string GetString() {
var escape = false;
var r = String.Empty;
var quoted = false;
var current = Current();
if (current == '\"') {
quoted = true;
Forward();
}
while (true) {
current = Current();
if (current == default(char))
break;
if (!quoted && braces.Contains(current))
break;
if (!escape && quoted && current == '\"')
break;
if (escape) {
escape = false;
if (current == '\"')
r += "\"";
else if (current == '\\')
r += "\\";
} else if (current == '\\')
escape = true;
else
r += current;
Forward();
}
if (quoted)
Forward();
return r;
}