in lib/src/trace.dart [146:170]
static List<Frame> _parseVM(String trace) {
// Ignore [vmChainGap]. This matches the behavior of
// `Chain.parse().toTrace()`.
var lines = trace
.trim()
.replaceAll(vmChainGap, '')
.split('\n')
.where((line) => line.isNotEmpty);
if (lines.isEmpty) {
return [];
}
var frames = lines
.take(lines.length - 1)
.map((line) => Frame.parseVM(line))
.toList();
// TODO(nweiz): Remove this when issue 23614 is fixed.
if (!lines.last.endsWith('.da')) {
frames.add(Frame.parseVM(lines.last));
}
return frames;
}