fold-rs 0.1.0

Minimal, dependency-free resolver for standard base directories
Documentation
use crate::def::{Dir};

pub const CONFIG: Dir = Dir::new()
    .xdg_var("XDG_CONFIG_HOME")
    .xdg_rel(".config")
    .mac_rel("Library/Application Support")
    .win_var("APPDATA")
    .win_rel("AppData\\Roaming");

pub const RUNTIME: Dir = Dir::new().xdg_var("XDG_RUNTIME_DIR");
pub const DATA: Dir = Dir::new()
    .xdg_var("XDG_DATA_HOME")
    .xdg_rel(".local/share")
    .mac_rel("Library/Application Support")
    .win_var("APPDATA")
    .win_rel("AppData\\Roaming");

pub const CACHE: Dir = Dir::new()
    .xdg_var("XDG_CACHE_HOME")
    .xdg_rel(".cache")
    .mac_rel("Library/Caches")
    .win_var("LOCALAPPDATA")
    .win_rel("AppData\\Local");

pub const EXECUTABLE: Dir = Dir::new()
    .xdg_rel(".local/bin");

pub const STATE: Dir = Dir::new()
    .xdg_var("XDG_STATE_HOME")
    .xdg_rel(".local/state")
    .win_var("LOCALAPPDATA")
    .win_rel("AppData\\Local")
    .mac_rel("Library/Application Support");