Struct libpna::Permission
source · pub struct Permission { /* private fields */ }Expand description
Permission struct represents an owner, group, and permissions for an entry.
Implementations§
source§impl Permission
impl Permission
sourcepub const fn new(
uid: u64,
uname: String,
gid: u64,
gname: String,
permission: u16,
) -> Self
pub const fn new( uid: u64, uname: String, gid: u64, gname: String, permission: u16, ) -> Self
sourcepub const fn uid(&self) -> u64
pub const fn uid(&self) -> u64
Returns the user ID associated with this permission.
§Examples
use libpna::Permission;
let perm = Permission::new(1000, "user1".into(), 100, "group1".into(), 0o644);
assert_eq!(perm.uid(), 1000);sourcepub fn uname(&self) -> &str
pub fn uname(&self) -> &str
Returns the user name associated with this permission.
§Examples
use libpna::Permission;
let perm = Permission::new(1000, "user1".into(), 100, "group1".into(), 0o644);
assert_eq!(perm.uname(), "user1");sourcepub const fn gid(&self) -> u64
pub const fn gid(&self) -> u64
Returns the group ID associated with this permission.
§Examples
use libpna::Permission;
let perm = Permission::new(1000, "user1".into(), 100, "group1".into(), 0o644);
assert_eq!(perm.gid(), 100);sourcepub fn gname(&self) -> &str
pub fn gname(&self) -> &str
Returns the group name associated with this permission.
§Examples
use libpna::Permission;
let perm = Permission::new(1000, "user1".into(), 100, "group1".into(), 0o644);
assert_eq!(perm.gname(), "group1");sourcepub const fn permissions(&self) -> u16
pub const fn permissions(&self) -> u16
Returns the permission bits associated with this permission.
§Examples
use libpna::Permission;
let perm = Permission::new(1000, "user1".into(), 100, "group1".into(), 0o644);
assert_eq!(perm.permissions(), 0o644);Trait Implementations§
source§impl Clone for Permission
impl Clone for Permission
source§fn clone(&self) -> Permission
fn clone(&self) -> Permission
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moresource§impl Debug for Permission
impl Debug for Permission
source§impl Hash for Permission
impl Hash for Permission
source§impl Ord for Permission
impl Ord for Permission
source§fn cmp(&self, other: &Permission) -> Ordering
fn cmp(&self, other: &Permission) -> Ordering
1.21.0 · source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the maximum of two values. Read more
source§impl PartialEq for Permission
impl PartialEq for Permission
source§impl PartialOrd for Permission
impl PartialOrd for Permission
impl Eq for Permission
impl StructuralPartialEq for Permission
Auto Trait Implementations§
impl Freeze for Permission
impl RefUnwindSafe for Permission
impl Send for Permission
impl Sync for Permission
impl Unpin for Permission
impl UnwindSafe for Permission
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit)