in lib/src/scanner.dart [1231:1260]
Pair<int, String> _scanBlockScalarBreaks(int indent) {
var maxIndent = 0;
var breaks = StringBuffer();
while (true) {
while ((indent == 0 || _scanner.column < indent) &&
_scanner.peekChar() == SP) {
_scanner.readChar();
}
if (_scanner.column > maxIndent) maxIndent = _scanner.column;
// libyaml throws an error here if a tab character is detected, but the
// spec treats tabs like any other non-space character. See example 8.2:
// http://yaml.org/spec/1.2/spec.html#id2794311.
if (!_isBreak) break;
breaks.write(_readLine());
}
if (indent == 0) {
indent = maxIndent;
if (indent < _indent + 1) indent = _indent + 1;
// libyaml forces indent to be at least 1 here, but that doesn't seem to
// be supported by the spec.
}
return Pair(indent, breaks.toString());
}