MCPcopy Create free account
hub / github.com/adny-code/fastgrind / _stack_panel_script

Function _stack_panel_script

tools/fastgrind.py:206–346  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

204
205
206def _stack_panel_script() -> str:
207 return """
208 function formatStackNumber(value) {
209 const numericValue = Number(value);
210 if (!Number.isFinite(numericValue)) {
211 return '0';
212 }
213 return numericValue.toLocaleString(undefined, { maximumFractionDigits: 2 });
214 }
215
216 function formatStackPercent(value) {
217 const numericValue = Number(value);
218 if (!Number.isFinite(numericValue)) {
219 return '0.0%';
220 }
221 return `${numericValue.toFixed(1)}%`;
222 }
223
224 function stackNodeLabel(node) {
225 return node.display_name || node.canonical_name || '(unknown)';
226 }
227
228 function stackNodeCanonical(node) {
229 return node.canonical_name || node.display_name || '(unknown)';
230 }
231
232 function stackNodeSummary(node) {
233 return `share ${formatStackPercent(node.share_percent)} | value ${formatStackNumber(node.value)} | malloc ${formatStackNumber(node.malloc)} | free ${formatStackNumber(node.free)}`;
234 }
235
236 function updateStackSelected(selectedId, node) {
237 const selected = document.getElementById(selectedId);
238 if (!selected) {
239 return;
240 }
241 selected.textContent = stackNodeCanonical(node);
242 }
243
244 function buildStackRow(node, selectedId) {
245 const row = document.createElement('div');
246 row.className = 'stack-row';
247
248 const name = document.createElement('span');
249 name.className = 'stack-name';
250 name.textContent = stackNodeLabel(node);
251 name.title = stackNodeCanonical(node);
252
253 const share = document.createElement('span');
254 share.className = 'stack-share';
255 share.textContent = formatStackPercent(node.share_percent);
256
257 const value = document.createElement('span');
258 value.className = 'stack-value';
259 value.textContent = formatStackNumber(node.value);
260
261 const malloc = document.createElement('span');
262 malloc.className = 'stack-metric';
263 malloc.textContent = formatStackNumber(node.malloc);

Callers 1

generate_snapshot_htmlFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected