# Includes ## Arrays - SlotMap - KeyedSlotMap - FixedSlotMap - FixedArrayList - RingBuffer - Handle(T) **Generational** ## Misc - log - ansi (colors etc) - TypeID # Examples ## KeyedSlotMap ```zig // --- SHADER MAP --- var shaders: KeyedSlotMap(ShaderID, GPUShader) = .init(alloc); defer shaders.deinit(); // --- NEW SHADER --- const shader_handle = try shaders.put(.pbr, .{ .raw = undefined }); defer shaders.remove(shader_handle); ``` ## TypeID ```zig const Player = struct {}; std.debug.print("TypeID(Player): {}\n", .{TypeID(Player)}); ``` ```bash Output: TypeID(Player): 2462284566368800629 ``` ## Logs ```zig log.warn("...", .{}); log.err("...", .{}); log.info("...", .{}); log.debug("...", .{}); log.trace("...", .{}); log.fatal("...", .{}); ``` ## NicePrint ### Styles - default - rounded - pipe - custom ### Example ```zig // --- PRINT --- if (log.print(.debug, "DEVICE INFO", ansi.bold ++ ansi.red)) |a| { defer a.end(); // --- VALUES --- a.write("device -> {s}", .{"GTX"}); a.write("vendor -> {s}", .{"Nvidia"}); // --- SECTION --- if (a.section(.err, "MEMORY", ansi.green)) |b| { defer b.end(); b.write("VRAM -> {}GB", .{24}); } } ``` ### Output ```text ┏━ DEVICE INFO ┃ device -> GTX ┃ vendor -> Nvidia ┃ ┏━ MEMORY ┃ ┃ VRAM -> 24GB ┃ ┗━ ┗━ ``` # TODO [ ] Lear how to properly structure markdown 🥀️ hook-test