extractDocComment static method
Extract doc comment from function source, joining multilines with spaces.
Implementation
static String? extractDocComment(String source, String functionName) {
final pattern = RegExp(
r'///\s*(.*?)\n\s*(?:void|String|int|bool|List|Map|Future)[^]*?\b' +
RegExp.escape(functionName) +
r'\s*\(',
multiLine: true,
);
final match = pattern.firstMatch(source);
if (match == null) return null;
final docLines = <String>[];
final lines = source.split('\n');
final startIndex = match.start;
for (var i = startIndex - 1; i >= 0 && i >= startIndex - 10; i--) {
final line = lines[i];
if (!line.trim().startsWith('///')) break;
docLines.insert(0, line.replaceFirst('///', '').trim());
}
if (docLines.isEmpty) return null;
return docLines.join(' ').replaceAll(r'\s+', ' ').trim();
}