//! Process definition and general utilities surrounding them

use super::{capabilities::Capabilities, FileAccessTypes, Priority};

/// Process Identification
#[derive(Clone, PartialEq, Debug)]

pub struct PID(pub usize);

/// Temporary till integration of capabilities
#[derive(Clone, Debug)]
pub struct ProcessPermissions {
    pub file_access: FileAccessTypes,
}

/// A process
#[derive(Clone, Debug)]
pub struct Process {
    /// Internal PID
    pub id: PID,
    ///
    pub capabilities: Capabilities,
    /// A process's priority
    pub priority: Priority,
}

impl Process {}
