Zig 0.17.0-dev (Split by item)
This is an example of documentation generated by
ZigDoc , an alternative to Zig's built-in
Auto Doc feature. See also
examples in other modes/formats . The project being documented here (as the example) is the Zig library itself.
Zig › std/ › zig/ › llvm/ › Builder.zig › SyncScope
SyncScope
Builder.SyncScope
pub const SyncScope = enum (u1 )
File
Code
pub const SyncScope = enum (u1 ) {
singlethread ,
system ,
pub fn format (sync_scope : SyncScope , w : *Writer ) Writer .Error !void {
return Prefixed .format (.{ .sync_scope = sync_scope , .prefix = "" }, w );
}
pub const Prefixed = struct {
sync_scope : SyncScope ,
prefix : []const u8 ,
pub fn format (p : Prefixed , w : *Writer ) Writer .Error !void {
switch (p .sync_scope ) {
.system => return ,
.singlethread => {
var vecs : [2 ][]const u8 = .{ p .prefix , "syncscope(\"singlethread\")" };
return w .writeVecAll (&vecs );
},
}
}
};
pub fn fmt (sync_scope : SyncScope , prefix : []const u8 ) Prefixed {
return .{ .sync_scope = sync_scope , .prefix = prefix };
}
}