Struct tauri::path::PathResolver
source · pub struct PathResolver<R: Runtime>(/* private fields */);
Expand description
The path resolver is a helper class for general and application-specific path APIs.
Implementations§
source§impl<R: Runtime> PathResolver<R>
impl<R: Runtime> PathResolver<R>
sourcepub fn audio_dir(&self) -> Result<PathBuf>
pub fn audio_dir(&self) -> Result<PathBuf>
Returns the path to the user’s audio directory.
§Platform-specific
- Linux: Resolves to
xdg-user-dirs
’XDG_MUSIC_DIR
. - macOS: Resolves to
$HOME/Music
. - Windows: Resolves to
{FOLDERID_Music}
.
sourcepub fn cache_dir(&self) -> Result<PathBuf>
pub fn cache_dir(&self) -> Result<PathBuf>
Returns the path to the user’s cache directory.
§Platform-specific
- Linux: Resolves to
$XDG_CACHE_HOME
or$HOME/.cache
. - macOS: Resolves to
$HOME/Library/Caches
. - Windows: Resolves to
{FOLDERID_LocalAppData}
.
sourcepub fn config_dir(&self) -> Result<PathBuf>
pub fn config_dir(&self) -> Result<PathBuf>
Returns the path to the user’s config directory.
§Platform-specific
- Linux: Resolves to
$XDG_CONFIG_HOME
or$HOME/.config
. - macOS: Resolves to
$HOME/Library/Application Support
. - Windows: Resolves to
{FOLDERID_RoamingAppData}
.
sourcepub fn data_dir(&self) -> Result<PathBuf>
pub fn data_dir(&self) -> Result<PathBuf>
Returns the path to the user’s data directory.
§Platform-specific
- Linux: Resolves to
$XDG_DATA_HOME
or$HOME/.local/share
. - macOS: Resolves to
$HOME/Library/Application Support
. - Windows: Resolves to
{FOLDERID_RoamingAppData}
.
sourcepub fn local_data_dir(&self) -> Result<PathBuf>
pub fn local_data_dir(&self) -> Result<PathBuf>
Returns the path to the user’s local data directory.
§Platform-specific
- Linux: Resolves to
$XDG_DATA_HOME
or$HOME/.local/share
. - macOS: Resolves to
$HOME/Library/Application Support
. - Windows: Resolves to
{FOLDERID_LocalAppData}
.
sourcepub fn desktop_dir(&self) -> Result<PathBuf>
pub fn desktop_dir(&self) -> Result<PathBuf>
Returns the path to the user’s desktop directory.
§Platform-specific
- Linux: Resolves to
xdg-user-dirs
’XDG_DESKTOP_DIR
. - macOS: Resolves to
$HOME/Desktop
. - Windows: Resolves to
{FOLDERID_Desktop}
.
sourcepub fn document_dir(&self) -> Result<PathBuf>
pub fn document_dir(&self) -> Result<PathBuf>
Returns the path to the user’s document directory.
§Platform-specific
- Linux: Resolves to
xdg-user-dirs
’XDG_DOCUMENTS_DIR
. - macOS: Resolves to
$HOME/Documents
. - Windows: Resolves to
{FOLDERID_Documents}
.
sourcepub fn download_dir(&self) -> Result<PathBuf>
pub fn download_dir(&self) -> Result<PathBuf>
Returns the path to the user’s download directory.
§Platform-specific
- Linux: Resolves to
xdg-user-dirs
’XDG_DOWNLOAD_DIR
. - macOS: Resolves to
$HOME/Downloads
. - Windows: Resolves to
{FOLDERID_Downloads}
.
sourcepub fn executable_dir(&self) -> Result<PathBuf>
pub fn executable_dir(&self) -> Result<PathBuf>
Returns the path to the user’s executable directory.
§Platform-specific
- Linux: Resolves to
$XDG_BIN_HOME/../bin
or$XDG_DATA_HOME/../bin
or$HOME/.local/bin
. - macOS: Not supported.
- Windows: Not supported.
sourcepub fn font_dir(&self) -> Result<PathBuf>
pub fn font_dir(&self) -> Result<PathBuf>
Returns the path to the user’s font directory.
§Platform-specific
- Linux: Resolves to
$XDG_DATA_HOME/fonts
or$HOME/.local/share/fonts
. - macOS: Resolves to
$HOME/Library/Fonts
. - Windows: Not supported.
sourcepub fn home_dir(&self) -> Result<PathBuf>
pub fn home_dir(&self) -> Result<PathBuf>
Returns the path to the user’s home directory.
§Platform-specific
- Linux: Resolves to
$HOME
. - macOS: Resolves to
$HOME
. - Windows: Resolves to
{FOLDERID_Profile}
.
sourcepub fn picture_dir(&self) -> Result<PathBuf>
pub fn picture_dir(&self) -> Result<PathBuf>
Returns the path to the user’s picture directory.
§Platform-specific
- Linux: Resolves to
xdg-user-dirs
’XDG_PICTURES_DIR
. - macOS: Resolves to
$HOME/Pictures
. - Windows: Resolves to
{FOLDERID_Pictures}
.
sourcepub fn public_dir(&self) -> Result<PathBuf>
pub fn public_dir(&self) -> Result<PathBuf>
Returns the path to the user’s public directory.
§Platform-specific
- Linux: Resolves to
xdg-user-dirs
’XDG_PUBLICSHARE_DIR
. - macOS: Resolves to
$HOME/Public
. - Windows: Resolves to
{FOLDERID_Public}
.
sourcepub fn runtime_dir(&self) -> Result<PathBuf>
pub fn runtime_dir(&self) -> Result<PathBuf>
Returns the path to the user’s runtime directory.
§Platform-specific
- Linux: Resolves to
$XDG_RUNTIME_DIR
. - macOS: Not supported.
- Windows: Not supported.
sourcepub fn template_dir(&self) -> Result<PathBuf>
pub fn template_dir(&self) -> Result<PathBuf>
Returns the path to the user’s template directory.
§Platform-specific
- Linux: Resolves to
xdg-user-dirs
’XDG_TEMPLATES_DIR
. - macOS: Not supported.
- Windows: Resolves to
{FOLDERID_Templates}
.
sourcepub fn video_dir(&self) -> Result<PathBuf>
pub fn video_dir(&self) -> Result<PathBuf>
Returns the path to the user’s video dir
§Platform-specific
- Linux: Resolves to
xdg-user-dirs
’XDG_VIDEOS_DIR
. - macOS: Resolves to
$HOME/Movies
. - Windows: Resolves to
{FOLDERID_Videos}
.
sourcepub fn resource_dir(&self) -> Result<PathBuf>
pub fn resource_dir(&self) -> Result<PathBuf>
Returns the path to the resource directory of this app.
sourcepub fn app_config_dir(&self) -> Result<PathBuf>
pub fn app_config_dir(&self) -> Result<PathBuf>
Returns the path to the suggested directory for your app’s config files.
Resolves to config_dir
/${bundle_identifier}
.
sourcepub fn app_data_dir(&self) -> Result<PathBuf>
pub fn app_data_dir(&self) -> Result<PathBuf>
Returns the path to the suggested directory for your app’s data files.
Resolves to data_dir
/${bundle_identifier}
.
sourcepub fn app_local_data_dir(&self) -> Result<PathBuf>
pub fn app_local_data_dir(&self) -> Result<PathBuf>
Returns the path to the suggested directory for your app’s local data files.
Resolves to local_data_dir
/${bundle_identifier}
.
sourcepub fn app_cache_dir(&self) -> Result<PathBuf>
pub fn app_cache_dir(&self) -> Result<PathBuf>
Returns the path to the suggested directory for your app’s cache files.
Resolves to cache_dir
/${bundle_identifier}
.
sourcepub fn app_log_dir(&self) -> Result<PathBuf>
pub fn app_log_dir(&self) -> Result<PathBuf>
Returns the path to the suggested directory for your app’s log files.
§Platform-specific
- Linux: Resolves to
data_local_dir
/${bundle_identifier}/logs
. - macOS: Resolves to
home_dir
/Library/Logs/${bundle_identifier}
- Windows: Resolves to
data_local_dir
/${bundle_identifier}/logs
.
sourcepub fn temp_dir(&self) -> Result<PathBuf>
pub fn temp_dir(&self) -> Result<PathBuf>
A temporary directory. Resolves to std::env::temp_dir
.
source§impl<R: Runtime> PathResolver<R>
impl<R: Runtime> PathResolver<R>
sourcepub fn resolve<P: AsRef<Path>>(
&self,
path: P,
base_directory: BaseDirectory
) -> Result<PathBuf>
pub fn resolve<P: AsRef<Path>>( &self, path: P, base_directory: BaseDirectory ) -> Result<PathBuf>
Resolves the path with the base directory.
§Examples
use tauri::{path::BaseDirectory, Manager};
tauri::Builder::default()
.setup(|app| {
let path = app.path().resolve("path/to/something", BaseDirectory::Config)?;
assert_eq!(path.to_str().unwrap(), "/home/${whoami}/.config/path/to/something");
Ok(())
});
sourcepub fn parse<P: AsRef<Path>>(&self, path: P) -> Result<PathBuf>
pub fn parse<P: AsRef<Path>>(&self, path: P) -> Result<PathBuf>
Parse the given path, resolving a BaseDirectory
variable if the path starts with one.
§Examples
use tauri::Manager;
tauri::Builder::default()
.setup(|app| {
let path = app.path().parse("$HOME/.bashrc")?;
assert_eq!(path.to_str().unwrap(), "/home/${whoami}/.bashrc");
Ok(())
});