parseString static method
List<XmlComment> ?
parseString(
- String string, {
- bool parseCharacterEntities = true,
- bool trimWhitespace = true,
- int start = 0,
- int? stop,
override
Parses a string and returns all found XML comments in a list.
Returns null
if no comments were found.
Implementation
static List<XmlComment>? parseString(
String string, {
bool parseCharacterEntities = true,
bool trimWhitespace = true,
int start = 0,
int? stop,
}) {
assert(start >= 0);
assert(stop == null || stop >= start);
if (trimWhitespace) string = string.trimWhitespace();
final matches = Delimiters.comment.allMatches(string).toList();
if (matches.isEmpty) return null;
final comments = <XmlComment>[];
for (var i = start; i < matches.length; i++) {
var comment = matches[i].namedGroup('value')!;
if (parseCharacterEntities) {
comment = HtmlCharacterEntities.decode(comment);
}
comments.add(XmlComment(comment));
if (stop != null && i > stop) break;
}
return comments;
}