1
Fork 0

std: Expose a mode accessor for Permissions on unix

Currently we have a `set_mode` mutator, so this just adds the pairing of a
`mode` accessor to read the value.

Closes #22738
This commit is contained in:
Alex Crichton 2015-02-23 15:26:18 -08:00
parent 91a5a1ab4a
commit 537d6946e4
3 changed files with 8 additions and 0 deletions

View file

@ -325,6 +325,10 @@ impl FromInner<fs_imp::FilePermissions> for Permissions {
}
}
impl AsInner<fs_imp::FilePermissions> for Permissions {
fn as_inner(&self) -> &fs_imp::FilePermissions { &self.0 }
}
impl Iterator for ReadDir {
type Item = io::Result<DirEntry>;

View file

@ -173,10 +173,13 @@ impl OsStrExt for OsStr {
// Unix-specific extensions to `Permissions`
pub trait PermissionsExt {
fn mode(&self) -> i32;
fn set_mode(&mut self, mode: i32);
}
impl PermissionsExt for Permissions {
fn mode(&self) -> i32 { self.as_inner().mode() }
fn set_mode(&mut self, mode: i32) {
*self = FromInner::from_inner(FromInner::from_inner(mode));
}

View file

@ -86,6 +86,7 @@ impl FilePermissions {
self.mode |= 0o222;
}
}
pub fn mode(&self) -> i32 { self.mode as i32 }
}
impl FromInner<i32> for FilePermissions {