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 standard library.
std › Build › Cache › Path › atomicFile Public Function atomicFile Doc Source Public Function std.Build.Cache.Path.atomicFile
pub fn atomicFile (
p : Path ,
io : Io ,
sub_path : []const u8 ,
options : Io .Dir .CreateFileAtomicOptions ,
buf : *[Io .Dir .max_path_bytes ]u8 ,
) !Io .File .Atomic Params p : Path io : Io sub_path : []const u8 options : Io .Dir .CreateFileAtomicOptions buf : *[Io .Dir .max_path_bytes ]u8 File Build/Cache/Path.zig: 106
106
107
108
109
110
111
112
113
114
115
116
117
118
119 pub fn atomicFile (
p : Path ,
io : Io ,
sub_path : []const u8 ,
options : Io .Dir .CreateFileAtomicOptions ,
buf : *[Io .Dir .max_path_bytes ]u8 ,
) !Io .File .Atomic {
const joined_path = if (p .sub_path .len == 0 ) sub_path else p : {
break :p std .mem .print (buf , "{s}" ++ Io .Dir .path .sep_str ++ "{s}" , .{
p .sub_path , sub_path ,
}) catch return error .NameTooLong ;
};
return p .root_dir .handle .createFileAtomic (io , joined_path , options );
}