pub const PosixBlock = struct slice: [:null]const ?[*:0]const u8pub fn deinit(block: PosixBlock, gpa: Allocator) voidpub fn isEmpty(block: PosixBlock) boolpub fn view(block: PosixBlock) View48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72pub const PosixBlock = struct {
slice: [:null]const ?[*:0]const u8,
pub const empty: PosixBlock = .{ .slice = &.{} };
pub fn deinit(block: PosixBlock, gpa: Allocator) void {
for (block.slice) |entry| gpa.free(mem.span(entry.?));
gpa.free(block.slice);
}
pub fn isEmpty(block: PosixBlock) bool {
return block.slice.len == 0;
}
pub const View = struct {
slice: []const [*:0]const u8,
pub fn isEmpty(v: View) bool {
return v.slice.len == 0;
}
};
pub fn view(block: PosixBlock) View {
return .{ .slice = @ptrCast(block.slice) };
}
}