pub struct Permissions(_);
Representation of the various permissions on a file.
This module only currently provides one bit of information, readonly,
which is exposed on all currently supported platforms. Unix-specific
functionality, such as mode bits, is available through the
os::unix::PermissionsExt trait.
Returns whether these permissions describe a readonly (unwritable) file.
use std::fs::File;
fn main() -> std::io::Result<()> {
let mut f = File::create("foo.txt")?;
let metadata = f.metadata()?;
assert_eq!(false, metadata.permissions().readonly());
Ok(())
}Run
Modifies the readonly flag for this set of permissions. If the
readonly argument is true, using the resulting Permission will
update file permissions to forbid writing. Conversely, if it's false,
using the resulting Permission will update file permissions to allow
writing.
This operation does not modify the filesystem. To modify the
filesystem use the fs::set_permissions function.
use std::fs::File;
fn main() -> std::io::Result<()> {
let f = File::create("foo.txt")?;
let metadata = f.metadata()?;
let mut permissions = metadata.permissions();
permissions.set_readonly(true);
assert_eq!(false, metadata.permissions().readonly());
assert_eq!(true, permissions.readonly());
Ok(())
}Run
Performs copy-assignment from source. Read more
This method tests for self and other values to be equal, and is used by ==. Read more
This method tests for !=.
Formats the value using the given formatter. Read more
This is supported on Unix only.
Returns the underlying raw st_mode bits that contain the standard Unix permissions for this file. Read more
This is supported on Unix only.
Sets the underlying raw bits for this set of permissions. Read more
This is supported on Unix only.
Creates a new instance of Permissions from the given set of Unix permission bits. Read more