diff options
Diffstat (limited to 'src/launcher/profile.rs')
| -rw-r--r-- | src/launcher/profile.rs | 33 |
1 files changed, 0 insertions, 33 deletions
diff --git a/src/launcher/profile.rs b/src/launcher/profile.rs deleted file mode 100644 index 104faef..0000000 --- a/src/launcher/profile.rs +++ /dev/null @@ -1,33 +0,0 @@ -use std::path::{Path, PathBuf}; -use serde::{Deserialize, Serialize}; - -#[derive(Deserialize, Serialize, Debug, Clone)] -pub struct Instance { - pub name: String, - pub path: Option<PathBuf> // relative to launcher home (or absolute) -} - -#[derive(Deserialize, Serialize, Debug, Clone)] -pub struct Profile { - pub version_id: String, - pub java_runtime: Option<String>, - pub instance: String // ugly that this is a string instead of reference to an Instance but whatever I'm lazy -} - -impl Instance { - fn instance_dir(home: impl AsRef<Path>, name: impl AsRef<Path>) -> PathBuf { - let mut out = home.as_ref().join("instances"); - out.push(name); - out - } - - pub fn get_path(&self, home: impl AsRef<Path>) -> PathBuf { - self.path.as_ref().map(|p| { - if p.is_relative() { - Self::instance_dir(home.as_ref(), p) - } else { - p.to_owned() - } - }).unwrap_or_else(|| Self::instance_dir(home, &self.name)) - } -}
\ No newline at end of file |
