Trait otter::prelude::unix::fs::PermissionsExt 1.1.0[−][src]
pub trait PermissionsExt { fn mode(&self) -> u32; fn set_mode(&mut self, mode: u32); fn from_mode(mode: u32) -> Self; }
This is supported on Unix only.
Expand description
Unix-specific extensions to fs::Permissions
.
Required methods
Returns the underlying raw st_mode
bits that contain the standard
Unix permissions for this file.
Examples
use std::fs::File; use std::os::unix::fs::PermissionsExt; fn main() -> std::io::Result<()> { let f = File::create("foo.txt")?; let metadata = f.metadata()?; let permissions = metadata.permissions(); println!("permissions: {:o}", permissions.mode()); Ok(()) }
Sets the underlying raw bits for this set of permissions.
Examples
use std::fs::File; use std::os::unix::fs::PermissionsExt; fn main() -> std::io::Result<()> { let f = File::create("foo.txt")?; let metadata = f.metadata()?; let mut permissions = metadata.permissions(); permissions.set_mode(0o644); // Read/write for owner and read for others. assert_eq!(permissions.mode(), 0o644); Ok(()) }
Creates a new instance of Permissions
from the given set of Unix
permission bits.
Examples
use std::fs::Permissions; use std::os::unix::fs::PermissionsExt; // Read/write for owner and read for others. let permissions = Permissions::from_mode(0o644); assert_eq!(permissions.mode(), 0o644);