toJson method
JSON shape: zero entries are omitted so sweep output stays compact.
Implementation
Map<String, Object> toJson() => {
'phases': {
for (final p in PdfPerfPhase.values)
if (phaseCalls[p.index] != 0)
p.name: {'us': phaseUs[p.index], 'calls': phaseCalls[p.index]},
},
'counts': {
for (final c in PdfPerfCount.values)
if (counts[c.index] != 0) c.name: counts[c.index],
},
'events': {
for (final e in PdfPerfEvent.values)
if (events[e.index] != 0) e.name: events[e.index],
},
};