tiny.smg.context.render
Defined in context.
API (1)
Actions
Public operations.
bounded: Serializes a complete response within the byte envelope, preserving omission facts.
Source
Source: tools/smg/src/context/render.zig
zig
const std = @import("std");const pretty = @import("pretty");const model = @import("root.zig").model;/// Serializes a complete response within the byte envelope, preserving omission facts.pub fn bounded(allocator: std.mem.Allocator, inspection: model.Report, bytes: u32) ![]u8 { std.debug.assert(bytes >= 1024); std.debug.assert(bytes <= model.output_bytes_max); var buffer: [model.output_bytes_max]u8 = undefined; var report = inspection; for (0..model.entries_max + model.targets_max + 1) |_| { var writer = std.Io.Writer.fixed(buffer[0..bytes]); var json = pretty.json.Writer.init(&writer, .minified); const encoded = if (json.write(report)) |_| success: { writer.writeByte('\n') catch break :success false; break :success true; } else |_| false; if (encoded) return allocator.dupe(u8, writer.buffered()); report.omissions.output = true; report.state = .budget_exhausted; if (report.entries.len != 0) { report.entries = report.entries[0 .. report.entries.len - 1]; report.omissions.entries +|= 1; } else if (report.targets.len != 0) { report.targets = report.targets[0 .. report.targets.len - 1]; report.omissions.targets += 1; } else return error.InspectionBudgetTooSmall; } unreachable;}Source: tools/smg/src/context/root.zig:9
zig
pub const render = @import("render.zig");Audit
| Definitions | 2 |
|---|---|
| Public names | 2 |
| Members | 0 |
| Version | 26.7.0 |
| Revision | daab053ee433 |