DVUI

get

returns the backing byte slice if we have one

Parameters

#
self:*Data
*Data
key:Key
Key
debug:SavedData.DebugInfo
SavedData.DebugInfo

Source

Implementation

#
pub fn get(self: *Data, key: Key, debug: SavedData.DebugInfo) ?[]u8 {
    const io = dvui.io;
    self.mutex.lockUncancelable(io);
    defer self.mutex.unlock(io);

    if (self.storage.getPtr(key)) |sd| {
        if (@TypeOf(debug) != void) {
            if (!debug.eq(sd.debug)) {
                std.debug.panic("Data.get: stored type {f} doesn't match asked for type {f}", .{ sd.debug, debug });
            }
        }
        return sd.data;
    } else {
        return null;
    }
}