commit 426c13dddfa9e19cf505fc26561d2a8637165d64 (tree)
parent 4789cc0249f8dd6b76471abda0c6eaa16d75bd69
Author: Andrew Kelley <andrew@ziglang.org>
Date: Thu, 2 Mar 2023 18:56:43 -0700
add doc comments to std.fs.File.default_mode
Diffstat:
1 file changed, 6 insertions(+), 0 deletions(-)
diff --git a/lib/std/fs/file.zig b/lib/std/fs/file.zig
@@ -48,6 +48,12 @@ pub const File = struct {
Unknown,
};
+ /// This is the default mode given to POSIX operating systems for creating
+ /// files. `0o666` is "-rw-rw-rw-" which is counter-intuitive at first,
+ /// since most people would expect "-rw-r--r--", for example, when using
+ /// the `touch` command, which would correspond to `0o644`. However, POSIX
+ /// libc implementations use `0o666` inside `fopen` and then rely on the
+ /// process-scoped "umask" setting to adjust this number for file creation.
pub const default_mode = switch (builtin.os.tag) {
.windows => 0,
.wasi => 0,