From ba057e50c360623b6aa7af39e5e74f26a5cd99e7 Mon Sep 17 00:00:00 2001 From: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com> Date: Fri, 14 Apr 2023 03:12:40 -0700 Subject: Update bun.zig --- src/bun.zig | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'src') diff --git a/src/bun.zig b/src/bun.zig index f5231b72e..9854f7264 100644 --- a/src/bun.zig +++ b/src/bun.zig @@ -875,6 +875,18 @@ pub fn enumMap(comptime T: type, comptime args: anytype) (fn (T) []const u8) { return Map.get; } +pub fn ComptimeEnumMap(comptime T: type) type { + comptime { + var entries: [std.enums.values(T).len].{ string, T } = undefined; + var i: usize = 0; + inline for (std.enums.values(T)) |value| { + entries[i] = .{ .@"0" = @tagName(value), .@"1" = value }; + i += 1; + } + return ComptimeStringMap(T, entries); + } +} + /// Write 0's for every byte in Type /// Ignores default struct values. pub fn zero(comptime Type: type) Type { -- cgit v1.2.3