Zig 0.17.0-dev (Split by item)

Shortcut keys
?
Show these tips
S
Focus search field
Esc
Clear focus & close tips
U
Jump to source code
↑
Move up in search results
↓
Move down in search results
↵
Go to active search result
This is an example of documentation generated by ZigDoc, an alternative to Zig's built-in Auto Doc feature. See also examples in other modes/formats. The project being documented here (as the example) is the Zig standard library. Public Function

ensureTotalCapacity

Public Function
std.array_list.AlignedManaged.ensureTotalCapacity
pub fn ensureTotalCapacity(self: *Self, new_capacity: usize) Allocator.Error!void

If the current capacity is less than new_capacity, this function will modify the array so that it can hold at least new_capacity items. Invalidates element pointers if additional memory is needed.

Params

  • self: *Self
  • new_capacity: usize

File

array_list.zig:449
449
450
451
452
453
454
455
456
457
458
459
460
        pub fn ensureTotalCapacity(self: *Self, new_capacity: usize) Allocator.Error!void {
            if (@sizeOf(T) == 0) {
                self.capacity = math.maxInt(usize);
                return;
            }

            // Protects growing unnecessarily since better_capacity will be larger.
            if (self.capacity >= new_capacity) return;

            const better_capacity = Aligned(T, alignment).growCapacity(new_capacity);
            return self.ensureTotalCapacityPrecise(better_capacity);
        }