fn shrinkCapacity(self: *Self, allocator: Allocator, new_capacity: usize) void
Only shrinks capacity or retains current capacity. It may fail to reduce the capacity in which case the capacity will remain unchanged.
self: *Self,
allocator: Allocator,
new_capacity: usize,