getParts method
Implementation
@visibleForTesting
List<String> getParts(ParsedUnitResult parsed) {
final lines = parsed.content.split('\n');
final result = findImportBlockIndices(lines);
final startIndex = result.importEnd ?? 0;
final quote = RegExp(
"'|"
'"',
);
final parts = <String>[];
for (var i = startIndex; i < lines.length; i++) {
final trimmed = lines[i].trim();
if (trimmed.isEmpty) continue;
if (trimmed.startsWith('//')) continue;
if (!trimmed.startsWith('part')) break;
final split = trimmed.split(quote);
final partPath = split.length >= 2 ? split[1] : null;
if (partPath != null && partPath.isNotEmpty) {
parts.add(
fs.path.normalize(
fs.path.join(fs.path.dirname(parsed.path), partPath),
),
);
}
}
return parts;
}