aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com> 2023-04-14 03:12:40 -0700
committerGravatar Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com> 2023-04-14 03:12:40 -0700
commitba057e50c360623b6aa7af39e5e74f26a5cd99e7 (patch)
tree942d7cd81319cb4c9cd1615dc33a0adf9c512dc5
parent1e6dcef0c5e81896141b0518342985bdf3ba4edd (diff)
downloadbun-ba057e50c360623b6aa7af39e5e74f26a5cd99e7.tar.gz
bun-ba057e50c360623b6aa7af39e5e74f26a5cd99e7.tar.zst
bun-ba057e50c360623b6aa7af39e5e74f26a5cd99e7.zip
Update bun.zig
-rw-r--r--src/bun.zig12
1 files changed, 12 insertions, 0 deletions
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 {