enum ThreadLocal [src]
Fields
default = 0
generaldynamic = 1
localdynamic = 2
initialexec = 3
localexec = 4
Members
Source
pub const ThreadLocal = enum(u3) {
default = 0,
generaldynamic = 1,
localdynamic = 2,
initialexec = 3,
localexec = 4,
pub fn format(tl: ThreadLocal, w: *Writer) Writer.Error!void {
return Prefixed.format(.{ .thread_local = tl, .prefix = "" }, w);
}
pub const Prefixed = struct {
thread_local: ThreadLocal,
prefix: []const u8,
pub fn format(p: Prefixed, w: *Writer) Writer.Error!void {
switch (p.thread_local) {
.default => return,
.generaldynamic => {
var vecs: [2][]const u8 = .{ p.prefix, "thread_local" };
return w.writeVecAll(&vecs);
},
else => {
var vecs: [4][]const u8 = .{ p.prefix, "thread_local(", @tagName(p.thread_local), ")" };
return w.writeVecAll(&vecs);
},
}
}
};
pub fn fmt(tl: ThreadLocal, prefix: []const u8) Prefixed {
return .{ .thread_local = tl, .prefix = prefix };
}
}