isComplete property
bool
get
isComplete
Implementation
bool get isComplete {
final s = _buffer.toString();
var depth = 0;
var inStr = false;
var esc = false;
for (var i = 0; i < s.length; i++) {
final c = s[i];
if (esc) {
esc = false;
continue;
}
if (inStr) {
if (c == r'\') esc = true;
if (c == '"') inStr = false;
continue;
}
if (c == '"') {
inStr = true;
continue;
}
if (c == '{') depth++;
if (c == '}') depth--;
}
return depth == 0 && !inStr;
}