blob: 3d8274ecc7ff68a4d30ff8410e4c651f0f1781e0 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
extern crate dirs_sys;
use std::path::PathBuf;
pub fn home_dir() -> Option<PathBuf> { dirs_sys::home_dir() }
pub fn cache_dir() -> Option<PathBuf> { home_dir().map(|h| h.join("Library/Caches")) }
pub fn config_dir() -> Option<PathBuf> { home_dir().map(|h| h.join("Library/Application Support")) }
pub fn data_dir() -> Option<PathBuf> { home_dir().map(|h| h.join("Library/Application Support")) }
pub fn data_local_dir() -> Option<PathBuf> { data_dir() }
pub fn preference_dir() -> Option<PathBuf> { home_dir().map(|h| h.join("Library/Preferences")) }
pub fn executable_dir() -> Option<PathBuf> { None }
pub fn runtime_dir() -> Option<PathBuf> { None }
pub fn state_dir() -> Option<PathBuf> { None }
pub fn audio_dir() -> Option<PathBuf> { home_dir().map(|h| h.join("Music")) }
pub fn desktop_dir() -> Option<PathBuf> { home_dir().map(|h| h.join("Desktop")) }
pub fn document_dir() -> Option<PathBuf> { home_dir().map(|h| h.join("Documents")) }
pub fn download_dir() -> Option<PathBuf> { home_dir().map(|h| h.join("Downloads")) }
pub fn font_dir() -> Option<PathBuf> { home_dir().map(|h| h.join("Library/Fonts")) }
pub fn picture_dir() -> Option<PathBuf> { home_dir().map(|h| h.join("Pictures")) }
pub fn public_dir() -> Option<PathBuf> { home_dir().map(|h| h.join("Public")) }
pub fn template_dir() -> Option<PathBuf> { None }
pub fn video_dir() -> Option<PathBuf> { home_dir().map(|h| h.join("Movies")) }
|