tiny.memtrace.CensusCapacity
Defined in tiny.memtrace.
API (13)
Actions
Public operations.
Fields and members
Public fields and members.
categoriesjoined_label_bytesjoined_label_offsetlabel_byteslabel_offsetstorage_bytessummary_bytessummary_entriessummary_offsettable_bytestable_offsettable_slots
Source
Source: lib/memtrace/src/census/capacity.zig:18
zig
pub const Capacity = struct { categories: usize, table_slots: usize, table_bytes: usize, table_offset: usize, summary_entries: usize, summary_bytes: usize, summary_offset: usize, label_bytes: usize, label_offset: usize, joined_label_bytes: usize, joined_label_offset: usize, storage_bytes: usize, pub fn derive(limits: Limits) DeriveError!Capacity { if (limits.categories == 0) return error.CategoryCapacityTooSmall; if (limits.label_bytes == 0) return error.LabelStorageTooSmall; const doubled_categories = try multiplied(limits.categories, 2); const table_slots = std.math.ceilPowerOfTwo(usize, doubled_categories) catch return error.CapacityOverflow; const table = try placed(model.Slot, 0, table_slots); const summary = try placed(model.Entry, table.end, limits.categories); const label_offset = summary.end; const joined_label_offset = try added(label_offset, limits.label_bytes); const storage_bytes = try added(joined_label_offset, limits.joined_label_bytes); return .{ .categories = limits.categories, .table_slots = table_slots, .table_bytes = table.bytes, .table_offset = table.start, .summary_entries = limits.categories, .summary_bytes = summary.bytes, .summary_offset = summary.start, .label_bytes = limits.label_bytes, .label_offset = label_offset, .joined_label_bytes = limits.joined_label_bytes, .joined_label_offset = joined_label_offset, .storage_bytes = storage_bytes, }; }};Source: lib/memtrace/src/root.zig:71
zig
pub const CensusCapacity = census_mod.Capacity;Also reachable as
Audit
| Definitions | 2 |
|---|---|
| Public names | 4 |
| Members | 12 |
| Version | 26.7.0 |
| Revision | daab053ee433 |