MCPcopy Create free account
hub / github.com/Noumena-Network/code / recordWriteLineToScreenStats

Function recordWriteLineToScreenStats

src/ink/outputRenderStats.ts:183–223  ·  view source on GitHub ↗
(stats: {
  lineLength: number
  clusteredChars: number
  cacheHit: boolean
  usedPlainAsciiFastPath: boolean
  materializeDurationMs: number
  writeLineDurationMs: number
  writeLoopDurationMs: number
})

Source from the content-addressed store, hash-verified

181}
182
183export function recordWriteLineToScreenStats(stats: {
184 lineLength: number
185 clusteredChars: number
186 cacheHit: boolean
187 usedPlainAsciiFastPath: boolean
188 materializeDurationMs: number
189 writeLineDurationMs: number
190 writeLoopDurationMs: number
191}): void {
192 outputRenderStats.totalWriteLineCalls += 1
193 outputRenderStats.totalWriteLineChars += stats.lineLength
194 outputRenderStats.totalClusteredChars += stats.clusteredChars
195 if (stats.cacheHit) {
196 outputRenderStats.lineCacheHits += 1
197 } else {
198 outputRenderStats.lineCacheMisses += 1
199 if (stats.usedPlainAsciiFastPath) {
200 outputRenderStats.plainAsciiMaterializeCount += 1
201 } else {
202 outputRenderStats.tokenizedMaterializeCount += 1
203 }
204 }
205 outputRenderStats.totalMaterializeDurationMs += stats.materializeDurationMs
206 outputRenderStats.maxMaterializeDurationMs = Math.max(
207 outputRenderStats.maxMaterializeDurationMs,
208 stats.materializeDurationMs,
209 )
210 outputRenderStats.lastMaterializeDurationMs = stats.materializeDurationMs
211 outputRenderStats.totalWriteLineDurationMs += stats.writeLineDurationMs
212 outputRenderStats.maxWriteLineDurationMs = Math.max(
213 outputRenderStats.maxWriteLineDurationMs,
214 stats.writeLineDurationMs,
215 )
216 outputRenderStats.lastWriteLineDurationMs = stats.writeLineDurationMs
217 outputRenderStats.totalWriteLoopDurationMs += stats.writeLoopDurationMs
218 outputRenderStats.maxWriteLoopDurationMs = Math.max(
219 outputRenderStats.maxWriteLoopDurationMs,
220 stats.writeLoopDurationMs,
221 )
222 outputRenderStats.lastWriteLoopDurationMs = stats.writeLoopDurationMs
223}
224
225export function getOutputRenderStatsSnapshot(): OutputRenderStatsSnapshot {
226 return { ...outputRenderStats }

Callers 1

writeLineToScreenFunction · 0.85

Calls 1

maxMethod · 0.80

Tested by

no test coverage detected