use crate::paths::{PeaceAppDir, PeaceDir, WorkspaceDir};
#[derive(Clone, Debug, PartialEq, Eq)]
pub struct WorkspaceDirs {
workspace_dir: WorkspaceDir,
peace_dir: PeaceDir,
peace_app_dir: PeaceAppDir,
}
impl WorkspaceDirs {
pub fn new(
workspace_dir: WorkspaceDir,
peace_dir: PeaceDir,
peace_app_dir: PeaceAppDir,
) -> Self {
Self {
workspace_dir,
peace_dir,
peace_app_dir,
}
}
pub fn into_inner(self) -> (WorkspaceDir, PeaceDir, PeaceAppDir) {
let Self {
workspace_dir,
peace_dir,
peace_app_dir,
} = self;
(workspace_dir, peace_dir, peace_app_dir)
}
pub fn workspace_dir(&self) -> &WorkspaceDir {
&self.workspace_dir
}
pub fn peace_dir(&self) -> &PeaceDir {
&self.peace_dir
}
pub fn peace_app_dir(&self) -> &PeaceAppDir {
&self.peace_app_dir
}
}