DoxigAlpha

clearRetainingCapacity

Clears the map but retains the backing allocation for future use.

Function parameters

Parameters

#
self:*Self

Type definitions in this namespace

Types

#

An `ArrayHashMap` with default hash and equal functions.

Functions

#
AutoArrayHashMap
An `ArrayHashMap` with default hash and equal functions.
AutoArrayHashMapUnmanaged
An `ArrayHashMapUnmanaged` with default hash and equal functions.
StringArrayHashMap
An `ArrayHashMap` with strings as keys.
StringArrayHashMapUnmanaged
An `ArrayHashMapUnmanaged` with strings as keys.
ArrayHashMap
Deprecated in favor of `ArrayHashMapWithAllocator` (no code changes needed)
ArrayHashMapWithAllocator
A hash table of keys and values, each stored sequentially.
ArrayHashMapUnmanaged
A hash table of keys and values, each stored sequentially.

Source

Implementation

#
pub fn clearRetainingCapacity(self: *Self) void {
    self.pointer_stability.lock();
    defer self.pointer_stability.unlock();

    self.entries.len = 0;
    if (self.index_header) |header| {
        switch (header.capacityIndexType()) {
            .u8 => @memset(header.indexes(u8), Index(u8).empty),
            .u16 => @memset(header.indexes(u16), Index(u16).empty),
            .u32 => @memset(header.indexes(u32), Index(u32).empty),
        }
    }
}