aboutsummaryrefslogtreecommitdiff
path: root/src/paths.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/paths.rs')
-rw-r--r--src/paths.rs19
1 files changed, 19 insertions, 0 deletions
diff --git a/src/paths.rs b/src/paths.rs
new file mode 100644
index 0000000..f219dc4
--- /dev/null
+++ b/src/paths.rs
@@ -0,0 +1,19 @@
+//! Module to resolve application-specific paths.
+use super::APP_NAME;
+
+use std::path::PathBuf;
+
+/// Returns the path that should be used for the cache.
+pub fn cache_path() -> PathBuf {
+ let mut cache_path = dirs::cache_dir().unwrap();
+ cache_path.push(APP_NAME);
+ cache_path
+}
+
+/// Returns the path that should be used for the REPL history.
+pub fn history_path() -> Option<PathBuf> {
+ let mut config_path = dirs::config_dir()?;
+ config_path.push(APP_NAME);
+ config_path.push("history");
+ Some(config_path)
+}