DoxigAlpha

reinit

An empty value_list may be passed, in which case the values array becomes undefined.

Function parameters

Parameters

#
self:*Self
key_list:[]const K
value_list:[]const V

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 reinit(self: *Self, gpa: Allocator, key_list: []const K, value_list: []const V) Oom!void {
    try self.entries.resize(gpa, key_list.len);
    @memcpy(self.keys(), key_list);
    if (value_list.len == 0) {
        @memset(self.values(), undefined);
    } else {
        assert(key_list.len == value_list.len);
        @memcpy(self.values(), value_list);
    }
    try self.reIndex(gpa);
}