Skip to main content

cap_directories/
lib.rs

1//! Capability-based standard directories.
2
3#![deny(missing_docs)]
4#![forbid(unsafe_code)]
5#![doc(
6    html_logo_url = "https://raw.githubusercontent.com/bytecodealliance/cap-std/main/media/cap-std.svg"
7)]
8#![doc(
9    html_favicon_url = "https://raw.githubusercontent.com/bytecodealliance/cap-std/main/media/cap-std.ico"
10)]
11
12use std::io;
13
14mod project_dirs;
15mod user_dirs;
16
17#[doc(hidden)]
18pub use cap_std::ambient_authority_known_at_compile_time;
19pub use cap_std::{ambient_authority, AmbientAuthority};
20pub use project_dirs::ProjectDirs;
21pub use user_dirs::UserDirs;
22
23#[cfg(not(windows))]
24pub(crate) fn not_found() -> io::Error {
25    rustix::io::Errno::NOENT.into()
26}
27
28#[cfg(windows)]
29pub(crate) fn not_found() -> io::Error {
30    io::Error::from_raw_os_error(windows_sys::Win32::Foundation::ERROR_PATH_NOT_FOUND as i32)
31}