DoxigAlpha

Function parameters

Parameters

#
self:*Self
ctx:Context

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 popContext(self: *Self, ctx: Context) ?KV {
    if (self.entries.len == 0) return null;
    self.pointer_stability.lock();
    defer self.pointer_stability.unlock();

    const item = self.entries.get(self.entries.len - 1);
    if (self.index_header) |header|
        self.removeFromIndexByIndex(self.entries.len - 1, if (store_hash) {} else ctx, header);
    self.entries.len -= 1;
    return .{
        .key = item.key,
        .value = item.value,
    };
}