take method
Implementation
String take(int length) {
if (length < 0) {
return "";
}
if (!canTake(length)) {
throw StateError("Not enough characters in queue to take $length");
}
StringBuffer sb = StringBuffer();
while (sb.length < length && queue.isNotEmpty) {
String piece = queue.first;
if (sb.length + piece.length < length) {
sb.write(removeFirst());
} else {
break;
}
}
return sb.toString();
}