Struct std::fs::Permissions
[−]
[src]
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.
Methods
impl Permissions
fn readonly(&self) -> bool
Returns whether these permissions describe a readonly file.
Examples
fn main() { use std::fs::File; fn foo() -> std::io::Result<()> { let mut f = try!(File::create("foo.txt")); let metadata = try!(f.metadata()); assert_eq!(false, metadata.permissions().readonly()); Ok(()) } }use std::fs::File; let mut f = try!(File::create("foo.txt")); let metadata = try!(f.metadata()); assert_eq!(false, metadata.permissions().readonly());
fn set_readonly(&mut self, readonly: bool)
Modifies the readonly flag for this set of permissions.
This operation does not modify the filesystem. To modify the
filesystem use the fs::set_permissions
function.
Examples
fn main() { use std::fs::File; fn foo() -> std::io::Result<()> { let f = try!(File::create("foo.txt")); let metadata = try!(f.metadata()); let mut permissions = metadata.permissions(); permissions.set_readonly(true); // filesystem doesn't change assert_eq!(false, metadata.permissions().readonly()); // just this particular `permissions`. assert_eq!(true, permissions.readonly()); Ok(()) } }use std::fs::File; let f = try!(File::create("foo.txt")); let metadata = try!(f.metadata()); let mut permissions = metadata.permissions(); permissions.set_readonly(true); // filesystem doesn't change assert_eq!(false, metadata.permissions().readonly()); // just this particular `permissions`. assert_eq!(true, permissions.readonly());