in lib/src/inline_parser.dart [1107:1138]
String? _parseReferenceLinkLabel(InlineParser parser) {
// Walk past the opening `[`.
parser.advanceBy(1);
if (parser.isDone) return null;
var buffer = StringBuffer();
while (true) {
var char = parser.charAt(parser.pos);
if (char == $backslash) {
parser.advanceBy(1);
var next = parser.charAt(parser.pos);
if (next != $backslash && next != $rbracket) {
buffer.writeCharCode(char);
}
buffer.writeCharCode(next);
} else if (char == $rbracket) {
break;
} else {
buffer.writeCharCode(char);
}
parser.advanceBy(1);
if (parser.isDone) return null;
// TODO(srawlins): only check 999 characters, for performance reasons?
}
var label = buffer.toString();
// A link label must contain at least one non-whitespace character.
if (_entirelyWhitespacePattern.hasMatch(label)) return null;
return label;
}