debugLogBreakpoints static method
Print a visual view of breakpoints
for debugging purposes.
Implementation
static String debugLogBreakpoints(List<Breakpoint>? breakpoints) {
if (breakpoints == null || breakpoints.isEmpty) return '| Empty |';
List<Breakpoint> breakpointsHolder = List.from(breakpoints);
breakpointsHolder.sort(breakpointComparator);
var stringBuffer = StringBuffer();
stringBuffer.write('| ');
for (int i = 0; i < breakpointsHolder.length; i++) {
// Convenience variable.
Breakpoint breakpoint = breakpointsHolder[i];
stringBuffer.write(breakpoint.start);
stringBuffer.write(' ----- ');
List<dynamic> attributes = [];
String? name = breakpoint.name;
if (name != null) attributes.add(name);
if (attributes.isNotEmpty) {
stringBuffer.write('(');
for (int i = 0; i < attributes.length; i++) {
stringBuffer.write(attributes[i]);
if (i != attributes.length - 1) stringBuffer.write(',');
}
stringBuffer.write(')');
stringBuffer.write(' ----- ');
}
if (breakpoint.end == double.infinity) {
stringBuffer.write('∞');
} else {
stringBuffer.write(breakpoint.end);
}
if (i != breakpoints.length - 1) {
stringBuffer.write(' ----- ');
}
}
stringBuffer.write(' |');
debugPrint(stringBuffer.toString());
return stringBuffer.toString();
}