tiny.pretty.FlatFitWriter
Defined in tiny.pretty.
API (4)
Actions
Public operations.
Fields and members
Public fields and members.
Source
Source: lib/pretty/core/src/render.zig:15
zig
pub const FlatFitWriter = struct { writer: std.Io.Writer, limit: usize, count: usize = 0, pub fn init(limit: usize) FlatFitWriter { return .{ .writer = .{ .vtable = &.{ .drain = drain }, .buffer = &.{}, }, .limit = limit, }; } fn drain( writer: *std.Io.Writer, data: []const []const u8, splat: usize, ) std.Io.Writer.Error!usize { const self: *FlatFitWriter = @alignCast(@fieldParentPtr("writer", writer)); try self.accept(writer.buffered()); writer.end = 0; var consumed: usize = 0; for (data[0 .. data.len - 1]) |bytes| { try self.accept(bytes); consumed += bytes.len; } const pattern = data[data.len - 1]; for (0..splat) |_| { try self.accept(pattern); consumed += pattern.len; } return consumed; } fn accept(self: *FlatFitWriter, bytes: []const u8) std.Io.Writer.Error!void { var budget = self.limit -| self.count; if (!position.consumeFlatBytes(bytes, &budget)) return error.WriteFailed; self.count = self.limit - budget; }};Source: lib/pretty/core/src/root.zig:123
zig
pub const FlatFitWriter = render.FlatFitWriter;Audit
| Definitions | 2 |
|---|---|
| Public names | 2 |
| Members | 3 |
| Version | 26.7.0 |
| Revision | daab053ee433 |