parse method
Implementation
@override
Node parse(BlockParser parser) {
final lines = <String>[];
late HeaderLevel headerLevel;
while (!parser.isDone) {
final match = setextPattern.firstMatch(parser.current);
if (match == null) {
// More text.
lines.add(parser.current);
parser.advance();
continue;
} else {
// The underline.
headerLevel =
(match[1]![0] == '=') ? HeaderLevel.header1 : HeaderLevel.header2;
parser.advance();
break;
}
}
final contents = UnparsedContent(lines.join('\n').trimRight());
return Header([contents], headerLevel);
}