Struct std::fs::Permissions
1.0.0 · source · [−]pub struct Permissions(_);Expand description
Representation of the various permissions on a file.
This module only currently provides one bit of information,
Permissions::readonly, which is exposed on all currently supported
platforms. Unix-specific functionality, such as mode bits, is available
through the PermissionsExt trait.
Implementations
impl Permissions
source
impl Permissions
sourcepub fn set_readonly(&mut self, readonly: bool)
source
pub fn set_readonly(&mut self, readonly: bool)
sourceModifies 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 set_permissions function.
Examples
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);
// filesystem doesn't change
assert_eq!(false, metadata.permissions().readonly());
// just this particular `permissions`.
assert_eq!(true, permissions.readonly());
Ok(())
}RunTrait Implementations
impl Clone for Permissions
source
impl Clone for Permissions
sourcefn clone(&self) -> Permissions
source
fn clone(&self) -> Permissions
sourceReturns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
source
fn clone_from(&mut self, source: &Self)
sourcePerforms copy-assignment from source. Read more
impl Debug for Permissions
source
impl Debug for Permissions
sourceimpl PartialEq<Permissions> for Permissions
source
impl PartialEq<Permissions> for Permissions
sourcefn eq(&self, other: &Permissions) -> bool
source
fn eq(&self, other: &Permissions) -> bool
sourceThis method tests for self and other values to be equal, and is used
by ==. Read more
fn ne(&self, other: &Permissions) -> bool
source
fn ne(&self, other: &Permissions) -> bool
sourceThis method tests for !=.
impl PermissionsExt for Permissions
1.1.0 · source Available on Unix only.
impl PermissionsExt for Permissions
1.1.0 · sourcefn mode(&self) -> u32
source
fn mode(&self) -> u32
sourceReturns the underlying raw st_mode bits that contain the standard
Unix permissions for this file. Read more
fn set_mode(&mut self, mode: u32)
source
fn set_mode(&mut self, mode: u32)
sourceSets the underlying raw bits for this set of permissions. Read more
fn from_mode(mode: u32) -> Permissions
source
fn from_mode(mode: u32) -> Permissions
sourceCreates a new instance of Permissions from the given set of Unix
permission bits. Read more
impl Eq for Permissions
sourceimpl StructuralEq for Permissions
sourceimpl StructuralPartialEq for Permissions
sourceAuto Trait Implementations
impl RefUnwindSafe for Permissions
impl Send for Permissions
impl Sync for Permissions
impl Unpin for Permissions
impl UnwindSafe for Permissions
Blanket Implementations
impl<T> BorrowMut<T> for T where
T: ?Sized,
source
impl<T> BorrowMut<T> for T where
T: ?Sized,
sourcefn borrow_mut(&mut self) -> &mut T
const: unstable · source
fn borrow_mut(&mut self) -> &mut T
const: unstable · sourceMutably borrows from an owned value. Read more
impl<T> ToOwned for T where
T: Clone,
source
impl<T> ToOwned for T where
T: Clone,
sourcetype Owned = T
type Owned = T
The resulting type after obtaining ownership.
fn clone_into(&self, target: &mut T)
source
fn clone_into(&self, target: &mut T)
sourceUses borrowed data to replace owned data, usually by cloning. Read more